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.
{
"version": 1,
"id": "00000000-0000-0000-0000-000000000000",
"source": "https://authsignal.com",
"time": "2024-01-01T01:23:45.678Z",
"tenantId": "dddddddd-dddd-dddd-dddd-dddddddddddd",
"type": "authenticator.created",
"data": {
...
}
}
Event-specific data
Challenge lifecycle events
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.
The timezone of the user who requested the magic link.
The IP address of the user who requested the magic link.
{
"version": 1,
"id": "00000000-0000-0000-0000-000000000000",
"source": "https://authsignal.com",
"time": "2024-01-01T01:23:45.678Z",
"tenantId": "dddddddd-dddd-dddd-dddd-dddddddddddd",
"type": "email.created",
"data": {
"to": "example@gmail.com",
"url": "https://mfa.authsignal.com/api/verify-magic-link?token=...",
"userId": "11111111-1111-1111-1111-111111111111",
"idempotencyKey": "aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa",
"actionCode": "sign-in",
"userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/527.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3",
"timezone": "Europe/London",
"ipAddress": "12.34.56.78"
}
}
Email OTP
The email address the magic link should be delivered to.
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.
The timezone of the user who requested the email OTP.
The IP address of the user who requested the email OTP.
{
"version": 1,
"id": "ffffffff-ffff-ffff-ffff-ffffffffffff",
"source": "https://authsignal.com",
"time": "2025-01-01T02:34:56.789Z",
"tenantId": "dddddddd-dddd-dddd-dddd-dddddddddddd",
"type": "email.created",
"data": {
"to": "example@gmail.com",
"code": "123456",
"userId": "11111111-1111-1111-1111-111111111111",
"idempotencyKey": "aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa",
"actionCode": "sign-in",
"userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/527.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3",
"timezone": "Europe/London",
"ipAddress": "12.34.56.78"
}
}
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.
The timezone of the user who requested the push notification.
The IP address of the user who requested the push notification.
{
"version": 1,
"id": "ffffffff-ffff-ffff-ffff-ffffffffffff",
"source": "https://authsignal.com",
"time": "2025-01-01T02:34:56.789Z",
"tenantId": "dddddddd-dddd-dddd-dddd-dddddddddddd",
"type": "push.created",
"data": {
"challengeId": "61b5b44bea582c5f2c7e2c93f1f41d7d8f8e9fba8582a319be6a3aee696b018cc59f7d043acaaabab705c6d2b93ea1ef",
"userId": "11111111-1111-1111-1111-111111111111",
"idempotencyKey": "aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa",
"actionCode": "sign-in",
"userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/527.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3",
"timezone": "Europe/London",
"ipAddress": "12.34.56.78"
}
}
SMS OTP
The phone number the SMS should be delivered to (E.164 format).
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.
{
"version": 1,
"id": "ffffffff-ffff-ffff-ffff-ffffffffffff",
"source": "https://authsignal.com",
"time": "2025-01-01T02:34:56.789Z",
"tenantId": "dddddddd-dddd-dddd-dddd-dddddddddddd",
"type": "sms.created",
"data": {
"to": "+123456789",
"code": "987654",
"userId": "11111111-1111-1111-1111-111111111111",
"idempotencyKey": "aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa",
"actionCode": "sign-in"
}
}
Authenticator lifecycle events
Authenticator created
The ID of the user that the authenticator was created for.
The verification method of the authenticator that was created.
The time the authenticator was created in ISO 8601 format.
A unique ID for the user authenticator that was created.
type: authenticator.created
{
"version": 1,
"id": "ffffffff-ffff-ffff-ffff-ffffffffffff",
"source": "https://authsignal.com",
"time": "2024-01-01T01:23:45.678Z",
"tenantId": "dddddddd-dddd-dddd-dddd-dddddddddddd",
"type": "authenticator.created",
"data": {
"userId": "11111111-1111-1111-1111-111111111111",
"verificationMethod": "EMAIL_MAGIC_LINK",
"createdAt": "2024-01-01T01:23:45.678Z",
"userAuthenticatorId": "cccccccc-cccc-cccc-cccc-cccccccccccc"
}
}
Authenticator updated
The ID of the user that the authenticator was updated for.
The verification method of the authenticator that was updated.
The time the authenticator was updated in ISO 8601 format.
A unique ID for the user authenticator that was updated.
The last channel that was used to successfully complete an SMS OTP challenge. Either “DEFAULT”
(regular SMS) or “WHATSAPP”.
type: authenticator.updated
{
"version": 1,
"id": "ffffffff-ffff-ffff-ffff-ffffffffffff",
"source": "https://authsignal.com",
"time": "2024-01-01T01:23:45.678Z",
"tenantId": "dddddddd-dddd-dddd-dddd-dddddddddddd",
"type": "authenticator.updated",
"data": {
"userId": "11111111-1111-1111-1111-111111111111",
"verificationMethod": "SMS",
"updatedAt": "2024-01-01T01:23:45.678Z",
"userAuthenticatorId": "cccccccc-cccc-cccc-cccc-cccccccccccc",
"previousSmsChannel": "WHATSAPP"
}
}
Authenticator deleted
The ID of the user that the authenticator was deleted for.
The verification method of the authenticator that was deleted.
The time the authenticator was created in ISO 8601 format.
The time the authenticator was deleted in ISO 8601 format.
A unique ID for the user authenticator that was deleted.
type: authenticator.deleted
{
"version": 1,
"id": "ffffffff-ffff-ffff-ffff-ffffffffffff",
"source": "https://authsignal.com",
"time": "2025-01-01T02:34:56.789Z",
"tenantId": "dddddddd-dddd-dddd-dddd-dddddddddddd",
"type": "authenticator.deleted",
"data": {
"userId": "11111111-1111-1111-1111-111111111111",
"verificationMethod": "EMAIL_MAGIC_LINK",
"createdAt": "2024-01-01T01:23:45.678Z",
"deletedAt": "2025-01-01T02:34:56.789Z",
"userAuthenticatorId": "cccccccc-cccc-cccc-cccc-cccccccccccc"
}
}