Early access: these pages are being written and reviewed. Facts in the header boxes come straight from the product.
Update a workflow
PUT
/api/v1/workflows/{id}
const url = 'https://api.pitch2sale.com/api/v1/workflows/example';const options = { method: 'PUT', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"name":"example","description":"example","trigger":{"type":"manual","conditions":{}},"steps":[{"type":"email","order":1,"delay_seconds":0,"config":{},"description":""}],"goals":[{"type":"reply_received"}],"communication_window":{"days":[1],"start_hour":1,"start_minute":1,"end_hour":1,"end_minute":1,"timezone":"example"},"blackout_dates":["2026-04-15T12:00:00Z"]}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request PUT \ --url https://api.pitch2sale.com/api/v1/workflows/example \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "name": "example", "description": "example", "trigger": { "type": "manual", "conditions": {} }, "steps": [ { "type": "email", "order": 1, "delay_seconds": 0, "config": {}, "description": "" } ], "goals": [ { "type": "reply_received" } ], "communication_window": { "days": [ 1 ], "start_hour": 1, "start_minute": 1, "end_hour": 1, "end_minute": 1, "timezone": "example" }, "blackout_dates": [ "2026-04-15T12:00:00Z" ] }'Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”id
required
string
Request Bodyrequired
Section titled “Request Bodyrequired”Media typeapplication/json
object
name
string
trigger
object
type
required
string
conditions
object
key
additional properties
steps
Array<object>
object
type
required
string
order
required
integer
delay_seconds
integer
config
object
key
additional properties
description
string
goals
Array<object>
object
type
required
string
communication_window
blackout_dates
Array<string>
Responses
Section titled “Responses”OK
Validation failed
Media typeapplication/json
object
error
required
string
code
string
message
string
details
Array<object>
object
field
required
string
message
required
string
code
required
string
Examplegenerated
{ "error": "example", "code": "example", "message": "example", "details": [ { "field": "example", "message": "example", "code": "example" } ]}Authentication required or token invalid
Media typeapplication/json
object
error
required
string
code
string
message
string
details
Array<object>
object
field
required
string
message
required
string
code
required
string
Examplegenerated
{ "error": "example", "code": "example", "message": "example", "details": [ { "field": "example", "message": "example", "code": "example" } ]}Role permission or token scope missing
Media typeapplication/json
object
error
required
string
code
string
message
string
details
Array<object>
object
field
required
string
message
required
string
code
required
string
Examplegenerated
{ "error": "example", "code": "example", "message": "example", "details": [ { "field": "example", "message": "example", "code": "example" } ]}Rate limit exceeded
Media typeapplication/json
object
error
required
string
code
string
message
string
details
Array<object>
object
field
required
string
message
required
string
code
required
string
Examplegenerated
{ "error": "example", "code": "example", "message": "example", "details": [ { "field": "example", "message": "example", "code": "example" } ]}