openapi: 3.2.0 info: title: Hookbase Cron Jobs API version: 1.0.0 description: Official OpenAPI 3.0 specification for the Hookbase webhook relay platform. Generated from the maintained Postman collection. Authenticate with an API key (whr_ prefix) as a Bearer token. contact: name: Hookbase url: https://www.hookbase.app servers: - url: https://api.hookbase.app description: Production security: - bearerAuth: [] tags: - name: Cron Jobs paths: /api/cron: post: tags: - Cron Jobs summary: Create cron job operationId: cron_jobs_create_cron_job responses: '200': description: Successful response description: Create a scheduled HTTP job that fires on a cron expression. requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: Required. Job name. cronExpression: type: string description: Required. Standard cron expression. url: type: string description: Required. URL to call on schedule. timezone: type: string description: Optional. IANA timezone for the schedule (default UTC). groupId: type: string description: Optional. Cron group to attach to. description: type: string description: Optional. Freeform description. method: type: string description: Optional. HTTP method (default POST). headers: type: object description: Optional. Request headers. payload: type: object description: Optional. Request body (object or string). timeoutMs: type: integer description: Optional. Request timeout ms (default 30000). notifyOnFailure: type: boolean description: Optional. Email on failure. notifyOnSuccess: type: boolean description: Optional. Email on success. notifyEmails: type: array items: type: string description: Optional. Notification recipients. required: - name - cronExpression - url example: name: Nightly sync cronExpression: 0 2 * * * url: https://api.example.com/sync timezone: UTC groupId: '{{cronGroupId}}' description: Runs the nightly data sync method: POST headers: Authorization: Bearer xxx payload: job: sync timeoutMs: 30000 notifyOnFailure: false notifyOnSuccess: false notifyEmails: - ops@example.com get: tags: - Cron Jobs summary: List cron jobs operationId: cron_jobs_list_cron_jobs responses: '200': description: Successful response description: List cron jobs for the org. /api/cron/{cronJobId}: get: tags: - Cron Jobs summary: Get cron job operationId: cron_jobs_get_cron_job parameters: - name: cronJobId in: path required: true schema: type: string responses: '200': description: Successful response description: Fetch a single cron job. patch: tags: - Cron Jobs summary: Update cron job operationId: cron_jobs_update_cron_job parameters: - name: cronJobId in: path required: true schema: type: string responses: '200': description: Successful response description: Update a cron job. All fields optional. requestBody: required: false content: application/json: schema: type: object properties: name: type: string description: Optional. Job name. cronExpression: type: string description: Optional. Cron expression. timezone: type: string description: Optional. IANA timezone. url: type: string description: Optional. Target URL. method: type: string description: Optional. HTTP method. headers: type: object description: Optional. Request headers. payload: type: object description: Optional. Request body. timeoutMs: type: integer description: Optional. Timeout ms. isActive: type: boolean description: Optional. Enable/disable the job. notifyOnFailure: type: boolean description: Optional. Email on failure. notifyOnSuccess: type: boolean description: Optional. Email on success. notifyEmails: type: array items: type: string description: Optional. Notification recipients. groupId: type: string description: Optional. Cron group id. example: name: Nightly sync cronExpression: 0 2 * * * timezone: UTC url: https://api.example.com/sync method: POST headers: Authorization: Bearer xxx payload: job: sync timeoutMs: 30000 isActive: true notifyOnFailure: false notifyOnSuccess: false notifyEmails: - ops@example.com groupId: '{{cronGroupId}}' /api/cron/{cronJobId}/trigger: post: tags: - Cron Jobs summary: Trigger cron job operationId: cron_jobs_trigger_cron_job parameters: - name: cronJobId in: path required: true schema: type: string responses: '200': description: Successful response description: Run a cron job immediately, out of schedule. /api/cron/{cronJobId}/executions: get: tags: - Cron Jobs summary: List cron job executions operationId: cron_jobs_list_cron_job_executions parameters: - name: cronJobId in: path required: true schema: type: string - name: limit in: query required: false schema: type: string example: '20' responses: '200': description: Successful response description: List recent execution history for a cron job. components: securitySchemes: bearerAuth: type: http scheme: bearer description: Hookbase API key with the whr_ prefix.