@lap v0.3
# Machine-readable API spec. Each @endpoint block is one API call.
@api AWS Secrets Manager
@version 2017-10-17
@auth AWS SigV4
@endpoints 23
@hint download_for_search
@toc root(23)

@endpoint POST /
@optional {SecretIdList: [str], Filters: [Filter], MaxResults: int, NextToken: str}
@returns(200) {SecretValues: [SecretValueEntry]?, NextToken: str?, Errors: [APIErrorType]?}

@endpoint POST /
@required {SecretId: str}
@returns(200) {ARN: str?, Name: str?, VersionId: str?}

@endpoint POST /
@required {Name: str}
@optional {ClientRequestToken: str, Description: str, KmsKeyId: str, SecretBinary: bytes, SecretString: str, Tags: [Tag], AddReplicaRegions: [ReplicaRegionType], ForceOverwriteReplicaSecret: bool}
@returns(200) {ARN: str?, Name: str?, VersionId: str?, ReplicationStatus: [ReplicationStatusType]?}

@endpoint POST /
@required {SecretId: str}
@returns(200) {ARN: str?, Name: str?}

@endpoint POST /
@required {SecretId: str}
@optional {RecoveryWindowInDays: int(i64), ForceDeleteWithoutRecovery: bool}
@returns(200) {ARN: str?, Name: str?, DeletionDate: str(timestamp)?}

@endpoint POST /
@required {SecretId: str}
@returns(200) {ARN: str?, Name: str?, Description: str?, KmsKeyId: str?, RotationEnabled: bool?, RotationLambdaARN: str?, RotationRules: RotationRulesType?{AutomaticallyAfterDays: int(i64)?, Duration: str?, ScheduleExpression: str?}, LastRotatedDate: str(timestamp)?, LastChangedDate: str(timestamp)?, LastAccessedDate: str(timestamp)?, DeletedDate: str(timestamp)?, NextRotationDate: str(timestamp)?, Tags: [Tag]?, VersionIdsToStages: map<str,[str]>?, OwningService: str?, CreatedDate: str(timestamp)?, PrimaryRegion: str?, ReplicationStatus: [ReplicationStatusType]?}

@endpoint POST /
@optional {PasswordLength: int(i64), ExcludeCharacters: str, ExcludeNumbers: bool, ExcludePunctuation: bool, ExcludeUppercase: bool, ExcludeLowercase: bool, IncludeSpace: bool, RequireEachIncludedType: bool}
@returns(200) {RandomPassword: str?}

@endpoint POST /
@required {SecretId: str}
@returns(200) {ARN: str?, Name: str?, ResourcePolicy: str?}

@endpoint POST /
@required {SecretId: str}
@optional {VersionId: str, VersionStage: str}
@returns(200) {ARN: str?, Name: str?, VersionId: str?, SecretBinary: bytes?, SecretString: str?, VersionStages: [str]?, CreatedDate: str(timestamp)?}

@endpoint POST /
@required {SecretId: str}
@optional {MaxResults: int, NextToken: str, IncludeDeprecated: bool}
@returns(200) {Versions: [SecretVersionsListEntry]?, NextToken: str?, ARN: str?, Name: str?}

@endpoint POST /
@optional {IncludePlannedDeletion: bool, MaxResults: int, NextToken: str, Filters: [Filter], SortOrder: str}
@returns(200) {SecretList: [SecretListEntry]?, NextToken: str?}

@endpoint POST /
@required {SecretId: str, ResourcePolicy: str}
@optional {BlockPublicPolicy: bool}
@returns(200) {ARN: str?, Name: str?}

@endpoint POST /
@required {SecretId: str}
@optional {ClientRequestToken: str, SecretBinary: bytes, SecretString: str, VersionStages: [str], RotationToken: str}
@returns(200) {ARN: str?, Name: str?, VersionId: str?, VersionStages: [str]?}

@endpoint POST /
@required {SecretId: str, RemoveReplicaRegions: [str]}
@returns(200) {ARN: str?, ReplicationStatus: [ReplicationStatusType]?}

@endpoint POST /
@required {SecretId: str, AddReplicaRegions: [ReplicaRegionType]}
@optional {ForceOverwriteReplicaSecret: bool}
@returns(200) {ARN: str?, ReplicationStatus: [ReplicationStatusType]?}

@endpoint POST /
@required {SecretId: str}
@returns(200) {ARN: str?, Name: str?}

@endpoint POST /
@required {SecretId: str}
@optional {ClientRequestToken: str, RotationLambdaARN: str, RotationRules: RotationRulesType, RotateImmediately: bool}
@returns(200) {ARN: str?, Name: str?, VersionId: str?}

@endpoint POST /
@required {SecretId: str}
@returns(200) {ARN: str?}

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

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

@endpoint POST /
@required {SecretId: str}
@optional {ClientRequestToken: str, Description: str, KmsKeyId: str, SecretBinary: bytes, SecretString: str}
@returns(200) {ARN: str?, Name: str?, VersionId: str?}

@endpoint POST /
@required {SecretId: str, VersionStage: str}
@optional {RemoveFromVersionId: str, MoveToVersionId: str}
@returns(200) {ARN: str?, Name: str?}

@endpoint POST /
@required {ResourcePolicy: str}
@optional {SecretId: str}
@returns(200) {PolicyValidationPassed: bool?, ValidationErrors: [ValidationErrorsEntry]?}

@end
