Skip to content

List blocked numbers and prefixes

GET
/blocked-contacts
curl --request GET \
--url 'https://app.whatsetter.com/api/v1/blocked-contacts?kind=number&limit=50' \
--header 'Authorization: Bearer <token>'

The workspace’s block rules, newest first. kind=number rules carry the E.164 phone when the value is a real number (a masked WhatsApp id has none); kind=prefix rules hold the dial code in value. campaign_id is null for team-wide rules (every rule created through the API), or the campaign slug when the dashboard scoped it. Requires scope blocklist:manage.

kind
string
Allowed values: number prefix
limit
integer
default: 50 >= 1 <= 100
cursor
string

Opaque cursor from the previous page’s pagination.next_cursor.

The rules

Media typeapplication/json
object
data
Array<object>
object
id
string
kind
string
Allowed values: number prefix
value

The bare digits of the number (or a masked WhatsApp id), or the dial code.

string
phone

E.164 form for kind: number when the value is a real phone; null otherwise.

string | null
label
string | null
reason
string | null
campaign_id

null = team-wide (every rule created through the API); a campaign slug when the dashboard scoped it.

string | null
created_at
string format: date-time
pagination
object
has_more
boolean
next_cursor
string | null
Example
{
"data": [
{
"id": "68f1a0b1c2d3e4f5a6b7c8d9",
"kind": "number",
"value": "33612345678",
"phone": "+33612345678",
"label": "Spammer",
"reason": null,
"campaign_id": null,
"created_at": "2026-09-15T12:00:00.000Z"
},
{
"id": "68f1a0b1c2d3e4f5a6b7c8da",
"kind": "prefix",
"value": "91",
"phone": null,
"label": "India",
"reason": "Out of market",
"campaign_id": null,
"created_at": "2026-09-15T12:01:00.000Z"
}
],
"pagination": {
"has_more": false,
"next_cursor": null
}
}

Missing, unknown or revoked API key

Media typeapplication/json
object
error
object
code
string
message
string
Examplegenerated
{
"error": {
"code": "example",
"message": "example"
}
}

The key lacks the required scope

Media typeapplication/json
object
error
object
code
string
message
string
Examplegenerated
{
"error": {
"code": "example",
"message": "example"
}
}

Invalid parameter or body (also an invalid or expired cursor)

Media typeapplication/json
object
error
object
code
string
message
string
Examplegenerated
{
"error": {
"code": "example",
"message": "example"
}
}