Send an email message
curl --request POST \
--url https://api.altahq.com/v1/inbox/email/messages/send \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"prospectId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"emailMessageIdToReplyTo": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"body": "<string>"
}
'import requests
url = "https://api.altahq.com/v1/inbox/email/messages/send"
payload = {
"prospectId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"emailMessageIdToReplyTo": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"body": "<string>"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
prospectId: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
emailMessageIdToReplyTo: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
body: JSON.stringify('<string>')
})
};
fetch('https://api.altahq.com/v1/inbox/email/messages/send', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.altahq.com/v1/inbox/email/messages/send",
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([
'prospectId' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'emailMessageIdToReplyTo' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'body' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.altahq.com/v1/inbox/email/messages/send"
payload := strings.NewReader("{\n \"prospectId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"emailMessageIdToReplyTo\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"body\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.altahq.com/v1/inbox/email/messages/send")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"prospectId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"emailMessageIdToReplyTo\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"body\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.altahq.com/v1/inbox/email/messages/send")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"prospectId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"emailMessageIdToReplyTo\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"body\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"messageId": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}{
"error": "ValidationError",
"message": "Invalid request body"
}{
"error": "Unauthorized",
"message": "Invalid API token"
}{
"error": "TooManyRequests",
"message": "Rate limit exceeded. Please retry after 60 seconds."
}Email
Send an email message
Sends a reply email to a prospect. The reply is sent in the context of an existing email thread. Rate limited to 10 requests per minute.
POST
/
inbox
/
email
/
messages
/
send
Send an email message
curl --request POST \
--url https://api.altahq.com/v1/inbox/email/messages/send \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"prospectId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"emailMessageIdToReplyTo": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"body": "<string>"
}
'import requests
url = "https://api.altahq.com/v1/inbox/email/messages/send"
payload = {
"prospectId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"emailMessageIdToReplyTo": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"body": "<string>"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
prospectId: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
emailMessageIdToReplyTo: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
body: JSON.stringify('<string>')
})
};
fetch('https://api.altahq.com/v1/inbox/email/messages/send', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.altahq.com/v1/inbox/email/messages/send",
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([
'prospectId' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'emailMessageIdToReplyTo' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'body' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.altahq.com/v1/inbox/email/messages/send"
payload := strings.NewReader("{\n \"prospectId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"emailMessageIdToReplyTo\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"body\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.altahq.com/v1/inbox/email/messages/send")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"prospectId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"emailMessageIdToReplyTo\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"body\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.altahq.com/v1/inbox/email/messages/send")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"prospectId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"emailMessageIdToReplyTo\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"body\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"messageId": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}{
"error": "ValidationError",
"message": "Invalid request body"
}{
"error": "Unauthorized",
"message": "Invalid API token"
}{
"error": "TooManyRequests",
"message": "Rate limit exceeded. Please retry after 60 seconds."
}Authorizations
API token authentication. Generate a token from the Alta dashboard and pass it as a Bearer token in the Authorization header.
Body
application/json
The UUID of the prospect to send the email to.
The UUID of the email message to reply to. The reply is sent in the same thread.
The email body content.
Minimum string length:
1Override the default recipients. If omitted, replies to the original sender.
Show child attributes
Show child attributes
Response
Email sent successfully
The ID of the sent email message.