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

POST/api/v1/tests

Create a test. Consumes one quota unit on success. Returns 202 with the set of seed addresses to send your test email to.

Request
{
  "providers": ["gmail", "outlook"],   // optional; default = key's allowlist
  "recipient_email": "qa@acme.com",    // optional; audit only
  "meta": { "campaign_id": "xyz" }     // optional; opaque
}
Response
{
  "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 }
}
GET/api/v1/tests/:token

Fetch 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.

Response
{
  "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
}
GET/api/v1/tests

List your tests, most recent first. Supports cursor pagination via the createdAt timestamp.

Response
{
  "items": [
    { "token": "a9f3...", "status": "done", "created_at": "...", "result_count": 5 }
  ],
  "next_cursor": "2026-04-19T10:00:00.000Z"
}
DELETE/api/v1/tests/:token

Delete a test (and all its results / screenshots). Irreversible.

Response
{ "deleted": true }
GET/api/v1/me

Inspect your key metadata and current period usage.

Response
{
  "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

StatusErrorMeaning
401auth_requiredNo Authorization header sent.
401invalid_api_keyKey does not exist, is inactive, or was revoked.
402quota_exceededDaily or monthly quota reached. Upgrade tier or wait for reset.
400providers_not_allowedRequested provider not in the key's allowlist.
400no_seeds_for_providerOperator has no paid-tier seeds for the requested provider yet.
404test_not_foundToken doesn't exist OR belongs to a different key.
503paid_api_disabledFeature flag is off — contact the operator.
503service_overloadedSeed pool exhausted; retry in a few minutes.

Tiers

Default quotas per tier. Operator can override per key.

TierDailyMonthlyScreenshots
basic1001,000
pro50010,000included
enterprise5,000100,000included

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.