POST /v1/public/workflows/{id}/executions
Create a client-trackable execution session for a public_execute workflow

Path Parameters

id string required path
Workflow ID

Request Body required

Execution metadata

application/json
One of:
Option 1
Option 2
clientSafeMetadata object
externalRef string
idempotencyKey string
requestPayload object
sourceEntityId string
sourceEntityType string REQUIRED
sourceSystem string REQUIRED

Responses

200 OK
application/json
code integer
data object
clientToken string
execution object
checkoutSessionId string
clientSafeMetadata object
createdAt string
externalRef string
finishedAt string
id string
idempotencyKey string
initiatedById string
initiatedByType string
orderId string
organizationId string
paymentStatus string
requestPayload object
responsePayload object
runId string
sourceEntityId string
sourceEntityType string
sourceSystem string
startedAt string
status string
Enum: awaiting_payment, payment_confirmed, workflow_queued, workflow_running, workflow_waiting, workflow_succeeded, workflow_failed, workflow_cancelled
statusReason string
updatedAt string
workflowId string
message string
requestId string
400 Bad Request
403 Forbidden
404 Not Found
429 Too Many Requests
curl -X POST 'https://api.example.com/v1/public/workflows/string/executions' \  -H 'Authorization: Bearer YOUR_API_TOKEN' \  -H 'Content-Type: application/json' \  -d '{}'
const response = await fetch('https://api.example.com/v1/public/workflows/string/executions', {  method: 'POST',  headers: {      "Authorization": "Bearer YOUR_API_TOKEN",      "Content-Type": "application/json"  },  body: JSON.stringify({})});const data = await response.json();console.log(data);
import requestsheaders = {    'Authorization': 'Bearer YOUR_API_TOKEN'}response = requests.post('https://api.example.com/v1/public/workflows/string/executions', headers=headers, json={})print(response.json())
package mainimport (	"fmt"	"io"	"net/http"	"strings")func main() {	body := strings.NewReader(`{}`)	req, _ := http.NewRequest("POST", "https://api.example.com/v1/public/workflows/string/executions", body)	req.Header.Set("Authorization", "Bearer YOUR_API_TOKEN")	req.Header.Set("Content-Type", "application/json")	resp, _ := http.DefaultClient.Do(req)	defer resp.Body.Close()	result, _ := io.ReadAll(resp.Body)	fmt.Println(string(result))}
200 Response
{  "code": 200,  "data": {    "clientToken": "<string>",    "execution": {      "checkoutSessionId": "<string>",      "clientSafeMetadata": "<object>",      "createdAt": "<string>",      "externalRef": "<string>",      "finishedAt": "<string>",      "id": "<string>",      "idempotencyKey": "<string>",      "initiatedById": "<string>",      "initiatedByType": "<string>",      "orderId": "<string>",      "organizationId": "<string>",      "paymentStatus": "<string>",      "requestPayload": "<object>",      "responsePayload": "<object>",      "runId": "<string>",      "sourceEntityId": "<string>",      "sourceEntityType": "<string>",      "sourceSystem": "<string>",      "startedAt": "<string>",      "status": "awaiting_payment",      "statusReason": "<string>",      "updatedAt": "<string>",      "workflowId": "<string>"    }  },  "message": "success",  "requestId": "abc-123"}
Ask a question... ⌘I