{"openapi":"3.1.0","info":{"title":"Scheduler","version":"1.0.0","description":"Durable scheduled and recurring HTTP c future actions without keeping a process alive;wallet-scoped timers.","contact":{"email":"support@payweave.app"},"x-guidance":"Durable scheduled and recurring HTTP c future actions without keeping a process alive;wallet-scoped timers.\nEach endpoint takes a JSON request and returns either a 200 with the result or a 402 Payment Required challenge (MPP / x402). Pricing is fixed per endpoint in USD; the per-operation `x-payment-info` block carries the exact challenge metadata (price, accepted protocols, payment realm).\nFor per-endpoint schemas, examples, and detailed usage, fetch https://api.payweave.app/app/app_okelkytzwl127o1m5yz8m3c6/skill.md or `<this-origin>/<path>/skill.md` for a single endpoint."},"x-service-info":{"categories":["Agent infrastructure","Scheduling","Cron"]},"servers":[{"url":"https://scheduler.payweave.services"}],"paths":{"/schedules":{"get":{"summary":"Scheduler: List Schedules","description":"List the schedules owned by the calling wallet, each with id, label, status, and next run time. Returns up to 100.","x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.001000"},"protocols":[{"mpp":{"method":"tempo","intent":"charge","currency":"0x20c000000000000000000000b9537d11c60e8b50","network":"eip155:4217","amount":"1000"}},{"mpp":{"method":"solana","intent":"charge","currency":"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v","network":"solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp","amount":"1000"}},{"x402":{"scheme":"exact","network":"eip155:8453","currency":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount":"1000","extra":{"name":"USD Coin","version":"2"}}},{"x402":{"scheme":"exact","network":"solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp","currency":"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v","amount":"1000"}}],"description":"List the schedules owned by the calling wallet, each with id, label, status, and next run time. Returns up to 100."},"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","properties":{"schedules":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"label":{"type":"string"},"status":{"type":"string"},"nextRunAt":{"type":["number","null"]},"createdAt":{"type":"number"}},"required":["id","status","nextRunAt","createdAt"],"additionalProperties":false}}},"required":["schedules"],"additionalProperties":false}}}},"402":{"description":"Payment Required"}}},"post":{"summary":"Scheduler: Create Schedule","description":"Schedule an HTTPS callback to fire once (`at` / `delaySeconds`) or on a bounded recurring cadence (`everySeconds` + `maxRuns`). Deliveries are signed (HMAC over timestamp + body using the returned `signingSecret`) and retried with backoff. Priced per fire ($0.002): one-shot = $0.002, recurring = $0.002 x maxRuns (prepaid; cancelling early forfeits unused fires).","x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.002000"},"protocols":[{"mpp":{"method":"tempo","intent":"charge","currency":"0x20c000000000000000000000b9537d11c60e8b50","network":"eip155:4217","amount":"2000"}},{"mpp":{"method":"solana","intent":"charge","currency":"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v","network":"solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp","amount":"2000"}},{"x402":{"scheme":"exact","network":"eip155:8453","currency":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount":"2000","extra":{"name":"USD Coin","version":"2"}}},{"x402":{"scheme":"exact","network":"solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp","currency":"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v","amount":"2000"}}],"description":"Schedule an HTTPS callback to fire once (`at` / `delaySeconds`) or on a bounded recurring cadence (`everySeconds` + `maxRuns`). Deliveries are signed (HMAC over timestamp + body using the returned `signingSecret`) and retried with backoff. Priced per fire ($0.002): one-shot = $0.002, recurring = $0.002 x maxRuns (prepaid; cancelling early forfeits unused fires)."},"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string"},"status":{"type":"string"},"kind":{"type":"string"},"nextRunAt":{"type":["number","null"]},"runsRemaining":{"type":"number"},"signingSecret":{"type":"string"},"label":{"type":"string"},"metadata":{"type":"object","additionalProperties":{}}},"required":["id","status","kind","nextRunAt","runsRemaining","signingSecret"],"additionalProperties":false}}}},"402":{"description":"Payment Required"}},"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"callbackUrl":{"type":"string","description":"HTTPS URL to POST when the schedule fires. Must be public (no private/internal IPs)."},"at":{"type":["string","number"],"description":"One-shot fire time: ISO 8601 string or epoch ms. Must be future, within 90 days."},"delaySeconds":{"type":"integer","exclusiveMinimum":0,"description":"One-shot: fire once after N seconds."},"everySeconds":{"type":"integer","description":"Recurring interval in seconds (min 60). Requires maxRuns."},"maxRuns":{"type":"integer","description":"Recurring: total number of fires (1..1000). Requires everySeconds."},"payload":{"description":"Optional JSON body delivered to callbackUrl on each fire."},"headers":{"type":"object","additionalProperties":{"type":"string"},"description":"Optional extra request headers (reserved/sensitive headers are stripped)."},"label":{"type":"string","minLength":1,"maxLength":128,"description":"Short purpose label. Returned on info/list."},"metadata":{"type":"object","additionalProperties":{},"description":"Arbitrary small JSON object describing the schedule. Returned on info/list."}},"required":["callbackUrl"],"additionalProperties":false}}}}}},"/schedules/{id}":{"delete":{"summary":"Scheduler: Cancel Schedule","description":"Cancel a schedule and stop future fires. Owner-scoped. Prepaid recurring fires that have not run are forfeited (refunds are full-only).","x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.000500"},"protocols":[{"mpp":{"method":"tempo","intent":"charge","currency":"0x20c000000000000000000000b9537d11c60e8b50","network":"eip155:4217","amount":"500"}},{"mpp":{"method":"solana","intent":"charge","currency":"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v","network":"solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp","amount":"500"}},{"x402":{"scheme":"exact","network":"eip155:8453","currency":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount":"500","extra":{"name":"USD Coin","version":"2"}}},{"x402":{"scheme":"exact","network":"solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp","currency":"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v","amount":"500"}}],"description":"Cancel a schedule and stop future fires. Owner-scoped. Prepaid recurring fires that have not run are forfeited (refunds are full-only)."},"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","properties":{"ok":{"type":"boolean","const":true},"id":{"type":"string"}},"required":["ok","id"],"additionalProperties":false}}}},"402":{"description":"Payment Required"}},"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}]},"get":{"summary":"Scheduler: Schedule Info","description":"Get a schedule status, next/last run, run count, runs remaining, label/metadata, and recent delivery history. Owner-scoped.","x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.000500"},"protocols":[{"mpp":{"method":"tempo","intent":"charge","currency":"0x20c000000000000000000000b9537d11c60e8b50","network":"eip155:4217","amount":"500"}},{"mpp":{"method":"solana","intent":"charge","currency":"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v","network":"solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp","amount":"500"}},{"x402":{"scheme":"exact","network":"eip155:8453","currency":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount":"500","extra":{"name":"USD Coin","version":"2"}}},{"x402":{"scheme":"exact","network":"solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp","currency":"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v","amount":"500"}}],"description":"Get a schedule status, next/last run, run count, runs remaining, label/metadata, and recent delivery history. Owner-scoped."},"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string"},"kind":{"type":"string"},"status":{"type":"string"},"createdAt":{"type":"number"},"nextRunAt":{"type":["number","null"]},"lastRunAt":{"type":["number","null"]},"runCount":{"type":"number"},"runsRemaining":{"type":"number"},"runs":{"type":"array","items":{"type":"object","properties":{"firedAt":{"type":"number"},"ok":{"type":"boolean"},"httpStatus":{"type":["number","null"]},"attempts":{"type":"number"},"error":{"type":"string"}},"required":["firedAt","ok","httpStatus","attempts"],"additionalProperties":false}},"label":{"type":"string"},"metadata":{"type":"object","additionalProperties":{}}},"required":["id","kind","status","createdAt","nextRunAt","lastRunAt","runCount","runsRemaining","runs"],"additionalProperties":false}}}},"402":{"description":"Payment Required"}},"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}]}}}}