Skip to main content

Event object

eventId
The unique id of the event that triggered the webhook message. A single event in a project can trigger one or more webhook messages if there is more than one webhook configured.
messageId
The unique id of the message sent. This key should be used as the idempotency key in order to handle redeliveries.
webhookId
The unique id of the configured webhook that sent the message.
userId
The unique id of the user who triggered the event. This can be different than userId’s in the event payload. For instance, when creating users via developer APIs the triggerer will be the developer’s userId and the event payload will contain the id of the created user. This parameter will be undefined if the event is triggered using an API key.
eventName
The name of the event that triggered the message. Events always conform to the following convention {resourceType}.{action}. For example with the event name of user.created, user is the resource type and created is the action performed on the resource. The full list of event names can be retrieved by using the /eventTypes endpoint in the API here.
environmentId
The unique id of the environment from which the event originated.
environmentName
The name of the environment from which the event originated. This can be used to have the same systems handle both live and sandbox events.
timestamp
Timestamp when the event occurred.
redelivery
If the message is a redelivery, this will be set to true.
data
The data object contains the event payload. The structure of the data object will depend on the event that triggered the message. The full list of event payloads can be found here.

Example Event Object

Below is an example of a user.created event
{
  "eventId": "2a92c161-3167-44ad-8fce-4c6cdaed8129",
  "messageId": "5a2a5360-bb7e-4ea6-9bd3-0146bf2f734f",
  "webhookId": "a86acea4-e050-4846-8e4f-0ae039f6e37c",
  "eventName": "user.created",
  "environmentId": "123e4567-e89b-12d3-a456-426614174000",
  "environmentName": "sandbox",
  "timestamp": "2023-10-26T14:30:59.210Z",
  "data": {
    "chain": "EVM",
    "origin": null,
    "ipAddress": "::1",
    "verifiedCredentialId": "b13f337d-a8dc-41a7-96f5-5e5d76ad864a",
    "userId": "a5914498-7a8b-4c58-b04c-9624fef2897c",
    "expiresAt": null,
    "walletPublicKey": "0x3FcE1F4F28DbA209344072867134A3a7F547C7f1",
    "createdAt": "2023-10-26T14:30:02.909Z",
    "projectEnvironmentId": "7181a853-fb76-4dc2-9af8-6aeb6d2b818b",
    "provider": "browserExtension",
    "walletName": "metamask",
    "id": "484e49ba-3026-4e2c-9bf0-ed98ae224833",
    "revokedAt": "2023-10-26T14:30:59.204Z",
    "verifiedCredentialType": "wallet"
  }
}

Event types

This is the list of all the types of events we send as part of webhook payloads. We may add more at any time, so when developing and maintaining your code, you should not assume that only these types exist. The current list of event types can be fetched from the event types endpoint. The events follow the pattern: resource.event. Our goal is to design a consistent system that makes it easy to anticipate and understand.
Events that occur on subresources like user.session will include the parent id but do not trigger the parent’s update event.

User

user.created
object
Occurs whenever a user is created. Is a user.
user.updated
object
Occurs whenever a user is updated. Is a user.
user.deleted
object
Occurs whenever a user is deleted. Is a user.
user.passkeyRecovery.started
object
Occurs whenever a user started the passkey recovery process. Is a wallet.
user.passkeyRecovery.completed
object
Occurs whenever a user completed the passkey recovery process. Is a wallet.
user.session.created
object
Occurs whenever a user session is created. Is a session.
user.session.revoked
object
Occurs whenever a user session is revoked. Is a session.
user.social.linked
object
Occurs whenever a user links a social account. Is a provider.
user.social.unlinked
object
Occurs whenever a user unlinks a social account. Is a provider.
user.exchangeTransfer.success
object
Occurs whenever an exchange transfer is successfully initiated. Is an ExchangeTransferResponse.
user.exchangeTransfer.failed
object
Occurs whenever an exchange transfer fails for any reason. Contains error details about the failure.

Wallet

wallet.created
object
Occurs whenever a Dynamic-powered embedded wallet is created. Is a wallet.
wallet.linked
object
Occurs whenever a wallet is linked to a user. Is a wallet.
wallet.unlinked
object
Occurs whenever a wallet is unlinked from a user. Is a wallet.
wallet.exported
object
Occurs whenever a Dynamic-powered embedded wallet is exported. Is a wallet.
wallet.transferred
object
Occurs whenever a wallet is transferred between user accounts. Is a wallet.

Visit

visit.created
object
Occurs whenever a visit is created. Is a visit.

Admin

WAAS Policy

admin.waas.policy.created
object
Occurs whenever a WAAS policy is created by an admin. Is a WaasPolicyResponse.
admin.waas.policy.updated
object
Occurs whenever a WAAS policy is updated by an admin. Is a WaasPolicyResponse.
admin.waas.policy.rule.created
object
Occurs whenever a WAAS policy rule is created by an admin. Is a WaasPolicyRule.
admin.waas.policy.rule.updated
object
Occurs whenever a WAAS policy rule is updated by an admin. Is a WaasPolicyRule.
admin.waas.policy.rule.deleted
object
Occurs whenever a WAAS policy rule is deleted by an admin. Contains the deleted rule information.

Domain

admin.environment.domain.created
object
Occurs whenever a custom domain is created by an admin. Is a CustomHostname.
admin.environment.domain.deleted
object
Occurs whenever a custom domain is deleted by an admin. Contains the deleted domain information.
admin.environment.domain.updated
object
Occurs whenever a custom domain is updated by an admin. Is a CustomHostname.

Environment

admin.environment.apiToken.created
object
Occurs whenever an API token is created by an admin. Is a Token.
admin.environment.apiToken.deleted
object
Occurs whenever an API token is deleted by an admin. Contains the deleted token information.
admin.environment.settings.updated
object
Occurs whenever environment settings are updated by an admin. Is a ProjectEnvironment.
admin.environment.mfa.deleted
object
Occurs whenever an admin deletes a user’s MFA device. Contains the user ID and MFA device information.

Organization

admin.organization.created
object
Occurs whenever an organization is created by an admin. Is an Organization.
admin.organization.updated
object
Occurs whenever an organization is updated by an admin. Is an Organization.
admin.organization.billing.updated
object
Occurs whenever an organization’s billing settings are updated by an admin. Is a BillingSubscription.
admin.organization.member.invited
object
Occurs whenever a member is invited to an organization by an admin. Is an Invite.
admin.organization.member.joined
object
Occurs whenever a member joins an organization. Is an OrganizationMember.
admin.organization.member.removed
object
Occurs whenever a member is removed from an organization by an admin. Contains the removed member information.

Project

admin.project.created
object
Occurs whenever a project is created by an admin. Is a Project.
admin.project.deleted
object
Occurs whenever a project is deleted by an admin. Contains the deleted project information.
admin.project.updated
object
Occurs whenever a project is updated by an admin. Is a Project.

User

admin.user.created
object
Occurs whenever a user is created by an admin. Is a User.
admin.user.deleted
object
Occurs whenever a user is deleted by an admin. Contains the deleted user information.
admin.user.updated
object
Occurs whenever a user is updated by an admin. Is a User.
admin.user.session.revoked
object
Occurs whenever a user session is revoked by an admin. Is a Session.

Webhook

admin.webhook.created
object
Occurs whenever a webhook is created by an admin. Is a Webhook.
admin.webhook.deleted
object
Occurs whenever a webhook is deleted by an admin. Contains the deleted webhook information.
admin.webhook.updated
object
Occurs whenever a webhook is updated by an admin. Is a Webhook.

Security

admin.security.accessControl.created
object
Occurs whenever security access control settings are created by an admin. Is an AdminSecurityAccessControl.
Occurs whenever a cookie domain is created by an admin. Is an AdminSecurityCookieDomain.
admin.security.cors.created
object
Occurs whenever a CORS origin is created by an admin. Is an OriginResponse.
admin.security.cors.deleted
object
Occurs whenever a CORS origin is deleted by an admin. Contains the deleted CORS origin information.
admin.security.cors.updated
object
Occurs whenever a CORS origin is updated by an admin. Is an OriginResponse.
admin.security.ipSettings.updated
object
Occurs whenever IP settings are updated by an admin. Is an AdminSecurityIpSettings.
admin.security.jwtSettings.updated
object
Occurs whenever JWT settings are updated by an admin. Is an AdminSecurityJwtSettings.
I