Skip to main content
DELETE

Delete a contact

Method: DELETE | Endpoint: /v1/contacts/{contact_id} Description: Remove a contact from your account. It disappears from List contacts and from every endpoint that takes its ID. Its message history stays. Authentication: API key in the Authorization header: Authorization: Bearer ib_pk_<64 hex>. Create keys in the dashboard under Settings → API access.

Request Body

None. The path parameter contact_id is the contact’s ID (a UUID).

What deleting does

  • The ID stops working. Retrieve, Update, the tag, opt-out and block endpoints, and Send a message with this contact_id all return 404 not_found. Deleting it again also returns 404.
  • History stays. Its messages and conversations are kept, and List messages still returns them with the old contact_id.
  • Waiting messages still go out. A message already accepted for the contact and still waiting (held for sending hours, or queued) is not cancelled. Cancel it in the dashboard first if it shouldn’t be sent.
  • The number can come back as a new contact. Creating or updating a contact with the same number, sending to it with to, or an inbound message from it creates a new contact with a new id. Names, tags and a block are not carried over.
  • An opt-out is never lost. An opt-out belongs to the phone number, not the contact. A new contact for an opted-out number starts with opted_out: true, and sends to it return 422 contact_opted_out. Deleting a contact is not a way to message someone who opted out.
No webhook fires for a deletion.

Responses

204 No Content The contact is deleted. The response has no body. 401 Unauthorized
Other message values: Authorization Bearer token required, API key required (use Authorization: Bearer ib_pk_…), Invalid API key format, Customer account not found. 403 Forbidden
Your iBubbl account is suspended or cancelled (message is then Account is cancelled). Every API-key endpoint returns this. 404 Not Found
Also returned for a malformed ID, a contact that is already deleted, and a contact that belongs to another account. If a retried delete gets 404, the first attempt already deleted it.

Authorizations

Authorization
string
header
required

Bearer API key. Format: Authorization: Bearer ib_pk_<64 hex> (70 characters). Generate keys from Dashboard → Settings → API Access.

Path Parameters

contact_id
string
required

Response

Deleted.