Documentation
Get started with APIStack
Every APIStack API uses the same key, the same authentication and the same error format. Each API's parameters and examples are on its page in the API catalog.
Quickstart
Prefer video? · 1:18
Getting started: account, API key and first call
Create a free account, find your API key, run a real request and see it counted in your usage.
- Create a free account (1,000 calls/month, no card).
- Copy your API key from the dashboard.
- Make a call. This example Base64-encodes a string:
cURL
curl -X POST https://apistack.online/api/utilities/base64/v1 \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"operation": "encode", "text": "Hello, world"}'JavaScript
const response = await fetch('https://apistack.online/api/utilities/base64/v1', {
method: 'POST',
headers: {
'x-api-key': process.env.APISTACK_API_KEY,
'Content-Type': 'application/json'
},
body: JSON.stringify({ operation: 'encode', text: 'Hello, world' })
})
const data = await response.json()
console.log(data)Python
import os, requests
response = requests.post(
"https://apistack.online/api/utilities/base64/v1",
headers={"x-api-key": os.environ["APISTACK_API_KEY"]},
json={"operation": "encode", "text": "Hello, world"},
)
print(response.json())Want to try without an account first? Use Try Free.
Prefer Postman, Insomnia or code generation? Import the OpenAPI 3.0 spec for all APIs.
Authentication
Send your API key in the x-api-key header on every request:
x-api-key: YOUR_API_KEYKeep keys on the server. Don't put them in browser or mobile code, and don't commit them to git. If a key leaks, generate a new key in the dashboard and delete the old one; a deleted key stops working immediately.
Responses and errors
Responses are JSON. Successful calls return "success": true with the result. Errors use HTTP status codes and a consistent body:
{
"success": false,
"error": "Invalid API key",
"code": "INVALID_API_KEY",
"message": "The provided API key is invalid or inactive. Please check your API key and try again."
}| Status | Typical codes | Meaning |
|---|---|---|
| 400 | VALIDATION_ERROR, MISSING_PARAMETERS, INVALID_JSON | The request body or query is invalid. The message says which field. |
| 401 | AUTH_REQUIRED, INVALID_API_KEY | No API key, or the key is wrong or inactive. |
| 403 | plan or feature errors | Your plan does not include this API (for example, AI APIs need Pro or Enterprise). |
| 405 | METHOD_NOT_ALLOWED | Wrong HTTP method; check the endpoint on its API page. |
| 429 | QUOTA_EXCEEDED, rate limit | Monthly quota or per-minute rate limit reached. See the headers below. |
| 500 | INTERNAL_ERROR | Something failed on our side. Retry with backoff; contact support if it persists. |
Rate limits and quotas
Each plan has a monthly call quota shared across all APIs, plus a per-minute rate limit:
| Plan | Price | Calls / month | Rate limit |
|---|---|---|---|
| Free | Free | 1,000 | 10/min |
| Pro | $19.99/month | 100,000 | 100/min |
| Enterprise | $79.99/month | 1,000,000 | 500/min |
Responses include X-RateLimit-Limit, X-RateLimit-Remaining and X-RateLimit-Reset headers. On a 429, wait until the reset time and retry. We email you at 80% and 100% of your monthly quota. See pricing for upgrades and top-ups.
MCP servers for AI agents
Every API is available to AI agents (Claude, ChatGPT, Cursor, VS Code…) through one Model Context Protocol endpoint, using the same API key, plan access and quota:
https://apistack.online/api/mcp/connectIt exposes three tools: search_apis, get_api_details and call_api. Add ?categories=finance or ?apis=slug1,slug2 to get one tool per API instead. Example for Claude Code:
claude mcp add --transport http apistack https://apistack.online/api/mcp/connect \
--header "x-api-key: YOUR_API_KEY"Setup for Cursor, VS Code and Claude Desktop is on the MCP page, along with the dedicated per-API servers.
Using APIStack through RapidAPI
All APIs are also listed on RapidAPI. If you subscribe there, call the RapidAPI endpoint with your RapidAPI key; billing and quotas are handled by RapidAPI. The APIs and responses are the same.
Support
Questions or problems? Email support@apistack.online with the endpoint, the request you sent and the response you got.