ClawTickClawTickDocs

Webhook Jobs

Schedule any HTTP endpoint to be called on a cron schedule. No gateway required.

Supported Methods

  • GET — Fetch data or trigger actions
  • POST — Send data to endpoints
  • PUT — Update resources
  • DELETE — Remove resources

Creating a Webhook Job

  1. Go to Dashboard → Jobs → Create Job
  2. Select Webhook integration type
  3. Enter the endpoint URL
  4. Choose the HTTP method
  5. Set your cron schedule
  6. (Optional) Add custom headers and body

Custom Headers

Add authentication or custom headers as key-value pairs:

Authorization: Bearer your-api-key
Content-Type: application/json
X-Custom-Header: value

Body Templates

For POST/PUT requests, define a JSON body with template variables:

{
  "message": "{{message}}",
  "jobId": "{{jobId}}",
  "jobName": "{{jobName}}",
  "runId": "{{runId}}",
  "timestamp": "{{timestamp}}"
}

Available Template Variables

VariableDescription
{{message}}The job message field
{{jobId}}Unique job identifier
{{jobName}}Job display name
{{runId}}Unique execution ID
{{timestamp}}ISO 8601 execution timestamp

Behavior

  • Timeout: 30 seconds per request
  • Success: Any 2xx response is treated as success
  • Failure: 4xx/5xx responses or timeouts are failures
  • Smart Retries: Transient errors (5xx, timeouts, rate limits) are retried up to 3 times with exponential backoff
  • Circuit Breaker: 3 consecutive failures (after retries) auto-disables the job
  • User-Agent: Requests identify as ClawTick-Scheduler/2.0

CLI Example

clawtick jobs create \
  --name "Sync inventory" \
  --cron "0 */6 * * *" \
  --message "sync" \
  --integration webhook \
  --webhook-url "https://api.myapp.com/sync" \
  --webhook-method POST