关于REST API
应用程序接口(API)用于集成各种应用程序,促进它们之间的数据共享。可与任何能通过 HTTP 协议发送数据的第三方(外部)应用程序或网络服务实现集成。
通过 API,可以从其他应用程序或网络服务访问 ServiceDesk Plus 操作。就请求操作而言,它提供了一种方便的方法,无需登录应用程序即可直接向 ServiceDesk Plus 提出请求(默认电子邮件或web表单除外)。如有需要,您还可以选择创建自己的 Web 表单,以便使用 API。
REST API 的用途可以借助一个场景来解释。
场景: 以安装在网络上的网络监控工具(外部应用程序)为例。一般情况下,当网络监控工具发出警报时,会向 ServiceDesk Plus 应用程序发送电子邮件通知。技术人员应在 ServiceDesk Plus 中手动填写字段值(优先级、级别、影响、类别等)。这种机制非常耗时,最终会导致服务台工作效率下降。 有了 REST API,您就可以自动执行此工单流程。触发警报时,网络监控工具会提供现场详细信息,并通过 HTTP 协议在 ServiceDesk Plus 中自动生成工单。工单 ID 将发回网络监控工具,以便对请求执行任何进一步操作。 警报原因解决后,ServiceDesk Plus 将调用监控工具提供的 URL(回调 URL)。该 URL 的作用是向外部应用程序发出通知,说明工单已解决。如果未提供该 URL(回调 URL),ServiceDesk Plus 将不会对工单执行任何其他操作。当 ServiceDesk Plus 调用回调 URL 时,网络监控工具可根据 URL 调用执行 “任何 ”内部操作。但是,预期应用程序将在其端清除警报(作为工单提出)。 注意:请注意,回调 URL 仅适用于创建和编辑请求。 |
使用 REST API 执行的操作基于'operation' 参数,并通过 HTTP POST 方法发送到 url。url 格式如下所示
http://<servername>:<port number>/api/v3/<module>
ServiceDesk Plus 应用程序的身份验证基于密钥,即每次操作都会随 url 一起发送一个 API 密钥。该密钥基于技术人员,可为具有登录权限的技术人员生成。技术人员的角色也在考虑之列,因此密钥只对技术人员的角色有效。密钥生成后,将手动传输到集成应用程序,以便应用程序使用密钥进行进一步的 API 操作。如果密钥无效(密钥过期或技术人员登录被禁用),则操作失败,错误信息将传播到集成应用程序。
注意
| 1. 请注意,只有管理员才有权为有登录权限的技术人员生成身份验证密钥。 2. 如果技术人员的登录被禁用,则 API 密钥将被删除。 3. 可以根据提供给技术人员的角色执行操作。 |
ServiceDesk Plus 与集成应用程序之间通过 API 密钥进行身份验证。 具有 ServiceDesk Plus 应用程序登录权限的技术人员会生成一个唯一的密钥。
单击用户区块下的管理员 -> 技术人员图标。
如果要为现有技术人员生成 API 密钥,请单击技术人员旁边的编辑图标。如果要为新技术员生成 API 密钥,请单击添加新技术员链接,输入技术员详细信息并提供登录权限。
单击 API 密钥详细信息块下的生成链接。您可以使用日历图标选择密钥过期的时间范围,或者直接永久保留同一密钥。如果已为技术人员生成密钥,则会出现重新生成链接。
上图中的密钥是为现有技术人员生成的。 为密钥选择了一个时间范围,显示日期、月份、年份和密钥过期时间(小时和分钟)。
REST API 支持的操作可分为以下几种:
请求操作:添加新请求、提取请求、指派请求、获取请求、获取会话、添加附件、获取请求通知以及添加/编辑/获取解决方案。
对特定请求进行操作:
编辑、关闭、删除和查看现有请求。
为请求添加新备注,编辑、删除和查看现有备注。
为请求添加工作日志,编辑、删除和查看现有工作日志。
获取与请求相关的会话
为请求添加附件
添加、编辑并获取请求的解决方案。
接收/指派请求。
回复请求
获取与请求相关的通知
与技术人员相关的动作:导入技术人员档案(所有技术人员的档案)并为其指派动作。
请求人相关动作:导入请求人档案(所有请求人)并处理他们的请求。
与管理员相关的动作:导入特定分类/所有分类、特定子类别/所有子类别、特定项目/所有项目、特定状态/所有状态、特定级别/所有级别、特定模式/所有模式、特定紧急程度(所有紧急程度)、特定优先级/所有优先级、特定请求模板/所有请求模板和所有支持组。
不再支持 Servlet API。