Helius Sender API
The Sender API from Helius — 2 operation(s) for sender.
The Sender API from Helius — 2 operation(s) for sender.
openapi: 3.1.0
info:
title: Helius API Catalog Addresses Sender API
version: 1.0.0
summary: Machine-readable discovery document for every Helius API surface on Solana.
description: 'This document is a discovery catalog — not an operational spec. It exists so
AI agents, codegen tools, and SDK generators can locate the canonical
OpenAPI document for every Helius API in one request instead of crawling
the docs site.
Start with the `x-apis` array: each entry links a Helius API surface to its
canonical OpenAPI spec (`specUrl`) and human-readable docs (`docsUrl`).
Follow `externalDocs` for the full developer documentation site.
## A note on JSON-RPC APIs
Several Helius APIs (Solana RPC, DAS, Sender, Mint, Priority Fee,
ZK Compression) follow the JSON-RPC 2.0 convention where every method POSTs
to `/` with a `method` field in the request body. For each such API the
repository ships both per-method fragment YAMLs (used to render the
Mintlify reference pages) and an auto-generated `_combined.yaml` that
merges every method into a single OpenAPI document. In the combined
documents, colliding paths are disambiguated with a URL-fragment suffix
(e.g. `/#getAccountInfo`) and each operation carries an `x-actual-path`
extension that records the real request path (`/`). The fragment syntax is
schema-only — real calls still go to the `url` in `servers`.
All `specUrl` values below point to raw GitHub files on the `main` branch
of `helius-labs/docs`. They are stable URLs suitable for downstream tools
to pin or fetch.
'
contact:
name: Helius Support
url: https://www.helius.dev/contact
email: support@helius.dev
license:
name: Apache 2.0
url: https://www.apache.org/licenses/LICENSE-2.0.html
servers:
- url: https://mainnet.helius-rpc.com
description: Solana mainnet RPC endpoint (Solana RPC, DAS, Priority Fee, ZK Compression)
- url: https://devnet.helius-rpc.com
description: Solana devnet RPC endpoint
- url: https://sender.helius-rpc.com
description: Helius Sender — global transaction submission
- url: https://api.helius.xyz
description: Helius REST APIs (Wallet API, Enhanced API, Webhooks)
- url: https://admin-api.helius.xyz
description: Helius Admin API — project usage and billing
- url: https://api-mainnet.helius-rpc.com
description: Mainnet RPC endpoint
- url: https://api-devnet.helius-rpc.com
description: Devnet RPC endpoint
- url: http://slc-sender.helius-rpc.com
description: Salt Lake City
- url: http://ewr-sender.helius-rpc.com
description: Newark
- url: http://lon-sender.helius-rpc.com
description: London
- url: http://fra-sender.helius-rpc.com
description: Frankfurt
- url: http://ams-sender.helius-rpc.com
description: Amsterdam
- url: http://sg-sender.helius-rpc.com
description: Singapore
- url: http://tyo-sender.helius-rpc.com
description: Tokyo
tags:
- name: Sender
paths:
/fast:
post:
tags:
- Sender
summary: sendTransaction
operationId: senderApi_sendTransaction
description: 'Submit transactions via Helius Sender for ultra-low latency transaction submission with dual routing to both Solana validators and Jito infrastructure.
'
parameters:
- name: api-key
in: query
required: false
schema:
type: string
description: Standard users do not require an API key. Only users with custom TPS limits need to provide an API key.
- name: swqos_only
in: query
required: false
schema:
type: boolean
default: false
description: When true, routes exclusively through SWQOS infrastructure, but has a lower minimal tip requirement.
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
jsonrpc:
type: string
enum:
- '2.0'
description: The JSON-RPC protocol version.
example: '2.0'
default: '2.0'
id:
type: string
description: A unique identifier for the request.
example: '1'
default: '1'
method:
type: string
enum:
- sendTransaction
description: The name of the RPC method to invoke.
example: sendTransaction
default: sendTransaction
params:
type: array
description: Parameters for sending a transaction via Sender.
items:
oneOf:
- type: string
description: The transaction encoded in base64.
- type: object
description: Configuration options for transaction submission.
required:
- skipPreflight
properties:
encoding:
type: string
description: Data encoding format used for the Solana transaction payload.
enum:
- base58
- base64
example: base64
skipPreflight:
type: boolean
description: When true, bypasses Solana's preflight transaction validation for faster submission. Must be set to true for Sender.
example: false
maxRetries:
type: integer
description: Maximum number of automatic retry attempts. Should be set to 0.
example: 0
example:
jsonrpc: '2.0'
id: '1'
method: sendTransaction
params:
- Ab/WBgJxCprwWlK2fCxSwm9KrWlJQW8TdnYqXMvg5KropeLqHaa5yJeoWUb+LsGi6zlfs1Z/jA/RgJW++tBhPAKAAQACBGuePYZrXq9Jj+DwkquiMvsrNU5rlcAbmRfuAYui/CwAQr437DqfrFoSt1BSgM/2/0Iqja1QMefnu1hTYX96AA0DBkZv5SEXMv/srbpyw5vnvIzlu8X3EmssQ5s6QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAhWHa4WfUT12o+cyi2WGwfBvngyurXf5VQd4Ukn+5ZSIDAgAFAqCGAQACAAkDQA0DAAAAAAADAgABDAIAAABAQg8AAAAAAAA=
- encoding: base64
skipPreflight: true
maxRetries: 0
responses:
'200':
description: Transaction submitted successfully. Since we're skipping preflight checks, a 200 response does not guarantee that the transaction is valid or that it will land onchain.
content:
application/json:
schema:
type: object
properties:
jsonrpc:
type: string
enum:
- '2.0'
description: The JSON-RPC protocol version.
example: '2.0'
id:
type: string
description: Identifier matching the request.
example: '1'
result:
type: string
description: The transaction signature for tracking confirmation status.
example: 4qTLpN1sBrp5SzZUKfrSH2897FmxA7AB4EbN4ccgSgEjG9RG2686pSKWhEbz65q4bvaRsdpKRJKZ3dkdGZA78u5s
example:
jsonrpc: '2.0'
id: '1'
result: 4qTLpN1sBrp5SzZUKfrSH2897FmxA7AB4EbN4ccgSgEjG9RG2686pSKWhEbz65q4bvaRsdpKRJKZ3dkdGZA78u5s
'400':
description: Bad Request - Missing tip, priority fee, or invalid submission parameters.
content:
application/json:
schema:
$ref: '#/components/schemas/SenderApi_ErrorResponse'
example:
jsonrpc: '2.0'
error:
code: -32602
message: Invalid request
id: '1'
'429':
description: Too Many Requests - Rate limit exceeded.
content:
application/json:
schema:
$ref: '#/components/schemas/SenderApi_ErrorResponse'
example:
jsonrpc: '2.0'
error:
code: -32005
message: Too many requests
id: '1'
'500':
description: Internal Server Error - An error occurred on the server.
content:
application/json:
schema:
$ref: '#/components/schemas/SenderApi_ErrorResponse'
example:
jsonrpc: '2.0'
error:
code: -32603
message: Internal error
id: '1'
'503':
description: Service Unavailable - The service is temporarily unavailable.
content:
application/json:
schema:
$ref: '#/components/schemas/SenderApi_ErrorResponse'
example:
jsonrpc: '2.0'
error:
code: -32002
message: Service unavailable
id: '1'
'504':
description: Gateway Timeout - The request timed out.
content:
application/json:
schema:
$ref: '#/components/schemas/SenderApi_ErrorResponse'
example:
jsonrpc: '2.0'
error:
code: -32003
message: Gateway timeout
id: '1'
servers:
- url: https://sender.helius-rpc.com
description: Global HTTPS endpoint (for frontend applications)
- url: http://slc-sender.helius-rpc.com
description: Salt Lake City
- url: http://ewr-sender.helius-rpc.com
description: Newark
- url: http://lon-sender.helius-rpc.com
description: London
- url: http://fra-sender.helius-rpc.com
description: Frankfurt
- url: http://ams-sender.helius-rpc.com
description: Amsterdam
- url: http://sg-sender.helius-rpc.com
description: Singapore
- url: http://tyo-sender.helius-rpc.com
description: Tokyo
/ping:
get:
tags:
- Sender
summary: ping
operationId: senderApi_ping
description: 'Ping request to Helius Sender to maintain a warm connection
'
security: []
responses:
'200':
description: Connection is alive.
content:
text/plain:
schema:
type: string
example: ok
'503':
description: Service Unavailable - The service is temporarily unavailable.
content:
text/plain:
schema:
type: string
servers:
- url: https://sender.helius-rpc.com
description: Global HTTPS endpoint (for frontend applications)
- url: http://slc-sender.helius-rpc.com
description: Salt Lake City
- url: http://ewr-sender.helius-rpc.com
description: Newark
- url: http://lon-sender.helius-rpc.com
description: London
- url: http://fra-sender.helius-rpc.com
description: Frankfurt
- url: http://ams-sender.helius-rpc.com
description: Amsterdam
- url: http://sg-sender.helius-rpc.com
description: Singapore
- url: http://tyo-sender.helius-rpc.com
description: Tokyo
components:
schemas:
SenderApi_ErrorResponse:
type: object
properties:
jsonrpc:
type: string
description: The JSON-RPC protocol version.
enum:
- '2.0'
example: '2.0'
error:
type: object
properties:
code:
type: integer
description: The error code.
example: -32602
message:
type: string
description: The error message.
data:
type: object
description: Additional data about the error.
id:
type: string
description: Identifier matching the request.
example: '1'
securitySchemes:
ApiKeyQuery:
type: apiKey
in: query
name: api-key
description: Your Helius API key. You can get one for free in the [dashboard](https://dashboard.helius.dev/api-keys).
ApiKeyHeader:
type: apiKey
in: header
name: X-Api-Key
description: API key passed in request header
externalDocs:
description: Helius Documentation (canonical)
url: https://www.helius.dev/docs
x-apis:
- id: rpc-http
name: Solana RPC (HTTP)
description: JSON-RPC 2.0 methods for Solana mainnet and devnet, plus Helius extensions such as `getTransactionsForAddress` with server-side filtering and token account helpers (`getTokenAccountsByOwnerV2`, `getProgramAccountsV2`).
specUrl: https://www.helius.dev/openapi/rpc-http.json
docsUrl: https://www.helius.dev/docs/rpc/overview
tags:
- rpc
- json-rpc
- solana
- accounts
- transactions
status: stable
x-specFragments: https://github.com/helius-labs/docs/tree/main/openapi/rpc-http
- id: das-api
name: Digital Asset Standard (DAS) API
description: Unified NFT and token queries for Solana — regular NFTs, compressed NFTs, and fungible tokens — indexed for fast lookups by owner, creator, authority, collection, or search.
specUrl: https://www.helius.dev/openapi/das-api.json
docsUrl: https://www.helius.dev/docs/das-api
tags:
- nft
- tokens
- compressed-nft
- digital-assets
- json-rpc
status: stable
x-specFragments: https://github.com/helius-labs/docs/tree/main/openapi/das-api
- id: sender-api
name: Helius Sender
description: Ultra-low-latency transaction submission with dual routing to validators and Jito infrastructure. Regional endpoints for Salt Lake City, Newark, London, Frankfurt, Amsterdam, Singapore, and Tokyo.
specUrl: https://www.helius.dev/openapi/sender-api.json
docsUrl: https://www.helius.dev/docs/sending-transactions/sender
tags:
- transactions
- sender
- low-latency
- jito
status: stable
x-specFragments: https://github.com/helius-labs/docs/tree/main/openapi/sender-api
- id: wallet-api
name: Wallet API
description: High-performance REST API for Solana wallet data — identity, balances, transaction history, transfers, and funding lineage. Returns pre-indexed results suitable for wallet and portfolio UIs.
specUrl: https://www.helius.dev/openapi/wallet-api.json
docsUrl: https://www.helius.dev/docs/wallet-api/overview
tags:
- wallet
- portfolio
- history
- rest
status: beta
- id: priority-fee-api
name: Priority Fee API
description: Real-time priority fee recommendations across multiple priority levels, derived from recent network activity. Accepts either account keys or a serialized transaction.
specUrl: https://www.helius.dev/openapi/priority-fee-api.json
docsUrl: https://www.helius.dev/docs/priority-fee-api
tags:
- priority-fee
- transactions
- fees
- json-rpc
status: stable
x-specFragments: https://github.com/helius-labs/docs/tree/main/openapi/priority-fee-api
- id: zk-compression
name: ZK Compression Indexer
description: Indexer API for Solana state compression — compressed accounts, compressed token balances, Merkle proofs, and validity proofs. Enables up to 1000x lower storage costs relative to regular accounts.
specUrl: https://www.helius.dev/openapi/zk-compression.json
docsUrl: https://www.helius.dev/docs/zk-compression/introduction
tags:
- zk-compression
- state-compression
- accounts
- proofs
- json-rpc
status: stable
x-specFragments: https://github.com/helius-labs/docs/tree/main/openapi/zk-compression
- id: admin-api
name: Admin API
description: Programmatic access to Helius project usage and billing data — credits consumed, credits remaining, prepaid balances, and subscription details for the current billing cycle.
specUrl: https://www.helius.dev/openapi/admin-api.json
docsUrl: https://www.helius.dev/docs/api-reference/admin
tags:
- admin
- billing
- usage
- rest
status: stable
x-specFragments: https://github.com/helius-labs/docs/tree/main/openapi/admin-api
- id: enhanced-api
name: Enhanced API
description: Decoded, human-readable transaction history, NFT events, and address activity on Solana. Returns typed, parsed data instead of raw instruction bytes.
specUrl: https://www.helius.dev/openapi/enhanced-api.json
docsUrl: https://www.helius.dev/docs/enhanced-transactions/overview
tags:
- enhanced
- parsed-transactions
- nft-events
- history
- rest
status: stable
- id: webhooks
name: Helius Webhooks
description: Real-time HTTP notifications for Solana on-chain events — configure account, transaction, or NFT event subscriptions and receive parsed payloads via HTTPS POST.
specUrl: https://www.helius.dev/openapi/webhooks.json
docsUrl: https://www.helius.dev/docs/webhooks
tags:
- webhooks
- events
- notifications
- rest
status: stable