Skip to main content
POST
/
fee-share
/
config
Create Fee Share Config creation transaction (v2)
curl --request POST \
  --url https://public-api-v2.bags.fm/api/v1/fee-share/config \
  --header 'Content-Type: application/json' \
  --header 'x-api-key: <api-key>' \
  --data '
{
  "payer": "<string>",
  "baseMint": "<string>",
  "claimersArray": [
    "<string>"
  ],
  "basisPointsArray": [
    123
  ],
  "partner": "<string>",
  "partnerConfig": "<string>",
  "additionalLookupTables": [
    "<string>"
  ],
  "bagsConfigType": "fa29606e-5e48-4c37-827f-4b03d58ee23d",
  "enableFirstSwapWithMinFee": true,
  "tipWallet": "<string>",
  "tipLamports": 123
}
'
{
  "success": true,
  "response": {
    "needsCreation": true,
    "feeShareAuthority": "<string>",
    "meteoraConfigKey": "<string>",
    "transactions": [
      {
        "blockhash": {
          "blockhash": "<string>",
          "lastValidBlockHeight": 123
        },
        "transaction": "<string>"
      }
    ],
    "bundles": [
      [
        {
          "blockhash": {
            "blockhash": "<string>",
            "lastValidBlockHeight": 123
          },
          "transaction": "<string>"
        }
      ]
    ]
  }
}

Authorizations

x-api-key
string
header
required

API key authentication. Provide your API key as the header value.

Body

application/json
payer
string
required

Public key of the payer wallet

baseMint
string
required

Public key of the base mint (the token being launched)

claimersArray
string[]
required

Array of fee claimer wallet public keys. Must align with basisPointsArray. Maximum 100 fee claimers.

Required array length: 1 - 100 elements

Public key of a fee claimer wallet

basisPointsArray
number[]
required

Array of basis points for each fee claimer. Must align with claimersArray. Total must equal 10,000.

Required array length: 1 - 100 elements

Basis points allocated to the corresponding claimer

partner
string | null

Optional: Public key of the partner wallet for partner fee sharing

partnerConfig
string | null

Optional: Public key of the partner config PDA (required if partner is provided)

additionalLookupTables
string[] | null

Optional: Array of lookup table addresses. Required when there are more than 7 fee claimers.

Public key of a lookup table address

bagsConfigType
enum<string> | null
default:fa29606e-5e48-4c37-827f-4b03d58ee23d

Bags config type that determines the token's fee structure.

  • fa29606e-5e48-4c37-827f-4b03d58ee23d (Default): 2% fees both pre and post migration, with 25% fee compounding post-migration. Graduates at ~85 SOL.
  • d16d3585-6488-4a6c-9a6f-e6c39ca0fda3: 0.25% fees pre-migration, 1% post-migration, with 50% fee compounding post-migration. Graduates at ~85 SOL.
  • a7c8e1f2-3d4b-5a6c-9e0f-1b2c3d4e5f6a: 1% fees pre-migration, 0.25% post-migration, with 50% fee compounding post-migration. Graduates at ~85 SOL.
  • 48e26d2f-0a9d-4625-a3cc-c3987d874b9e: 10% fees both pre and post migration, with 50% fee compounding post-migration. Graduates at ~85 SOL.
  • 810faadb-030b-47de-a68b-7211c1cbbee3 (2% Flat, 85% Locked): 2% fees both pre and post migration, with 25% fee compounding post-migration. 85% of token supply is locked. Graduates at ~100 SOL.
  • e2963a6c-441a-4862-9d80-b94e3a481cd7 (Default, 1K Supply): Same as Default (2% fees pre and post migration, 25% fee compounding post-migration) but with a 1,000 token supply. Graduates at ~85 SOL.
  • ba28db46-ea6f-4452-8218-5587f6aca0a1 (2% Base, 96% Locked): 2% base fee pre-migration, with 25% fee compounding post-migration. 96% of token supply is locked. Post-migration the fee is market-cap based, starting at 2% and decaying to a 0.5% floor as the token's market cap grows (~25x graduation market cap). Graduates at ~55 SOL.
Available options:
fa29606e-5e48-4c37-827f-4b03d58ee23d,
d16d3585-6488-4a6c-9a6f-e6c39ca0fda3,
a7c8e1f2-3d4b-5a6c-9e0f-1b2c3d4e5f6a,
48e26d2f-0a9d-4625-a3cc-c3987d874b9e,
810faadb-030b-47de-a68b-7211c1cbbee3,
e2963a6c-441a-4862-9d80-b94e3a481cd7,
ba28db46-ea6f-4452-8218-5587f6aca0a1
enableFirstSwapWithMinFee
boolean | null
default:true

Optional (default true). When true, the first swap on the new pool pays the minimum (ending) base fee instead of the starting cliff fee. This only affects config types that use a base-fee scheduler (one whose base fee changes over time). No current config type uses a base-fee scheduler, so this field currently has no effect and is safe to omit; it is retained for forward compatibility.

tipWallet
string | null

Base58 encoded Solana public key of the tip recipient wallet

tipLamports
number | null

Tip amount in lamports

Response

Successfully created fee share config

success
boolean
required
Example:

true

response
object