Skip to main content
PATCH
/
webhooks
/
{id}
Update a webhook
curl --request PATCH \
  --url https://api.fyatu.com/api/v3.20/webhooks/{id} \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "url": "<string>",
  "description": "<string>",
  "events": [
    "CARD_ISSUED",
    "CARD_FUNDED",
    "CARD_TERMINATED",
    "TRANSACTION_AUTHORIZED"
  ],
  "enabled": true
}
'
{
  "success": true,
  "status": 200,
  "message": "Webhook retrieved",
  "data": {
    "webhookId": "whk_01HXYZ7777ABCDEF4444",
    "url": "https://yourapp.com/webhooks/fyatu",
    "description": "Production card events",
    "events": [
      "CARD_ISSUED",
      "TRANSACTION_AUTHORIZED"
    ],
    "environment": "LIVE",
    "status": "ACTIVE",
    "secretPrefix": "whsec_a1b2c3",
    "failureCount": 0,
    "lastDeliveryAt": "2026-05-22T14:30:00Z",
    "lastDeliveryStatus": "SUCCESS",
    "totalDeliveries": 45,
    "totalFailures": 0,
    "createdAt": "2026-05-01T09:00:00Z",
    "updatedAt": "2026-05-10T14:23:00Z"
  },
  "meta": {
    "requestId": "req_a1b2c3d4e5f6a7b8c9d0e1f2",
    "platform": "Fyatu CaaS",
    "timestamp": "2026-05-22T15:00:00Z"
  }
}

Documentation Index

Fetch the complete documentation index at: https://docs.fyatu.com/llms.txt

Use this file to discover all available pages before exploring further.

Overview

Update one or more properties of an existing webhook endpoint. Only the fields you include are changed. To temporarily pause event delivery without deleting the endpoint, set enabled: false.

Path Parameters

ParameterTypeDescription
idstringThe webhook ID (prefix whk_)

Request Body (all fields optional)

FieldTypeConstraintDescription
urlstringhttps:// required in LIVENew endpoint URL
descriptionstringMax 255 charsUpdated label
eventsarray1–20 event typesReplaces the full events list
enabledbooleantrueACTIVE, falseDISABLED

Example

curl -X PATCH https://api.fyatu.com/api/v3.20/webhooks/whk_01HXYZ7777ABCDEF4444 \
  -H "Authorization: Bearer $FYATU_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://yourapp.com/webhooks/fyatu-v2",
    "events": [
      "CARD_ISSUED",
      "CARD_FUNDED",
      "CARD_TERMINATED",
      "TRANSACTION_AUTHORIZED",
      "TRANSACTION_DECLINED"
    ]
  }'

Success Response (200)

Returns the full updated webhook object:
{
  "success": true,
  "status":  200,
  "message": "Webhook updated",
  "data": {
    "webhookId":          "whk_01HXYZ7777ABCDEF4444",
    "url":                "https://yourapp.com/webhooks/fyatu-v2",
    "description":        "Production card events",
    "events": [
      "CARD_ISSUED",
      "CARD_FUNDED",
      "CARD_TERMINATED",
      "TRANSACTION_AUTHORIZED",
      "TRANSACTION_DECLINED"
    ],
    "status":             "ACTIVE",
    "environment":        "LIVE",
    "secretPrefix":       "whsec_a1b2c3",
    "failureCount":       0,
    "lastDeliveryAt":     "2026-05-22T14:30:00Z",
    "lastDeliveryStatus": "SUCCESS",
    "totalDeliveries":    142,
    "totalFailures":      1,
    "createdAt":          "2026-05-01T09:00:00Z",
    "updatedAt":          "2026-05-22T10:00:00Z"
  },
  "meta": {
    "requestId":  "req_01HXY123456ABCDEF",
    "platform": "Fyatu CaaS",
    "timestamp":  "2026-05-22T10:00:00Z"
  }
}

Error Codes

CodeHTTPCause
WEBHOOK_NOT_FOUND404Webhook does not exist or belongs to another business/environment
WEBHOOK_HTTPS_REQUIRED422Updated URL must be https:// in LIVE environment
INVALID_EVENT_TYPE422One or more event types in events are not recognised
VALIDATION_ERROR422Invalid field values
INSUFFICIENT_SCOPE403Key lacks webhooks:write scope

Authorizations

Authorization
string
header
required

API key from the FYATU CaaS portal. Pass as Authorization: Bearer <key>.

Path Parameters

id
string
required

Body

application/json
url
string<uri>
description
string
events
enum<string>[]
Required array length: 1 - 20 elements
Available options:
CARD_ISSUED,
CARD_FROZEN,
CARD_UNFROZEN,
CARD_TERMINATED,
CARD_FUNDED,
CARD_UNLOADED,
CARD_FUND_FAILED,
CARD_UNLOAD_FAILED,
CARDHOLDER_CREATED,
CARDHOLDER_UPDATED,
CARDHOLDER_SUSPENDED,
CARDHOLDER_REACTIVATED,
CARDHOLDER_TERMINATED,
CARDHOLDER_KYC_SUBMITTED,
CARDHOLDER_KYC_SUBMISSION_FAILED,
CARDHOLDER_KYC_APPROVED,
CARDHOLDER_KYC_REJECTED,
CARDHOLDER_KYC_REVIEW_PENDING,
PROGRAM_CREATED,
PROGRAM_PAUSED,
PROGRAM_RESUMED,
PROGRAM_CLOSED,
PROGRAM_BALANCE_LOW,
PROGRAM_BALANCE_FUNDED,
PROGRAM_WITHDRAWAL_INITIATED,
PROGRAM_WITHDRAWAL_COMPLETED,
PROGRAM_WITHDRAWAL_FAILED,
TRANSACTION_AUTHORIZED,
TRANSACTION_CLEARED,
TRANSACTION_REVERSED,
TRANSACTION_DECLINED,
TRANSACTION_FEE,
BILLING_INVOICE_CREATED,
BILLING_INVOICE_PAID,
BILLING_INVOICE_OVERDUE,
BILLING_DEPOSIT_DETECTED,
BILLING_DEPOSIT_CONFIRMED
Example:
[
"CARD_ISSUED",
"CARD_FUNDED",
"CARD_TERMINATED",
"TRANSACTION_AUTHORIZED"
]
enabled
boolean

false → DISABLED, true → ACTIVE

Response

Webhook updated

success
boolean
Example:

true

status
integer
Example:

200

message
string
Example:

"Webhook retrieved"

data
object
meta
object