Publish a sequence draft
POST/v1/sequences/{id}/draft/publish
Publishes the open draft at expectedVersion and returns the sequence. A first publish leaves the sequence DEACTIVATED; activate it to start sending. Contacts already enrolled continue on the new version.
A refused publish changes nothing. Returns 400 invalid_configuration with the problems under issues, 400 permissions_not_granted or no_selectable_sender when the steps cannot send yet, 404 draft_not_found when no draft is open, and 409 when expectedVersion is not the open draft’s version; retrieve the draft and retry. See Sequence errors for what each code means and how to resolve it.
Required scope: sequences:update
Rate limit category: Write
Publish a sequence draft
curl https://api.lightfield.app/v1/sequences/$ID/draft/publish \
-H 'Content-Type: application/json' \
-H 'Lightfield-Version: 2026-03-01' \
-H "Authorization: Bearer $API_KEY" \
-d '{
"expectedVersion": "expectedVersion"
}'{
"id": "id",
"channels": [
"EMAIL"
],
"createdAt": "createdAt",
"definition": {
"description": "description",
"messaging": {
"callToAction": "callToAction",
"persona": "persona",
"trigger": "trigger",
"valueProp": "valueProp"
},
"pacing": {
"EMAIL": {
"dailyLimit": -9007199254740991
},
"LINKEDIN_INVITE": {
"dailyLimit": -9007199254740991
},
"LINKEDIN_MESSAGE": {
"dailyLimit": -9007199254740991
}
},
"priority": "HIGH",
"sendWindow": {
"daysOfWeek": [
-9007199254740991
],
"endHour": -9007199254740991,
"startHour": -9007199254740991,
"timezone": "timezone"
},
"steps": [
{
"id": "id",
"deliveryMode": "AUTO",
"mode": "AGENT",
"name": "name",
"prompt": "prompt",
"type": "EMAIL"
}
]
},
"firstActivatedAt": "firstActivatedAt",
"lastActivatedAt": "lastActivatedAt",
"name": "name",
"objectType": "sequence",
"reviewers": [
{
"id": "x",
"objectType": "member"
}
],
"senders": [
{
"id": "x",
"objectType": "sender"
}
],
"status": "DRAFT"
}Returns Examples
{
"id": "id",
"channels": [
"EMAIL"
],
"createdAt": "createdAt",
"definition": {
"description": "description",
"messaging": {
"callToAction": "callToAction",
"persona": "persona",
"trigger": "trigger",
"valueProp": "valueProp"
},
"pacing": {
"EMAIL": {
"dailyLimit": -9007199254740991
},
"LINKEDIN_INVITE": {
"dailyLimit": -9007199254740991
},
"LINKEDIN_MESSAGE": {
"dailyLimit": -9007199254740991
}
},
"priority": "HIGH",
"sendWindow": {
"daysOfWeek": [
-9007199254740991
],
"endHour": -9007199254740991,
"startHour": -9007199254740991,
"timezone": "timezone"
},
"steps": [
{
"id": "id",
"deliveryMode": "AUTO",
"mode": "AGENT",
"name": "name",
"prompt": "prompt",
"type": "EMAIL"
}
]
},
"firstActivatedAt": "firstActivatedAt",
"lastActivatedAt": "lastActivatedAt",
"name": "name",
"objectType": "sequence",
"reviewers": [
{
"id": "x",
"objectType": "member"
}
],
"senders": [
{
"id": "x",
"objectType": "sender"
}
],
"status": "DRAFT"
}