Update queue by ID

put/v1/routing/queues/{id}
Requires any one of these rolesAbout roles
org.permission.routing.updateorg.permission.queue.update
Legacyorg.admin.routing.write

The API key or user must hold at least one of them. Legacy roles still work; prefer the others for new keys.

Updates a queue based on the unique queue ID.

About this resource

Queues

A queue is a named line of waiting work, such as "Billing" or "VIP Support", that routing uses to decide which agents can take a conversation and in what order. Each queue sets the priority and size of the work that enters it.

When a conversation needs an agent, routing places its work item in a queue and then offers it to an available agent on a team that works that queue. Admins manage queues in Kustomer's routing settings, and teams choose the queues they serve in their team routing settings. A conversation gets a queue in one of three ways: a queue rule matches it, something sets the queue directly (a workflow, an agent transfer, or the queue on a work item), or nothing matches and it falls through to the default queue.

Every org has one system queue, returned with system: true and named DEFAULT_QUEUE, that catches conversations no rule matches. Queue rules can't target it, and the only field you can change on it is restrictTransfersByUsers: an update to the default queue must send that field and nothing else.

Priority and item size

These two fields are copied onto each work item every time it enters the queue, and they drive routing:

Field Range Meaning
priority 1–100, default 1 Lower numbers are more urgent. Routing hands out lower-numbered items first, and the oldest item first within the same priority.
itemSize 1–100, default 1 How much of an agent's capacity one item from this queue uses. A queue for complex cases might use 2 so agents hold fewer of them at once.

Team routing settings can also cap how much capacity each priority may use, so an agent's slots aren't all filled by low-priority work.

Other fields

  • name is required; displayName is what agents see, and description is free text.
  • key is an optional stable identifier you choose, unique among the org's active queues. Queue rules can pick a queue by key with queueKey, and GET /v1/routing/queues?key= finds a queue without knowing its ID, which helps when the same setup exists in several orgs.
  • restrictTransfersByUsers, when true, removes the queue from the list agents can transfer a conversation to. Queue rules can still send work there.

Queues deleted in the Kustomer app are kept as deleted records. Lists leave them out unless you pass all=true, which is useful when an older work item points at a queue that no longer appears.

Which endpoint to use

To Call
List queues GET /v1/routing/queues, with system=true for the default queue or key to find one queue
Read one queue GET /v1/routing/queues/{id}
Create or change a queue POST /v1/routing/queues or PUT /v1/routing/queues/{id}
See what's waiting in a queue GET /v1/routing/queues/{id}/work-items or the next item
See who is staffing a queue GET /v1/routing/queues/{id}/work-sessions
Check current wait times GET /v1/chat/queues/metrics/{ids}

PUT requires name and changes only the fields you send. Updating a deleted queue fails with 409 Conflict, and so does creating a queue once the org has reached the number of queues its subscription allows.

Path parameters

idstringrequired
Example "5f184e74c61792001af42e49"

Request body

application/jsonrequired
namestringrequired
min length 1 · max length 256
keystring
min length 1 · max length 256
displayNamestring
max length 256
descriptionstring
max length 1024
itemSizeinteger
≥ 1 · ≤ 100
priorityinteger
≥ 1 · ≤ 100
restrictTransfersByUsersboolean

Responses

OK

objectrequired