Notion Status — управляющий слой пайплайна через API и MCP
Обновлено
Не удалось запустить аудио. Нажмите кнопку воспроизведения в плеере.
Status в Notion хранит одно значение для страницы и объединяет доступные значения в три системные группы: To-do, In progress и Complete. Свойство удобно использовать как общий контракт контент-пайплайна: idea → draft → review → publish.
Материал описывает REST API версии 2026-03-11, интерфейс Notion и границы протокола Model Context Protocol (MCP). Примеры основаны на официальной документации и не подтверждены запуском в конкретном рабочем пространстве.
- Как устроен Status — свойства, опции и группы.
- Status как управляющий слой процесса — этапы и правила переходов.
- Подключение к REST API — авторизация, права и версия API.
- Создание Status через API — стандартные, собственные и типизированные базы.
- Обновление существующего Status — полный массив опций и ограничения.
- Обновление Status отдельной страницы — запись значения по имени или ID.
- API, MCP и интерфейс — возможности каждого канала.
- Полезные сценарии — контент-пайплайн и внешняя автоматизация.
- Представления и фильтры — рабочие списки и доски.
- Проверка результата — контрольное чтение и частые ошибки.
- Чеклист — быстрая проверка схемы и интеграции.
- Официальные ссылки — документация и журнал изменений.
Как устроен Status
Status — тип свойства источника данных (data source). Строка источника данных представлена в API как страница.
Схема свойства содержит:
- Property — колонку с типом
status. - Options — конкретные значения, например Idea, Draft и Published.
- Groups — категории To-do, In progress и Complete. Каждая опция входит в одну группу.
{
"Status": {
"id": "...",
"name": "Status",
"type": "status",
"status": {
"options": [
{ "id": "...", "name": "Idea", "color": "gray" },
{ "id": "...", "name": "Draft", "color": "yellow" },
{ "id": "...", "name": "Published", "color": "green" }
],
"groups": [
{ "id": "...", "name": "To-do", "color": "gray", "option_ids": ["..."] },
{ "id": "...", "name": "In progress", "color": "blue", "option_ids": ["..."] },
{ "id": "...", "name": "Complete", "color": "green", "option_ids": ["..."] }
]
}
}
}Имена опций должны быть уникальны без учёта регистра; запятые в них недопустимы. Через API можно назначать опции существующим группам, но нельзя перенастраивать сами группы. Для переименования, изменения порядка и другой конфигурации групп используйте интерфейс Notion.
Status как управляющий слой процесса
Один столбец Status может быть:
- индикатором текущего этапа в таблице или на доске;
- основой фильтров и представлений;
- условием, которое внешний оркестратор использует для запуска автоматизации;
- значением, которое читают и изменяют API или подходящий MCP-инструмент.
Для контент-пайплайна можно использовать такую схему:
- To-do: Idea, Backlog;
- In progress: Draft, Review, Cover;
- Complete: Scheduled, Published, Archived.
Группы показывают общий уровень прогресса, а опции описывают конкретный этап. Само свойство Status не задаёт права доступа и не проверяет допустимость переходов: эти правила реализуются в агенте, интеграции или другом компоненте оркестрации.
Подключение к REST API
Для запросов нужны Bearer-токен, подходящие права подключения и заголовок версии:
Authorization: Bearer $NOTION_API_KEY
Notion-Version: 2026-03-11
Content-Type: application/jsonРеальный токен храните в переменной окружения или секрет-хранилище. Официальный JavaScript/TypeScript SDK (программная библиотека) @notionhq/client использует те же требования к авторизации и доступу.
Создание базы требует capability insert content. Если её нет, endpoint возвращает HTTP 403. Родительская страница также должна существовать и быть доступна подключению.
Создание Status через API
Endpoint POST /v1/databases создаёт базу, её первый источник данных и первое табличное представление.
Стандартные опции
POST /v1/databases
Notion-Version: 2026-03-11
Authorization: Bearer $NOTION_API_KEY
Content-Type: application/json
{
"parent": {
"type": "page_id",
"page_id": "..."
},
"title": [{ "text": { "content": "Контент-пайплайн" } }],
"initial_data_source": {
"properties": {
"Name": { "title": {} },
"Status": { "status": {} }
}
}
}Пустая конфигурация {"status": {}} создаёт опции Not started, In progress и Done в группах To-do, In progress и Complete.
Собственные опции
{
"Status": {
"status": {
"options": [
{ "name": "Idea", "color": "gray", "group": "To-do" },
{ "name": "Draft", "color": "yellow", "group": "In progress" },
{ "name": "Review", "color": "orange", "group": "In progress" },
{ "name": "Published", "color": "green", "group": "Complete" }
]
}
}
}Поле group поддерживается при создании и обновлении status-опций с 22 июня 2026 года. Если не указать его для новой опции, API выберет To-do при наличии этой группы либо первую существующую группу.
Типизированные базы
С 2 сентября 2026 года POST /v1/databases также принимает database_type со значением tasks, projects или skills. Типы tasks и projects создают каноническую схему со Status; в канонической схеме skills это свойство не перечислено. database_type нельзя передавать вместе с initial_data_source: такое сочетание возвращает HTTP 400.
Имена свойств в типизированной базе зависят от языковых настроек пользователя, которому принадлежит токен интеграции. Для внутренних интеграций без владельца используются английские имена. Перед записью страниц прочитайте созданный источник данных и получите фактические имена и ID status-опций.
Обновление существующего Status
Схема меняется через PATCH /v1/data_sources/{data_source_id}:
PATCH /v1/data_sources/{data_source_id}
Notion-Version: 2026-03-11
Authorization: Bearer $NOTION_API_KEY
Content-Type: application/json
{
"properties": {
"Status": {
"status": {
"options": [
{ "id": "...", "name": "Idea" },
{ "id": "...", "name": "Draft" },
{ "name": "Backlog", "color": "gray", "group": "To-do" },
{ "name": "Scheduled", "color": "blue", "group": "Complete" }
]
}
}
}
}options описывает полный желаемый набор. Существующая опция, пропущенная в PATCH, удаляется из свойства. Сначала прочитайте текущую схему, объедините сохранённые и новые элементы, затем отправьте весь массив.Для существующей опции поле group можно опустить: принадлежность сохранится. Чтобы перенести опцию, передайте её существующий id или name и новую группу.
Через API нельзя:
- менять имя или цвет существующей status-опции;
- создавать и перенастраивать группы;
- превращать title-свойство в Status или другое свойство в title.
Если опцию требуется переименовать, создайте новую, перенесите на неё страницы и только затем исключите старую из полного массива.
Обновление Status отдельной страницы
Значение страницы меняется через Update page. Опцию можно указать по имени:
{
"properties": {
"Status": {
"status": { "name": "Review" }
}
}
}Или по ID:
{
"properties": {
"Status": {
"status": {
"id": "ff8e9269-9579-47f7-8f6e-83a84716863c"
}
}
}
}Для очистки значения передайте null:
{
"properties": {
"Status": { "status": null }
}
}Что доступно через API, MCP и интерфейс
| Операция | REST API | MCP | Интерфейс |
| Создать Status и опции | ✅ | Зависит от доступного инструмента | ✅ |
| Добавить, удалить или переместить опцию | ✅ через полный массив и group | Зависит от схемы инструмента | ✅ |
| Изменить имя или цвет существующей опции | ❌ | Не следует считать доступным без проверки | ✅ |
| Перенастроить группы | ❌ | ❌ через описанный API-контур | В пределах возможностей интерфейса |
| Обновить Status страницы | ✅ | Зависит от инструмента и прав | ✅ |
| Фильтровать и группировать представления | Фильтры запросов поддерживаются; возможности группировки зависят от API представлений | Зависит от доступного view-инструмента | ✅ |
Notion MCP использует Streamable HTTP endpoint https://mcp.notion.com/mcp. С 3 августа 2026 года он поддерживает MCP protocol version 2026-07-28; клиенты, согласующие более ранний протокол 2025 года, продолжают работать.
Фактические возможности MCP определяются текущим списком инструментов, тарифом рабочего пространства и правами подключения. Проверяйте описание конкретного инструмента и доступ, который возвращает подключение. Общая доступность MCP не гарантирует запись схемы Status или свойства страницы.
Полезные сценарии
Контент-пайплайн
Задача: отделить идеи и черновики от материалов, готовых к публикации.
Исходные данные: опции Idea, Backlog, Draft, Review, Cover, Scheduled, Published и Archived.
Действия:
- Поместите Idea и Backlog в To-do.
- Назначьте Draft, Review и Cover группе In progress.
- Поместите Scheduled, Published и Archived в Complete.
- Создайте доску с группировкой по Status.
- Скройте Archived из представлений текущей работы.
Результат: доска показывает этап каждой карточки, а фильтр по Draft, Review и Cover выделяет активную работу.
Ограничение: в API-фильтрах используйте конкретные значения Status. Поле group относится к схеме опции, а не к значению страницы.
Разделение действий агента и человека
Задача: запретить автоматизации самостоятельно публиковать материал.
Правило переходов: агент выполняет Idea → Draft и Draft → Review; человек подтверждает Review → Scheduled → Published.
Результат: разрешённые переходы выполняются автоматически, остальные передаются на ручную проверку или отклоняются оркестратором.
Ограничение: проверку полномочий нужно реализовать вне Status.
Запуск внешних действий
Задача: связать переход карточки с внешней системой.
Внешний оркестратор может трактовать переходы так:
- Idea → Draft — подготовить outline и записать его на страницу;
- Draft → Review — уведомить редактора;
- Review → Published — передать материал в CMS и сохранить результат в журнале.
Проверяйте итог во внешней системе: наличие записи в CMS, доставку уведомления или событие в журнале. Успешное изменение Status подтверждает только состояние страницы в Notion.
Представления и фильтры
Практичный набор представлений:
- Доска: группировка по Status;
- Активная работа: Draft, Review и Cover;
- Готово к публикации:
Status = Scheduled; - Архив:
Status = Archived.
Интерфейс Notion поддерживает фильтрацию по Status и группировку доски по этому свойству. Избегайте пересекающихся названий опций: единые определения упрощают фильтры и правила автоматизации.
Проверка результата
После создания или обновления выполните контрольное чтение:
- свойство имеет тип
status; status.optionsсодержит полный ожидаемый набор;status.groups[].option_idsотражает нужное распределение;- после обновления страницы чтение свойства показывает ожидаемую status-опцию; её точное имя соответствует запросу.
Если данные расходятся с ожидаемыми:
- Снова прочитайте схему источника данных.
- Сравните фактический
optionsс отправленным массивом. - Проверьте имя свойства и ID опций.
- Исправьте запрос.
- Повторно прочитайте схему и страницу.
Частые ошибки
- Использовать Select там, где нужны три общие категории Status.
- Отправлять в PATCH только новые опции и удалять пропущенные.
- Обновлять страницу по имени опции с опечаткой.
- Пытаться изменить имя или цвет существующей опции через API.
- Считать Status механизмом авторизации или готовым оркестратором.
- Предполагать наличие MCP-операции без проверки инструментов и прав.
- Принимать успешную запись Status за подтверждение внешней публикации.
Чеклист быстрой проверки
Официальные ссылки
Проверено 9 сентября 2026 года. В примерах используется Notion-Version: 2026-03-11.
- Data source properties — Status, options и groups
- Create a database
- Update data source properties
- Update page
- Page property values
- Notion API changelog
- Notion MCP overview
- Notion MCP supported tools
- Notion Help — Status property
Следующий шаг
После проектирования этапов зафиксируйте границы ответственности: Notion + ИИ: что можно доверить агенту, а что должен решать человек.
Связанные материалы
- Статья: Как я собрал команду из трёх ИИ-агентов и автоматизировал разработку через Notion
- Блог: Notion Meeting Notes теперь понимают, чего вы от них хотите
- База знаний: Notion Dashboards — комбинированные представления баз данных
Status даёт команде единое описание этапов, а интеграциям — проверяемое текущее состояние. Если вы проектируете такой процесс для контента, CRM или внутренней работы, полезно заранее согласовать переходы и способы проверки внешних действий.
Если захотите обсудить, как это применить у себя или в команде — пишите в Telegram @pimenov