UNPKG

openapi-directory

Version:

Building & bundling https://github.com/APIs-guru/openapi-directory for easy use from JS

1 lines 393 kB
{"openapi":"3.0.0","info":{"version":"2015-07-09","x-release":"v4","title":"Amazon API Gateway","description":"<fullname>Amazon API Gateway</fullname> <p>Amazon API Gateway helps developers deliver robust, secure, and scalable mobile and web application back ends. API Gateway allows developers to securely connect mobile and web applications to APIs that run on AWS Lambda, Amazon EC2, or other publicly addressable web services that are hosted outside of AWS.</p>","x-logo":{"url":"https://twitter.com/awscloud/profile_image?size=original","backgroundColor":"#FFFFFF"},"termsOfService":"https://aws.amazon.com/service-terms/","contact":{"name":"Mike Ralphson","email":"mike.ralphson@gmail.com","url":"https://github.com/mermade/aws2openapi","x-twitter":"PermittedSoc"},"license":{"name":"Apache 2.0 License","url":"http://www.apache.org/licenses/"},"x-providerName":"amazonaws.com","x-serviceName":"apigateway","x-origin":[{"contentType":"application/json","url":"https://raw.githubusercontent.com/aws/aws-sdk-js/master/apis/apigateway-2015-07-09.normal.json","converter":{"url":"https://github.com/mermade/aws2openapi","version":"1.0.0"},"x-apisguru-driver":"external"}],"x-apiClientRegistration":{"url":"https://portal.aws.amazon.com/gp/aws/developer/registration/index.html?nc2=h_ct"},"x-apisguru-categories":["cloud"],"x-preferred":true},"externalDocs":{"description":"Amazon Web Services documentation","url":"https://docs.aws.amazon.com/apigateway/"},"servers":[{"url":"http://apigateway.{region}.amazonaws.com","variables":{"region":{"description":"The AWS region","enum":["us-east-1","us-east-2","us-west-1","us-west-2","us-gov-west-1","us-gov-east-1","ca-central-1","eu-north-1","eu-west-1","eu-west-2","eu-west-3","eu-central-1","eu-south-1","af-south-1","ap-northeast-1","ap-northeast-2","ap-northeast-3","ap-southeast-1","ap-southeast-2","ap-east-1","ap-south-1","sa-east-1","me-south-1"],"default":"us-east-1"}},"description":"The Amazon API Gateway multi-region endpoint"},{"url":"https://apigateway.{region}.amazonaws.com","variables":{"region":{"description":"The AWS region","enum":["us-east-1","us-east-2","us-west-1","us-west-2","us-gov-west-1","us-gov-east-1","ca-central-1","eu-north-1","eu-west-1","eu-west-2","eu-west-3","eu-central-1","eu-south-1","af-south-1","ap-northeast-1","ap-northeast-2","ap-northeast-3","ap-southeast-1","ap-southeast-2","ap-east-1","ap-south-1","sa-east-1","me-south-1"],"default":"us-east-1"}},"description":"The Amazon API Gateway multi-region endpoint"},{"url":"http://apigateway.{region}.amazonaws.com.cn","variables":{"region":{"description":"The AWS region","enum":["cn-north-1","cn-northwest-1"],"default":"cn-north-1"}},"description":"The Amazon API Gateway endpoint for China (Beijing) and China (Ningxia)"},{"url":"https://apigateway.{region}.amazonaws.com.cn","variables":{"region":{"description":"The AWS region","enum":["cn-north-1","cn-northwest-1"],"default":"cn-north-1"}},"description":"The Amazon API Gateway endpoint for China (Beijing) and China (Ningxia)"}],"x-hasEquivalentPaths":true,"paths":{"/apikeys":{"post":{"operationId":"CreateApiKey","description":"Create an ApiKey resource. ","responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiKey"}}}},"480":{"description":"BadRequestException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BadRequestException"}}}},"481":{"description":"ConflictException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConflictException"}}}},"482":{"description":"LimitExceededException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/LimitExceededException"}}}},"483":{"description":"NotFoundException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundException"}}}},"484":{"description":"UnauthorizedException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnauthorizedException"}}}},"485":{"description":"TooManyRequestsException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TooManyRequestsException"}}}}},"parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"description":"The name of the ApiKey.","type":"string"},"description":{"description":"The description of the ApiKey.","type":"string"},"enabled":{"description":"Specifies whether the ApiKey can be used by callers.","type":"boolean"},"generateDistinctId":{"description":"Specifies whether (<code>true</code>) or not (<code>false</code>) the key identifier is distinct from the created API key value. This parameter is deprecated and should not be used.","type":"boolean"},"value":{"description":"Specifies a value of the API key.","type":"string"},"stageKeys":{"description":"DEPRECATED FOR USAGE PLANS - Specifies stages associated with the API key.","type":"array","items":{"$ref":"#/components/schemas/StageKey"}},"customerId":{"description":"An AWS Marketplace customer identifier , when integrating with the AWS SaaS Marketplace.","type":"string"},"tags":{"description":"The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with <code>aws:</code>. The tag value can be up to 256 characters.","type":"object","additionalProperties":{"$ref":"#/components/schemas/String"}}}}}}}},"parameters":[{"$ref":"#/components/parameters/X-Amz-Content-Sha256"},{"$ref":"#/components/parameters/X-Amz-Date"},{"$ref":"#/components/parameters/X-Amz-Algorithm"},{"$ref":"#/components/parameters/X-Amz-Credential"},{"$ref":"#/components/parameters/X-Amz-Security-Token"},{"$ref":"#/components/parameters/X-Amz-Signature"},{"$ref":"#/components/parameters/X-Amz-SignedHeaders"}],"get":{"operationId":"GetApiKeys","description":"Gets information about the current ApiKeys resource.","responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiKeys"}}}},"480":{"description":"BadRequestException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BadRequestException"}}}},"481":{"description":"NotFoundException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundException"}}}},"482":{"description":"UnauthorizedException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnauthorizedException"}}}},"483":{"description":"TooManyRequestsException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TooManyRequestsException"}}}}},"parameters":[{"name":"position","in":"query","required":false,"description":"The current pagination position in the paged result set.","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"The maximum number of returned results per page. The default value is 25 and the maximum value is 500.","schema":{"type":"integer"}},{"name":"name","in":"query","required":false,"description":"The name of queried API keys.","schema":{"type":"string"}},{"name":"customerId","in":"query","required":false,"description":"The identifier of a customer in AWS Marketplace or an external system, such as a developer portal.","schema":{"type":"string"}},{"name":"includeValues","in":"query","required":false,"description":"A boolean flag to specify whether (<code>true</code>) or not (<code>false</code>) the result contains key values.","schema":{"type":"boolean"}}]}},"/restapis/{restapi_id}/authorizers":{"post":{"operationId":"CreateAuthorizer","description":"Adds a new Authorizer resource to an existing RestApi resource.","responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Authorizer"}}}},"480":{"description":"BadRequestException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BadRequestException"}}}},"481":{"description":"ConflictException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConflictException"}}}},"482":{"description":"LimitExceededException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/LimitExceededException"}}}},"483":{"description":"NotFoundException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundException"}}}},"484":{"description":"UnauthorizedException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnauthorizedException"}}}},"485":{"description":"TooManyRequestsException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TooManyRequestsException"}}}}},"parameters":[{"name":"restapi_id","in":"path","required":true,"description":"The string identifier of the associated RestApi.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["name","type"],"properties":{"name":{"description":"The name of the authorizer.","type":"string"},"type":{"description":"The authorizer type. Valid values are <code>TOKEN</code> for a Lambda function using a single authorization token submitted in a custom header, <code>REQUEST</code> for a Lambda function using incoming request parameters, and <code>COGNITO_USER_POOLS</code> for using an Amazon Cognito user pool.","type":"string","enum":["TOKEN","REQUEST","COGNITO_USER_POOLS"]},"providerARNs":{"description":"A list of the Amazon Cognito user pool ARNs for the <code>COGNITO_USER_POOLS</code> authorizer. Each element is of this format: <code>arn:aws:cognito-idp:{region}:{account_id}:userpool/{user_pool_id}</code>. For a <code>TOKEN</code> or <code>REQUEST</code> authorizer, this is not defined. ","type":"array","items":{"$ref":"#/components/schemas/ProviderARN"}},"authType":{"description":"Optional customer-defined field, used in OpenAPI imports and exports without functional impact.","type":"string"},"authorizerUri":{"description":"Specifies the authorizer's Uniform Resource Identifier (URI). For <code>TOKEN</code> or <code>REQUEST</code> authorizers, this must be a well-formed Lambda function URI, for example, <code>arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:{account_id}:function:{lambda_function_name}/invocations</code>. In general, the URI has this form <code>arn:aws:apigateway:{region}:lambda:path/{service_api}</code>, where <code>{region}</code> is the same as the region hosting the Lambda function, <code>path</code> indicates that the remaining substring in the URI should be treated as the path to the resource, including the initial <code>/</code>. For Lambda functions, this is usually of the form <code>/2015-03-31/functions/[FunctionARN]/invocations</code>.","type":"string"},"authorizerCredentials":{"description":"Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To use resource-based permissions on the Lambda function, specify null.","type":"string"},"identitySource":{"description":"The identity source for which authorization is requested. For a <code>TOKEN</code> or <code>COGNITO_USER_POOLS</code> authorizer, this is required and specifies the request header mapping expression for the custom header holding the authorization token submitted by the client. For example, if the token header name is <code>Auth</code>, the header mapping expression is <code>method.request.header.Auth</code>. For the <code>REQUEST</code> authorizer, this is required when authorization caching is enabled. The value is a comma-separated string of one or more mapping expressions of the specified request parameters. For example, if an <code>Auth</code> header, a <code>Name</code> query string parameter are defined as identity sources, this value is <code>method.request.header.Auth, method.request.querystring.Name</code>. These parameters will be used to derive the authorization caching key and to perform runtime validation of the <code>REQUEST</code> authorizer by verifying all of the identity-related request parameters are present, not null and non-empty. Only when this is true does the authorizer invoke the authorizer Lambda function, otherwise, it returns a 401 Unauthorized response without calling the Lambda function. The valid value is a string of comma-separated mapping expressions of the specified request parameters. When the authorization caching is not enabled, this property is optional.","type":"string"},"identityValidationExpression":{"description":"A validation expression for the incoming identity token. For <code>TOKEN</code> authorizers, this value is a regular expression. For <code>COGNITO_USER_POOLS</code> authorizers, API Gateway will match the <code>aud</code> field of the incoming token from the client against the specified regular expression. It will invoke the authorizer's Lambda function when there is a match. Otherwise, it will return a 401 Unauthorized response without calling the Lambda function. The validation expression does not apply to the <code>REQUEST</code> authorizer.","type":"string"},"authorizerResultTtlInSeconds":{"description":"The TTL in seconds of cached authorizer results. If it equals 0, authorization caching is disabled. If it is greater than 0, API Gateway will cache authorizer responses. If this field is not set, the default value is 300. The maximum value is 3600, or 1 hour.","type":"integer"}}}}}}},"parameters":[{"$ref":"#/components/parameters/X-Amz-Content-Sha256"},{"$ref":"#/components/parameters/X-Amz-Date"},{"$ref":"#/components/parameters/X-Amz-Algorithm"},{"$ref":"#/components/parameters/X-Amz-Credential"},{"$ref":"#/components/parameters/X-Amz-Security-Token"},{"$ref":"#/components/parameters/X-Amz-Signature"},{"$ref":"#/components/parameters/X-Amz-SignedHeaders"}],"get":{"operationId":"GetAuthorizers","description":"Describe an existing Authorizers resource.","responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Authorizers"}}}},"480":{"description":"BadRequestException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BadRequestException"}}}},"481":{"description":"NotFoundException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundException"}}}},"482":{"description":"UnauthorizedException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnauthorizedException"}}}},"483":{"description":"TooManyRequestsException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TooManyRequestsException"}}}}},"parameters":[{"name":"restapi_id","in":"path","required":true,"description":"The string identifier of the associated RestApi.","schema":{"type":"string"}},{"name":"position","in":"query","required":false,"description":"The current pagination position in the paged result set.","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"The maximum number of returned results per page. The default value is 25 and the maximum value is 500.","schema":{"type":"integer"}}]}},"/domainnames/{domain_name}/basepathmappings":{"post":{"operationId":"CreateBasePathMapping","description":"Creates a new BasePathMapping resource.","responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BasePathMapping"}}}},"480":{"description":"BadRequestException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BadRequestException"}}}},"481":{"description":"ConflictException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConflictException"}}}},"482":{"description":"LimitExceededException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/LimitExceededException"}}}},"483":{"description":"NotFoundException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundException"}}}},"484":{"description":"UnauthorizedException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnauthorizedException"}}}},"485":{"description":"TooManyRequestsException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TooManyRequestsException"}}}}},"parameters":[{"name":"domain_name","in":"path","required":true,"description":"The domain name of the BasePathMapping resource to create.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["restApiId"],"properties":{"basePath":{"description":"The base path name that callers of the API must provide as part of the URL after the domain name. This value must be unique for all of the mappings across a single API. Specify '(none)' if you do not want callers to specify a base path name after the domain name.","type":"string"},"restApiId":{"description":"The string identifier of the associated RestApi.","type":"string"},"stage":{"description":"The name of the API's stage that you want to use for this mapping. Specify '(none)' if you want callers to explicitly specify the stage name after any base path name.","type":"string"}}}}}}},"parameters":[{"$ref":"#/components/parameters/X-Amz-Content-Sha256"},{"$ref":"#/components/parameters/X-Amz-Date"},{"$ref":"#/components/parameters/X-Amz-Algorithm"},{"$ref":"#/components/parameters/X-Amz-Credential"},{"$ref":"#/components/parameters/X-Amz-Security-Token"},{"$ref":"#/components/parameters/X-Amz-Signature"},{"$ref":"#/components/parameters/X-Amz-SignedHeaders"}],"get":{"operationId":"GetBasePathMappings","description":"Represents a collection of BasePathMapping resources.","responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BasePathMappings"}}}},"480":{"description":"BadRequestException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BadRequestException"}}}},"481":{"description":"NotFoundException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundException"}}}},"482":{"description":"UnauthorizedException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnauthorizedException"}}}},"483":{"description":"TooManyRequestsException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TooManyRequestsException"}}}}},"parameters":[{"name":"domain_name","in":"path","required":true,"description":"The domain name of a BasePathMapping resource.","schema":{"type":"string"}},{"name":"position","in":"query","required":false,"description":"The current pagination position in the paged result set.","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"The maximum number of returned results per page. The default value is 25 and the maximum value is 500.","schema":{"type":"integer"}}]}},"/restapis/{restapi_id}/deployments":{"post":{"operationId":"CreateDeployment","description":"Creates a Deployment resource, which makes a specified RestApi callable over the internet.","responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Deployment"}}}},"480":{"description":"BadRequestException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BadRequestException"}}}},"481":{"description":"ConflictException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConflictException"}}}},"482":{"description":"LimitExceededException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/LimitExceededException"}}}},"483":{"description":"NotFoundException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundException"}}}},"484":{"description":"UnauthorizedException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnauthorizedException"}}}},"485":{"description":"TooManyRequestsException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TooManyRequestsException"}}}},"486":{"description":"ServiceUnavailableException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServiceUnavailableException"}}}}},"parameters":[{"name":"restapi_id","in":"path","required":true,"description":"The string identifier of the associated RestApi.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"stageName":{"description":"The name of the Stage resource for the Deployment resource to create.","type":"string"},"stageDescription":{"description":"The description of the Stage resource for the Deployment resource to create.","type":"string"},"description":{"description":"The description for the Deployment resource to create.","type":"string"},"cacheClusterEnabled":{"description":"Enables a cache cluster for the Stage resource specified in the input.","type":"boolean"},"cacheClusterSize":{"description":"Returns the size of the CacheCluster.","type":"string","enum":["0.5","1.6","6.1","13.5","28.4","58.2","118","237"]},"variables":{"description":"A map that defines the stage variables for the Stage resource that is associated with the new deployment. Variable names can have alphanumeric and underscore characters, and the values must match <code>[A-Za-z0-9-._~:/?#&amp;=,]+</code>.","type":"object","additionalProperties":{"$ref":"#/components/schemas/String"}},"canarySettings":{"description":"The input configuration for a canary deployment.","type":"object","properties":{"percentTraffic":{"allOf":[{"$ref":"#/components/schemas/Double"},{"description":"The percentage (0.0-100.0) of traffic routed to the canary deployment."}]},"stageVariableOverrides":{"allOf":[{"$ref":"#/components/schemas/MapOfStringToString"},{"description":"A stage variable overrides used for the canary release deployment. They can override existing stage variables or add new stage variables for the canary release deployment. These stage variables are represented as a string-to-string map between stage variable names and their values."}]},"useStageCache":{"allOf":[{"$ref":"#/components/schemas/Boolean"},{"description":"A Boolean flag to indicate whether the canary release deployment uses the stage cache or not."}]}}},"tracingEnabled":{"description":"Specifies whether active tracing with X-ray is enabled for the Stage.","type":"boolean"}}}}}}},"parameters":[{"$ref":"#/components/parameters/X-Amz-Content-Sha256"},{"$ref":"#/components/parameters/X-Amz-Date"},{"$ref":"#/components/parameters/X-Amz-Algorithm"},{"$ref":"#/components/parameters/X-Amz-Credential"},{"$ref":"#/components/parameters/X-Amz-Security-Token"},{"$ref":"#/components/parameters/X-Amz-Signature"},{"$ref":"#/components/parameters/X-Amz-SignedHeaders"}],"get":{"operationId":"GetDeployments","description":"Gets information about a Deployments collection.","responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Deployments"}}}},"480":{"description":"BadRequestException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BadRequestException"}}}},"481":{"description":"NotFoundException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundException"}}}},"482":{"description":"UnauthorizedException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnauthorizedException"}}}},"483":{"description":"TooManyRequestsException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TooManyRequestsException"}}}},"484":{"description":"ServiceUnavailableException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServiceUnavailableException"}}}}},"parameters":[{"name":"restapi_id","in":"path","required":true,"description":"The string identifier of the associated RestApi.","schema":{"type":"string"}},{"name":"position","in":"query","required":false,"description":"The current pagination position in the paged result set.","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"The maximum number of returned results per page. The default value is 25 and the maximum value is 500.","schema":{"type":"integer"}}]}},"/restapis/{restapi_id}/documentation/parts":{"post":{"operationId":"CreateDocumentationPart","description":"Creates a documentation part.","responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DocumentationPart"}}}},"480":{"description":"BadRequestException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BadRequestException"}}}},"481":{"description":"ConflictException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConflictException"}}}},"482":{"description":"LimitExceededException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/LimitExceededException"}}}},"483":{"description":"NotFoundException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundException"}}}},"484":{"description":"UnauthorizedException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnauthorizedException"}}}},"485":{"description":"TooManyRequestsException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TooManyRequestsException"}}}}},"parameters":[{"name":"restapi_id","in":"path","required":true,"description":"The string identifier of the associated RestApi.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["location","properties"],"properties":{"location":{"description":"Specifies the target API entity to which the documentation applies.","type":"object","properties":{"type":{"allOf":[{"$ref":"#/components/schemas/DocumentationPartType"},{"description":"The type of API entity to which the documentation content applies. Valid values are <code>API</code>, <code>AUTHORIZER</code>, <code>MODEL</code>, <code>RESOURCE</code>, <code>METHOD</code>, <code>PATH_PARAMETER</code>, <code>QUERY_PARAMETER</code>, <code>REQUEST_HEADER</code>, <code>REQUEST_BODY</code>, <code>RESPONSE</code>, <code>RESPONSE_HEADER</code>, and <code>RESPONSE_BODY</code>. Content inheritance does not apply to any entity of the <code>API</code>, <code>AUTHORIZER</code>, <code>METHOD</code>, <code>MODEL</code>, <code>REQUEST_BODY</code>, or <code>RESOURCE</code> type."}]},"path":{"allOf":[{"$ref":"#/components/schemas/String"},{"description":"The URL path of the target. It is a valid field for the API entity types of <code>RESOURCE</code>, <code>METHOD</code>, <code>PATH_PARAMETER</code>, <code>QUERY_PARAMETER</code>, <code>REQUEST_HEADER</code>, <code>REQUEST_BODY</code>, <code>RESPONSE</code>, <code>RESPONSE_HEADER</code>, and <code>RESPONSE_BODY</code>. The default value is <code>/</code> for the root resource. When an applicable child entity inherits the content of another entity of the same type with more general specifications of the other <code>location</code> attributes, the child entity's <code>path</code> attribute must match that of the parent entity as a prefix."}]},"method":{"allOf":[{"$ref":"#/components/schemas/String"},{"description":"The HTTP verb of a method. It is a valid field for the API entity types of <code>METHOD</code>, <code>PATH_PARAMETER</code>, <code>QUERY_PARAMETER</code>, <code>REQUEST_HEADER</code>, <code>REQUEST_BODY</code>, <code>RESPONSE</code>, <code>RESPONSE_HEADER</code>, and <code>RESPONSE_BODY</code>. The default value is <code>*</code> for any method. When an applicable child entity inherits the content of an entity of the same type with more general specifications of the other <code>location</code> attributes, the child entity's <code>method</code> attribute must match that of the parent entity exactly."}]},"statusCode":{"allOf":[{"$ref":"#/components/schemas/DocumentationPartLocationStatusCode"},{"description":"The HTTP status code of a response. It is a valid field for the API entity types of <code>RESPONSE</code>, <code>RESPONSE_HEADER</code>, and <code>RESPONSE_BODY</code>. The default value is <code>*</code> for any status code. When an applicable child entity inherits the content of an entity of the same type with more general specifications of the other <code>location</code> attributes, the child entity's <code>statusCode</code> attribute must match that of the parent entity exactly."}]},"name":{"allOf":[{"$ref":"#/components/schemas/String"},{"description":"The name of the targeted API entity. It is a valid and required field for the API entity types of <code>AUTHORIZER</code>, <code>MODEL</code>, <code>PATH_PARAMETER</code>, <code>QUERY_PARAMETER</code>, <code>REQUEST_HEADER</code>, <code>REQUEST_BODY</code> and <code>RESPONSE_HEADER</code>. It is an invalid field for any other entity type."}]}}},"properties":{"description":"The new documentation content map of the targeted API entity. Enclosed key-value pairs are API-specific, but only OpenAPI-compliant key-value pairs can be exported and, hence, published.","type":"string"}}}}}}},"parameters":[{"$ref":"#/components/parameters/X-Amz-Content-Sha256"},{"$ref":"#/components/parameters/X-Amz-Date"},{"$ref":"#/components/parameters/X-Amz-Algorithm"},{"$ref":"#/components/parameters/X-Amz-Credential"},{"$ref":"#/components/parameters/X-Amz-Security-Token"},{"$ref":"#/components/parameters/X-Amz-Signature"},{"$ref":"#/components/parameters/X-Amz-SignedHeaders"}],"get":{"operationId":"GetDocumentationParts","description":"Gets documentation parts.","responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DocumentationParts"}}}},"480":{"description":"BadRequestException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BadRequestException"}}}},"481":{"description":"NotFoundException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundException"}}}},"482":{"description":"UnauthorizedException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnauthorizedException"}}}},"483":{"description":"TooManyRequestsException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TooManyRequestsException"}}}}},"parameters":[{"name":"restapi_id","in":"path","required":true,"description":"The string identifier of the associated RestApi.","schema":{"type":"string"}},{"name":"type","in":"query","required":false,"description":"The type of API entities of the to-be-retrieved documentation parts. ","schema":{"type":"string","enum":["API","AUTHORIZER","MODEL","RESOURCE","METHOD","PATH_PARAMETER","QUERY_PARAMETER","REQUEST_HEADER","REQUEST_BODY","RESPONSE","RESPONSE_HEADER","RESPONSE_BODY"]}},{"name":"name","in":"query","required":false,"description":"The name of API entities of the to-be-retrieved documentation parts.","schema":{"type":"string"}},{"name":"path","in":"query","required":false,"description":"The path of API entities of the to-be-retrieved documentation parts.","schema":{"type":"string"}},{"name":"position","in":"query","required":false,"description":"The current pagination position in the paged result set.","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"The maximum number of returned results per page. The default value is 25 and the maximum value is 500.","schema":{"type":"integer"}},{"name":"locationStatus","in":"query","required":false,"description":"The status of the API documentation parts to retrieve. Valid values are <code>DOCUMENTED</code> for retrieving DocumentationPart resources with content and <code>UNDOCUMENTED</code> for DocumentationPart resources without content.","schema":{"type":"string","enum":["DOCUMENTED","UNDOCUMENTED"]}}]},"put":{"operationId":"ImportDocumentationParts","description":"Imports documentation parts","responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DocumentationPartIds"}}}},"480":{"description":"BadRequestException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BadRequestException"}}}},"481":{"description":"ConflictException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConflictException"}}}},"482":{"description":"LimitExceededException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/LimitExceededException"}}}},"483":{"description":"NotFoundException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundException"}}}},"484":{"description":"UnauthorizedException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnauthorizedException"}}}},"485":{"description":"TooManyRequestsException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TooManyRequestsException"}}}}},"parameters":[{"name":"restapi_id","in":"path","required":true,"description":"The string identifier of the associated RestApi.","schema":{"type":"string"}},{"name":"mode","in":"query","required":false,"description":"A query parameter to indicate whether to overwrite (<code>OVERWRITE</code>) any existing DocumentationParts definition or to merge (<code>MERGE</code>) the new definition into the existing one. The default value is <code>MERGE</code>.","schema":{"type":"string","enum":["merge","overwrite"]}},{"name":"failonwarnings","in":"query","required":false,"description":"A query parameter to specify whether to rollback the documentation importation (<code>true</code>) or not (<code>false</code>) when a warning is encountered. The default value is <code>false</code>.","schema":{"type":"boolean"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["body"],"properties":{"body":{"description":"Raw byte array representing the to-be-imported documentation parts. To import from an OpenAPI file, this is a JSON object.","type":"string"}}}}}}}},"/restapis/{restapi_id}/documentation/versions":{"post":{"operationId":"CreateDocumentationVersion","description":"Creates a documentation version","responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DocumentationVersion"}}}},"480":{"description":"BadRequestException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BadRequestException"}}}},"481":{"description":"ConflictException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConflictException"}}}},"482":{"description":"LimitExceededException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/LimitExceededException"}}}},"483":{"description":"NotFoundException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundException"}}}},"484":{"description":"UnauthorizedException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnauthorizedException"}}}},"485":{"description":"TooManyRequestsException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TooManyRequestsException"}}}}},"parameters":[{"name":"restapi_id","in":"path","required":true,"description":"The string identifier of the associated RestApi.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["documentationVersion"],"properties":{"documentationVersion":{"description":"The version identifier of the new snapshot.","type":"string"},"stageName":{"description":"The stage name to be associated with the new documentation snapshot.","type":"string"},"description":{"description":"A description about the new documentation snapshot.","type":"string"}}}}}}},"parameters":[{"$ref":"#/components/parameters/X-Amz-Content-Sha256"},{"$ref":"#/components/parameters/X-Amz-Date"},{"$ref":"#/components/parameters/X-Amz-Algorithm"},{"$ref":"#/components/parameters/X-Amz-Credential"},{"$ref":"#/components/parameters/X-Amz-Security-Token"},{"$ref":"#/components/parameters/X-Amz-Signature"},{"$ref":"#/components/parameters/X-Amz-SignedHeaders"}],"get":{"operationId":"GetDocumentationVersions","description":"Gets documentation versions.","responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DocumentationVersions"}}}},"480":{"description":"BadRequestException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BadRequestException"}}}},"481":{"description":"UnauthorizedException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnauthorizedException"}}}},"482":{"description":"NotFoundException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundException"}}}},"483":{"description":"TooManyRequestsException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TooManyRequestsException"}}}}},"parameters":[{"name":"restapi_id","in":"path","required":true,"description":"The string identifier of the associated RestApi.","schema":{"type":"string"}},{"name":"position","in":"query","required":false,"description":"The current pagination position in the paged result set.","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"The maximum number of returned results per page. The default value is 25 and the maximum value is 500.","schema":{"type":"integer"}}]}},"/domainnames":{"post":{"operationId":"CreateDomainName","description":"Creates a new domain name.","responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DomainName"}}}},"480":{"description":"BadRequestException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BadRequestException"}}}},"481":{"description":"ConflictException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConflictException"}}}},"482":{"description":"LimitExceededException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/LimitExceededException"}}}},"483":{"description":"UnauthorizedException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnauthorizedException"}}}},"484":{"description":"TooManyRequestsException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TooManyRequestsException"}}}}},"parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["domainName"],"properties":{"domainName":{"description":"The name of the DomainName resource.","type":"string"},"certificateName":{"description":"The user-friendly name of the certificate that will be used by edge-optimized endpoint for this domain name.","type":"string"},"certificateBody":{"description":"[Deprecated] The body of the server certificate that will be used by edge-optimized endpoint for this domain name provided by your certificate authority.","type":"string"},"certificatePrivateKey":{"description":"[Deprecated] Your edge-optimized endpoint's domain name certificate's private key.","type":"string"},"certificateChain":{"description":"[Deprecated] The intermediate certificates and optionally the root certificate, one after the other without any blank lines, used by an edge-optimized endpoint for this domain name. If you include the root certificate, your certificate chain must start with intermediate certificates and end with the root certificate. Use the intermediate certificates that were provided by your certificate authority. Do not include any intermediaries that are not in the chain of trust path.","type":"string"},"certificateArn":{"description":"The reference to an AWS-managed certificate that will be used by edge-optimized endpoint for this domain name. AWS Certificate Manager is the only supported source.","type":"string"},"regionalCertificateName":{"description":"The user-friendly name of the certificate that will be used by regional endpoint for this domain name.","type":"string"},"regionalCertificateArn":{"description":"The reference to an AWS-managed certificate that will be used by regional endpoint for this domain name. AWS Certificate Manager is the only supported source.","type":"string"},"endpointConfiguration":{"description":"The endpoint configuration to indicate the types of endpoints an API (RestApi) or its custom domain name (DomainName) has. ","type":"object","properties":{"types":{"allOf":[{"$ref":"#/components/schemas/ListOfEndpointType"},{"description":"A list of endpoint types of an API (RestApi) or its custom domain name (DomainName). For an edge-optimized API and its custom domain name, the endpoint type is <code>\"EDGE\"</code>. For a regional API and its custom domain name, the endpoint type is <code>REGIONAL</code>. For a private API, the endpoint type is <code>PRIVATE</code>."}]},"vpcEndpointIds":{"allOf":[{"$ref":"#/components/schemas/ListOfString"},{"description":"A list of VpcEndpointIds of an API (RestApi) against which to create Route53 ALIASes. It is only supported for <code>PRIVATE</code> endpoint type."}]}}},"tags":{"description":"The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with <code>aws:</code>. The tag value can be up to 256 characters.","type":"object","additionalProperties":{"$ref":"#/components/schemas/String"}},"securityPolicy":{"description":"The Transport Layer Security (TLS) version + cipher suite for this DomainName. The valid values are <code>TLS_1_0</code> and <code>TLS_1_2</code>.","type":"string","enum":["TLS_1_0","TLS_1_2"]},"mutualTlsAuthentication":{"description":"The mutual TLS authentication configuration for a custom domain name. If specified, API Gateway performs two-way authentication between the client and the server. Clients must present a trusted certificate to access your API.","type":"object","properties":{"truststoreUri":{"allOf":[{"$ref":"#/components/schemas/String"},{"description":"An Amazon S3 URL that specifies the truststore for mutual TLS authentication, for example <code>s3://bucket-name/key-name</code>. The truststore can contain certificates from public or private certificate authorities. To update the truststore, upload a new version to S3, and then update your custom domain name to use the new version. To update the truststore, you must have permissions to access the S3 object."}]},"truststoreVersion":{"allOf":[{"$ref":"#/components/schemas/String"},{"description":"The version of the S3 object that contains your truststore. To specify a version, you must have versioning enabled for the S3 bucket"}]}}},"ownershipVerificationCertificateArn":{"description":"The ARN of the public certificate issued by ACM to validate ownership of your custom domain. Only required when configuring mutual TLS and using an ACM imported or private CA certificate ARN as the regionalCertificateArn.","type":"string"}}}}}}},"parameters":[{"$ref":"#/components/parameters/X-Amz-Content-Sha256"},{"$ref":"#/components/parameters/X-Amz-Date"},{"$ref":"#/components/parameters/X-Amz-Algorithm"},{"$ref":"#/components/parameters/X-Amz-Credential"},{"$ref":"#/components/parameters/X-Amz-Security-Token"},{"$ref":"#/components/parameters/X-Amz-Signature"},{"$ref":"#/components/parameters/X-Amz-SignedHeaders"}],"get":{"operationId":"GetDomainNames","description":"Represents a collection of DomainName resources.","responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DomainNames"}}}},"480":{"description":"BadRequestException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BadRequestException"}}}},"481":{"description":"NotFoundException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundException"}}}},"482":{"description":"UnauthorizedException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnauthorizedException"}}}},"483":{"description":"TooManyRequestsException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TooManyRequestsException"}}}}},"parameters":[{"name":"position","in":"query","required":false,"description":"The current pagination position in the paged result set.","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"The maximum number of returned results per page. The default value is 25 and the maximum value is 500.","schema":{"type":"integer"}}]}},"/restapis/{restapi_id}/models":{"post":{"operationId":"CreateModel","description":"Adds a new Model resource to an existing RestApi resource.","responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Model"}}}},"480":{"description":"BadRequestException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BadRequestException"}}}},"481":{"description":"ConflictException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConflictException"}}}},"482":{"description":"LimitExceededException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/LimitExceededException"}}}},"483":{"description":"NotFoundException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundException"}}}},"484":{"description":"UnauthorizedException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnauthorizedException"}}}},"485":{"description":"TooManyRequestsException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TooManyRequestsException"}}}}},"parameters":[{"name":"restapi_id","in":"path","required":true,"description":"The RestApi identifier under which the Model will be created.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["name","contentType"],"properties":{"name":{"description":"The name of the model. Must be alphanumeric.","type":"string"},"description":{"description":"The description of the model.","type":"string"},"schema":{"description":"The schema for the model. For <code>application/json</code> models, this should be JSON schema draft 4 model.","type":"string"},"contentType":{"description":"The content-type for the model.","type":"string"}}}}}}},"parameters":[{"$ref":"#/components/parameters/X-Amz-Content-Sha256"},{"$ref":"#/components/parameters/X-Amz-Date"},{"$ref":"#/components/parameters/X-Amz-Algorithm"},{"$ref":"#/components/parameters/X-Amz-Credential"},{"$ref":"#/components/parameters/X-Amz-Security-Token"},{"$ref":"#/components/parameters/X-Amz-Signature"},{"$ref":"#/components/parameters/X-Amz-SignedHeaders"}],"get":{"operationId":"GetModels","description":"Describes existing Models defined for a RestApi resource.","responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Models"}}}},"480":{"description":"BadRequestException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BadRequestException"}}}},"481":{"description":"UnauthorizedException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnauthorizedException"}}}},"482":{"description":"NotFoundException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundException"}}}},"483":{"description":"TooManyRequestsException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TooManyRequestsException"}}}}},"parameters":[{"name":"restapi_id","in":"path","required":true,"description":"The string identifier of the associated RestApi.","schema":{"type":"string"}},{"name":"position","in":"query","required":false,"description":"The current pagination position in the paged result set.","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"The maximum number of returned results per page. The default value is 25 and the maximum value is 500.","schema":{"type":"integer"}}]}},"/restapis/{restapi_id}/requestvalidators":{"post":{"operationId":"CreateRequestValidator","description":"Creates a RequestValidator of a given RestApi.","responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RequestValidator"}}}},"480":{"description":"BadRequestException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BadRequestException"}}}},"481":{"description":"ConflictException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConflictException"}}}},"482":{"description":"LimitExceededException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/LimitExceededException"}}}},"483":{"description":"NotFoundException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundException"}}}},"484":{"description":"UnauthorizedException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnauthorizedException"}}}},"485":{"description":"TooManyRequestsException","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TooManyRequestsException"}}}}},"parameters":[{"name":"restapi_id","in":"path","required":true,"description":"The string identifier of the associated RestApi.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"description":"The name of the to-be-created RequestValidator.","type":"string"},"validateRequestBody":{"description":"A Boolean flag to indicate whether to validate request body according to the configured model schema for the method (<code>true</code>) or not (<code>false</code>).","type":"boolean"},"validateRequestParameters":{"description":"A Boolean flag to indicate whether to validate request parameters, <code>true</code>, or not <code>false</code>.","type":"boolean"}}}}}}},"parameters":[{"$ref":"#/components/parameters/X-Amz-Content-Sha256"},{"$ref":"#/components/parameters/X-Amz-Date"},{"$ref":"#/components/parameters/X-Amz-Algorithm"},{"$ref":"#/compone