Returns JSON checking an x402 endpoint without paying: whether it answers 402, the parsed payment options (scheme, network, asset, amount, payTo), Bazaar discovery metadata and problems found.
Use this when you need an x402 endpoint test or validation of a paid API before integrating or listing it.
Do not use for actually paying the endpoint, or endpoints behind authentication.
Price: 0.007 USDC per call (x402, eip155:8453). Typical response time: 2500 ms (p95).
POST https://x402-gateway.blackwoodstate8.workers.dev/v1/x402-check. A request without payment gets 402 Payment Required with the
PAYMENT-REQUIRED header; any x402 client signs an EIP-3009 authorization and retries with
PAYMENT-SIGNATURE (or X-PAYMENT). Invalid input is answered with 400 and not charged.
curl -i -X POST https://x402-gateway.blackwoodstate8.workers.dev/v1/x402-check -H 'content-type: application/json' -d '{"url":"https://x402.org/protected"}'
| Pay to | 0x9e32E6163ac2cDfF1405746918e00d16F6E0A0de |
|---|---|
| Asset | 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913 (USDC) |
| Amount | 7000 atomic units (0.007 USDC) |
| Authorization window | 60 s |
Streamable HTTP at https://x402-gateway.blackwoodstate8.workers.dev/mcp, tool blackwood_x402_check. Payment goes in
_meta["x402/payment"]; without it the tool returns the payment requirements.
| Field | Type | Meaning |
|---|---|---|
url | string | Public http(s) URL of the x402 endpoint, e.g. https://x402.org/protected |
method (optional) | string | HTTP method of the endpoint (GET when omitted) |
body (optional) | object | JSON body to send with POST, e.g. {"url": "https://example.com"} (no payment is ever attached) |
Example:
{
"url": "https://x402.org/protected"
}
Real example:
{
"url": "https://x402.org/protected",
"finalUrl": "https://x402.org/protected",
"status": 402,
"x402": true,
"version": 2,
"resource": {
"url": "https://x402.vercel.app/protected",
"description": "Access to protected content",
"mimeType": null
},
"accepts": [
{
"scheme": "exact",
"network": "eip155:84532",
"asset": "0x036CbD53842c5426634e7929541eC2318f3dCF7e",
"amount": "10000",
"amountUsd": 0.01,
"payTo": "0x209693Bc6afc0C5328bA36FaF03C514EF312287C",
"maxTimeoutSeconds": 300
},
{
"scheme": "exact",
"network": "solana:EtWTRABZaYq6iMfeYKouRu166VU2xqa1",
"asset": "4zMMC9srt5Ri5X14GAgXhaHii3GnPAEERYPJgZJDncDU",
"amount": "10000",
"amountUsd": 0.01,
"payTo": "CKPKJWNdJEqa81x7CkZ14BVPiY6y16Sxs7owznqtWYp5",
"maxTimeoutSeconds": 300
}
],
"bazaar": {
"present": false,
"inputSchema": false,
"outputSchema": false
},
"problems": [
"no_bazaar_metadata: without discovery metadata the endpoint is hard to find in the Bazaar"
],
"checkedAt": "2026-10-17T16:49:24.432Z"
}
{
"type": "object",
"properties": {
"url": {
"type": "string"
},
"finalUrl": {
"type": "string"
},
"status": {
"type": "number"
},
"x402": {
"type": "boolean"
},
"version": {
"type": [
"number",
"null"
]
},
"resource": {
"anyOf": [
{
"type": "object",
"properties": {
"url": {
"type": [
"string",
"null"
]
},
"description": {
"type": [
"string",
"null"
]
},
"mimeType": {
"type": [
"string",
"null"
]
}
},
"required": [
"url",
"description",
"mimeType"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"accepts": {
"type": "array",
"items": {
"type": "object",
"properties": {
"scheme": {
"type": [
"string",
"null"
]
},
"network": {
"type": [
"string",
"null"
]
},
"asset": {
"type": [
"string",
"null"
]
},
"amount": {
"type": [
"string",
"null"
]
},
"amountUsd": {
"type": [
"number",
"null"
]
},
"payTo": {
"type": [
"string",
"null"
]
},
"maxTimeoutSeconds": {
"type": [
"number",
"null"
]
}
},
"required": [
"scheme",
"network",
"asset",
"amount",
"amountUsd",
"payTo",
"maxTimeoutSeconds"
],
"additionalProperties": false
}
},
"bazaar": {
"type": "object",
"properties": {
"present": {
"type": "boolean"
},
"inputSchema": {
"type": "boolean"
},
"outputSchema": {
"type": "boolean"
}
},
"required": [
"present",
"inputSchema",
"outputSchema"
],
"additionalProperties": false
},
"problems": {
"type": "array",
"items": {
"type": "string"
}
},
"checkedAt": {
"type": "string"
}
},
"required": [
"url",
"finalUrl",
"status",
"x402",
"version",
"resource",
"accepts",
"bazaar",
"problems",
"checkedAt"
],
"additionalProperties": false
}Free schema and example: GET https://x402-gateway.blackwoodstate8.workers.dev/v1/x402-check.
OpenAPI 3.1 · llms.txt · All services