Events
Send, retrieve, and query webhook events.
Ingest Event
POST /e/:endpoint_idSend an event to a specific endpoint. Just POST JSON with your API key — no signing required.
Headers
| Header | Required | Description |
|---|---|---|
Authorization | Yes | Bearer API key |
X-Event-Type | No | Event type (auto-detected from event_type in body if omitted) |
X-Correlation-ID | No | Your tracking ID for this event (max 128 chars, alphanumeric + -_) |
X-PromptJang-Signature | Conditional | Required only when inbound signature verification is enabled |
X-PromptJang-Timestamp | Conditional | Required only when inbound signature verification is enabled |
Request Body
json
{
"event_type": "order.created",
"data": {
"order_id": "ORD-001",
"amount": 99.99
}
}The body can be any JSON. event_type is extracted from the body or the X-Event-Type header.
Response
HTTP 202 Acceptedjson
{
"id": "a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6",
"status": "QUEUED"
}Save the id — use it to check delivery status later.
List Events
GET /api/v1/eventsQuery Parameters
| Param | Type | Default | Description |
|---|---|---|---|
limit | integer | 50 | Results per page (max 100) |
offset | integer | 0 | Offset for pagination |
endpoint_id | string | — | Filter by endpoint |
status | string | — | Filter by status |
event_type | string | — | Filter by event type |
correlation_id | string | — | Filter by your correlation ID |
Response
json
{
"events": [
{
"id": "a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6",
"endpoint_id": "4e2eba24818c6a8bbbdab486cfad9785",
"event_type": "order.created",
"status": "DELIVERED",
"created_at": "2026-05-27T12:00:00Z"
}
],
"total": 142,
"limit": 50,
"offset": 0
}Get Event
GET /api/v1/events/:idResponse
json
{
"id": "a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6",
"org_id": "e5f6a7b8c9d0e1f2a3b4c5d6e7f8a9b0",
"endpoint_id": "4e2eba24818c6a8bbbdab486cfad9785",
"event_type": "order.created",
"status": "DELIVERED",
"payload": {
"order_id": "ORD-001",
"amount": 99.99
},
"delivery_attempts": [
{
"id": "da_7a337feef0633bcfa20ae1b0ba3e0372",
"status_code": 200,
"duration_ms": 145,
"attempted_at": "2026-05-27T12:00:01Z"
}
],
"created_at": "2026-05-27T12:00:00Z"
}Replay Event
POST /api/v1/events/:id/replayRe-delivers a past event. The original event is marked REPLAYED and a new event is created.
Response
json
{
"id": "f1e2d3c4b5a697886970615043322110",
"status": "QUEUED"
}