https://api.veriko.mx/v1/webhooks/{id}/regenerate-secretRegenerate webhook signing secret
How-to guide →Rotates the secret used to sign this endpoint's delivery bodies. The new secret travels exactly once, in this response, and there is no way to read it again.
The previous one is invalidated at once: there is no overlap window. A receiver validating signatures will stop validating the following deliveries until the new secret is configured on it, so the rotation is worth coordinating with that deployment.
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
id* | path | string (uuid) | required | Unique identifier of the webhook endpoint (UUID v4). e.g.f47ac10b-58cc-4372-a567-0e02b2c3d479 |
curl -X POST 'https://api.veriko.mx/v1/webhooks/{id}/regenerate-secret' \
-H 'Authorization: Bearer veriko_••••' \
-H 'Content-Type: application/json'Python example — coming soon.
JavaScript example — coming soon.
PHP example — coming soon.
| Field | Type | Description |
|---|---|---|
type* | string | JSON:API resource type. Always webhook_endpoint |
id* | string (uuid) | Unique identifier of the webhook endpoint (UUID v4). e.g.a1b2c3d4-e5f6-7890-abcd-ef0123456789 |
attributes* | object | Webhook endpoint data (receiver URL, subscribed events, status, and secret). |
url* | string (uri) | URL that receives the webhook. In production it is rejected if it does not use HTTPS, if it resolves to a private address, or if it is longer than 2048 characters. e.g.https://example.com/webhooks/entregas |
events* | array (items: 1–10, unique items) | Events the endpoint subscribes to, from 1 to 10. |
description* | string | nullnullable | Free-form label to tell this endpoint apart from the others. e.g.Alta de pagos en el ERP |
status* | string |
active |
consecutive_failures* | integer | Number of consecutive failures. Resets on the first success. e.g.0 |
last_delivery_at* | TimestampUTC | null | Date and time of the last successful delivery, in ISO 8601 UTC. |
secret | string | Shared secret for signature verification. Only present in the create and rotate-secret responses; omitted from every other response. It is used to validate the a0b1c2d3e4f5061728394a5b6c7d8e9f00112233445566778899aabbccddeeff |
secret_hint | string | Last 4 characters of the secret, prefixed with ...4f2a |
created_at* | string (date-time) | ISO 8601 timestamp in UTC with an explicit 2026-05-01T05:14:38Z |
updated_at* | string (date-time) | ISO 8601 timestamp in UTC with an explicit 2026-05-01T05:14:38Z |
| Status | Class | Description | Body |
|---|---|---|---|
| 200 | 2xx | New signing secret generated. Returned only in this response. | WebhookEndpoint |
| 401 | 4xx | Authentication is required or the provided credentials are invalid. | ErrorResponse |
| 403 | 4xx | Insufficient permissions. | ErrorResponse |
| 404 | 4xx | not_found: Endpoint does not exist or does not belong to the user. | ErrorResponse |
| 429 | 4xx | Rate limit exceeded | ErrorResponse |
| Status | Code | Example |
|---|---|---|
| 401 | unauthorized | Invalid or missing authentication credentials. Envelope
|
| 403 | permission_denied | You do not have permission to access this resource. Envelope
|
| 429 | rate_limit_exceeded | Rate limit exceeded. Try again in 45 seconds. Envelope
Response headers
|