← Catalog

Cold email sending API from inboxes you own

email.send

live

Send an email from one of your inboxes, or reply within a thread. You are the sender of record: consent and unsubscribe handling are yours.

live coverage

AgentMail: all inputs ✓

✓ marks a combination proven with a real provider call. Others are wired and unit-tested; their first live run verifies them.

Providers

ProviderStatus
AgentMail live

Billing

Unit: per_email · unmatched results billed: no
Priced per email sent.

The exact quote is returned by /v1/inspect before every call and held with headroom on execution. The quote is the price floor: if the provider's actual cost overruns it, the run bills the overrun at the same rate, never above the hold. The unused part of every hold is released.

Run it

curl https://api.jell.run/v1/run \
  -H "Authorization: Bearer $JELL_API_KEY" \
  -d '{
    "capability": "email.send",
    "input": { "inbox_id": "...", "to": "..." },
    "routing": {"provider": "auto"}
  }'

Input schema

{
  "properties": {
    "bcc": {
      "items": {
        "type": "string"
      },
      "type": "array"
    },
    "cc": {
      "items": {
        "type": "string"
      },
      "type": "array"
    },
    "html": {
      "type": "string"
    },
    "in_reply_to": {
      "description": "message_id to reply to; keeps the thread",
      "type": "string"
    },
    "inbox_id": {
      "description": "From email.inbox or email.inboxes. The From name is the inbox\u0027s display_name; change it with email.inbox (inbox_id + display_name), there is no per-email override",
      "type": "string"
    },
    "reply_to": {
      "type": "string"
    },
    "subject": {
      "type": "string"
    },
    "text": {
      "type": "string"
    },
    "to": {
      "description": "Up to 50 recipients",
      "items": {
        "type": "string"
      },
      "type": "array"
    },
    "unsubscribe_url": {
      "description": "Adds a List-Unsubscribe header",
      "type": "string"
    }
  },
  "required": [
    "inbox_id",
    "to"
  ],
  "type": "object"
}

Normalized output fields

message_id · thread_id

Used in these guides

Turn competitor commenters on LinkedIn into a qualified lead list →Cold email infrastructure, end to end →