Skip to main content
The Transaction API prepares Solana transactions for Swig wallet creation, transfers, swaps, and custom instruction sets. It does not replace required application signatures. Responses include explicit signature requests for embedded secp256r1 and secp256k1 authorization; native Ed25519 signers are represented in the serialized Solana transaction instead.

Supported preparation routes

Preparation requests are not retried automatically. A replay can duplicate work, so decide per call whether repeating is correct.

Auth

Use an API key:

Common request fields

Prepared transaction response

Most endpoints return a prepared transaction or a response containing prepared transactions. Each signature request carries scheme, signer, messageHash, slot, and counter. The signer is encoded for its signature scheme, and messageHash is the hex-encoded message to sign. An empty array does not prove that the transaction needs no application signature; inspect the Solana transaction’s required signer set for native Ed25519 authorities and other transaction-level signers.

Prepare a batch

POST /transaction/prepare/batch batches one or more supported operations for an existing Swig.

Prepare custom instructions

POST /transaction/prepare/custom builds one prepared Swig transaction from the Solana instructions supplied by the application.
The response is prepared only. The application still supplies every embedded signature request and transaction-level signer, then chooses direct or sponsored submission.

Create a wallet

POST /transaction/wallet/create

Transfer SOL

POST /transaction/transfer/sol

Transfer SPL token

POST /transaction/transfer/spl-token

Jupiter swap

POST /transaction/swap/jupiter
Optional Jupiter controls:

After preparation

The response is prepared only. Your application supplies every embedded signature request and transaction-level signer, then submits the transactions in the returned order — directly, or through the Paymaster API. If policyId is omitted on wallet creation, initialUser is required and the API creates a wallet policy for the caller’s organization.