Overview
Use the Contacts API for CRM records stored in Wazapin.contactsis the canonical customer resource.- Use
POST /v1/contacts/resolveto resolve an existing stored contact by one or more identifiers. - Use
POST /v1/channels/{channelID}/contacts/lookuponly when you need provider-specific profile lookup from a channel.
Common headers
Primary auth header for public API requests.
Use
application/json.Canonical contact endpoints
| Endpoint | Purpose |
|---|---|
POST /v1/contacts | Create or upsert a contact record |
GET /v1/contacts | List stored contacts |
GET /v1/contacts/{contactID} | Get one contact by internal contact ID |
PATCH /v1/contacts/{contactID} | Update a stored contact |
DELETE /v1/contacts/{contactID} | Delete a stored contact |
GET /v1/contacts/phone/{phone} | Get one contact by phone number |
POST /v1/contacts/resolve | Resolve a stored contact by omnichannel identifiers |
POST /v1/contacts/lookup | Compatibility alias for resolve |
GET /v1/contacts/{contactID}/identities | List identities linked to a contact |
GET /v1/contacts/{contactID}/notes | List notes |
POST /v1/contacts/{contactID}/notes | Create note |
GET /v1/contacts/{contactID}/tags | List assigned tags |
POST /v1/contacts/{contactID}/tags | Assign tag |
PUT /v1/contacts/{contactID}/consent/{channel} | Upsert consent state |
GET /v1/contacts/{contactID}/consents | List consent rows |
GET /v1/contacts/{contactID}/suppressions | List suppressions |
POST /v1/contacts/{contactID}/suppressions | Create or update suppression |
Create a contact
POST /v1/contacts
Resolve a contact
POST /v1/contacts/resolve
Use this endpoint when your system knows one or more identifiers, but does not yet know Wazapin’s internal contactID.
Supported identifier types:
contact_idphonewhatsappwa_idemailexternal_id
type is external_id, include source.
Resolve by phone
cURL
Resolve by external identity
cURL
Resolve response
200 OK
404 Not Found
409 Conflict
Update a contact
PATCH /v1/contacts/{contactID}
cURL
Provider lookup versus CRM resolve
Use the correct endpoint for the correct job:POST /v1/contacts/resolve- resolves a stored CRM contact inside Wazapin
POST /v1/channels/{channelID}/contacts/lookup- looks up provider-specific profile data from a connected channel
resolve.