Marketing
Create a drip email campaign
POST
/v1/drip_campaignSchedule automated email reminders for a traveler.
Required: Either pe_url OR destinations array must be provided.
Frequency fields (freq_*): omit ALL of them to enable every
interval. If you send ANY freq_* field, only the intervals explicitly
set to 1 are scheduled — unspecified intervals stay off, and sending
all zeros schedules no emails. The response intervals array lists
exactly what was scheduled.
Request Body
Required
Code Examples
curl -X POST \ -H "access-token: {{token}}" \ -H "Content-Type: application/json" \ -d '{ "email": "traveler@example.com", "first_name": "John", "last_name": "Smith", "date": "2025-06-15", "pe_url": "https://www.projectexpedition.com/ireland/", "title": "Ireland" }' \ "https://apistage.projectexpedition.com/v1/drip_campaign"const response = await fetch('https://www.projectexpedition.com/ireland/', { method: 'POST', headers: { 'access-token': 'YOUR_TOKEN', 'Content-Type': 'application/json' }, body: JSON.stringify({ "email": "traveler@example.com", "first_name": "John", "last_name": "Smith", "date": "2025-06-15", "pe_url": "https://www.projectexpedition.com/ireland/", "title": "Ireland" })});
const data = await response.json();<?php$data = json_encode({ 'email': 'traveler@example.com', 'first_name': 'John', 'last_name': 'Smith', 'date': '2025-06-15', 'pe_url': 'https://www.projectexpedition.com/ireland/', 'title': 'Ireland' });
$context = stream_context_create([ 'http' => [ 'method' => 'POST', 'header' => "Content-Type: application/json\r\naccess-token: YOUR_TOKEN\r\nContent-Type: application/json", 'content' => $data ]]);
$response = file_get_contents('https://www.projectexpedition.com/ireland/', false, $context);$result = json_decode($response, true);curl -X POST \ -H "access-token: {{token}}" \ -H "Content-Type: application/json" \ -d '{ "email": "traveler@example.com", "date": "2025-06-15", "destinations": [ {"pe_url": "https://www.projectexpedition.com/ireland/", "title": "Ireland"}, {"pe_url": "https://www.projectexpedition.com/scotland/", "title": "Scotland"} ] }' \ "https://apistage.projectexpedition.com/v1/drip_campaign"const response = await fetch('https://www.projectexpedition.com/ireland/', { method: 'POST', headers: { 'access-token': 'YOUR_TOKEN', 'Content-Type': 'application/json' }, body: JSON.stringify({ "email": "traveler@example.com", "date": "2025-06-15", "destinations": [ { "pe_url": "https://www.projectexpedition.com/ireland/", "title": "Ireland" }, { "pe_url": "https://www.projectexpedition.com/scotland/", "title": "Scotland" } ] })});
const data = await response.json();<?php$data = json_encode({ 'email': 'traveler@example.com', 'date': '2025-06-15', 'destinations': [ {'pe_url': 'https://www.projectexpedition.com/ireland/', 'title': 'Ireland'}, {'pe_url': 'https://www.projectexpedition.com/scotland/', 'title': 'Scotland'} ] });
$context = stream_context_create([ 'http' => [ 'method' => 'POST', 'header' => "Content-Type: application/json\r\naccess-token: YOUR_TOKEN\r\nContent-Type: application/json", 'content' => $data ]]);
$response = file_get_contents('https://www.projectexpedition.com/ireland/', false, $context);$result = json_decode($response, true);Responses
200 Campaign created
400 Invalid request
{ "error": "Either pe_url or destinations is required"}