Перейти к содержимому
СервисАпп API
На этой странице

Общие регламенты обслуживания

Все операции. Авторизация. Запросы и повторы.

Все пути в этом файле дополняют /api/v1 на домене организации.

Описание и ограничения

Назначение

Правило обслуживания группы оборудования по клиенту, объекту, договору, моделям, типам или явному набору единиц.

Поля и назначение

Публичное поле Формат и смысл Доступ
id, title, description идентичность и описание только чтение / чтение и запись
scope_type область применимости из /reference чтение и запись
customer_id, customer_site_id, service_contract_id, workshop_id условные связи по scope_type чтение и запись
equipment_ids, equipment_model_ids, device_type_ids, excluded_equipment_ids явные списки с ограничением размера чтение и запись
trigger_type calendar / usage / hybrid / equipment_date чтение и запись
type, priority preventive/corrective; low/medium/high/critical чтение и запись
schedule_mode, anchor_date fixed/floating и начальная календарная опора чтение и запись
calendar_interval_value, calendar_interval_unit, calendar_pattern, week_days, month_days правило календаря чтение и запись
usage_interval, usage_lead, usage_unit_id, equipment_date_field наработка или разрешённое поле даты чтение и запись
starts_on, ends_on, generation_time, lead_time_days календарные границы и локальное время генерации чтение и запись
completion_window_value, completion_window_unit целое 0–3650/null и hour/day/week; срок выполнения от создания заявки чтение и запись
scenario_id, assigned_user_id, scenario_defaults шаблон, ответственный, значения по умолчанию чтение и запись
status, revision, synced_at серверное состояние и версия только чтение
links реальная страница edit; portal и public — null только чтение
version, updated_at строка Unix-секунд и UTC timestamp без микросекунд только чтение

Обязательность и null указаны в схемах каждой операции ниже.

Доступ и выборка

maintenance_regulations:read/write и «ТОиР — Обслуживание → Просмотр, Изменение», тариф, мастерская и право доступа ко всему выбранному составу.

Создание и новый выбор состава требуют «ТОиР — Оборудование → Просмотр»; выбор клиента, объекта или договора дополнительно требует «Клиенты и поставщики → Просмотр». Отдельные разрешения на чтение этих ресурсов для команд не требуются. Для lifecycle существующего регламента достаточно документированного разрешение на запись и «ТОиР — Обслуживание → Изменение», с проверкой текущих мастерских, действующего состава и затрагиваемых планов. Запись об операции сохраняет использованные разрешения и ссылки для повторной проверки текущего доступа.

Фильтры: scope_type, customer_id, customer_site_id, service_contract_id, status, trigger_type, updated_since.

Создание, изменение и команды

Для создания требуются title (1–255), scope_type, trigger_type и starts_on. Значения по умолчанию: type=preventive, priority=medium, status=active, generation_time="09:00", lead_time_days=0, ends_on=null, scenario_id=null, assigned_user_id=null, scenario_defaults={}, completion_window_value=null, completion_window_unit=day. status задаётся сервером и изменяется только pause/resume/end. Для выбора мастерской принимается workshop_id; если доступно несколько и связь не определяет одну, отсутствие — 422 WORKSHOP_REQUIRED.

scope_type Обязательные связи
equipment equipment_ids, 1–100 уникальных ID
models equipment_model_ids, 1–100 UUID
types device_type_ids, 1–100 ID
customer customer_id
site customer_id и customer_site_id этого клиента
contract service_contract_id

Не относящиеся к выбранной области применения связи не принимаются. excluded_equipment_ids по умолчанию [], максимум 100; все массивы ID — множества, дубликаты дают 422.

trigger_type Правило
calendar calendar_interval_value (1–1000), calendar_interval_unit (day/week/month/year); schedule_mode=floating по умолчанию; anchor_date=starts_on при создании, явная дата не ранее starts_on
usage usage_unit_id и usage_interval > 0; usage_lead=0, строго меньше интервала; календарные параметры запрещены
hybrid обязательны календарная и наработочная части; schedule_mode только floating
equipment_date equipment_date_field из /reference/enums/equipment-date-fields; календарный интервал и наработка запрещены

calendar_pattern=interval по умолчанию. Для calendar допустимы weekdays с week_days (1=пн…7=вс) и month_days с month_days (1…31; 0=последний день), без повторов. Такие шаблоны используют fixed, lead_time_days=0 и interval_unit=week/month соответственно; несовместимые явно переданные значения — 422. Значения по умолчанию применяются только при создании, update сохраняет отсутствующие поля и заново проверяет итоговое правило. Смена trigger требует явно очистить несовместимые ранее заданные поля через null/[]; сервер не оставляет старую часть правила действующей.

pause/resume/end/sync принимают {} и If-Resource-Version регламента. Допустимы active→paused, paused→active, active/paused→ended; ended не возобновляется. Текущее состояние повторно установить можно с changed=false. Создание возвращает 201, остальные завершённые команды — 200 с карточкой и meta.affected_resources. Для парка более 100 единиц create/update/sync принимаются как 202: сохраняются правило, ревизия и сохранённая операция, затем синхронизируются планы с результатом по каждой единице. Новая генерация этой ревизии начинается после успешной синхронизации. Ошибки доступны в журнале; частичный пакет не помечается succeeded и не маскируется под атомарное применение. Входные массивы более 100 элементов в возвращают 422; большой парк выбирается разрешение подключения клиента/объекта/модели/типа/договора.

Граница 100 учитывает объединение прежнего и нового состава: замена 2 прежних единиц на 99 новых также требует пакетного режима. Для больших наборов pause/resume/end тоже возвращают 202: состояние самого регламента сохраняется при принятии, применимость планов согласуется по единицам с сохранением истории. Пока пакет выполняется, новое действие по этому регламенту получает 409 MAINTENANCE_SYNC_IN_PROGRESS; исходный ключ возвращает свою запись об операции.

У ответа 202 data.operation_id и data.state="processing" описывают принятие, data.regulation содержит карточку принятого правила; location указывает на журнал, Retry-After равен 2. Повтор POST сохраняет исходный 202 и тело даже после завершения worker. Финальный исход читается через GET журнала: state, http_status, error, resource_refs, response и items по каждой единице. Отзыв текущего доступа блокирует выдачу закрытых данных; ответ о принятии очищается по общему TTL и не освобождает ключ.

Состав оборудования фиксируется при принятии запроса. В журнале сохраняется отдельный результат для каждой единицы. Незавершённая обработка продолжается после сбоя; подтверждённые результаты повторно не выполняются. Неустранимая ошибка переводит операцию в failed, сохраняя уже выполненные результаты и ошибки остальных единиц. После исправления причины отправьте новую команду с новым ключом. Повтор прежнего запроса не запускает весь пакет заново. Доступ к исходным и текущим планам и мастерским проверяется при каждом обращении к результату.

scenario_defaults использует общий типизированный объект по кодам полей сценария, как у индивидуальных планов. Значения не приводятся к строке автоматически: "0", false и null сохраняют смысл. JSON-объект с числовыми ключами не заменяет JSON-массив идентификаторов, дней или вариантов. Defaults передаются индивидуальным планам; существующие снимки начатых заявок не переписываются.

Правила и связи

  • Общий регламент хранит правило, а план единицы — независимый цикл и историю.
  • Локальные regulation_overridden сохраняются при изменении общего правила.
  • Пауза/исключение оборудования сохраняют существующие планы и заявки.
  • Для equipment_date после выполнения или отмены требуется новая дата, а не бесконечное создание того же ТО.
  • Большие наборы оформляются восстановимой операцией с ограниченным числом элементов и журналом.

Операции

Метод Путь Назначение
GET /maintenance-regulations Список с фильтрами и пагинацией
POST /maintenance-regulations Создание
GET /maintenance-regulations/{id} Карточка
POST /maintenance-regulations/{id}/update Изменение разрешённых полей
POST /maintenance-regulations/{id}/pause Приостановка действия регламента
POST /maintenance-regulations/{id}/resume Возобновление действия регламента
POST /maintenance-regulations/{id}/end Завершение регламента
POST /maintenance-regulations/{id}/sync Согласование состава оборудования и индивидуальных планов

GET /maintenance-regulations

Список с фильтрами и пагинацией.

Доступ. Разрешения подключения: maintenance_regulations:read. Права сотрудника: «ТОиР — Обслуживание → Просмотр». Дополнительно действуют доступ к записям, мастерским, модулям и условия полей из описания ресурса выше.

Параметры

Имя Где Тип Обязательно null Ограничения
Authorization заголовок строка да нет Bearer <SERVICEAPP_TOKEN>
filter[scope_type] параметр запроса строка нет нет Допустимо: "equipment", "models", "types", "customer", "site", "contract"
filter[customer_id] параметр запроса целое число нет нет ≥ 1
filter[customer_site_id] параметр запроса целое число нет нет ≥ 1
filter[service_contract_id] параметр запроса целое число нет нет ≥ 1
filter[status] параметр запроса строка нет нет Допустимо: "active", "paused", "ended"
filter[trigger_type] параметр запроса строка нет нет Допустимо: "calendar", "usage", "hybrid", "equipment_date"
filter[updated_since] параметр запроса строка нет нет —
sort параметр запроса строка нет нет Допустимо: "id", "-id", "updated_at,id", "-updated_at,-id"
page[size] параметр запроса целое число нет нет ≥ 1.0; ≤ 100.0
page[cursor] параметр запроса строка нет нет не более 8192 символов

Ответы

HTTP Назначение и схема
200 Успех. Полная схема и пример
401 Требуется действующий Bearer. Коды и формат ошибки
403 Недостаточно допуска. Коды и формат ошибки
409 Конфликт состояния или повтора. Коды и формат ошибки
422 Ошибка входных данных. Коды и формат ошибки
429 Лимит запросов, Retry-After. Коды и формат ошибки
503 Временно недоступно. Коды и формат ошибки

Каждый ответ содержит новый X-Request-Id в заголовке. Общие транспортные отказы и правила повтора действуют также при отказе до контроллера; см. ошибки.

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

Запускается из каталога комплекта после настройки переменных в быстром старте. Замените демонстрационные идентификаторы 101 и UUID идентификаторами доступных записей. $RESOURCE_VERSION берётся из GET владельца версии, описанного выше. Для нового действия сохраните новый ключ; для повтора используйте прежний.

curl --silent --show-error --globoff \
  "$API/maintenance-regulations" \
  --header "Authorization: Bearer $SERVICEAPP_TOKEN" \
  --header "Accept: application/json"

POST /maintenance-regulations

Создание.

Доступ. Разрешения подключения: maintenance_regulations:write. Права сотрудника: «ТОиР — Обслуживание → Изменение». Дополнительно действуют доступ к записям, мастерским, модулям и условия полей из описания ресурса выше.

Параметры

Имя Где Тип Обязательно null Ограничения
Authorization заголовок строка да нет Bearer <SERVICEAPP_TOKEN>
Idempotency-Key заголовок строка да нет не менее 1 символов; не более 128 символов; Шаблон: ^[A-Za-z0-9._:-]+$

Тело запроса

Content-Type: application/json. Тело обязательно.

Поле Тип Обязательно null Ограничения и смысл
title строка да нет не более 255 символов
description строка / null нет да не более 10000 символов
trigger_type строка да нет Допустимо: "calendar", "usage", "hybrid", "equipment_date"
starts_on строка (дата) да нет —
ends_on строка / null (дата) нет да —
anchor_date строка / null (дата) нет да —
workshop_id целое число нет нет ≥ 1
assigned_user_id целое число / null нет да ≥ 1
scenario_id целое число / null нет да ≥ 1
service_contract_id целое число / null нет да ≥ 1
type строка нет нет Допустимо: "preventive", "corrective"
priority строка нет нет Допустимо: "low", "medium", "high", "critical"
schedule_mode строка / null нет да Допустимо: "fixed", "floating", null
calendar_interval_value целое число / null нет да ≥ 1.0; ≤ 1000.0
calendar_interval_unit строка / null нет да Допустимо: "day", "week", "month", "year", null
calendar_pattern строка нет нет Допустимо: "interval", "weekdays", "month_days"
week_days массив нет нет не более 7 элементов; Без повторов
week_days[] целое число да нет ≥ 1.0; ≤ 7.0
month_days массив нет нет не более 32 элементов; Без повторов
month_days[] целое число да нет ≥ 0.0; ≤ 31.0
usage_interval целое число / null нет да ≥ 1
usage_lead целое число / null нет да ≥ 0
lead_time_days целое число нет нет ≥ 0.0; ≤ 3650.0
generation_time строка нет нет Шаблон: ^(?:[01]\d|2[0-3]):[0-5]\d$
completion_window_value целое число / null нет да ≥ 0.0; ≤ 3650.0
completion_window_unit строка нет нет Допустимо: "hour", "day", "week"
scenario_defaults объект нет нет макс. ключей 100
scenario_defaults.{ключ} строка / логическое значение / массив / объект / null нет да —
scenario_defaults.{ключ} (вариант 3) массив нет нет —
scenario_defaults.{ключ} (вариант 3)[] строка да нет —
scenario_defaults.{ключ} (вариант 4) объект нет нет —
scenario_defaults.{ключ} (вариант 4).amount строка да нет —
scenario_defaults.{ключ} (вариант 4).currency строка да нет —
scope_type строка да нет Допустимо: "equipment", "models", "types", "customer", "site", "contract"
customer_id целое число / null нет да ≥ 1
customer_site_id целое число / null нет да ≥ 1
usage_unit_id целое число / null нет да ≥ 1
equipment_date_field строка / null нет да не более 191 символов
equipment_ids массив нет нет не более 100 элементов; Без повторов
equipment_ids[] целое число да нет ≥ 1
equipment_model_ids массив нет нет не более 100 элементов; Без повторов
equipment_model_ids[] строка (uuid) да нет —
device_type_ids массив нет нет не более 100 элементов; Без повторов
device_type_ids[] целое число да нет ≥ 1
excluded_equipment_ids массив нет нет не более 100 элементов; Без повторов
excluded_equipment_ids[] целое число да нет ≥ 1

Ответы

HTTP Назначение и схема
201 Создано. Полная схема и пример
202 Принято, итог в журнале. Полная схема и пример
400 Некорректный запрос. Коды и формат ошибки
401 Требуется действующий Bearer. Коды и формат ошибки
403 Недостаточно допуска. Коды и формат ошибки
404 Не найдено или недоступно. Коды и формат ошибки
406 Недопустимое кодирование ответа. Коды и формат ошибки
409 Конфликт состояния или повтора. Коды и формат ошибки
413 Превышен размер. Коды и формат ошибки
415 Неподдерживаемый Content-Type. Коды и формат ошибки
422 Ошибка входных данных. Коды и формат ошибки
429 Лимит запросов, Retry-After. Коды и формат ошибки
500 Внутренняя ошибка, исход нужно уточнить. Коды и формат ошибки
503 Временно недоступно. Коды и формат ошибки
HTTP Заголовок ответа Тип Описание
201 Cache-Control строка
201 Location строка
201 Idempotency-Replayed строка
202 Location строка
202 Retry-After строка
202 Idempotency-Replayed строка
202 Cache-Control строка
400 Cache-Control строка
401 Cache-Control строка
403 Cache-Control строка
404 Cache-Control строка
406 Cache-Control строка
409 Cache-Control строка
413 Cache-Control строка
415 Cache-Control строка
422 Cache-Control строка
429 Cache-Control строка
429 Retry-After строка
500 Cache-Control строка
503 Cache-Control строка

Каждый ответ содержит новый X-Request-Id в заголовке. Общие транспортные отказы и правила повтора действуют также при отказе до контроллера; см. ошибки.

У принятого POST Location и meta.operation_id указывают на журнал операции; ETag отсутствует. При повторе запроса сохраняются исходные data/meta, добавляется Idempotency-Replayed: true. Версии передавайте по назначению, указанному в описании ресурса.

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

Запускается из каталога комплекта после настройки переменных в быстром старте. Замените демонстрационные идентификаторы 101 и UUID идентификаторами доступных записей. $RESOURCE_VERSION берётся из GET владельца версии, описанного выше. Для нового действия сохраните новый ключ; для повтора используйте прежний.

curl --silent --show-error --globoff --request POST \
  "$API/maintenance-regulations" \
  --header "Authorization: Bearer $SERVICEAPP_TOKEN" \
  --header "Accept: application/json" \
  --header "Idempotency-Key: example:v1-maintenance-regulations-store:001" \
  --header "Content-Type: application/json" \
  --data-binary '@examples/requests/v1.maintenance-regulations.store.json'

GET /maintenance-regulations/{id}

Карточка.

Доступ. Разрешения подключения: maintenance_regulations:read. Права сотрудника: «ТОиР — Обслуживание → Просмотр». Дополнительно действуют доступ к записям, мастерским, модулям и условия полей из описания ресурса выше.

Параметры

Имя Где Тип Обязательно null Ограничения
Authorization заголовок строка да нет Bearer <SERVICEAPP_TOKEN>
id путь строка да нет Шаблон: ^(?:[0-9]+)$
If-None-Match заголовок строка нет нет —

Ответы

HTTP Назначение и схема
200 Успех. Полная схема и пример
304 Представление не изменилось, без тела. Условный GET
401 Требуется действующий Bearer. Коды и формат ошибки
403 Недостаточно допуска. Коды и формат ошибки
404 Не найдено или недоступно. Коды и формат ошибки
422 Ошибка входных данных. Коды и формат ошибки
429 Лимит запросов, Retry-After. Коды и формат ошибки
503 Временно недоступно. Коды и формат ошибки
HTTP Заголовок ответа Тип Описание
200 ETag строка
304 ETag строка

Каждый ответ содержит новый X-Request-Id в заголовке. Общие транспортные отказы и правила повтора действуют также при отказе до контроллера; см. ошибки.

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

Запускается из каталога комплекта после настройки переменных в быстром старте. Замените демонстрационные идентификаторы 101 и UUID идентификаторами доступных записей. $RESOURCE_VERSION берётся из GET владельца версии, описанного выше. Для нового действия сохраните новый ключ; для повтора используйте прежний.

curl --silent --show-error --globoff \
  "$API/maintenance-regulations/101" \
  --header "Authorization: Bearer $SERVICEAPP_TOKEN" \
  --header "Accept: application/json"

POST /maintenance-regulations/{id}/update

Изменение разрешённых полей.

Доступ. Разрешения подключения: maintenance_regulations:write. Права сотрудника: «ТОиР — Обслуживание → Изменение». Дополнительно действуют доступ к записям, мастерским, модулям и условия полей из описания ресурса выше.

Параметры

Имя Где Тип Обязательно null Ограничения
Authorization заголовок строка да нет Bearer <SERVICEAPP_TOKEN>
id путь строка да нет Шаблон: ^(?:[0-9]+)$
Idempotency-Key заголовок строка да нет не менее 1 символов; не более 128 символов; Шаблон: ^[A-Za-z0-9._:-]+$
If-Resource-Version заголовок строка да нет Unix-секунды updated_at регламента обслуживания.; не менее 1 символов; не более 128 символов; Шаблон: ^[A-Za-z0-9._~-]+$

Тело запроса

Content-Type: application/json. Тело обязательно.

Поле Тип Обязательно null Ограничения и смысл
title строка нет нет не более 255 символов
description строка / null нет да не более 10000 символов
trigger_type строка нет нет Допустимо: "calendar", "usage", "hybrid", "equipment_date"
starts_on строка (дата) нет нет —
ends_on строка / null (дата) нет да —
anchor_date строка / null (дата) нет да —
workshop_id целое число нет нет ≥ 1
assigned_user_id целое число / null нет да ≥ 1
scenario_id целое число / null нет да ≥ 1
service_contract_id целое число / null нет да ≥ 1
type строка нет нет Допустимо: "preventive", "corrective"
priority строка нет нет Допустимо: "low", "medium", "high", "critical"
schedule_mode строка / null нет да Допустимо: "fixed", "floating", null
calendar_interval_value целое число / null нет да ≥ 1.0; ≤ 1000.0
calendar_interval_unit строка / null нет да Допустимо: "day", "week", "month", "year", null
calendar_pattern строка нет нет Допустимо: "interval", "weekdays", "month_days"
week_days массив нет нет не более 7 элементов; Без повторов
week_days[] целое число да нет ≥ 1.0; ≤ 7.0
month_days массив нет нет не более 32 элементов; Без повторов
month_days[] целое число да нет ≥ 0.0; ≤ 31.0
usage_interval целое число / null нет да ≥ 1
usage_lead целое число / null нет да ≥ 0
lead_time_days целое число нет нет ≥ 0.0; ≤ 3650.0
generation_time строка нет нет Шаблон: ^(?:[01]\d|2[0-3]):[0-5]\d$
completion_window_value целое число / null нет да ≥ 0.0; ≤ 3650.0
completion_window_unit строка нет нет Допустимо: "hour", "day", "week"
scenario_defaults объект нет нет макс. ключей 100
scenario_defaults.{ключ} строка / логическое значение / массив / объект / null нет да —
scenario_defaults.{ключ} (вариант 3) массив нет нет —
scenario_defaults.{ключ} (вариант 3)[] строка да нет —
scenario_defaults.{ключ} (вариант 4) объект нет нет —
scenario_defaults.{ключ} (вариант 4).amount строка да нет —
scenario_defaults.{ключ} (вариант 4).currency строка да нет —
scope_type строка нет нет Допустимо: "equipment", "models", "types", "customer", "site", "contract"
customer_id целое число / null нет да ≥ 1
customer_site_id целое число / null нет да ≥ 1
usage_unit_id целое число / null нет да ≥ 1
equipment_date_field строка / null нет да не более 191 символов
equipment_ids массив нет нет не более 100 элементов; Без повторов
equipment_ids[] целое число да нет ≥ 1
equipment_model_ids массив нет нет не более 100 элементов; Без повторов
equipment_model_ids[] строка (uuid) да нет —
device_type_ids массив нет нет не более 100 элементов; Без повторов
device_type_ids[] целое число да нет ≥ 1
excluded_equipment_ids массив нет нет не более 100 элементов; Без повторов
excluded_equipment_ids[] целое число да нет ≥ 1

Ответы

HTTP Назначение и схема
200 Успех. Полная схема и пример
202 Принято, итог в журнале. Полная схема и пример
400 Некорректный запрос. Коды и формат ошибки
401 Требуется действующий Bearer. Коды и формат ошибки
403 Недостаточно допуска. Коды и формат ошибки
404 Не найдено или недоступно. Коды и формат ошибки
406 Недопустимое кодирование ответа. Коды и формат ошибки
409 Конфликт состояния или повтора. Коды и формат ошибки
412 Версия устарела. Коды и формат ошибки
413 Превышен размер. Коды и формат ошибки
415 Неподдерживаемый Content-Type. Коды и формат ошибки
422 Ошибка входных данных. Коды и формат ошибки
428 Нужно предусловие версии. Коды и формат ошибки
429 Лимит запросов, Retry-After. Коды и формат ошибки
500 Внутренняя ошибка, исход нужно уточнить. Коды и формат ошибки
503 Временно недоступно. Коды и формат ошибки
HTTP Заголовок ответа Тип Описание
200 Cache-Control строка
200 Location строка
200 Idempotency-Replayed строка
202 Location строка
202 Retry-After строка
202 Idempotency-Replayed строка
202 Cache-Control строка
400 Cache-Control строка
401 Cache-Control строка
403 Cache-Control строка
404 Cache-Control строка
406 Cache-Control строка
409 Cache-Control строка
412 Cache-Control строка
413 Cache-Control строка
415 Cache-Control строка
422 Cache-Control строка
428 Cache-Control строка
429 Cache-Control строка
429 Retry-After строка
500 Cache-Control строка
503 Cache-Control строка

Каждый ответ содержит новый X-Request-Id в заголовке. Общие транспортные отказы и правила повтора действуют также при отказе до контроллера; см. ошибки.

У принятого POST Location и meta.operation_id указывают на журнал операции; ETag отсутствует. При повторе запроса сохраняются исходные data/meta, добавляется Idempotency-Replayed: true. Версии передавайте по назначению, указанному в описании ресурса.

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

Запускается из каталога комплекта после настройки переменных в быстром старте. Замените демонстрационные идентификаторы 101 и UUID идентификаторами доступных записей. $RESOURCE_VERSION берётся из GET владельца версии, описанного выше. Для нового действия сохраните новый ключ; для повтора используйте прежний.

curl --silent --show-error --globoff --request POST \
  "$API/maintenance-regulations/101/update" \
  --header "Authorization: Bearer $SERVICEAPP_TOKEN" \
  --header "Accept: application/json" \
  --header "Idempotency-Key: example:v1-maintenance-regulations-update:001" \
  --header "If-Resource-Version: $RESOURCE_VERSION" \
  --header "Content-Type: application/json" \
  --data-binary '@examples/requests/v1.maintenance-regulations.update.json'

POST /maintenance-regulations/{id}/pause

Приостановка действия регламента.

Доступ. Разрешения подключения: maintenance_regulations:write. Права сотрудника: «ТОиР — Обслуживание → Изменение». Дополнительно действуют доступ к записям, мастерским, модулям и условия полей из описания ресурса выше.

Параметры

Имя Где Тип Обязательно null Ограничения
Authorization заголовок строка да нет Bearer <SERVICEAPP_TOKEN>
id путь строка да нет Шаблон: ^(?:[0-9]+)$
Idempotency-Key заголовок строка да нет не менее 1 символов; не более 128 символов; Шаблон: ^[A-Za-z0-9._:-]+$
If-Resource-Version заголовок строка да нет Unix-секунды updated_at регламента обслуживания.; не менее 1 символов; не более 128 символов; Шаблон: ^[A-Za-z0-9._~-]+$

Тело запроса

Content-Type: application/json. Тело обязательно.

Тело — пустой JSON-объект {}. Другие ключи не принимаются.

Ответы

HTTP Назначение и схема
200 Успех. Полная схема и пример
202 Принято, итог в журнале. Полная схема и пример
400 Некорректный запрос. Коды и формат ошибки
401 Требуется действующий Bearer. Коды и формат ошибки
403 Недостаточно допуска. Коды и формат ошибки
404 Не найдено или недоступно. Коды и формат ошибки
406 Недопустимое кодирование ответа. Коды и формат ошибки
409 Конфликт состояния или повтора. Коды и формат ошибки
412 Версия устарела. Коды и формат ошибки
413 Превышен размер. Коды и формат ошибки
415 Неподдерживаемый Content-Type. Коды и формат ошибки
422 Ошибка входных данных. Коды и формат ошибки
428 Нужно предусловие версии. Коды и формат ошибки
429 Лимит запросов, Retry-After. Коды и формат ошибки
500 Внутренняя ошибка, исход нужно уточнить. Коды и формат ошибки
503 Временно недоступно. Коды и формат ошибки
HTTP Заголовок ответа Тип Описание
200 Cache-Control строка
200 Location строка
200 Idempotency-Replayed строка
202 Location строка
202 Retry-After строка
202 Idempotency-Replayed строка
202 Cache-Control строка
400 Cache-Control строка
401 Cache-Control строка
403 Cache-Control строка
404 Cache-Control строка
406 Cache-Control строка
409 Cache-Control строка
412 Cache-Control строка
413 Cache-Control строка
415 Cache-Control строка
422 Cache-Control строка
428 Cache-Control строка
429 Cache-Control строка
429 Retry-After строка
500 Cache-Control строка
503 Cache-Control строка

Каждый ответ содержит новый X-Request-Id в заголовке. Общие транспортные отказы и правила повтора действуют также при отказе до контроллера; см. ошибки.

У принятого POST Location и meta.operation_id указывают на журнал операции; ETag отсутствует. При повторе запроса сохраняются исходные data/meta, добавляется Idempotency-Replayed: true. Версии передавайте по назначению, указанному в описании ресурса.

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

Запускается из каталога комплекта после настройки переменных в быстром старте. Замените демонстрационные идентификаторы 101 и UUID идентификаторами доступных записей. $RESOURCE_VERSION берётся из GET владельца версии, описанного выше. Для нового действия сохраните новый ключ; для повтора используйте прежний.

curl --silent --show-error --globoff --request POST \
  "$API/maintenance-regulations/101/pause" \
  --header "Authorization: Bearer $SERVICEAPP_TOKEN" \
  --header "Accept: application/json" \
  --header "Idempotency-Key: example:v1-maintenance-regulations-pause:001" \
  --header "If-Resource-Version: $RESOURCE_VERSION" \
  --header "Content-Type: application/json" \
  --data-binary '@examples/requests/v1.maintenance-regulations.pause.json'

POST /maintenance-regulations/{id}/resume

Возобновление действия регламента.

Доступ. Разрешения подключения: maintenance_regulations:write. Права сотрудника: «ТОиР — Обслуживание → Изменение». Дополнительно действуют доступ к записям, мастерским, модулям и условия полей из описания ресурса выше.

Параметры

Имя Где Тип Обязательно null Ограничения
Authorization заголовок строка да нет Bearer <SERVICEAPP_TOKEN>
id путь строка да нет Шаблон: ^(?:[0-9]+)$
Idempotency-Key заголовок строка да нет не менее 1 символов; не более 128 символов; Шаблон: ^[A-Za-z0-9._:-]+$
If-Resource-Version заголовок строка да нет Unix-секунды updated_at регламента обслуживания.; не менее 1 символов; не более 128 символов; Шаблон: ^[A-Za-z0-9._~-]+$

Тело запроса

Content-Type: application/json. Тело обязательно.

Тело — пустой JSON-объект {}. Другие ключи не принимаются.

Ответы

HTTP Назначение и схема
200 Успех. Полная схема и пример
202 Принято, итог в журнале. Полная схема и пример
400 Некорректный запрос. Коды и формат ошибки
401 Требуется действующий Bearer. Коды и формат ошибки
403 Недостаточно допуска. Коды и формат ошибки
404 Не найдено или недоступно. Коды и формат ошибки
406 Недопустимое кодирование ответа. Коды и формат ошибки
409 Конфликт состояния или повтора. Коды и формат ошибки
412 Версия устарела. Коды и формат ошибки
413 Превышен размер. Коды и формат ошибки
415 Неподдерживаемый Content-Type. Коды и формат ошибки
422 Ошибка входных данных. Коды и формат ошибки
428 Нужно предусловие версии. Коды и формат ошибки
429 Лимит запросов, Retry-After. Коды и формат ошибки
500 Внутренняя ошибка, исход нужно уточнить. Коды и формат ошибки
503 Временно недоступно. Коды и формат ошибки
HTTP Заголовок ответа Тип Описание
200 Cache-Control строка
200 Location строка
200 Idempotency-Replayed строка
202 Location строка
202 Retry-After строка
202 Idempotency-Replayed строка
202 Cache-Control строка
400 Cache-Control строка
401 Cache-Control строка
403 Cache-Control строка
404 Cache-Control строка
406 Cache-Control строка
409 Cache-Control строка
412 Cache-Control строка
413 Cache-Control строка
415 Cache-Control строка
422 Cache-Control строка
428 Cache-Control строка
429 Cache-Control строка
429 Retry-After строка
500 Cache-Control строка
503 Cache-Control строка

Каждый ответ содержит новый X-Request-Id в заголовке. Общие транспортные отказы и правила повтора действуют также при отказе до контроллера; см. ошибки.

У принятого POST Location и meta.operation_id указывают на журнал операции; ETag отсутствует. При повторе запроса сохраняются исходные data/meta, добавляется Idempotency-Replayed: true. Версии передавайте по назначению, указанному в описании ресурса.

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

Запускается из каталога комплекта после настройки переменных в быстром старте. Замените демонстрационные идентификаторы 101 и UUID идентификаторами доступных записей. $RESOURCE_VERSION берётся из GET владельца версии, описанного выше. Для нового действия сохраните новый ключ; для повтора используйте прежний.

curl --silent --show-error --globoff --request POST \
  "$API/maintenance-regulations/101/resume" \
  --header "Authorization: Bearer $SERVICEAPP_TOKEN" \
  --header "Accept: application/json" \
  --header "Idempotency-Key: example:v1-maintenance-regulations-resume:001" \
  --header "If-Resource-Version: $RESOURCE_VERSION" \
  --header "Content-Type: application/json" \
  --data-binary '@examples/requests/v1.maintenance-regulations.resume.json'

POST /maintenance-regulations/{id}/end

Завершение регламента.

Доступ. Разрешения подключения: maintenance_regulations:write. Права сотрудника: «ТОиР — Обслуживание → Изменение». Дополнительно действуют доступ к записям, мастерским, модулям и условия полей из описания ресурса выше.

Параметры

Имя Где Тип Обязательно null Ограничения
Authorization заголовок строка да нет Bearer <SERVICEAPP_TOKEN>
id путь строка да нет Шаблон: ^(?:[0-9]+)$
Idempotency-Key заголовок строка да нет не менее 1 символов; не более 128 символов; Шаблон: ^[A-Za-z0-9._:-]+$
If-Resource-Version заголовок строка да нет Unix-секунды updated_at регламента обслуживания.; не менее 1 символов; не более 128 символов; Шаблон: ^[A-Za-z0-9._~-]+$

Тело запроса

Content-Type: application/json. Тело обязательно.

Тело — пустой JSON-объект {}. Другие ключи не принимаются.

Ответы

HTTP Назначение и схема
200 Успех. Полная схема и пример
202 Принято, итог в журнале. Полная схема и пример
400 Некорректный запрос. Коды и формат ошибки
401 Требуется действующий Bearer. Коды и формат ошибки
403 Недостаточно допуска. Коды и формат ошибки
404 Не найдено или недоступно. Коды и формат ошибки
406 Недопустимое кодирование ответа. Коды и формат ошибки
409 Конфликт состояния или повтора. Коды и формат ошибки
412 Версия устарела. Коды и формат ошибки
413 Превышен размер. Коды и формат ошибки
415 Неподдерживаемый Content-Type. Коды и формат ошибки
422 Ошибка входных данных. Коды и формат ошибки
428 Нужно предусловие версии. Коды и формат ошибки
429 Лимит запросов, Retry-After. Коды и формат ошибки
500 Внутренняя ошибка, исход нужно уточнить. Коды и формат ошибки
503 Временно недоступно. Коды и формат ошибки
HTTP Заголовок ответа Тип Описание
200 Cache-Control строка
200 Location строка
200 Idempotency-Replayed строка
202 Location строка
202 Retry-After строка
202 Idempotency-Replayed строка
202 Cache-Control строка
400 Cache-Control строка
401 Cache-Control строка
403 Cache-Control строка
404 Cache-Control строка
406 Cache-Control строка
409 Cache-Control строка
412 Cache-Control строка
413 Cache-Control строка
415 Cache-Control строка
422 Cache-Control строка
428 Cache-Control строка
429 Cache-Control строка
429 Retry-After строка
500 Cache-Control строка
503 Cache-Control строка

Каждый ответ содержит новый X-Request-Id в заголовке. Общие транспортные отказы и правила повтора действуют также при отказе до контроллера; см. ошибки.

У принятого POST Location и meta.operation_id указывают на журнал операции; ETag отсутствует. При повторе запроса сохраняются исходные data/meta, добавляется Idempotency-Replayed: true. Версии передавайте по назначению, указанному в описании ресурса.

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

Запускается из каталога комплекта после настройки переменных в быстром старте. Замените демонстрационные идентификаторы 101 и UUID идентификаторами доступных записей. $RESOURCE_VERSION берётся из GET владельца версии, описанного выше. Для нового действия сохраните новый ключ; для повтора используйте прежний.

curl --silent --show-error --globoff --request POST \
  "$API/maintenance-regulations/101/end" \
  --header "Authorization: Bearer $SERVICEAPP_TOKEN" \
  --header "Accept: application/json" \
  --header "Idempotency-Key: example:v1-maintenance-regulations-end:001" \
  --header "If-Resource-Version: $RESOURCE_VERSION" \
  --header "Content-Type: application/json" \
  --data-binary '@examples/requests/v1.maintenance-regulations.end.json'

POST /maintenance-regulations/{id}/sync

Согласование состава оборудования и индивидуальных планов.

Доступ. Разрешения подключения: maintenance_regulations:write. Права сотрудника: «ТОиР — Обслуживание → Изменение». Дополнительно действуют доступ к записям, мастерским, модулям и условия полей из описания ресурса выше.

Параметры

Имя Где Тип Обязательно null Ограничения
Authorization заголовок строка да нет Bearer <SERVICEAPP_TOKEN>
id путь строка да нет Шаблон: ^(?:[0-9]+)$
Idempotency-Key заголовок строка да нет не менее 1 символов; не более 128 символов; Шаблон: ^[A-Za-z0-9._:-]+$
If-Resource-Version заголовок строка да нет Unix-секунды updated_at регламента обслуживания.; не менее 1 символов; не более 128 символов; Шаблон: ^[A-Za-z0-9._~-]+$

Тело запроса

Content-Type: application/json. Тело обязательно.

Тело — пустой JSON-объект {}. Другие ключи не принимаются.

Ответы

HTTP Назначение и схема
200 Успех. Полная схема и пример
202 Принято, итог в журнале. Полная схема и пример
400 Некорректный запрос. Коды и формат ошибки
401 Требуется действующий Bearer. Коды и формат ошибки
403 Недостаточно допуска. Коды и формат ошибки
404 Не найдено или недоступно. Коды и формат ошибки
406 Недопустимое кодирование ответа. Коды и формат ошибки
409 Конфликт состояния или повтора. Коды и формат ошибки
412 Версия устарела. Коды и формат ошибки
413 Превышен размер. Коды и формат ошибки
415 Неподдерживаемый Content-Type. Коды и формат ошибки
422 Ошибка входных данных. Коды и формат ошибки
428 Нужно предусловие версии. Коды и формат ошибки
429 Лимит запросов, Retry-After. Коды и формат ошибки
500 Внутренняя ошибка, исход нужно уточнить. Коды и формат ошибки
503 Временно недоступно. Коды и формат ошибки
HTTP Заголовок ответа Тип Описание
200 Cache-Control строка
200 Location строка
200 Idempotency-Replayed строка
202 Location строка
202 Retry-After строка
202 Idempotency-Replayed строка
202 Cache-Control строка
400 Cache-Control строка
401 Cache-Control строка
403 Cache-Control строка
404 Cache-Control строка
406 Cache-Control строка
409 Cache-Control строка
412 Cache-Control строка
413 Cache-Control строка
415 Cache-Control строка
422 Cache-Control строка
428 Cache-Control строка
429 Cache-Control строка
429 Retry-After строка
500 Cache-Control строка
503 Cache-Control строка

Каждый ответ содержит новый X-Request-Id в заголовке. Общие транспортные отказы и правила повтора действуют также при отказе до контроллера; см. ошибки.

У принятого POST Location и meta.operation_id указывают на журнал операции; ETag отсутствует. При повторе запроса сохраняются исходные data/meta, добавляется Idempotency-Replayed: true. Версии передавайте по назначению, указанному в описании ресурса.

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

Запускается из каталога комплекта после настройки переменных в быстром старте. Замените демонстрационные идентификаторы 101 и UUID идентификаторами доступных записей. $RESOURCE_VERSION берётся из GET владельца версии, описанного выше. Для нового действия сохраните новый ключ; для повтора используйте прежний.

curl --silent --show-error --globoff --request POST \
  "$API/maintenance-regulations/101/sync" \
  --header "Authorization: Bearer $SERVICEAPP_TOKEN" \
  --header "Accept: application/json" \
  --header "Idempotency-Key: example:v1-maintenance-regulations-sync:001" \
  --header "If-Resource-Version: $RESOURCE_VERSION" \
  --header "Content-Type: application/json" \
  --data-binary '@examples/requests/v1.maintenance-regulations.sync.json'