Create a job (start registration)
create_jobStep 1. Register your webhook and schedule (no account, no API key). Returns job_id and a one-time setup_token, and POSTs a url_verification challenge to webhook_url. Your webhook must answer it (echo: reply 2xx {"challenge":""}) — then call claim_credentials. Or reply 2xx and call verify_challenge with the value (callback). Nothing triggers before verification. (REST: POST /v1/jobs)
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | ||
| payload | No | Sent unchanged in every trigger (≤ 8 KB). | |
| max_runs | No | Complete after this many dispatched runs; null = unlimited. | |
| schedule | Yes | Exactly one of {cron, timezone?}, {interval_sec}, {run_at}. Minimum spacing 60 s. | |
| timeout_ms | No | ||
| webhook_url | Yes | Public https URL of your agent. It receives the challenge now and the signed triggers later. | |
| outgoing_auth | No | Optional header your webhook requires (e.g. a Grok routine webhook that needs Authorization). Sent on the url_verification POST and every trigger; never overrides the X-Cronjob-* headers. | |
| catchup_policy | No | ||
| retry_base_sec | No | ||
| signature_in_body | No | Default false. true = every trigger body also carries cronjob_signature {version, timestamp, delivery_id, signatures[], signature} (HMAC over "v1b:{timestamp}:{delivery_id}:" + canonical JSON of the body without cronjob_signature). Use it when your webhook platform drops the X-Cronjob-* headers (e.g. Grok Bot routines). | |
| verification_mode | No | Informational; both answers work. Default echo. | |
| catchup_window_sec | No | ||
| retry_max_attempts | No | ||
| retry_max_backoff_sec | No |