我正在使用 ZenDesk API ( https://developer.zendesk.com/rest_api/docs/core/introduction ) 将 ZenDesk 设置与另一个客户端数据库同步。当我尝试删除组织时,我收到一个似乎表明已进行更新调用的响应。
根据文档(https://developer.zendesk.com/rest_api/docs/core/organizations#delete-organization),调用应该是 DELETE /api/v2/organizations/{id}.json 其中 {id} 是组织的 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 提取,我不确定该代码是否会有所帮助。