---
title: "Create Routing Destination"
method: POST
path: "/api/v1/routing-destinations"
tags: ["Routing Destinations"]
---

# Create Routing Destination

`POST /api/v1/routing-destinations`

## Request body

- RoutingDestinationWrite — Create/update payload for one transfer destination.
  - `key` string, required
  - `label` string, required
  - `description` string, nullable
  - `numbers` string[], required
  - `mode` 'cold' | 'warm'
  - `business_hours_only` boolean
  - `business_hours_schedule` BusinessHoursScheduleOverride — Per-destination schedule override. Same day-buckets as the tenant default; ``None`` for a day-group means closed all day. Consumed by the shared ``business_hours`` normalizer after ``.model_dump()``.
    - `weekdays` BusinessHoursWindow — One open window for a day-group, minutes since midnight (end exclusive).
      - `start_minute` integer, required
      - `end_minute` integer, required
    - `saturday` BusinessHoursWindow — One open window for a day-group, minutes since midnight (end exclusive).
      - `start_minute` integer, required
      - `end_minute` integer, required
    - `sunday` BusinessHoursWindow — One open window for a day-group, minutes since midnight (end exclusive).
      - `start_minute` integer, required
      - `end_minute` integer, required
  - `after_hours_action` AfterHoursAction — What the agent does when a gated destination is closed and no eligible transfer remains. Validation guarantees the type-specific field is present so the worker never hits an undefined terminal state.
    - `type` 'voicemail' | 'transfer' | 'end_call' | 'callback_request' | 'agent_message', required
    - `transfer_to` string, nullable
    - `fallback_numbers` string[]
    - `message` string, nullable
  - `languages` string[]
  - `randomize_hunt_order` boolean
  - `ring_timeout_seconds` integer, nullable
  - `enabled` boolean

## Response `201`

Successful Response

- RoutingDestinationRead
  - `id` string, uuid, required
  - `key` string, required
  - `label` string, required
  - `description` string, nullable, required
  - `numbers` string[], required
  - `mode` 'cold' | 'warm', required
  - `business_hours_only` boolean, required
  - `business_hours_schedule` BusinessHoursScheduleOverride, required — Per-destination schedule override. Same day-buckets as the tenant default; ``None`` for a day-group means closed all day. Consumed by the shared ``business_hours`` normalizer after ``.model_dump()``.
    - `weekdays` BusinessHoursWindow — One open window for a day-group, minutes since midnight (end exclusive).
      - `start_minute` integer, required
      - `end_minute` integer, required
    - `saturday` BusinessHoursWindow — One open window for a day-group, minutes since midnight (end exclusive).
      - `start_minute` integer, required
      - `end_minute` integer, required
    - `sunday` BusinessHoursWindow — One open window for a day-group, minutes since midnight (end exclusive).
      - `start_minute` integer, required
      - `end_minute` integer, required
  - `after_hours_action` AfterHoursAction, required — What the agent does when a gated destination is closed and no eligible transfer remains. Validation guarantees the type-specific field is present so the worker never hits an undefined terminal state.
    - `type` 'voicemail' | 'transfer' | 'end_call' | 'callback_request' | 'agent_message', required
    - `transfer_to` string, nullable
    - `fallback_numbers` string[]
    - `message` string, nullable
  - `languages` string[], required
  - `randomize_hunt_order` boolean, required
  - `ring_timeout_seconds` integer, nullable, required
  - `enabled` boolean, required
  - `tenant_id` string, uuid, required
  - `created_at` string, date-time, required
  - `updated_at` string, date-time, required

## Other responses

- `409` — A destination with this key already exists.
- `422` — Validation Error

---

[API](https://skmtc.dev/getanana/apis/cleon-api.md) · [All operations](https://skmtc.dev/getanana/apis/cleon-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/getanana/cleon-api/revisions/c0f54348e251/schema)
