contact.created
Sent for every new contact, however it came in: a message, the app, the API, an import, a broadcast or the WhatsApp Business app. Use it to keep your own contact records in sync. data is the Contact.
Called Contact created in the app. Part of the plan feature webhooks.contacts. To subscribe over the API, the key needs contacts:read.
What’s in data. Every event wraps it in the same envelope.
id string · uuid
phone string · nullable
The number as + and its digits. null for a contact known only by a WhatsApp username.
whatsapp_user_id string · nullable
The ID WhatsApp gives a contact who uses a WhatsApp username. null if WhatsApp hasn’t given Soosh one.
name string · nullable
The name your business gave the contact, in the app or through the
API. null if nobody has. A new WhatsApp profile name never
replaces it.
whatsapp_name string · nullable
The contact’s own WhatsApp profile name.
attributes object
Your own fields on the contact. Names are 1 to 64 letters, digits or underscores.
A map; each value is a string or number or boolean.
tags array of strings
marketing_opt_out boolean
Whether the contact opted out of marketing messages.
number_id string · uuid · nullable
The WhatsApp number the contact is usually messaged from.
chat object
The contact’s chat. last_inbound_at covers any number. The
24-hour window is per number, so don’t work it out from this field.
Show 4 child attributesHide child attributes
chat.status string
One of open closed.
chat.assigned_agent_id string · uuid · nullable
chat.last_message_at string · date-time · nullable
chat.last_inbound_at string · date-time · nullable
created_at string · date-time
updated_at string · date-time
Handling it
Section titled “Handling it”- Answer with any
2xxwithin 10 seconds. Do the work after. - Check the signature first. Verify webhooks has the code.
- Subscribe with
POST /v1/webhooks,events: ["contact.created"].