Free (as in 🍺) Algorand API access
- 50 requests/s per IP/browser (one time boosts available)
- 1000 requests/s globally per site
- 5GB worth of responses per project per day (starting 1st of Jan 2024)
- Up to 10 000 000 (10MM) requests monthly per project
- Vanilla API (so you can migrate to you own hosting)
- No tokens, no setup, no surprises
- Projects with >1MM requests monthly should include powered by Algonode.io in the dApp footer (see FAQ).
Highly available Algorand Endpoints
- Cloudflare automatic geo balancing to 20 geo locations
- Preflight acceleration (200+ locations)
- Best for production (backend & frontend)
Network | Full Indexer v2 API | Full Algod v2 API |
---|---|---|
MainNet | https://mainnet-idx.algonode.cloud | https://mainnet-api.algonode.cloud 🛂 https://xna-mainnet-api.algonode.cloud (USA safe, see below) |
TestNet | https://testnet-idx.algonode.cloud | https://testnet-api.algonode.cloud |
BetaNet | https://betanet-idx.algonode.cloud | https://betanet-api.algonode.cloud |
USA Safe Endpoints
Submitting mainnet transactions via infrastructure hosted in United States might pose legal questions.
Just use https://xna-mainnet-api.algonode.cloud to make sure your transactions are committed via nodes in regions outside of USA/North America/Hawaii
Ultra low latency DNS balanced Algorand Endpoints
- Bunny.net Geo DNS balanced across 30+ locations
- Best for dev/batch/analytics
- Lower latencies in Africa and South America
Network | Full Indexer v2 API | Full Algod v2 API |
---|---|---|
MainNet | https://mainnet-idx.algonode.network | https://mainnet-api.algonode.network |
TestNet | ⚠️ no longer provided | ⚠️ no longer provided |
BetaNet | n/a | n/a |
Documentation
AlgoNode hosts vanilla Algod API and indexer API - just drop the URL in your SDK and you are good to go.Do not add /v2 or / at the end of the endpoint.
Click on a Front-End URL to proceed to online Algod Swagger or Indexer Swagger documentation / API playground
HA endpoints
- can be used by all Algorand SDKs
- preflight queries are answered at the edge
- are SSL and CORS enabled
- are geographically balanced by Cloudflare
- have per source IP limits of 50 rps with request shaping
- can be used universally by frontend and backend
LL endpoints:
- have lower latency than front HA endpoints
- are better suited for backend
- are geographically balanced by Bunny.net
- have per source IP limits of 50 rps with request shaping
Latencies
Click the Keycdn report below to test the latencies yourself.
API Changes
We lied - the hosted API has some minor differences:
- our
/v2/transactions/pending/{txid}
is 600 times faster than vanilla implementation
Limits
The API requests are rate limited per source IP address with request shaping. A burst of 90 rps is allowed and all responses are delayed artificially to make sure that (if called sequentially) they will not exceed the quota. Queries exceeding the 90rps in burst or sustained 60rps will get HTTP 429 error.
If your code is doing synchronous (as in await) requests in sequence (one after another) then our load balancers will make sure they do not exceed 60 rps. Otherwise please make sure that parallel threads follow the rules:
- add 100ms delay between requests
- use no more than 5 parallel threads
- use back off algorithm for retries in case of errors, unexpected results, loops
AlgoNode is able to issue temporary tokens that allow TENFOLD increase of limits in case of major events (Airdrops, Shuffles, product launch, etc)
What happens if I abuse the limits … ?
We reserve the right to automagically forward your traffic away from edge regions to central regions. This adds +200ms latency but makes sure our edges serve low-latency responses to casual users.
This defense mechanism is triggered when :
- a single IP range generates > 25rps on average for more then 1hr
- a single IP range generates > 10 000 requests that end up in code 429 (request limit)
We have our secret ways of identifying single source of requests even if it jumps across a pool of IP addresses 😈
Tokens
- All APIs are accessible without any tokens.
Rulez
See FAQ for extra info on why all this is free.
Remember to mention us on your dApp if you make > 1MM req/mo.
Consider becoming a commercial customer once your project becomes profitable.
Monitoring
Anonymized logs with all requests to dedicated endpoints are available for commercial customers only through our dashboard
Read more about our dashboard in this blog post.
Example usage in SDK
Javascript
const token = '';
const server = 'https://testnet-api.algonode.cloud';
const port = 443;
const client = new algosdk.Algodv2(token, server, port);
(async () => {
console.log(await client.status().do());
})().catch((e) => {
console.log(e);
});
REACH
Algonode is default API provider here :D
API geographic regions
AlgoNode hosts APIs in multiple regions around the World.
The table below show network API availability per region.
When a region has no dedicated infra for a network the API queries are redirected to the nearest supported region.
All regions handle Free API endpoints. Full regions have the ability to host commercial API as well.
Testnet and Betanet traffic is handled Worldwide by Volume/Full regions and might have higher latencies compared to mainnet traffic.
🛂 means this region is part of “USA Safe” endpoint
Full Region | MainNet | TestNet | BetaNet | |
---|---|---|---|---|
US-East (Ashburn) | ✅Free ✅Commercial | ✅Free | routed to EU | |
US-West (San Jose) | ✅Free | ✅Free | routed to EU | |
EU-Central (Germany) | ✅🛂Free ✅🛂Commercial | ✅Free | ✅Free | |
EU-North (Finland) | ✅🛂Free ✅🛂Commercial | ✅Free | routed to EU | |
EU-South (Italy) | 🚫Free ✅🛂Commercial | routed to full | routed to EU | |
Singapore | ✅🛂Free ✅🛂Commercial | ✅Free | routed to EU |
Edge Region | MainNet | TestNet | BetaNet | |
---|---|---|---|---|
USA (San Jose) | ✅Free | routed to full | routed to EU | |
USA (Honolulu) | ✅Free | routed to full | routed to EU | |
Canada (Montreal) | ✅Free | routed to full | routed to EU | |
Mexico (Queretaro) | ✅Free | routed to full | routed to EU | |
Australia (Melbourne) | ✅🛂Free | routed to full | routed to EU | |
Japan (Osaka) | ✅🛂Free | routed to full | routed to EU | |
India (Mumbai) | ✅🛂Free | routed to full | routed to EU | |
Brasil (Vinhedo) | ✅🛂Free | routed to full | routed to EU | |
South Africa (Johannesburg) | ✅🛂Free | routed to full | routed to EU | |
Israel (Jerusalem) | ✅🛂Free | routed to full | routed to EU | |
Chile (Santiago) | ✅🛂Free | routed to full | routed to EU | |
UAE (Dubai) | ✅🛂Free | routed to full | routed to EU |
- Full regions contain both edge and archive nodes & indexers
- Edge regions serve 85% to 95% of requests locally from edge nodes/indexers and forward the rest to the closest Full region
Preflight (CORS) queries are handled locally in 200+ locations to speed up front-end API requests that generate OPTIONS requests before each call.
Secret APIs
Some secret endpoints exists but they :
- are supported only in commercial offerings
- are made possible with our open source code
SDK gallery
SDKs that set AlgoNode as default API provider (❤️)
Compare packages
feature | Unlimited | Enterprise | Free |
---|---|---|---|
Price | $256 fixed | $2048 fixed | free |
Algod API | ✅ | ✅ | ✅ |
Indexer API | ✅ | ✅ | ✅ |
API analytics | shared | dedicated | shared |
Vanity endpoints | 🚫 | ✅ | 🚫 |
Custom tokens | 10 | ✅ | ✅ |
Domain whitelisting | 10 | ✅ | ✅ |
Unlimited queries | ✅ | ✅ | 10MM/month |
Infra | shared | dedicated | shared |
Algorand exclusive team | ✅ | ✅ | ✅ |
Patches | on schedule | custom schedule | experimental |
HA Regions | 23 | 2 or 3 | 23 |
Req per sec per project | 6000 | 3000 | 1000 |
Req per sec per IP | 500 | customer def., up to 3k | 50 |
Node Ping Latency | <50ms | <100ms | <50ms |
Indexer Response latency | <20ms p95 | <20ms p98 | <20ms median |
Indexer parameters | all enabled, 10k resources | customer def. | all enabled, 10k resources |
SLO | 99.99%, 4hrs response | 99.95%, 1hr response phone support | no SLO |
SLA | 1x reimbursement | 10x reimbursement | 🚫 |
R&D support | 1hr/mo | 2hrs/mo | 🚫 |