Blocks

A block is a number, or a run of numbers, that scores as bad as it gets until a time. Most are placed by us; you can place and lift your own.

A block

patternstring
The number, or the run it belongs to: a stem like +151255501 covers every number that starts that way.
type"manual" | "exact" | "stem" | "volume"
manual is yours. exact and stem are ours, placed after a number or a run misbehaved. volume is on your own protected number, when it takes far more calls than it should in an hour.
untilstring
When it lifts, ISO 8601.
remaining_sinteger
Seconds until then.
violationsinteger
How many times the pattern has earned a block. Each one lasts longer than the last, up to a day.
A block does not refuse a call by itself: it makes the next call from the pattern score as a reject, and it is Guard, the gate, or your own code acting on that score that refuses it. On Watch a block is a fact you are told, not an action we take.

List blocks

GET/v1/blocksany key

Every block in force, the one lifting last first. With all=1, every block the account has ever had, newest first, up to a hundred, each marked active or not.

Query parameters

all1
History instead of the current state.

Response

blocksobject[]
Blocks, as above. In history rows, created_at and updated_at replace remaining_s.

Block a number

POST/v1/blocksfull key

Blocks one number by hand. Fifteen minutes to begin with; a caller who keeps trying during or after it earns a longer one each time, up to a day. Blocking a number that is already blocked counts as another violation and extends it.

Request body

patternstringrequired
The number, E.164.

Response

patternstring
As normalised.
untilstring
When it lifts.

Errors

invalid_pattern400
Not a number we could parse.
read_only_key403
A cw_read_ key.

Lift a block

DELETE/v1/blocks/{pattern}full key

Removes a block, yours or ours, and its violation count with it. The pattern goes in the path, with the plus encoded.

Path parameters

patternstringrequired
The number or stem, URL-encoded: %2B12125550143.

Response

removedboolean
false when there was nothing to remove.

See also

Reputation tells you the blocks a number has had before, and how many other customers have blocked it. The trusted list is the opposite of a block: a number that always scores zero.