{ "smithy": "1.0", "metadata": { "suppressions": [ { "id": "HttpMethodSemantics", "namespace": "*" }, { "id": "HttpResponseCodeSemantics", "namespace": "*" }, { "id": "PaginatedTrait", "namespace": "*" }, { "id": "HttpHeaderTrait", "namespace": "*" }, { "id": "HttpUriConflict", "namespace": "*" }, { "id": "Service", "namespace": "*" } ] }, "shapes": { "com.amazonaws.outposts#AccessDeniedException": { "type": "structure", "members": { "Message": { "target": "com.amazonaws.outposts#ErrorMessage" } }, "traits": { "smithy.api#documentation": "

You do not have permission to perform this operation.

", "smithy.api#error": "client", "smithy.api#httpError": 403 } }, "com.amazonaws.outposts#AccountId": { "type": "string", "traits": { "smithy.api#documentation": "

The ID of the AWS account.

", "smithy.api#length": { "min": 12, "max": 12 } } }, "com.amazonaws.outposts#Arn": { "type": "string", "traits": { "smithy.api#length": { "min": 0, "max": 1011 }, "smithy.api#pattern": "^(arn:aws([a-z-]+)?:outposts:[a-z\\d-]+:\\d{12}:([a-z\\d-]+)/)[a-z]{2,8}-[a-f0-9]{17}$" } }, "com.amazonaws.outposts#AvailabilityZone": { "type": "string", "traits": { "smithy.api#documentation": "

The Availability Zone.

\n

You must specify AvailabilityZone or AvailabilityZoneId.

", "smithy.api#length": { "min": 1, "max": 1000 }, "smithy.api#pattern": "[a-z\\d-]+" } }, "com.amazonaws.outposts#AvailabilityZoneId": { "type": "string", "traits": { "smithy.api#documentation": "

The ID of the Availability Zone.

\n

You must specify AvailabilityZone or AvailabilityZoneId.

", "smithy.api#length": { "min": 1, "max": 255 }, "smithy.api#pattern": "[a-z]+[0-9]+-az[0-9]+" } }, "com.amazonaws.outposts#CreateOutpost": { "type": "operation", "input": { "target": "com.amazonaws.outposts#CreateOutpostInput" }, "output": { "target": "com.amazonaws.outposts#CreateOutpostOutput" }, "errors": [ { "target": "com.amazonaws.outposts#AccessDeniedException" }, { "target": "com.amazonaws.outposts#InternalServerException" }, { "target": "com.amazonaws.outposts#NotFoundException" }, { "target": "com.amazonaws.outposts#ServiceQuotaExceededException" }, { "target": "com.amazonaws.outposts#ValidationException" } ], "traits": { "smithy.api#documentation": "

Creates an Outpost.

", "smithy.api#http": { "method": "POST", "uri": "/outposts", "code": 200 } } }, "com.amazonaws.outposts#CreateOutpostInput": { "type": "structure", "members": { "Name": { "target": "com.amazonaws.outposts#OutpostName", "traits": { "smithy.api#required": {} } }, "Description": { "target": "com.amazonaws.outposts#OutpostDescription" }, "SiteId": { "target": "com.amazonaws.outposts#SiteId", "traits": { "smithy.api#required": {} } }, "AvailabilityZone": { "target": "com.amazonaws.outposts#AvailabilityZone" }, "AvailabilityZoneId": { "target": "com.amazonaws.outposts#AvailabilityZoneId" }, "Tags": { "target": "com.amazonaws.outposts#TagMap", "traits": { "smithy.api#documentation": "

The tags to apply to the Outpost.

" } } } }, "com.amazonaws.outposts#CreateOutpostOutput": { "type": "structure", "members": { "Outpost": { "target": "com.amazonaws.outposts#Outpost" } } }, "com.amazonaws.outposts#DeleteOutpost": { "type": "operation", "input": { "target": "com.amazonaws.outposts#DeleteOutpostInput" }, "output": { "target": "com.amazonaws.outposts#DeleteOutpostOutput" }, "errors": [ { "target": "com.amazonaws.outposts#AccessDeniedException" }, { "target": "com.amazonaws.outposts#InternalServerException" }, { "target": "com.amazonaws.outposts#NotFoundException" }, { "target": "com.amazonaws.outposts#ValidationException" } ], "traits": { "smithy.api#documentation": "

Deletes the Outpost.

", "smithy.api#http": { "method": "DELETE", "uri": "/outposts/{OutpostId}", "code": 200 } } }, "com.amazonaws.outposts#DeleteOutpostInput": { "type": "structure", "members": { "OutpostId": { "target": "com.amazonaws.outposts#OutpostId", "traits": { "smithy.api#httpLabel": {}, "smithy.api#required": {} } } } }, "com.amazonaws.outposts#DeleteOutpostOutput": { "type": "structure", "members": {} }, "com.amazonaws.outposts#DeleteSite": { "type": "operation", "input": { "target": "com.amazonaws.outposts#DeleteSiteInput" }, "output": { "target": "com.amazonaws.outposts#DeleteSiteOutput" }, "errors": [ { "target": "com.amazonaws.outposts#AccessDeniedException" }, { "target": "com.amazonaws.outposts#InternalServerException" }, { "target": "com.amazonaws.outposts#NotFoundException" }, { "target": "com.amazonaws.outposts#ValidationException" } ], "traits": { "smithy.api#documentation": "

Deletes the site.

", "smithy.api#http": { "method": "DELETE", "uri": "/sites/{SiteId}", "code": 200 } } }, "com.amazonaws.outposts#DeleteSiteInput": { "type": "structure", "members": { "SiteId": { "target": "com.amazonaws.outposts#SiteId", "traits": { "smithy.api#httpLabel": {}, "smithy.api#required": {} } } } }, "com.amazonaws.outposts#DeleteSiteOutput": { "type": "structure", "members": {} }, "com.amazonaws.outposts#ErrorMessage": { "type": "string", "traits": { "smithy.api#length": { "min": 1, "max": 1000 }, "smithy.api#pattern": "^[\\S \\n]+$" } }, "com.amazonaws.outposts#GetOutpost": { "type": "operation", "input": { "target": "com.amazonaws.outposts#GetOutpostInput" }, "output": { "target": "com.amazonaws.outposts#GetOutpostOutput" }, "errors": [ { "target": "com.amazonaws.outposts#AccessDeniedException" }, { "target": "com.amazonaws.outposts#InternalServerException" }, { "target": "com.amazonaws.outposts#NotFoundException" }, { "target": "com.amazonaws.outposts#ValidationException" } ], "traits": { "smithy.api#documentation": "

Gets information about the specified Outpost.

", "smithy.api#http": { "method": "GET", "uri": "/outposts/{OutpostId}", "code": 200 } } }, "com.amazonaws.outposts#GetOutpostInput": { "type": "structure", "members": { "OutpostId": { "target": "com.amazonaws.outposts#OutpostId", "traits": { "smithy.api#httpLabel": {}, "smithy.api#required": {} } } } }, "com.amazonaws.outposts#GetOutpostInstanceTypes": { "type": "operation", "input": { "target": "com.amazonaws.outposts#GetOutpostInstanceTypesInput" }, "output": { "target": "com.amazonaws.outposts#GetOutpostInstanceTypesOutput" }, "errors": [ { "target": "com.amazonaws.outposts#AccessDeniedException" }, { "target": "com.amazonaws.outposts#InternalServerException" }, { "target": "com.amazonaws.outposts#NotFoundException" }, { "target": "com.amazonaws.outposts#ValidationException" } ], "traits": { "smithy.api#documentation": "

Lists the instance types for the specified Outpost.

", "smithy.api#http": { "method": "GET", "uri": "/outposts/{OutpostId}/instanceTypes", "code": 200 } } }, "com.amazonaws.outposts#GetOutpostInstanceTypesInput": { "type": "structure", "members": { "OutpostId": { "target": "com.amazonaws.outposts#OutpostId", "traits": { "smithy.api#httpLabel": {}, "smithy.api#required": {} } }, "NextToken": { "target": "com.amazonaws.outposts#Token", "traits": { "smithy.api#httpQuery": "NextToken" } }, "MaxResults": { "target": "com.amazonaws.outposts#MaxResults1000", "traits": { "smithy.api#httpQuery": "MaxResults" } } } }, "com.amazonaws.outposts#GetOutpostInstanceTypesOutput": { "type": "structure", "members": { "InstanceTypes": { "target": "com.amazonaws.outposts#InstanceTypeListDefinition" }, "NextToken": { "target": "com.amazonaws.outposts#Token" }, "OutpostId": { "target": "com.amazonaws.outposts#OutpostId" }, "OutpostArn": { "target": "com.amazonaws.outposts#OutpostArn" } } }, "com.amazonaws.outposts#GetOutpostOutput": { "type": "structure", "members": { "Outpost": { "target": "com.amazonaws.outposts#Outpost" } } }, "com.amazonaws.outposts#InstanceType": { "type": "string", "traits": { "smithy.api#documentation": "

The instance type.

" } }, "com.amazonaws.outposts#InstanceTypeItem": { "type": "structure", "members": { "InstanceType": { "target": "com.amazonaws.outposts#InstanceType" } }, "traits": { "smithy.api#documentation": "

Information about an instance type.

" } }, "com.amazonaws.outposts#InstanceTypeListDefinition": { "type": "list", "member": { "target": "com.amazonaws.outposts#InstanceTypeItem" }, "traits": { "smithy.api#documentation": "

Information about the instance types.

" } }, "com.amazonaws.outposts#InternalServerException": { "type": "structure", "members": { "Message": { "target": "com.amazonaws.outposts#ErrorMessage" } }, "traits": { "smithy.api#documentation": "

An internal error has occurred.

", "smithy.api#error": "server", "smithy.api#httpError": 500 } }, "com.amazonaws.outposts#LifeCycleStatus": { "type": "string", "traits": { "smithy.api#documentation": "

The life cycle status.

" } }, "com.amazonaws.outposts#ListOutposts": { "type": "operation", "input": { "target": "com.amazonaws.outposts#ListOutpostsInput" }, "output": { "target": "com.amazonaws.outposts#ListOutpostsOutput" }, "errors": [ { "target": "com.amazonaws.outposts#AccessDeniedException" }, { "target": "com.amazonaws.outposts#InternalServerException" }, { "target": "com.amazonaws.outposts#ValidationException" } ], "traits": { "smithy.api#documentation": "

List the Outposts for your AWS account.

", "smithy.api#http": { "method": "GET", "uri": "/outposts", "code": 200 }, "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", "pageSize": "MaxResults" } } }, "com.amazonaws.outposts#ListOutpostsInput": { "type": "structure", "members": { "NextToken": { "target": "com.amazonaws.outposts#Token", "traits": { "smithy.api#httpQuery": "NextToken" } }, "MaxResults": { "target": "com.amazonaws.outposts#MaxResults1000", "traits": { "smithy.api#httpQuery": "MaxResults" } } } }, "com.amazonaws.outposts#ListOutpostsOutput": { "type": "structure", "members": { "Outposts": { "target": "com.amazonaws.outposts#outpostListDefinition" }, "NextToken": { "target": "com.amazonaws.outposts#Token" } } }, "com.amazonaws.outposts#ListSites": { "type": "operation", "input": { "target": "com.amazonaws.outposts#ListSitesInput" }, "output": { "target": "com.amazonaws.outposts#ListSitesOutput" }, "errors": [ { "target": "com.amazonaws.outposts#AccessDeniedException" }, { "target": "com.amazonaws.outposts#InternalServerException" }, { "target": "com.amazonaws.outposts#ValidationException" } ], "traits": { "smithy.api#documentation": "

Lists the sites for the specified AWS account.

", "smithy.api#http": { "method": "GET", "uri": "/sites", "code": 200 }, "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", "pageSize": "MaxResults" } } }, "com.amazonaws.outposts#ListSitesInput": { "type": "structure", "members": { "NextToken": { "target": "com.amazonaws.outposts#Token", "traits": { "smithy.api#httpQuery": "NextToken" } }, "MaxResults": { "target": "com.amazonaws.outposts#MaxResults1000", "traits": { "smithy.api#httpQuery": "MaxResults" } } } }, "com.amazonaws.outposts#ListSitesOutput": { "type": "structure", "members": { "Sites": { "target": "com.amazonaws.outposts#siteListDefinition" }, "NextToken": { "target": "com.amazonaws.outposts#Token" } } }, "com.amazonaws.outposts#ListTagsForResource": { "type": "operation", "input": { "target": "com.amazonaws.outposts#ListTagsForResourceRequest" }, "output": { "target": "com.amazonaws.outposts#ListTagsForResourceResponse" }, "errors": [ { "target": "com.amazonaws.outposts#InternalServerException" }, { "target": "com.amazonaws.outposts#NotFoundException" }, { "target": "com.amazonaws.outposts#ValidationException" } ], "traits": { "smithy.api#documentation": "

Lists the tags for the specified resource.

", "smithy.api#http": { "method": "GET", "uri": "/tags/{ResourceArn}", "code": 200 } } }, "com.amazonaws.outposts#ListTagsForResourceRequest": { "type": "structure", "members": { "ResourceArn": { "target": "com.amazonaws.outposts#Arn", "traits": { "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the resource.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } } } }, "com.amazonaws.outposts#ListTagsForResourceResponse": { "type": "structure", "members": { "Tags": { "target": "com.amazonaws.outposts#TagMap", "traits": { "smithy.api#documentation": "

The resource tags.

" } } } }, "com.amazonaws.outposts#MaxResults1000": { "type": "integer", "traits": { "smithy.api#box": {}, "smithy.api#documentation": "

The maximum page size.

", "smithy.api#range": { "min": 1, "max": 1000 } } }, "com.amazonaws.outposts#NotFoundException": { "type": "structure", "members": { "Message": { "target": "com.amazonaws.outposts#ErrorMessage" } }, "traits": { "smithy.api#documentation": "

The specified request is not valid.

", "smithy.api#error": "client", "smithy.api#httpError": 404 } }, "com.amazonaws.outposts#Outpost": { "type": "structure", "members": { "OutpostId": { "target": "com.amazonaws.outposts#OutpostId" }, "OwnerId": { "target": "com.amazonaws.outposts#OwnerId" }, "OutpostArn": { "target": "com.amazonaws.outposts#OutpostArn" }, "SiteId": { "target": "com.amazonaws.outposts#SiteId" }, "Name": { "target": "com.amazonaws.outposts#OutpostName" }, "Description": { "target": "com.amazonaws.outposts#OutpostDescription" }, "LifeCycleStatus": { "target": "com.amazonaws.outposts#LifeCycleStatus" }, "AvailabilityZone": { "target": "com.amazonaws.outposts#AvailabilityZone" }, "AvailabilityZoneId": { "target": "com.amazonaws.outposts#AvailabilityZoneId" }, "Tags": { "target": "com.amazonaws.outposts#TagMap", "traits": { "smithy.api#documentation": "

The Outpost tags.

" } } }, "traits": { "smithy.api#documentation": "

Information about an Outpost.

" } }, "com.amazonaws.outposts#OutpostArn": { "type": "string", "traits": { "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Outpost.

", "smithy.api#length": { "min": 1, "max": 255 }, "smithy.api#pattern": "^arn:aws([a-z-]+)?:outposts:[a-z\\d-]+:\\d{12}:outpost/op-[a-f0-9]{17}$" } }, "com.amazonaws.outposts#OutpostDescription": { "type": "string", "traits": { "smithy.api#documentation": "

The description of the Outpost.

", "smithy.api#length": { "min": 1, "max": 1000 }, "smithy.api#pattern": "^[\\S ]+$" } }, "com.amazonaws.outposts#OutpostId": { "type": "string", "traits": { "smithy.api#documentation": "

The ID of the Outpost.

", "smithy.api#length": { "min": 1, "max": 180 }, "smithy.api#pattern": "^(arn:aws([a-z-]+)?:outposts:[a-z\\d-]+:\\d{12}:outpost/)?op-[a-f0-9]{17}$" } }, "com.amazonaws.outposts#OutpostName": { "type": "string", "traits": { "smithy.api#documentation": "

The name of the Outpost.

", "smithy.api#length": { "min": 1, "max": 255 }, "smithy.api#pattern": "^[\\S ]+$" } }, "com.amazonaws.outposts#OutpostsOlafService": { "type": "service", "version": "2019-12-03", "operations": [ { "target": "com.amazonaws.outposts#CreateOutpost" }, { "target": "com.amazonaws.outposts#DeleteOutpost" }, { "target": "com.amazonaws.outposts#DeleteSite" }, { "target": "com.amazonaws.outposts#GetOutpost" }, { "target": "com.amazonaws.outposts#GetOutpostInstanceTypes" }, { "target": "com.amazonaws.outposts#ListOutposts" }, { "target": "com.amazonaws.outposts#ListSites" }, { "target": "com.amazonaws.outposts#ListTagsForResource" }, { "target": "com.amazonaws.outposts#TagResource" }, { "target": "com.amazonaws.outposts#UntagResource" } ], "traits": { "aws.api#service": { "sdkId": "Outposts", "arnNamespace": "outposts", "cloudFormationName": "Outposts", "cloudTrailEventSource": "outposts.amazonaws.com", "endpointPrefix": "outposts" }, "aws.auth#sigv4": { "name": "outposts" }, "aws.protocols#restJson1": {}, "smithy.api#documentation": "

AWS Outposts is a fully managed service that extends AWS infrastructure, APIs, and tools\n to customer premises. By providing local access to AWS managed infrastructure, AWS Outposts\n enables customers to build and run applications on premises using the same programming\n interfaces as in AWS Regions, while using local compute and storage resources for lower\n latency and local data processing needs.

", "smithy.api#title": "AWS Outposts" } }, "com.amazonaws.outposts#OwnerId": { "type": "string", "traits": { "smithy.api#documentation": "

The AWS account ID of the Outpost owner.

", "smithy.api#length": { "min": 12, "max": 12 }, "smithy.api#pattern": "\\d{12}" } }, "com.amazonaws.outposts#ServiceQuotaExceededException": { "type": "structure", "members": { "Message": { "target": "com.amazonaws.outposts#ErrorMessage" } }, "traits": { "smithy.api#documentation": "

You have exceeded a service quota.

", "smithy.api#error": "client", "smithy.api#httpError": 402 } }, "com.amazonaws.outposts#Site": { "type": "structure", "members": { "SiteId": { "target": "com.amazonaws.outposts#SiteId" }, "AccountId": { "target": "com.amazonaws.outposts#AccountId" }, "Name": { "target": "com.amazonaws.outposts#SiteName" }, "Description": { "target": "com.amazonaws.outposts#SiteDescription" }, "Tags": { "target": "com.amazonaws.outposts#TagMap", "traits": { "smithy.api#documentation": "

The site tags.

" } } }, "traits": { "smithy.api#documentation": "

Information about a site.

" } }, "com.amazonaws.outposts#SiteDescription": { "type": "string", "traits": { "smithy.api#documentation": "

The description of the site.

", "smithy.api#length": { "min": 1, "max": 1000 }, "smithy.api#pattern": "^[\\S ]+$" } }, "com.amazonaws.outposts#SiteId": { "type": "string", "traits": { "smithy.api#documentation": "

The ID of the site.

", "smithy.api#length": { "min": 1, "max": 255 }, "smithy.api#pattern": "os-[a-f0-9]{17}" } }, "com.amazonaws.outposts#SiteName": { "type": "string", "traits": { "smithy.api#documentation": "

The name of the site.

", "smithy.api#length": { "min": 1, "max": 1000 }, "smithy.api#pattern": "^[\\S ]+$" } }, "com.amazonaws.outposts#TagKey": { "type": "string", "traits": { "smithy.api#length": { "min": 1, "max": 128 }, "smithy.api#pattern": "^(?!aws:)[a-zA-Z+-=._:/]+$" } }, "com.amazonaws.outposts#TagKeyList": { "type": "list", "member": { "target": "com.amazonaws.outposts#TagKey" }, "traits": { "smithy.api#length": { "min": 1, "max": 50 } } }, "com.amazonaws.outposts#TagMap": { "type": "map", "key": { "target": "com.amazonaws.outposts#TagKey" }, "value": { "target": "com.amazonaws.outposts#TagValue" }, "traits": { "smithy.api#length": { "min": 1, "max": 50 } } }, "com.amazonaws.outposts#TagResource": { "type": "operation", "input": { "target": "com.amazonaws.outposts#TagResourceRequest" }, "output": { "target": "com.amazonaws.outposts#TagResourceResponse" }, "errors": [ { "target": "com.amazonaws.outposts#InternalServerException" }, { "target": "com.amazonaws.outposts#NotFoundException" }, { "target": "com.amazonaws.outposts#ValidationException" } ], "traits": { "smithy.api#documentation": "

Adds tags to the specified resource.

", "smithy.api#http": { "method": "POST", "uri": "/tags/{ResourceArn}", "code": 200 } } }, "com.amazonaws.outposts#TagResourceRequest": { "type": "structure", "members": { "ResourceArn": { "target": "com.amazonaws.outposts#Arn", "traits": { "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the resource.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } }, "Tags": { "target": "com.amazonaws.outposts#TagMap", "traits": { "smithy.api#documentation": "

The tags to add to the resource.

", "smithy.api#required": {} } } } }, "com.amazonaws.outposts#TagResourceResponse": { "type": "structure", "members": {} }, "com.amazonaws.outposts#TagValue": { "type": "string", "traits": { "smithy.api#length": { "min": 0, "max": 256 }, "smithy.api#pattern": "^[\\S \\n]+$" } }, "com.amazonaws.outposts#Token": { "type": "string", "traits": { "smithy.api#documentation": "

The pagination token.

", "smithy.api#length": { "min": 1, "max": 1005 }, "smithy.api#pattern": ".*\\S.*" } }, "com.amazonaws.outposts#UntagResource": { "type": "operation", "input": { "target": "com.amazonaws.outposts#UntagResourceRequest" }, "output": { "target": "com.amazonaws.outposts#UntagResourceResponse" }, "errors": [ { "target": "com.amazonaws.outposts#InternalServerException" }, { "target": "com.amazonaws.outposts#NotFoundException" }, { "target": "com.amazonaws.outposts#ValidationException" } ], "traits": { "smithy.api#documentation": "

Removes tags from the specified resource.

", "smithy.api#http": { "method": "DELETE", "uri": "/tags/{ResourceArn}", "code": 200 } } }, "com.amazonaws.outposts#UntagResourceRequest": { "type": "structure", "members": { "ResourceArn": { "target": "com.amazonaws.outposts#Arn", "traits": { "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the resource.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } }, "TagKeys": { "target": "com.amazonaws.outposts#TagKeyList", "traits": { "smithy.api#documentation": "

The tag keys.

", "smithy.api#httpQuery": "tagKeys", "smithy.api#required": {} } } } }, "com.amazonaws.outposts#UntagResourceResponse": { "type": "structure", "members": {} }, "com.amazonaws.outposts#ValidationException": { "type": "structure", "members": { "Message": { "target": "com.amazonaws.outposts#ErrorMessage" } }, "traits": { "smithy.api#documentation": "

A parameter is not valid.

", "smithy.api#error": "client", "smithy.api#httpError": 400 } }, "com.amazonaws.outposts#outpostListDefinition": { "type": "list", "member": { "target": "com.amazonaws.outposts#Outpost" }, "traits": { "smithy.api#documentation": "

Information about the Outposts.

" } }, "com.amazonaws.outposts#siteListDefinition": { "type": "list", "member": { "target": "com.amazonaws.outposts#Site" }, "traits": { "smithy.api#documentation": "

Information about the sites.

" } } } }