Schedule one HTTPS callback after an integer delay of 60 through 86400 seconds
Schedule one HTTPS callback after an integer delay of 60 through 86400 seconds. The delay is anchored once to the first durable payment verification time, so identical retries cannot move the scheduled time. One payment purchases one at-least-once wake.
2000 (raw units)
price
8
calls / 30d
3
unique payers
2026-08-30
updated
Provider
wake402.agentwake.workers.dev · discovered, not yet claimed by its owner
Payment (x402 accepts[])
[
{
"scheme": "exact",
"network": "eip155:8453",
"payTo": "0x4e1D6C25E1E89BD1e17654FA8Ca3c4d0Cfd3b5d6",
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"amount": "2000",
"maxTimeoutSeconds": 60
}
]Output schema
{
"bazaar": {
"info": {
"input": {
"body": {
"callback": "https://agent.example.com/wake",
"delay_seconds": 300
},
"bodyType": "json",
"method": "POST",
"type": "http"
}
},
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"input": {
"additionalProperties": false,
"properties": {
"body": {
"additionalProperties": false,
"properties": {
"callback": {
"description": "Public HTTPS callback URL on standard port 443; WAKE402 applies its full SSRF validation before payment verification.",
"maxLength": 2048,
"pattern": "^https://",
"type": "string"
},
"delay_seconds": {
"description": "Delay after the first durable payment verification, from 60 through 86400 seconds. Identical retries preserve the original derived time.",
"maximum": 86400,
"minimum": 60,
"type": "integer"
}
},
"required": [
"callback",
"delay_seconds"
],
"type": "object"
},
"bodyType": {
"enum": [
"json",
"form-data",
"text"
],
"type": "string"
},
"method": {
"enum": [
"POST"
],
"type": "string"
},
"type": {
"const": "http",
"type": "string"
}
},
"required": [
"type",
"method",
"bodyType",
"body"
],
"type": "object"
}
},
"required": [
"input"
],
"type": "object"
}
},
"payment-identifier": {
"info": {
"required": true
},
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"id": {
"maxLength": 128,
"minLength": 16,
"pattern": "^[a-zA-Z0-9_-]+$",
"type": "string"
},
"required": {
"type": "boolean"
}
},
"required": [
"required"
],
"type": "object"
}
},
"wake402-request-commitment": {
"info": {
"domain": {
"chainId": "derived from accepted.network",
"name": "WAKE402",
"verifyingContract": "accepted.asset",
"version": "2"
},
"payerBinding": "recovered commitment signer must equal the payer returned by official x402 verification and the verified EIP-3009 authorization.from",
"primaryType": "WakeAfterRequest",
"proofPath": "extensions.wake402-request-commitment.proof.signature",
"requestCanonicalization": {
"callback": "validated WHATWG HTTPS URL serialized with URL.toString()",
"delaySeconds": "validated request delay_seconds integer from 60 through 86400",
"requestFingerprint": "sha256(utf8(JSON.stringify({protocol:\"WAKE402_RELATIVE_REQUEST_V1\",callback:<canonical>,delay_seconds:<integer>})))"
},
"required": true,
"scheduledTimeDerivation": {
"anchor": "immutable payment_attempts.first_verified_at",
"formula": "scheduled_at = first_verified_at + delay_seconds",
"recomputeFromRetryTime": false
},
"signatureScheme": "eip712",
"signedFields": [
"protocol",
"paymentIdentifier",
"requestFingerprint",
"callback",
"delaySeconds",
"network",
"asset",
"amount",
"payTo"
],
"version": "2"
},
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false,
"properties": {
"signature": {
"description": "EIP-712 signature by the same EVM payer as the x402 authorization.",
"pattern": "^0x[0-9a-fA-F]{128}(?:[0-9a-fA-F]{2})?$",
"type": "string"
}
},
"required": [
"signature"
],
"type": "object"
}
}
}Use it
curl
curl "https://wake402.agentwake.workers.dev/v1/wake-after" # -> 402 Payment Required, accepts[] lists how to pay # retry with a PAYMENT-SIGNATURE (or PAYMENT header) once paid
JavaScript
const res = await fetch("https://wake402.agentwake.workers.dev/v1/wake-after");
if (res.status === 402) {
const { accepts } = await res.json();
// pay one of accepts[] via an x402 client, then retry with the payment header
}Python
import httpx
res = httpx.get("https://wake402.agentwake.workers.dev/v1/wake-after")
if res.status_code == 402:
accepts = res.json()["accepts"]
# pay one of accepts[] via an x402 client, then retry with the payment headerMachine-readable
Everything on this page is also available as clean JSON at /resources/9047.json, and this resource appears in /discovery/resources and /discovery/search.