Agent-readable docs index: /docs/llms.txt. Full docs in one file: /docs/llms-full.txt. Download /docs/docs.zip to grep all markdown files locally.

Update contact

/contacts/{id}PATCH
Partially updates the contact identified by ID. Omitted fields retain their existing values. The contact must belong to the organisation associated with the API key. Returns 404 for unknown or cross-organisation IDs.
Authorization
BearerAuth *Bearer <token>
API key generated under Account Settings → API Keys (rk_live_...). Send as header Authorization: Bearer <key>.
Request Bodyapplication/jsonrequired
phone_number?string
Example: "+2348012345678"
first_name?string
Example: "Ada"
last_name?string
Example: "Obi"
email?string (email)
external_customer_id?string
Example: "cus_92841"
company?string
Example: "Ada Foods"
whatsapp_opt_in?boolean
Set to true to record consent or false to remove the opt-in.
whatsapp_opt_in_source?string
Audit label describing where WhatsApp consent was collected.
Example: "tailora_checkout"
tags?string[]
opted_out?boolean
Example: false
custom_fields?object
Response
200 · Contact updated successfully
id?integer
Example: 1042
phone_number?string | null
Example: "+2348012345678"
email?string (email) | null
external_customer_id?string | null
Example: "cus_92841"
status?string
Example: "updated"
401 · Unauthorized
success *boolean
Example: false
error *string
Human-readable error message explaining the failure reason.
Example: "Recipient not reachable on WhatsApp."
error_code *string
Stable machine-readable error code.
Example: "recipient_not_on_whatsapp"
404 · Resource not found
success *boolean
Example: false
error *string
Human-readable error message explaining the failure reason.
Example: "Recipient not reachable on WhatsApp."
error_code *string
Stable machine-readable error code.
Example: "recipient_not_on_whatsapp"
422 · Unprocessable entity / Validation failure
errors *string[]
Request example
curl -X PATCH "https://convert.ruut.chat/api/v1/contacts/1042" \ -H "Authorization: Bearer <token>" \ -H "Content-Type: application/json" \ -d '{ "first_name": "Adanna", "opted_out": false, "custom_fields": { "account_tier": "platinum" } }'
Response example
{ "id": 1042, "status": "updated" }