POST - Создание новой проблемы
Эндпоинт POST /issues
позволяет создать новую проблему с указанными параметрами, включая такие детали, как тип, приоритет, статус, локация и другие связанные данные.
Параметры запроса
Параметр | Описание | Тип | Обязательный |
---|---|---|---|
id | Уникальный идентификатор проблемы. | UUID | Нет |
name | Название проблемы. | string | Да |
description | Описание проблемы. | string | Нет |
typeId | Идентификатор типа проблемы. | UUID | Да |
status | Статус проблемы (OPEN, RESOLVED). | string | Да |
priority | Приоритет проблемы (NORMAL, MAJOR, CRITICAL). | string | Да |
assigneeId | Идентификатор назначенного сотрудника. | UUID | Нет |
seen | Флаг, указывающий, была ли проблема просмотрена. | boolean | Нет |
untilDate | Дата, к которой проблема должна быть решена. | ISO8601 | Нет |
locationId | Идентификатор локации проблемы. | UUID | Нет |
pointId | Идентификатор конкретной точки внутри локации. | UUID | Нет |
email | Электронный адрес для уведомлений. | string | Нет |
mediaIds | Список идентификаторов медиафайлов, связанных с проблемой. | array(UUID) | Нет |
lastModifiedAt | Временная метка последней модификации проблемы. | ISO8601 | Нет |
createdBy | Идентификатор пользователя, создавшего проблему. | UUID | Да |
Пример запроса
URL:
https://api.targpatrol.com/v1/issues
Тело запроса:
{
"name": "Issue",
"description": "Description",
"typeId": "cfd47385-fc8e-4727-a1b5-383e1842af1b",
"status": "OPEN",
"priority": "MAJOR",
"assigneeId": "46ed469f-38f9-44fc-b6d5-9ec34f1e03cd",
"seen": false,
"untilDate": "2023-12-31T00:00:00.000Z",
"locationId": "663745ce-daf9-4c0b-8616-e12ed40e6a34",
"pointId": "59623848-fb58-4e19-b686-724d42d53c95",
"email": "[email protected]",
"mediaIds": [
"44100168-11b1-4396-b863-96872820ab5f"
],
"createdBy": "d3b4eb7b-567b-4e09-8646-09b648bf3bd6"
}
Пример успешного ответа
Код состояния: 201 Created
Тело ответа:
{
"id": "4adbc000-3095-42f3-bddd-d8a1da1ab2bd",
"name": "Issue",
"description": "Description",
"typeId": "cfd47385-fc8e-4727-a1b5-383e1842af1b",
"status": "OPEN",
"priority": "MAJOR",
"assigneeId": "46ed469f-38f9-44fc-b6d5-9ec34f1e03cd",
"createdBy": "d3b4eb7b-567b-4e09-8646-09b648bf3bd6"
}
Примеры ошибок
Ошибка валидации
Код состояния: 400 Bad Request
Тело ответа:
{
"value": {
"message": "validation failed",
"code": "validation.failed",
"timestamp": "2023-03-07T05:57:59.315Z",
"details": [
{
"message": "must not be blank",
"code": "validation.notblank.failed",
"identifier": "name"
}
]
}
}
Несоответствие типа содержимого
Код состояния: 406 Not Acceptable
Тело ответа:
{
"message": "mismatch in the types of content",
"code": "not.acceptable",
"timestamp": "2023-03-07T05:57:59.315Z"
}
Внутренняя ошибка сервера
Код состояния: 500 Internal Server Error
Тело ответа:
{
"message": "internal server error",
"code": "internal.server.error",
"timestamp": "2023-03-07T05:57:59.315Z"
}
Заключение
Эндпоинт POST /issues
используется для создания записей проблем и может быть настроен в зависимости от бизнес-логики, включая проверку данных и правила назначения. Убедитесь, что все обязательные параметры правильно указаны, чтобы избежать ошибок.