Uptimely

Create a webhook endpoint

POST
/v1/webhook-endpoints

Registers an https:// endpoint to receive signed event deliveries (Standard Webhooks). The response carries the signing secret ONCE. URLs must be https on port 443 without embedded credentials, and every delivery additionally re-resolves DNS and refuses private, loopback, link-local and cloud-metadata addresses.

Authorization

bearerAuth
AuthorizationBearer <token>

An uptimely_live_ project API key (Settings → API Keys).

In: header

Header Parameters

Idempotency-Key?string

Optional client-generated key (1-255 visible ASCII characters; a UUID works) making this POST safely retryable. Retrying with the SAME key and byte-identical body within 24h replays the stored first response. The same key with a different body answers 422 idempotency_key_reused; a retry racing the first execution answers 409 idempotency_in_progress. Omitting the header executes normally with no idempotency guarantee.

Length1 <= length <= 255

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

curl -X POST "https://example.com/v1/webhook-endpoints" \  -H "Content-Type: application/json" \  -d '{    "url": "http://example.com",    "event_types": [      "monitor.status_changed"    ]  }'
{  "endpoint": {    "id": "string",    "url": "string",    "description": "string",    "event_types": [      "monitor.status_changed"    ],    "enabled": true,    "disabled_reason": "string",    "consecutive_failures": 0,    "secret_hint": "string",    "created_at": "2019-08-24T14:15:22Z",    "updated_at": "2019-08-24T14:15:22Z"  },  "secret": "string"}