{"uid":"cap_JOwStoa0os1Yigrk06Vm2","slug":"2s-schedule-create-one-shot-and-recurring-callback-scheduler-1b2953a7","name":"2s Schedule Create — One-Shot and Recurring Callback Scheduler","description":"The (most) everything API: 575+ pay-per-call endpoints for AI agents — ground-truth data, a full AI gateway, and agent infrastructure (storage, queues, watchers). USDC via x402, no signup, no API keys, and upto billing: pay actual usage, not the quote.","url":"https://2s.io/api/schedule/create","method":"POST","headers":{},"bodySchema":{"type":"object","properties":{"at":{"type":"string","description":"ISO-8601 timestamp for a ONE-SHOT fire. e.g. \"2026-07-01T14:00:00Z\". Provide this OR everySeconds, not both."},"label":{"type":"string","maxLength":64,"description":"Optional free-text tag to recognize this schedule later."},"payload":{"type":"object","description":"Arbitrary JSON echoed in every callback (plus scheduleId, fireNumber, firedAt). e.g. {\"job\":\"digest\"}.","additionalProperties":{}},"maxFires":{"type":"integer","maximum":1000,"minimum":1,"description":"Stop after this many fires (recurring only). Default 25, max 1000."},"callbackUrl":{"type":"string","maxLength":2048,"description":"Where we POST when it fires. Any http(s) URL; the JSON body is signed (verify with X-2s-Signature)."},"everySeconds":{"type":"integer","minimum":60,"description":"Recurring interval in seconds (≥60). Provide this OR at."},"expiresInSeconds":{"type":"integer","minimum":60,"description":"Auto-expire the schedule after this long. Default + max 90 days."}}},"responseSchema":null,"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.125","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"probe","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.125/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.125","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.125","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_iOSZwJEn6jPa_7WiN6teE","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.125","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Creates a one-shot or recurring scheduled job that POSTs a signed callback to a given URL at a specified time or interval","exampleAgentPrompt":"Set up a recurring callback to https://myapp.example.com/hooks/digest every 3600 seconds with payload {\"job\":\"daily-digest\"}, stop after 30 fires, and label it 'daily-digest-job'.","exampleUseCases":[{"title":"Daily digest trigger for an agent pipeline","prompt":"Create a recurring schedule that POSTs to https://myapp.example.com/hooks/digest every 3600 seconds with payload {\"job\":\"digest\"}, label it 'daily-digest', and stop after 30 fires."},{"title":"One-shot reminder callback at a future time","prompt":"Schedule a one-time callback to https://myapp.example.com/hooks/reminder at 2026-07-01T09:00:00Z with payload {\"alert\":\"meeting-start\"} and label it 'team-meeting-reminder'."},{"title":"Recurring health-check heartbeat","prompt":"Set up a recurring webhook to https://myapp.example.com/healthcheck every 60 seconds with payload {\"check\":\"heartbeat\"}, max 1000 fires, and label it 'heartbeat-monitor'."}],"resultDescription":"Returns an object with ok:true and an items array containing the created schedule's scheduleId, status, nextFire timestamp, everySeconds interval, maxFires limit, expiresAt timestamp, and callbackSigner public key used to verify signed callbacks. Also includes a source object with provider, URL, and license metadata.","failureModes":["Providing both 'at' and 'everySeconds' simultaneously returns a validation error","'at' timestamp in the past may be rejected","everySeconds below 60 is rejected as below minimum","callbackUrl missing or malformed returns a validation error","maxFires above 1000 is rejected","expiresInSeconds below 60 is rejected","Payment failure or insufficient USDC balance prevents schedule creation","Callback URL unreachable at fire time results in a missed delivery with no retry guarantee"],"whenToPreferThis":"Choose this endpoint when you need a lightweight, pay-per-call, keyless scheduler that delivers signed HTTP callbacks either once at a precise future timestamp or on a recurring interval. It is ideal for AI agent workflows that need timed triggers without maintaining their own cron infrastructure. Prefer it over self-hosted cron or managed job queues when you want zero setup, USDC micropayment billing, and cryptographically signed callbacks for verification.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-09-15T16:57:43.205Z","isFirstParty":false}