从事件开始
您可以使用Events API跟踪由不同应用程序或系统中的人触发的事件。事件可以是任何程序性事件,包括购买交易、网站访问或客户服务交互。
每个事件都与一个概要文件相关联,该概要文件标识触发该事件的人员。每个配置文件都与一个Zendesk用户相关联。亚博因此,每个事件也与Zendesk用户相关联。亚博
事件↔配置文件↔亚博Zendesk用户
免责声明: 亚博Zendesk提供本文仅用于教学目的。亚博Zendesk不支持或保证该代码。亚博Zendesk也不能提供第三方技术的支持,比如curl。
需求
在Zende亚博sk Suite计划中获取Zendesk Support帐户。它将自动启用以使用API。
你可以报名14天的试用帐户。如果您有兴趣成为Zendesk开发人员合作伙伴,您可以将您的试用帐户转亚博换为赞助Zendesk支亚博持帐户
您还需要帐户中的代理或管理权限才能使用API。
用户故事
你为一家虚构的公司Acme工作。您的团队的任务是为Acme构建事件服务。你会得到下面的故事:
作为一名Acme成功经理,我希望在与客户联系之前看到客户在Acme应用程序中采取的行动。
Acme有一个Zend亚博esk帐户。您决定使用Zendesk中包含的Events API来存储和访问Acme客户事件,而不是配置一个新的数据库并从头构建一些东西。亚博
创建事件
你通过将事件和触发它的人的信息发布到以下API端点来创建一个事件:
POST / api / v2 / user_profiles /事件
API期望配置文件每个事件。概要文件的作用是将Acme系统中的人员与Zendesk中的用户关联起来。亚博
因为事件起源于Acme系统,所以您将把每个事件与客户的Acme标识符(例如电子邮件地址)关联起来。如果API在Zendesk中发现一个用户共享配置文件中亚博列出的标识符标识符
数组时,它自动将新的概要文件(以及事件)与该用户关联起来。如果API找不到共享任何标识符的Zendesk用亚博户,它会创建一个名为“sunshine_user”的匿名Zendesk用户,并将配置文件与该用户关联。
你不需要直接将事件与Zendesk用户关联,尽管你可以通过以下请求:亚博
POST / api / v2 /用户/ {user_id} /事件
自己试试吧
创建一个事件
从应用程序中获取事件。
Acme应用程序返回以下事件数据:
:“event_name 2 fa_enabled”
"event_desc": "客户启用的双因素身份验证"
“passcode_pref”:“短信”
查询用户管理系统以获取触发事件的人的标识符。
系统返回该人员的以下标识符:
“电子邮件”:“(电子邮件保护)"
在JSON对象中插入事件和标识符数据,格式如下:
{
“配置文件”:{
“源”:“极致”,
“类型”:“客户”,
“标识符”:[
{
“类型”:“电子邮件”,
“价值”:"(电子邮件保护)"
}
]
},
“事件”:{
“源”:“极致”,
“类型”:“2 fa_enabled”,
“描述”:“客户支持的两因素身份验证”,
“属性”:{
“passcode_preference”:“短信”
}
}
}
API不接受数值。所有数字必须为字符串。例如:“16505556789”。
将JSON对象保存在一个名为event.json.
在命令行界面中,导航到包含event.json.
在命令行中执行curl命令:
旋度https://{子域名}.亚博.com/api/v2/user_profiles/事件\
-d @event.json \
-H“application / json内容类型:\
-v-u{email_address}:{密码}-X帖子
确保将占位符值替换为您自己的。
Windows用户:在这个例子和其他例子中,用插入号(\^)字符替换连续行反斜杠(\)。
示例响应
{“状态”:“收到”}
获取事件
在创建一个或多个与客户关联的事件之后,您可以在Acme系统中使用客户的电子邮件标识符访问事件,这是您在客户的概要文件中记录的。您还可以使用客户的Zendesk用户id(如果您知道的话)或用户配置文件的id访问事件。亚博
您决定使用以下端点获取带有客户的Acme标识符的事件(因为您已经知道它并将其记录在配置文件中):
/ api / v2 / user_profiles /事件吗?标识符= {identifier_query}
你用一个标识符的查询.看到使用配置文件中的标识符查询.在概要文件中记录的Acme系统中的客户标识符是电子邮件地址(电子邮件保护).因此,您的标识符查询应该如下所示:
acme:顾客:电子邮件:(电子邮件保护)
每个标识符查询必须包括以下信息:
- 概要文件源(“acme”)
- 概要文件类型(“客户”)
- 标识符类型("email")
- 标识符值("(电子邮件保护)")
自己试试吧
获取一个事件
在命令行中执行curl命令:
旋度“https://{子域名}.zendes亚博k.com/api/v2/user_profiles/events ?标识符= acme:顾客:电子邮件:(电子邮件保护)"\
-v-u{email_address}:{密码}
确保将占位符值替换为您自己的。还要确保URL用引号括起来。
示例响应
状态:200好吧
{
“事件”:[
{
“id”:“5 c42123e98326c0001b0b25c”,
“类型”:“2 fa_enabled”,
“源”:“极致”,
“描述”:“客户支持的两因素身份验证”,
“created_at”:“2020 - 03 - 30 - t04:37:34.851z”,
“received_at”:“2019 - 03 - 30 - t04:37:34.851z”,
“属性”:{
“passcode_preference”:“短信”
}
}
],
“链接”:[
{
“下一个”:""
}
]
}
下一个步骤
您在Acme中跟踪了由客户触发的事件,然后在Acme中使用客户的标识符来检索它。
继续试验API。为不同的用户创建不同类型的事件。构建一个小型应用程序,使用事件数据向客户交付一些价值。
如果您正在构建Zendesk应用程序,您可亚博以获取与用户对象(如票据请求者)关联的事件。看到访问Zendesk应用程序中的事件亚博.
有关开发人员指南,请参见事件API开发人员指南.
有关参考文档,请参见事件API.