Managing Webhooks
List All Webhooks
curl https://api.inflowpay.xyz/api/webhook \
-H "X-Inflow-Api-Key: inflow_priv_your_key"Response:
[
{
"webhookId": "wh_abc123",
"webhookUrl": "https://yourserver.com/webhooks/inflow"
}
]Get a Specific Webhook
curl https://api.inflowpay.xyz/api/webhook/{webhookId} \
-H "X-Inflow-Api-Key: inflow_priv_your_key"Check Webhook Status
See whether a webhook is active or has failures:
curl https://api.inflowpay.xyz/api/webhook/{webhookId}/status \
-H "X-Inflow-Api-Key: inflow_priv_your_key"Response:
{
"webhookId": "wh_abc123",
"webhookUrl": "https://yourserver.com/webhooks/inflow",
"status": "enabled",
"failureReason": null
}Status Values
| Status | Description |
|---|---|
enabled | Webhook is active and receiving events |
disabled | Webhook has been manually disabled |
If your endpoint consistently fails to respond with a 200 status, Inflow may disable it. The failureReason field will explain why.
Enable or Disable a Webhook
# Disable
curl -X PATCH https://api.inflowpay.xyz/api/webhook/{webhookId} \
-H "X-Inflow-Api-Key: inflow_priv_your_key" \
-H "Content-Type: application/json" \
-d '{ "status": "disabled" }'
# Re-enable
curl -X PATCH https://api.inflowpay.xyz/api/webhook/{webhookId} \
-H "X-Inflow-Api-Key: inflow_priv_your_key" \
-H "Content-Type: application/json" \
-d '{ "status": "enabled" }'Delete a Webhook
curl -X DELETE https://api.inflowpay.xyz/api/webhook/{webhookId} \
-H "X-Inflow-Api-Key: inflow_priv_your_key"Response:
{
"message": "Webhook deleted successfully"
}API Summary
| Action | Method | Endpoint |
|---|---|---|
| Create webhook | POST | /api/webhook |
| List webhooks | GET | /api/webhook |
| Get webhook | GET | /api/webhook/{webhookId} |
| Get status | GET | /api/webhook/{webhookId}/status |
| Update status | PATCH | /api/webhook/{webhookId} |
| Delete webhook | DELETE | /api/webhook/{webhookId} |
All webhook endpoints require the private API key (
X-Inflow-Api-Key). Webhook management is API-only — it is not available from the Dashboard.
Limits
- Maximum 5 webhooks per account.
- Each webhook URL must be unique within your account.
- URLs must use HTTPS.
Retry & Failure Policy
If your endpoint does not respond with a 2xx within 15 seconds, Inflow retries with exponential backoff — up to 10 attempts spread over several hours to days. If all retries fail, the webhook is automatically disabled.
Check the webhook status endpoint and the failureReason field to diagnose issues. Once fixed, re-enable the webhook via the update status endpoint.
Updated about 20 hours ago