Webhook Capture API Endpoint - Free Public API

Endpoint URL:
https://aisenseapi.com/services/v1/webhook_capture

Description:
This API provides a simple way to capture and inspect incoming HTTP webhook requests from external services. It is designed for testing webhook integrations, debugging API callbacks, and analyzing incoming request payloads.

The API works by first creating a capture session. The session returns a unique capture ID and two URLs:

update_url
Used as the webhook endpoint where external systems send their HTTP requests.

read_url
Used to retrieve the most recent captured request associated with the session.

When a request is sent to the update URL, the API records the full HTTP request including method, headers, query parameters, client IP address, and request body. If the body contains valid JSON it is automatically parsed and returned in structured form.

Captured requests are stored temporarily and automatically expire after 24 hours.

Response Format:

  • Content-Type: application/json
  • Create Capture Session

Request:
POST https://aisenseapi.com/services/v1/webhook_capture

Example Success Response: json

{
"ok": true,
"capture_id": "6f8c9e52-3f2c-4e73-9d3b-8d6c3f6d1c91",
"update_url": "https://aisenseapi.com/services/v1/webhook_capture/6f8c9e52-3f2c-4e73-9d3b-8d6c3f6d1c91/update",
"read_url": "https://aisenseapi.com/services/v1/webhook_capture/6f8c9e52-3f2c-4e73-9d3b-8d6c3f6d1c91",
"expire_timestamp": 1772893200,
}

Sending a Webhook Request

Send any HTTP request to the returned update URL. The request will be captured and stored.

Example webhook endpoint:

https://aisenseapi.com/services/v1/webhook_capture/{capture_id}/update

Requests can be sent using any HTTP method:

GET
POST
PUT
PATCH
DELETE

Example payload

{
"event": "payment.created",
"amount": 499,
"currency": "USD"
}

Retrieving a Captured Request

To retrieve the most recent captured request, send a GET request to the read URL returned when the capture session was created.

Example

GET https://aisenseapi.com/services/v1/webhook_capture/{capture_id}

Example Response: json

{
 "ok": true,
 "capture_id": "6f8c9e52-3f2c-4e73-9d3b-8d6c3f6d1c91",
 "captured_at_timestamp": 1772806800,
 "captured_at_datetime": "2026-03-06T14:20:00Z",
 "request": {
  "method": "POST",
  "uri": "/services/v1/webhook_capture/6f8c9e52-3f2c-4e73-9d3b-8d6c3f6d1c91/update",
  "headers": {
   "content-type": "application/json"
  },
  "client_ip": "203.0.113.10",
  "body": {
   "json": {
    "event": "payment.created",
    "amount": 499
   },
   "text": null,
   "base64": null,
   "raw_length": 38
  }
 }
}

Example Error Response: json

{ “error”: “Capture id unknown” }

Use Cases

Testing third party webhook integrations such as Stripe, GitHub, Shopify, Slack, or payment providers.

Inspecting HTTP headers and request bodies sent by external systems.

Debugging API callbacks during development.

Capturing and analyzing raw HTTP requests from external services.

Typical Workflow

  1. Create a capture session using the endpoint above.

  2. Copy the returned update_url.

  3. Configure the update_url as the webhook endpoint in Stripe, GitHub, Shopify, or another service.

  4. Trigger a webhook event from the external service.

  5. Open the read_url to inspect the captured request.

Captured data is automatically deleted after 24 hours.

Scroll to Top