EdgeCron API Docs

Webhook Pipeline

Understand the core EdgeCron flow from trigger to delivery, retry, and dead letter.

EdgeCron is not just a cron expression. It is an observable, retryable, recoverable webhook delivery pipeline.

Endpoint

01

Trigger

02

Task Run

03

Delivery Attempt

04

Retry Job

05

Dead Letter

06

Core objects

Endpoint

Where to send

The target webhook destination. It owns the callback URL, method, headers, timeout, optional signing secret, retry policy binding, and event subscriptions.

Schedule Trigger

When to send

A cron or one-shot time rule. It creates Task Runs when time arrives; it does not perform the HTTP request itself.

Event Trigger

Why to send

A named business event such as invoice.paid. Endpoint filters decide which destinations receive the event, then fanout creates Task Runs.

Task Run

One execution instance

Runtime work created by a schedule, event fanout, or direct API call. Use it to track status or cancel pending execution.

Delivery Attempt

One HTTP call

A single outbound request to an Endpoint. It records status code, latency, response summary, error message, attempt number, and trace IDs.

Retry Job

Scheduled recovery

A queued retry created from a retryable failed Delivery Attempt. Retry policy controls max attempts and backoff.

How one request flows

01

Endpoint

Configure where EdgeCron sends callbacks: URL, method, headers, timeout, signing secret, retry policy, and event filters.

02

Trigger

A schedule, event publish, or direct API call decides why and when execution should start.

03

Task Run

EdgeCron creates one concrete execution instance bound to an endpoint and payload.

04

Delivery Attempt

Workers perform HTTP calls and record status, latency, response body, and request IDs.

05

Retry Job

Retryable failures are scheduled by policy with fixed, linear, or exponential backoff.

06

Dead Letter

Failures that exhaust attempts are kept for manual review, replay, or compensation.

The two common trigger paths

Schedule trigger

You create a Schedule with a cron expression or one-shot time. When time arrives, the scheduler creates Task Runs and workers create Delivery Attempts.

Event trigger

Your app publishes an Event such as invoice.paid. EdgeCron matches endpoint event filters, fans out, and creates one Task Run per matched endpoint.

Direct task

You can also create a Task Run directly for immediate delivery, delayed one-off delivery, or compensation workflows.

Runtime states in plain language

pending / running

The Task Run is waiting or executing. This does not yet mean the target Endpoint has accepted the webhook.

success

The target Endpoint returned 2xx, so the Delivery Attempt is successful and the Task Run can finish.

failed / retry_scheduled

Timeouts, network errors, and retryable responses are recorded and can schedule Retry Jobs according to policy.

dead_letter

Maximum attempts were exhausted. The failed work is preserved for investigation, manual replay, or business compensation.

Common confusions

  • Endpoint is not Event: Endpoint is the destination; Event is the business input.
  • Schedule does not send HTTP directly: it creates Task Runs, and workers perform delivery.
  • Task Run is not a reusable template: it is one runtime execution instance.
  • Delivery Attempt is not Task Run: a single Task Run can produce multiple attempts.

On this page