@lap v0.3
# Machine-readable API spec. Each @endpoint block is one API call.
@api Twilio - Studio
@base https://studio.twilio.com
@version 1.0.0
@auth Bearer basic
@endpoints 19
@toc Flows(19)

@endpoint GET /v2/Flows/{FlowSid}/Executions
@required {FlowSid: str}
@optional {DateCreatedFrom: str(date-time), DateCreatedTo: str(date-time), PageSize: int(int64), Page: int, PageToken: str}
@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)}}

@endpoint POST /v2/Flows/{FlowSid}/Executions
@required {FlowSid: str}
@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?}

@endpoint GET /v2/Flows/{FlowSid}/Executions/{Sid}
@required {FlowSid: str, Sid: str}
@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?}

@endpoint DELETE /v2/Flows/{FlowSid}/Executions/{Sid}
@required {FlowSid: str, Sid: str}
@returns(204)

@endpoint POST /v2/Flows/{FlowSid}/Executions/{Sid}
@required {FlowSid: str, Sid: str}
@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?}

@endpoint GET /v2/Flows/{FlowSid}/Executions/{ExecutionSid}/Context
@required {FlowSid: str, ExecutionSid: str}
@returns(200) {account_sid: str?, context: any?, flow_sid: str?, execution_sid: str?, url: str(uri)?}

@endpoint GET /v2/Flows/{FlowSid}/Executions/{ExecutionSid}/Steps
@required {FlowSid: str, ExecutionSid: str}
@optional {PageSize: int(int64), Page: int, PageToken: str}
@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)}}

@endpoint GET /v2/Flows/{FlowSid}/Executions/{ExecutionSid}/Steps/{Sid}
@required {FlowSid: str, ExecutionSid: str, Sid: str}
@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?}

@endpoint GET /v2/Flows/{FlowSid}/Executions/{ExecutionSid}/Steps/{StepSid}/Context
@required {FlowSid: str, ExecutionSid: str, StepSid: str}
@returns(200) {account_sid: str?, context: any?, execution_sid: str?, flow_sid: str?, step_sid: str?, url: str(uri)?}

@endpoint POST /v2/Flows
@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?}

@endpoint GET /v2/Flows
@optional {PageSize: int(int64), Page: int, PageToken: str}
@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)}}

@endpoint POST /v2/Flows/{Sid}
@required {Sid: str}
@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?}

@endpoint GET /v2/Flows/{Sid}
@required {Sid: str}
@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?}

@endpoint DELETE /v2/Flows/{Sid}
@required {Sid: str}
@returns(204)

@endpoint GET /v2/Flows/{Sid}/Revisions
@required {Sid: str}
@optional {PageSize: int(int64), Page: int, PageToken: str}
@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)}}

@endpoint GET /v2/Flows/{Sid}/Revisions/{Revision}
@required {Sid: str, Revision: str}
@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)?}

@endpoint POST /v2/Flows/Validate
@returns(200) {valid: bool?}

@endpoint GET /v2/Flows/{Sid}/TestUsers
@required {Sid: str}
@returns(200) {sid: str?, test_users: [str]?, url: str(uri)?}

@endpoint POST /v2/Flows/{Sid}/TestUsers
@required {Sid: str}
@returns(200) {sid: str?, test_users: [str]?, url: str(uri)?}

@end
