# MagicBell (slim) > MagicBell is a hosted notification service that sends one broadcast to users across an in-app inbox, mobile and web push, email, SMS, Slack and Teams. Agents reach it through a REST API, a CLI and typed clients. - Full: https://www.anchorterminal.com/tools/magicbell.md (~6,550 tokens) · this version ~1,580 tokens · JSON https://www.anchorterminal.com/tools/magicbell.json · canonical https://www.anchorterminal.com/tools/magicbell - Index: https://www.anchorterminal.com/llms.txt · API: https://www.anchorterminal.com/api/v1/index.json · Updated: 2026-10-09 **C · 58.8/100 · rank #515 of 842 · #9 in Notifications · not agent-ready · confidence medium** Assessment: A public OpenAPI 3.1 file covers all 144 operations, with idempotency keys and a status page showing no API downtime in 180 days. No batching or digest step, llms.txt, error code list, SLA or sub-processor list was found, and project tokens carry no scopes. ## Facts - Kind: HTTP API · vendor: MagicBell, Inc. · category: Notifications · legal entity: MagicBell, Inc. · provenance 86/100 - Endpoint: `https://api.magicbell.com/v2` (HTTP) - Auth: API key · pricing: Freemium · x402: no · licence: Proprietary service under MagicBell's terms. The Go client and the CLI are MIT. The JavaScript client carries MagicBell's own Licence Agreement - Probe metrics: not measured yet (probes haven't run) - API: REST, version v2 at https://api.magicbell.com/v2. OpenAPI 3.1 with 144 operations. v1 is deprecated - Channels: In-app inbox, mobile push (APNs, FCM, Expo), web push, email (Mailgun, SendGrid, Amazon SES, SMTP, Ping Email), SMS (Twilio), Slack and Teams - Credentials: Project JWT from the dashboard, with a name and expiry, discardable. User JWT signed with HS256 by the customer's backend. No scopes - Rate limits: 500 requests a minute per IP address. A 429 blocks the address for 60 seconds - Idempotency: `Idempotency-Key` header on some endpoints, first response cached for 24 hours - Pagination: Cursor based, `limit` (default 50), `starting_after` and `ending_before` - Preferences: Per-user channel preferences by category at `/v2/channels/user_preferences`, and a delivery plan of ordered channel steps with delays and conditions - Workflows: Commands broadcast, wait, pause and abort, with conditions and template variables. No batching or digest command found - Clients: magicbell-js 1.8.0 (29 July 2026), magicbell-go v0.5.0 (24 March 2026), Swift and Java user clients, magicbell-cli 1.4.0 (8 January 2026), and React, Preact, Svelte and web components - Free tier: Builder, $0, 1,000 deliveries a month, one project - Billing unit: One delivery is one notification on one channel for one user - Status: status.magicbell.com on Better Stack. Components are API, Dashboard, In-App Delivery (through Ably) and Email Delivery - Prices: Startup $249 per month (plan); Startup overage, per delivery $0.0025 per message; Additional project $99 per month (plan) - Scores: Reliability 75, Performance pending, Schema & documentation 68, Agent ergonomics 63, Security & auth 50, Payments & pricing 35, Task success pending, Maintenance & community 49, Transparency & trust 58 · total over the 7 assessed categories - Why: Reliability, Graded as a hosted API. · Schema & documentation, OpenAPI 3.1 file at /docs/api/openapi.json with 84 paths and 144 operations (25). · Agent ergonomics, List endpoints take `limit` (default 50) and there is no field selection (12). · Security & auth, Two credentials. · Payments & pricing, No x402, MPP or L402 (0). · Maintenance & community, The last release is magicbell-js 1.8.0 on 29 July 2026, with a changelog entry the same day, 72 days before this check (20). · Transparency & trust, Closed service under published terms. - Sources: 19, open questions: 7, both in the full twin - Capabilities: notify.push, notify.in-app, notify.multichannel, notify.preferences - JSON: https://www.anchorterminal.com/api/v1/tools/magicbell.json - Verify (for the vendor): the badge `https://www.anchorterminal.com/badges/magicbell.svg` or a link to https://www.anchorterminal.com/tools/magicbell from a page on magicbell.com or one of its subdomains, or the README of github.com/magicbell/magicbell-js, then `POST https://www.anchorterminal.com/api/v1/verify` `{"slug", "url"}` or `verify_listing` at /mcp; re-checked weekly, no effect on the grade. Snippets in the full twin. ## Before you call it 1. Ask the owner for a Project JWT from the dashboard's Project Auth page. The terms forbid accounts registered by automated methods 2. Send `Idempotency-Key` with a UUID on `POST /v2/broadcasts`, and reuse it on a retry within 24 hours 3. Stay under 500 requests a minute per IP. A 429 blocks the address for 60 seconds, so put many recipients in one broadcast 4. Use a Project JWT for broadcasts, users, integrations and workflows, and a User JWT for one user's inbox, tokens and preferences 5. Read delivery failures from `GET /v2/events` and the broadcast's `status`, since email, SMS and push go through providers the owner connects ## Connect ```bash npm install magicbell-js ``` ```bash curl --request POST \ --url 'https://api.magicbell.com/v2/broadcasts' \ --header 'content-type: application/json' \ --header "authorization: Bearer $TOKEN" \ --data '{"title":"Build finished","recipients":[{"email":"test@example.com"}]}' ``` Full config and headless snippets are in the full page. Through letme (picks today, calling later): https://letme.dev/magicbell ## Similar tools | Tool | Grade | Score | Shared capabilities | Slim | | --- | --- | --- | --- | --- | | SuprSend | BB | 72.6 | notify.push, notify.in-app, notify.multichannel, notify.preferences | https://www.anchorterminal.com/tools/suprsend.min.md | | Courier | BB | 70.5 | notify.push, notify.in-app, notify.multichannel, notify.preferences | https://www.anchorterminal.com/tools/courier.min.md | | Knock | B | 66.5 | notify.push, notify.in-app, notify.multichannel, notify.preferences | https://www.anchorterminal.com/tools/knock.min.md | | Novu | B | 64.2 | notify.push, notify.in-app, notify.multichannel, notify.preferences | https://www.anchorterminal.com/tools/novu.min.md | | OneSignal | B | 69.3 | notify.push, notify.in-app, notify.multichannel | https://www.anchorterminal.com/tools/onesignal.min.md | ## Panel reviews (0, desk reviews from public material, no calls made)