Inbox Check — Paid API
Bearer-authenticated REST API for automated deliverability testing. Each key has per-day and per-month quotas, optional provider allowlists, and an optional screenshots add-on.
Authentication
Send the API key in the Authorization header as a bearer token:
Authorization: Bearer icp_live_<your-key>
Keys are issued by the operator. You receive the plaintext value once at creation time — store it in your secret manager. A lost key must be revoked and replaced.
Quotas & rate limits
Each key has a daily and monthly counter. Counters reset at 00:00 UTC and on the first of each month respectively. Exceeding a quota returns 402 Payment Required with an error: "quota_exceeded" body — signal to upgrade your tier, not to retry.
Call GET /api/v1/me at any time to inspect current period consumption.
Endpoints
/api/v1/testsCreate a test. Consumes one quota unit on success. Returns 202 with the set of seed addresses to send your test email to.
{
"providers": ["gmail", "outlook"], // optional; default = key's allowlist
"recipient_email": "qa@acme.com", // optional; audit only
"meta": { "campaign_id": "xyz" } // optional; opaque
}{
"token": "a9f3e0c2b1...",
"status": "waiting",
"send_to": [
{ "email": "seed+a9f3...@gmail.com", "provider": "Gmail" },
{ "email": "seed+a9f3...@outlook.com", "provider": "Outlook" }
],
"results_url": "https://check.live-direct-marketing.online/test/a9f3...",
"created_at": "2026-04-19T10:22:00Z",
"expires_at": "2026-04-26T10:22:00Z",
"quota": { "daily_remaining": 99, "monthly_remaining": 999 }
}/api/v1/tests/:tokenFetch the current state of a test. Includes placements per seed, authentication majority (SPF/DKIM/DMARC), recommendations, and — if the feature is enabled on your key — screenshot URLs.
{
"token": "a9f3...",
"status": "done",
"summary": { "inbox_rate": 0.83, "inbox": 5, "spam": 1, "total": 6 },
"authentication": { "spf": "pass", "dkim": "pass", "dmarc": "pass" },
"results": [
{
"provider": "Gmail",
"email": "seed+a9f3...@gmail.com",
"placement": "inbox",
"spf": "pass", "dkim": "pass", "dmarc": "pass",
"screenshot_url": "https://check.live-direct-marketing.online/screenshots/a9f3.../uuid.png"
}
],
"screenshots_enabled": true,
"screenshots_pending": 0
}/api/v1/testsList your tests, most recent first. Supports cursor pagination via the createdAt timestamp.
{
"items": [
{ "token": "a9f3...", "status": "done", "created_at": "...", "result_count": 5 }
],
"next_cursor": "2026-04-19T10:00:00.000Z"
}/api/v1/tests/:tokenDelete a test (and all its results / screenshots). Irreversible.
{ "deleted": true }/api/v1/meInspect your key metadata and current period usage.
{
"id": "uuid",
"tier": "pro",
"features": { "screenshots": true },
"allowed_providers": ["gmail", "outlook"],
"usage": { "daily_used": 12, "daily_limit": 500, "monthly_used": 340, "monthly_limit": 10000 }
}Errors
| Status | Error | Meaning |
|---|---|---|
| 401 | auth_required | No Authorization header sent. |
| 401 | invalid_api_key | Key does not exist, is inactive, or was revoked. |
| 402 | quota_exceeded | Daily or monthly quota reached. Upgrade tier or wait for reset. |
| 400 | providers_not_allowed | Requested provider not in the key's allowlist. |
| 400 | no_seeds_for_provider | Operator has no paid-tier seeds for the requested provider yet. |
| 404 | test_not_found | Token doesn't exist OR belongs to a different key. |
| 503 | paid_api_disabled | Feature flag is off — contact the operator. |
| 503 | service_overloaded | Seed pool exhausted; retry in a few minutes. |
Tiers
Default quotas per tier. Operator can override per key.
| Tier | Daily | Monthly | Screenshots |
|---|---|---|---|
| basic | 100 | 1,000 | — |
| pro | 500 | 10,000 | included |
| enterprise | 5,000 | 100,000 | included |
Examples
curl
curl -X POST https://check.live-direct-marketing.online/api/v1/tests \
-H "Authorization: Bearer icp_live_..." \
-H "Content-Type: application/json" \
-d '{"providers":["gmail"]}'Node (fetch)
const res = await fetch(
'https://check.live-direct-marketing.online/api/v1/tests',
{
method: 'POST',
headers: {
Authorization: `Bearer ${process.env.ICP_KEY}`,
'Content-Type': 'application/json',
},
body: JSON.stringify({ providers: ['gmail', 'outlook'] }),
},
);
const { token, send_to } = await res.json();Python (requests)
import os, requests
r = requests.post(
'https://check.live-direct-marketing.online/api/v1/tests',
headers={'Authorization': f'Bearer {os.environ["ICP_KEY"]}'},
json={'providers': ['gmail']},
)
r.raise_for_status()
test = r.json()Changelog
- v1 (initial) — /v1/tests CRUD, /v1/me, per-key daily + monthly quotas, provider allowlist, optional webmail screenshots.