Chainworks
Documentation

SVM Transfers

Build transactions for SOL and token transfers.

SOL Transfer

Transfer SOL to another address.

Endpoint: /svm/transfer/transaction

ParameterTypeRequiredDescription
chainstringYes

Always sol

recipientstringYesRecipient public key
amountstringYesAmount in lamports
walletstringYesSender public key
sendRoutestringNo

Public, PublicWithNonce, Antimev, or AntimevWithNonce

prioFeesstringNoPriority fees (see below)
bribeFeesstringBased on sendRoutebribe fees (see below)
nonceAccountstringBased on sendRouteNonce account for transaction exclusivity

Token Transfer

Transfer SPL tokens.

Endpoint: /svm/transfer/token/transaction

ParameterTypeRequiredDescription
chainstringYes

Always sol

tokenstringYesToken mint address
recipientstringYesRecipient public key
amountstringYesAmount in token decimals
walletstringYesSender public key
ensureRecipientAssociatedTokenAccountbooleanNoCreate ATA if needed (default: true)
sendRoutestringNo

Public, PublicWithNonce, Antimev, or AntimevWithNonce

prioFeesstringNoPriority fees (see below)
bribeFeesstringBased on sendRoutebribe fees (see below)
nonceAccountstringBased on sendRouteNonce account for transaction exclusivity

Multi-Transfer

Send SOL to multiple recipients in one transaction.

Endpoint: /svm/transfer/multi/transaction

typescript
socket.emit("/svm/transfer/multi/transaction", {
  chain: "sol",
  wallet: "YourSolanaWalletPublicKey",
  recipients: [
    { address: "Recipient1PublicKey", amount: "100000000" },
    { address: "Recipient2PublicKey", amount: "200000000" },
  ],
});