Skip to main content
POST
/
inbox
/
email
Send Email
curl --request POST \
  --url https://api.lemlist.com/api/inbox/email \
  --header 'Authorization: Basic <encoded-value>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "sendUserId": "usr_FU6yAd3UdBFel0UDy",
  "sendUserEmail": "john@example.com",
  "sendUserMailboxId": "usm_pmZsNNO1gl5nwCQ07",
  "message": "<p>Hello,</p><p>Following up on our conversation...</p>"
}
'
import requests

url = "https://api.lemlist.com/api/inbox/email"

payload = {
    "sendUserId": "usr_FU6yAd3UdBFel0UDy",
    "sendUserEmail": "john@example.com",
    "sendUserMailboxId": "usm_pmZsNNO1gl5nwCQ07",
    "message": "<p>Hello,</p><p>Following up on our conversation...</p>"
}
headers = {
    "Authorization": "Basic <encoded-value>",
    "Content-Type": "application/json"
}

response = requests.post(url, json=payload, headers=headers)

print(response.text)
const options = {
  method: 'POST',
  headers: {Authorization: 'Basic <encoded-value>', 'Content-Type': 'application/json'},
  body: JSON.stringify({
    sendUserId: 'usr_FU6yAd3UdBFel0UDy',
    sendUserEmail: 'john@example.com',
    sendUserMailboxId: 'usm_pmZsNNO1gl5nwCQ07',
    message: '<p>Hello,</p><p>Following up on our conversation...</p>'
  })
};

fetch('https://api.lemlist.com/api/inbox/email', options)
  .then(res => res.json())
  .then(res => console.log(res))
  .catch(err => console.error(err));
require 'uri'
require 'net/http'

url = URI("https://api.lemlist.com/api/inbox/email")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Basic <encoded-value>'
request["Content-Type"] = 'application/json'
request.body = "{\n  \"sendUserId\": \"usr_FU6yAd3UdBFel0UDy\",\n  \"sendUserEmail\": \"john@example.com\",\n  \"sendUserMailboxId\": \"usm_pmZsNNO1gl5nwCQ07\",\n  \"message\": \"<p>Hello,</p><p>Following up on our conversation...</p>\"\n}"

response = http.request(request)
puts response.read_body
<?php

$curl = curl_init();

curl_setopt_array($curl, [
  CURLOPT_URL => "https://api.lemlist.com/api/inbox/email",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => json_encode([
    'sendUserId' => 'usr_FU6yAd3UdBFel0UDy',
    'sendUserEmail' => 'john@example.com',
    'sendUserMailboxId' => 'usm_pmZsNNO1gl5nwCQ07',
    'message' => '<p>Hello,</p><p>Following up on our conversation...</p>'
  ]),
  CURLOPT_HTTPHEADER => [
    "Authorization: Basic <encoded-value>",
    "Content-Type: application/json"
  ],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
{
  "ok": true,
  "contactId": "ctc_JgrwGbHKgFoEnunBA"
}
"Bad team"
"The authentication you supplied is incorrect"

Authorizations

Authorization
string
header
required

Basic authentication header of the form Basic <encoded-value>, where <encoded-value> is the base64-encoded string username:password.

Body

application/json
sendUserId
string
required

Sender user ID

sendUserEmail
string
required

Sender email address

sendUserMailboxId
string
required

Sender mailbox ID

message
string
required

Email message (HTML)

contactId
string

Contact ID. Provide either contactId or leadId (not both required). Returned in the response.

leadId
string

Lead ID. Provide either contactId or leadId; when only leadId is sent, its contact is resolved and returned as contactId in the response.

subject
string

Email subject. Required for a standalone email; on a reply (replyToActivityId set) omit to reuse the thread's subject.

cc
string[]

CC email addresses. On a reply, omit to inherit the thread's CC; pass a list to override, or an empty array to send without CC.

replyToActivityId
string

Reply within an existing email thread. Pass a specific email activity ID (act_...) or "latest" for the contact's most recent email. Threads the message (In-Reply-To) and reuses the thread's subject. Omit to send a standalone email. If "latest" and the contact has no prior email, a standalone email is sent.

Response

Success

ok
boolean

True when the email was sent.

contactId
string

The contact the email was sent to (resolved from leadId when only a lead was provided).