- Rate limits. Message reads (
getEmail,getViberMessageand the like) allow 500 requests an hour. Contact writes allow 200 a second, andaddContactrejects the same contact twice within a minute (409). Calls that hit 429 are retried with backoff. - Acknowledgements. Deletes, updates and segment or unsubscribe changes return
undefined: eSputnik answers them with an empty body or a sentence such as “Email with id=‘42’ has been deleted”. A failure throws, and the error message carries eSputnik’s explanation when it sends one (“Contact not found”). - Lists. List operations always return an array, including when eSputnik sends a single match as a bare object (email template search does) or an empty body.
- Not set up yet.
site.getScriptandsite.getWebPushScriptfail until a domain is registered,productFeeds.getProductFeedsConfigurationanswers 404 until a feed is configured, andcontacts.getGroupContactsworks on static segments only. - Contact fields. Additional fields are
{ id, value }pairs. List the ids withcontacts.getAdditionalFields. - Activity.
contacts.contactActivityhas to be enabled by eSputnik support first and keeps 90 days.contacts.contactMessagesneeds a contact identifier and adateFromless than a year old. - Broadcasts. Broadcast ids are strings.
broadcasts.createBroadcastsends a prepared message (messageId) to segment ids (groups). - Event tokens.
account.generateApiTokenreturns a bearer token for eSputnik’s event endpoints. Treat the result as a secret. - No local sync. Data is read from eSputnik on each call; nothing is stored in the Corsair database.
- 108 typed API operations
Setup
1
Install
2
Add the plugin
corsair.ts
corsair.withTenant(id). See Quick start for KEK + Hub keys, and Multi-tenancy for account isolation.3
Choose authentication
- API Key (Recommended)
No setup required yet. When you make your first request as a tenant, Corsair prompts for the API key.More: API Key
4
Connect a tenant
Mint a connect link and send the tenant to it. Hub hosts the page and delivers the result to your app — see Connect / OAuth.
Example API calls
Find a contact by emailWhat’s next
API reference
Every
esputnik.api.* operation with input and output types.Connect / OAuth
createLink, Hub delivery, and tenant connect flows.
Use with agents
Expose this plugin’s operations as MCP tools.