---
name: "outreach_preview"
area: "outreach"
title: "Preview an outreach campaign"
price: "free"
method: "POST"
url: "https://api.conecto.chat/v1/tools/outreach_preview"
mcp_server: "https://api.conecto.chat/mcp/outreach"
auth: "Authorization: Bearer <conecto_sk_ key>"
docs_url: "https://conecto.chat/tools/outreach/outreach_preview"
---

# Preview an outreach campaign (`outreach_preview`)

One step of an outreach campaign as it will go, for real people: to, from, the subject and the text with the unsubscribe line.

The emails of one step as they will go, for real people of the campaign: who it goes to, from which mailbox, the subject and the text with every placeholder filled and the unsubscribe line Conecto adds (each person gets their own link, so the preview shows where it goes). Show the person the first emails before you start a campaign. Also the writing check's fixes, if any.

Price: Free up to 1,000,000 reads a month for the whole account, then $0.50 per 10,000 reads. A call that fails costs nothing.

## Use it when

Before starting a campaign, to show the person the first emails.

## Say this to your agent

> Show me exactly what the first hotel email looks like before anything goes out.

## Inputs

| Name | Type | Required | Description | Allowed values | Default |
|---|---|---|---|---|---|
| `campaign_id` | string | yes | The campaign_id outreach_save_campaign answered with. Exactly 36 characters. |  |  |
| `step` | integer | no | 1 to 5. |  | `1` |
| `limit` | integer | no | 1 to 25. |  | `3` |
| `email` | string | no | One person of the campaign. Up to 254 characters. |  |  |

## Example

Written for Halverson Cycle & Repair, a bike shop with a repair workshop in Portland, Oregon.

MCP: call `outreach_preview` on the MCP server `https://api.conecto.chat/mcp/outreach` with these arguments:

```json
{
  "campaign_id": "6f1c1b7e-4a1e-4d55-9a0b-0f7c3e9a2b11",
  "limit": 2
}
```

REST:

```bash
curl https://api.conecto.chat/v1/tools/outreach_preview \
  -H "Authorization: Bearer $CONECTO_KEY" \
  -H "Content-Type: application/json" \
  -d '{"campaign_id": "6f1c1b7e-4a1e-4d55-9a0b-0f7c3e9a2b11", "limit": 2}'
```

## Response

```json
{
  "call_id": "5f0c8a2e-3b7d-4c1e-9a64-2d8e1f7b0c93",
  "tool": "outreach_preview",
  "status": "succeeded",
  "replayed": false,
  "cost_usd": "$0.00",
  "balance_usd": "$19.75",
  "result": {
    "campaign_id": "6f1c1b7e-4a1e-4d55-9a0b-0f7c3e9a2b11",
    "step": 1,
    "people": 2,
    "emails": [
      {
        "to": "owen@hawthornehotel.example",
        "name": "Owen Price",
        "from": "Dana Halverson <dana@halversoncycle.example>",
        "mailbox_id": 4101,
        "subject": "Guest bikes for Hawthorne Hotel",
        "text": "Hi Owen,\n\nGuests at the Hawthorne Hotel already ask your front desk where to rent bikes.\n\nWe rent city bikes to hotels in Portland and service them every week, so your front desk never deals with a flat tire. Guests ride to the waterfront in ten minutes.\n\nCould I bring two bikes by on Thursday so your staff can try them?\n\nDana Halverson\nHalverson Cycle & Repair\n\nUnsubscribe: [their own unsubscribe link]"
      },
      {
        "to": "maya@alderstreethotel.example",
        "name": "Maya Brooks",
        "from": "Dana Halverson <dana@halversoncycle.example>",
        "mailbox_id": 4101,
        "subject": "Guest bikes for The Alder Street Hotel",
        "text": "Hi Maya,\n\nYour new rooftop bar makes the Alder Street Hotel a stop for every visitor downtown.\n\nWe rent city bikes to hotels in Portland and service them every week, so your front desk never deals with a flat tire. Guests ride to the waterfront in ten minutes.\n\nCould I bring two bikes by on Thursday so your staff can try them?\n\nDana Halverson\nHalverson Cycle & Repair\n\nUnsubscribe: [their own unsubscribe link]"
      }
    ],
    "writing": {
      "passed": true,
      "fixes": []
    }
  }
}
```

`result`: campaign_id, step, people (how many the campaign emails), emails (to, name, from, mailbox_id, subject, text) and writing (passed and fixes).

## Errors

| Code | Status | When | Fix |
|---|---|---|---|
| `not_found` | 404 | No campaign has that id, or the email is not one of its people. | Use a campaign_id from outreach_campaigns. |

The refusals every tool can give (401 key, 402 balance, 429 limits) are on the errors page: https://conecto.chat/docs/errors.md

## Related

- [outreach_connect_mailbox](https://conecto.chat/tools/outreach/outreach_connect_mailbox.md): A one-hour link for the owner to connect their own mailbox for outreach, typing its password on a Conecto page. Free.
- [outreach_mailboxes](https://conecto.chat/tools/outreach/outreach_mailboxes.md): The business's mailboxes connected for outreach, each with its state, daily limit, what it sent today and its bounce rate; never a password. Free up to 1,000,000 reads a month.
- [outreach_update_mailbox](https://conecto.chat/tools/outreach/outreach_update_mailbox.md): Rename an outreach mailbox, change its daily limit, pause or resume its sending, or disconnect it. Free.
- [outreach_save_campaign](https://conecto.chat/tools/outreach/outreach_save_campaign.md): Create or change an outreach campaign: its mailboxes, the emails you write, the audience, a first line per person and when it sends. Free.
- [outreach_start](https://conecto.chat/tools/outreach/outreach_start.md): Start an outreach campaign the person approved; $0.01 per person when their first email leaves. Free.
- [outreach_campaigns](https://conecto.chat/tools/outreach/outreach_campaigns.md): The business's outreach campaigns, newest first, each with its status and numbers. Free up to 1,000,000 reads a month.
- [outreach_get_campaign](https://conecto.chat/tools/outreach/outreach_get_campaign.md): An outreach campaign with its numbers, each step's emails and replies, and its people page by page with their status. Free up to 1,000,000 reads a month.
- [outreach_replies](https://conecto.chat/tools/outreach/outreach_replies.md): The replies to the business's outreach campaigns, newest first, with who wrote, the text and their status now. Free up to 1,000,000 reads a month.
- [outreach_set_status](https://conecto.chat/tools/outreach/outreach_set_status.md): Keep in the CRM whether someone outreach reached is interested or not; their pending emails stop. Free.
- [outreach_pause](https://conecto.chat/tools/outreach/outreach_pause.md): Pause a running outreach campaign; replies are still read and resuming carries on. Free.
- [outreach_resume](https://conecto.chat/tools/outreach/outreach_resume.md): Resume a paused outreach campaign once what paused it is fixed. Free.
- [outreach_stop](https://conecto.chat/tools/outreach/outreach_stop.md): End an outreach campaign for good; nobody it hasn't emailed is emailed or charged. Free.
