blocklist

Stable. Describes behaviour that is built and covered by tests in this repository.

API reference

GET /v1/blocklist #

Your blocklist, newest first

The e-mail addresses, tax ids and external customer ids that a new customer, or a customer's new e-mail address or tax id, may not match (error key plans.customer.blocklisted, on creating a customer and on changing the contact details or the tax data). At most 1000 entries, so the list is not paged. Customers that exist when an entry is added are not touched: block them from the customer list. The operator keeps a platform-wide list of its own that holds the same gates for every app; it is not shown here and a refusal does not say which list it was. Needs customers:read.

Responses

StatusMeaningBody
200OKListBlocklistResponse
Example response
{
  "entries": [
    {
      "id": "0192f0b4-6f6e-7c3a-9a3e-6a1f2b3c4d5e",
      "kind": "email",
      "value": "string",
      "note": "string",
      "created_by": "string",
      "create_time": "2026-11-03T10:15:00Z"
    }
  ]
}
curl
curl -X GET https://YOUR-API-ADDRESS/v1/blocklist \
  -H "Authorization: Bearer $PAYRUDDER_API_KEY"

POST /v1/blocklist #

Put an e-mail address, a tax id or an external customer id on your blocklist

The value is normalised: an e-mail address in lower case, a tax id without spaces and dashes in capitals, an external id as it is. An entry that is there is returned as it is. The note is yours and is never shown to the person the entry is about. Recorded in the audit log without the value. Error key plans.blocklist.full at 1000 entries. Needs customers:write.

Request body

FieldTypeDescription
kind requiredemail | tax_id | external_id
value requiredstring
notestring
Example
{
  "kind": "email",
  "value": "string"
}

Responses

StatusMeaningBody
201CreatedBlocklistEntry
400Error envelopeError
429Error envelopeError
Example response
{
  "id": "0192f0b4-6f6e-7c3a-9a3e-6a1f2b3c4d5e",
  "kind": "email",
  "value": "string",
  "note": "string",
  "created_by": "string",
  "create_time": "2026-11-03T10:15:00Z"
}
curl
curl -X POST https://YOUR-API-ADDRESS/v1/blocklist \
  -H "Authorization: Bearer $PAYRUDDER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"kind":"email","value":"string"}'

DELETE /v1/blocklist/{id} #

Take an entry off your blocklist

Needs customers:write.

Parameters

NameInTypeDescription
id requiredpathstring · uuid

Responses

StatusMeaningBody
204Removed
404Error envelopeError
curl
curl -X DELETE https://YOUR-API-ADDRESS/v1/blocklist/<id> \
  -H "Authorization: Bearer $PAYRUDDER_API_KEY"

Models

AddBlocklistEntryRequest

FieldTypeDescription
kind requiredemail | tax_id | external_id
value requiredstring
notestring

BlocklistEntry

FieldTypeDescription
id requiredstring · uuid
kind requiredemail | tax_id | external_id
value requiredstringThe normalised value
note requiredstringThe owner's own note; never shown to the person the entry is about
created_by requiredstringA person's address, key:<api key id>, or operator
create_time requiredstring · date-time

Error

FieldTypeDescription
error requiredobject

ListBlocklistResponse

FieldTypeDescription
entries requiredarray of BlocklistEntry