---
title: "Simulate enterprise webhook"
method: GET
path: "/api/v2/enterprise/{enterpriseId}/webhook/{webhookId}/simulate"
tags: ["Enterprise Webhooks"]
---

# Simulate enterprise webhook

`GET /api/v2/enterprise/{enterpriseId}/webhook/{webhookId}/simulate`

Simulate a webhook for testing purposes. To call this endpoint, you must have the user_manage scope on a short-lived access token created either in the web app or programmatically using the [Login](/reference/userlogin#/) endpoint.

## Path parameters

- `enterpriseId` string, required
- `webhookId` string, required

## Request body

- union
  - object
    - `bankAccountId` string, required
  - object
    - `accessTokenId` string, required
  - object
    - `enterpriseId` string, required
  - object
    - `transferId` string, required

## Response `200`

OK

- SimulateEnterpriseWebhookResponseBody
  - `webhookNotifications` object[], required
    - `id` string, required
    - `type` 'txRequest' | 'txRequestTransaction' | 'transfer' | 'transaction' | 'transactionRemoved' | 'transactionExpire' | 'pendingapproval' | 'block' | 'admin' | 'address_confirmation' | 'lowFee' | 'circuitBreaker' | 'lowFeeAddressBalance' | 'wallet_confirmation' | 'bankAccount' | 'userKycState' | 'enterpriseKycState' | 'identityStatus' | 'idvStatus' | 'accessToken' | 'accountCreated' | 'contractSigned' | 'kycResult' | 'policyBalanceChange' | 'reversal' | 'mintOrder' | 'transaction_finality_on_l1' | 'stuckTx' | 'tradeOrder' | 'unspentExpiry' | 'twoStepTransfer' | 'twoStepDeposit' | 'twoStepWithdrawal' | 'endInvestorOnboardingInvite' | 'pendingDecryption' | 'whitelistApproved' | 'whitelistRejected'
    - `wallet` string
    - `safeId` string — Safe ID — populated only on safe-scoped webhook subscriptions.
    - `url` string
    - `hash` string
    - `coin` string — A cryptocurrency or token ticker symbol.
    - `coinChain` string
    - `transfer` string
    - `state` 'unconfirmed' | 'new' | 'pending' | 'processed' | 'failed'
    - `simulation` boolean
    - `retries` number
    - `webhook` string
    - `updatedAt` string, date-time
    - `nextAttempt` string, date-time
    - `version` number
    - `allowBlockedHosts` boolean
    - `heightToConfirm` number
    - `payload` string
    - `response` object
      - `code` union
        - number
        - string
      - `type` string
      - `body` string
      - `error` string

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `403` — Forbidden

## Changes

- **2026-08-11** `ee916dca3250` — 2 warning
  - added the new `endInvestorOnboardingInvite` enum value to the `webhookNotifications/items/type/allOf[subschema #1: WebhookType]/` response property for the response status `200`
  - added the new `mintOrder` enum value to the `webhookNotifications/items/type/allOf[subschema #1: WebhookType]/` response property for the response status `200`

[Change history](https://skmtc.dev/bitgo/apis/bitgo-api/changes/api/v2/enterprise/:enterpriseId/webhook/:webhookId/simulate/get.md)

---

[API](https://skmtc.dev/bitgo/apis/bitgo-api.md) · [All operations](https://skmtc.dev/bitgo/apis/bitgo-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/bitgo/bitgo-api/revisions/ee916dca3250/schema)
