PUT - Обновление местоположения по ID
Метод PUT /locations/{id}
позволяет обновлять информацию о существующем местоположении, идентифицируемом по уникальному ID. Эта операция поддерживает обновление таких полей, как имя, адрес, координаты и теги.
Формат запроса
HTTP-метод: PUT
Эндпоинт: /locations/{id}
Параметр пути:
- id: Уникальный идентификатор местоположения, которое требуется обновить (в формате UUID).
Пример тела запроса:
{
"name": "W001",
"address": "Walmart 11,197",
"latitude": 51.0966229,
"longitude": -138.491986,
"tags": [
"tag1"
]
}
Успешный ответ
Код ответа:
200 OK
Пример тела ответа:
{
"id": "638b90c5-7965-49ae-a02b-1b190cb216db",
"name": "W001",
"address": "Walmart 11,197",
"latitude": 51.0966229,
"longitude": -138.491986,
"tags": [
"tag1"
],
"graphicPlanIds": [
"3a1da1c9-0873-4bdc-b1f1-7343b29fdc27",
"14b8ec6b-8ee2-4533-aedd-b82691f19af2"
]
}
Возможные ошибки
400 Неверный запрос - Ошибка валидации
Возникает, если отсутствуют обязательные поля или в теле запроса содержатся некорректные данные.
Пример тела ответа:
{
"message": "validation failed",
"code": "validation.failed",
"timestamp": "2023-03-07T05:57:59.315Z",
"details": [
{
"message": "must not be null",
"code": "validation.notnull.failed",
"identifier": "type"
}
]
}
Решение:
- Убедитесь, что все обязательные поля присутствуют и содержат корректные данные.
404 Не найдено - Ресурс отсутствует
Возникает, если указанное id
местоположения не существует в базе данных.
Пример тела ответа:
{
"message": "resource wasn't found",
"code": "not.found",
"timestamp": "2023-03-07T05:57:59.315Z"
}
Решение:
- Проверьте корректность
id
.
406 Неприемлемый запрос - Несоответствие типа контента
Возникает, если заголовок Content-Type
или формат данных в запросе не поддерживается сервером.
Пример тела ответа:
{
"message": "mismatch in the types of content",
"code": "not.acceptable",
"timestamp": "2023-03-07T05:57:59.315Z"
}
Решение:
- Убедитесь, что заголовок
Content-Type
установлен вapplication/json
.
500 Внутренняя ошибка сервера
Возникает при неожиданной ошибке на сервере.
Пример тела ответа:
{
"message": "internal server error",
"code": "internal.server.error",
"timestamp": "2023-03-07T05:57:59.315Z"
}
Решение:
- Повторите запрос позже или обратитесь в техническую поддержку.
Заключение
Метод PUT /locations/{id}
позволяет гибко и точно обновлять данные о местоположении. Сервер предоставляет информативные сообщения об ошибках, помогающие пользователям исправлять проблемы, такие как отсутствие полей, неверные идентификаторы или неподдерживаемые форматы данных, обеспечивая удобный процесс обновления.