▾ Documentation

Submission methods

Three ways to submit transactions through Sender: JSON-RPC, HTTP Plaintext, HTTP Binary.

// updated 2026-06-04

Three ways to submit transactions, picked by latency requirement.

NOTE

Tradeoff: JSON-RPC is the easiest drop-in (existing Solana clients work unchanged). Plaintext and Binary trim parsing overhead for microsecond-sensitive paths. Pick by how much you care about latency vs simplicity.

MethodLatencyBody formatMax size
JSON-RPCLowJSON-
HTTP PlaintextLowerBase64 string2,048 bytes
HTTP BinaryLowestRaw bincode1,232 bytes
WARNING

All methods require a valid tip in the transaction. Preflight is never run regardless of skipPreflight value.

JSON-RPC

Standard Solana JSON-RPC sendTransaction format. Drop-in replacement for https://api.mainnet-beta.solana.com.

Endpoint: http://YOUR_REGION.landing.fast

curl -sS 'http://fra.landing.fast' \
  -H 'Content-Type: application/json' \
  --data '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "sendTransaction",
    "params": [
      "YOUR_BASE64_ENCODED_TX",
      {
        "encoding": "base64",
        "skipPreflight": true
      }
    ]
  }'

Response:

{
  "jsonrpc": "2.0",
  "id": 1,
  "result": "5VBwR4LmgHpVvjqjNqKyL...SIGNATURE"
}

Required params:

  • encoding: "base64" - required for reliable transmission.
  • skipPreflight: true - documented for compatibility.

HTTP Plaintext

Lower-overhead than JSON-RPC. Body is a single base64 string. Response is a plain bs58-encoded signature.

Endpoint: http://YOUR_REGION.landing.fast/plaintext

curl -sS 'http://fra.landing.fast/plaintext' \
  -X POST \
  -H 'Content-Type: text/plain' \
  --data 'YOUR_BASE64_ENCODED_TX'
  • Body: base64-encoded transaction.
  • Max size: 2,048 bytes.
  • Response: plain-text bs58-encoded signature.

HTTP Binary

Lowest overhead. Body is raw bincode-serialized transaction bytes.

Endpoint: http://YOUR_REGION.landing.fast/binary

curl -sS 'http://fra.landing.fast/binary' \
  -X POST \
  -H 'Content-Type: application/octet-stream' \
  --data-binary @transaction.bin
  • Body: raw transaction bytes (bincode serialized, same wire format as Solana SDK).
  • Max size: 1,232 bytes.
  • Response: plain-text bs58-encoded signature.

Response codes

CodeMeaning
200Transaction accepted and forwarded
429Rate limited - back off and retry
500Server error - retry with backoff
WARNING

A 200 response means forwarded, not landed on-chain. Always verify with RPC getSignatureStatuses.

Constraints

  • No preflight - validate locally first.
  • No deduplication - submitting the same transaction twice forwards it twice.
  • One transaction per request.

See also

Get started

First request in 5 minutes.

Tips

Minimum tip and tip addresses.

Endpoints

Regional endpoints.