Send an email
Sends an email from one of the business's inboxes, with files from the store attached, or answers a received message in its thread.
$0.001 to one person without attachments
From your agent’s balance. A call that fails costs nothing.
An example
Email Rachel Kim from hello@ that her new Willamette 8 is built and ready to pick up from Thursday, and that we're open until 7. Attach the chain care guide.
Your agent callsemail_send$0.001 to one person without attachments
The example business is Halverson Cycle & Repair, a bike shop with a repair workshop in Portland, Oregon. The reply is the one the tool really gives.
{
"inbox": "hello@halverson-cycle-repair.useconecto.com",
"to": [
"rachel.kim@example.com"
],
"subject": "Your Willamette 8 is ready",
"text": "Hi Rachel,\n\nyour new Willamette 8 is built, tuned and ready to pick up from Thursday, October 22. We're open until 7 pm and set the saddle height with you when you come. Our chain care guide is attached.\n\nSee you soon,\nHalverson Cycle & Repair",
"attachments": [
"5d7f9b1d-3a5c-4e7a-9c1e-6b8d0f2a4c6e"
]
}Use it when
Someone should get an email from the business: a reply, an order update, a document.
- For a newsletter to its subscribers, use
newsletters_send_issue. - For a reply on a support ticket, use
ticket_reply. - For an answer in the website chat, use
chat_reply.
What it does
Send from one of this account's inboxes. Give reply_to_message_id to answer a received message in the same thread. attachments: up to 10 files of the file store, 25 MB together. Up to 20 recipients. For support, operations and replies, not cold outreach: at most 20 new addresses a day, never first to an address found with Conecto's lookups; free credit can't email outsiders. An email to someone who never wrote first is checked before it goes: one that looks like cold outreach isn't sent, and the third within 7 days pauses the account's email. Unless by_person, a last line says the business's AI assistant wrote it. Big files are cheaper as a download link (files_get) in the text.
What comes back
sent: the message with its message_id, inbox, from, to, cc, subject, time, thread, contact_id and the ticket it belongs to, if any. Every reply also carries cost_usd and balance_usd.
Inputs
| Name | Type | What it is |
|---|---|---|
inboxRequired | string | Up to 254 characters. |
toRequired | array of strings | 1 to 20 items. |
cc | array of strings | Up to 19 items. |
subject | string | Up to 500 characters. |
textRequired | string | Up to 100,000 characters. |
html | string | Up to 300,000 characters. |
reply_to_message_id | string | Exactly 36 characters. |
attachments | array of strings | File ids from the file store (files_list), up to 10 files and 25 MB together. Up to 10 items. |
by_person | boolean | true when a person at the business wrote it. Otherwise a last line says the business's AI assistant wrote it (EU AI Act Art. 50). Default: false. |
The call
Over MCP, call email_send on https://api.conecto.chat/mcp/email. Over REST:
curl -X POST https://api.conecto.chat/v1/tools/email_send \
-H "Authorization: Bearer $CONECTO_KEY" \
-H "Content-Type: application/json" \
-d '{"inbox":"hello@halverson-cycle-repair.useconecto.com","to":["rachel.kim@example.com"],"subject":"Your Willamette 8 is ready","text":"Hi Rachel,\n\nyour new Willamette 8 is built, tuned and ready to pick up from Thursday, October 22. We'\''re open until 7 pm and set the saddle height with you when you come. Our chain care guide is attached.\n\nSee you soon,\nHalverson Cycle & Repair","attachments":["5d7f9b1d-3a5c-4e7a-9c1e-6b8d0f2a4c6e"]}'When it refuses
A refused call costs nothing and says what to do next.
| Code | When | What to do |
|---|---|---|
not_found404 | No active inbox of the business has that address. | Call email_list_inboxes and use one of its addresses. |
not_found404 | reply_to_message_id is not a message of the business, or an attachment is not a file in its store. | Use a message_id from email_list_messages and file_ids from files_list. |
invalid_input400 | An address is not an email address, there are more than 20 recipients, or more than 10 attachments. | Fix the addresses the message names, or split the recipients or files over several emails. |
too_large413 | The attachments add up to more than 25 MB. | Send big files as download links from files_get. |
unsupported_type400 | Email cannot carry a file of that kind (like .exe or .js). | Send a download link from files_get instead. |
payment_required_for_outbound402 | The balance is still free credit, which cannot email people outside the business. | Top up once (POST /v1/topups); after that email to outsiders works. |
new_recipient_limit429 | The business has emailed as many new addresses today as it may. | Send to these people tomorrow. Replies and people who wrote first are not limited. |
sending_paused403 | Email from the business is paused after bounces, complaints or emails refused as cold outreach. | Tell the owner; Conecto reviews the pause before sending resumes. |
suppressed422 | An address bounced, complained or unsubscribed before. | Remove the addresses the message lists and send again. |
found_by_lookup422 | An address was found or checked with Conecto's lookups; a Conecto inbox never writes to it first. | Write from the business's own mailbox (google_mail_send or m365_mail_send). |
cold_email422 | The email looks like cold outreach, a pitch or a request to people who never wrote to the business, so it wasn't sent. The third within 7 days pauses the account's email. | Email only people who wrote first or asked to hear from the business. |
check_unavailable503 | The check an email to someone new goes through couldn't run just now. | Try again in a minute. |
send_failed502 | The email service did not accept the email. | Call again in a moment. |
sending_unavailable503 | Email to outsiders is not possible yet while the sending account is in review. | Send to the owner's address for now, or try again later. |
More Email tools
All 10 tools- Create an inbox
email_create_inboxA new email address for the business on its own subdomain, which sends and receives at once.$1.00 a call - List inboxes
email_list_inboxesThe business's inboxes, whether each opens tickets or saves attachments, and when each renews.Free* - Change an inbox
email_update_inboxChanges an inbox's sender name, switches saving its attachments to the file store on or off, or changes how much it saves a day.$0.001 a call - List messages
email_list_messagesMessages in the business's inboxes, newest first: received, sent or both, for one inbox, one sender or since a time.Free* - Read a message
email_get_messageOne message in full: its text, HTML and attachment names.Free* - Read a thread
email_get_threadEvery message of one conversation, oldest first.Free* - Mark where a thread stands
email_update_threadMarks an email thread open, waiting, handled or archived, and sets its labels.$0.001 a call - Save an email's attachments
email_save_attachmentsSaves the files attached to one received email into the file store, each linked to the email.$0.001 per file saved
Give this to your agent.
Set up Conecto from https://conecto.chat/SKILL.md