List workflows
Lists the workflows of your account, newest first, optionally filtered by status and trigger type. The list contains a summary per workflow; the nodes and edges are returned by Get workflow. See Workflows for the meaning of the fields. Send the parameters as query string.
Base URL:
GET: https://api.smsgatewayapi.com/v1/flows
| Parameter | Input | Description | |
|---|---|---|---|
| client_id | API client ID | Developer › API & Webhooks › API credentials | Required |
| client_secret | API client secret | A cs_ credential, shown once when you create it under Developer › API & Webhooks › API credentials | Required |
| status | draft, active or inactive | Only list workflows with this status | Optional |
| trigger_type | inbound_message, delivery_report, cron or birthday | Only list workflows with this trigger | Optional |
| limit | Maximum results per page | Default 50, can't be bigger than 100 | Optional |
| page | Page of results | Default 1 | Optional |
<?php //PHP - cURL $ch = curl_init(); $url = "https://api.smsgatewayapi.com/v1/flows"; $client_id = "XXX"; // Your API client ID (required) $client_secret = "YYY"; // Your API client secret (required)
curl_setopt($ch, CURLOPT_URL, "$url"); curl_setopt($ch, CURLOPT_POST, false); curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'GET'); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_VERBOSE, true); curl_setopt($ch, CURLOPT_HTTPHEADER, [ "X-Client-Id: $client_id", "X-Client-Secret: $client_secret", "Content-Type: application/json", ]); $response = curl_exec($ch); ?>
Example request:
GET: https://api.smsgatewayapi.com/v1/flows?status=active&limit=50
Example success response:
{
"total": 2,
"shown": 2,
"page": 1,
"limit": 50,
"flows": [
{
"id": "flw_3520a1ec234dbabe1232def67e858855",
"uuid": "6f1c2b7e-1d2a-4c3b-9e8f-0a1b2c3d4e5f",
"name": "Office hours routing",
"status": "active",
"trigger_type": "inbound_message",
"trigger_config": {
"triggerType": "inbound_message",
"inboxId": 0
},
"published_version_number": 2,
"draft_version_number": 3,
"has_draft_changes": true,
"published_at": "2026-09-08T10:15:00+02:00",
"updated_at": "2026-09-08T11:02:41+02:00"
},
{
"id": "flw_5d41402abc4b2a76b9719d911017c592",
"uuid": "c0a8012e-4f5b-4d6c-8e9f-1a2b3c4d5e6f",
"name": "STOP = opt-out",
"status": "active",
"trigger_type": "inbound_message",
"trigger_config": {
"triggerType": "inbound_message",
"inboxId": 0
},
"published_version_number": 1,
"draft_version_number": null,
"has_draft_changes": false,
"published_at": "2026-09-01T09:00:00+02:00",
"updated_at": "2026-09-01T09:00:00+02:00"
}
]
}
Example error response:
{
"error": 166,
"errorMsg": "Flow automations are not available for this account [JaneDoe]"
}