Batch Send
Submit multiple raw Solana transactions in a single request using a compact binary format. Reduces per-request overhead when you have multiple transactions ready to send.
Request
| Field | Value |
|---|---|
| Method | POST |
| Path | /api/sendBatch?c=<YOUR_API_KEY> |
| Content-Type | application/octet-stream |
| Body | Binary-encoded transaction batch |
Limits
| Constraint | Value |
|---|---|
| Max transactions per batch | 16 |
| Min transaction size | 66 bytes |
| Max transaction size | 1,232 bytes |
| Max body size | 19,744 bytes |
Wire Format
The body is a concatenation of length-prefixed transactions. No JSON, no separators.
[len_hi][len_lo][tx_bytes...][len_hi][len_lo][tx_bytes...]...
Each length prefix is a big-endian u16 indicating the size of the following transaction bytes.
Response
Returns an empty body with 200 OK when all transactions are accepted.
| Status | Meaning |
|---|---|
200 |
All accepted |
400 |
Framing error, size violation, parse failure, or insufficient tip |
401 |
Invalid or missing API key |
429 |
Rate limited |
500 |
Internal error |
All error responses are plain text with a descriptive message.
Partial Success
sendBatch is stream-processed: transactions are forwarded as they are parsed. If transaction N fails, transactions 1 through N-1 may already be accepted. There is no rollback.
Always track transaction signatures client-side before submitting so you can reconcile partial success.
When to Use
Batch Send is the lowest-overhead submission path (compact binary, no JSON, no per-transaction wrapper), which makes it the fastest option even for a single transaction. Use it when you want the lowest latency, and especially when you have multiple transactions ready to submit and want to minimize HTTP round trips.
Because responses carry no transaction signature, compute and track signatures client-side before submitting, then verify landing on-chain or in the dashboard.
For a drop-in Solana RPC replacement that returns a signature, use JSON-RPC instead. For the lowest latency overall, send batches over a direct http:// endpoint on a warm connection (see Regions & Endpoints → Best Practices).