---
title: "Create a dialect"
method: POST
path: "/v1/dialects"
tags: ["Schemas"]
---

# Create a dialect

`POST /v1/dialects`

## Request

- Base URL: `https://api.talonic.com`
- URL: `https://api.talonic.com/v1/dialects`
- Auth: HTTP bearer

Create a new shared dialect.

## Request body

- DialectCreateRequest
  - `name` string, required: Dialect name. Required, non-empty.
  - `date_format` string: Date format string (e.g. `YYYY-MM-DD`, `DD/MM/YYYY`).
  - `number_locale` string: BCP-47 locale for number formatting.
  - `delimiter` string: CSV delimiter character.
  - `null_representation` string: Representation of null values.
  - `encoding` string: Character encoding.
  - `boolean_format` string[]: Exactly 2 strings — `[true_value, false_value]`.

## Response `200`

Dialect created (alias of 201).

- DialectResponse
  - `id` string, uuid, required
  - `name` string, required
  - `version` integer: Monotonically increasing version counter. Bumped on every update.
  - `config` DialectConfig: Dialect configuration payload; all keys optional.
    - `date_format` string: Date format pattern (e.g. `YYYY-MM-DD`, `DD/MM/YYYY`).
    - `number_locale` string: BCP-47 locale tag used for number formatting.
    - `delimiter` string: CSV column delimiter character.
    - `null_representation` string: How null values are rendered in serialised output.
    - `encoding` string: Character encoding label (e.g. `UTF-8`, `ISO-8859-1`).
    - `boolean_format` string[]: Exactly 2 strings — `[true_value, false_value]`.
  - `created_at` string, date-time
  - `updated_at` string, date-time, nullable
  - `links` object
    - `self` string

## Other responses

- `201`: Dialect created.
- `400`: The request is invalid.
- `401`: Missing or invalid API key.
- `429`: Daily rate limit exceeded.

---

[API](https://skmtc.dev/talonic/apis/talonic-api.md) · [All operations](https://skmtc.dev/talonic/apis/talonic-api/llms.txt) · [OpenAPI document](https://skmtc.dev/talonic/apis/talonic-api/revisions/678fe5f8c9c3?raw)
