API reference

Add a suppression

Manually adds an address to the tenant suppression list. Required role: admin or owner.

POST/v1/admin/suppressions

Authenticate with a session token and X-Tenant-Slug.

USUALLY AUTOMATIC

In normal operation you do not need to call this endpoint — Nudgel auto-populates the suppression list from provider webhook events. Use this endpoint when you need to proactively suppress an address (e.g., a customer contacts support to opt out before a webhook fires).

Request

curl
curl -X POST https://api-raven-cloud.autotribes.app/v1/admin/suppressions \
  -H "Authorization: Bearer eyJ..." \
  -H "X-App-Name: raven-cloud" \
  -H "X-Tenant-Slug: acme-co" \
  -H "Content-Type: application/json" \
  -d '{
    "channel": "email",
    "address": "customer@example.com",
    "reason": "unsubscribed"
  }'

Body parameters

FieldTypeNotes
channelstring · requiredemail or sms
addressstring · requiredEmail address or phone number to suppress
reasonstring · requiredhard_bounce · spam_complaint · unsubscribed · manual

Response

201 Created

json
{
  "id": "e3f4a5b6-c7d8-9e0f-1a2b-3c4d5e6f7a8b",
  "channel": "email",
  "address": "customer@example.com",
  "reason": "unsubscribed",
  "createdAt": "2026-05-01T10:23:18.114Z"
}

Errors

StatusWhen
400Missing required field, invalid channel, or invalid reason
401Invalid or expired session token
403Caller does not have admin or owner role
409Address already suppressed for this channel in this tenant