Skip to main content
PUT
/
webhooks
/
{webhookId}
Update Webhook
curl --request PUT \
  --url https://api.dfns.io/webhooks/{webhookId} \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --header 'X-DFNS-USERACTION: <api-key>' \
  --data '
{
  "url": "<string>",
  "description": "<string>",
  "events": [
    "policy.triggered"
  ],
  "status": "Enabled"
}
'
{
  "id": "<string>",
  "url": "<string>",
  "events": [
    "policy.triggered"
  ],
  "status": "Enabled",
  "dateCreated": "<string>",
  "dateUpdated": "<string>",
  "secret": "<string>",
  "description": "<string>"
}

Authentication

✅ Organization User (CustomerEmployee)
❌ Delegated User (EndUser)
✅ Service Account

Required Permissions

Webhooks:Update: Always required.

Authorizations

Authorization
string
header
required

Bearer Token: Used to authenticate API requests. More details how to generate the token: Authentication flows

X-DFNS-USERACTION
string
header
required

User Action Signature: Used to sign the change-inducing API requests. More details how to generate the token: User Action Signing flows

Path Parameters

webhookId
string
required
Minimum string length: 1

Body

application/json
url
string

Webhook url

description
string
Maximum string length: 256
events
enum<string>[]

All events this webhook is subscribed to.

Minimum array length: 1

WebhookEventKind

Available options:
policy.triggered,
policy.approval.pending,
policy.approval.resolved,
key.created,
key.deleted,
key.delegated,
key.exported,
wallet.blockchainevent.detected,
wallet.created,
wallet.activated,
wallet.delegated,
wallet.exported,
wallet.signature.failed,
wallet.signature.rejected,
wallet.signature.requested,
wallet.signature.signed,
wallet.transaction.broadcasted,
wallet.transaction.confirmed,
wallet.transaction.failed,
wallet.transaction.rejected,
wallet.transaction.requested,
wallet.transfer.broadcasted,
wallet.transfer.confirmed,
wallet.transfer.failed,
wallet.transfer.rejected,
wallet.transfer.requested,
wallet.offer.received,
wallet.offer.accepted,
wallet.offer.rejected,
wallet.offer.withdrawn,
wallet.tags.modified
status
enum<string>

Webhook status

Available options:
Enabled,
Disabled

Response

200 - application/json

Success

id
string
required

Webhook ID

url
string
required

Webhook url

events
enum<string>[]
required

All events this webhook is subscribed to.

WebhookEventKind

Available options:
policy.triggered,
policy.approval.pending,
policy.approval.resolved,
key.created,
key.deleted,
key.delegated,
key.exported,
wallet.blockchainevent.detected,
wallet.created,
wallet.activated,
wallet.delegated,
wallet.exported,
wallet.signature.failed,
wallet.signature.rejected,
wallet.signature.requested,
wallet.signature.signed,
wallet.transaction.broadcasted,
wallet.transaction.confirmed,
wallet.transaction.failed,
wallet.transaction.rejected,
wallet.transaction.requested,
wallet.transfer.broadcasted,
wallet.transfer.confirmed,
wallet.transfer.failed,
wallet.transfer.rejected,
wallet.transfer.requested,
wallet.offer.received,
wallet.offer.accepted,
wallet.offer.rejected,
wallet.offer.withdrawn,
wallet.tags.modified
status
enum<string>
required

Webhook status

Available options:
Enabled,
Disabled
dateCreated
string
required

Date when webhook was created

dateUpdated
string
required

Date when webhook was last updated

secret
string
required

The secret associated with this webhook, with which webhook requests will be signed.

description
string

Short description this webhook's purpose