SendPulse · AsyncAPI Specification
Sendpulse Webhooks
Version
View Spec
View on GitHub
MarketingMarketing AutomationEmailTransactional EmailSMSWeb PushChatbotsCRMMulti-ChannelMessagingOnline CoursesPopupsEmail VerificationMCPAgent ReadyAsyncAPIEvents
AsyncAPI Specification
generated: '2026-08-13'
method: searched
source: openapi/sendpulse-bulk-email-openapi.yml + https://sendpulse.com/integrations/api/bulk-email
asyncapi:
published: false
note: SendPulse publishes no AsyncAPI document. No asyncapi/ spec file is written — this artifact records the
webhook surface only.
transport: HTTP callback to a subscriber-supplied HTTPS URL
management:
style: REST CRUD, one webhook row per action
operations:
- operationId: getWebhooks
method: get
path: /v2/email-service/webhook
summary: Get webhooks
- operationId: createWebhook
method: post
path: /v2/email-service/webhook
summary: Create a webhook
- operationId: getWebhookById
method: get
path: /v2/email-service/webhook/{id}
summary: Get webhook by ID
- operationId: updateWebhook
method: put
path: /v2/email-service/webhook/{id}
summary: Update a webhook
- operationId: deleteWebhook
method: delete
path: /v2/email-service/webhook/{id}
summary: Delete a webhook
create_request:
url: string — HTTPS handler URL (required)
actions: array of strings — events to subscribe to (required)
stored_shape:
id: integer
user_id: integer
url: string
action: string
events:
documented_examples:
- delivered
- open
- unsubscribe
source_note: Only these three action values appear in the published spec examples and x-ai-reasoning-instructions
("Choose specific actions to track (e.g., unsubscribe, open, delivered)"). SendPulse publishes NO enumerated
list of valid action values anywhere — the request schema types actions as an untyped array of strings. The
event names are therefore NOT fully known and none are invented here.
related_delivery_status_codes:
- code: 0
meaning: In queue
- code: 1
meaning: Sent
- code: 2
meaning: Delivered
- code: 3
meaning: Opened
- code: 4
meaning: Link redirected
- code: 5
meaning: User unsubscribe
- code: 9
meaning: Rejected by server as spam
- code: 10
meaning: Mailbox is full
- code: 11
meaning: Marked as spam by user
status_code_source: https://sendpulse.com/integrations/api/bulk-email (campaign statistics response), NOT the
webhook payload schema.
signature_verification:
published: false
note: No webhook signing secret, HMAC header or replay-protection mechanism is documented. A receiver cannot verify
that a callback came from SendPulse.
retry_policy:
published: false
payload_schema:
published: false
note: No schema for the callback body is published in the spec or the docs.
gaps:
- No enumerated event catalogue
- No callback payload schema
- No signature/verification scheme
- No retry or delivery-guarantee statement
- Webhooks exist for the email service only — no webhook surface for CRM, chatbots, courses, SMS or push
Work with this as data
Every AsyncAPI spec here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for asyncapi
4 MCP tools reach this
find_asyncapisBrowse and filter every AsyncAPI spec in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This AsyncAPI spec
curl "https://apis.io/api/v1/asyncapis/sendpulse-webhooks"
All asyncapi
curl "https://apis.io/api/v1/asyncapis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.