curl --request POST \
--url https://api.hubapi.com/automation/v4/sequences/enrollments \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"contactId": "<string>",
"senderEmail": "<string>",
"sequenceId": "<string>",
"senderAliasAddress": "<string>"
}
'import requests
url = "https://api.hubapi.com/automation/v4/sequences/enrollments"
payload = {
"contactId": "<string>",
"senderEmail": "<string>",
"sequenceId": "<string>",
"senderAliasAddress": "<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({
contactId: '<string>',
senderEmail: '<string>',
sequenceId: '<string>',
senderAliasAddress: '<string>'
})
};
fetch('https://api.hubapi.com/automation/v4/sequences/enrollments', 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.hubapi.com/automation/v4/sequences/enrollments",
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([
'contactId' => '<string>',
'senderEmail' => '<string>',
'sequenceId' => '<string>',
'senderAliasAddress' => '<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.hubapi.com/automation/v4/sequences/enrollments"
payload := strings.NewReader("{\n \"contactId\": \"<string>\",\n \"senderEmail\": \"<string>\",\n \"sequenceId\": \"<string>\",\n \"senderAliasAddress\": \"<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.hubapi.com/automation/v4/sequences/enrollments")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"contactId\": \"<string>\",\n \"senderEmail\": \"<string>\",\n \"sequenceId\": \"<string>\",\n \"senderAliasAddress\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.hubapi.com/automation/v4/sequences/enrollments")
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 \"contactId\": \"<string>\",\n \"senderEmail\": \"<string>\",\n \"sequenceId\": \"<string>\",\n \"senderAliasAddress\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"enrolledAt": "2023-11-07T05:31:56Z",
"id": "<string>",
"toEmail": "<string>",
"updatedAt": "2023-11-07T05:31:56Z"
}{
"message": "Invalid input (details will vary based on the error)",
"correlationId": "aeb5f871-7f07-4993-9211-075dc63e7cbf",
"category": "VALIDATION_ERROR",
"links": {
"knowledge-base": "https://www.hubspot.com/products/service/knowledge-base"
}
}Enroll a contact into a sequence
Enroll a contact into a sequence using the specified user ID and sequence details.
curl --request POST \
--url https://api.hubapi.com/automation/v4/sequences/enrollments \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"contactId": "<string>",
"senderEmail": "<string>",
"sequenceId": "<string>",
"senderAliasAddress": "<string>"
}
'import requests
url = "https://api.hubapi.com/automation/v4/sequences/enrollments"
payload = {
"contactId": "<string>",
"senderEmail": "<string>",
"sequenceId": "<string>",
"senderAliasAddress": "<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({
contactId: '<string>',
senderEmail: '<string>',
sequenceId: '<string>',
senderAliasAddress: '<string>'
})
};
fetch('https://api.hubapi.com/automation/v4/sequences/enrollments', 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.hubapi.com/automation/v4/sequences/enrollments",
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([
'contactId' => '<string>',
'senderEmail' => '<string>',
'sequenceId' => '<string>',
'senderAliasAddress' => '<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.hubapi.com/automation/v4/sequences/enrollments"
payload := strings.NewReader("{\n \"contactId\": \"<string>\",\n \"senderEmail\": \"<string>\",\n \"sequenceId\": \"<string>\",\n \"senderAliasAddress\": \"<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.hubapi.com/automation/v4/sequences/enrollments")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"contactId\": \"<string>\",\n \"senderEmail\": \"<string>\",\n \"sequenceId\": \"<string>\",\n \"senderAliasAddress\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.hubapi.com/automation/v4/sequences/enrollments")
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 \"contactId\": \"<string>\",\n \"senderEmail\": \"<string>\",\n \"sequenceId\": \"<string>\",\n \"senderAliasAddress\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"enrolledAt": "2023-11-07T05:31:56Z",
"id": "<string>",
"toEmail": "<string>",
"updatedAt": "2023-11-07T05:31:56Z"
}{
"message": "Invalid input (details will vary based on the error)",
"correlationId": "aeb5f871-7f07-4993-9211-075dc63e7cbf",
"category": "VALIDATION_ERROR",
"links": {
"knowledge-base": "https://www.hubspot.com/products/service/knowledge-base"
}
}Supported products
Supported products
Required Scopes
Required Scopes
Authorizations
The access token received from the authorization server in the OAuth 2.0 flow.
Query Parameters
Body
The unique identifier of the contact to be enrolled in the sequence.
The email address of the sender enrolling the contact in the sequence.
The unique identifier of the sequence in which the contact will be enrolled.
The alias email address used by the sender when enrolling the contact.
Response
successful operation
The date and time when the contact was enrolled in the sequence.
The unique identifier for the sequence enrollment.
The email address of the contact enrolled in the sequence.
The date and time when the sequence enrollment was last updated.
Was this page helpful?