---
title: "Simulate wallet webhook"
method: POST
path: "/api/v2/{coin}/wallet/{walletId}/webhooks/{webhookId}/simulate"
tags: ["Webhook"]
---

# Simulate wallet webhook

`POST /api/v2/{coin}/wallet/{walletId}/webhooks/{webhookId}/simulate`

Simulates and tests a webhook so you can view its response. A
`transferId`, `pendingApprovalId` or `txRequestId` is required.

## Path parameters

- `coin` string, required — A cryptocurrency or token ticker symbol.
- `walletId` string, required
- `webhookId` string, required

## Request body

- union
  - object
    - `transferId` string, required
  - object
    - `pendingApprovalId` string, required
  - object
    - `txRequestId` string, required — The txRequestId of a transaction request on the specified wallet. This must be provided if the webhook is of type `txRequest` or `txRequestTransaction`.
  - object
    - `txHash` string, required — The txHash of a specific transaction for the specified coin. This must be provided if the webhook is of type `transaction` or `transaction_finality_on_l1`.
  - object
    - `usePlaceholderData` boolean, required — Boolean to indicate that the simulated webhook should use generated placeholder data.

## Response `200`

OK

- object
  - `webhookNotifications` object[]
    - `wallet` string
    - `transfer` string
    - `hash` string — A transaction hash for transactions, or a block hash for block notifications.
    - `id` string
    - `type` 'txRequest' | 'txRequestTransaction' | 'transfer' | 'transaction' | 'transactionRemoved' | 'transactionExpire' | 'unspentExpiry' | 'pendingapproval' | 'address_confirmation' | 'lowFee' | 'block' | 'admin' | 'circuitBreaker' | 'transaction_finality_on_l1' | 'lowFeeAddressBalance' | 'stuckTx' | 'endInvestorOnboardingInvite' | 'endInvestorOnboardingAccepted' — Event type to listen to.
    - `enterprise` string
    - `organization` string
    - `bankAccount` string
    - `url` string, uri
    - `coin` string — A cryptocurrency or token ticker symbol.
    - `state` 'failed' | 'new' | 'pending' | 'processed' | 'unconfirmed' — If `failed`, webhook notification failed to connect with the target URL. If `new`, webhook notification was newly generated, in response to an event. If `pending`, webhook notification is awaiting processing by the webhook worker. If `processed`, webhook notification successfully sent to target URL. If `unconfirmed`, webhook notification is awaiting confirmation on the blockchain.
    - `simulation` boolean
    - `retries` integer — The number of retries that have been attempted for this webhook notification.
    - `webhook` string
    - `updateAt` string, date-time
    - `nextAttempt` string, date-time
    - `version` integer
    - `idempotencyKey` string — A unique id that can be used to de-duplicate notifications.

## Other responses

- `400` — Bad Request

---

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