Active
One API.
Everything
your app needs.
Temporary email, SMS numbers, email validation, SEO data, AI, proxies and social data, normalized behind a single API key.
No credit card required
- Unified authentication
- Normalized responses
- Automatic provider routing
- Usage-based credits
Create inbox
Create disposable inboxes, read incoming messages, rotate addresses and delete inboxes when you are done. Backed by several temp-mail providers with failover.
/api/v1/temp-mail/inboxes
curl -X POST 'https://axioapi.com/api/v1/temp-mail/inboxes' \ -H 'Authorization: Bearer YOUR_API_KEY' \ -H 'Accept: application/json' \ -H 'Content-Type: application/json' \ -d '{"label":"value","ttl_minutes":10}'
$response = \Illuminate\Support\Facades\Http::withToken("YOUR_API_KEY") ->acceptJson() ->asJson() ->post('https://axioapi.com/api/v1/temp-mail/inboxes', {"label":"value","ttl_minutes":10}); $data = $response->json();
const response = await fetch('https://axioapi.com/api/v1/temp-mail/inboxes', { method: 'POST', headers: { 'Authorization': 'Bearer YOUR_API_KEY', 'Accept': 'application/json', 'Content-Type': 'application/json', }, body: JSON.stringify({"label":"value","ttl_minutes":10}), }); const data = await response.json(); console.log(data);
import requests url = 'https://axioapi.com/api/v1/temp-mail/inboxes' headers = { 'Authorization': 'Bearer YOUR_API_KEY', 'Accept': 'application/json', 'Content-Type': 'application/json', } data = {"label":"value","ttl_minutes":10} response = requests.post(url, json=data, headers=headers) print(response.json())
{
"data": {
"id": "9d3f6c1e-2b7a-4c55-8f0e-1a2b3c4d5e6f",
"address": "[email protected]",
"status": "active",
"expires_at": "2026-10-01T10:42:18Z"
}
}
List SMS numbers
Receive SMS on public test numbers from many countries. List numbers, read the latest messages for a number and poll for new ones.
/api/v1/sms/numbers
curl -X GET 'https://axioapi.com/api/v1/sms/numbers' \ -H 'Authorization: Bearer YOUR_API_KEY' \ -H 'Accept: application/json'
$response = \Illuminate\Support\Facades\Http::withToken("YOUR_API_KEY") ->acceptJson() ->get('https://axioapi.com/api/v1/sms/numbers'); $data = $response->json();
const response = await fetch('https://axioapi.com/api/v1/sms/numbers', { method: 'GET', headers: { 'Authorization': 'Bearer YOUR_API_KEY', 'Accept': 'application/json', }, }); const data = await response.json(); console.log(data);
import requests url = 'https://axioapi.com/api/v1/sms/numbers' headers = { 'Authorization': 'Bearer YOUR_API_KEY', 'Accept': 'application/json', } response = requests.get(url, headers=headers) print(response.json())
{
"data": {
"items": [
{
"number": "+12022214405",
"country": "US"
},
{
"number": "+447700900123",
"country": "GB"
}
]
}
}
Validate email
Check whether an address is well-formed, disposable or deliverable. Validate one email, a batch, or run an async job over thousands.
/api/v1/email/validate
curl -X POST 'https://axioapi.com/api/v1/email/validate' \ -H 'Authorization: Bearer YOUR_API_KEY' \ -H 'Accept: application/json' \ -H 'Content-Type: application/json' \ -d '{"email":"value","consensus":false}'
$response = \Illuminate\Support\Facades\Http::withToken("YOUR_API_KEY") ->acceptJson() ->asJson() ->post('https://axioapi.com/api/v1/email/validate', {"email":"value","consensus":false}); $data = $response->json();
const response = await fetch('https://axioapi.com/api/v1/email/validate', { method: 'POST', headers: { 'Authorization': 'Bearer YOUR_API_KEY', 'Accept': 'application/json', 'Content-Type': 'application/json', }, body: JSON.stringify({"email":"value","consensus":false}), }); const data = await response.json(); console.log(data);
import requests url = 'https://axioapi.com/api/v1/email/validate' headers = { 'Authorization': 'Bearer YOUR_API_KEY', 'Accept': 'application/json', 'Content-Type': 'application/json', } data = {"email":"value","consensus":False} response = requests.post(url, json=data, headers=headers) print(response.json())
{
"data": {
"email": "[email protected]",
"domain": "mailinator.com",
"is_valid_format": true,
"is_disposable": true,
"has_mx": true
}
}
Keyword metrics
Keyword volume, CPC and difficulty, keyword ideas and autocomplete suggestions, domain overview, backlink summary, domain history and on-page audits.
/api/v1/seo/keywords/metrics
curl -X POST 'https://axioapi.com/api/v1/seo/keywords/metrics' \ -H 'Authorization: Bearer YOUR_API_KEY' \ -H 'Accept: application/json' \ -H 'Content-Type: application/json' \ -d '{"keywords":["[email protected]"],"country":"value"}'
$response = \Illuminate\Support\Facades\Http::withToken("YOUR_API_KEY") ->acceptJson() ->asJson() ->post('https://axioapi.com/api/v1/seo/keywords/metrics', {"keywords":["[email protected]"],"country":"value"}); $data = $response->json();
const response = await fetch('https://axioapi.com/api/v1/seo/keywords/metrics', { method: 'POST', headers: { 'Authorization': 'Bearer YOUR_API_KEY', 'Accept': 'application/json', 'Content-Type': 'application/json', }, body: JSON.stringify({"keywords":["[email protected]"],"country":"value"}), }); const data = await response.json(); console.log(data);
import requests url = 'https://axioapi.com/api/v1/seo/keywords/metrics' headers = { 'Authorization': 'Bearer YOUR_API_KEY', 'Accept': 'application/json', 'Content-Type': 'application/json', } data = {"keywords":["[email protected]"],"country":"value"} response = requests.post(url, json=data, headers=headers) print(response.json())
{
"data": {
"items": [
{
"keyword": "openai",
"search_volume": 1220000,
"cpc": 1.08,
"competition": 0.12
}
]
}
}
Grammar check
Grammar checking, AI text generation, text-to-speech and YouTube transcripts through one normalized interface.
/api/v1/grammar/check
curl -X POST 'https://axioapi.com/api/v1/grammar/check' \ -H 'Authorization: Bearer YOUR_API_KEY' \ -H 'Accept: application/json' \ -H 'Content-Type: application/json' \ -d '{"text":"value","language":"value"}'
$response = \Illuminate\Support\Facades\Http::withToken("YOUR_API_KEY") ->acceptJson() ->asJson() ->post('https://axioapi.com/api/v1/grammar/check', {"text":"value","language":"value"}); $data = $response->json();
const response = await fetch('https://axioapi.com/api/v1/grammar/check', { method: 'POST', headers: { 'Authorization': 'Bearer YOUR_API_KEY', 'Accept': 'application/json', 'Content-Type': 'application/json', }, body: JSON.stringify({"text":"value","language":"value"}), }); const data = await response.json(); console.log(data);
import requests url = 'https://axioapi.com/api/v1/grammar/check' headers = { 'Authorization': 'Bearer YOUR_API_KEY', 'Accept': 'application/json', 'Content-Type': 'application/json', } data = {"text":"value","language":"value"} response = requests.post(url, json=data, headers=headers) print(response.json())
{
"data": {
"language": "English (US)",
"error_count": 1,
"matches": [
{
"rule_id": "MORFOLOGIK_RULE_EN_US",
"replacements": [
"Hello"
]
}
]
}
}
AI image generate
Generate and edit images from a text prompt as async jobs, then download the validated image file.
/api/v1/ai/images
curl -X POST 'https://axioapi.com/api/v1/ai/images' \ -H 'Authorization: Bearer YOUR_API_KEY' \ -H 'Accept: application/json' \ -H 'Content-Type: application/json' \ -d '{"prompt":"value","width":10,"height":10}'
$response = \Illuminate\Support\Facades\Http::withToken("YOUR_API_KEY") ->acceptJson() ->asJson() ->post('https://axioapi.com/api/v1/ai/images', {"prompt":"value","width":10,"height":10}); $data = $response->json();
const response = await fetch('https://axioapi.com/api/v1/ai/images', { method: 'POST', headers: { 'Authorization': 'Bearer YOUR_API_KEY', 'Accept': 'application/json', 'Content-Type': 'application/json', }, body: JSON.stringify({"prompt":"value","width":10,"height":10}), }); const data = await response.json(); console.log(data);
import requests url = 'https://axioapi.com/api/v1/ai/images' headers = { 'Authorization': 'Bearer YOUR_API_KEY', 'Accept': 'application/json', 'Content-Type': 'application/json', } data = {"prompt":"value","width":10,"height":10} response = requests.post(url, json=data, headers=headers) print(response.json())
{
"data": {
"prompt": "a peaceful mountain lake",
"width": 1024,
"height": 1024,
"format": "png",
"mime_type": "image/png"
}
}
DNS resolve
BIN lookup for card issuers, DNS resolution over DNS-over-HTTPS with failover, and technology profiling for any domain.
/api/v1/dns/{domain}
curl -X GET 'https://axioapi.com/api/v1/dns/{domain}' \ -H 'Authorization: Bearer YOUR_API_KEY' \ -H 'Accept: application/json'
$response = \Illuminate\Support\Facades\Http::withToken("YOUR_API_KEY") ->acceptJson() ->get('https://axioapi.com/api/v1/dns/{domain}'); $data = $response->json();
const response = await fetch('https://axioapi.com/api/v1/dns/{domain}', { method: 'GET', headers: { 'Authorization': 'Bearer YOUR_API_KEY', 'Accept': 'application/json', }, }); const data = await response.json(); console.log(data);
import requests url = 'https://axioapi.com/api/v1/dns/{domain}' headers = { 'Authorization': 'Bearer YOUR_API_KEY', 'Accept': 'application/json', } response = requests.get(url, headers=headers) print(response.json())
{
"data": {
"domain": "github.com",
"status": "success",
"total_records": 1,
"records": [
{
"type": "A",
"data": "140.82.112.3",
"ttl": 60
}
]
}
}
- 89
- API endpoints
- 18
- API categories
- 84
- Upstream providers
- 429 / 5xx
- Automatic failover
- $0.001
- Per credit
- 200
- Free credits / month
API catalog
Everything you need, behind one API
Pick a capability, grab the endpoint and start integrating in minutes.
Active
Active
Active
Temporary Email
6 APIsCreate disposable inboxes, read incoming messages, rotate addresses and delete inboxes when you are done. Backed by several temp-mail providers with failover.
From 0.1 credits
Create inbox · Get inbox · +4 more
Active
Email Validation
4 APIsCheck whether an address is well-formed, disposable or deliverable. Validate one email, a batch, or run an async job over thousands.
From 0.6 credits
Validate email · Batch validate emails · +2 more
Active
SEO & Keywords
7 APIsKeyword volume, CPC and difficulty, keyword ideas and autocomplete suggestions, domain overview, backlink summary, domain history and on-page audits.
From 1 credit
Keyword metrics · Keyword suggestions · +5 more
Active
Content & Text Processing
10 APIsGrammar checking, AI text generation, text-to-speech and YouTube transcripts through one normalized interface.
From 0.1 credits
Grammar check · Text generate · +8 more
Active
AI Visual Generation
5 APIsGenerate and edit images from a text prompt as async jobs, then download the validated image file.
From 8 credits
AI image generate · Edit or modify AI image · +3 more
Active
Active
Proxy & VPN Nodes
5 APIsList proxy locations, open sticky proxy sessions, rotate the exit node and close sessions when finished.
From 0.1 credits
List proxy locations · Create proxy session · +3 more
Active
TikTok Scraper
4 APIsTikTok creator profile intelligence, engagement metrics, watermark-free HD video downloads, and comments.
From 1 credit
TikTok creator profile & stats · TikTok video metadata · +2 more
Active
Facebook Scraper
5 APIsPublic Facebook Fanpage intelligence, latest posts feed, HD video/reel downloads, and numeric UID lookup.
From 0.5 credits
Facebook page intelligence · Facebook numeric UID lookup · +3 more
Active
Instagram Scraper
2 APIsInstagram public profiles, post/reel details with 1080p media frames and engagement analytics.
From 1 credit
Instagram public profile · Instagram post / reel detail
Active
YouTube Scraper
7 APIsZero-quota YouTube video downloads, channel latest videos, search without API key, and hidden dislikes.
From 0.3 credits
YouTube video engagement & dislikes · YouTube channel latest videos · +5 more
Active
X (Twitter) Scraper
4 APIsX (Twitter) GraphQL user profile and tweet details with oEmbed and rich media extraction.
From 0.3 credits
X (Twitter) GraphQL profile · X (Twitter) tweet oEmbed · +2 more
Active
LinkedIn Scraper
4 APIsPublic LinkedIn company/member profiles and guest job search intelligence.
From 1 credit
LinkedIn profile intelligence · LinkedIn guest job search · +2 more
Active
Reddit Scraper
2 APIsReddit subreddit hot/new posts and recursive comments tree with sentiment insights.
From 1 credit
Reddit subreddit posts · Reddit post comments
Active
GitHub Scraper
4 APIsGitHub user profiles, repository search with stargazers, and developer public activity feed.
From 0.5 credits
GitHub user profile · GitHub repository search · +2 more
Active
Community & Open Social
13 APIsTelegram channels preview, Discord invites, Hacker News, Pinterest, Bluesky, Mastodon, Substack, Twitch.
From 0.3 credits
Telegram channel feed preview · Pinterest user pins · +11 more
Why AxioAPI
Stop integrating APIs one by one
Without AxioAPI
- Provider ADifferent auth
- Provider BDifferent format
- Provider CSeparate billing
- Provider DDifferent errors
- Different authentication
- Different response formats
- Separate billing
- Different error handling
- Multiple integrations
With AxioAPI
- SMS
- Verify
- Temporary Email
- Email Validation
- SEO & Keywords
- Content & Text Processing
- One API key
- Unified responses
- Centralized billing
- Consistent errors
- Built-in failover
Developer experience
One authentication. One response standard.
Integrate quickly with ready-to-paste code samples and a full OpenAPI spec.
curl -X POST 'https://axioapi.com/api/v1/temp-mail/inboxes' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-d '{"label":"value","ttl_minutes":10}'
$response = \Illuminate\Support\Facades\Http::withToken("YOUR_API_KEY")
->acceptJson()
->asJson()
->post('https://axioapi.com/api/v1/temp-mail/inboxes', {"label":"value","ttl_minutes":10});
$data = $response->json();
const response = await fetch('https://axioapi.com/api/v1/temp-mail/inboxes', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_KEY',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({"label":"value","ttl_minutes":10}),
});
const data = await response.json();
console.log(data);
import requests
url = 'https://axioapi.com/api/v1/temp-mail/inboxes'
headers = {
'Authorization': 'Bearer YOUR_API_KEY',
'Accept': 'application/json',
'Content-Type': 'application/json',
}
data = {"label":"value","ttl_minutes":10}
response = requests.post(url, json=data, headers=headers)
print(response.json())
-
Unified authentication
One API key for every capability.
-
Normalized responses
The same response structure across every API.
-
Request tracing
Every response carries an X-Request-Id for debugging.
-
Predictable errors
Consistent HTTP status codes and one error format.
Pricing
Pay monthly, or top up credits when you need them
1 credit = $0.001. Each endpoint has its own credit cost, listed below. Calls that fail because of an upstream provider are refunded.
Free Demo
Try every endpoint at low volume.
$0 /month
No card required
- 200 credits per month
- 5 requests/minute
- 20 requests/day per endpoint
- 1 active API keys
- 7-day log retention
- Support: community
Developer
For side projects and prototypes.
$15 /month
Billed monthly
- 20,000 credits per month
- No RPM limit after payment
- No RPD limit after payment
- 5 active API keys
- 30-day log retention
- Support: email
QA & Testing Pass
$19 /month
Billed monthly
- 25,000 credits per month
- No RPM limit after payment
- No RPD limit after payment
- 5 active API keys
- 30-day log retention
- Support: email
AI Creator Pass
$19 /month
Billed monthly
- 25,000 credits per month
- No RPM limit after payment
- No RPD limit after payment
- 5 active API keys
- 30-day log retention
- Support: email
Marketing & Growth Pass
$29 /month
Billed monthly
- 45,000 credits per month
- No RPM limit after payment
- No RPD limit after payment
- 5 active API keys
- 30-day log retention
- Support: email
Social & Growth Intelligence Pass
$29 /month
Billed monthly
- 40,000 credits per month
- No RPM limit after payment
- No RPD limit after payment
- 5 active API keys
- 30-day log retention
- Support: email
Growth
For products in production.
$49 /month
Billed monthly
- 75,000 credits per month
- No RPM limit after payment
- No RPD limit after payment
- 15 active API keys
- 90-day log retention
- Support: priority
Business
For teams with high volume.
$129 /month
Billed monthly
- 220,000 credits per month
- No RPM limit after payment
- No RPD limit after payment
- Unlimited API keys
- 365-day log retention
- Support: 24/7 with SLA
FAQ
Frequently asked questions
How are credits charged?
Each endpoint has a fixed credit cost per unit: a request, an inbox, an email checked, an image, or every 1,000 characters of text. Credits are reserved when a call starts and only charged when it succeeds; calls that fail because of a provider are refunded.
What happens when I run out of credits?
The API returns HTTP 402 with a clear error code. There are no surprise overage fees. Top up in the Billing page and continue immediately.
Are there rate limits?
Yes. Each plan has requests-per-minute and requests-per-day limits per endpoint. When you exceed them the API returns 429 with a Retry-After header.
Does AxioAPI store what I send?
AxioAPI stores request metadata (endpoint, status, latency, credits) so you can review usage and so we can resolve disputes. Retention depends on your plan. See the Privacy Policy for details.
What can I use AxioAPI for?
Testing, automation, SEO research, data verification and other lawful uses. Fraud, spam and abuse of third-party services are prohibited and lead to account suspension. See the Terms of Service.
How do I upgrade?
Open Billing in the customer portal, pick a plan and pay. Credits already in your wallet stay there when you change plans.
Create an account and make your first call in minutes
Sign up, verify your email, create an API key in the portal and start calling. The free plan includes 200 credits every month.