@lap v0.3
# Machine-readable API spec. Each @endpoint block is one API call.
@api AWS CodeDeploy
@version 2014-10-06
@auth AWS SigV4
@endpoints 47
@hint download_for_search
@toc root(47)

@endpoint POST /
@required {tags: [Tag], instanceNames: [str]}

@endpoint POST /
@required {applicationName: str, revisions: [RevisionLocation]}
@returns(200) {applicationName: str?, errorMessage: str?, revisions: [RevisionInfo]?}

@endpoint POST /
@required {applicationNames: [str]}
@returns(200) {applicationsInfo: [ApplicationInfo]?}

@endpoint POST /
@required {applicationName: str, deploymentGroupNames: [str]}
@returns(200) {deploymentGroupsInfo: [DeploymentGroupInfo]?, errorMessage: str?}

@endpoint POST /
@required {deploymentId: str, instanceIds: [str]}
@returns(200) {instancesSummary: [InstanceSummary]?, errorMessage: str?}

@endpoint POST /
@required {deploymentId: str, targetIds: [str]}
@returns(200) {deploymentTargets: [DeploymentTarget]?}

@endpoint POST /
@required {deploymentIds: [str]}
@returns(200) {deploymentsInfo: [DeploymentInfo]?}

@endpoint POST /
@required {instanceNames: [str]}
@returns(200) {instanceInfos: [InstanceInfo]?}

@endpoint POST /
@optional {deploymentId: str, deploymentWaitType: str}

@endpoint POST /
@required {applicationName: str}
@optional {computePlatform: str, tags: [Tag]}
@returns(200) {applicationId: str?}

@endpoint POST /
@required {applicationName: str}
@optional {deploymentGroupName: str, revision: RevisionLocation, deploymentConfigName: str, description: str, ignoreApplicationStopFailures: bool, targetInstances: TargetInstances, autoRollbackConfiguration: AutoRollbackConfiguration, updateOutdatedInstancesOnly: bool, fileExistsBehavior: str, overrideAlarmConfiguration: AlarmConfiguration}
@returns(200) {deploymentId: str?}

@endpoint POST /
@required {deploymentConfigName: str}
@optional {minimumHealthyHosts: MinimumHealthyHosts, trafficRoutingConfig: TrafficRoutingConfig, computePlatform: str, zonalConfig: ZonalConfig}
@returns(200) {deploymentConfigId: str?}

@endpoint POST /
@required {applicationName: str, deploymentGroupName: str, serviceRoleArn: str}
@optional {deploymentConfigName: str, ec2TagFilters: [EC2TagFilter], onPremisesInstanceTagFilters: [TagFilter], autoScalingGroups: [str], triggerConfigurations: [TriggerConfig], alarmConfiguration: AlarmConfiguration, autoRollbackConfiguration: AutoRollbackConfiguration, outdatedInstancesStrategy: str, deploymentStyle: DeploymentStyle, blueGreenDeploymentConfiguration: BlueGreenDeploymentConfiguration, loadBalancerInfo: LoadBalancerInfo, ec2TagSet: EC2TagSet, ecsServices: [ECSService], onPremisesTagSet: OnPremisesTagSet, tags: [Tag], terminationHookEnabled: bool}
@returns(200) {deploymentGroupId: str?}

@endpoint POST /
@required {applicationName: str}

@endpoint POST /
@required {deploymentConfigName: str}

@endpoint POST /
@required {applicationName: str, deploymentGroupName: str}
@returns(200) {hooksNotCleanedUp: [AutoScalingGroup]?}

@endpoint POST /
@optional {tokenName: str}
@returns(200) {tokenName: str?}

@endpoint POST /
@optional {externalId: str}

@endpoint POST /
@required {instanceName: str}

@endpoint POST /
@required {applicationName: str}
@returns(200) {application: ApplicationInfo?{applicationId: str?, applicationName: str?, createTime: str(timestamp)?, linkedToGitHub: bool?, gitHubAccountName: str?, computePlatform: str?}}

@endpoint POST /
@required {applicationName: str, revision: RevisionLocation}
@returns(200) {applicationName: str?, revision: RevisionLocation?{revisionType: str?, s3Location: S3Location?{bucket: str?, key: str?, bundleType: str?, version: str?, eTag: str?}, gitHubLocation: GitHubLocation?{repository: str?, commitId: str?}, string: RawString?{content: str?, sha256: str?}, appSpecContent: AppSpecContent?{content: str?, sha256: str?}}, revisionInfo: GenericRevisionInfo?{description: str?, deploymentGroups: [str]?, firstUsedTime: str(timestamp)?, lastUsedTime: str(timestamp)?, registerTime: str(timestamp)?}}

@endpoint POST /
@required {deploymentId: str}
@returns(200) {deploymentInfo: DeploymentInfo?{applicationName: str?, deploymentGroupName: str?, deploymentConfigName: str?, deploymentId: str?, previousRevision: RevisionLocation?{revisionType: str?, s3Location: S3Location?{bucket: str?, key: str?, bundleType: str?, version: str?, eTag: str?}, gitHubLocation: GitHubLocation?{repository: str?, commitId: str?}, string: RawString?{content: str?, sha256: str?}, appSpecContent: AppSpecContent?{content: str?, sha256: str?}}, revision: RevisionLocation?{revisionType: str?, s3Location: S3Location?{bucket: str?, key: str?, bundleType: str?, version: str?, eTag: str?}, gitHubLocation: GitHubLocation?{repository: str?, commitId: str?}, string: RawString?{content: str?, sha256: str?}, appSpecContent: AppSpecContent?{content: str?, sha256: str?}}, status: str?, errorInformation: ErrorInformation?{code: str?, message: str?}, createTime: str(timestamp)?, startTime: str(timestamp)?, completeTime: str(timestamp)?, deploymentOverview: DeploymentOverview?{Pending: int(i64)?, InProgress: int(i64)?, Succeeded: int(i64)?, Failed: int(i64)?, Skipped: int(i64)?, Ready: int(i64)?}, description: str?, creator: str?, ignoreApplicationStopFailures: bool?, autoRollbackConfiguration: AutoRollbackConfiguration?{enabled: bool?, events: [str]?}, updateOutdatedInstancesOnly: bool?, rollbackInfo: RollbackInfo?{rollbackDeploymentId: str?, rollbackTriggeringDeploymentId: str?, rollbackMessage: str?}, deploymentStyle: DeploymentStyle?{deploymentType: str?, deploymentOption: str?}, targetInstances: TargetInstances?{tagFilters: [EC2TagFilter]?, autoScalingGroups: [str]?, ec2TagSet: EC2TagSet?{ec2TagSetList: [[EC2TagFilter]]?}}, instanceTerminationWaitTimeStarted: bool?, blueGreenDeploymentConfiguration: BlueGreenDeploymentConfiguration?{terminateBlueInstancesOnDeploymentSuccess: BlueInstanceTerminationOption?{action: str?, terminationWaitTimeInMinutes: int?}, deploymentReadyOption: DeploymentReadyOption?{actionOnTimeout: str?, waitTimeInMinutes: int?}, greenFleetProvisioningOption: GreenFleetProvisioningOption?{action: str?}}, loadBalancerInfo: LoadBalancerInfo?{elbInfoList: [ELBInfo]?, targetGroupInfoList: [TargetGroupInfo]?, targetGroupPairInfoList: [TargetGroupPairInfo]?}, additionalDeploymentStatusInfo: str?, fileExistsBehavior: str?, deploymentStatusMessages: [str]?, computePlatform: str?, externalId: str?, relatedDeployments: RelatedDeployments?{autoUpdateOutdatedInstancesRootDeploymentId: str?, autoUpdateOutdatedInstancesDeploymentIds: [str]?}, overrideAlarmConfiguration: AlarmConfiguration?{enabled: bool?, ignorePollAlarmFailure: bool?, alarms: [Alarm]?}}}

@endpoint POST /
@required {deploymentConfigName: str}
@returns(200) {deploymentConfigInfo: DeploymentConfigInfo?{deploymentConfigId: str?, deploymentConfigName: str?, minimumHealthyHosts: MinimumHealthyHosts?{type: str?, value: int?}, createTime: str(timestamp)?, computePlatform: str?, trafficRoutingConfig: TrafficRoutingConfig?{type: str?, timeBasedCanary: TimeBasedCanary?{canaryPercentage: int?, canaryInterval: int?}, timeBasedLinear: TimeBasedLinear?{linearPercentage: int?, linearInterval: int?}}, zonalConfig: ZonalConfig?{firstZoneMonitorDurationInSeconds: int(i64)?, monitorDurationInSeconds: int(i64)?, minimumHealthyHostsPerZone: MinimumHealthyHostsPerZone?{type: str?, value: int?}}}}

@endpoint POST /
@required {applicationName: str, deploymentGroupName: str}
@returns(200) {deploymentGroupInfo: DeploymentGroupInfo?{applicationName: str?, deploymentGroupId: str?, deploymentGroupName: str?, deploymentConfigName: str?, ec2TagFilters: [EC2TagFilter]?, onPremisesInstanceTagFilters: [TagFilter]?, autoScalingGroups: [AutoScalingGroup]?, serviceRoleArn: str?, targetRevision: RevisionLocation?{revisionType: str?, s3Location: S3Location?{bucket: str?, key: str?, bundleType: str?, version: str?, eTag: str?}, gitHubLocation: GitHubLocation?{repository: str?, commitId: str?}, string: RawString?{content: str?, sha256: str?}, appSpecContent: AppSpecContent?{content: str?, sha256: str?}}, triggerConfigurations: [TriggerConfig]?, alarmConfiguration: AlarmConfiguration?{enabled: bool?, ignorePollAlarmFailure: bool?, alarms: [Alarm]?}, autoRollbackConfiguration: AutoRollbackConfiguration?{enabled: bool?, events: [str]?}, deploymentStyle: DeploymentStyle?{deploymentType: str?, deploymentOption: str?}, outdatedInstancesStrategy: str?, blueGreenDeploymentConfiguration: BlueGreenDeploymentConfiguration?{terminateBlueInstancesOnDeploymentSuccess: BlueInstanceTerminationOption?{action: str?, terminationWaitTimeInMinutes: int?}, deploymentReadyOption: DeploymentReadyOption?{actionOnTimeout: str?, waitTimeInMinutes: int?}, greenFleetProvisioningOption: GreenFleetProvisioningOption?{action: str?}}, loadBalancerInfo: LoadBalancerInfo?{elbInfoList: [ELBInfo]?, targetGroupInfoList: [TargetGroupInfo]?, targetGroupPairInfoList: [TargetGroupPairInfo]?}, lastSuccessfulDeployment: LastDeploymentInfo?{deploymentId: str?, status: str?, endTime: str(timestamp)?, createTime: str(timestamp)?}, lastAttemptedDeployment: LastDeploymentInfo?{deploymentId: str?, status: str?, endTime: str(timestamp)?, createTime: str(timestamp)?}, ec2TagSet: EC2TagSet?{ec2TagSetList: [[EC2TagFilter]]?}, onPremisesTagSet: OnPremisesTagSet?{onPremisesTagSetList: [[TagFilter]]?}, computePlatform: str?, ecsServices: [ECSService]?, terminationHookEnabled: bool?}}

@endpoint POST /
@required {deploymentId: str, instanceId: str}
@returns(200) {instanceSummary: InstanceSummary?{deploymentId: str?, instanceId: str?, status: str?, lastUpdatedAt: str(timestamp)?, lifecycleEvents: [LifecycleEvent]?, instanceType: str?}}

@endpoint POST /
@required {deploymentId: str, targetId: str}
@returns(200) {deploymentTarget: DeploymentTarget?{deploymentTargetType: str?, instanceTarget: InstanceTarget?{deploymentId: str?, targetId: str?, targetArn: str?, status: str?, lastUpdatedAt: str(timestamp)?, lifecycleEvents: [LifecycleEvent]?, instanceLabel: str?}, lambdaTarget: LambdaTarget?{deploymentId: str?, targetId: str?, targetArn: str?, status: str?, lastUpdatedAt: str(timestamp)?, lifecycleEvents: [LifecycleEvent]?, lambdaFunctionInfo: LambdaFunctionInfo?{functionName: str?, functionAlias: str?, currentVersion: str?, targetVersion: str?, targetVersionWeight: num(f64)?}}, ecsTarget: ECSTarget?{deploymentId: str?, targetId: str?, targetArn: str?, lastUpdatedAt: str(timestamp)?, lifecycleEvents: [LifecycleEvent]?, status: str?, taskSetsInfo: [ECSTaskSet]?}, cloudFormationTarget: CloudFormationTarget?{deploymentId: str?, targetId: str?, lastUpdatedAt: str(timestamp)?, lifecycleEvents: [LifecycleEvent]?, status: str?, resourceType: str?, targetVersionWeight: num(f64)?}}}

@endpoint POST /
@required {instanceName: str}
@returns(200) {instanceInfo: InstanceInfo?{instanceName: str?, iamSessionArn: str?, iamUserArn: str?, instanceArn: str?, registerTime: str(timestamp)?, deregisterTime: str(timestamp)?, tags: [Tag]?}}

@endpoint POST /
@required {applicationName: str}
@optional {sortBy: str, sortOrder: str, s3Bucket: str, s3KeyPrefix: str, deployed: str, nextToken: str}
@returns(200) {revisions: [RevisionLocation]?, nextToken: str?}

@endpoint POST /
@optional {nextToken: str}
@returns(200) {applications: [str]?, nextToken: str?}

@endpoint POST /
@optional {nextToken: str}
@returns(200) {deploymentConfigsList: [str]?, nextToken: str?}

@endpoint POST /
@required {applicationName: str}
@optional {nextToken: str}
@returns(200) {applicationName: str?, deploymentGroups: [str]?, nextToken: str?}

@endpoint POST /
@required {deploymentId: str}
@optional {nextToken: str, instanceStatusFilter: [str], instanceTypeFilter: [str]}
@returns(200) {instancesList: [str]?, nextToken: str?}

@endpoint POST /
@required {deploymentId: str}
@optional {nextToken: str, targetFilters: map<str,[str]>}
@returns(200) {targetIds: [str]?, nextToken: str?}

@endpoint POST /
@optional {applicationName: str, deploymentGroupName: str, externalId: str, includeOnlyStatuses: [str], createTimeRange: TimeRange, nextToken: str}
@returns(200) {deployments: [str]?, nextToken: str?}

@endpoint POST /
@optional {nextToken: str}
@returns(200) {tokenNameList: [str]?, nextToken: str?}

@endpoint POST /
@optional {registrationStatus: str, tagFilters: [TagFilter], nextToken: str}
@returns(200) {instanceNames: [str]?, nextToken: str?}

@endpoint POST /
@required {ResourceArn: str}
@optional {NextToken: str}
@returns(200) {Tags: [Tag]?, NextToken: str?}

@endpoint POST /
@optional {deploymentId: str, lifecycleEventHookExecutionId: str, status: str}
@returns(200) {lifecycleEventHookExecutionId: str?}

@endpoint POST /
@required {applicationName: str, revision: RevisionLocation}
@optional {description: str}

@endpoint POST /
@required {instanceName: str}
@optional {iamSessionArn: str, iamUserArn: str}

@endpoint POST /
@required {tags: [Tag], instanceNames: [str]}

@endpoint POST /
@optional {deploymentId: str}

@endpoint POST /
@required {deploymentId: str}
@optional {autoRollbackEnabled: bool}
@returns(200) {status: str?, statusMessage: str?}

@endpoint POST /
@required {ResourceArn: str, Tags: [Tag]}

@endpoint POST /
@required {ResourceArn: str, TagKeys: [str]}

@endpoint POST /
@optional {applicationName: str, newApplicationName: str}

@endpoint POST /
@required {applicationName: str, currentDeploymentGroupName: str}
@optional {newDeploymentGroupName: str, deploymentConfigName: str, ec2TagFilters: [EC2TagFilter], onPremisesInstanceTagFilters: [TagFilter], autoScalingGroups: [str], serviceRoleArn: str, triggerConfigurations: [TriggerConfig], alarmConfiguration: AlarmConfiguration, autoRollbackConfiguration: AutoRollbackConfiguration, outdatedInstancesStrategy: str, deploymentStyle: DeploymentStyle, blueGreenDeploymentConfiguration: BlueGreenDeploymentConfiguration, loadBalancerInfo: LoadBalancerInfo, ec2TagSet: EC2TagSet, ecsServices: [ECSService], onPremisesTagSet: OnPremisesTagSet, terminationHookEnabled: bool}
@returns(200) {hooksNotCleanedUp: [AutoScalingGroup]?}

@end
