{"files":{"SKILL.md":"---\nname: twilio-studio\ndescription: \"Twilio - Studio API skill. Use when working with Twilio - Studio for Flows. Covers 19 endpoints.\"\nversion: 1.0.0\ngenerator: lapsh\n---\n\n# Twilio - Studio\nAPI version: 1.0.0\n\n## Auth\nBearer basic\n\n## Base URL\nhttps://studio.twilio.com\n\n## Setup\n1. Set Authorization header with Bearer token\n2. GET /v2/Flows -- retrieve a list of all flows.\n3. POST /v2/Flows/{FlowSid}/Executions -- create first Execution\n\n## Endpoints\n19 endpoints across 1 group. See references/api-spec.lap for full details.\n\n### Flows\n| Method | Path | Description |\n|--------|------|-------------|\n| GET | /v2/Flows/{FlowSid}/Executions | Retrieve a list of all Executions for the Flow. |\n| POST | /v2/Flows/{FlowSid}/Executions | Triggers a new Execution for the Flow |\n| GET | /v2/Flows/{FlowSid}/Executions/{Sid} | Retrieve an Execution |\n| DELETE | /v2/Flows/{FlowSid}/Executions/{Sid} | Delete the Execution and all Steps relating to it. |\n| POST | /v2/Flows/{FlowSid}/Executions/{Sid} | Update the status of an Execution to `ended`. |\n| GET | /v2/Flows/{FlowSid}/Executions/{ExecutionSid}/Context | Retrieve the most recent context for an Execution. |\n| GET | /v2/Flows/{FlowSid}/Executions/{ExecutionSid}/Steps | Retrieve a list of all Steps for an Execution. |\n| GET | /v2/Flows/{FlowSid}/Executions/{ExecutionSid}/Steps/{Sid} | Retrieve a Step. |\n| GET | /v2/Flows/{FlowSid}/Executions/{ExecutionSid}/Steps/{StepSid}/Context | Retrieve the context for an Execution Step. |\n| POST | /v2/Flows | Create a Flow. |\n| GET | /v2/Flows | Retrieve a list of all Flows. |\n| POST | /v2/Flows/{Sid} | Update a Flow. |\n| GET | /v2/Flows/{Sid} | Retrieve a specific Flow. |\n| DELETE | /v2/Flows/{Sid} | Delete a specific Flow. |\n| GET | /v2/Flows/{Sid}/Revisions | Retrieve a list of all Flows revisions. |\n| GET | /v2/Flows/{Sid}/Revisions/{Revision} | Retrieve a specific Flow revision. |\n| POST | /v2/Flows/Validate | Validate flow JSON definition |\n| GET | /v2/Flows/{Sid}/TestUsers | Fetch flow test users |\n| POST | /v2/Flows/{Sid}/TestUsers | Update flow test users |\n\n## Common Questions\nMatch user requests to endpoints in references/api-spec.lap. Key patterns:\n- \"List all Executions?\" -> GET /v2/Flows/{FlowSid}/Executions\n- \"Create a Execution?\" -> POST /v2/Flows/{FlowSid}/Executions\n- \"Get Execution details?\" -> GET /v2/Flows/{FlowSid}/Executions/{Sid}\n- \"Delete a Execution?\" -> DELETE /v2/Flows/{FlowSid}/Executions/{Sid}\n- \"List all Context?\" -> GET /v2/Flows/{FlowSid}/Executions/{ExecutionSid}/Context\n- \"List all Steps?\" -> GET /v2/Flows/{FlowSid}/Executions/{ExecutionSid}/Steps\n- \"Get Step details?\" -> GET /v2/Flows/{FlowSid}/Executions/{ExecutionSid}/Steps/{Sid}\n- \"Create a Flow?\" -> POST /v2/Flows\n- \"List all Flows?\" -> GET /v2/Flows\n- \"Get Flow details?\" -> GET /v2/Flows/{Sid}\n- \"Delete a Flow?\" -> DELETE /v2/Flows/{Sid}\n- \"List all Revisions?\" -> GET /v2/Flows/{Sid}/Revisions\n- \"Get Revision details?\" -> GET /v2/Flows/{Sid}/Revisions/{Revision}\n- \"Create a Validate?\" -> POST /v2/Flows/Validate\n- \"List all TestUsers?\" -> GET /v2/Flows/{Sid}/TestUsers\n- \"Create a TestUser?\" -> POST /v2/Flows/{Sid}/TestUsers\n- \"How to authenticate?\" -> See Auth section above\n\n## Response Tips\n- Check response schemas in references/api-spec.lap for field details\n- Paginated endpoints accept limit/offset or cursor parameters\n- Create/update endpoints return the modified resource on success\n\n## References\n- Full spec: See references/api-spec.lap for complete endpoint details, parameter tables, and response schemas\n\n> Generated from the official API spec by [LAP](https://lap.sh)\n","references/api-spec.lap":"@lap v0.3\n# Machine-readable API spec. Each @endpoint block is one API call.\n@api Twilio - Studio\n@base https://studio.twilio.com\n@version 1.0.0\n@auth Bearer basic\n@endpoints 19\n@toc Flows(19)\n\n@endpoint GET /v2/Flows/{FlowSid}/Executions\n@desc Retrieve a list of all Executions for the Flow.\n@required {FlowSid: str # The SID of the Flow with the Execution resources to read.}\n@optional {DateCreatedFrom: str(date-time) # Only show Execution resources starting on or after this [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date-time, given as `YYYY-MM-DDThh:mm:ss-hh:mm`., DateCreatedTo: str(date-time) # Only show Execution resources starting before this [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date-time, given as `YYYY-MM-DDThh:mm:ss-hh:mm`., PageSize: int(int64) # How many resources to return in each list page. The default is 50, and the maximum is 1000., Page: int # The page index. This value is simply for client state., PageToken: str # The page token. This is provided by the API.}\n@returns(200) {executions: [map], meta: map{first_page_url: str(uri), key: str, next_page_url: str(uri)?, page: int, page_size: int, previous_page_url: str(uri)?, url: str(uri)}} # OK\n\n@endpoint POST /v2/Flows/{FlowSid}/Executions\n@desc Triggers a new Execution for the Flow\n@required {FlowSid: str # The SID of the Excecution's Flow.}\n@returns(201) {sid: str?, account_sid: str?, flow_sid: str?, contact_channel_address: str?, contact_sid: str?, flow_version: int?, context: any?, status: str, date_created: str(date-time)?, date_updated: str(date-time)?, url: str(uri)?, links: map?} # Created\n\n@endpoint GET /v2/Flows/{FlowSid}/Executions/{Sid}\n@desc Retrieve an Execution\n@required {FlowSid: str # The SID of the Flow with the Execution resource to fetch, Sid: str # The SID of the Execution resource to fetch.}\n@returns(200) {sid: str?, account_sid: str?, flow_sid: str?, contact_channel_address: str?, contact_sid: str?, flow_version: int?, context: any?, status: str, date_created: str(date-time)?, date_updated: str(date-time)?, url: str(uri)?, links: map?} # OK\n\n@endpoint DELETE /v2/Flows/{FlowSid}/Executions/{Sid}\n@desc Delete the Execution and all Steps relating to it.\n@required {FlowSid: str # The SID of the Flow with the Execution resources to delete., Sid: str # The SID of the Execution resource to delete.}\n@returns(204) The resource was deleted successfully.\n\n@endpoint POST /v2/Flows/{FlowSid}/Executions/{Sid}\n@desc Update the status of an Execution to `ended`.\n@required {FlowSid: str # The SID of the Flow with the Execution resources to update., Sid: str # The SID of the Execution resource to update.}\n@returns(200) {sid: str?, account_sid: str?, flow_sid: str?, contact_channel_address: str?, contact_sid: str?, flow_version: int?, context: any?, status: str, date_created: str(date-time)?, date_updated: str(date-time)?, url: str(uri)?, links: map?} # OK\n\n@endpoint GET /v2/Flows/{FlowSid}/Executions/{ExecutionSid}/Context\n@desc Retrieve the most recent context for an Execution.\n@required {FlowSid: str # The SID of the Flow with the Execution context to fetch., ExecutionSid: str # The SID of the Execution context to fetch.}\n@returns(200) {account_sid: str?, context: any?, flow_sid: str?, execution_sid: str?, url: str(uri)?} # OK\n\n@endpoint GET /v2/Flows/{FlowSid}/Executions/{ExecutionSid}/Steps\n@desc Retrieve a list of all Steps for an Execution.\n@required {FlowSid: str # The SID of the Flow with the Steps to read., ExecutionSid: str # The SID of the Execution with the Steps to read.}\n@optional {PageSize: int(int64) # How many resources to return in each list page. The default is 50, and the maximum is 1000., Page: int # The page index. This value is simply for client state., PageToken: str # The page token. This is provided by the API.}\n@returns(200) {steps: [map], meta: map{first_page_url: str(uri), key: str, next_page_url: str(uri)?, page: int, page_size: int, previous_page_url: str(uri)?, url: str(uri)}} # OK\n\n@endpoint GET /v2/Flows/{FlowSid}/Executions/{ExecutionSid}/Steps/{Sid}\n@desc Retrieve a Step.\n@required {FlowSid: str # The SID of the Flow with the Step to fetch., ExecutionSid: str # The SID of the Execution resource with the Step to fetch., Sid: str # The SID of the ExecutionStep resource to fetch.}\n@returns(200) {sid: str?, account_sid: str?, flow_sid: str?, execution_sid: str?, parent_step_sid: str?, name: str?, context: any?, transitioned_from: str?, transitioned_to: str?, type: str?, date_created: str(date-time)?, date_updated: str(date-time)?, url: str(uri)?, links: map?} # OK\n\n@endpoint GET /v2/Flows/{FlowSid}/Executions/{ExecutionSid}/Steps/{StepSid}/Context\n@desc Retrieve the context for an Execution Step.\n@required {FlowSid: str # The SID of the Flow with the Step to fetch., ExecutionSid: str # The SID of the Execution resource with the Step to fetch., StepSid: str # The SID of the Step to fetch.}\n@returns(200) {account_sid: str?, context: any?, execution_sid: str?, flow_sid: str?, step_sid: str?, url: str(uri)?} # OK\n\n@endpoint POST /v2/Flows\n@desc Create a Flow.\n@returns(201) {sid: str?, account_sid: str?, author_sid: str?, friendly_name: str?, definition: any?, status: str, revision: int, commit_message: str?, valid: bool?, errors: [any]?, warnings: [any]?, date_created: str(date-time)?, date_updated: str(date-time)?, webhook_url: str(uri)?, url: str(uri)?, links: map?} # Created\n\n@endpoint GET /v2/Flows\n@desc Retrieve a list of all Flows.\n@optional {PageSize: int(int64) # How many resources to return in each list page. The default is 50, and the maximum is 1000., Page: int # The page index. This value is simply for client state., PageToken: str # The page token. This is provided by the API.}\n@returns(200) {flows: [map], meta: map{first_page_url: str(uri), key: str, next_page_url: str(uri)?, page: int, page_size: int, previous_page_url: str(uri)?, url: str(uri)}} # OK\n\n@endpoint POST /v2/Flows/{Sid}\n@desc Update a Flow.\n@required {Sid: str # The SID of the Flow resource to fetch.}\n@returns(200) {sid: str?, account_sid: str?, author_sid: str?, friendly_name: str?, definition: any?, status: str, revision: int, commit_message: str?, valid: bool?, errors: [any]?, warnings: [any]?, date_created: str(date-time)?, date_updated: str(date-time)?, webhook_url: str(uri)?, url: str(uri)?, links: map?} # OK\n\n@endpoint GET /v2/Flows/{Sid}\n@desc Retrieve a specific Flow.\n@required {Sid: str # The SID of the Flow resource to fetch.}\n@returns(200) {sid: str?, account_sid: str?, author_sid: str?, friendly_name: str?, definition: any?, status: str, revision: int, commit_message: str?, valid: bool?, errors: [any]?, warnings: [any]?, date_created: str(date-time)?, date_updated: str(date-time)?, webhook_url: str(uri)?, url: str(uri)?, links: map?} # OK\n\n@endpoint DELETE /v2/Flows/{Sid}\n@desc Delete a specific Flow.\n@required {Sid: str # The SID of the Flow resource to delete.}\n@returns(204) The resource was deleted successfully.\n\n@endpoint GET /v2/Flows/{Sid}/Revisions\n@desc Retrieve a list of all Flows revisions.\n@required {Sid: str # The SID of the Flow resource to fetch.}\n@optional {PageSize: int(int64) # How many resources to return in each list page. The default is 50, and the maximum is 1000., Page: int # The page index. This value is simply for client state., PageToken: str # The page token. This is provided by the API.}\n@returns(200) {revisions: [map], meta: map{first_page_url: str(uri), key: str, next_page_url: str(uri)?, page: int, page_size: int, previous_page_url: str(uri)?, url: str(uri)}} # OK\n\n@endpoint GET /v2/Flows/{Sid}/Revisions/{Revision}\n@desc Retrieve a specific Flow revision.\n@required {Sid: str # The SID of the Flow resource to fetch., Revision: str # Specific Revision number or can be `LatestPublished` and `LatestRevision`.}\n@returns(200) {sid: str?, account_sid: str?, author_sid: str?, friendly_name: str?, definition: any?, status: str, revision: int, commit_message: str?, valid: bool?, errors: [any]?, date_created: str(date-time)?, date_updated: str(date-time)?, url: str(uri)?} # OK\n\n@endpoint POST /v2/Flows/Validate\n@desc Validate flow JSON definition\n@returns(200) {valid: bool?} # OK\n\n@endpoint GET /v2/Flows/{Sid}/TestUsers\n@desc Fetch flow test users\n@required {Sid: str # Unique identifier of the flow.}\n@returns(200) {sid: str?, test_users: [str]?, url: str(uri)?} # OK\n\n@endpoint POST /v2/Flows/{Sid}/TestUsers\n@desc Update flow test users\n@required {Sid: str # Unique identifier of the flow.}\n@returns(200) {sid: str?, test_users: [str]?, url: str(uri)?} # OK\n\n@end\n"}}