Documentation menu

Webhooks

API reference

POST /webhook/{webhook}/delivery

Send a test delivery

Sends one synthetic event now, even to a paused webhook, and returns the result.

The body has synthetic: true and an empty data. A test is sent once and never retried.

Parameters

path

webhookrequiredstring
A whk_ id.

Responses

201
Delivery
Successful Response
401
ProblemDetail
credential_missing, credential_invalid or credential_expired: send a live API key as Authorization: Bearer <key>.
402
ProblemDetail
quota_exhausted: the balance can't cover the call. Nothing was charged and nothing was returned.
403
ProblemDetail
scope_missing, person_required or entitlement_missing: this credential or plan can't do this. detail says which.
404
ProblemDetail
no_such_resource: nothing has that id.
409
ProblemDetail
version_conflict: the record changed since you read it. Read it again and resend.
422
ProblemDetail
parameter_invalid, id_malformed or a cursor code: a parameter's value isn't one this operation takes.
429
ProblemDetail
rate_limited: wait for Retry-After, then send it again. Not charged.

Example request

curl -X POST 'https://api.placestack.com/webhook/webhook_123/delivery' \
  -H 'Authorization: Bearer $PLACESTACK_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{
  "event_type": "ping",
  "synthetic": true
}'

Request body

DeliveryTest

{
  "event_type": "ping",
  "synthetic": true
}

Example response

{
  "object": "webhook_delivery",
  "id": "whd_01h455vb4pex5vsknk084sn02q",
  "seq": 1,
  "event_type": "ping",
  "synthetic": true,
  "subject": "<Subject>",
  "body": {},
  "body_sha256": "<Body Sha256>",
  "state": "pending",
  "attempt_count": 1,
  "next_attempt_at": "2026-09-13T12:00:00Z",
  "delivered_at": "2026-09-13T12:00:00Z",
  "dead_lettered_at": "2026-09-13T12:00:00Z",
  "response_status": 1,
  "response_body_head": "string",
  "error": "string",
  "created_at": "2026-09-13T12:00:00Z",
  "attempt": [
    "<DeliveryAttempt>"
  ]
}

The rest of webhook.