Skip to content

x402: supported payment kinds

GET
/x402/supported

Schemes, networks and fee-payer signers this facilitator accepts. Request and response bodies follow the x402 v2 facilitator protocol. Protocol failures are HTTP 200 with isValid: false / success: false and a reason code, so stock x402 clients can read them.

No API key required.

Media typeapplication/json
object
kinds
required
Array<object>
object
x402Version
required
number
scheme
required
string
network
required
string
extensions
required
Array<string>
signers
required

Fee-payer addresses by CAIP-2 pattern.

object
key
additional properties
Array<string>

Example

{
"kinds": [
{
"x402Version": 2,
"scheme": "exact",
"network": "eip155:84532"
}
],
"extensions": [],
"signers": {
"eip155:*": [
"0x6C3A8A1a2c63d3e6b4B5E9D1c1F0ae4B7e8d2f10"
]
}
}

Request validation failed (e.g. missing or malformed body / query).

Media typeapplication/json
object
code
required

Stable machine-readable error code, namespaced under exceptions.. Always prefer branching on this value over message. See the per-route descriptions for the codes that route emits.

string
message
required

Human-readable explanation. Subject to wording changes; for programmatic checks use code instead.

string
extension

Optional structured payload accompanying the error. For exceptions.rateLimit.exceeded includes msBeforeNext; for validation errors includes the offending field info.

object
key
additional properties
any

Example

{
"code": "exceptions.auth.invalidApiKey",
"message": "Invalid or missing API key"
}

Rate limit exceeded for this endpoint. Retry after the window resets. Code: exceptions.rateLimit.exceeded. The extension.msBeforeNext field tells you how long to wait.

Media typeapplication/json
object
code
required

Stable machine-readable error code, namespaced under exceptions.. Always prefer branching on this value over message. See the per-route descriptions for the codes that route emits.

string
message
required

Human-readable explanation. Subject to wording changes; for programmatic checks use code instead.

string
extension

Optional structured payload accompanying the error. For exceptions.rateLimit.exceeded includes msBeforeNext; for validation errors includes the offending field info.

object
key
additional properties
any

Example

{
"code": "exceptions.auth.invalidApiKey",
"message": "Invalid or missing API key"
}

Unexpected server error. Safe to retry idempotent operations after a backoff.

Media typeapplication/json
object
code
required

Stable machine-readable error code, namespaced under exceptions.. Always prefer branching on this value over message. See the per-route descriptions for the codes that route emits.

string
message
required

Human-readable explanation. Subject to wording changes; for programmatic checks use code instead.

string
extension

Optional structured payload accompanying the error. For exceptions.rateLimit.exceeded includes msBeforeNext; for validation errors includes the offending field info.

object
key
additional properties
any

Example

{
"code": "exceptions.auth.invalidApiKey",
"message": "Invalid or missing API key"
}