canonical: https://jentic.com/apis/blastable.com/blastable

# Blastable API

The Blastable API is the programmatic surface of Blastable, an email marketing platform focused on inbox deliverability. It exposes the full set of email-marketing primitives: lists, subscribers (including bulk create and cross-list search), templates, segments, senders, sending domains, and campaigns. Marketers use it to keep subscriber lists in sync with their CRM, manage transactional and broadcast templates, and orchestrate campaigns programmatically without the Blastable web UI.

## For AI agents

Manage email lists, subscribers, templates, segments, senders, and campaigns in Blastable. Useful for agents that automate email marketing operations.

## Scope

Does not handle SMS, push notifications, or transactional billing - use for email marketing list, subscriber, template, segment, sender, and campaign management only.

## Capabilities

- Create, list, and delete email marketing lists in Blastable
- Add subscribers individually or in bulk and unsubscribe them across one or all lists
- Look up a subscriber by email or by custom field across the account
- Manage email templates and segments used by campaigns
- Configure senders, including resending the confirmation email and updating sender details
- Drive Blastable campaigns from external workflows without using the web UI

## Use cases

### CRM-to-Blastable Subscriber Sync

Keep Blastable subscriber lists in sync with the CRM as contacts are created, updated, or marked as opted out. POST /lists/{list_uid}/subscribers/bulk handles the initial import, PUT /lists/{list_uid}/subscribers/{subscriber_uid} handles updates, and PUT /lists/subscribers/unsubscribe-by-email-from-all-lists removes a contact from every list when they revoke consent. This keeps marketing reach aligned with the source of truth.

Example prompt: POST /lists/{list_uid}/subscribers/bulk with a batch of new contacts, then PUT /lists/{list_uid}/subscribers/{subscriber_uid} for each contact whose record changed since the last sync.

### Cross-List Unsubscribe Compliance

When a contact requests removal under data protection rules, the workflow must remove them from every Blastable list, not just one. PUT /lists/subscribers/unsubscribe-by-email-from-all-lists handles that single-call cross-list unsubscribe and GET /lists/subscribers/search-by-email-in-all-lists confirms the change. The audit log records the email and timestamp for compliance evidence.

Example prompt: Call PUT /lists/subscribers/unsubscribe-by-email-from-all-lists for the supplied email, then GET /lists/subscribers/search-by-email-in-all-lists to confirm zero remaining subscriptions.

### Template and Sender Configuration Audit

Periodically audit the templates and senders on the Blastable account to make sure brand and compliance details are current. GET /templates lists every template, GET /senders lists configured senders, and PATCH /senders/{sender_uid} updates display names or footer details. POST /senders/{sender_uid}/resend-confirmation re-triggers verification when DNS or address changes.

Example prompt: Call GET /senders, flag any sender whose status is not verified, and call POST /senders/{sender_uid}/resend-confirmation to re-trigger verification.

### Segment-Targeted Campaign Reporting

Pull the subscribers in a Blastable segment to size or QA a planned campaign before it sends. GET /segments lists segments, GET /segments/{segment_uid}/subscribers enumerates the audience, and the result feeds an internal QA step that confirms the audience size meets the campaign brief. The flow runs entirely server-side without exporting CSVs.

Example prompt: Call GET /segments, then GET /segments/{segment_uid}/subscribers for the chosen segment, and report the audience size to the campaign QA channel.

### Agent-Driven Subscriber Add via Jentic

An AI agent capturing leads from a chat interface adds each new lead to the right Blastable list. It searches Jentic for 'add a new subscriber to a Blastable list', loads the POST /lists/{list_uid}/subscribers schema, and executes the call with the list id and subscriber email. The Blastable API key never leaves Jentic's vault, which is critical because the same key controls subscriber writes across the account.

Example prompt: Use Jentic search for 'add a new subscriber to a Blastable list', load the schema, then execute POST /lists/{list_uid}/subscribers with the email and required fields.

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| GET | /lists | List email lists |
| POST | /lists/{list_uid}/subscribers | Create a subscriber on a list |
| POST | /lists/{list_uid}/subscribers/bulk | Bulk create subscribers |
| PUT | /lists/subscribers/unsubscribe-by-email-from-all-lists | Unsubscribe an email from every list |
| GET | /lists/subscribers/search-by-email-in-all-lists | Find a subscriber by email across all lists |
| GET | /templates | List email templates |
| GET | /segments/{segment_uid}/subscribers | List subscribers in a segment |
| GET | /senders | List configured senders |

## Key resources

- **Lists** — Create, list, fetch, update, and delete email marketing lists
- **Subscribers** — Add, update, search, bulk import, and unsubscribe subscribers, individually or across all lists
- **Templates** — Manage reusable email templates
- **Segments** — Inspect segments and the subscribers they contain
- **Senders** — Manage configured senders, including verification resends
- **Sending Domains and Campaigns** — Manage domains used for sending and orchestrate campaigns

## Why Jentic

- **Setup:** Wiring Blastable by hand means implementing its X-API-KEY header auth and threading list and subscriber ids through every call yourself. Through Jentic you install once, import Blastable from the API Directory, store the API key once, and your agent calls it.
- **Permission scoping:** Blastable puts the list id in the URL path (/lists/{list_uid}/subscribers), so a rule can pin your agent to one list: it can add and search subscribers there and nothing else. You choose the operations it may call, so an unsubscribe-from-all-lists action is not included unless you add it.
- **Credential handling:** Your Blastable API key is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'add a subscriber to a Blastable list' or 'find a subscriber by email across lists', and Jentic returns the matching Blastable operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **Bland AI API** — Bland AI handles voice and SMS while Blastable handles email - useful as a multi-channel outreach pair.
- **BizToc** — BizToc supplies business news content that a Blastable newsletter can syndicate.
- **Blackfire API** — Blackfire profiles the application that drives Blastable to keep subscriber-sync jobs responsive.

## FAQ

### What authentication does the Blastable API use?

API key authentication via the X-API-KEY header (security scheme apiKey). Through Jentic the key is stored in the encrypted vault and the agent receives a scoped Jentic token instead of the raw key - important because the same key authorises subscriber writes across every list on the account.

### Can I bulk import subscribers with the Blastable API?

Yes. POST /lists/{list_uid}/subscribers/bulk accepts a batch of subscriber records for the specified list, which is the right entry point for CRM exports or one-off imports. Use POST /lists/{list_uid}/subscribers for single inserts.

### How do I unsubscribe an email from every Blastable list at once?

Call PUT /lists/subscribers/unsubscribe-by-email-from-all-lists with the email. This single call removes the contact from every list on the account, which is the pattern needed for compliance with data-protection unsubscribe requests.

### What are the rate limits for the Blastable API?

The OpenAPI spec does not declare an explicit rate limit. Treat the API as paced for marketing operations rather than high-fan-out reads, and back off on HTTP 429 responses if a bulk import or audit script triggers throttling.

### How do I add a Blastable subscriber through Jentic?

Install with pip install jentic, then use Jentic search with 'add a new subscriber to a Blastable list'. Jentic loads the POST /lists/{list_uid}/subscribers schema and executes it with the list id and subscriber details. The X-API-KEY header value never enters the agent's prompt.

### Can I look up a subscriber by email across all lists?

Yes. GET /lists/subscribers/search-by-email-in-all-lists performs the cross-list search and returns each list the email is subscribed to. This is the right call for compliance lookups, customer-support investigations, or pre-import dedupe.

### Can I limit what my agent is allowed to do with the Blastable API?

Yes. Because you run Jentic One yourself, your own rules decide which Blastable operations and credentials the agent may use. Since Blastable puts the list id in the URL path, such as POST /lists/{list_uid}/subscribers, you can pin the agent to a single list so it only adds and searches subscribers there. You also choose the operations it may call, so a broad action like PUT /lists/subscribers/unsubscribe-by-email-from-all-lists stays out of reach unless you explicitly grant it.
