Skip to main content
Forwarding slots define how the AI agent routes calls to the right person. Each slot handles specific case types and has up to 3 priority levels for fallback routing.

How routing works

  1. The AI agent identifies the caller’s issue during the conversation
  2. It matches the issue to a slot via the cases field
  3. The agent tries the Priority 1 target first
  4. If unavailable, falls back to Priority 2, then Priority 3
  5. If all targets fail, the agent handles the call based on its configuration
Each priority is one of two things:
  • the name of a transfer tool of the agent, transfer_to_<name> (lowercase, umlauts as ae/oe/ue, everything else as _, e.g. transfer_to_melanie_bender) — the agent transfers the call to that employee if they are available
  • a plain text the agent reads out instead of transferring, e.g. Allgemeines Postfach or Rückruf vereinbaren -> Allgemeines Postfach — the caller is offered a callback
Slots are linked to the agent’s phone number (agent_phone_number) automatically: the API copies it when a slot is written and updates existing slots when a pool number is assigned or released.

Data model

Endpoints

List forwarding slots

Permission: forwarding:read | Pagination: no (returns all, ordered by slot number)

Create forwarding slot

Permission: forwarding:write Required fields: slotnummer, cases

Update forwarding slot

Permission: forwarding:write

Delete forwarding slot

Permission: forwarding:write | Returns 204 No Content

Replace all forwarding slots (bulk)

Permission: forwarding:write Replaces all existing slots with the provided list in a single operation. Existing slots are deleted first. Use this for bulk synchronization from external systems. Every slot is validated first (slotnummer and cases are required, other fields must be strings or null); invalid rows are rejected with 400 VALIDATION_ERROR (details[].field = slots[i].<field>) and nothing is written. The replacement itself runs in a single database transaction.
Response includes replaced_count — the number of previous slots that were removed:

Best practices

  • Use PUT for full sync from external systems, POST/PATCH/DELETE for individual changes
  • Slot numbers should be sequential two-digit strings: "01", "02", "03"
  • Keep cases descriptive — the AI uses this text to match caller issues
  • Use transfer_to_<name> only for employees that exist on the agent with a matching name (see Tools for transfer tools); anything else is read out as text