Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 13 additions & 0 deletions apps/docs/content/guides/updates.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,19 @@ useUpdatesComponent: true

<Info>Автоматически отслеживайте обновления: подпишитесь на [RSS-ленту](/feed.xml) или используйте [markdown-версию этой страницы](/guides/updates.md) для интеграции с инструментами и AI-агентами.</Info>

<!-- update:2026-02-25 -->

## Привязка напоминаний к чатам

Напоминания теперь можно привязывать к чатам, в которых вы состоите — при создании напоминания укажите `chat_id`. В ответе всех методов напоминаний добавлено новое поле `chat_id`.

Были обновлены следующие методы:

- [Новое напоминание](POST /tasks)
- [Список напоминаний](GET /tasks)
- [Информация о напоминании](GET /tasks/{id})
- [Редактирование напоминания](PUT /tasks/{id})

<!-- update:2026-02-24 -->

## Авторизация и скоупы
Expand Down
1 change: 1 addition & 0 deletions apps/docs/public/.well-known/skills/default/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ description: >
Base URL: `https://api.pachca.com/api/shared/v1`
Авторизация: `Authorization: Bearer <ACCESS_TOKEN>`
Токен: бот (Автоматизации → Интеграции → API) или пользователь (Автоматизации → API).
Если токен неизвестен — спроси у пользователя перед выполнением запросов.

## Доступные скиллы

Expand Down
1 change: 1 addition & 0 deletions apps/docs/public/.well-known/skills/pachca-bots/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ description: >
Base URL: `https://api.pachca.com/api/shared/v1`
Авторизация: `Authorization: Bearer <ACCESS_TOKEN>`
Токен: бот (Автоматизации → Интеграции → API) или пользователь (Автоматизации → API).
Если токен неизвестен — спроси у пользователя перед выполнением запросов.

## Когда использовать

Expand Down
1 change: 1 addition & 0 deletions apps/docs/public/.well-known/skills/pachca-chats/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ description: >
Base URL: `https://api.pachca.com/api/shared/v1`
Авторизация: `Authorization: Bearer <ACCESS_TOKEN>`
Токен: бот (Автоматизации → Интеграции → API) или пользователь (Автоматизации → API).
Если токен неизвестен — спроси у пользователя перед выполнением запросов.

## Когда использовать

Expand Down
1 change: 1 addition & 0 deletions apps/docs/public/.well-known/skills/pachca-forms/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ description: >
Base URL: `https://api.pachca.com/api/shared/v1`
Авторизация: `Authorization: Bearer <ACCESS_TOKEN>`
Токен: **только бот** (Автоматизации → Интеграции → API). Пользовательский токен не подойдёт — формы требуют исходящий вебхук.
Если токен неизвестен — спроси у пользователя перед выполнением запросов.

## Когда использовать

Expand Down
3 changes: 2 additions & 1 deletion apps/docs/public/.well-known/skills/pachca-messages/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ description: >
Base URL: `https://api.pachca.com/api/shared/v1`
Авторизация: `Authorization: Bearer <ACCESS_TOKEN>`
Токен: бот (Автоматизации → Интеграции → API) или пользователь (Автоматизации → API).
Если токен неизвестен — спроси у пользователя перед выполнением запросов.

## Когда использовать

Expand Down Expand Up @@ -105,7 +106,7 @@ curl "https://api.pachca.com/api/shared/v1/messages" \
3. Тред (`entity_type: "thread"`): вложенных тредов нет — ответь в тот же тред: POST /messages с `"entity_type": "thread"`, `"entity_id"`: `entity_id` из вебхука, `"parent_message_id"`: `id` сообщения пользователя из вебхука
4. Беседа/канал (`entity_type: "discussion"`): выбери стратегию — inline-ответ (POST /messages c `"parent_message_id"`: `id` сообщения) или тред (POST /messages/{id}/thread → ответ в тред)

> `parent_message_id` визуально привязывает ответ к конкретному сообщению (показывается как «в ответ на…»). В треде обязателен для цепочки диалога. В обычном чате — альтернатива треду.
> `parent_message_id` визуально привязывает ответ к конкретному сообщению (показывается как «в ответ на…»). В треде обязателен для цепочки диалога. В обычном чате — альтернатива треду. Если бота вызвали в треде и других сообщений в треде нет — основной контекст в родительском сообщении треда. В вебхуке уже есть `thread.message_id` — получи родительское сообщение: GET /messages/{id}.

### Отправить сообщение с файлами

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ description: >
Base URL: `https://api.pachca.com/api/shared/v1`
Авторизация: `Authorization: Bearer <ACCESS_TOKEN>`
Токен: бот (Автоматизации → Интеграции → API) или пользователь (Автоматизации → API).
Если токен неизвестен — спроси у пользователя перед выполнением запросов.

## Когда использовать

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ description: >
Base URL: `https://api.pachca.com/api/shared/v1`
Авторизация: `Authorization: Bearer <ACCESS_TOKEN>`
Токен: бот (Автоматизации → Интеграции → API) или пользователь (Автоматизации → API).
Если токен неизвестен — спроси у пользователя перед выполнением запросов.

## Когда использовать

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
- `start_time` (query, string, **обязательный**): Начальная метка времени (включительно)
- `end_time` (query, string, **обязательный**): Конечная метка времени (исключительно)
- `event_key` (query, string, опциональный): Фильтр по конкретному типу события
- Значения: `user_login`, `user_logout`, `user_2fa_fail`, `user_2fa_success`, `user_created`, `user_deleted`, `user_role_changed`, `user_updated`, `tag_created`, `tag_deleted`, `user_added_to_tag`, `user_removed_from_tag`, `chat_created`, `chat_renamed`, `chat_permission_changed`, `user_chat_join`, `user_chat_leave`, `tag_added_to_chat`, `tag_removed_from_chat`, `message_updated`, `message_deleted`, `message_created`, `reaction_created`, `reaction_deleted`, `access_token_created`, `access_token_updated`, `access_token_destroy`, `kms_encrypt`, `kms_decrypt`, `audit_events_accessed`, `dlp_violation_detected`
- Значения: `user_login`, `user_logout`, `user_2fa_fail`, `user_2fa_success`, `user_created`, `user_deleted`, `user_role_changed`, `user_updated`, `tag_created`, `tag_deleted`, `user_added_to_tag`, `user_removed_from_tag`, `chat_created`, `chat_renamed`, `chat_permission_changed`, `user_chat_join`, `user_chat_leave`, `tag_added_to_chat`, `tag_removed_from_chat`, `message_updated`, `message_deleted`, `message_created`, `reaction_created`, `reaction_deleted`, `thread_created`, `access_token_created`, `access_token_updated`, `access_token_destroy`, `kms_encrypt`, `kms_decrypt`, `audit_events_accessed`, `dlp_violation_detected`
- `actor_id` (query, integer, опциональный): Идентификатор пользователя, выполнившего действие
- `actor_type` (query, string, опциональный): Тип актора
- `entity_id` (query, integer, опциональный): Идентификатор затронутой сущности
Expand Down
29 changes: 6 additions & 23 deletions apps/docs/public/.well-known/skills/pachca-tasks/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ description: >
Base URL: `https://api.pachca.com/api/shared/v1`
Авторизация: `Authorization: Bearer <ACCESS_TOKEN>`
Токен: бот (Автоматизации → Интеграции → API) или пользователь (Автоматизации → API).
Если токен неизвестен — спроси у пользователя перед выполнением запросов.

## Когда использовать

Expand All @@ -33,18 +34,20 @@ Base URL: `https://api.pachca.com/api/shared/v1`

## Пошаговые сценарии

### Создать напоминание для себя
### Создать напоминание

1. POST /tasks с `kind`, `content` и `due_at`
2. Чтобы привязать к чату — добавь `chat_id`
3. Чтобы заполнить дополнительные поля — добавь `custom_properties: [{"id": <field_id>, "value": "..."}]` (список полей: GET /custom_properties?entity_type=Task)

```bash
curl "https://api.pachca.com/api/shared/v1/tasks" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{"task":{"kind":"reminder","content":"Позвонить клиенту","due_at":"$DUE_AT","custom_properties":[{"id":78,"value":"Синий склад"}]}}'
-d '{"task":{"kind":"reminder","content":"Позвонить клиенту","due_at":"$DUE_AT","chat_id":$CHAT_ID,"custom_properties":[{"id":78,"value":"Синий склад"}]}}'
```

> Задачи поддерживают дополнительные поля (`custom_properties`). Передай массив `[{"id": <field_id>, "value": "..."}]` при создании или обновлении. Список доступных полей: GET /custom_properties?entity_type=Task.
> Для привязки к чату нужно быть его участником. Если чат не найден — 404. Тип значения `custom_properties[].value` всегда строка (даже для числовых и date-полей). Дополнительные поля настраиваются администратором пространства.

### Получить список предстоящих задач

Expand Down Expand Up @@ -74,26 +77,6 @@ curl -X PUT "https://api.pachca.com/api/shared/v1/tasks/12345" \
1. Подготовь список дат (ежедневно, еженедельно и т.д.)
2. Для каждой даты: POST /tasks с нужным `kind`, `content` и `due_at`

### Заполнить дополнительные поля задачи

1. GET /custom_properties?entity_type=Task — получи список доступных полей (`id`, `name`, `data_type`)
2. При создании: POST /tasks с `custom_properties: [{"id": <field_id>, "value": "..."}]`
3. При обновлении: PUT /tasks/{id} с `custom_properties: [{"id": <field_id>, "value": "..."}]`
4. В ответе задачи поле `custom_properties` содержит текущие значения всех полей

```bash
curl "https://api.pachca.com/api/shared/v1/custom_properties?entity_type=Task" \
-H "Authorization: Bearer $TOKEN"
# Ответ: [{"id":78,"name":"Склад","data_type":"string"},{"id":91,"name":"Дата доставки","data_type":"date"}]

curl -X PUT "https://api.pachca.com/api/shared/v1/tasks/12345" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{"task":{"custom_properties":[{"id":78,"value":"Синий склад"},{"id":91,"value":"$DUE_DATE"}]}}'
```

> Если передать `id` удалённого или несуществующего поля — получишь ошибку 422. Тип значения в `value` всегда строка (даже для числовых и date-полей). Дополнительные поля настраиваются администратором пространства.

## Обработка ошибок

| Код | Причина | Что делать |
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@

Ответственным для напоминания без привязки к каким-либо сущностям может стать любой сотрудник компании. Актуальный состав сотрудников компании вы можете получить в методе [список сотрудников](GET /users).

На текущий момент данный метод поддерживает только создание напоминаний без привязки к каким-либо сущностям.
Напоминание можно привязать к чату, указав `chat_id`. Для привязки к чату необходимо быть его участником.

**Тело запроса** (`application/json`):

Expand All @@ -26,6 +26,7 @@
- `due_at` (string, опциональный): Срок выполнения напоминания (ISO-8601) в формате YYYY-MM-DDThh:mm:ss.sssTZD. Если указано время 23:59:59.000, то напоминание будет создано на весь день (без указания времени).
- `priority` (integer, опциональный): Приоритет: 1, 2 (важно) или 3 (очень важно).
- `performer_ids` (array[integer], опциональный): Массив идентификаторов пользователей, привязываемых к напоминанию как «ответственные» (по умолчанию ответственным назначается вы)
- `chat_id` (integer, опциональный): Идентификатор чата, к которому привязывается напоминание
- `all_day` (boolean, опциональный): Напоминание на весь день (без указания времени)
- `custom_properties` (array[object], опциональный): Задаваемые дополнительные поля
- `id` (integer, **обязательный**): Идентификатор поля
Expand Down Expand Up @@ -62,6 +63,7 @@ curl "https://api.pachca.com/api/shared/v1/tasks" \
- `due_at` (string, **обязательный**): Срок выполнения напоминания (ISO-8601, UTC+0) в формате YYYY-MM-DDThh:mm:ss.sssZ
- `priority` (integer, **обязательный**): Приоритет
- `user_id` (integer, **обязательный**): Идентификатор пользователя-создателя напоминания
- `chat_id` (integer, **обязательный**): Идентификатор чата, к которому привязано напоминание
- `status` (string (`done` | `undone`), **обязательный**): Статус напоминания
- `created_at` (string, **обязательный**): Дата и время создания напоминания (ISO-8601, UTC+0) в формате YYYY-MM-DDThh:mm:ss.sssZ
- `performer_ids` (array[integer], **обязательный**): Массив идентификаторов пользователей, привязанных к напоминанию как «ответственные»
Expand Down Expand Up @@ -108,6 +110,7 @@ curl "https://api.pachca.com/api/shared/v1/tasks?limit=50&cursor=string" \
- `due_at` (string, **обязательный**): Срок выполнения напоминания (ISO-8601, UTC+0) в формате YYYY-MM-DDThh:mm:ss.sssZ
- `priority` (integer, **обязательный**): Приоритет
- `user_id` (integer, **обязательный**): Идентификатор пользователя-создателя напоминания
- `chat_id` (integer, **обязательный**): Идентификатор чата, к которому привязано напоминание
- `status` (string (`done` | `undone`), **обязательный**): Статус напоминания
- `created_at` (string, **обязательный**): Дата и время создания напоминания (ISO-8601, UTC+0) в формате YYYY-MM-DDThh:mm:ss.sssZ
- `performer_ids` (array[integer], **обязательный**): Массив идентификаторов пользователей, привязанных к напоминанию как «ответственные»
Expand Down Expand Up @@ -152,6 +155,7 @@ curl "https://api.pachca.com/api/shared/v1/tasks/12345" \
- `due_at` (string, **обязательный**): Срок выполнения напоминания (ISO-8601, UTC+0) в формате YYYY-MM-DDThh:mm:ss.sssZ
- `priority` (integer, **обязательный**): Приоритет
- `user_id` (integer, **обязательный**): Идентификатор пользователя-создателя напоминания
- `chat_id` (integer, **обязательный**): Идентификатор чата, к которому привязано напоминание
- `status` (string (`done` | `undone`), **обязательный**): Статус напоминания
- `created_at` (string, **обязательный**): Дата и время создания напоминания (ISO-8601, UTC+0) в формате YYYY-MM-DDThh:mm:ss.sssZ
- `performer_ids` (array[integer], **обязательный**): Массив идентификаторов пользователей, привязанных к напоминанию как «ответственные»
Expand Down Expand Up @@ -217,6 +221,7 @@ curl -X PUT "https://api.pachca.com/api/shared/v1/tasks/12345" \
- `due_at` (string, **обязательный**): Срок выполнения напоминания (ISO-8601, UTC+0) в формате YYYY-MM-DDThh:mm:ss.sssZ
- `priority` (integer, **обязательный**): Приоритет
- `user_id` (integer, **обязательный**): Идентификатор пользователя-создателя напоминания
- `chat_id` (integer, **обязательный**): Идентификатор чата, к которому привязано напоминание
- `status` (string (`done` | `undone`), **обязательный**): Статус напоминания
- `created_at` (string, **обязательный**): Дата и время создания напоминания (ISO-8601, UTC+0) в формате YYYY-MM-DDThh:mm:ss.sssZ
- `performer_ids` (array[integer], **обязательный**): Массив идентификаторов пользователей, привязанных к напоминанию как «ответственные»
Expand Down
1 change: 1 addition & 0 deletions apps/docs/public/.well-known/skills/pachca-users/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ description: >
Base URL: `https://api.pachca.com/api/shared/v1`
Авторизация: `Authorization: Bearer <ACCESS_TOKEN>`
Токен: бот (Автоматизации → Интеграции → API) или пользователь (Автоматизации → API).
Если токен неизвестен — спроси у пользователя перед выполнением запросов.

## Когда использовать

Expand Down
Loading
Loading