Skip to content
API reference · Webhooks

Update a webhook endpoint

Change the URL, subscribed events, filters, description, or enable/disable it.

PATCHhttps://fomodata.dev/v1/webhooks/{id}
Scopes:webhooks:writeRate class:standardFlag:WEBHOOKS_ENABLED

Example request

curl -X PATCH 'https://fomodata.dev/v1/webhooks/wh_8Tq3NkVz1LmB5xRc7pYd2F' \
  -H "Authorization: Bearer $FOMODATA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{}'

Parameters

Path parameters
idstringrequired
e.g. wh_8Tq3NkVz1LmB5xRc7pYd2F

Request body

application/jsonUpdateWebhookRequest
  • urlstring
  • eventsarray<EventType>
  • filtersWebhookFilters & any+ 3 child attributes
    • tokenarray<string>Token refs ($SYMBOL, address or tk_ id).
    • handlearray<string>
    • chainarray<string>
  • descriptionstring | null
  • statusenumRe-enabling a disabled_failing endpoint resets its failure streak."enabled""disabled"
Example body
{}

Response

200 The updated webhook endpoint

application/jsonWebhook
  • objectenumrequired"webhook"
  • idstringrequired
  • urlstring (uri)required
  • descriptionstring | nullrequired
  • eventsarray<EventType>required
  • filtersobjectrequired+ 3 child attributes
    • tokenarray<string>Token refs ($SYMBOL, address or tk_ id).
    • handlearray<string>
    • chainarray<string>
  • statusenumrequired"enabled""disabled""disabled_failing"
  • secret_prefixstringrequired
  • livemodebooleanrequired
  • created_atstring (date-time)required
  • updated_atstring (date-time)required
200 · example
{
  "object": "webhook",
  "id": "wh_8Tq3NkVz1LmB5xRc7pYd2F",
  "url": "https://example.com",
  "description": "string",
  "events": [
    "thesis.created"
  ],
  "filters": {
    "token": [
      "string"
    ],
    "handle": [
      "string"
    ],
    "chain": [
      "string"
    ]
  },
  "status": "enabled",
  "secret_prefix": "whsec_Ab12",
  "livemode": true,
  "created_at": "2026-10-07T10:04:12.000Z",
  "updated_at": "2026-10-07T10:04:12.000Z"
}

Errors

StatusWhen
400Bad request
401Missing, invalid, revoked or expired API key
403Insufficient scope, live access not approved, or history limit
404Not found (or feature disabled)
422Validation failed
429Rate limit or quota exceeded

All errors use the standard envelope. See error codes for every code value.