Skip to main content

Flow Results API

The Flow Results API standardizes the exchange of data collected by a Stack and external data analysis/visualization applications. The data covered by this API is the "results" or "responses" recorded during interactions with end-users through Journeys.

This API follows the Flow Results API Usage. See the Flow Results Specification for more details on how this open specification for the exchange of data generated by Flow-like software applications works.

Get all Flow Results Packages

Request a list of Flow Results Packages available for the authorized user.

A Flow Results Package is a container and data format describing a collection of interactions or "responses" reported by end-users using Journeys. See Flow Results Package Specification for more details.

Optional query parameters:

  • stack_uuid: Only list packages by the given Journeys's UUID.
$ curl "https://whatsapp.turn.io/v1/flow-results/packages?stack_uuid=c8563c93-3d94-4c70-a001-9ca951c31ba4" \
-H "Authorization: Bearer token" \
-H "accept: application/vnd.v1+json"
> {
"links": {
"self": "https://whatsapp.turn.io/v1/flow-results/packages",
"next": null,
"previous": null
},
"data": [
{
"type": "packages",
"id": "0c364ee1-0305-42ad-9fc9-2ec5a80c55fa",
"attributes": {
"title": "standard test survey - flow results",
"name": "standard-test-survey-flow-results",
"created": "2015-11-26 02:59:24+00:00",
"modified": "2015-11-26 02:59:24+00:00"
}
},
{
"type": "packages",
"id": "d8d0275f-e108-4528-a259-d738bb626143",
"attributes": {
"title": "test survey - flow results",
"name": "test-survey-flow-results",
"created": "2015-05-19 15:59:25+00:00",
"modified": "2015-05-19 15:59:25+00:00"
}
}
]
}

Get the Details of a Package

Request the details of a Flow Results Package.

$ curl "https://whatsapp.turn.io/v1/flow-results/packages/<id>" \
-H 'Authorization: Bearer token' \
-H "Accept: application/vnd.v1+json" \
> {
"links": {
"self": "https://whatsapp.turn.io/v1/flow-results/packages/<id>"
},
"data": {
"type": "packages",
"id": "<id>",
"attributes": {
"profile": "flow-results-package",
"name": "standard-test-survey-flow-results",
"flow-results-specification": "1.0.0-rc1",
"created": "2015-11-26 02:59:24+00:00",
"modified": "2015-11-26 02:59:24+00:00",
"id": "<id>",
"title": "math quiz - flow results",
"resources": [
{
"path": null,
"api-data-url": "https://whatsapp.turn.io/v1/flow-results/packages/<id>/responses",
"mediatype": "application/json",
"encoding": "utf-8",
"schema": {
"language": "eng",
"fields": [
{
"name": "timestamp",
"title": "Timestamp",
"type": "datetime"
},
{
"name": "row_id",
"title": "Row ID",
"type": "string"
},
{
"name": "contact_id",
"title": "Contact ID",
"type": "string"
},
{
"name": "session_id",
"title": "Session ID",
"type": "string"
},
{
"name": "question_id",
"title": "Question ID",
"type": "string"
},
{
"name": "response_id",
"title": "Response ID",
"type": "any"
},
{
"name": "response_metadata",
"title": "Response Metadata",
"type": "object"
}
],
"questions": {
"0c364ee1-0305-42ad-9fc9-2ec5a80c55fa": {
"type": "select_one",
"label": "Please select your gender",
"type_options": {
"choices": [
"Woman",
"Man",
"Other"
]
}
},
"36ae3ec3-fc89-4a29-8214-527b8f9c66bb": {
"type": "open",
"label": "How are you?",
"type_options": {}
}
}
}
}
]
}
},
"relationships": {
"responses": {
"links": {
"related": "https://whatsapp.turn.io/v1/flow-results/packages/<id>/responses"
}
}
}
}

Get Responses for a Package

Request some or all responses of a Flow Results Package. It supports pagination for large data sets, and a optional set of filter parameters.

Query parameters:

  • filter[start-timestamp]: Only show Responses that were recorded after this timestamp.
  • filter[end-timestamp]: Only show Responses that were recorded before and on this timestamp.
  • page[size]: The requested number of responses per page.
  • page[afterCursor]: The response row_id to requests responses after this id, when paginating forward.
  • page[beforeCursor]: The response row_id to request responses prior to this id, when paginating in reverse.
$ curl "https://whatsapp.turn.io/v1/flow-results/packages/<id>/responses" \
-H "Authorization: Bearer token" \
-H "accept: application/vnd.v1+json"
> {
"data": {
"type": "responses",
"id": "<id>",
"attributes": {
"responses": [
[
"2015-11-26 04:33:26",
"11393115",
"10825354",
"47029339",
"0c364ee1-0305-42ad-9fc9-2ec5a80c55fa",
"Man",
{}
],
[
"2015-11-26 04:33:31",
"11393119",
"10825354",
"47029339",
"36ae3ec3-fc89-4a29-8214-527b8f9c66bb",
"I'm good. Thanks!",
{}
],
...
]
},
"relationships": {
"descriptor": {
"links": {
"self": "https://whatsapp.turn.io/v1/flow-results/packages/<id>"
}
}
},
"links": {
"self": "https://whatsapp.turn.io/v1/flow-results/packages/<id>/responses?page%5Bsize%5D=100",
"next": "https://whatsapp.turn.io/v1/flow-results/packages/<id>/responses?page%5Bsize%5D=100&page%5BafterCursor%5D=0c364ee1-0305-42ad-9fc9-2ec5a80c55fa",
"previous": null
}
}
}