@lap v0.3
# Machine-readable API spec. Each @endpoint block is one API call.
@api AWS Cloud Map
@version 2017-03-14
@auth AWS SigV4
@endpoints 27
@hint download_for_search
@toc root(27)

@endpoint POST /
@required {Name: str}
@optional {CreatorRequestId: str, Description: str, Tags: [Tag]}
@returns(200) {OperationId: str?}

@endpoint POST /
@required {Name: str, Vpc: str}
@optional {CreatorRequestId: str, Description: str, Tags: [Tag], Properties: PrivateDnsNamespaceProperties}
@returns(200) {OperationId: str?}

@endpoint POST /
@required {Name: str}
@optional {CreatorRequestId: str, Description: str, Tags: [Tag], Properties: PublicDnsNamespaceProperties}
@returns(200) {OperationId: str?}

@endpoint POST /
@required {Name: str}
@optional {NamespaceId: str, CreatorRequestId: str, Description: str, DnsConfig: DnsConfig, HealthCheckConfig: HealthCheckConfig, HealthCheckCustomConfig: HealthCheckCustomConfig, Tags: [Tag], Type: str}
@returns(200) {Service: Service?{Id: str?, Arn: str?, Name: str?, NamespaceId: str?, Description: str?, InstanceCount: int?, DnsConfig: DnsConfig?{NamespaceId: str?, RoutingPolicy: str?, DnsRecords: [DnsRecord]}, Type: str?, HealthCheckConfig: HealthCheckConfig?{Type: str, ResourcePath: str?, FailureThreshold: int?}, HealthCheckCustomConfig: HealthCheckCustomConfig?{FailureThreshold: int?}, CreateDate: str(timestamp)?, CreatorRequestId: str?}}

@endpoint POST /
@required {Id: str}
@returns(200) {OperationId: str?}

@endpoint POST /
@required {Id: str}

@endpoint POST /
@required {ServiceId: str, InstanceId: str}
@returns(200) {OperationId: str?}

@endpoint POST /
@required {NamespaceName: str, ServiceName: str}
@optional {MaxResults: int, QueryParameters: map<str,str>, OptionalParameters: map<str,str>, HealthStatus: str}
@returns(200) {Instances: [HttpInstanceSummary]?, InstancesRevision: int(i64)?}

@endpoint POST /
@required {NamespaceName: str, ServiceName: str}
@returns(200) {InstancesRevision: int(i64)?}

@endpoint POST /
@required {ServiceId: str, InstanceId: str}
@returns(200) {Instance: Instance?{Id: str, CreatorRequestId: str?, Attributes: map<str,str>?}}

@endpoint POST /
@required {ServiceId: str}
@optional {Instances: [str], MaxResults: int, NextToken: str}
@returns(200) {Status: map<str,str>?, NextToken: str?}

@endpoint POST /
@required {Id: str}
@returns(200) {Namespace: Namespace?{Id: str?, Arn: str?, Name: str?, Type: str?, Description: str?, ServiceCount: int?, Properties: NamespaceProperties?{DnsProperties: DnsProperties?{HostedZoneId: str?, SOA: SOA?}, HttpProperties: HttpProperties?{HttpName: str?}}, CreateDate: str(timestamp)?, CreatorRequestId: str?}}

@endpoint POST /
@required {OperationId: str}
@returns(200) {Operation: Operation?{Id: str?, Type: str?, Status: str?, ErrorMessage: str?, ErrorCode: str?, CreateDate: str(timestamp)?, UpdateDate: str(timestamp)?, Targets: map<str,str>?}}

@endpoint POST /
@required {Id: str}
@returns(200) {Service: Service?{Id: str?, Arn: str?, Name: str?, NamespaceId: str?, Description: str?, InstanceCount: int?, DnsConfig: DnsConfig?{NamespaceId: str?, RoutingPolicy: str?, DnsRecords: [DnsRecord]}, Type: str?, HealthCheckConfig: HealthCheckConfig?{Type: str, ResourcePath: str?, FailureThreshold: int?}, HealthCheckCustomConfig: HealthCheckCustomConfig?{FailureThreshold: int?}, CreateDate: str(timestamp)?, CreatorRequestId: str?}}

@endpoint POST /
@required {ServiceId: str}
@optional {NextToken: str, MaxResults: int}
@returns(200) {Instances: [InstanceSummary]?, NextToken: str?}

@endpoint POST /
@optional {NextToken: str, MaxResults: int, Filters: [NamespaceFilter]}
@returns(200) {Namespaces: [NamespaceSummary]?, NextToken: str?}

@endpoint POST /
@optional {NextToken: str, MaxResults: int, Filters: [OperationFilter]}
@returns(200) {Operations: [OperationSummary]?, NextToken: str?}

@endpoint POST /
@optional {NextToken: str, MaxResults: int, Filters: [ServiceFilter]}
@returns(200) {Services: [ServiceSummary]?, NextToken: str?}

@endpoint POST /
@required {ResourceARN: str}
@returns(200) {Tags: [Tag]?}

@endpoint POST /
@required {ServiceId: str, InstanceId: str, Attributes: map<str,str>}
@optional {CreatorRequestId: str}
@returns(200) {OperationId: str?}

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

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

@endpoint POST /
@required {Id: str, Namespace: HttpNamespaceChange}
@optional {UpdaterRequestId: str}
@returns(200) {OperationId: str?}

@endpoint POST /
@required {ServiceId: str, InstanceId: str, Status: str}

@endpoint POST /
@required {Id: str, Namespace: PrivateDnsNamespaceChange}
@optional {UpdaterRequestId: str}
@returns(200) {OperationId: str?}

@endpoint POST /
@required {Id: str, Namespace: PublicDnsNamespaceChange}
@optional {UpdaterRequestId: str}
@returns(200) {OperationId: str?}

@endpoint POST /
@required {Id: str, Service: ServiceChange}
@returns(200) {OperationId: str?}

@end
