3

这里很少有关于 Calendly 的帖子,所以希望有人可以帮助解决这个问题。下面是我正在使用的代码,问题是 Calendly 只返回 webhook 订阅数据,而不是客户安排的实际约会。

我想接收他们页面上描述的数据:https ://developer.calendly.com/docs/sample-webhook-data但我只得到 webhook 订阅数据,而不是预定的约会。

$url = ' https://calendly.com/api/v1/hooks ';
$webhook_url = '我的网址在这里';
$curl_data = 'url='.$webhook_url.'&events[]=invitee.created&events[]=invitee.canceled';
$ch = curl_init();
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_POST,1);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "GET");
curl_setopt($ch, CURLOPT_POSTFIELDS,$curl_data);
curl_setopt($ch, CURLOPT_HTTPHEADER, array( "X-TOKEN: MY TOKEN ID HERE"
));
$result = curl_exec($ch);
回显$结果;


//print_r(json_decode($result, true));<br><br>

$content = trim(file_get_contents("php://input"));<br>
$decoded = json_decode($content, true);<br><br>

echo $decoded;<br>

{"data":[{"type":"hooks","id":380871,"attributes":{"url":"MY URL HERE","created_at":"2019-04-17T11:07:36Z ","events":["invitee.created","invitee.canceled"],"state":"active"}}]}

4

1 回答 1

4

设置 webhook 后,Calendly 将向您的 webhook URL 发送 POST 请求。换句话说,一旦受邀者预订或取消邀请,您的 webhook URL 将收到 Calendly 针对该特定事件的有效负载。

Webhooks有点不同API endpoints。API 在您发送请求时提供数据;例如,“给我一个我所有用户的列表”。相反,webhook 充当某个主题的侦听器并且是基于事件的;例如,“当受邀者预订会议时告诉我(并告诉我有关会议的情况)。

您是否希望获得所有受邀者/会议的列表?如果是这样,我们现在没有 API 端点,但我们很想听听您在寻找什么以及我们可以如何提供帮助。您可以在此处与我们联系(请参考我的姓名,我将根据您的请求进行同步)。

于 2019-04-17T20:18:11.957 回答