Cakemail
Cakemail API

Configure webhooks to receive real-time HTTP notifications when email events occur (delivery, open, click, bounce, unsubscribe, spam complaint). Webhooks can be filtered by event type and archived when no longer needed.


List all webhooks

GET
https://api.cakemail.dev
/webhooks

List all webhooks configured for the account, including their event filters and status.

Required scope(s): webhooks:read

List all webhooks › query Parameters

with_archived
​boolean
Default: false
account_id
​integer · min: 1

Optional Account ID to be used for the request

Optional Account ID to be used for the request

page
​integer · min: 1
Default: 1
per_page
​integer · min: 1
Default: 50
with_count
​boolean

Include count in the response

Include count in the response

Default: false

List all webhooks › Responses

Successful Response

​object · required

Pagination metadata

List of webhooks


Create a webhook

POST
https://api.cakemail.dev
/webhooks

Create a new webhook. Specify a destination URL and the event types to subscribe to.

Required scope(s): webhooks:write

Create a webhook › query Parameters

account_id
​integer · min: 1

Optional Account ID to be used for the request

Optional Account ID to be used for the request

Create a webhook › Request Body

event
​WebhookEventType · enum · required

An enumeration.

Enum values:
Account.Created
Account.Updated
Account.Confirmed
Account.Deleted
ContactsExport.Created
ContactsExport.Deleted
Campaign.Canceled
Campaign.Created
url
​string · uri · minLength: 1 · maxLength: 2083 · required
rate_limit
​integer
Default: 50
rate_limit_period
​string · enum

An enumeration.

Enum values:
second
minute
Default: second

Create a webhook › Responses

Successful Response

id
​string · required

Unique identifier for the webhook

​object · required

Created webhook details


Archive a webhook

POST
https://api.cakemail.dev
/webhooks/{webhook_id}/archive

Archive a webhook, stopping event delivery. The webhook can be unarchived later.

Required scope(s): webhooks:write

Archive a webhook › path Parameters

webhook_id
​string · required

Archive a webhook › query Parameters

account_id
​integer · min: 1

Optional Account ID to be used for the request

Optional Account ID to be used for the request

Archive a webhook › Responses

Successful Response

id
​string · required

Unique identifier for the webhook

​object · required

Archived webhook details

object
​string
Default: Webhook
archived
​boolean
Default: true

Unarchive a webhook

POST
https://api.cakemail.dev
/webhooks/{webhook_id}/unarchive

Restore an archived webhook, resuming event delivery.

Required scope(s): webhooks:write

Unarchive a webhook › path Parameters

webhook_id
​string · required

Unarchive a webhook › query Parameters

account_id
​integer · min: 1

Optional Account ID to be used for the request

Optional Account ID to be used for the request

Unarchive a webhook › Responses

Successful Response

id
​string · required

Unique identifier for the webhook

​object · required

Unarchived webhook details

object
​string
Default: Webhook
archived
​boolean
Default: false

Show a webhook

GET
https://api.cakemail.dev
/webhooks/{webhook_id}

Retrieve the details of a webhook, including its URL, event filters, and delivery status.

Required scope(s): webhooks:read

Show a webhook › path Parameters

webhook_id
​string · required

Show a webhook › query Parameters

account_id
​integer · min: 1

Optional Account ID to be used for the request

Optional Account ID to be used for the request

Show a webhook › Responses

Successful Response

id
​string · required

Unique identifier for the webhook

​object · required

Webhook signature configuration

​object · required

Webhook details


Patch a webhook

PATCH
https://api.cakemail.dev
/webhooks/{webhook_id}

Update a webhook's URL or event filters.

Required scope(s): webhooks:write

Patch a webhook › path Parameters

webhook_id
​string · required

Patch a webhook › query Parameters

account_id
​integer · min: 1

Optional Account ID to be used for the request

Optional Account ID to be used for the request

Patch a webhook › Request Body

url
​string · uri · minLength: 1 · maxLength: 2083
rate_limit
​integer
rate_limit_period
​RateLimitPeriod · enum

An enumeration.

Enum values:
second
minute

Patch a webhook › Responses

Successful Response

id
​string · required

Unique identifier for the webhook

​object · required

Patched webhook details

object
​string
Default: Webhook
patched
​boolean
Default: true