Skip to content

Replay a captured event against an alternate target

POST
/v1/endpoints/{endpointId}/events/{eventId}/replay
curl --request POST \
--url https://api.catchbin.io/v1/endpoints/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/events/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/replay \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "mode": "example", "target_url": "example", "target_secret": "example" }'
endpointId
required
string format: uuid
eventId
required
string format: uuid
Media typeapplication/json
object
mode
string
target_url
required
string
>= 1 characters
target_secret
string
Examplegenerated
{
"mode": "example",
"target_url": "example",
"target_secret": "example"
}

OK

Media type*/*
object
result
string
target_status
integer format: int32
network_failure_reason
string
duration_ms
integer format: int64
response_excerpt_base64
string
excerpt_truncated
boolean
source_body_truncated
boolean
mode
string
target_url
string
event_id
string format: uuid
audit_id
string format: uuid

Per-account daily replay limit reached. The response carries a Retry-After header (seconds to the next UTC midnight) and RateLimit-Limit / RateLimit-Remaining / RateLimit-Reset headers.

Media type*/*

The error reply carried by every error response on every non-receiver surface. Consumers branch on error; message is a fixed constant for every refusal code, so it never varies with the cause of a refusal.

object
error
required

Stable machine-readable code identifying the class of error.

string
message
required

Human-readable text. May describe what the caller did wrong; never describes anything the caller cannot access, and never carries a stack trace, exception type name or exception message.

string
details
required

Always present, always an object, empty by default. A validation failure puts the offending field here.

object
key
additional properties
string
requestId
required

The request’s reference id. Equals the X-Request-Id response header on the same reply and the requestId on that request’s log lines — quote it to support and the exact request resolves in one search.

string

Catchbin had no spare outbound capacity for the destination and never contacted it (error code egress_capacity_exhausted). The response carries Retry-After: 1 and deliberately no RateLimit-* headers: capacity is momentary and shared, not a per-caller budget. Nothing was sent, nothing was recorded, and the daily replay allowance is untouched.

Media type*/*

The error reply carried by every error response on every non-receiver surface. Consumers branch on error; message is a fixed constant for every refusal code, so it never varies with the cause of a refusal.

object
error
required

Stable machine-readable code identifying the class of error.

string
message
required

Human-readable text. May describe what the caller did wrong; never describes anything the caller cannot access, and never carries a stack trace, exception type name or exception message.

string
details
required

Always present, always an object, empty by default. A validation failure puts the offending field here.

object
key
additional properties
string
requestId
required

The request’s reference id. Equals the X-Request-Id response header on the same reply and the requestId on that request’s log lines — quote it to support and the exact request resolves in one search.

string
Download OpenAPI spec:YAML · JSON