Skip to main content
PATCH
/
v1
/
webhooks
/
subscriptions
/
{subscription_id}
Update a webhook subscription
curl --request PATCH \
  --url https://sandbox.api.byzantine.fi/v1/webhooks/subscriptions/{subscription_id} \
  --header 'Content-Type: application/json' \
  --header 'X-Pubkey: <x-pubkey>' \
  --header 'X-Pubkey, X-Timestamp, X-Signature: <api-key>' \
  --header 'X-Signature: <x-signature>' \
  --header 'X-Timestamp: <x-timestamp>' \
  --data '
{
  "url": "<string>",
  "enabled": true,
  "eventTypes": [
    "<string>"
  ]
}
'
import requests

url = "https://sandbox.api.byzantine.fi/v1/webhooks/subscriptions/{subscription_id}"

payload = {
"url": "<string>",
"enabled": True,
"eventTypes": ["<string>"]
}
headers = {
"X-Pubkey": "<x-pubkey>",
"X-Timestamp": "<x-timestamp>",
"X-Signature": "<x-signature>",
"X-Pubkey, X-Timestamp, X-Signature": "<api-key>",
"Content-Type": "application/json"
}

response = requests.patch(url, json=payload, headers=headers)

print(response.text)
const options = {
method: 'PATCH',
headers: {
'X-Pubkey': '<x-pubkey>',
'X-Timestamp': '<x-timestamp>',
'X-Signature': '<x-signature>',
'X-Pubkey, X-Timestamp, X-Signature': '<api-key>',
'Content-Type': 'application/json'
},
body: JSON.stringify({url: '<string>', enabled: true, eventTypes: ['<string>']})
};

fetch('https://sandbox.api.byzantine.fi/v1/webhooks/subscriptions/{subscription_id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));
{
  "subscription": {
    "id": "550e8400-e29b-41d4-a716-446655440000",
    "integratorId": "550e8400-e29b-41d4-a716-446655440000",
    "url": "<string>",
    "enabled": true,
    "eventTypes": "<unknown>",
    "endpointSafetyMetadata": "<unknown>",
    "createdAt": "2023-11-07T05:31:56Z",
    "updatedAt": "2023-11-07T05:31:56Z",
    "activeSigningKeyId": "550e8400-e29b-41d4-a716-446655440000"
  },
  "publicKey": "<string>",
  "algorithm": "<string>"
}
{
"error": "Resource not found",
"status": 404
}

Authorizations

X-Pubkey, X-Timestamp, X-Signature
string
header
required

Headers

X-Pubkey
string
required

Integrator's ECDSA public key (P-256 curve, compressed SEC1 format). Example: 0x038fedef7c12f93bbf342ad8943b7a825a3b41f61c9dc118b2c718efebabbf62fd

X-Timestamp
string
required

Unix timestamp in seconds (UTC). Must be within tolerance window (1 minute) to prevent replay attacks. Example: 1760375826

X-Signature
string
required

ECDSA signature (DER-encoded, hex with 0x prefix). Signs the message: {timestamp}{METHOD}{path_and_query}{json_body}. Example: 0x3045022100...

Body

application/json
url
string | null
enabled
boolean | null
eventTypes
string[] | null

Response

Webhook subscription updated

subscription
object
required
publicKey
string
required
algorithm
string
required