Skip to content

Add a suppression entry

Requires EDITOR and TRACKLY_PII_HMAC_KEY. Upsert on (projectId, emailHash).

projectId
required
string

Tenant project id (row-level isolation on every query).

Media typeapplication/json
object
email
required
string format: email
reason
string
default: manual
Allowed values: bounce complaint unsubscribe manual imported inbound_unsubscribe
scope
string
default: project
Allowed values: project global
expiresAt
string | null format: date-time

Created/updated suppression.

Media typeapplication/json
object
suppression
object
id
string
projectId
string
emailMasked
string
reason
string
Allowed values: bounce complaint unsubscribe manual imported inbound_unsubscribe
scope
string
Allowed values: project global
source
string | null
createdAt
string format: date-time
expiresAt
string | null format: date-time

Request body failed Zod validation.

Media typeapplication/json

Validation error envelope with per-field issues.

object
error
string
issues
Array<object>
object
path
string
message
string
Examplegenerated
json
{
"error": "example",
"issues": [
{
"path": "example",
"message": "example"
}
]
}

Not authenticated (no valid session/principal).

Media typeapplication/json
object
error
required

Human-readable error message.

string
message
string
Examplegenerated
json
{
"error": "example",
"message": "example"
}

Authenticated but lacks the required project role.

Media typeapplication/json
object
error
required

Human-readable error message.

string
message
string
Examplegenerated
json
{
"error": "example",
"message": "example"
}

PII HMAC key not configured.

Media typeapplication/json
object
error
required

Human-readable error message.

string
message
string
Examplegenerated
json
{
"error": "example",
"message": "example"
}