POST /api/v2/flows/executions returns 200 but flow never starts

We’re trying to kick off a simple Architect flow from an external Python script using the REST API. The call succeeds, but the flow doesn’t actually run.

Here is the request:

import requests

url = "https://api.mypurecloud.com/api/v2/flows/executions"
headers = {
 "Authorization": "Bearer <token>",
 "Content-Type": "application/json"
}
payload = {
 "flowId": "abc-123-flow-id",
 "inputs": {
 "contactId": "cust-999"
 }
}

response = requests.post(url, headers=headers, json=payload)
print(response.status_code) # 200

The response is a clean 200 OK with a flowExecutionId. I checked the flow logs in Genesys Cloud admin. Nothing shows up for that execution ID. The flow is active and not paused. We’re in US/Pacific. I’ve tried different flows. Same result.

Is there a specific permission or flow setting that blocks external triggers? Or am I missing a parameter in the payload?