在servicem8中设置webhook

时间:2016-07-05 03:12:24

标签: webhooks

我不确定在servicem8中设置webhook的位置/方式。我想在作业状态从报价更改为工单时触发更新。 我在这里阅读了文档 http://developer.servicem8.com/docs/platform-services/webhooks/ 但我不清楚这个过程。 欢迎任何建议!

1 个答案:

答案 0 :(得分:1)

只有在使用访问令牌使用OAuth身份验证时才支持ServiceM8中的Webhooks,因此您需要注册免费的开​​发者帐户才能获得OAuth客户端ID和密码。如果您还没有这样做,请按照此处列出的步骤操作: http://developer.servicem8.com/docs/the-basics/public-applications/

使用OAuth身份验证后,订阅“作业”webhook可在作业数据发生变化时接收通知。通过POST到https://api.servicem8.com/webhook_subscriptions

来完成此操作

http://developer.servicem8.com/docs/platform-services/webhooks/所述,订阅请求应包括:

  • 对象= '工作'
  • 字段= '状态'
  • callback_url - 将此设置为您希望接收通知的网址

一旦您订阅了webhook,您将立即收到回拨网址的请求,以质疑您拥有此网址。该请求将包含URL参数mode = subscribe和challenge值。要成功确认质询请求,您需要返回200结果,并将响应正文设置为质询代码。

如果您成功确认质询代码请求,则会在您的callback_url上开始接收有关ServiceM8帐户中作业数据更改的通知。您收到的通知将包含类似于

的JSON数据
{
"object": "job",
"entry": {
    "changed_fields": ["status"],
    "time": "2015-01-01 00:00:00",
    "uuid": "de305d54-75b4-431b-adb2-eb6b9e546013"
},
"resource_url": "https://api.servicem8.com/api_1.0/job/de305d54-75b4-431b-adb2-eb6b9e546013.json"
}`