databases

POST /v1/databases

Validate a managed database, and say where to buy it.

Все эндпоинты databases

Аутентификация

Передайте API-ключ в качестве маркера носителя (bearer token). Эта конечная точка не указывает конкретное разрешение в спецификации, поэтому предоставьте своему ключу минимум необходимых прав и проверьте ответ, вместо того чтобы делать предположения.

Этот эндпоинт не принимает идентификатор организации. Ваш ключ уже определяет организацию, к которой он принадлежит, и ответ ограничивается ее рамками.

Попробовать

Замените всё в угловых скобках на собственные значения, а плейсхолдер ключа — на ключ из вашей панели управления.

curl -X POST https://api.zinndigital.com/v1/databases \
  -H "Authorization: Bearer zdk_live_…" \
  -H "Content-Type: application/json" \
  -d '{ "label": <string>, "size": <string> }'

Вошли в систему? Консоль API в вашей панели управления автоматически подставляет реальный идентификатор вашей организации и ваш собственный ключ, а также выполняет запрос к работающему API, чтобы вы могли увидеть актуальный ответ. Откройте эту конечную точку в API-консоли

Подробнее

⛔ **This endpoint no longer creates a database — it always answers `422`** (`docs/497` §8). Until 2026-09-05 it created a real cluster for nothing: no order, no invoice, no subscription and no charge, so a customer could run a highly-available database that never appeared on any bill. A managed database is **bought**: `POST /v1/carts/{cartId}/lines` with `kind=managed_database` and a `database` block, then checkout. Fulfilment creates the instance in `provisioning` and starts the Temporal workflow that builds it. The request is still **validated first**, so a caller learns *why* it would be refused before it goes to the basket and pays: the account is not in good standing, the label is blank or already used in this organisation, the size is not on sale, the engine or version is not one we run, the size belongs to a different engine, or the organisation already holds the self-service maximum. Only when all of that passes does it answer with the `PURCHASE_REQUIRED` code that names the basket. Gated on `databases.manage` in addition to `databases.view`.

Тело запроса

ИмяТипОбязательноЧто это
labelstringДа
sizestringДаA size code from `GET /v1/databases/catalogue`.
enginestring<postgres, mysql>НетOptional. Omitted uses PostgreSQL. ⛔ Must match the engine the `size` code belongs to — a MySQL request carrying a `db_pg_*` size is refused, because it would run one engine and…
engine_versionstringНетOptional engine version — `"18"`, `"8.4"`. Omitted uses the newest we offer for the chosen engine. ⛔ A version too close to end of life is refused **by name** rather than silent…

Ошибки, которые может возвращать этот эндпоинт

401 · 403 · 422