Automations
POST
Create Automation
POST /v1/automationsCreate a new automation workflow in your workspace.
Use Cases:
- Build automated email sequences triggered by contact behavior
- Create welcome series for new subscribers
- Set up re-engagement campaigns
- Build event-driven workflows
- Create drip campaigns based on contact activity
Behavior:
- Creates an automation in DRAFT status
- Trigger, nodes, and edges are optional at creation
- Validates that all edges reference existing nodes (if provided)
- Schema validation is lenient at creation — strict validation happens at publish time
- Returns the complete automation object with generated ID
Required Scope: write:automations
Trigger Types:
- contact.subscribed: Fires when a contact subscribes
- contact.unsubscribed: Fires when a contact unsubscribes
- contact.created: Fires when a new contact is created
- contact.updated: Fires when a contact is updated
- event.fired: Fires when a custom event is triggered
- form.submitted: Fires when a form is submitted
- segment.entered: Fires when a contact enters a segment
- email.opened: Fires when an email is opened
- email.clicked: Fires when a link is clicked
- email.bounced: Fires when an email bounces
- email.complained: Fires when a spam complaint is received
Next Steps After Creation:
- Add nodes and edges to define the workflow
- Configure trigger settings
- Publish the automation via POST /v1/automations/{automationId}/publish
Bodyrequired
namestringrequiredMin length: 1Max length: 100
descriptionanytriggerobjectnodesobject[]edgesobject[]Response
201Automation created successfully in DRAFT status. Returns the complete automation object.
objectstringrequiredidstringrequirednamestringrequireddescriptionanyrequiredstatus"DRAFT" | "PUBLISHED" | "ARCHIVED"requiredversionnumberrequiredparentIdanyrequiredtriggerobjectrequirednodesany[]requirededgesany[]requiredstatsanyrequiredpublishedAtanyrequiredcreatedAtstringrequiredupdatedAtstringrequired