Skip to main content
Конечная точка «Обновление заказа» позволяет изменять существующий заказ (проект) в AgencyHandy — изменять его название, статус, бюджет, сроки, назначенных менеджеров и многое другое — из внешней системы или скрипта автоматизации. Конечная точка также поддерживает вложения файлов, которые добавляются в системную папку заказа.
Перед использованием этой конечной точки выполните руководство Начало работы для получения API-ключа и идентификатора компании.
Эта конечная точка использует Authorization: Bearer <token> (токен доступа вошедшего участника) вместо заголовка x-api-key. Убедитесь, что вызывающий объект аутентифицирован как утверждённый участник целевой компании. Неавторизованные вызывающие объекты получат ошибку 403 PermissionError.

Предварительные требования

  • ✅ Действительный Bearer-токен для утверждённого участника рабочего пространства
  • Идентификатор компании, полученный из GET {{URL}}/accounts/companies
  • Идентификатор заказа (идентификатор проекта, pid) заказа, который вы хотите обновить

Конечная точка

Content-Type: multipart/form-data — используйте это даже при отсутствии прикреплённых файлов, чтобы удовлетворить требования парсера multipart на сервере.

Заголовки

Параметры запроса

string
обязательно
Идентификатор заказа / проекта для обновления. Передаётся как параметр строки запроса.

Поля тела запроса

string
Обновляет название заказа. Минимум 2 символа.
string
Новый статус заказа. Должен быть одним из: Pending, Ongoing, Review, Completed, Cancelled.Допустимые переходы:
  • Review может следовать только за Ongoing или другим Review. Переход из Pending напрямую в Review возвращает ошибку 400 ValidationError.
  • Заказы со статусом Completed или Cancelled не могут быть обновлены.
  • Клиенты не могут отменить заказ, вышедший из статуса Pending.
number
Общая сумма бюджета. Должна быть ≥ 0. Использует существующую валюту заказа, если только currency не указан дополнительно.
string
Код валюты для бюджета. Примеры: USD, CAD, EUR.
number
Количество единиц, приобретённых для пакета. Должно быть ≥ 1.
string
Строка даты в формате ISO 8601 для срока выполнения заказа. Пример: "2025-12-31T00:00:00.000Z".
string
Строка даты в формате ISO 8601 для даты начала проекта.
string
Внутренние заметки, видимые вашей команде.
string
Бриф клиента или краткое описание проекта.
array
Полный список идентификаторов участников-менеджеров проекта для назначения на этот заказ. Новые идентификаторы добавляются в команду; удалённые идентификаторы исключаются. Каждый идентификатор должен принадлежать участнику с ролью projectManager в той же компании.
boolean
Обязателен, когда status равен Completed или Cancelled. При true все задачи в заказе помечаются как выполненные после изменения статуса. При false задачи остаются в текущем состоянии.
boolean
Допускается только при status равном Completed или Cancelled. При true все ожидающие задачи, запрошенные клиентом, отклоняются после обновления статуса.
number
Требуется только для заказов по подписке при изменении частоты повторения. Используйте вместе с repeatDuration.
string
Требуется вместе с repeatCount для заказов по подписке. Одно из: day, week, month, year.
number
Необязательное ограничение на количество циклов выставления счетов. По умолчанию 0 (без ограничений).
string
Порядок обработки каждого цикла выставления счетов. Одно из: createOrderWithTask, noChange.
file
Ноль или более вложений файлов. Файлы добавляются в системную папку заказа; существующие файлы никогда не перезаписываются. Используйте кодировку multipart/form-data и прикрепляйте каждый файл в поле files.

Пример запроса

Эквивалентные данные в формате JSON (преобразуйте в записи multipart form при отправке файлов):

Ответы

Успешный ответ


Бизнес-правила и побочные эффекты

  • Переходы статусов ограничены. Review может следовать только за Ongoing или другим Review. Попытка перехода Pending → Review возвращает ошибку 400 ValidationError.
  • Переход статуса из Pending в Ongoing, Review или Completed активирует папку файлов заказа, делая загруженные файлы доступными для команды проекта.
  • Установка status в Completed или Cancelled требует явного указания markTasksAsDone со значением true или false.
  • Изменения статуса на Review, Completed или Cancelled автоматически инициируют уведомления для клиента:
    • Review — уведомляет клиента о необходимости проверки.
    • Completed — отправляет уведомление orderCompletion клиенту.
    • Cancelled — отправляет уведомление orderCancellation клиенту.
  • Каждое успешное обновление инициирует событие вебхука ORDER.UPDATED с обновлённым документом заказа и метаданными вложений, если у вас настроен активный вебхук, подписанный на это событие.