Docs Call Manager Call Groups

Call Groups

Call groups define pools of sales contacts for inbound lead distribution. Requires call2lead permission on your partner account.

Endpoints

GET /v2/group/ List call groups — ?q= searches group reference; ?reference= filters by company reference
POST /v2/group/ Create a call group
GET /v2/group/{{reference}}/ Retrieve one call group by group reference
PUT /v2/group/{{reference}}/ Full update — reference, company, contact_list required

DELETE is not supported on v2. alternate_callgroup is read-only in responses.

PUT replaces the entire contact_list. If contact_list is omitted or [], all group members are removed. Always send the complete member list when updating other fields.

Request examples

GET — retrieve call group

curl -s "https://next.logimeter.com/v2/group/sales-team/" -H "Authorization: Token xxxxxxx_your_token_xxxxx"
await fetch('https://next.logimeter.com/v2/group/sales-team/', { headers: { Authorization: 'Token xxxxxxx_your_token_xxxxx' } });
requests.get('https://next.logimeter.com/v2/group/sales-team/', headers={'Authorization': 'Token xxxxxxx_your_token_xxxxx'})

POST — create call group

curl -sX POST "https://next.logimeter.com/v2/group/" \
  -H "Authorization: Token xxxxxxx_your_token_xxxxx" \
  -H "Content-Type: application/json" \
  -d '{
  "reference": "sales-team",
  "name": "Sales Team",
  "company": {"reference": "6e7d1f48-2ca1-4ef4-a433-a3fa765ff190"},
  "contact_list": [
    {"reference": "agent123"},
    {"reference": "agent456"}
  ],
  "alternate_number": "27821112222",
  "whisper_message": "A prospect is on the line, press 1 to connect.",
  "timeout": 30,
  "integration_active": true
}'
await fetch('https://next.logimeter.com/v2/group/', {
  method: 'POST',
  headers: { Authorization: 'Token xxxxxxx_your_token_xxxxx', 'Content-Type': 'application/json' },
  body: JSON.stringify({
    reference: 'sales-team',
    name: 'Sales Team',
    company: { reference: '6e7d1f48-2ca1-4ef4-a433-a3fa765ff190' },
    contact_list: [{ reference: 'agent123' }, { reference: 'agent456' }],
    timeout: 30,
    integration_active: true,
  }),
});
requests.post(
    'https://next.logimeter.com/v2/group/',
    headers={'Authorization': 'Token xxxxxxx_your_token_xxxxx', 'Content-Type': 'application/json'},
    json={
        'reference': 'sales-team',
        'name': 'Sales Team',
        'company': {'reference': '6e7d1f48-2ca1-4ef4-a433-a3fa765ff190'},
        'contact_list': [{'reference': 'agent123'}, {'reference': 'agent456'}],
        'timeout': 30,
        'integration_active': True,
    },
)

PUT — full update

curl -sX PUT "https://next.logimeter.com/v2/group/sales-team/" \
  -H "Authorization: Token xxxxxxx_your_token_xxxxx" \
  -H "Content-Type: application/json" \
  -d '{
  "reference": "sales-team",
  "name": "Sales Team",
  "company": {"reference": "6e7d1f48-2ca1-4ef4-a433-a3fa765ff190"},
  "contact_list": [
    {"reference": "agent123"},
    {"reference": "agent456"}
  ],
  "timeout": 45,
  "integration_active": true
}'
await fetch('https://next.logimeter.com/v2/group/sales-team/', {
  method: 'PUT',
  headers: { Authorization: 'Token xxxxxxx_your_token_xxxxx', 'Content-Type': 'application/json' },
  body: JSON.stringify({
    reference: 'sales-team',
    name: 'Sales Team',
    company: { reference: '6e7d1f48-2ca1-4ef4-a433-a3fa765ff190' },
    contact_list: [{ reference: 'agent123' }, { reference: 'agent456' }],
    timeout: 45,
    integration_active: true,
  }),
});
requests.put(
    'https://next.logimeter.com/v2/group/sales-team/',
    headers={'Authorization': 'Token xxxxxxx_your_token_xxxxx', 'Content-Type': 'application/json'},
    json={
        'reference': 'sales-team',
        'name': 'Sales Team',
        'company': {'reference': '6e7d1f48-2ca1-4ef4-a433-a3fa765ff190'},
        'contact_list': [{'reference': 'agent123'}, {'reference': 'agent456'}],
        'timeout': 45,
        'integration_active': True,
    },
)

Responses

200 OK / 201 Created
{
  "id": 7,
  "name": "Sales Team",
  "reference": "sales-team",
  "is_live": true,
  "integration_active": true,
  "company": {"name": "Trask Industries", "reference": "6e7d1f48-2ca1-4ef4-a433-a3fa765ff190"},
  "contact_list": [
    {"name": "Jane Smith", "reference": "agent123"}
  ],
  "alternate_contact": null,
  "alternate_callgroup": null,
  "alternate_number": "27821112222",
  "whisper_message": "A prospect is on the line, press 1 to connect.",
  "timeout": 30
}

Validation errors (400)

ScenarioError
No call2lead permissionYou do not have permission to use Call2Lead.
Missing referenceYou need to specify a reference.
Invalid companyYou need to specify a valid Company.
Too many contactsCall group contacts may not exceed 50 members.
Unknown contact referenceSilently skipped (not added to group)

Fields

FieldTypeRequiredDescription
referencestringyesYour unique call group ID (URL lookup key).
namestringyesDisplay name for the group.
companyobjectyes{reference} required on write; name read-only in responses.
contact_list[]arrayrequired on PUTUp to 50 contacts as {reference}. PUT replaces the full list — see warning above.
alternate_contactobjectoptionalFallback contact {reference}.
alternate_numberstringoptionalE.164 fallback if no contact answers.
whisper_messagestringoptionalTTS played to agent before connect (model default if omitted).
timeoutintegeroptionalRing timeout in seconds (default 30).
integration_activebooleanoptionalDefaults to false on create. Deactivation may trigger emails and webhooks.
is_livebooleanread-onlyGroup is in use.
alternate_callgroupobjectread-onlyLinked alternate group, if configured internally.