> ## Documentation Index
> Fetch the complete documentation index at: https://docs.reply.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Automate outbound end-to-end

> Event-driven and scheduled automation — webhooks for real-time reactions, CLI + cron for recurring hygiene.

**Outcome:** workflows that run without anyone asking — inbound leads answered in minutes, lists
that stay clean, dormant contacts revived on a schedule.

## Best interface

<Note>
  **API + webhooks** — event-driven automation is REST-only: subscribe once, react in real time.
  **CLI + cron** — scheduled jobs like a weekly hygiene sweep are a natural fit for
  [`--json` composition](/cli/agents#composition-patterns).
</Note>

## Pattern 1: Event-driven (inbound lead follow-up)

Speed-to-lead is most of the conversion rate. This loop is event-driven end to end — no polling:

<Steps>
  <Step title="Receive the signal">
    A [webhook event](/webhook-events) (or your product's own signup/demo-request event) tells the
    agent a lead arrived. Payload shapes: [Webhook event payloads](/webhook-event-payloads).
  </Step>

  <Step title="Upsert and qualify">
    Create/update the contact with source context in custom fields
    ([Create contacts](/guides/import-contacts)); score against your ICP.
    <Note>Auto-enrichment of the lead is **coming soon** (Enrichment API).</Note>
  </Step>

  <Step title="Route to the right sequence">
    Hot leads → short, direct sequence; colder → nurture. Add the contact and start
    ([Launch outreach](/guides/launch-outreach)). For an immediate one-off first response outside
    a sequence, use the outreach-action endpoints ([API Reference](/api-reference/introduction)).
  </Step>

  <Step title="Manage the conversation">
    Watch reply categories and meeting intent ([Process replies](/guides/convert-replies-to-meetings));
    meetings and activity land in reporting automatically.
  </Step>
</Steps>

## Pattern 2: Scheduled (list hygiene + re-engagement)

Deliverability is a compounding asset. A weekly cron sweep keeps the base clean, then re-engages
what survives:

<Steps>
  <Step title="Segment stale and risky contacts">
    ```bash theme={null}
    reply api '/v3/contacts/filter?top=1000' \
      --body '{"rules":[{"property":"<property>","condition":"<condition>","value":"<value>"}]}' --json
    ```

    Filter by last activity, bounce history, or missing fields. The available `property` and
    `condition` names are listed with the Filter contacts endpoint in the
    [API Reference](/api-reference/introduction); page with `top` and `skip` until `hasMore` is
    `false`.
  </Step>

  <Step title="Validate and suppress">
    Schedule email validation across the segment; add bounced domains, opt-outs, and competitor
    domains to blacklist rules (Suppression & Blacklist API — see
    [API Reference](/api-reference/introduction)).
  </Step>

  <Step title="Prune and re-segment">
    Bulk-update or remove dead records; move survivors into clean lists.
  </Step>

  <Step title="Re-engage the dormant segment">
    Run a light-touch sequence (2–3 low-pressure touches) against contacts that finished without
    converting. Load reengagement cards into a Jason knowledge base for a fresh angle
    ([Build an AI SDR](/guides/build-an-ai-sdr)).
    <Note>Re-enrichment before re-engagement ("did they change jobs?") is **coming soon**.</Note>
  </Step>

  <Step title="Measure the effect">
    Compare bounce and reply rates before/after with `POST /v3/reporting/emails/overview` (its
    `compareTo` field returns the trend against a previous period); track the revival rate to decide
    if the sweep becomes quarterly.
  </Step>
</Steps>

## Availability notes

* Webhooks, contact CRUD, validation, suppression, sequences, and reporting: **available today**.
* Enrichment-dependent steps (lead auto-enrichment, dormant-refresh): **coming soon**.

## Related

* [Webhook events catalog](/webhook-events) · [Payloads](/webhook-event-payloads)
* [Using the CLI from agents & scripts](/cli/agents)
* [Convert replies into meetings](/guides/convert-replies-to-meetings) · [Build a supervised AI SDR](/guides/build-an-ai-sdr)
