Skip to content

Commit bf8ae1e

Browse files
Update secure-webhook-endpoint.md
1 parent 8a6ccd2 commit bf8ae1e

File tree

1 file changed

+13
-1
lines changed

1 file changed

+13
-1
lines changed

articles/communication-services/how-tos/call-automation/secure-webhook-endpoint.md

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,8 @@ Azure Communication Services relies on Azure Event Grid subscriptions to deliver
2525

2626
## Call Automation webhook events
2727

28+
### OpenID Configuration Verification
29+
2830
[Call Automation events](../../concepts/call-automation/call-automation.md#call-automation-webhook-events) are sent to the webhook callback URI specified when you answer a call or place a new outbound call. Your callback URI must be a public endpoint with a valid HTTPS certificate, Domain Name System name, and IP address with the correct firewall ports open to enable Call Automation to reach it. This anonymous public web server could create a security risk if you don't take the necessary steps to secure it from unauthorized access.
2931

3032
::: zone pivot="programming-language-csharp"
@@ -44,7 +46,17 @@ Azure Communication Services relies on Azure Event Grid subscriptions to deliver
4446
::: zone-end
4547

4648
> [!IMPORTANT]
47-
> Our service uses the default token standard described above. We do not support custom tokens or modified token formats.
49+
> Our service uses standard JSON Web Token in the authentication header, and only support OpenID Connect (OIDC) JWT validation.
50+
51+
### Query Parameter Token Authentication
52+
53+
Query Parameter Token Authentication is a simple method of securing webhook callbacks by appending a pre-shared secret token to the webhook endpoint URL as a query string parameter. This token acts as a lightweight authentication key, allowing your system to verify that webhook callback events originate from the Call Automation Service.
54+
55+
```
56+
https://api.example.com/webhook?token=8f2d9c63a7b14d32b53c9e12a1f47fcb
57+
```
58+
59+
When webhook callback events are received, the Call Automation Service includes the token exactly as you configured (see example above). Upon receiving the request, your system compares the token in the query parameter against a stored, trusted value. Requests without the token, or with an incorrect value, should be rejected.
4860

4961
## Call Automation WebSocket events
5062

0 commit comments

Comments
 (0)