All articles
orynthsolanapartner-apicreator-coinsmeteoralaunchpadapi

Orynth: Partner API for creator-coin launches on Solana

Integrate Orynth’s Partner Launch API: quote → prepare → dual-sign → submit, 2% fee split, poolCreator claims, and Meteora-backed creator coins ending in red.

devrels.xyz/a/240short link

Orynth is a product-discovery board where early-stage products list, attract communities, and trade as creator coins. For builders integrating launches into their own apps, the surface that matters is the Partner API: your platform launches coins through Orynth while you keep the poolCreator authority and claim receiver.

What you are integrating

Partner keys map each request to a platform record: signer wallet, claim receiver, webhook, and allowlist. A random launcher (end user) pays small Solana launch costs and receives no trading fees. Orynth builds and validates the DBC launch transaction; you never send a private key to Orynth.

Signing roles
RoleWhoPays / signs
payerRandom launcher walletNetwork + launch costs; no fee share
poolCreatorPartner backend / KMS / custodyRequired signer on launch + claims
Orynth serverOrynthValidates message, adds server mint sigs, broadcasts

Fee model (on volume)

Total trading fee is 2.00% of volume.

Fee split
Bucket~ShareNotes
Orynth~0.94%~0.40% Meteora/protocol + ~0.54% Orynth
Partner (you)~1.06%One on-chain bucket; claimable by poolCreator → claim receiver wallet

Creators do not get fees directly from Orynth. If you pay creators, implement ledger + claim in your app. Docs suggest an internal split of ~0.56% platform / ~0.50% creator inside the partner bucket. Partner API mints are expected to end in red.

Environment

bash
ORYNTH_PARTNER_API_KEY=orynth_partner_live_…   # backend only
ORYNTH_API_BASE_URL=https://orynth.dev           # default
ORYNTH_POOL_CREATOR_WALLET=…                     # signs launch + claim
ORYNTH_CLAIM_RECEIVER_WALLET=…                   # receives claimed USDC

Create keys at /partner-api (Google sign-in). Raw key shown once; Orynth stores a hash.

Launch flow

  1. Quote — show cost + fee config before confirm.
  2. Prepare — metadata + unsigned tx; store launchId, preparedTxHex, mint/pool when present.
  3. Sign — backend as poolCreator, user wallet as payer.
  4. Submit — Orynth validates + broadcasts.
  5. Status / webhooks — mint, pool, signature, launchedAt.

1. Quote

bash
curl https://orynth.dev/api/v1/launches/quote \
  -H "Authorization: Bearer $ORYNTH_PARTNER_API_KEY"

2. Prepare

bash
curl https://orynth.dev/api/v1/launches/prepare \
  -H "Authorization: Bearer $ORYNTH_PARTNER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "externalId": "partner-launch-123",
    "payerWalletAddress": "PAYER_SOLANA_WALLET",
    "source": {
      "platform": "community",
      "url": "https://partner.example/sources/abc123",
      "id": "abc123",
      "type": "post"
    },
    "creator": {
      "platform": "community",
      "username": "creator_name",
      "platformUserId": "platform_user_id",
      "profileUrl": "https://partner.example/users/creator_name"
    },
    "name": "Creator Coin",
    "symbol": "CREATOR",
    "description": "Token launched from a partner platform",
    "imageUrl": "https://cdn.partner.com/token.png",
    "websiteUrl": "https://partner.example/product"
  }'

Use externalId / idempotency keys so retries do not create duplicate intents. Pass websiteUrl when you have it — Orynth writes it into token metadata for explorers and terminals.

Typical prepare response shape:

json
{
  "success": true,
  "launch": {
    "id": "pl_…",
    "status": "prepared",
    "preparedTxHex": "01000000…",
    "requiredSigners": ["payer", "poolCreator"],
    "feeConfig": {
      "totalTradingFeeBps": 200,
      "orynthFeeBps": 94,
      "partnerFeeBps": 106,
      "partnerBucketIncludesCreatorPayouts": true,
      "suggestedPartnerShareBps": 56,
      "suggestedCreatorShareBps": 50
    }
  }
}

3. Sign + submit

typescript
import { Transaction } from "@solana/web3.js"

// Backend: deserialize prepared tx
const tx = Transaction.from(Buffer.from(preparedTxHex, "hex"))

// 1) Sign as poolCreator (KMS / custody / server keypair) — never in the browser
// 2) Have the launcher wallet sign as payer (Wallet Adapter)
// 3) Serialize fully signed tx back to hex

const res = await fetch(`${base}/api/v1/launches/submit`, {
  method: "POST",
  headers: {
    Authorization: `Bearer ${process.env.ORYNTH_PARTNER_API_KEY}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({ launchId, signedTxHex }),
})

4. Status

bash
curl "https://orynth.dev/api/v1/launches/$LAUNCH_ID" \
  -H "Authorization: Bearer $ORYNTH_PARTNER_API_KEY"

Earnings and claim-all

Keep launches in your DB. For claimable fees, send known poolAddress values to Orynth:

bash
# Read claimable
curl "https://orynth.dev/api/v1/earnings?poolAddress=POOL_1&poolAddress=POOL_2" \
  -H "Authorization: Bearer $ORYNTH_PARTNER_API_KEY"

# Prepare claims (backend)
curl https://orynth.dev/api/v1/earnings/claim/prepare \
  -H "Authorization: Bearer $ORYNTH_PARTNER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"poolAddresses":["POOL_1","POOL_2"]}'

# After poolCreator signs claim txs:
curl https://orynth.dev/api/v1/earnings/claim/submit \
  -H "Authorization: Bearer $ORYNTH_PARTNER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"signedTxs":[…]}'

Claimed USDC lands on ORYNTH_CLAIM_RECEIVER_WALLET by default. Claim-all should be admin-only, retry-safe, and per-pool error tolerant.

Suggested local schema

text
launches
  id, orynthLaunchId, externalId,
  creatorPlatformUserId, creatorUsername,
  tokenName, symbol, payerWalletAddress,
  mintAddress, poolAddress, launchSignature,
  status, createdAt, submittedAt, launchedAt

claims
  id, poolAddress, mintAddress, claimBatchId,
  claimSignature, claimableUsdcAtClaim, claimedUsdc,
  status, error, createdAt

Security checklist

  • Never put ORYNTH_PARTNER_API_KEY or poolCreator keys in browser code or client logs.
  • Sign poolCreator only on backend / KMS / custody.
  • Validate user metadata before prepare.
  • Idempotency keys on launch creation.
  • Admin-only dashboard for earnings + claim-all.

Product surface vs Partner API

The public site at orynth.dev ranks listed products (market cap, categories, Solana + other rails). Partner API is the integration path for platforms that want to originate launches and own the claim UX. Older third-party blurbs also describe AI/no-code builders under the Orynth name — treat the Partner docs as source of truth for this integration.

Resources

Keep reading

Get new articles in your inbox

Technical deep-dives on Solana tooling, infrastructure, and ecosystem. No noise.

Orynth: Partner API for creator-coin launches on Solana | devrels.xyz