Send a test event to an endpoint now and see what it answered (status, body, latency).

POSThttps://api.appgoat.ai/v1/webhooks/{id}/test
FreeoperationId testWebhook

Request

curl -X POST "https://api.appgoat.ai/v1/webhooks/123/test" \
  -H "x-api-key: $APPGOAT_API_KEY"

Path parameters

idintegerrequired

Response

200 with data: object. See the envelope for meta.

delivery_idstring
okboolean
response_statusinteger | null
response_bodystring | null
errorstring | null
duration_msinteger
eventEvent
Also the body of webhook deliveries and the GitHub client_payload (10 top-level keys).
Example
{
  "data": {
    "delivery_id": "string",
    "ok": false,
    "response_status": 1,
    "response_body": "string",
    "error": "string",
    "duration_ms": 1,
    "event": {
      "id": "4812",
      "type": "new_version",
      "created_at": "2026-10-22T08:15:02.000Z",
      "watch_id": 12,
      "app": {
        "store": "apple",
        "app_id": "324684580",
        "title": "Spotify",
        "icon_url": null
      },
      "country": "us",
      "title": "Spotify released version 9.0.2 (was 9.0.1)",
      "summary": "Spotify 9.0.2 adds offline lyrics and fixes CarPlay crashes.",
      "significance": 0.81,
      "payload": {
        "version": "9.0.2",
        "previous_version": "9.0.1",
        "release_notes": "Offline lyrics. CarPlay fixes."
      }
    }
  },
  "meta": {
    "credits_used": 0,
    "credits_remaining": 9981,
    "request_id": "req_123"
  }
}

Status codes

200
The attempt (ok false when the endpoint did not answer 2xx).
Missing or invalid API key.
insufficient_credits (the call costs more than you have left; nothing was done) or plan_limit (a feature of a higher plan).
Not found.
Too many requests per second for your plan.