Skip to main content
DELETE
/
contacts
/
{contactId}
Archive contact
curl --request DELETE \
  --url https://api.routera.io/contacts/{contactId} \
  --header 'Authorization: Bearer <token>'
{
  "id": "<string>",
  "external_id": "<string>",
  "first_name": "<string>",
  "last_name": "<string>",
  "email": "<string>",
  "contact_owner": "jane@example.com",
  "created_at": "2023-11-07T05:31:56Z",
  "updated_at": "2023-11-07T05:31:56Z",
  "archived": true,
  "archived_by": "<string>"
}

Endpoint

DELETE https://api.routera.io/contacts/{id}
Route: /contacts/{contactId}
Authentication: Bearer JWT
Path parameter: contactId — object ID DELETE archives the object. The record is kept and archived is set to an ISO timestamp.

Response fields after archive

The 200 response uses default properties plus archived_by:
PropertyDescription
idInternal object ID
first_nameCustom or system field (flat on the object)
last_nameCustom or system field (flat on the object)
emailCustom or system field (flat on the object)
contact_ownerAssigned owner email
external_idExternal identifier (nullable)
archivedfalse when active; ISO timestamp when archived
archived_byUser or API client ID who archived the object (only when archived; added automatically)
FieldValue when archived
archivedISO timestamp (no longer false)
archived_byID of the user or API client who archived the object
created_at and updated_at are always included in every response.

Response example

{
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "external_id": "ext-001",
  "created_at": "2026-05-01T10:00:00.000Z",
  "updated_at": "2026-05-28T12:00:00.000Z",
  "archived": "2026-05-28T12:00:00.000Z",
  "first_name": "Ada",
  "last_name": "Lovelace",
  "email": "ada@example.com",
  "contact_owner": "jane@example.com",
  "archived_by": "user-uuid"
}

Errors

StatusWhen
400Missing contactId in path
401Missing account context
404Object not found or already archived

Authorizations

Authorization
string
header
required

Bearer JWT with valid account context.

Path Parameters

contactId
string
required

Object identifier

Response

Archived object

Flat JSON object; custom fields at top level alongside id and external_id. created_at and updated_at are always present.

id
string
external_id
string | null
first_name
string | null
last_name
string | null
email
string | null
contact_owner
string | null

Assigned owner email

Example:

"jane@example.com"

created_at
string<date-time>
updated_at
string<date-time>
archived

false when active, or ISO timestamp when archived

archived_by
string

Present when archived