The authenticator challenge webhook is used to send SMS, email, and push notifications using a custom provider, as opposed to the providers supported by Authsignal natively.Documentation Index
Fetch the complete documentation index at: https://docs.authsignal.com/llms.txt
Use this file to discover all available pages before exploring further.
Delivery behavior
Webhooks expect a200 OK response for successful requests.
Authenticator challenge webhooks are synchronous and the upstream request will fail for non-200 responses.
For example, if you have configured a webhook to handle the sending of email OTPs, when a challenge is triggered and the webhook returns a non-200 response, the API will return an error response. An appropriate message should be displayed to the user when using our SDKs or APIs directly so that the user may trigger a retry via the UI. This is automatically handled in the pre-built UI.
Configuration
To configure webhook URLs for authenticator challenge events navigate to the settings for the relevant authenticator in the Authsignal Portal. Webhooks can be configured for the SMS OTP authenticator, Email OTP and Magic Link authenticators, and the Push authenticator.Verifying webhook events
It is critical to verify that incoming requests to your webhook have been sent by Authsignal and to reject any unauthorized requests. The recommended approach to verify webhook events is to use an Authsignal Server SDK to handle the incoming request.X-Signature-V2 header to the SDK, it will verify that the request is valid and construct the event to be handled.
Event metadata
A unique identifier for the event.
The source of the event. This is always
https://authsignal.com.The time the event was created in ISO 8601 format.
The type of the event. Each type has a different schema for the
data field.The version of the event.
The ID of the tenant that the event is intended for.
The event-specific data. See below for the schema of the
data field for each event type.Event schema
Email magic link
The email address the magic link should be delivered to.
The URL of the magic link.
The ID of the user the magic link is for.
The idempotency key of the request that created the magic link.
The action code of the track request that created the magic link.
The user agent of the user who requested the magic link.
This is only present if the user agent was captured when tracking an
action.
The timezone of the user who requested the magic link.
This is only present if the IP address was captured when tracking an
action.
The IP address of the user who requested the magic link.
This is only present if the IP address was captured when tracking an
action.
The locale of the user who requested the magic link.
This is only present if the locale was captured when tracking an
action or set on the user via update
user.
type: email.created
Email OTP
The email address the magic link should be delivered to.
The email OTP code.
The ID of the user the email OTP code is for.
The idempotency key of the request that created the email OTP.
The action code of the track request that created the email OTP.
The user agent of the user who requested the email OTP.
This is only present if the user agent was captured when tracking an
action.
The timezone of the user who requested the email OTP.
This is only present if the IP address was captured when tracking an
action.
The IP address of the user who requested the email OTP.
This is only present if the IP address was captured when tracking an
action.
The locale of the user who requested the email OTP.
This is only present if the locale was captured when tracking an
action or set on the user via update
user.
type: email.created
Push
The challenge ID to be completed using push notification.
The ID of the user the push challenge is for.
The idempotency key of the request that created the push notification.
The action code of the track request that created the push notification.
The user agent of the user who requested the push notification.
This is only present if the user agent was captured when tracking an
action.
The timezone of the user who requested the push notification.
This is only present if the IP address was captured when tracking an
action.
The IP address of the user who requested the push notification.
This is only present if the IP address was captured when tracking an
action.
type: push.created
SMS OTP
The phone number the SMS should be delivered to (E.164 format).
The SMS code.
The ID of the user the SMS code is for.
The idempotency key of the request that created the SMS code.
The action code of the track request that created the SMS code.
The locale of the user who requested the SMS code.
This is only present if the locale was captured when tracking an
action or set on the user via update
user.
type: sms.created
IP address allow-listing
Authsignal will send webhooks originating from the following IP addresses:| Region | IP Addresses |
|---|---|
| US (Oregon) | 44.224.97.232 44.230.210.235 44.236.208.22 52.33.85.88 |
| AU (Sydney) | 13.210.81.243 3.105.80.107 54.252.129.142 |
| EU (Dublin) | 34.247.148.106 34.253.116.90 54.171.116.55 |
| CA (Montreal) | 16.52.98.180 16.54.49.43 16.54.18.28 |

