Start free

API reference

WhatsApp Flows

Read your organization's WhatsApp Flows, each with its flowJson, so you can send forms and interactive screens through the WhatsApp messages API.

  • 2 operations
  • Base URLhttps://api.messages.ccxcompany.co
  • AuthenticationBearer with your API key

The technical text below comes from the public contract, openapi.json, in the language the contract was written in.

Lista os flows da organização

GET/v2/flows

Devolve os flows da organização da credencial, com o flowJson de cada um.

A organização vem da credencial — não existe parâmetro para escolhê-la.

Campos internos (segredos do endpoint, estado do builder, config de envio) não fazem parte do contrato e não são devolvidos.

Parameters

FieldInTypeDescription
statusoptionalquerystringValues:draftactivepauseddeprecatedarchived
metaStatusoptionalquerystringValues:DRAFTPUBLISHEDDEPRECATEDBLOCKEDTHROTTLED
categoryoptionalquerystringValues:SIGN_UPSIGN_INAPPOINTMENT_BOOKINGLEAD_GENERATIONCONTACT_USCUSTOMER_SUPPORTSURVEYOTHER
numberIdoptionalquerystring
limitoptionalqueryinteger
skipoptionalqueryinteger

Responses

  • 200Default Response

    Response fields and example
    FieldTypeDescription
    itemsrequiredobject[]
    items[].idrequiredstring
    items[].organizationIdrequiredstring
    items[].numberIdrequiredstring
    items[].namerequiredstring
    items[].descriptionoptionalstring
    items[].statusrequiredstringValues:draftactivepauseddeprecatedarchived
    items[].versionrequiredinteger
    items[].metaFlowIdoptionalstring
    items[].metaStatusoptionalstringValues:DRAFTPUBLISHEDDEPRECATEDBLOCKEDTHROTTLED
    items[].metaCategoriesrequiredstring[]
    items[].flowJsonrequiredobject
    items[].flowJson.versionoptionalstringDefault:6.2
    items[].flowJson.data_api_versionoptionalstringDefault:3.0
    items[].flowJson.routing_modeloptionalobject
    items[].flowJson.screensrequiredobject[]
    items[].publishedAtoptionalstring · date-time
    items[].createdAtrequiredstring · date-time
    items[].updatedAtrequiredstring · date-time
    totalrequiredinteger
    JSON
    {  "items": [    {      "id": "string",      "organizationId": "string",      "numberId": "string",      "name": "string",      "description": "string",      "status": "draft",      "version": 1,      "metaFlowId": "string",      "metaStatus": "DRAFT",      "metaCategories": [        "SIGN_UP"      ],      "flowJson": {        "version": "6.2",        "data_api_version": "3.0",        "routing_model": {},        "screens": [          {            "id": "string",            "title": "string",            "terminal": true,            "success": true,            "refresh_on_back": true,            "sensitive": [              "string"            ],            "data": {},            "layout": {              "type": "SingleColumnLayout",              "children": [                {                  "type": null                }              ]            }          }        ]      },      "publishedAt": "2026-10-16T12:00:00.000Z",      "createdAt": "2026-10-16T12:00:00.000Z",      "updatedAt": "2026-10-16T12:00:00.000Z"    }  ],  "total": 0}
  • 400RFC 7807 problem details for BAD_REQUEST (400).

  • 401RFC 7807 problem details for UNAUTHORIZED (401).

  • 403RFC 7807 problem details for FORBIDDEN (403).

Error responses follow RFC 7807 (application/problem+json), with a stable code in the code field. See the error codes

curl example

cURL
curl 'https://api.messages.ccxcompany.co/v2/flows' \  -H "Authorization: Bearer $CCX_API_KEY"
Required fields only. Swap the sample values for your own.

Lê um flow pelo id

GET/v2/flows/{id}

Devolve um flow da organização da credencial.

404 também é a resposta para um flow de outra organização: distinguir “não existe” de “não é seu” contaria a existência de dado alheio.

Parameters

FieldInTypeDescription
idrequiredpathstring

Responses

  • 200Default Response

    Response fields and example
    FieldTypeDescription
    idrequiredstring
    organizationIdrequiredstring
    numberIdrequiredstring
    namerequiredstring
    descriptionoptionalstring
    statusrequiredstringValues:draftactivepauseddeprecatedarchived
    versionrequiredinteger
    metaFlowIdoptionalstring
    metaStatusoptionalstringValues:DRAFTPUBLISHEDDEPRECATEDBLOCKEDTHROTTLED
    metaCategoriesrequiredstring[]
    flowJsonrequiredobject
    flowJson.versionoptionalstringDefault:6.2
    flowJson.data_api_versionoptionalstringDefault:3.0
    flowJson.routing_modeloptionalobject
    flowJson.screensrequiredobject[]
    flowJson.screens[].idrequiredstring
    flowJson.screens[].titleoptionalstring
    flowJson.screens[].terminaloptionalboolean
    flowJson.screens[].successoptionalboolean
    flowJson.screens[].refresh_on_backoptionalboolean
    flowJson.screens[].sensitiveoptionalstring[]
    flowJson.screens[].dataoptionalobject
    flowJson.screens[].layoutrequiredobject
    publishedAtoptionalstring · date-time
    createdAtrequiredstring · date-time
    updatedAtrequiredstring · date-time
    JSON
    {  "id": "string",  "organizationId": "string",  "numberId": "string",  "name": "string",  "description": "string",  "status": "draft",  "version": 1,  "metaFlowId": "string",  "metaStatus": "DRAFT",  "metaCategories": [    "SIGN_UP"  ],  "flowJson": {    "version": "6.2",    "data_api_version": "3.0",    "routing_model": {},    "screens": [      {        "id": "string",        "title": "string",        "terminal": true,        "success": true,        "refresh_on_back": true,        "sensitive": [          "string"        ],        "data": {},        "layout": {          "type": "SingleColumnLayout",          "children": [            {              "type": "string"            }          ]        }      }    ]  },  "publishedAt": "2026-10-16T12:00:00.000Z",  "createdAt": "2026-10-16T12:00:00.000Z",  "updatedAt": "2026-10-16T12:00:00.000Z"}
  • 400RFC 7807 problem details for BAD_REQUEST (400).

  • 401RFC 7807 problem details for UNAUTHORIZED (401).

  • 403RFC 7807 problem details for FORBIDDEN (403).

  • 404RFC 7807 problem details for NOT_FOUND (404).

Error responses follow RFC 7807 (application/problem+json), with a stable code in the code field. See the error codes

curl example

cURL
curl 'https://api.messages.ccxcompany.co/v2/flows/<id>' \  -H "Authorization: Bearer $CCX_API_KEY"
Required fields only. Swap the sample values for your own.

Stuck on a route? Talk to the people who run the API.

Sign up through the site and get a US$5 test credit.