-
Notifications
You must be signed in to change notification settings - Fork 53
Documentation updates for APIs related to webhook changes #1546
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
d47ac01
034cd6e
0008dc8
b5d4027
523b130
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -85,8 +85,5 @@ | |
"numberOfDaysToRetain": 30 | ||
} | ||
} | ||
}, | ||
"webhookIds": [ | ||
"00000000-0000-0000-0000-000000000042" | ||
] | ||
} | ||
} |
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -505,17 +505,17 @@ For example, if a password needs to be stored in an external configuration and t | |
|
||
=== Webhooks | ||
|
||
[WARNING.warning] | ||
==== | ||
This feature is removed as of version 1.37.0. | ||
==== | ||
|
||
The Webhooks tab allows you to select one or more webhooks to be used for this Application. In this example screenshot either no webhooks have been configured, or no application specific webhooks are configured. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Should a version of this section be added to the Tenant core concepts page? I'm not sure whether there was additional webhook configuration added at the tenant level. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. In the upcoming PR |
||
|
||
image::core-concepts/application-webhooks-none.png[No Application Webhooks,width=1200,role=bottom-cropped] | ||
|
||
In most cases you will not need to configure this panel. Only a few specific events are considered application specific, and when a webhook is configured to be application specific, only those events will be sent to the webhook. | ||
|
||
[WARNING.warning] | ||
==== | ||
In a future release this configuration tab will be removed. | ||
==== | ||
|
||
This example screenshot shows one Application specific webhook selected. This option will be visible if at least one webhook is configured as application specific. | ||
|
||
image::core-concepts/application-webhooks-selected.png[Application Webhooks Selected,width=1200,role=bottom-cropped] |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,5 @@ | ||
This is a tenant or application scoped event. It can be sent to all applications in a tenant or to one or more specified applications. It will also be sent to all tenants that are listening for this event. A [field]#tenantId# will be present in the payload to allow for filtering. | ||
Prior to version 1.37.0 this was a tenant or application scoped event. It can be sent to all applications or to one or more specified applications. | ||
|
||
The ability to limit the generation of an event for only certain applications is legacy functionality and may be modified in the future. You almost certainly want to enable this event at the tenant level and optionally filter on the [field]#applicationId# when consuming the event. | ||
The ability to limit the generation of an event for only certain applications is legacy functionality and is removed as of version 1.37.0. In earlier versions, you almost certainly want to enable this event at the tenant level and optionally filter on the [field]#tenantId# when consuming the event. | ||
|
||
In version 1.37.0 and later this is a tenant scoped event. It can be sent to all tenants or to one or more specified tenants. Those tenants will only be sent events related to their tenant. You can optionally also filter on the [field]#applicationId# when consuming the event. |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1,3 @@ | ||
This is a tenant scoped event. This event will be sent to all tenants that are listening, but will contain a [field]#tenantId# to allow for filtering. | ||
Prior to version 1.37.0 this was a tenant scoped event. This event will be sent to all tenants that are listening, but will contain a [field]#tenantId# to allow for filtering. | ||
|
||
In version 1.37.0 and later this is also a tenant scoped event. It can be sent to all tenants or to one or more specified tenants. However, those tenants will not be sent events for other tenants, but only events related to themselves. |
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -17,6 +17,7 @@ Additional headers may be added to the request by adding headers to the Webhook | |
* <<Responses>> | ||
* <<Configuration>> | ||
** <<Application Scoped Events>> | ||
** <<Tenant Scoped Events>> | ||
** <<Example Configuration>> | ||
* <<Retries>> | ||
** <<Retry Examples>> | ||
|
@@ -41,6 +42,16 @@ If you have multiple tenants listening for the same event, they will all receive | |
|
||
include::docs/v1/tech/events-webhooks/_application-webhooks-warning.adoc[] | ||
|
||
=== Tenant Scoped Events | ||
|
||
As of version 1.37.0, all events can be tenant scoped except instance events: | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. In the admin UI we are calling these system events. We could use the same wording here, or explain what an instance event is. |
||
|
||
* `audit-log.create` | ||
* `create-log.create` | ||
* `kickstart.success` | ||
|
||
If you want to get events for certain applications, the preferred method is to send events for a tenant. Filter on the `applicationId` when consuming the event and discard events from any applications not of interest. | ||
|
||
=== Example Configuration | ||
|
||
Here's an example scenario. You have two tenants, Pied Piper and Hooli. You have configured two webhooks listening for `user.create` events. One updates a separate user database, the other records information in an analytics system. Both the Pied Piper and Hooli tenants have the `user.create` event enabled in their webhook configurations. | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should webhook request/response descriptions for
tenantIds
be updated to reference theapplicationIds
field to help people on older versions find the correct field?There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If you mean in the JSON example, then from what I can see, the JSON always represents current state and the file descriptions provide information about prior deprecated fields.