> ## Documentation Index
> Fetch the complete documentation index at: https://www.dynamic.xyz/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Webhook events

> Find the Dynamic webhook event you need, understand when it fires, and open its detailed reference.

Webhooks notify your backend when something changes in Dynamic, such as a user signing in, a wallet being created, or a payment reaching settlement. Browse the events below by product and follow each section’s reference link for payloads and additional behavior.

To start receiving events, follow [Setting up webhooks](/docs/platform/dashboard/webhooks/setup). For signature verification, retries, and duplicate handling, see [Event delivery and best practices](/docs/platform/dashboard/webhooks/delivery-best-practices).

## Find an event

| I want to track…                                          | Browse                                                                      |
| --------------------------------------------------------- | --------------------------------------------------------------------------- |
| Users, sign-ins, sessions, and linked credentials         | [Authentication](#authentication)                                           |
| Wallet creation, signing, backup, and recovery            | [Embedded wallets](#embedded-wallets)                                       |
| Confirmed wallet transactions and monitoring registration | [On-chain activity](#on-chain-activity)                                     |
| An agent’s delegated wallet access                        | [Agents](#agents)                                                           |
| Business membership, wallets, roles, and approvals        | [Business accounts](#business-accounts)                                     |
| Policy blocks and address screening decisions             | [Policy and screening](#policy-and-screening)                               |
| Payment execution, settlement, and risk changes           | [Fireblocks Flow](#fireblocks-flow)                                         |
| Dashboard administration and environment changes          | [Developer Dashboard and environment](#developer-dashboard-and-environment) |

This listing brings together the events documented in Dynamic’s product references. The [event types endpoint](/docs/api-reference/events/get-event-types) provides the current catalog. Your integration should tolerate new event types as they are added. The [deprecated alias](#deprecated-alias) is documented at the end.

## Authentication

See [Auth webhooks](/docs/auth/webhooks) for payloads and details.

| Event                            | When it fires                    |
| -------------------------------- | -------------------------------- |
| `user.created`                   | A user is created.               |
| `user.updated`                   | A user is updated.               |
| `user.deleted`                   | A user is deleted.               |
| `user.merged`                    | User accounts are merged.        |
| `visit.created`                  | A visit is created.              |
| `user.session.created`           | A user session is created.       |
| `user.session.revoked`           | A user session is revoked.       |
| `user.signin.failed`             | A sign-in attempt fails.         |
| `user.social.linked`             | A user links a social account.   |
| `user.social.unlinked`           | A user unlinks a social account. |
| `user.passkeyRecovery.started`   | Passkey recovery begins.         |
| `user.passkeyRecovery.completed` | Passkey recovery completes.      |

## Embedded wallets

See [Embedded wallet webhooks](/docs/embedded-wallets/webhooks) for payloads and details.

| Event                                 | When it fires                                                    |
| ------------------------------------- | ---------------------------------------------------------------- |
| `wallet.created`                      | A Dynamic embedded wallet is created.                            |
| `wallet.linked`                       | A wallet is linked to a user.                                    |
| `wallet.unlinked`                     | A wallet is unlinked from a user.                                |
| `wallet.exported`                     | A Dynamic embedded wallet is exported.                           |
| `wallet.transferred`                  | A wallet moves between user accounts.                            |
| `wallet.signature`                    | An embedded wallet signature completes.                          |
| `wallet.keyShares.backedUp`           | Wallet key shares are backed up.                                 |
| `wallet.keyShares.backedUpToExternal` | A user backs up their key share to external storage.             |
| `wallet.keyShares.recovered`          | Wallet key shares are recovered.                                 |
| `wallet.keyShares.refreshed`          | Wallet key shares are refreshed.                                 |
| `wallet.keyShares.reshared`           | Wallet key shares are redistributed across a new set of parties. |
| `wallet.offlineRecovery.created`      | An offline recovery kit is created.                              |

## On-chain activity

See [On-chain events](/docs/embedded-wallets/on-chain-events) for supported networks, monitoring requirements, and payloads.

| Event                        | When it fires                                                                                 |
| ---------------------------- | --------------------------------------------------------------------------------------------- |
| `wallet.activity`            | A confirmed transaction involves a user’s wallet.                                             |
| `wallet.activity.registered` | A wallet is newly registered for on-chain monitoring in an environment with tracking enabled. |

## Agents

See [Agent webhooks](/docs/agents/webhooks) for payloads and details.

| Event                         | When it fires                                              |
| ----------------------------- | ---------------------------------------------------------- |
| `wallet.delegation.created`   | An agent or service is granted delegated signing access.   |
| `wallet.delegation.signature` | A delegated signer completes a wallet signature.           |
| `wallet.delegation.revoked`   | An agent or service’s delegated signing access is revoked. |

## Business accounts

See [Business account webhooks](/docs/business-accounts/webhooks) for payloads and approval behavior.

### Accounts, members, and wallets

| Event                                   | When it fires                                      |
| --------------------------------------- | -------------------------------------------------- |
| `businessAccount.created`               | A business account is created.                     |
| `businessAccount.member.added`          | A member joins the account.                        |
| `businessAccount.member.roleChanged`    | A member’s role changes.                           |
| `businessAccount.member.removed`        | A member is removed from the account.              |
| `businessAccount.ownership.transferred` | Ownership transfers to another member.             |
| `businessAccount.signer.added`          | A member becomes a signer on an account wallet.    |
| `businessAccount.signer.revoked`        | A signer’s access to an account wallet is revoked. |
| `businessAccount.wallet.linked`         | A wallet comes under the account’s control.        |
| `businessAccount.wallet.unlinked`       | A wallet leaves the account.                       |

### Governance and approvals

| Event                                        | When it fires                                                    |
| -------------------------------------------- | ---------------------------------------------------------------- |
| `businessAccount.governance.updated`         | The account’s approval rules change.                             |
| `businessAccount.role.defined`               | A custom role is defined.                                        |
| `businessAccount.role.deleted`               | A custom role is deleted.                                        |
| `businessAccount.proposal.created`           | A proposal opens for a change that requires approval.            |
| `businessAccount.proposal.approved`          | An approver records an approval.                                 |
| `businessAccount.proposal.approvalWithdrawn` | An approver withdraws an earlier approval.                       |
| `businessAccount.proposal.vetoed`            | A proposal is rejected with a final veto.                        |
| `businessAccount.proposal.executed`          | The proposal’s requirements are met and its change takes effect. |

An approval event does not mean the proposed change has taken effect. Use `businessAccount.proposal.executed` to track execution, and subscribe to the corresponding account events to track the changes themselves.

## Policy and screening

See [Policy and screening webhooks](/docs/embedded-wallets/mpc/policies/webhooks) for payloads and verdict behavior.

| Event                             | When it fires                                                         |
| --------------------------------- | --------------------------------------------------------------------- |
| `waas.policy.violation`           | A configured policy rule blocks a transaction.                        |
| `wallet.sanctions.blocked`        | A sanctions decision blocks a wallet address.                         |
| `wallet.addressScreening.blocked` | Your address screening rules or address lists block a wallet address. |
| `wallet.addressScreening.alerted` | Your address screening policy returns an alert for a wallet address.  |

## Fireblocks Flow

See [Flow webhooks](/docs/flow/webhooks) for state transitions, payloads, and payment reconciliation.

| Event                           | When it fires                                   |
| ------------------------------- | ----------------------------------------------- |
| `flow.execution.updated`        | A flow’s execution state changes.               |
| `flow.settlement.updated`       | A flow’s settlement state changes.              |
| `flow.risk.updated`             | A flow’s risk assessment state changes.         |
| `user.exchangeTransfer.success` | An exchange transfer is successfully initiated. |
| `user.exchangeTransfer.failed`  | An exchange transfer fails.                     |

Execution, settlement, and risk progress independently. Use the `completed` settlement state to identify a completed payment; a successful exchange-transfer initiation does not establish that funds have arrived.

## Developer Dashboard and environment

These events track administration of your Dynamic organization, projects, users, and webhook configuration. Organization members are the team members you invite to your Dynamic organization; business account members are covered separately under [Business accounts](#business-accounts). Events with the `admin.*` prefix describe administrative actions. The `environment.updated` event also covers changes made through the SDK API. See [Admin and environment events](/docs/platform/dashboard/webhooks/events) for payloads and the shared event envelope.

### Policies and address screening

| Event                                   | When it fires                                           |
| --------------------------------------- | ------------------------------------------------------- |
| `admin.waas.policy.created`             | An admin creates a wallet policy.                       |
| `admin.waas.policy.updated`             | An admin updates a wallet policy.                       |
| `admin.waas.policy.rule.created`        | An admin creates a policy rule.                         |
| `admin.waas.policy.rule.updated`        | An admin updates a policy rule.                         |
| `admin.waas.policy.rule.deleted`        | An admin deletes a policy rule.                         |
| `admin.addressScreening.byok.created`   | An admin adds a customer-supplied screening key.        |
| `admin.addressScreening.byok.rotated`   | An admin rotates a screening key.                       |
| `admin.addressScreening.byok.disabled`  | An admin disables a screening key.                      |
| `admin.addressScreening.policy.created` | An admin creates an address screening policy.           |
| `admin.addressScreening.policy.updated` | An admin changes screening rules or address exceptions. |
| `admin.addressScreening.policy.deleted` | An admin deletes an address screening policy.           |

### Domains and environments

| Event                                | When it fires                                          |
| ------------------------------------ | ------------------------------------------------------ |
| `admin.environment.domain.created`   | An admin creates a custom domain.                      |
| `admin.environment.domain.updated`   | An admin updates a custom domain.                      |
| `admin.environment.domain.deleted`   | An admin deletes a custom domain.                      |
| `admin.environment.apiToken.created` | An admin creates an API token.                         |
| `admin.environment.apiToken.deleted` | An admin deletes an API token.                         |
| `admin.environment.settings.updated` | An admin updates environment settings.                 |
| `admin.environment.mfa.deleted`      | An admin deletes a user’s MFA device.                  |
| `admin.environment.sessions.revoked` | An admin revokes all user sessions in an environment.  |
| `environment.updated`                | An environment changes, including through the SDK API. |

### Organization members and settings

These events track your Dynamic organization, its billing settings, and the team members who have access to it.

| Event                                | When it fires                                   |
| ------------------------------------ | ----------------------------------------------- |
| `admin.organization.created`         | An admin creates an organization.               |
| `admin.organization.updated`         | An admin updates an organization.               |
| `admin.organization.billing.updated` | An admin updates organization billing settings. |
| `admin.organization.member.invited`  | An admin invites an organization member.        |
| `admin.organization.member.joined`   | A member joins an organization.                 |
| `admin.organization.member.removed`  | An admin removes an organization member.        |

### Projects

| Event                   | When it fires               |
| ----------------------- | --------------------------- |
| `admin.project.created` | An admin creates a project. |
| `admin.project.updated` | An admin updates a project. |
| `admin.project.deleted` | An admin deletes a project. |

### User administration

These events track an admin creating, updating, or deleting users and revoking their sessions. Business account membership changes use `businessAccount.member.*` events.

| Event                        | When it fires                    |
| ---------------------------- | -------------------------------- |
| `admin.user.created`         | An admin creates a user.         |
| `admin.user.updated`         | An admin updates a user.         |
| `admin.user.deleted`         | An admin deletes a user.         |
| `admin.user.session.revoked` | An admin revokes a user session. |

### Webhook configuration

These events track changes to the webhook endpoints you configure for your environment.

| Event                   | When it fires               |
| ----------------------- | --------------------------- |
| `admin.webhook.created` | An admin creates a webhook. |
| `admin.webhook.updated` | An admin updates a webhook. |
| `admin.webhook.deleted` | An admin deletes a webhook. |

### Security settings

| Event                                  | When it fires                                      |
| -------------------------------------- | -------------------------------------------------- |
| `admin.security.accessControl.created` | An admin creates security access control settings. |
| `admin.security.cookieDomain.created`  | An admin creates a cookie domain.                  |
| `admin.security.cors.created`          | An admin creates a CORS origin.                    |
| `admin.security.cors.updated`          | An admin updates a CORS origin.                    |
| `admin.security.cors.deleted`          | An admin deletes a CORS origin.                    |
| `admin.security.ipSettings.updated`    | An admin updates IP settings.                      |
| `admin.security.jwtSettings.updated`   | An admin updates JWT settings.                     |

## Deprecated alias

`sanctions.wallet.blocked` is a deprecated alias of `wallet.sanctions.blocked`. Existing subscriptions continue to receive it, but new subscriptions should use `wallet.sanctions.blocked`. See [Policy and screening webhooks](/docs/embedded-wallets/mpc/policies/webhooks).
