Skip to contentSkip to navigationSkip to topbar
Rate this page:
On this page

Step


A Step is the runtime processing of a Widget, starting when that Widget is entered. Variables get set at the end of a Step.

If you're prompting a user for a text input, when they receive the inbound SMS prompt, they are actively in a Step until they exit the Widget (send a response or timeout). If the prompt is intended to set a variable, this happens at the end.

Subscribe to Real-time Studio Events

You can now subscribe to Studio Events for Executions and Steps instead of polling via the REST API. Simplify your data ingestion with Event Streams for Studio.

Try Studio Events(link takes you to an external page)

ExecutionStep Properties

executionstep-properties page anchor
Property nameTypePIIDescription
sidSID<FT>
Not PII

The unique string that we created to identify the ExecutionStep resource.

Pattern: ^FT[0-9a-fA-F]{32}$Min length: 34Max length: 34

account_sidSID<AC>

The SID of the Account that created the ExecutionStep resource.

Pattern: ^AC[0-9a-fA-F]{32}$Min length: 34Max length: 34

flow_sidSID<FW>

The SID of the Flow.

Pattern: ^FW[0-9a-fA-F]{32}$Min length: 34Max length: 34

execution_sidSID<FN>

The SID of the Step's Execution resource.

Pattern: ^FN[0-9a-fA-F]{32}$Min length: 34Max length: 34

namestring

The event that caused the Flow to transition to the Step.


contextobject
PII MTL: 30 days

The current state of the Flow's Execution. As a flow executes, we save its state in this context. We save data that your widgets can access as variables in configuration fields or in text areas as variable substitution.


transitioned_fromstring

The Widget that preceded the Widget for the Step.


transitioned_tostring

The Widget that will follow the Widget for the Step.


date_updatedstring<date-time>

The date and time in GMT when the resource was last updated specified in ISO 8601(link takes you to an external page) format.


urlstring<uri>

The absolute URL of the resource.


linksobject<uri-map>

The URLs of related resources.


GET https://studio.twilio.com/v2/Flows/{FlowSid}/Executions/{ExecutionSid}/Steps/{Sid}

Path parameters

path-parameters page anchor
Property nameTypeRequiredPIIDescription
FlowSidSID<FW>required

The SID of the Flow with the Step to fetch.

Pattern: ^FW[0-9a-fA-F]{32}$Min length: 34Max length: 34

ExecutionSidSID<FN>required

The SID of the Execution resource with the Step to fetch.

Pattern: ^FN[0-9a-fA-F]{32}$Min length: 34Max length: 34

SidSID<FT>required

The SID of the ExecutionStep resource to fetch.

Pattern: ^FT[0-9a-fA-F]{32}$Min length: 34Max length: 34

Fetch Execution Step

fetch-execution-step page anchor
Node.js
Python
C#
Java
Go
PHP
Ruby
twilio-cli
curl

_20
// Download the helper library from https://www.twilio.com/docs/node/install
_20
const twilio = require("twilio"); // Or, for ESM: import twilio from "twilio";
_20
_20
// Find your Account SID and Auth Token at twilio.com/console
_20
// and set the environment variables. See http://twil.io/secure
_20
const accountSid = process.env.TWILIO_ACCOUNT_SID;
_20
const authToken = process.env.TWILIO_AUTH_TOKEN;
_20
const client = twilio(accountSid, authToken);
_20
_20
async function fetchExecutionStep() {
_20
const step = await client.studio.v2
_20
.flows("FWXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX")
_20
.executions("FNXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX")
_20
.steps("FTXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX")
_20
.fetch();
_20
_20
console.log(step.sid);
_20
}
_20
_20
fetchExecutionStep();

Output

_17
{
_17
"sid": "FTXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
_17
"account_sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
_17
"flow_sid": "FWXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
_17
"execution_sid": "FNXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
_17
"parent_step_sid": null,
_17
"name": "incomingRequest",
_17
"context": {},
_17
"transitioned_from": "Trigger",
_17
"transitioned_to": "Ended",
_17
"date_created": "2017-11-06T12:00:00Z",
_17
"date_updated": null,
_17
"url": "https://studio.twilio.com/v2/Flows/FWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Executions/FNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Steps/FTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
_17
"links": {
_17
"step_context": "https://studio.twilio.com/v2/Flows/FWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Executions/FNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Steps/FTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Context"
_17
}
_17
}


Read a list of step resources

read-a-list-of-step-resources page anchor
GET https://studio.twilio.com/v2/Flows/{FlowSid}/Executions/{ExecutionSid}/Steps

Step resources are listed in reverse chronological order (most recent is first).

Property nameTypeRequiredPIIDescription
FlowSidSID<FW>required

The SID of the Flow with the Steps to read.

Pattern: ^FW[0-9a-fA-F]{32}$Min length: 34Max length: 34

ExecutionSidSID<FN>required

The SID of the Execution with the Steps to read.

Pattern: ^FN[0-9a-fA-F]{32}$Min length: 34Max length: 34
Property nameTypeRequiredPIIDescription
PageSizeintegerOptional

How many resources to return in each list page. The default is 50, and the maximum is 1000.

Minimum: 1Maximum: 1000

PageintegerOptional

The page index. This value is simply for client state.

Minimum: 0

PageTokenstringOptional

The page token. This is provided by the API.

Node.js
Python
C#
Java
Go
PHP
Ruby
twilio-cli
curl

_19
// Download the helper library from https://www.twilio.com/docs/node/install
_19
const twilio = require("twilio"); // Or, for ESM: import twilio from "twilio";
_19
_19
// Find your Account SID and Auth Token at twilio.com/console
_19
// and set the environment variables. See http://twil.io/secure
_19
const accountSid = process.env.TWILIO_ACCOUNT_SID;
_19
const authToken = process.env.TWILIO_AUTH_TOKEN;
_19
const client = twilio(accountSid, authToken);
_19
_19
async function listExecutionStep() {
_19
const steps = await client.studio.v2
_19
.flows("FWXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX")
_19
.executions("FNXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX")
_19
.steps.list({ limit: 20 });
_19
_19
steps.forEach((s) => console.log(s.sid));
_19
}
_19
_19
listExecutionStep();

Output

_12
{
_12
"meta": {
_12
"previous_page_url": null,
_12
"next_page_url": null,
_12
"url": "https://studio.twilio.com/v2/Flows/FWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Executions/FNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Steps?PageSize=50&Page=0",
_12
"page": 0,
_12
"first_page_url": "https://studio.twilio.com/v2/Flows/FWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Executions/FNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Steps?PageSize=50&Page=0",
_12
"page_size": 50,
_12
"key": "steps"
_12
},
_12
"steps": []
_12
}


Data retention and delivery

data-retention-and-delivery page anchor

For information on data retention in Studio, please reference the Studio User Guide. Keep in mind the following:

(warning)

Warning

Step logs are best-effort delivery. This means that the network does not guarantee that this data will be delivered.


Rate this page: