Zendesk API - 创建工单给出了错误的工单状态

Zendesk API - Creating a ticket gives wrong ticket status

Zendesk API 文档指出,当通过 API 创建工单时,status 字段可以设置为 "new" (https://developer.zendesk.com/rest_api/docs/core/tickets#create-ticket),但是,如果我使用以下命令调用 API 并指定 status 的值,它会创建一个标记,但仍会将 status 设置为 open 的默认值:

curl -u <username>/token:<api_token> https://<subdomain>.zendesk.com/api/v2/tickets.json -d '{"ticket": {"subject":"test subject", "comment": { "body": "test body" }, "status": "new" } }' -H "Content-Type: application/json" -v POST

响应正文的相关部分是:

"ticket": { "url": "https://<subdomain>.zendesk.com/api/v2/tickets/60.json", "id": 60, "external_id": null, "via": { "channel": "api", "source": { "from": {}, "to": {}, "rel": null } }, "created_at": "2016-05-05T13:30:01Z", "updated_at": "2016-05-05T13:30:01Z", "type": null, "subject": "test subject", "raw_subject": "test subject", "description": "test body", "priority": null, "status": "open", "recipient": null, "requester_id": 5917202647, "submitter_id": 5917202647, "assignee_id": 5917202647, "organization_id": 3740197137, "group_id": 28473587, "collaborator_ids": [], "forum_topic_id": null, "problem_id": null, "has_incidents": false, "due_at": null, "tags": [], "custom_fields": [], "satisfaction_rating": null, "sharing_agreement_ids": [], "fields": [], "brand_id": 1090897, "allow_channelback": false }

我是不是做错了什么?

嗯,我进行了相同的 API 调用(使用我的 creds/subdomain)并且成功了,将 "status" 设置为我选择的任何选项(新的、待定的、已解决的)。

您确认您的所有凭据和子域都已正确输入吗?此外,请检查您 Zendesk 帐户中的 API 设置。尝试创建一个新令牌并保存设置。

如果 API 令牌仍然无效,可以尝试使用密码进行身份验证或通过 curl 以外的方式发出请求。

事实证明,如果您将工单分配给只有一个 member/agent 的组,工单会自动分配给该单独的代理。因此,任何已分配给特定代理的工单将自动设置为打开而不是新工单。

因为我使用的是测试子域,所以我是唯一的代理,所以它会自动将状态从 "new" 更新到 "open"。