活动订阅管理

访问控制(JWT)

事件订阅服务(ESS)API使用JSON Web令牌(JWT)使用标准SAP Concor OAuth2框架进行身份验证和授权。

身份验证是通过使用代表事件订阅者的JWT来完成的。这可以通过调用客户凭据授权类型使用您的OAuth2凭据。这笔补助金产生的JWT将有一个JWT类型属于应用程序在哪里你的应用ID主题令牌。

对于授权,应用程序需要包含范围events.topic.read.以访问ESS API。JWT将在客户端凭据授予期间继承此作用域,然后由ESS API进行检查。

在拨打ESS API时通过帖子标题中的JWT:

授权:持票人

客户端凭据JWT的生命周期为60分钟,只能通过客户端凭据授予再次获得。

浏览可用主题

在创建任何订阅之前,您需要验证您是否有足够的主题访问。如果该请求返回空响应,则需要使用SAP Confur联系方式与OAuth2应用程序设置正确的范围。

要求

获取/活动/ v4 /主题

回答

[“public.test”]

创建订阅

要创建您需要的订阅:

  • 知道并通过正确的范围具有足够的访问主题。
  • 获取接收端点运行,查看端点要求
  • 提出订阅的唯一名称(ID)。订阅名称是全局唯一的,如果名称已在使用中,则会收到错误。
  • 将过滤器设置为.*(regexp语法),您可以稍后使用它来过滤掉不需要的事件类型。

要求

放/事件/ v4 /订阅/ webhook
{“ID”“我的独特订阅-ID”“筛选”“。*”“话题”“public.test”“webHookConfig”{“终点”“https://www.concuress.com/sub/my-valid-endpoint”}}

请求参数

姓名 类型 总体安排 描述
ID 细绳 小写字母,数字,“。”和 ”-” 您的独特订阅名称。建议您使用自我解释的东西。例如:My-company.my-scenario.env.version
滤器 细绳 正则表达式 允许您将传送事件的数量减少到某种类型。示例,设置为赛事创建了只会获得此事件类型,将跳过其他事件类型。设置为“。*”以接收主题中的所有事件。
话题 细绳 - 主题,您订阅的事件流。
终点 细绳 URL. 将在其中传递事件的端点。

回答

{“信息”“订阅”My-unique-subscription-id“已成功保存”}

验证您的订阅

您始终可以请求订阅的配置。您可能会注意到,您的订阅包含一些出于安全原因而无法修改的参数,但您可以使用它们进行故障排除。

  • applicationid.-将应用程序标识为该订阅的所有者。
  • CompaniDs.- 允许您的申请访问其数据的公司的UUID列表,描述了将公司连接到您的应用程序的过程在这里
  • 组和范围 - 用于复杂的访问控制方案。

要求

获取/活动/ v4 /订阅/ my-unique-subscription-id

回答

[{“ID”“我的独特订阅-ID”“话题”“public.test”“筛选”“。*”“webHookConfig”{“终点”“https://www.concuress.com/sub/my-valid-endpoint”},“应用程序ID”“dabd27f0-23e7-415d-b5e5-19a7dbe4fb4d”“范围”“群体”[],“公司”[]}]

响应参数

姓名 类型 总体安排 描述
ID 细绳 小写和。- \ D. yyour独特的订阅名称。建议您使用自我解释的东西。例如:My-company.my-scenario.env.version
滤器 细绳 正则表达式 允许您将传送事件的数量减少到某种类型。示例,设置为赛事创建了只会获得此事件类型,将跳过其他事件类型。设置为“。*”以接收主题中的所有事件。
话题 细绳 - 主题,您订阅的事件流。
终点 细绳 URL. 将在其中传递事件的端点。
applicationid. 细绳 uuid. 用于生成JWT的合作伙伴应用程序。应用程序用于建立订阅所有者。
CompaniDs. 列表 uuids列表 已连接到允许传递事件的合作伙伴应用程序的公司UUID列表。
列表 - 保留用于将来的支持方案。
范围 细绳 - 保留用于将来的支持方案。

浏览现有订阅

如果您碰巧忘记了订阅名称/ ID,则可以通过调用以下端点来检索所有订阅:

要求

获取/活动/ v4 /订阅

回答

[{“ID”“我的第二个独特的订阅ID”“话题”“public.test”“筛选”“。*”“webHookConfig”{“终点”“https://www.concuress.com/sub/my-second-valid-endpoint”},“应用程序ID”“dabd27f0-23e7-415d-b5e5-19a7dbe4fb4d”“范围”“群体”[],“公司”[]},{“ID”“我的独特订阅-ID”“话题”“public.test”“筛选”“。*”“webHookConfig”{“终点”“https://www.concuress.com/sub/my-valid-endpoint”},“应用程序ID”“dabd27f0-23e7-415d-b5e5-19a7dbe4fb4d”“范围”“群体”[],“公司”[]}]

删除您的订阅

要求

删除/events/v4/subscriptions/my唯一订阅id

回答

{“信息”“订阅”My-unique-subscription-id“标记为删除”}

请求示例

标题

放/ v4 /订阅/ webhook http / 1.1内容类型:应用程序/ json concur-correlationID:唯一和可追踪授权:持票人eyj0e ***** my-secret-jwt-here ********接受:* / * cache-control:no-cache主机:www-us.api.concursolutions.com接受编码:gzip,缩小连接:保持活力

身体

{“ID”:“my-unique-subscription-examplex”,“筛选”:“。*”,“主题”:“public.test”,“webhookconfig”:{“端点”:“https:// www。concuress.com/sub/my-unique-endpoint“}}

卷曲

curl -x put \ https://www-us.api.concursolutions.com/events/v4/subscriptions/webhook \ -h'接受:* / *'\ -h'接受编码:gzip,deflate'\  -H'授权:持票人eyj0e ***** my-secret-jwt-here ********'\ -h'缓存控制:no-cache'\ -h'concur-correlationId:唯一的-and-trackable' \ -H 'Connection: keep-alive' \ -H 'Content-Type: application/json' \ -H 'Host: www-us.api.concursolutions.com' \ -H 'cache-control: no-cache' \ -d '{ "id": "my-unique-subscription-example-2", "filter": ".*", "topic": "public.test", "webHookConfig": { "endpoint": "https://www.concuress.com/sub/my-unique-endpoint" } }'

在本页