[Cotlet](https://cotlet.dev/index.md) · [Integrations](https://cotlet.dev/integrations.md) · [How it works](https://cotlet.dev/how-it-works.md) · [Use cases](https://cotlet.dev/use-cases.md) · [Security](https://cotlet.dev/security.md) · [For developers](https://cotlet.dev/for-developers.md) · [For automation agencies](https://cotlet.dev/for-agencies.md) · [Blog](https://cotlet.dev/blog.md) · [API docs](https://cotlet.dev/docs.md) · [Help center](https://cotlet.dev/help.md) · [Changelog](https://cotlet.dev/changelog.md) · [Contact](https://cotlet.dev/contact.md) · [Pricing](https://cotlet.dev/pricing.md) · [Sign up](https://cotlet.dev/signup)

# Email every candidate in a Loxo pipeline stage

> Send one email to every candidate in a Loxo job stage, logged on the job, after you approve the draft. Not an Email Automation.

Source: https://cotlet.dev/integrations/loxo-api-mcp-server/email-candidates-in-a-pipeline-stage

The Shortlist for a job holds five candidates and the client call moved to Thursday, so each of them needs the same message with the new time.

Cotlet does it in your own Loxo account with get\_job\_pipeline, get\_person and send\_email, called by your AI agent, an n8n workflow or a script.

[Sign up free](https://cotlet.dev/app/signup?app=loxo) [All Loxo tools](https://cotlet.dev/integrations/loxo-api-mcp-server.md)

Hosted · nothing to install or maintain

## Can Loxo do this on its own?

Loxo's API reference has an SMS endpoint and email tracking, but no endpoint that sends an email (checked 22 Oct 2026). In the app, a one-off email goes out from the pipeline by hand, while repeating sequences run as Email Automations on a stage or as Outreach Campaigns.

## How you do it in Loxo today

1. Open the job pipeline from the Jobs tab. Send from the pipeline, not from the People page, so Loxo links the email to the job.
2. Select the candidates with the checkboxes in the List view, or click the three dots at the top right of a stage and choose "Select All".
3. Click Email at the top, then pick the email type from the three-dot menu at the bottom of the editor and write the message.
4. Everyone appears under "To", but Loxo sends each person an individual email, and recipients do not see each other.
5. The same steps repeat for every stage and every job that the news touches.

## How to email every candidate in a Loxo pipeline stage

Prompt

```
Email everyone in the Shortlist stage of the Senior Data Engineer job: the client call moved to Thursday at 3 pm. Show me the draft first.
```

1. 01  
### Read the stage  
get\_job\_pipeline runs with the stage name and returns the candidates in it. An empty stage ends the run before a draft is written.
2. 02  
### Check the address  
get\_person shows each candidate's email types. A candidate with no address of the type you asked for goes on a skipped list with the reason, instead of getting the email on another address.
3. 03  
### Draft one message  
The agent writes the subject and body once and shows them to you. The body goes out as written to every recipient of a call, so a greeting by first name means one call per candidate.
4. 04  
### Send from the job  
send\_email runs with the job id, so Loxo links each email to the job. The call waits for your OK by default, and it is the one step in this job that reaches other people.
5. 05  
### Report who got it  
The agent lists every recipient with the email type used, and every skipped candidate, so you can follow up by phone.

### What you get back

Example data

```
Stage: Shortlist, 3 candidates
Sent 3 emails to the Primary address, linked to the job
- Priya Nair, Tom Becker, Lena Ortiz
Skipped 0
```

### Other ways to ask

- Tell everyone in Longlist that the role is on hold, using their work email.
- Email the candidates in Interviewing who have no activity this week and ask for their availability.
- Draft the Shortlist email and show it to me, but send nothing.

## What Loxo allows, and what to know first

- Loxo sends each recipient an individual email, so recipients do not see each other's details.
- An email sent from the People page is not linked to a job, while one sent from the job pipeline is.
- The Primary email is the first one listed on a person's record, and the editor lets you choose another email type.
- Loxo points to Outreach Campaigns for customized, drip or mixed-channel sequences, and to Email Automations for the same message on every job.

send\_email asks for your OK by default. To run it on a schedule without you, switch confirmation off for that tool in your dashboard.

Sources: [Loxo Help: Send a Multi-Recipient Email or Text](https://help.loxo.co/en/articles/447028-send-a-multi-recipient-email-or-text) · [Loxo Help: Move Candidates to a Different Job](https://help.loxo.co/en/articles/464485-move-candidates-to-a-different-job) · [Loxo Help: Creating Email Automations](https://help.loxo.co/en/articles/880617-creating-email-automations) · [Loxo API reference](https://loxo.readme.io/reference/loxo-api)

## Call send\_email from a script

curl

```
curl -X POST https://cotlet.dev/api/v1/loxo/jobs/2481530/emails \
  -H "Authorization: Bearer $COTLET_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"person_ids":[48211077,48211102,48211130],"subject":"Senior Data Engineer: client call moved to Thursday","body":"Hi, the client call has moved to Thursday at 3 pm. Please reply to confirm you can make it."}'
```

Example response

```
{
"job_id": 2481530,
"sent": 3,
"email_type": "Primary",
"recipients": [
{
"person_id": 48211077,
"name": "Priya Nair",
"status": "sent"
},
{
"person_id": 48211102,
"name": "Tom Becker",
"status": "sent"
},
{
"person_id": 48211130,
"name": "Lena Ortiz",
"status": "sent"
}
],
"skipped": []
}
```

MCP: add https://cotlet.dev/mcp/v1 with the same key; the call is loxo\_write → send\_email. Example data.

[Schedule it in n8n, Make, Zapier or cron](https://cotlet.dev/integrations/loxo-api-mcp-server.md#automations)

## Loxo tools this automation uses

__Cotlet Loxo tools used to email every candidate in a Loxo pipeline stage__
| Tool | Parameters |
| ------------------ | ------------------------------------------------ |
| get\_job\_pipeline | job\_id, stage |
| get\_person | person\_id |
| send\_email | job\_id, person\_ids, subject, body, email\_type |

[All 12 Loxo tools with descriptions](https://cotlet.dev/integrations/loxo-api-mcp-server.md#tools)

## Frequently asked questions

### Is it safe to connect Loxo to Cotlet?

Yes. You sign in to Loxo yourself, in your own Cloud Browser in the EU, and we never save your password. Your agents only get Loxo once you enable it, every background request is listed, and the browser profile is stored encrypted with AES-256-GCM, the cipher 1Password uses for its vaults. The AI model never sees a login, posts and messages wait for your OK, and Disable for agents cuts access in one click. Independent scanners grade cotlet.dev A+ on Qualys SSL Labs, securityheaders.com and Mozilla Observatory; live results are on https://cotlet.dev/security.

## More Loxo automations

- [Log interview outcomes in Loxo and move candidates](https://cotlet.dev/integrations/loxo-api-mcp-server/log-interview-outcomes.md)
- [Weekly Loxo recruiting activity report](https://cotlet.dev/integrations/loxo-api-mcp-server/weekly-recruiting-activity-report.md)
- [Loxo API and MCP server: every tool](https://cotlet.dev/integrations/loxo-api-mcp-server.md)
- [All use cases](https://cotlet.dev/use-cases.md)

## Give your agent access to Loxo.

Free 7-day trial with 2,000 credits, no card needed. Cotlet is independent and not affiliated with Loxo.

[Sign up free](https://cotlet.dev/app/signup?app=loxo)

---

Give your AI agents your signed-in browser.

**Product:** [Integrations](https://cotlet.dev/integrations.md) · [Use cases](https://cotlet.dev/use-cases.md) · [How it works](https://cotlet.dev/how-it-works.md) · [Pricing](https://cotlet.dev/pricing.md) · [Security](https://cotlet.dev/security.md)

**Resources:** [Blog](https://cotlet.dev/blog.md) · [API docs](https://cotlet.dev/docs.md) · [Help center](https://cotlet.dev/help.md) · [Changelog](https://cotlet.dev/changelog.md) · [GitHub](https://github.com/cotletdev/cotlet)

**Solutions:** [For developers](https://cotlet.dev/for-developers.md) · [For automation agencies](https://cotlet.dev/for-agencies.md)

**Company:** [About](https://cotlet.dev/about.md) · [AI info: company facts](https://cotlet.dev/ai-info.md) · [Contact](https://cotlet.dev/contact.md)

**Legal:** [Terms of service](https://cotlet.dev/terms) · [Privacy policy](https://cotlet.dev/privacy) · [Refund policy](https://cotlet.dev/refunds) · [Acceptable use](https://cotlet.dev/acceptable-use) · [Cookie policy](https://cotlet.dev/cookies) · [DPA](https://cotlet.dev/dpa) · [Subprocessors](https://cotlet.dev/subprocessors)

**Elsewhere:** [Status page](https://status.cotlet.dev) · [Cotlet on GitHub](https://github.com/cotletdev) · [Cotlet on X](https://x.com/cotletdev) · [Cotlet on LinkedIn](https://www.linkedin.com/company/cotletdev) · [Cotlet on Product Hunt](https://www.producthunt.com/products/cotlet) · [Cotlet on Crunchbase](https://www.crunchbase.com/organization/cotlet) · [Cotlet on SaaSHub](https://www.saashub.com/cotlet)

Cotlet is an independent service. It is not affiliated with, endorsed by or sponsored by any of the products listed on this site. Product names are trademarks of their respective owners.

## For AI agents: sign your user up

Is your user asking you to sign them up for Cotlet? You can do it for them, no account or key needed.

1. Read the fields and their allowed values: GET https://cotlet.dev/api/v1/access-requests
2. Ask the user for each value: email, apps, what you will do with them. If they leave the password to you, generate a strong one and show it to them.
3. Show the user what you will send, then POST it as JSON to https://cotlet.dev/api/v1/access-requests.

One call creates the account and sends the access request; we email the user when access is granted.
