Deel Flows

API reference

Contacts

Create, find, update, and delete contacts. Contacts are identified by their WhatsApp phone number in E.164 format.

POST/v1/contacts

Create a contact — or update the existing one if a contact with the same phone number already exists (idempotent upsert). Returns 201 on create, 200 on update.

Body

FieldTypeDescription
phonerequiredstringE.164 phone number, e.g. +15551234567. The contact identifier.
propertiesobjectUser properties keyed by property name (string, number, boolean, or string[] for multi-select).
curl
curl -X POST https://app.deelflows.com/api/v1/contacts \
  -H "Authorization: Bearer df_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{ "phone": "+15551234567", "properties": { "firstName": "Ada" } }'
Response 201
{
  "id": "c1a2…",
  "properties": { "phone": "+15551234567", "firstName": "Ada" }
}
GET/v1/contacts/find?phone=…

Find a contact by phone number. URL-encode the + as %2B. Returns 404 when no contact matches.

GET/v1/contacts/:id

Get a contact by id.

PUT/v1/contacts/:id

Update a contact's properties. Only the properties you send change; everything else is left as-is.

curl
curl -X PUT https://app.deelflows.com/api/v1/contacts/c1a2… \
  -H "Authorization: Bearer df_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{ "properties": { "city": "Dubai" } }'
DELETE/v1/contacts/:id

Delete a contact and all their data (properties, events, segment memberships). Irreversible. Returns 204.

Contacts API — Deel Flows Docs