Create a webhook

Creates a webhook endpoint that receives the selected events at an https URL. This is the only API response that returns the signing secret; it can be viewed or rotated later in the dashboard. A seller can have at most 10 webhooks and each URL can be registered once. See the event pages in this section for payload shapes and the Signature page for verifying deliveries.

POST/v1/webhooks/

Authorization

api_key_auth
AuthorizationBearer <token>

API key authentication. Use "Bearer YOUR_API_KEY" format.

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://api.checkoutpage.com/v1/webhooks/" \  -H "Content-Type: application/json" \  -d '{    "name": "CRM sync",    "url": "https://example.com/hooks/checkoutpage",    "events": [      "payment.paid",      "subscription.created"    ]  }'
{
  "data": {
    "id": "string",
    "name": "string",
    "url": "string",
    "events": [
      "webhook.test"
    ],
    "status": "active",
    "apiVersion": "v1",
    "customHeaders": {
      "property1": "string",
      "property2": "string"
    },
    "deliveryCount": 0,
    "successCount": 0,
    "failureCount": 0,
    "lastTriggeredAt": "string",
    "lastSuccessAt": "string",
    "lastFailureAt": "string",
    "createdAt": "string",
    "updatedAt": "string",
    "secret": "string"
  }
}
{
  "status": "error",
  "type": "error",
  "message": "Not Found",
  "errors": [
    {
      "param": "string",
      "message": "string",
      "value": null
    }
  ],
  "property1": null,
  "property2": null
}
{
  "status": "error",
  "type": "error",
  "message": "Not Found",
  "errors": [
    {
      "param": "string",
      "message": "string",
      "value": null
    }
  ],
  "property1": null,
  "property2": null
}
{
  "status": "error",
  "type": "error",
  "message": "Not Found",
  "errors": [
    {
      "param": "string",
      "message": "string",
      "value": null
    }
  ],
  "property1": null,
  "property2": null
}
{
  "status": "error",
  "type": "error",
  "message": "Not Found",
  "errors": [
    {
      "param": "string",
      "message": "string",
      "value": null
    }
  ],
  "property1": null,
  "property2": null
}
{
  "status": "error",
  "type": "error",
  "message": "Not Found",
  "errors": [
    {
      "param": "string",
      "message": "string",
      "value": null
    }
  ],
  "property1": null,
  "property2": null
}
{
  "status": "error",
  "type": "error",
  "message": "Not Found",
  "errors": [
    {
      "param": "string",
      "message": "string",
      "value": null
    }
  ],
  "property1": null,
  "property2": null
}