---
title: "Выдать проектный ключ mk_pk_ (показывается один раз; push-only, на диске sha256)"
method: POST
path: "/project/key"
tags: ["keys"]
---

# Выдать проектный ключ mk_pk_ (показывается один раз; push-only, на диске sha256)

`POST /project/key`

## Request

- Base URL: `https://maketa.pro/maketa/api`
- URL: `https://maketa.pro/maketa/api/project/key`
- Auth: none declared

Право: сессия владельца доски или edit-токен (поле edit). Ключ даёт headless-доступ (push экранов из кода, MCP) в рамках одной доски и не истекает, пока не отозван.

## Request body

- object
  - `id` string, required
  - `edit` string
  - `label` string

## Response `200`

Ключ выдан

- object
  - `key` string
  - `label` string

## Other responses

- `400`: Некорректный запрос
- `402`: plan_limit — предел тарифа (только при включённых тарифах, MAKETA_PLANS=1). limit: boards | screens | bytes | collaborators | flex | mcpKeys | mcpWrite | seats; used/max — числа; upgrade — какой тариф снимает предел (pro | studio | null); hint — подсказка по-русски. Просмотр по ссылке, экспорт экрана и чтение через API не ограничиваются никогда.
- `403`: Прав нет (forbidden | quota_boards)
- `404`: Не существует (not_found)
- `409`: too_many_keys
- `410`: Удалено навсегда (gone) — с deletedAt и reason
- `429`: Rate limit / квота (too_many | quota_saves); retryAfterMin — минут до сброса окна

---

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