If you are integrating inbox placement testing into a product or an internal tool, you end up comparing two APIs: ours (Inbox Check, check.live-direct-marketing.online) and GlockApps. Both do essentially the same job — fan a test message out to a pool of seed mailboxes and report where each one landed. The differences are in the details, and the details matter when you are the one writing the integration code.
This is the honest side-by-side. We wrote it because we built one of the APIs, yes, but the comparison is fair: GlockApps is the incumbent and a good product. There are genuine cases where it wins. There are more cases where it does not. Here is where each one fits.
Inbox Check has a free tier (GlockApps does not), ships both Python and Node SDKs (GlockApps ships Python only), exposes an MCP server and A2A endpoints for AI agents (GlockApps does not), and covers CIS + EU providers out of the box. GlockApps still wins on long-running historical reporting and has a more polished UI for non-technical marketing teams.
Why this comparison exists
For years GlockApps had no serious competitor on the API side. If you wanted programmatic inbox placement, you paid for their Spam Testing API and that was that. Two things changed. First, a handful of free providers appeared. Second, developers started building CI/CD pipelines and agent workflows that the legacy API was never designed for — streaming, webhooks, MCP, per-test budgets. The comparison below measures against those new requirements, not against the 2020 feature set.
Auth model
Both APIs use a single static credential. The flavour differs:
- Inbox Check: Bearer token in the
Authorizationheader. Keys prefixedic_live_for production andic_test_for sandbox. Rotatable in the dashboard, scoped per-project. - GlockApps:
X-Api-Keyheader, single production key per account. Rotatable but with a ~24h propagation delay.
Functionally identical, but the Bearer token convention plays nicer with OpenAPI generators and SDK tooling. The GlockApps header name means you cannot reuse the same HTTP client configuration across multiple vendors without custom adapters.
Request shape
Both APIs have quirks. Starting a test on Inbox Check:
POST /api/check
Authorization: Bearer ic_live_xxxxxxxxxxxx
Content-Type: application/json
{
"senderDomain": "news.acme.io",
"subject": "Weekly digest",
"html": "<html><body>...</body></html>",
"text": "Plain text fallback",
"from": "hello@news.acme.io"
}GlockApps expects a slightly older shape: a test_id that you generate on your side, a list of seed addresses returned by GET /seeds, and a send from your own SMTP to those seeds. You then poll for results.
# GlockApps flow:
# 1) POST /spam-test/create -> returns { test_id, seeds: [...] }
# 2) YOUR app sends the message to every seed address via SMTP
# 3) GET /spam-test/{test_id}/results -> poll until readyThe first-class difference: Inbox Check does the fan-out for you. GlockApps makes your application the sender. If you are testing a campaign you are about to send anyway, GlockApps' model is accurate (tests actual send infrastructure). If you want a quick placement check on a template without touching your ESP, Inbox Check is less work.
Response format and pagination
Inbox Check returns a flat JSON with a summary block and a per-provider array. No pagination needed — you get up to 30 seeds per test. GlockApps paginates results over multiplepage tokens if your seed list has 50+ entries. Fine in theory, a footgun in practice: we have seen two open-source GlockApps wrappers ship without pagination support and silently drop half the result set.
Free tier coverage
This is the big one. As of 2026-06:
- Inbox Check: 10 free tests per month on the public API, plus the free web tool at check.live-direct-marketing.online with no auth at all. No credit card. The web tool gives you unlimited runs against the same seed pool.
- GlockApps: 2 free trial tests total on signup. After that, the lowest paid tier is $59/month for 50 tests.
If you are evaluating the API before committing, or if your usage is bursty (a dozen tests a month), the free tier alone eliminates GlockApps from the shortlist. Developers have noticed.
Rate limits
Both enforce per-key throttles. The shapes differ:
- Inbox Check: 5 tests/min, 100 tests/hour, 10k tests/day on the standard paid plan. Headers:
X-RateLimit-Remaining,Retry-Afteron 429. - GlockApps: 3 tests/min, no documented hourly cap. Undocumented behaviour: returns 500 (not 429) when the pool is saturated, which many clients retry into a loop.
SDK coverage
Inbox Check ships two first-party SDKs: inbox-check on PyPI and inbox-check on npm. Both are auto-generated from the OpenAPI spec, then hand-polished for idiomatic use — async iterators in Node, context-managed streaming in Python, typed exceptions across the board.
// Node / TypeScript
import { InboxCheck } from 'inbox-check';
const ic = new InboxCheck({ apiKey: process.env.INBOX_CHECK_API_KEY });
const test = await ic.tests.create({
senderDomain: 'news.acme.io',
subject: 'Weekly digest',
html: '<p>Hello</p>',
});
for await (const event of ic.tests.stream(test.id)) {
console.log(event.type, event.data);
}# Python
from inbox_check import InboxCheck
ic = InboxCheck() # reads INBOX_CHECK_API_KEY from env
test = ic.tests.create(
sender_domain="news.acme.io",
subject="Weekly digest",
html="<p>Hello</p>",
)
result = ic.tests.wait(test.id)
print(result.summary.inbox_rate)GlockApps ships a Python SDK only. It is a thin wrapper over requests; no streaming support, no typed models, and the pagination quirk above is reproduced inside the SDK. For Node or Go, you are writing the HTTP client yourself.
MCP and A2A endpoints
If you build with Claude, Cursor, or any agent framework that speaks Model Context Protocol, Inbox Check ships an MCP server you can mount with one line in your agent config. Same for A2A (agent-to-agent) JSON-RPC. Agents can call tests.create, subscribe to the stream, and return structured results without a custom tool wrapper.
GlockApps has no equivalent. You can of course wrap the REST API yourself, but that is work you do not do with Inbox Check.
Provider coverage
Inbox Check tests 20+ providers including the CIS (Mail.ru, Yandex, Rambler), EU ISPs (GMX, T-Online, Orange, Laposte, Free.fr, WP.pl, Onet.pl), and the usual Gmail/Outlook/Yahoo/AOL trio. GlockApps covers ~15 providers, strong on US and UK, notably missing Mail.ru, Yandex, Rambler, WP.pl, and Onet.pl at the time of writing.
If your customers are in the US only, this does not matter. If you have B2B senders going into Russia, Poland, or France at any volume, Inbox Check sees placements GlockApps does not.
Price per test
Inbox Check
Free tier 10 tests / month $0
Developer 500 tests / month $29
Team 5,000 tests / month $149
High-volume 50,000 tests / month custom
GlockApps
No free tier
Basic 50 tests / month $59
Advanced 500 tests / month $119
Pro 2,500 tests / month $409At 500 tests/month, Inbox Check is about 24% the cost of GlockApps. At 5,000, the gap widens: our plan is $149 versus roughly $800 on a GlockApps custom quote. The per-test economics favour us at every volume.
When GlockApps still wins
We are not going to pretend otherwise. There are cases where GlockApps is the better pick:
- Long-form historical dashboards for non-technical teams. GlockApps' Uptime Monitor has 5+ years of UI polish. Our dashboard is newer and aimed at engineers.
- Integrated DMARC aggregate report analysis. GlockApps runs a full DMARC analyser with report ingestion. Ours is a lightweight alignment check.
- Dedicated seed control. On GlockApps Enterprise you can request a dedicated seed pool. On Inbox Check, the seed pool is shared.
If any of those three matter to you, talk to GlockApps. If what you want is a clean API, a free tier, and idiomatic SDKs in both Python and Node, you are in the right place.