---
title: "Create a routing group"
method: POST
path: "/api/routing-groups/create"
tags: ["RoutingGroups"]
---

# Create a routing group

`POST /api/routing-groups/create`

## Request

- Base URL: `https://core-api.getaptly.com`
- URL: `https://core-api.getaptly.com/api/routing-groups/create`
- Auth: one of:
  - API key in header `x-token`
  - API key in header `Authorization`
- TypeScript: <https://skmtc.dev/getaptly/apis/aptly-api/docs/api/routing-groups/create/post.ts> (a function with typed inputs; its response is checked against the schema)

Creates a new routing group for the authenticated company. Returns the new group's ID.

## Request body

- object
  - `name` string, required: Display name for the routing group.
  - `type` 'simultaneous' | 'sequential', required: Ring mode. `simultaneous` rings all members at once; `sequential` tries each in order.
  - `destination` object: Ring target configuration. Supports `ringType` of `user`, `phone`, `browser`, `agent`, or `multi`.
  - `ringDurationSeconds` number: How long (in seconds) to ring each target before moving on. Defaults to 20.
  - `callerExperience` object: Caller-side experience config. Set `mode` to `ring` (default) or `hold-music`.
  - `maxWaitSeconds` number: Maximum time (in seconds) a caller will wait before overflow handling triggers.
  - `overflow` object: Overflow/voicemail config. Supports `greetingText` and `voicemailNotification` (array of emails).

## Response `200`

Routing group created.

- object
  - `_id` string: ID of the created routing group.

## Other responses

- `400`: Missing or invalid field (`name` required; `type` must be simultaneous or sequential).
- `401`: Invalid or missing credential.

---

[API](https://skmtc.dev/getaptly/apis/aptly-api.md) - [All operations](https://skmtc.dev/getaptly/apis/aptly-api/llms.txt) - [OpenAPI document](https://skmtc.dev/getaptly/apis/aptly-api/revisions/75c367e0b8e5?raw)
