POST - Создание нового действия
Эндпоинт POST /check-lists/actions
используется для добавления нового действия в систему контрольных списков. Это действие может быть включено в задачи, управляемые через приложение. В этой статье мы рассмотрим, как отправлять запросы, описывать параметры, обрабатывать успешные ответы и ошибки.
Детали запроса
- Эндпоинт:
POST /check-lists/actions
- Метод: POST
- Заголовки:
Authorization
: Требуется действующий токен доступа.Content-Type
:application/json
- Тело запроса: JSON-объект, содержащий детали действия.
Пример тела запроса
{
"name": "Устройство издает громкий звук",
"type": "BOOLEAN"
}
Разбор параметров
- name: (обязательный) Название действия.
- type: (обязательный) Тип действия. Возможные значения:
BOOLEAN
: Значение true/false.MEDIA
: Медиафайл, такой как изображение или видео.NUMBER
: Числовое значение.TEXT
: Текстовое описание.
Пример кода на Python
import requests
# URL эндпоинта
url = "https://api.targpatrol.com/v1/check-lists/actions"
# Заголовки
headers = {
"Authorization": "Bearer YOUR_API_TOKEN",
"Content-Type": "application/json",
}
# Тело запроса
data = {
"name": "Устройство издает громкий звук",
"type": "BOOLEAN"
}
# Отправка POST-запроса
response = requests.post(url, headers=headers, json=data)
# Обработка ответа
if response.status_code == 201:
action = response.json()
print("Действие успешно создано:", action)
else:
print(f"Ошибка: {response.status_code}, {response.json()}")
Успешный ответ
Если действие было успешно создано, API вернет объект с деталями нового действия:
{
"id": "873ac391-74cc-4cf7-97ac-27c4bed4f52b",
"name": "Устройство издает громкий звук",
"type": "BOOLEAN"
}
Параметры ответа:
- id: Уникальный идентификатор действия.
- name: Название действия.
- type: Тип действия.
Ошибки
Если возникла проблема с запросом, API вернет сообщение об ошибке, объясняющее проблему.
1. Ошибка валидации
Происходит, когда отсутствуют обязательные поля или они имеют недопустимые значения.
Пример ответа:
{
"message": "Ошибка валидации",
"code": "validation.failed",
"timestamp": "2023-03-07T05:57:59.315Z",
"details": [
{
"message": "не может быть пустым",
"code": "validation.notnull.failed",
"identifier": "type"
}
]
}
Решение: Убедитесь, что все обязательные поля указаны и правильно отформатированы.
2. Несоответствие типа контента
Происходит, если тело запроса имеет неправильный формат.
Пример ответа:
{
"message": "Несоответствие типов контента",
"code": "not.acceptable",
"timestamp": "2023-03-07T05:57:59.315Z"
}
Решение: Установите заголовок Content-Type
в значение application/json
и проверьте форматирование тела запроса.
3. Внутренняя ошибка сервера
Происходит из-за проблем на стороне сервера.
Пример ответа:
{
"message": "Внутренняя ошибка сервера",
"code": "internal.server.error",
"timestamp": "2023-03-07T05:57:59.315Z"
}
Решение: Повторите запрос позже или свяжитесь с технической поддержкой.
Заключение
Эндпоинт POST /check-lists/actions
является универсальным инструментом для создания пользовательских действий с гибкими параметрами. Следуйте приведенным примерам, чтобы правильно формировать запросы и обрабатывать ошибки.