Я использую ZenDesk API (https://developer.zendesk.com/rest_api/docs/core/introduction) синхронизировать установку ZenDesk с другой клиентской базой данных. Когда я пытаюсь удалить организацию, я получаю ответ, который, кажется, говорит об обновлении.
Согласно документации (https://developer.zendesk.com/rest_api/docs/core/organizations#delete-organization) вызов должен быть УДАЛЕНО /api/v2/organizations/ndomid‹.json, где {id} — это идентификатор организации.
Я написал код, который считаю верным, и проверил это с помощью Fiddler. Звонок поступает на Fiddler как:
DELETE /api/v2/organizations/39005971.json HTTP/1.1
Вид необработанного запроса показывает (с изменениями):
DELETE https://<redacted>.zendesk.com/api/v2/organizations/39005971.json HTTP/1.1
Authorization: Basic <redacted>
Host: <redacted>.zendesk.com
Accept: */*
Content-Type: application/json
и ответ возвращается как:
{
"error":"RecordInvalid",
"description":"Record validation errors",
"details":{
"name":[
{
"description":"Name: has already been taken",
"error":"DuplicateValue"}
]
}
}
Это тот же ответ, который дается, если вы пытаетесь вставить организацию с тем же именем, что и существующая. Исходя из документации, основное различие между удалением и обновлением записи состоит в том, что запросы на удаление используют DELETE, а обновления используют PUT — URL-адрес конечной точки одинаков.
У кого-нибудь есть предложения? Я могу предоставить исходящий код (в PHP), если это необходимо, однако, поскольку Fiddler принимает запрос как правильно отформатированный DELETE, я не уверен, что этот код поможет.
Я на самом деле работаю в Zendesk и выяснил это лично. Вы, похоже, столкнулись с ошибкой, связанной с максимальным количеством символов, которое может иметь название организации. Вероятно, у вас была пара организаций, имена которых были длиной более 255 символов, а после сокращения до 255 имена были одинаковыми. Теперь возникают проблемы с проверкой. Я действительно сожалею об этом!
Я бы отправил запрос https://support.zendesk.com/hc/en-us/requests/new и мы исправим эту проблему для вас!
Других решений пока нет …