You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: site/docs/v1/tech/events-webhooks/index.adoc
+30-26Lines changed: 30 additions & 26 deletions
Original file line number
Diff line number
Diff line change
@@ -131,38 +131,18 @@ The password to be used for HTTP Basic Authentication.
131
131
The SSL certificate in PEM format to be used when connecting to the webhook. When provided an in memory keystore will be generated in order to complete the `https` connection to the webhook.
When this toggle is enabled, all events will be sent to this webhook, events for a specific application.
147
-
148
-
Applications::
149
-
When the [field]#All applications# is disabled, this field will be exposed. Select the application for which you would like to receive events.
150
-
+
151
-
Not all events are considered application specific and selecting an application will limit you to only receiving application events. The following events are considered Application events:
152
-
+
153
-
- `jwt.public-key.update`
154
-
- `jwt.refresh-token.revoke`
155
-
- `user.action`
156
-
+
157
-
In most cases you will want to use the [field]#All applications# configuration.
158
-
159
134
=== Tenants
135
+
[NOTE.since]
136
+
====
160
137
Available since 1.37.0
138
+
====
161
139
162
140
Here's the configuration when a webhook will be sent for all tenants.
141
+
163
142
image::webhook-settings-tenants.png[Webhook Settings - All applications,width=1200,role=shadowed bottom-cropped top-cropped]
164
143
165
144
Here's the configuration when a webhook should be sent for certain tenants.
When this toggle is enabled, all events will be sent to this webhook, events for a specific application.
192
+
193
+
Applications::
194
+
When the [field]#All applications# is disabled, this field will be exposed. Select the application for which you would like to receive events.
195
+
+
196
+
Not all events are considered application specific and selecting an application will limit you to only receiving application events. The following events are considered Application events:
197
+
+
198
+
- `jwt.public-key.update`
199
+
- `jwt.refresh-token.revoke`
200
+
- `user.action`
201
+
+
202
+
In most cases you will want to use the [field]#All applications# configuration.
203
+
200
204
== Test a Webhook
201
205
202
206
Once you have a webhook up and running and configured to receive JSON events from FusionAuth you may wish to test it by sending different events. FusionAuth has built in a test capability to allow you to construct any event and send it to your webhook.
Copy file name to clipboardExpand all lines: site/docs/v1/tech/events-webhooks/writing-a-webhook.adoc
+11-11Lines changed: 11 additions & 11 deletions
Original file line number
Diff line number
Diff line change
@@ -18,8 +18,8 @@ Additional headers may be added to the request by adding headers to the Webhook
18
18
* <<Configuration>>
19
19
** <<Application Scoped Events>>
20
20
** <<Tenant Scoped Events>>
21
-
** <<Example Configuration Before 1.37.0>>
22
21
** <<Example Configuration After 1.37.0>>
22
+
** <<Example Configuration Before 1.37.0>>
23
23
* <<Retries>>
24
24
** <<Retry Examples>>
25
25
* <<Calling FusionAuth APIs In Webhooks>>
@@ -55,27 +55,27 @@ As of version 1.37.0, all events can be tenant scoped except instance events:
55
55
56
56
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.
57
57
58
-
=== Example Configuration Before 1.37.0
58
+
=== Example Configuration After 1.37.0
59
59
60
-
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.
60
+
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 and both webhooks are selected to receive events from both tenants.
61
61
62
62
In this scenario, each webhook will receive data when a user is created in either tenant, Pied Piper or Hooli.
63
63
64
-
Transaction settings can be managed at the tenant level, but the webhooks receiving an event are not. Any webhook that is configured to receive the `user.create` event will play a role in the transaction. It is not possible, for example, to require only the analytics webhook to succeed for the Pied Piper tenant and only the user database sync to succeed for the Hooli tenant. If you need this level of granularity, run different FusionAuth instances.
65
-
66
-
If you are separating your staging and production environments using tenants, webhooks will cross those boundaries. While you can filter on the tenant in the webhook itself, if you register both a production webhook and a staging webhook for the same event, the production webhook will receive staging data and the staging webhook will receive production data. In addition, webhook transactions will depend on both. The workaround is to run separate FusionAuth instances.
64
+
Transaction settings can be managed at the tenant level. It is possible, for example, to require only the analytics webhook to succeed for the Pied Piper tenant and only the user database sync to succeed for the Hooli tenant.
67
65
68
-
Please review this issue for additional information about https://github.com/FusionAuth/fusionauth-issues/issues/1543[future webhook improvements].
66
+
If you are separating your staging and production environments using tenants, webhooks will not cross those boundaries except for the instance scoped events.
69
67
70
-
=== Example Configuration After 1.37.0
68
+
=== Example Configuration Before 1.37.0
71
69
72
-
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 and both webhooks are selected to receive events from both tenants.
70
+
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.
73
71
74
72
In this scenario, each webhook will receive data when a user is created in either tenant, Pied Piper or Hooli.
75
73
76
-
Transaction settings can be managed at the tenant level. It is possible, for example, to require only the analytics webhook to succeed for the Pied Piper tenant and only the user database sync to succeed for the Hooli tenant.
74
+
Transaction settings can be managed at the tenant level, but the webhooks receiving an event are not. Any webhook that is configured to receive the `user.create` event will play a role in the transaction. It is not possible, for example, to require only the analytics webhook to succeed for the Pied Piper tenant and only the user database sync to succeed for the Hooli tenant. If you need this level of granularity, run different FusionAuth instances.
77
75
78
-
If you are separating your staging and production environments using tenants, webhooks will not cross those boundaries except for the instance scoped events.
76
+
If you are separating your staging and production environments using tenants, webhooks will cross those boundaries. While you can filter on the tenant in the webhook itself, if you register both a production webhook and a staging webhook for the same event, the production webhook will receive staging data and the staging webhook will receive production data. In addition, webhook transactions will depend on both. The workaround is to run separate FusionAuth instances.
77
+
78
+
Please review this issue for additional information about https://github.com/FusionAuth/fusionauth-issues/issues/1543[future webhook improvements].
0 commit comments