Skip to content

Fetch one event

GET
/v1/events/{event_id}
curl 'https://api.pacepayments.ai/v1/events/<event_id>' \
--header 'Authorization: Bearer <token>'
event_id
required
Event Id
string

Successful Response

Media typeapplication/json
Event

One envelope for both routes - webhook delivery and the feed.

object
id
required
Id

The deduplication key. Stable across retries AND replays.

string
type
required
Type
string
occurred_at
required
Occurred At
string format: date-time
api_version
Api Version
string
default: v1
environment
required
Environment

Check against your own tenant environment BEFORE processing - never mix the two streams.

string
Allowed values: live sandbox
sequence
Any of:
integer
related
required
EventRelated
object
call_order_id
Any of:
string
call_id
Any of:
string
enrollment_id
Any of:
string
signal_id
Any of:
string
client_reference
Any of:
string
subject_reference
Any of:
string
data
Any of:
object
key
additional properties
any
Example
{
"api_version": "v1",
"environment": "live"
}

No valid access token. Client action: request a new token from the token endpoint and retry once. Repeated 401 with a fresh token means the client registration is disabled - contact Pace, do not retry in a loop.

Media typeapplication/problem+json
Problem
object
type
required
Type
string
title
required
Title
string
status
required
Status
integer
code
required
Code
string
detail
Any of:
string
instance
Any of:
string
trace_id
Any of:
string
errors
Any of:
Array<object>
FieldError
object
pointer
required
Pointer

RFC 6901 pointer to the offending field in the request body. Errors outside the body carry their source as the first segment (e.g. /query/limit).

string
code
required
Code

Stable field error code (open registry).

string
message
Any of:
string
Examplegenerated
{
"type": "example",
"title": "example",
"status": 1,
"code": "example",
"detail": "example",
"instance": "example",
"trace_id": "example",
"errors": [
{
"pointer": "example",
"code": "example",
"message": "example"
}
]
}

Authenticated but not permitted. insufficient_scope names the missing scope in detail; feature_not_enabled means the tenant lacks the feature; ip_not_allowlisted means the source IP is not on the client registration’s allowlist; simulate_not_allowed means a sandbox-only simulate block was sent to the live host. None of these are retryable.

Media typeapplication/problem+json
Problem
object
type
required
Type
string
title
required
Title
string
status
required
Status
integer
code
required
Code
string
detail
Any of:
string
instance
Any of:
string
trace_id
Any of:
string
errors
Any of:
Array<object>
FieldError
object
pointer
required
Pointer

RFC 6901 pointer to the offending field in the request body. Errors outside the body carry their source as the first segment (e.g. /query/limit).

string
code
required
Code

Stable field error code (open registry).

string
message
Any of:
string
Examplegenerated
{
"type": "example",
"title": "example",
"status": 1,
"code": "example",
"detail": "example",
"instance": "example",
"trace_id": "example",
"errors": [
{
"pointer": "example",
"code": "example",
"message": "example"
}
]
}

Validation Error

Media typeapplication/json
HTTPValidationError
object
detail
Detail
Array<object>
ValidationError
object
loc
required
Location
Array
msg
required
Message
string
type
required
Error Type
string
input
Input
ctx
Context
object
Examplegenerated
{
"detail": [
{
"loc": [
"example"
],
"msg": "example",
"type": "example",
"input": "example",
"ctx": {}
}
]
}

HTTP rate limit (rate_limited) or execution capacity refusal (quota_exceeded, backlog_full) - two distinct layers. Wait for Retry-After, then retry the identical request with the same Idempotency-Key. backlog_full will not clear in seconds; back off to minutes.

Media typeapplication/problem+json
Problem
object
type
required
Type
string
title
required
Title
string
status
required
Status
integer
code
required
Code
string
detail
Any of:
string
instance
Any of:
string
trace_id
Any of:
string
errors
Any of:
Array<object>
FieldError
object
pointer
required
Pointer

RFC 6901 pointer to the offending field in the request body. Errors outside the body carry their source as the first segment (e.g. /query/limit).

string
code
required
Code

Stable field error code (open registry).

string
message
Any of:
string
Examplegenerated
{
"type": "example",
"title": "example",
"status": 1,
"code": "example",
"detail": "example",
"instance": "example",
"trace_id": "example",
"errors": [
{
"pointer": "example",
"code": "example",
"message": "example"
}
]
}
Retry-After
integer

Seconds until the next attempt is permitted.

RateLimit-Limit
integer
RateLimit-Remaining
integer
RateLimit-Reset
integer

Error (RFC 9457). Branch on code, never on title or detail.

Media typeapplication/problem+json
Problem
object
type
required
Type
string
title
required
Title
string
status
required
Status
integer
code
required
Code
string
detail
Any of:
string
instance
Any of:
string
trace_id
Any of:
string
errors
Any of:
Array<object>
FieldError
object
pointer
required
Pointer

RFC 6901 pointer to the offending field in the request body. Errors outside the body carry their source as the first segment (e.g. /query/limit).

string
code
required
Code

Stable field error code (open registry).

string
message
Any of:
string
Examplegenerated
{
"type": "example",
"title": "example",
"status": 1,
"code": "example",
"detail": "example",
"instance": "example",
"trace_id": "example",
"errors": [
{
"pointer": "example",
"code": "example",
"message": "example"
}
]
}