@lap v0.3
# Machine-readable API spec. Each @endpoint block is one API call.
@api Amazon Simple Workflow Service
@version 2012-01-25
@auth AWS SigV4
@endpoints 39
@hint download_for_search
@toc root(39)

@endpoint POST /
@required {domain: str}
@optional {startTimeFilter: ExecutionTimeFilter, closeTimeFilter: ExecutionTimeFilter, executionFilter: WorkflowExecutionFilter, typeFilter: WorkflowTypeFilter, tagFilter: TagFilter, closeStatusFilter: CloseStatusFilter}
@returns(200) {count: int, truncated: bool?}

@endpoint POST /
@required {domain: str, startTimeFilter: ExecutionTimeFilter}
@optional {typeFilter: WorkflowTypeFilter, tagFilter: TagFilter, executionFilter: WorkflowExecutionFilter}
@returns(200) {count: int, truncated: bool?}

@endpoint POST /
@required {domain: str, taskList: TaskList}
@returns(200) {count: int, truncated: bool?}

@endpoint POST /
@required {domain: str, taskList: TaskList}
@returns(200) {count: int, truncated: bool?}

@endpoint POST /
@required {domain: str, activityType: ActivityType}

@endpoint POST /
@required {domain: str, workflowType: WorkflowType}

@endpoint POST /
@required {domain: str, activityType: ActivityType}

@endpoint POST /
@required {name: str}

@endpoint POST /
@required {domain: str, workflowType: WorkflowType}

@endpoint POST /
@required {domain: str, activityType: ActivityType}
@returns(200) {typeInfo: ActivityTypeInfo{activityType: ActivityType{name: str, version: str}, status: str, description: str?, creationDate: str(timestamp), deprecationDate: str(timestamp)?}, configuration: ActivityTypeConfiguration{defaultTaskStartToCloseTimeout: str?, defaultTaskHeartbeatTimeout: str?, defaultTaskList: TaskList?{name: str}, defaultTaskPriority: str?, defaultTaskScheduleToStartTimeout: str?, defaultTaskScheduleToCloseTimeout: str?}}

@endpoint POST /
@required {name: str}
@returns(200) {domainInfo: DomainInfo{name: str, status: str, description: str?, arn: str?}, configuration: DomainConfiguration{workflowExecutionRetentionPeriodInDays: str}}

@endpoint POST /
@required {domain: str, execution: WorkflowExecution}
@returns(200) {executionInfo: WorkflowExecutionInfo{execution: WorkflowExecution{workflowId: str, runId: str}, workflowType: WorkflowType{name: str, version: str}, startTimestamp: str(timestamp), closeTimestamp: str(timestamp)?, executionStatus: str, closeStatus: str?, parent: WorkflowExecution?{workflowId: str, runId: str}, tagList: [str]?, cancelRequested: bool?}, executionConfiguration: WorkflowExecutionConfiguration{taskStartToCloseTimeout: str, executionStartToCloseTimeout: str, taskList: TaskList{name: str}, taskPriority: str?, childPolicy: str, lambdaRole: str?}, openCounts: WorkflowExecutionOpenCounts{openActivityTasks: int, openDecisionTasks: int, openTimers: int, openChildWorkflowExecutions: int, openLambdaFunctions: int?}, latestActivityTaskTimestamp: str(timestamp)?, latestExecutionContext: str?}

@endpoint POST /
@required {domain: str, workflowType: WorkflowType}
@returns(200) {typeInfo: WorkflowTypeInfo{workflowType: WorkflowType{name: str, version: str}, status: str, description: str?, creationDate: str(timestamp), deprecationDate: str(timestamp)?}, configuration: WorkflowTypeConfiguration{defaultTaskStartToCloseTimeout: str?, defaultExecutionStartToCloseTimeout: str?, defaultTaskList: TaskList?{name: str}, defaultTaskPriority: str?, defaultChildPolicy: str?, defaultLambdaRole: str?}}

@endpoint POST /
@required {domain: str, execution: WorkflowExecution}
@optional {nextPageToken: str, maximumPageSize: int, reverseOrder: bool}
@returns(200) {events: [HistoryEvent], nextPageToken: str?}

@endpoint POST /
@required {domain: str, registrationStatus: str}
@optional {name: str, nextPageToken: str, maximumPageSize: int, reverseOrder: bool}
@returns(200) {typeInfos: [ActivityTypeInfo], nextPageToken: str?}

@endpoint POST /
@required {domain: str}
@optional {startTimeFilter: ExecutionTimeFilter, closeTimeFilter: ExecutionTimeFilter, executionFilter: WorkflowExecutionFilter, closeStatusFilter: CloseStatusFilter, typeFilter: WorkflowTypeFilter, tagFilter: TagFilter, nextPageToken: str, maximumPageSize: int, reverseOrder: bool}
@returns(200) {executionInfos: [WorkflowExecutionInfo], nextPageToken: str?}

@endpoint POST /
@required {registrationStatus: str}
@optional {nextPageToken: str, maximumPageSize: int, reverseOrder: bool}
@returns(200) {domainInfos: [DomainInfo], nextPageToken: str?}

@endpoint POST /
@required {domain: str, startTimeFilter: ExecutionTimeFilter}
@optional {typeFilter: WorkflowTypeFilter, tagFilter: TagFilter, nextPageToken: str, maximumPageSize: int, reverseOrder: bool, executionFilter: WorkflowExecutionFilter}
@returns(200) {executionInfos: [WorkflowExecutionInfo], nextPageToken: str?}

@endpoint POST /
@required {resourceArn: str}
@returns(200) {tags: [ResourceTag]?}

@endpoint POST /
@required {domain: str, registrationStatus: str}
@optional {name: str, nextPageToken: str, maximumPageSize: int, reverseOrder: bool}
@returns(200) {typeInfos: [WorkflowTypeInfo], nextPageToken: str?}

@endpoint POST /
@required {domain: str, taskList: TaskList}
@optional {identity: str}
@returns(200) {taskToken: str, activityId: str, startedEventId: int(i64), workflowExecution: WorkflowExecution{workflowId: str, runId: str}, activityType: ActivityType{name: str, version: str}, input: str?}

@endpoint POST /
@required {domain: str, taskList: TaskList}
@optional {identity: str, nextPageToken: str, maximumPageSize: int, reverseOrder: bool, startAtPreviousStartedEvent: bool}
@returns(200) {taskToken: str, startedEventId: int(i64), workflowExecution: WorkflowExecution{workflowId: str, runId: str}, workflowType: WorkflowType{name: str, version: str}, events: [HistoryEvent], nextPageToken: str?, previousStartedEventId: int(i64)?}

@endpoint POST /
@required {taskToken: str}
@optional {details: str}
@returns(200) {cancelRequested: bool}

@endpoint POST /
@required {domain: str, name: str, version: str}
@optional {description: str, defaultTaskStartToCloseTimeout: str, defaultTaskHeartbeatTimeout: str, defaultTaskList: TaskList, defaultTaskPriority: str, defaultTaskScheduleToStartTimeout: str, defaultTaskScheduleToCloseTimeout: str}

@endpoint POST /
@required {name: str, workflowExecutionRetentionPeriodInDays: str}
@optional {description: str, tags: [ResourceTag]}

@endpoint POST /
@required {domain: str, name: str, version: str}
@optional {description: str, defaultTaskStartToCloseTimeout: str, defaultExecutionStartToCloseTimeout: str, defaultTaskList: TaskList, defaultTaskPriority: str, defaultChildPolicy: str, defaultLambdaRole: str}

@endpoint POST /
@required {domain: str, workflowId: str}
@optional {runId: str}

@endpoint POST /
@required {taskToken: str}
@optional {details: str}

@endpoint POST /
@required {taskToken: str}
@optional {result: str}

@endpoint POST /
@required {taskToken: str}
@optional {reason: str, details: str}

@endpoint POST /
@required {taskToken: str}
@optional {decisions: [Decision], executionContext: str, taskList: TaskList, taskListScheduleToStartTimeout: str}

@endpoint POST /
@required {domain: str, workflowId: str, signalName: str}
@optional {runId: str, input: str}

@endpoint POST /
@required {domain: str, workflowId: str, workflowType: WorkflowType}
@optional {taskList: TaskList, taskPriority: str, input: str, executionStartToCloseTimeout: str, tagList: [str], taskStartToCloseTimeout: str, childPolicy: str, lambdaRole: str}
@returns(200) {runId: str?}

@endpoint POST /
@required {resourceArn: str, tags: [ResourceTag]}

@endpoint POST /
@required {domain: str, workflowId: str}
@optional {runId: str, reason: str, details: str, childPolicy: str}

@endpoint POST /
@required {domain: str, activityType: ActivityType}

@endpoint POST /
@required {name: str}

@endpoint POST /
@required {domain: str, workflowType: WorkflowType}

@endpoint POST /
@required {resourceArn: str, tagKeys: [str]}

@end
