get
https://{defaultHost}/api/v4/campaigns//users
Retrieve the list of users who are assigned to the specified campaign.
The Get users assigned to a campaign endpoint returns a paginated list of users assigned to a specific Dialer campaign.
Requirements: Base URL, Authentication, Error codes
Scope: campaigns.read
What this does
When you send a request with a campaign ID,
Voiso
returns the users assigned to that campaign, plus pagination metadata.
Endpoint
GET /api/v4/campaigns/{campaign_id}/users
Path parameters
- campaign_id
The unique identifier of the campaign.
Query parameters
All query parameters are optional.
- limit
The number of items to return. Default is 100. Maximum is 100. - offset
The number of items to skip before collecting results. Default is 0.
Example request
curl -X GET "https://{cluster_id}.voiso.com/api/v4/campaigns/3/users?limit=20&offset=0" \
-H "Authorization: Bearer <contact_center_api_key>" \
-H "Content-Type: application/json"Response
If successful, the API returns a users array and metadata.
{
"users": [
{
"id": "0b97ce11-b6e0-49b4-8f92-68040aa324bf",
"name": "Jane Doe",
"email": "[email protected]",
"sip_account": "[email protected]",
"extension": "102",
"caller_id": "12025550123",
"employee_id": "E-482",
"timezone": "America/New_York",
"security_access_group": {
"id": 3,
"name": "Boarding"
},
"teams": [
{
"id": 3,
"name": "Multilingual Support"
}
],
"supervised_teams": [
{
"id": 3,
"name": "Multilingual Support"
}
],
"queues": [
{
"id": 1,
"name": "Technical Support"
}
],
"supervised_queues": [
{
"id": 1,
"name": "Technical Support"
}
],
"webrtc_ringtone": {
"type": "ringtone",
"name": "Bells (Default)"
},
"channels": [
"voice",
"chat",
"whatsapp"
],
"channel_group_capacity": {
"chat": 5,
"instant": 3
},
"channel_profiles": [
{
"id": 12,
"channel": "whatsapp",
"identifier": "18885658889",
"name": "WhatsApp Main (18885658889)"
}
],
"speech_language": "en",
"skills": [
{
"skill": {
"id": 1,
"name": "Sales"
},
"value": 5
}
],
"status": "available",
"created_at": "2025-11-11T12:00:00.216Z",
"updated_at": "2025-11-11T12:00:00.216Z",
"deleted_at": "2025-11-11T12:00:00.216Z"
}
],
"metadata": {
"total": 100
}
}Notes
metadata.totalis the total number of users available for this campaign. The number of users returned in the current response isusers.length.
Troubleshooting
400 Bad request
Common causes:
- An invalid value was provided for
limitoroffset.
401 Unauthorized
What to check:
- You are sending
Authorization: Bearer <contact_center_api_key>.
403 Forbidden
What to check:
- The API key is valid, but does not have access to campaign resources.
404 Not found
This usually means the campaign ID does not exist or is not accessible.
429 Too many requests
What to do:
- Reduce request frequency and retry with backoff.