Users are your customer's employees registered in your service — such as sales managers or support agents who handle deals and customer inquiries in the CRM.
The methods below help you synchronize your service's users with Wazzup and configure their access permissions to chats.
When using the methods listed below, include the end‑customer's client_access_token (obtained via simplified authorization or OAuth) in the request header: Authorization: Bearer client_access_token
GET /v2/users — retrieve a list of users.GET /v2/users/{user_id} — retrieve a user by ID.POST /v2/users — adding users.PATCH /v2/users — updating users.DELETE /v2/users — deleting users.PATCH /v2/settings — configure user roles per channel and control number visibility in the iframe.GET /v2/settings — retrieve role settings.The request body should contain an array of user objects (max 100 users per request). Users are matched by their id: if a user does not yet exist in Wazzup, they will be added; if they already exist, their information will be updated.
Users must have unique phone numbers. You cannot add multiple users with the same phone number.
POST /v2/users| Body parameter | Parameter type | Parameter description |
users* |
object |
Contains user data |
users.id* |
string |
User identifier. Up to 64 characters |
users.name* |
string |
User name. Up to 150 characters |
users.phone* |
string |
Phone number in international format, e.g., 37192612345. Required to allow the user to be added to the mobile app. If the format is invalid, this field will be removed |
Request Example:
curl -L 'https://tech.wazzup24.com/v2/users' -H 'Authorization: Bearer <client_access_token>' -H 'Content-Type: application/json' -d '{
"users": [
{
"id": "1",
"name": "Test",
"phone": "37199999999"
}
]
}'
Response example:
{
"data": {
"processed": 1
},
"meta": {
"timestamp": 1759495852
}
}
Result: The user (or list of users) has been added.
| Error | Description |
INVALID_USER_DATA |
The request body is empty, or one or more of the provided fields are invalid |
USER_ALREADY_EXISTS |
A user with this phone number has already been added. (Error message: "User with phone number .... already exists in the CRM.") |
USER_LIMIT_EXCEEDED |
The 1,000-user limit has been reached. No additional employees can be added to the account |
GET /v2/usersRequest Example:
curl -L 'https://tech.wazzup24.com/v2/users?offset=0&limit=50' -H 'Authorization: Bearer <client_access_token>'
Response example:
{
"data": [
{
"id": "1",
"name": "Test",
"phone": "37199999999"
}
],
"meta": {
"timestamp": 1759496425
}
}
Result: Returns a list of all previously created users.
GET /v2/users/{user_id}Path Parametersuser_id — CRM user ID
Request Example:
curl -L 'https://tech.wazzup24.com/v2/users/1' -H 'Authorization: Bearer <client_access_token>'
Response example:
{
"data": [
{
"id": "1",
"name": "Test",
"phone": "37199999999"
}
],
"meta": {
"timestamp": 1759496425
}
}
Result: Returns the user with id: 1, if they exist.
PATCH /v2/usersExample:
curl -L -X PATCH 'https://tech.wazzup24.com/v2/users' -H 'Authorization: Bearer <client_access_token>' -H 'Content-Type: application/json' -d '{
"users": [
{
"id": "1",
"name": "Tester",
"phone": "37199999999"
}
]
}'
Response example:
{
"data": {
"processed": 1
},
"meta": {
"timestamp": 1759495852
}
}
Result: If the user exists, their information has been updated.
DELETE /v2/usersRequest Example:
curl -L -X DELETE 'https://tech.wazzup24.com/v2/users'
-H 'Authorization: Bearer <client_access_token>'
-H 'Content-Type: application/json'
-d '{
"user_ids": [
"1"
]
}'
Response example:
{
"data": null,
"meta": {
"timestamp": 1759393502
}
}
Result: User id: 1 has been deleted.
PATCH /v2/settingsUse this method to configure user access to chats and optionally hide contact phone numbers within their chat interfaces.
Configuring Roles
A role defines user permissions: which chats they can view and whether they can send messages.
Assign one of the following roles to each user:
seller — can only message contacts they are assigned to in the CRM. Does not see other users' conversations.manager — can see all conversations and message any contact.auditor — can view all conversations but cannot send messages.Enable the "Receives new clients" setting (allow_get_new_clients) for users who should receive messages from new contacts — those not yet assigned to anyone in the CRM.
Enable the push_input_output_message_events_for_managers setting if users with the Supervisor role should receive notifications from all chats. This is commonly used in online stores and support departments where customers reach out with simple questions and it doesn't matter who replies — the first available agent responds.
When this setting is disabled, users with the Supervisor role receive notifications only for chats they are personally responsible for. In the Wazzup iframe:
Hiding Phone Numbers
This setting helps protect your customer base.
When enabled, phone numbers are hidden in the Wazzup iframe and mobile apps. Authorized employees will only see the first and last digits — for example: +371 55 *** *34.
PATCH /v2/settings
├── user_roles[] *
│ ├── channel_id *
│ ├── user_id *
│ ├── role *
│ └── allow_get_new_clients *
├── hide_phone_numbers_for_user_ids[]
└── push_input_output_message_events_for_managers *
| Body parameter. Required marked with * | Type | Description |
user_roles* |
array(object) user_roles |
Array of user role assignments |
hide_phone_numbers_ |
array of strings |
IDs of users whose iframe should hide contact phone numbers |
push_input_output_message_* |
boolean |
Whether users with the Supervisor role should receive notifications for chats managed by other users |
| Body parameter. Required marked with * | Type | Description |
channel_id* |
string |
Channel ID. Example: 5d1c7dd8-bbfd-42d8-830d-3163b57e60 |
user_id* |
string |
CRM user ID. Example: user_1 |
role* |
string |
User role. Allowed values: auditor, manager, seller |
allow_get_new_clients* |
boolean |
Whether the user should receive new clients |
Request Example:
{
"user_roles": [
{
"channel_id": "5d1c7dd8-bbfd-42d8-830d-3163b57e760",
"user_id": "user_1",
"role": "manager",
"allow_get_new_clients": true
}
],
"hide_phone_numbers_for_user_ids": [
"user_1"
],
"push_input_output_message_events_for_managers": true
}
Successful Response Example:
{
"user_roles": [
{
"channel_id": "5d1c7dd8-bbfd-42d8-830d-3163b57e760",
"user_id": "user_1",
"role": "manager",
"allow_get_new_clients": true
}
],
"hide_phone_numbers_for_user_ids": [
"user_1"
],
"push_input_output_message_events_for_managers": true
}
GET /v2/settingsResponse Example
{
"user_roles": [
{
"channel_id": "5d1c7dd8-bbfd-42d8-830d-3163b57e760",
"user_id": "user_1",
"role": "manager",
"allow_get_new_clients": true
}
],
"hide_phone_numbers_for_user_ids": [
"user_1"
],
"push_input_output_message_events_for_managers": true
}