apigateway

package module
v0.26.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 30, 2020 License: Apache-2.0 Imports: 28 Imported by: 0

Documentation

Index

Constants

View Source
const ServiceAPIVersion = "2015-07-09"
View Source
const ServiceID = "API Gateway"

Variables

This section is empty.

Functions

func AddResolveEndpointMiddleware

func AddResolveEndpointMiddleware(stack *middleware.Stack, options ResolveEndpointMiddlewareOptions)

func NewDefaultEndpointResolver

func NewDefaultEndpointResolver() *internalendpoints.Resolver

NewDefaultEndpointResolver constructs a new service endpoint resolver

func RemoveResolveEndpointMiddleware

func RemoveResolveEndpointMiddleware(stack *middleware.Stack) error

Types

type Client

type Client struct {
	// contains filtered or unexported fields
}

Amazon API Gateway 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.

func New

func New(options Options, optFns ...func(*Options)) *Client

New returns an initialized Client based on the functional options. Provide additional functional options to further configure the behavior of the client, such as changing the client's endpoint or adding custom middleware behavior.

func NewFromConfig

func NewFromConfig(cfg aws.Config, optFns ...func(*Options)) *Client

NewFromConfig returns a new client from the provided config.

func (*Client) CreateApiKey

func (c *Client) CreateApiKey(ctx context.Context, params *CreateApiKeyInput, optFns ...func(*Options)) (*CreateApiKeyOutput, error)

Create an ApiKey () resource. AWS CLI (https://docs.aws.amazon.com/cli/latest/reference/apigateway/create-api-key.html)

func (*Client) CreateAuthorizer

func (c *Client) CreateAuthorizer(ctx context.Context, params *CreateAuthorizerInput, optFns ...func(*Options)) (*CreateAuthorizerOutput, error)

Adds a new Authorizer () resource to an existing RestApi () resource. AWS CLI (https://docs.aws.amazon.com/cli/latest/reference/apigateway/create-authorizer.html)

func (*Client) CreateBasePathMapping

func (c *Client) CreateBasePathMapping(ctx context.Context, params *CreateBasePathMappingInput, optFns ...func(*Options)) (*CreateBasePathMappingOutput, error)

Creates a new BasePathMapping () resource.

func (*Client) CreateDeployment

func (c *Client) CreateDeployment(ctx context.Context, params *CreateDeploymentInput, optFns ...func(*Options)) (*CreateDeploymentOutput, error)

Creates a Deployment () resource, which makes a specified RestApi () callable over the internet.

func (*Client) CreateDocumentationPart

func (c *Client) CreateDocumentationPart(ctx context.Context, params *CreateDocumentationPartInput, optFns ...func(*Options)) (*CreateDocumentationPartOutput, error)

func (*Client) CreateDocumentationVersion

func (c *Client) CreateDocumentationVersion(ctx context.Context, params *CreateDocumentationVersionInput, optFns ...func(*Options)) (*CreateDocumentationVersionOutput, error)

func (*Client) CreateDomainName

func (c *Client) CreateDomainName(ctx context.Context, params *CreateDomainNameInput, optFns ...func(*Options)) (*CreateDomainNameOutput, error)

Creates a new domain name.

func (*Client) CreateModel

func (c *Client) CreateModel(ctx context.Context, params *CreateModelInput, optFns ...func(*Options)) (*CreateModelOutput, error)

Adds a new Model () resource to an existing RestApi () resource.

func (*Client) CreateRequestValidator

func (c *Client) CreateRequestValidator(ctx context.Context, params *CreateRequestValidatorInput, optFns ...func(*Options)) (*CreateRequestValidatorOutput, error)

Creates a ReqeustValidator () of a given RestApi ().

func (*Client) CreateResource

func (c *Client) CreateResource(ctx context.Context, params *CreateResourceInput, optFns ...func(*Options)) (*CreateResourceOutput, error)

Creates a Resource () resource.

func (*Client) CreateRestApi

func (c *Client) CreateRestApi(ctx context.Context, params *CreateRestApiInput, optFns ...func(*Options)) (*CreateRestApiOutput, error)

Creates a new RestApi () resource.

func (*Client) CreateStage

func (c *Client) CreateStage(ctx context.Context, params *CreateStageInput, optFns ...func(*Options)) (*CreateStageOutput, error)

Creates a new Stage () resource that references a pre-existing Deployment () for the API.

func (*Client) CreateUsagePlan

func (c *Client) CreateUsagePlan(ctx context.Context, params *CreateUsagePlanInput, optFns ...func(*Options)) (*CreateUsagePlanOutput, error)

Creates a usage plan with the throttle and quota limits, as well as the associated API stages, specified in the payload.

func (*Client) CreateUsagePlanKey

func (c *Client) CreateUsagePlanKey(ctx context.Context, params *CreateUsagePlanKeyInput, optFns ...func(*Options)) (*CreateUsagePlanKeyOutput, error)

Creates a usage plan key for adding an existing API key to a usage plan.

func (c *Client) CreateVpcLink(ctx context.Context, params *CreateVpcLinkInput, optFns ...func(*Options)) (*CreateVpcLinkOutput, error)

Creates a VPC link, under the caller's account in a selected region, in an asynchronous operation that typically takes 2-4 minutes to complete and become operational. The caller must have permissions to create and update VPC Endpoint services.

func (*Client) DeleteApiKey

func (c *Client) DeleteApiKey(ctx context.Context, params *DeleteApiKeyInput, optFns ...func(*Options)) (*DeleteApiKeyOutput, error)

Deletes the ApiKey () resource.

func (*Client) DeleteAuthorizer

func (c *Client) DeleteAuthorizer(ctx context.Context, params *DeleteAuthorizerInput, optFns ...func(*Options)) (*DeleteAuthorizerOutput, error)

Deletes an existing Authorizer () resource. AWS CLI (https://docs.aws.amazon.com/cli/latest/reference/apigateway/delete-authorizer.html)

func (*Client) DeleteBasePathMapping

func (c *Client) DeleteBasePathMapping(ctx context.Context, params *DeleteBasePathMappingInput, optFns ...func(*Options)) (*DeleteBasePathMappingOutput, error)

Deletes the BasePathMapping () resource.

func (*Client) DeleteClientCertificate

func (c *Client) DeleteClientCertificate(ctx context.Context, params *DeleteClientCertificateInput, optFns ...func(*Options)) (*DeleteClientCertificateOutput, error)

Deletes the ClientCertificate () resource.

func (*Client) DeleteDeployment

func (c *Client) DeleteDeployment(ctx context.Context, params *DeleteDeploymentInput, optFns ...func(*Options)) (*DeleteDeploymentOutput, error)

Deletes a Deployment () resource. Deleting a deployment will only succeed if there are no Stage () resources associated with it.

func (*Client) DeleteDocumentationPart

func (c *Client) DeleteDocumentationPart(ctx context.Context, params *DeleteDocumentationPartInput, optFns ...func(*Options)) (*DeleteDocumentationPartOutput, error)

func (*Client) DeleteDocumentationVersion

func (c *Client) DeleteDocumentationVersion(ctx context.Context, params *DeleteDocumentationVersionInput, optFns ...func(*Options)) (*DeleteDocumentationVersionOutput, error)

func (*Client) DeleteDomainName

func (c *Client) DeleteDomainName(ctx context.Context, params *DeleteDomainNameInput, optFns ...func(*Options)) (*DeleteDomainNameOutput, error)

Deletes the DomainName () resource.

func (*Client) DeleteGatewayResponse

func (c *Client) DeleteGatewayResponse(ctx context.Context, params *DeleteGatewayResponseInput, optFns ...func(*Options)) (*DeleteGatewayResponseOutput, error)

Clears any customization of a GatewayResponse () of a specified response type on the given RestApi () and resets it with the default settings.

func (*Client) DeleteIntegration

func (c *Client) DeleteIntegration(ctx context.Context, params *DeleteIntegrationInput, optFns ...func(*Options)) (*DeleteIntegrationOutput, error)

Represents a delete integration.

func (*Client) DeleteIntegrationResponse

func (c *Client) DeleteIntegrationResponse(ctx context.Context, params *DeleteIntegrationResponseInput, optFns ...func(*Options)) (*DeleteIntegrationResponseOutput, error)

Represents a delete integration response.

func (*Client) DeleteMethod

func (c *Client) DeleteMethod(ctx context.Context, params *DeleteMethodInput, optFns ...func(*Options)) (*DeleteMethodOutput, error)

Deletes an existing Method () resource.

func (*Client) DeleteMethodResponse

func (c *Client) DeleteMethodResponse(ctx context.Context, params *DeleteMethodResponseInput, optFns ...func(*Options)) (*DeleteMethodResponseOutput, error)

Deletes an existing MethodResponse () resource.

func (*Client) DeleteModel

func (c *Client) DeleteModel(ctx context.Context, params *DeleteModelInput, optFns ...func(*Options)) (*DeleteModelOutput, error)

Deletes a model.

func (*Client) DeleteRequestValidator

func (c *Client) DeleteRequestValidator(ctx context.Context, params *DeleteRequestValidatorInput, optFns ...func(*Options)) (*DeleteRequestValidatorOutput, error)

Deletes a RequestValidator () of a given RestApi ().

func (*Client) DeleteResource

func (c *Client) DeleteResource(ctx context.Context, params *DeleteResourceInput, optFns ...func(*Options)) (*DeleteResourceOutput, error)

Deletes a Resource () resource.

func (*Client) DeleteRestApi

func (c *Client) DeleteRestApi(ctx context.Context, params *DeleteRestApiInput, optFns ...func(*Options)) (*DeleteRestApiOutput, error)

Deletes the specified API.

func (*Client) DeleteStage

func (c *Client) DeleteStage(ctx context.Context, params *DeleteStageInput, optFns ...func(*Options)) (*DeleteStageOutput, error)

Deletes a Stage () resource.

func (*Client) DeleteUsagePlan

func (c *Client) DeleteUsagePlan(ctx context.Context, params *DeleteUsagePlanInput, optFns ...func(*Options)) (*DeleteUsagePlanOutput, error)

Deletes a usage plan of a given plan Id.

func (*Client) DeleteUsagePlanKey

func (c *Client) DeleteUsagePlanKey(ctx context.Context, params *DeleteUsagePlanKeyInput, optFns ...func(*Options)) (*DeleteUsagePlanKeyOutput, error)

Deletes a usage plan key and remove the underlying API key from the associated usage plan.

func (c *Client) DeleteVpcLink(ctx context.Context, params *DeleteVpcLinkInput, optFns ...func(*Options)) (*DeleteVpcLinkOutput, error)

Deletes an existing VpcLink () of a specified identifier.

func (*Client) FlushStageAuthorizersCache

func (c *Client) FlushStageAuthorizersCache(ctx context.Context, params *FlushStageAuthorizersCacheInput, optFns ...func(*Options)) (*FlushStageAuthorizersCacheOutput, error)

Flushes all authorizer cache entries on a stage.

func (*Client) FlushStageCache

func (c *Client) FlushStageCache(ctx context.Context, params *FlushStageCacheInput, optFns ...func(*Options)) (*FlushStageCacheOutput, error)

Flushes a stage's cache.

func (*Client) GenerateClientCertificate

func (c *Client) GenerateClientCertificate(ctx context.Context, params *GenerateClientCertificateInput, optFns ...func(*Options)) (*GenerateClientCertificateOutput, error)

Generates a ClientCertificate () resource.

func (*Client) GetAccount

func (c *Client) GetAccount(ctx context.Context, params *GetAccountInput, optFns ...func(*Options)) (*GetAccountOutput, error)

Gets information about the current Account () resource.

func (*Client) GetApiKey

func (c *Client) GetApiKey(ctx context.Context, params *GetApiKeyInput, optFns ...func(*Options)) (*GetApiKeyOutput, error)

Gets information about the current ApiKey () resource.

func (*Client) GetApiKeys

func (c *Client) GetApiKeys(ctx context.Context, params *GetApiKeysInput, optFns ...func(*Options)) (*GetApiKeysOutput, error)

Gets information about the current ApiKeys () resource.

func (*Client) GetAuthorizer

func (c *Client) GetAuthorizer(ctx context.Context, params *GetAuthorizerInput, optFns ...func(*Options)) (*GetAuthorizerOutput, error)

Describe an existing Authorizer () resource. AWS CLI (https://docs.aws.amazon.com/cli/latest/reference/apigateway/get-authorizer.html)

func (*Client) GetAuthorizers

func (c *Client) GetAuthorizers(ctx context.Context, params *GetAuthorizersInput, optFns ...func(*Options)) (*GetAuthorizersOutput, error)

Describe an existing Authorizers () resource. AWS CLI (https://docs.aws.amazon.com/cli/latest/reference/apigateway/get-authorizers.html)

func (*Client) GetBasePathMapping

func (c *Client) GetBasePathMapping(ctx context.Context, params *GetBasePathMappingInput, optFns ...func(*Options)) (*GetBasePathMappingOutput, error)

Describe a BasePathMapping () resource.

func (*Client) GetBasePathMappings

func (c *Client) GetBasePathMappings(ctx context.Context, params *GetBasePathMappingsInput, optFns ...func(*Options)) (*GetBasePathMappingsOutput, error)

Represents a collection of BasePathMapping () resources.

func (*Client) GetClientCertificate

func (c *Client) GetClientCertificate(ctx context.Context, params *GetClientCertificateInput, optFns ...func(*Options)) (*GetClientCertificateOutput, error)

Gets information about the current ClientCertificate () resource.

func (*Client) GetClientCertificates

func (c *Client) GetClientCertificates(ctx context.Context, params *GetClientCertificatesInput, optFns ...func(*Options)) (*GetClientCertificatesOutput, error)

Gets a collection of ClientCertificate () resources.

func (*Client) GetDeployment

func (c *Client) GetDeployment(ctx context.Context, params *GetDeploymentInput, optFns ...func(*Options)) (*GetDeploymentOutput, error)

Gets information about a Deployment () resource.

func (*Client) GetDeployments

func (c *Client) GetDeployments(ctx context.Context, params *GetDeploymentsInput, optFns ...func(*Options)) (*GetDeploymentsOutput, error)

Gets information about a Deployments () collection.

func (*Client) GetDocumentationPart

func (c *Client) GetDocumentationPart(ctx context.Context, params *GetDocumentationPartInput, optFns ...func(*Options)) (*GetDocumentationPartOutput, error)

func (*Client) GetDocumentationParts

func (c *Client) GetDocumentationParts(ctx context.Context, params *GetDocumentationPartsInput, optFns ...func(*Options)) (*GetDocumentationPartsOutput, error)

func (*Client) GetDocumentationVersion

func (c *Client) GetDocumentationVersion(ctx context.Context, params *GetDocumentationVersionInput, optFns ...func(*Options)) (*GetDocumentationVersionOutput, error)

func (*Client) GetDocumentationVersions

func (c *Client) GetDocumentationVersions(ctx context.Context, params *GetDocumentationVersionsInput, optFns ...func(*Options)) (*GetDocumentationVersionsOutput, error)

func (*Client) GetDomainName

func (c *Client) GetDomainName(ctx context.Context, params *GetDomainNameInput, optFns ...func(*Options)) (*GetDomainNameOutput, error)

Represents a domain name that is contained in a simpler, more intuitive URL that can be called.

func (*Client) GetDomainNames

func (c *Client) GetDomainNames(ctx context.Context, params *GetDomainNamesInput, optFns ...func(*Options)) (*GetDomainNamesOutput, error)

Represents a collection of DomainName () resources.

func (*Client) GetExport

func (c *Client) GetExport(ctx context.Context, params *GetExportInput, optFns ...func(*Options)) (*GetExportOutput, error)

Exports a deployed version of a RestApi () in a specified format.

func (*Client) GetGatewayResponse

func (c *Client) GetGatewayResponse(ctx context.Context, params *GetGatewayResponseInput, optFns ...func(*Options)) (*GetGatewayResponseOutput, error)

Gets a GatewayResponse () of a specified response type on the given RestApi ().

func (*Client) GetGatewayResponses

func (c *Client) GetGatewayResponses(ctx context.Context, params *GetGatewayResponsesInput, optFns ...func(*Options)) (*GetGatewayResponsesOutput, error)

Gets the GatewayResponses () collection on the given RestApi (). If an API developer has not added any definitions for gateway responses, the result will be the API Gateway-generated default GatewayResponses () collection for the supported response types.

func (*Client) GetIntegration

func (c *Client) GetIntegration(ctx context.Context, params *GetIntegrationInput, optFns ...func(*Options)) (*GetIntegrationOutput, error)

Get the integration settings.

func (*Client) GetIntegrationResponse

func (c *Client) GetIntegrationResponse(ctx context.Context, params *GetIntegrationResponseInput, optFns ...func(*Options)) (*GetIntegrationResponseOutput, error)

Represents a get integration response.

func (*Client) GetMethod

func (c *Client) GetMethod(ctx context.Context, params *GetMethodInput, optFns ...func(*Options)) (*GetMethodOutput, error)

Describe an existing Method () resource.

func (*Client) GetMethodResponse

func (c *Client) GetMethodResponse(ctx context.Context, params *GetMethodResponseInput, optFns ...func(*Options)) (*GetMethodResponseOutput, error)

Describes a MethodResponse () resource.

func (*Client) GetModel

func (c *Client) GetModel(ctx context.Context, params *GetModelInput, optFns ...func(*Options)) (*GetModelOutput, error)

Describes an existing model defined for a RestApi () resource.

func (*Client) GetModelTemplate

func (c *Client) GetModelTemplate(ctx context.Context, params *GetModelTemplateInput, optFns ...func(*Options)) (*GetModelTemplateOutput, error)

Generates a sample mapping template that can be used to transform a payload into the structure of a model.

func (*Client) GetModels

func (c *Client) GetModels(ctx context.Context, params *GetModelsInput, optFns ...func(*Options)) (*GetModelsOutput, error)

Describes existing Models () defined for a RestApi () resource.

func (*Client) GetRequestValidator

func (c *Client) GetRequestValidator(ctx context.Context, params *GetRequestValidatorInput, optFns ...func(*Options)) (*GetRequestValidatorOutput, error)

Gets a RequestValidator () of a given RestApi ().

func (*Client) GetRequestValidators

func (c *Client) GetRequestValidators(ctx context.Context, params *GetRequestValidatorsInput, optFns ...func(*Options)) (*GetRequestValidatorsOutput, error)

Gets the RequestValidators () collection of a given RestApi ().

func (*Client) GetResource

func (c *Client) GetResource(ctx context.Context, params *GetResourceInput, optFns ...func(*Options)) (*GetResourceOutput, error)

Lists information about a resource.

func (*Client) GetResources

func (c *Client) GetResources(ctx context.Context, params *GetResourcesInput, optFns ...func(*Options)) (*GetResourcesOutput, error)

Lists information about a collection of Resource () resources.

func (*Client) GetRestApi

func (c *Client) GetRestApi(ctx context.Context, params *GetRestApiInput, optFns ...func(*Options)) (*GetRestApiOutput, error)

Lists the RestApi () resource in the collection.

func (*Client) GetRestApis

func (c *Client) GetRestApis(ctx context.Context, params *GetRestApisInput, optFns ...func(*Options)) (*GetRestApisOutput, error)

Lists the RestApis () resources for your collection.

func (*Client) GetSdk

func (c *Client) GetSdk(ctx context.Context, params *GetSdkInput, optFns ...func(*Options)) (*GetSdkOutput, error)

Generates a client SDK for a RestApi () and Stage ().

func (*Client) GetSdkType

func (c *Client) GetSdkType(ctx context.Context, params *GetSdkTypeInput, optFns ...func(*Options)) (*GetSdkTypeOutput, error)

func (*Client) GetSdkTypes

func (c *Client) GetSdkTypes(ctx context.Context, params *GetSdkTypesInput, optFns ...func(*Options)) (*GetSdkTypesOutput, error)

func (*Client) GetStage

func (c *Client) GetStage(ctx context.Context, params *GetStageInput, optFns ...func(*Options)) (*GetStageOutput, error)

Gets information about a Stage () resource.

func (*Client) GetStages

func (c *Client) GetStages(ctx context.Context, params *GetStagesInput, optFns ...func(*Options)) (*GetStagesOutput, error)

Gets information about one or more Stage () resources.

func (*Client) GetTags

func (c *Client) GetTags(ctx context.Context, params *GetTagsInput, optFns ...func(*Options)) (*GetTagsOutput, error)

Gets the Tags () collection for a given resource.

func (*Client) GetUsage

func (c *Client) GetUsage(ctx context.Context, params *GetUsageInput, optFns ...func(*Options)) (*GetUsageOutput, error)

Gets the usage data of a usage plan in a specified time interval.

func (*Client) GetUsagePlan

func (c *Client) GetUsagePlan(ctx context.Context, params *GetUsagePlanInput, optFns ...func(*Options)) (*GetUsagePlanOutput, error)

Gets a usage plan of a given plan identifier.

func (*Client) GetUsagePlanKey

func (c *Client) GetUsagePlanKey(ctx context.Context, params *GetUsagePlanKeyInput, optFns ...func(*Options)) (*GetUsagePlanKeyOutput, error)

Gets a usage plan key of a given key identifier.

func (*Client) GetUsagePlanKeys

func (c *Client) GetUsagePlanKeys(ctx context.Context, params *GetUsagePlanKeysInput, optFns ...func(*Options)) (*GetUsagePlanKeysOutput, error)

Gets all the usage plan keys representing the API keys added to a specified usage plan.

func (*Client) GetUsagePlans

func (c *Client) GetUsagePlans(ctx context.Context, params *GetUsagePlansInput, optFns ...func(*Options)) (*GetUsagePlansOutput, error)

Gets all the usage plans of the caller's account.

func (c *Client) GetVpcLink(ctx context.Context, params *GetVpcLinkInput, optFns ...func(*Options)) (*GetVpcLinkOutput, error)

Gets a specified VPC link under the caller's account in a region.

func (c *Client) GetVpcLinks(ctx context.Context, params *GetVpcLinksInput, optFns ...func(*Options)) (*GetVpcLinksOutput, error)

Gets the VpcLinks () collection under the caller's account in a selected region.

func (*Client) ImportApiKeys

func (c *Client) ImportApiKeys(ctx context.Context, params *ImportApiKeysInput, optFns ...func(*Options)) (*ImportApiKeysOutput, error)

Import API keys from an external source, such as a CSV-formatted file.

func (*Client) ImportDocumentationParts

func (c *Client) ImportDocumentationParts(ctx context.Context, params *ImportDocumentationPartsInput, optFns ...func(*Options)) (*ImportDocumentationPartsOutput, error)

func (*Client) ImportRestApi

func (c *Client) ImportRestApi(ctx context.Context, params *ImportRestApiInput, optFns ...func(*Options)) (*ImportRestApiOutput, error)

A feature of the API Gateway control service for creating a new API from an external API definition file.

func (*Client) PutGatewayResponse

func (c *Client) PutGatewayResponse(ctx context.Context, params *PutGatewayResponseInput, optFns ...func(*Options)) (*PutGatewayResponseOutput, error)

Creates a customization of a GatewayResponse () of a specified response type and status code on the given RestApi ().

func (*Client) PutIntegration

func (c *Client) PutIntegration(ctx context.Context, params *PutIntegrationInput, optFns ...func(*Options)) (*PutIntegrationOutput, error)

Sets up a method's integration.

func (*Client) PutIntegrationResponse

func (c *Client) PutIntegrationResponse(ctx context.Context, params *PutIntegrationResponseInput, optFns ...func(*Options)) (*PutIntegrationResponseOutput, error)

Represents a put integration.

func (*Client) PutMethod

func (c *Client) PutMethod(ctx context.Context, params *PutMethodInput, optFns ...func(*Options)) (*PutMethodOutput, error)

Add a method to an existing Resource () resource.

func (*Client) PutMethodResponse

func (c *Client) PutMethodResponse(ctx context.Context, params *PutMethodResponseInput, optFns ...func(*Options)) (*PutMethodResponseOutput, error)

Adds a MethodResponse () to an existing Method () resource.

func (*Client) PutRestApi

func (c *Client) PutRestApi(ctx context.Context, params *PutRestApiInput, optFns ...func(*Options)) (*PutRestApiOutput, error)

A feature of the API Gateway control service for updating an existing API with an input of external API definitions. The update can take the form of merging the supplied definition into the existing API or overwriting the existing API.

func (*Client) TagResource

func (c *Client) TagResource(ctx context.Context, params *TagResourceInput, optFns ...func(*Options)) (*TagResourceOutput, error)

Adds or updates a tag on a given resource.

func (*Client) TestInvokeAuthorizer

func (c *Client) TestInvokeAuthorizer(ctx context.Context, params *TestInvokeAuthorizerInput, optFns ...func(*Options)) (*TestInvokeAuthorizerOutput, error)

Simulate the execution of an Authorizer () in your RestApi () with headers, parameters, and an incoming request body. Use Lambda Function as Authorizer (https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-use-lambda-authorizer.html)Use Cognito User Pool as Authorizer (https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-integrate-with-cognito.html)

func (*Client) TestInvokeMethod

func (c *Client) TestInvokeMethod(ctx context.Context, params *TestInvokeMethodInput, optFns ...func(*Options)) (*TestInvokeMethodOutput, error)

Simulate the execution of a Method () in your RestApi () with headers, parameters, and an incoming request body.

func (*Client) UntagResource

func (c *Client) UntagResource(ctx context.Context, params *UntagResourceInput, optFns ...func(*Options)) (*UntagResourceOutput, error)

Removes a tag from a given resource.

func (*Client) UpdateAccount

func (c *Client) UpdateAccount(ctx context.Context, params *UpdateAccountInput, optFns ...func(*Options)) (*UpdateAccountOutput, error)

Changes information about the current Account () resource.

func (*Client) UpdateApiKey

func (c *Client) UpdateApiKey(ctx context.Context, params *UpdateApiKeyInput, optFns ...func(*Options)) (*UpdateApiKeyOutput, error)

Changes information about an ApiKey () resource.

func (*Client) UpdateAuthorizer

func (c *Client) UpdateAuthorizer(ctx context.Context, params *UpdateAuthorizerInput, optFns ...func(*Options)) (*UpdateAuthorizerOutput, error)

Updates an existing Authorizer () resource. AWS CLI (https://docs.aws.amazon.com/cli/latest/reference/apigateway/update-authorizer.html)

func (*Client) UpdateBasePathMapping

func (c *Client) UpdateBasePathMapping(ctx context.Context, params *UpdateBasePathMappingInput, optFns ...func(*Options)) (*UpdateBasePathMappingOutput, error)

Changes information about the BasePathMapping () resource.

func (*Client) UpdateClientCertificate

func (c *Client) UpdateClientCertificate(ctx context.Context, params *UpdateClientCertificateInput, optFns ...func(*Options)) (*UpdateClientCertificateOutput, error)

Changes information about an ClientCertificate () resource.

func (*Client) UpdateDeployment

func (c *Client) UpdateDeployment(ctx context.Context, params *UpdateDeploymentInput, optFns ...func(*Options)) (*UpdateDeploymentOutput, error)

Changes information about a Deployment () resource.

func (*Client) UpdateDocumentationPart

func (c *Client) UpdateDocumentationPart(ctx context.Context, params *UpdateDocumentationPartInput, optFns ...func(*Options)) (*UpdateDocumentationPartOutput, error)

func (*Client) UpdateDocumentationVersion

func (c *Client) UpdateDocumentationVersion(ctx context.Context, params *UpdateDocumentationVersionInput, optFns ...func(*Options)) (*UpdateDocumentationVersionOutput, error)

func (*Client) UpdateDomainName

func (c *Client) UpdateDomainName(ctx context.Context, params *UpdateDomainNameInput, optFns ...func(*Options)) (*UpdateDomainNameOutput, error)

Changes information about the DomainName () resource.

func (*Client) UpdateGatewayResponse

func (c *Client) UpdateGatewayResponse(ctx context.Context, params *UpdateGatewayResponseInput, optFns ...func(*Options)) (*UpdateGatewayResponseOutput, error)

Updates a GatewayResponse () of a specified response type on the given RestApi ().

func (*Client) UpdateIntegration

func (c *Client) UpdateIntegration(ctx context.Context, params *UpdateIntegrationInput, optFns ...func(*Options)) (*UpdateIntegrationOutput, error)

Represents an update integration.

func (*Client) UpdateIntegrationResponse

func (c *Client) UpdateIntegrationResponse(ctx context.Context, params *UpdateIntegrationResponseInput, optFns ...func(*Options)) (*UpdateIntegrationResponseOutput, error)

Represents an update integration response.

func (*Client) UpdateMethod

func (c *Client) UpdateMethod(ctx context.Context, params *UpdateMethodInput, optFns ...func(*Options)) (*UpdateMethodOutput, error)

Updates an existing Method () resource.

func (*Client) UpdateMethodResponse

func (c *Client) UpdateMethodResponse(ctx context.Context, params *UpdateMethodResponseInput, optFns ...func(*Options)) (*UpdateMethodResponseOutput, error)

Updates an existing MethodResponse () resource.

func (*Client) UpdateModel

func (c *Client) UpdateModel(ctx context.Context, params *UpdateModelInput, optFns ...func(*Options)) (*UpdateModelOutput, error)

Changes information about a model.

func (*Client) UpdateRequestValidator

func (c *Client) UpdateRequestValidator(ctx context.Context, params *UpdateRequestValidatorInput, optFns ...func(*Options)) (*UpdateRequestValidatorOutput, error)

Updates a RequestValidator () of a given RestApi ().

func (*Client) UpdateResource

func (c *Client) UpdateResource(ctx context.Context, params *UpdateResourceInput, optFns ...func(*Options)) (*UpdateResourceOutput, error)

Changes information about a Resource () resource.

func (*Client) UpdateRestApi

func (c *Client) UpdateRestApi(ctx context.Context, params *UpdateRestApiInput, optFns ...func(*Options)) (*UpdateRestApiOutput, error)

Changes information about the specified API.

func (*Client) UpdateStage

func (c *Client) UpdateStage(ctx context.Context, params *UpdateStageInput, optFns ...func(*Options)) (*UpdateStageOutput, error)

Changes information about a Stage () resource.

func (*Client) UpdateUsage

func (c *Client) UpdateUsage(ctx context.Context, params *UpdateUsageInput, optFns ...func(*Options)) (*UpdateUsageOutput, error)

Grants a temporary extension to the remaining quota of a usage plan associated with a specified API key.

func (*Client) UpdateUsagePlan

func (c *Client) UpdateUsagePlan(ctx context.Context, params *UpdateUsagePlanInput, optFns ...func(*Options)) (*UpdateUsagePlanOutput, error)

Updates a usage plan of a given plan Id.

func (c *Client) UpdateVpcLink(ctx context.Context, params *UpdateVpcLinkInput, optFns ...func(*Options)) (*UpdateVpcLinkOutput, error)

Updates an existing VpcLink () of a specified identifier.

type CreateApiKeyInput

type CreateApiKeyInput struct {
	TemplateSkipList []*string
	Template         *bool
	Title            *string
	// The name of the ApiKey ().
	Name *string
	// DEPRECATED FOR USAGE PLANS - Specifies stages associated with the API key.
	StageKeys []*types.StageKey
	// The description of the ApiKey ().
	Description *string
	// An AWS Marketplace customer identifier , when integrating with the AWS SaaS
	// Marketplace.
	CustomerId *string
	// Specifies whether (true) or not (false) the key identifier is distinct from the
	// created API key value. This parameter is deprecated and should not be used.
	GenerateDistinctId *bool
	// 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 aws:. The tag value
	// can be up to 256 characters.
	Tags map[string]*string
	// Specifies a value of the API key.
	Value *string
	// Specifies whether the ApiKey () can be used by callers.
	Enabled *bool
}

Request to create an ApiKey () resource.

type CreateApiKeyOutput

type CreateApiKeyOutput struct {
	// The name of the API Key.
	Name *string
	// A list of Stage () resources that are associated with the ApiKey () resource.
	StageKeys []*string
	// The timestamp when the API Key was created.
	CreatedDate *time.Time
	// The identifier of the API Key.
	Id *string
	// An AWS Marketplace customer identifier , when integrating with the AWS SaaS
	// Marketplace.
	CustomerId *string
	// The timestamp when the API Key was last updated.
	LastUpdatedDate *time.Time
	// Specifies whether the API Key can be used by callers.
	Enabled *bool
	// The collection of tags. Each tag element is associated with a given resource.
	Tags map[string]*string
	// The description of the API Key.
	Description *string
	// The value of the API Key.
	Value *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

A resource that can be distributed to callers for executing Method () resources that require an API key. API keys can be mapped to any Stage () on any RestApi (), which indicates that the callers with the API key can make requests to that stage. Use API Keys (https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-api-keys.html)

type CreateAuthorizerInput

type CreateAuthorizerInput struct {
	Template *bool
	// [Required] The name of the authorizer.
	Name *string
	// [Required] The string identifier of the associated RestApi ().
	RestApiId        *string
	TemplateSkipList []*string
	Title            *string
	// [Required] The authorizer type. Valid values are TOKEN for a Lambda function
	// using a single authorization token submitted in a custom header, REQUEST for a
	// Lambda function using incoming request parameters, and COGNITO_USER_POOLS for
	// using an Amazon Cognito user pool.
	Type types.AuthorizerType
	// Optional customer-defined field, used in OpenAPI imports and exports without
	// functional impact.
	AuthType *string
	// 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.
	AuthorizerResultTtlInSeconds *int32
	// A validation expression for the incoming identity token. For TOKEN authorizers,
	// this value is a regular expression. For COGNITO_USER_POOLS authorizers, API
	// Gateway will match the aud 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 REQUEST authorizer.
	IdentityValidationExpression *string
	// The identity source for which authorization is requested.
	//
	//     * For a TOKEN or
	// COGNITO_USER_POOLS 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 Auth, the
	// header mapping expression is method.request.header.Auth.
	//
	//     * For the REQUEST
	// 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 Auth header, a Name query string
	// parameter are defined as identity sources, this value is
	// method.request.header.Auth, method.request.querystring.Name. These parameters
	// will be used to derive the authorization caching key and to perform runtime
	// validation of the REQUEST 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.
	IdentitySource *string
	// Specifies the authorizer's Uniform Resource Identifier (URI). For TOKEN or
	// REQUEST authorizers, this must be a well-formed Lambda function URI, for
	// example,
	// 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.
	// In general, the URI has this form
	// arn:aws:apigateway:{region}:lambda:path/{service_api}, where {region} is the
	// same as the region hosting the Lambda function, path indicates that the
	// remaining substring in the URI should be treated as the path to the resource,
	// including the initial /. For Lambda functions, this is usually of the form
	// /2015-03-31/functions/[FunctionARN]/invocations.
	AuthorizerUri *string
	// 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.
	AuthorizerCredentials *string
	// A list of the Amazon Cognito user pool ARNs for the COGNITO_USER_POOLS
	// authorizer. Each element is of this format:
	// arn:aws:cognito-idp:{region}:{account_id}:userpool/{user_pool_id}. For a TOKEN
	// or REQUEST authorizer, this is not defined.
	ProviderARNs []*string
}

Request to add a new Authorizer () to an existing RestApi () resource.

type CreateAuthorizerOutput

type CreateAuthorizerOutput struct {
	// [Required] The name of the authorizer.
	Name *string
	// 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.
	AuthorizerCredentials *string
	// The identity source for which authorization is requested.
	//
	//     * For a TOKEN or
	// COGNITO_USER_POOLS 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 Auth, the
	// header mapping expression is method.request.header.Auth.
	//
	//     * For the REQUEST
	// 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 Auth header, a Name query string
	// parameter are defined as identity sources, this value is
	// method.request.header.Auth, method.request.querystring.Name. These parameters
	// will be used to derive the authorization caching key and to perform runtime
	// validation of the REQUEST 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.
	IdentitySource *string
	// The authorizer type. Valid values are TOKEN for a Lambda function using a single
	// authorization token submitted in a custom header, REQUEST for a Lambda function
	// using incoming request parameters, and COGNITO_USER_POOLS for using an Amazon
	// Cognito user pool.
	Type types.AuthorizerType
	// Specifies the authorizer's Uniform Resource Identifier (URI). For TOKEN or
	// REQUEST authorizers, this must be a well-formed Lambda function URI, for
	// example,
	// 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.
	// In general, the URI has this form
	// arn:aws:apigateway:{region}:lambda:path/{service_api}, where {region} is the
	// same as the region hosting the Lambda function, path indicates that the
	// remaining substring in the URI should be treated as the path to the resource,
	// including the initial /. For Lambda functions, this is usually of the form
	// /2015-03-31/functions/[FunctionARN]/invocations.
	AuthorizerUri *string
	// A list of the Amazon Cognito user pool ARNs for the COGNITO_USER_POOLS
	// authorizer. Each element is of this format:
	// arn:aws:cognito-idp:{region}:{account_id}:userpool/{user_pool_id}. For a TOKEN
	// or REQUEST authorizer, this is not defined.
	ProviderARNs []*string
	// Optional customer-defined field, used in OpenAPI imports and exports without
	// functional impact.
	AuthType *string
	// A validation expression for the incoming identity token. For TOKEN authorizers,
	// this value is a regular expression. For COGNITO_USER_POOLS authorizers, API
	// Gateway will match the aud 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 REQUEST authorizer.
	IdentityValidationExpression *string
	// 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.
	AuthorizerResultTtlInSeconds *int32
	// The identifier for the authorizer resource.
	Id *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents an authorization layer for methods. If enabled on a method, API Gateway will activate the authorizer when a client calls the method. Use Lambda Function as Authorizer (https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-use-lambda-authorizer.html)Use Cognito User Pool as Authorizer (https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-integrate-with-cognito.html)

type CreateBasePathMappingInput

type CreateBasePathMappingInput struct {
	Name *string
	// [Required] The domain name of the BasePathMapping () resource to create.
	DomainName       *string
	Title            *string
	TemplateSkipList []*string
	Template         *bool
	// 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.
	Stage *string
	// [Required] The string identifier of the associated RestApi ().
	RestApiId *string
	// 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.
	BasePath *string
}

Requests API Gateway to create a new BasePathMapping () resource.

type CreateBasePathMappingOutput

type CreateBasePathMappingOutput struct {
	// The name of the associated stage.
	Stage *string
	// The base path name that callers of the API must provide as part of the URL after
	// the domain name.
	BasePath *string
	// The string identifier of the associated RestApi ().
	RestApiId *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents the base path that callers of the API must provide as part of the URL after the domain name. A custom domain name plus a BasePathMapping specification identifies a deployed RestApi () in a given stage of the owner Account (). Use Custom Domain Names (https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-custom-domains.html)

type CreateDeploymentInput

type CreateDeploymentInput struct {
	Template         *bool
	TemplateSkipList []*string
	Title            *string
	Name             *string
	// [Required] The string identifier of the associated RestApi ().
	RestApiId *string
	// Specifies whether active tracing with X-ray is enabled for the Stage ().
	TracingEnabled *bool
	// The input configuration for the canary deployment when the deployment is a
	// canary release deployment.
	CanarySettings *types.DeploymentCanarySettings
	// 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 [A-Za-z0-9-._~:/?#&=,]+.
	Variables map[string]*string
	// Specifies the cache cluster size for the Stage () resource specified in the
	// input, if a cache cluster is enabled.
	CacheClusterSize types.CacheClusterSize
	// The description of the Stage () resource for the Deployment () resource to
	// create.
	StageDescription *string
	// Enables a cache cluster for the Stage () resource specified in the input.
	CacheClusterEnabled *bool
	// The name of the Stage () resource for the Deployment () resource to create.
	StageName *string
	// The description for the Deployment () resource to create.
	Description *string
}

Requests API Gateway to create a Deployment () resource.

type CreateDeploymentOutput

type CreateDeploymentOutput struct {
	// The date and time that the deployment resource was created.
	CreatedDate *time.Time
	// A summary of the RestApi () at the date and time that the deployment resource
	// was created.
	ApiSummary map[string]map[string]*types.MethodSnapshot
	// The identifier for the deployment resource.
	Id *string
	// The description for the deployment resource.
	Description *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

An immutable representation of a RestApi () resource that can be called by users using Stages (). A deployment must be associated with a Stage () for it to be callable over the Internet. To create a deployment, call POST on the Deployments () resource of a RestApi (). To view, update, or delete a deployment, call GET, PATCH, or DELETE on the specified deployment resource (/restapis/{restapi_id}/deployments/{deployment_id}). RestApi (), Deployments (), Stage (), AWS CLI (https://docs.aws.amazon.com/cli/latest/reference/apigateway/get-deployment.html), AWS SDKs (https://aws.amazon.com/tools/)

type CreateDocumentationPartInput

type CreateDocumentationPartInput struct {
	Name *string
	// [Required] The string identifier of the associated RestApi ().
	RestApiId        *string
	Template         *bool
	TemplateSkipList []*string
	Title            *string
	// [Required] 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.
	Properties *string
	// [Required] The location of the targeted API entity of the to-be-created
	// documentation part.
	Location *types.DocumentationPartLocation
}

Creates a new documentation part of a given API.

type CreateDocumentationPartOutput

type CreateDocumentationPartOutput struct {
	// The DocumentationPart () identifier, generated by API Gateway when the
	// DocumentationPart is created.
	Id *string
	// The location of the API entity to which the documentation applies. Valid fields
	// depend on the targeted API entity type. All the valid location fields are not
	// required. If not explicitly specified, a valid location field is treated as a
	// wildcard and associated documentation content may be inherited by matching
	// entities, unless overridden.
	Location *types.DocumentationPartLocation
	// A content map of API-specific key-value pairs describing the targeted API
	// entity. The map must be encoded as a JSON string, e.g., "{ \"description\":
	// \"The API does ...\" }". Only OpenAPI-compliant documentation-related fields
	// from the properties map are exported and, hence, published as part of the API
	// entity definitions, while the original documentation parts are exported in a
	// OpenAPI extension of x-amazon-apigateway-documentation.
	Properties *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

A documentation part for a targeted API entity. A documentation part consists of a content map (properties) and a target (location). The target specifies an API entity to which the documentation content applies. The supported API entity types are API, AUTHORIZER, MODEL, RESOURCE, METHOD, PATH_PARAMETER, QUERY_PARAMETER, REQUEST_HEADER, REQUEST_BODY, RESPONSE, RESPONSE_HEADER, and RESPONSE_BODY. Valid location fields depend on the API entity type. All valid fields are not required. The content map is a JSON string of API-specific key-value pairs. Although an API can use any shape for the content map, only the OpenAPI-compliant documentation fields will be injected into the associated API entity definition in the exported OpenAPI definition file. Documenting an API (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api.html), DocumentationParts ()

type CreateDocumentationVersionInput

type CreateDocumentationVersionInput struct {
	Title *string
	Name  *string
	// [Required] The string identifier of the associated RestApi ().
	RestApiId        *string
	TemplateSkipList []*string
	Template         *bool
	// The stage name to be associated with the new documentation snapshot.
	StageName *string
	// [Required] The version identifier of the new snapshot.
	DocumentationVersion *string
	// A description about the new documentation snapshot.
	Description *string
}

Creates a new documentation version of a given API.

type CreateDocumentationVersionOutput

type CreateDocumentationVersionOutput struct {
	// The description of the API documentation snapshot.
	Description *string
	// The date when the API documentation snapshot is created.
	CreatedDate *time.Time
	// The version identifier of the API documentation snapshot.
	Version *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

A snapshot of the documentation of an API. Publishing API documentation involves creating a documentation version associated with an API stage and exporting the versioned documentation to an external (e.g., OpenAPI) file. Documenting an API (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api.html), DocumentationPart (), DocumentationVersions ()

type CreateDomainNameInput

type CreateDomainNameInput struct {
	Template         *bool
	Title            *string
	Name             *string
	TemplateSkipList []*string
	// [Deprecated] Your edge-optimized endpoint's domain name certificate's private
	// key.
	CertificatePrivateKey *string
	// [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.
	CertificateChain *string
	// The user-friendly name of the certificate that will be used by regional endpoint
	// for this domain name.
	RegionalCertificateName *string
	// 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 aws:. The tag value
	// can be up to 256 characters.
	Tags map[string]*string
	// [Deprecated] The body of the server certificate that will be used by
	// edge-optimized endpoint for this domain name provided by your certificate
	// authority.
	CertificateBody *string
	// The user-friendly name of the certificate that will be used by edge-optimized
	// endpoint for this domain name.
	CertificateName *string
	// [Required] The name of the DomainName () resource.
	DomainName *string
	// The endpoint configuration of this DomainName () showing the endpoint types of
	// the domain name.
	EndpointConfiguration *types.EndpointConfiguration
	// The Transport Layer Security (TLS) version + cipher suite for this DomainName
	// (). The valid values are TLS_1_0 and TLS_1_2.
	SecurityPolicy types.SecurityPolicy
	// 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.
	CertificateArn *string
	// 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.
	RegionalCertificateArn *string
}

A request to create a new domain name.

type CreateDomainNameOutput

type CreateDomainNameOutput struct {
	// The domain name associated with the regional endpoint for this custom domain
	// name. You set up this association by adding a DNS record that points the custom
	// domain name to this regional domain name. The regional domain name is returned
	// by API Gateway when you create a regional endpoint.
	RegionalDomainName *string
	// The name of the certificate that will be used by edge-optimized endpoint for
	// this domain name.
	CertificateName *string
	// The region-agnostic Amazon Route 53 Hosted Zone ID of the edge-optimized
	// endpoint. The valid value is Z2FDTNDATAQYW2 for all the regions. For more
	// information, see Set up a Regional Custom Domain Name
	// (https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-regional-api-custom-domain-create.html)
	// and AWS Regions and Endpoints for API Gateway
	// (https://docs.aws.amazon.com/general/latest/gr/rande.html#apigateway_region).
	DistributionHostedZoneId *string
	// The custom domain name as an API host name, for example, my-api.example.com.
	DomainName *string
	// The Transport Layer Security (TLS) version + cipher suite for this DomainName
	// (). The valid values are TLS_1_0 and TLS_1_2.
	SecurityPolicy types.SecurityPolicy
	// An optional text message containing detailed information about status of the
	// DomainName () migration.
	DomainNameStatusMessage *string
	// The reference to an AWS-managed certificate that will be used for validating the
	// regional domain name. AWS Certificate Manager is the only supported source.
	RegionalCertificateArn *string
	// 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.
	CertificateArn *string
	// The timestamp when the certificate that was used by edge-optimized endpoint for
	// this domain name was uploaded.
	CertificateUploadDate *time.Time
	// The name of the certificate that will be used for validating the regional domain
	// name.
	RegionalCertificateName *string
	// The endpoint configuration of this DomainName () showing the endpoint types of
	// the domain name.
	EndpointConfiguration *types.EndpointConfiguration
	// The region-specific Amazon Route 53 Hosted Zone ID of the regional endpoint. For
	// more information, see Set up a Regional Custom Domain Name
	// (https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-regional-api-custom-domain-create.html)
	// and AWS Regions and Endpoints for API Gateway
	// (https://docs.aws.amazon.com/general/latest/gr/rande.html#apigateway_region).
	RegionalHostedZoneId *string
	// The domain name of the Amazon CloudFront distribution associated with this
	// custom domain name for an edge-optimized endpoint. You set up this association
	// when adding a DNS record pointing the custom domain name to this distribution
	// name. For more information about CloudFront distributions, see the Amazon
	// CloudFront documentation (https://aws.amazon.com/documentation/cloudfront/).
	DistributionDomainName *string
	// The collection of tags. Each tag element is associated with a given resource.
	Tags map[string]*string
	// The status of the DomainName () migration. The valid values are AVAILABLE and
	// UPDATING. If the status is UPDATING, the domain cannot be modified further until
	// the existing operation is complete. If it is AVAILABLE, the domain can be
	// updated.
	DomainNameStatus types.DomainNameStatus

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents a custom domain name as a user-friendly host name of an API (RestApi ()). When you deploy an API, API Gateway creates a default host name for the API. This default API host name is of the {restapi-id}.execute-api.{region}.amazonaws.com format. With the default host name, you can access the API's root resource with the URL of https://{restapi-id}.execute-api.{region}.amazonaws.com/{stage}/. When you set up a custom domain name of apis.example.com for this API, you can then access the same resource using the URL of the https://apis.examples.com/myApi, where myApi is the base path mapping (BasePathMapping ()) of your API under the custom domain name. Set a Custom Host Name for an API (https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-custom-domains.html)

type CreateModelInput

type CreateModelInput struct {
	// [Required] The RestApi () identifier under which the Model () will be created.
	RestApiId *string
	// [Required] The name of the model. Must be alphanumeric.
	Name             *string
	TemplateSkipList []*string
	Title            *string
	Template         *bool
	// [Required] The content-type for the model.
	ContentType *string
	// The schema for the model. For application/json models, this should be JSON
	// schema draft 4 (https://tools.ietf.org/html/draft-zyp-json-schema-04) model.
	Schema *string
	// The description of the model.
	Description *string
}

Request to add a new Model () to an existing RestApi () resource.

type CreateModelOutput

type CreateModelOutput struct {
	// The identifier for the model resource.
	Id *string
	// The name of the model. Must be an alphanumeric string.
	Name *string
	// The content-type for the model.
	ContentType *string
	// The description of the model.
	Description *string
	// The schema for the model. For application/json models, this should be JSON
	// schema draft 4 (https://tools.ietf.org/html/draft-zyp-json-schema-04) model. Do
	// not include "\*/" characters in the description of any properties because such
	// "\*/" characters may be interpreted as the closing marker for comments in some
	// languages, such as Java or JavaScript, causing the installation of your API's
	// SDK generated by API Gateway to fail.
	Schema *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents the data structure of a method's request or response payload. A request model defines the data structure of the client-supplied request payload. A response model defines the data structure of the response payload returned by the back end. Although not required, models are useful for mapping payloads between the front end and back end. A model is used for generating an API's SDK, validating the input request body, and creating a skeletal mapping template. Method (), MethodResponse (), Models and Mappings (https://docs.aws.amazon.com/apigateway/latest/developerguide/models-mappings.html)

type CreateRequestValidatorInput

type CreateRequestValidatorInput struct {
	Template *bool
	Title    *string
	// [Required] The string identifier of the associated RestApi ().
	RestApiId        *string
	TemplateSkipList []*string
	// The name of the to-be-created RequestValidator ().
	Name *string
	// A Boolean flag to indicate whether to validate request body according to the
	// configured model schema for the method (true) or not (false).
	ValidateRequestBody *bool
	// A Boolean flag to indicate whether to validate request parameters, true, or not
	// false.
	ValidateRequestParameters *bool
}

Creates a RequestValidator () of a given RestApi ().

type CreateRequestValidatorOutput

type CreateRequestValidatorOutput struct {
	// The identifier of this RequestValidator ().
	Id *string
	// A Boolean flag to indicate whether to validate a request body according to the
	// configured Model () schema.
	ValidateRequestBody *bool
	// A Boolean flag to indicate whether to validate request parameters (true) or not
	// (false).
	ValidateRequestParameters *bool
	// The name of this RequestValidator ()
	Name *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

A set of validation rules for incoming Method () requests. In OpenAPI, a RequestValidator () of an API is defined by the x-amazon-apigateway-request-validators.requestValidator (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions.html#api-gateway-swagger-extensions-request-validators.requestValidator.html) object. It the referenced using the x-amazon-apigateway-request-validator (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions.html#api-gateway-swagger-extensions-request-validator) property. Enable Basic Request Validation in API Gateway (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-method-request-validation.html)

type CreateResourceInput

type CreateResourceInput struct {
	Template *bool
	// [Required] The parent resource's identifier.
	ParentId *string
	Name     *string
	Title    *string
	// [Required] The string identifier of the associated RestApi ().
	RestApiId        *string
	TemplateSkipList []*string
	// The last path segment for this resource.
	PathPart *string
}

Requests API Gateway to create a Resource () resource.

type CreateResourceOutput

type CreateResourceOutput struct {
	// The resource's identifier.
	Id *string
	// Gets an API resource's method of a given HTTP verb. The resource methods are a
	// map of methods indexed by methods' HTTP verbs enabled on the resource. This
	// method map is included in the 200 OK response of the GET
	// /restapis/{restapi_id}/resources/{resource_id} or GET
	// /restapis/{restapi_id}/resources/{resource_id}?embed=methods request.
	// Example:
	// Get the GET method of an API resource
	//
	// Request
	//
	//     GET
	// /restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET HTTP/1.1 Content-Type:
	// application/json Host: apigateway.us-east-1.amazonaws.com X-Amz-Date:
	// 20170223T031827Z Authorization: AWS4-HMAC-SHA256
	// Credential={access_key_ID}/20170223/us-east-1/apigateway/aws4_request,
	// SignedHeaders=content-type;host;x-amz-date, Signature={sig4_hash}
	//
	// Response
	//
	// {
	// "_links": { "curies": [ { "href":
	// "https://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-integration-{rel}.html",
	// "name": "integration", "templated": true }, { "href":
	// "https://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-integration-response-{rel}.html",
	// "name": "integrationresponse", "templated": true }, { "href":
	// "https://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-method-{rel}.html",
	// "name": "method", "templated": true }, { "href":
	// "https://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-method-response-{rel}.html",
	// "name": "methodresponse", "templated": true } ], "self": { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET", "name": "GET", "title":
	// "GET" }, "integration:put": { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration" },
	// "method:delete": { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET" }, "method:integration":
	// { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration" },
	// "method:responses": { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200", "name":
	// "200", "title": "200" }, "method:update": { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET" }, "methodresponse:put":
	// { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/{status_code}",
	// "templated": true } }, "apiKeyRequired": false, "authorizationType": "NONE",
	// "httpMethod": "GET", "_embedded": { "method:integration": { "_links": { "self":
	// { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration" },
	// "integration:delete": { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration" },
	// "integration:responses": { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200",
	// "name": "200", "title": "200" }, "integration:update": { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration" },
	// "integrationresponse:put": { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/{status_code}",
	// "templated": true } }, "cacheKeyParameters": [], "cacheNamespace": "3kzxbg5sa2",
	// "credentials": "arn:aws:iam::123456789012:role/apigAwsProxyRole", "httpMethod":
	// "POST", "passthroughBehavior": "WHEN_NO_MATCH", "requestParameters": {
	// "integration.request.header.Content-Type": "'application/x-amz-json-1.1'" },
	// "requestTemplates": { "application/json": "{\n}" }, "type": "AWS", "uri":
	// "arn:aws:apigateway:us-east-1:kinesis:action/ListStreams", "_embedded": {
	// "integration:responses": { "_links": { "self": { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200",
	// "name": "200", "title": "200" }, "integrationresponse:delete": { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200"
	// }, "integrationresponse:update": { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200"
	// } }, "responseParameters": { "method.response.header.Content-Type":
	// "'application/xml'" }, "responseTemplates": { "application/json":
	// "$util.urlDecode(\"%3CkinesisStreams%3E#foreach($stream in
	// $input.path('$.StreamNames'))%3Cstream%3E%3Cname%3E$stream%3C/name%3E%3C/stream%3E#end%3C/kinesisStreams%3E\")\n"
	// }, "statusCode": "200" } } }, "method:responses": { "_links": { "self": {
	// "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200",
	// "name": "200", "title": "200" }, "methodresponse:delete": { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200" },
	// "methodresponse:update": { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200" } },
	// "responseModels": { "application/json": "Empty" }, "responseParameters": {
	// "method.response.header.Content-Type": false }, "statusCode": "200" } } } If the
	// OPTIONS is enabled on the resource, you can follow the example here to get that
	// method. Just replace the GET of the last path segment in the request URL with
	// OPTIONS.
	ResourceMethods map[string]*types.Method
	// The parent resource's identifier.
	ParentId *string
	// The full path for this resource.
	Path *string
	// The last path segment for this resource.
	PathPart *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents an API resource. Create an API (https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-create-api.html)

type CreateRestApiInput

type CreateRestApiInput struct {
	TemplateSkipList []*string
	// [Required] The name of the RestApi ().
	Name     *string
	Title    *string
	Template *bool
	// A version identifier for the API.
	Version *string
	// The list of binary media types supported by the RestApi (). By default, the
	// RestApi () supports only UTF-8-encoded text payloads.
	BinaryMediaTypes []*string
	// The source of the API key for metering requests according to a usage plan. Valid
	// values are:
	//
	//     * HEADER to read the API key from the X-API-Key header of a
	// request.
	//
	//     * AUTHORIZER to read the API key from the UsageIdentifierKey from
	// a custom authorizer.
	ApiKeySource types.ApiKeySourceType
	// The ID of the RestApi () that you want to clone from.
	CloneFrom *string
	// The endpoint configuration of this RestApi () showing the endpoint types of the
	// API.
	EndpointConfiguration *types.EndpointConfiguration
	// A nullable integer that is used to enable compression (with non-negative between
	// 0 and 10485760 (10M) bytes, inclusive) or disable compression (with a null
	// value) on an API. When compression is enabled, compression or decompression is
	// not applied on the payload if the payload size is smaller than this value.
	// Setting it to zero allows compression for any payload size.
	MinimumCompressionSize *int32
	// The description of the RestApi ().
	Description *string
	// A stringified JSON policy document that applies to this RestApi regardless of
	// the caller and Method () configuration.
	Policy *string
	// 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 aws:. The tag value
	// can be up to 256 characters.
	Tags map[string]*string
}

The POST Request to add a new RestApi () resource to your collection.

type CreateRestApiOutput

type CreateRestApiOutput struct {
	// The API's description.
	Description *string
	// A stringified JSON policy document that applies to this RestApi regardless of
	// the caller and Method () configuration.
	Policy *string
	// The endpoint configuration of this RestApi () showing the endpoint types of the
	// API.
	EndpointConfiguration *types.EndpointConfiguration
	// The source of the API key for metering requests according to a usage plan. Valid
	// values are:
	//
	//     * HEADER to read the API key from the X-API-Key header of a
	// request.
	//
	//     * AUTHORIZER to read the API key from the UsageIdentifierKey from
	// a custom authorizer.
	ApiKeySource types.ApiKeySourceType
	// The API's name.
	Name *string
	// A version identifier for the API.
	Version *string
	// The collection of tags. Each tag element is associated with a given resource.
	Tags map[string]*string
	// The warning messages reported when failonwarnings is turned on during API
	// import.
	Warnings []*string
	// The timestamp when the API was created.
	CreatedDate *time.Time
	// The API's identifier. This identifier is unique across all of your APIs in API
	// Gateway.
	Id *string
	// The list of binary media types supported by the RestApi (). By default, the
	// RestApi () supports only UTF-8-encoded text payloads.
	BinaryMediaTypes []*string
	// A nullable integer that is used to enable compression (with non-negative between
	// 0 and 10485760 (10M) bytes, inclusive) or disable compression (with a null
	// value) on an API. When compression is enabled, compression or decompression is
	// not applied on the payload if the payload size is smaller than this value.
	// Setting it to zero allows compression for any payload size.
	MinimumCompressionSize *int32

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents a REST API. Create an API (https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-create-api.html)

type CreateStageInput

type CreateStageInput struct {
	Template         *bool
	Title            *string
	Name             *string
	TemplateSkipList []*string
	// [Required] The string identifier of the associated RestApi ().
	RestApiId *string
	// Specifies whether active tracing with X-ray is enabled for the Stage ().
	TracingEnabled *bool
	// The stage's cache cluster size.
	CacheClusterSize types.CacheClusterSize
	// The canary deployment settings of this stage.
	CanarySettings *types.CanarySettings
	// Whether cache clustering is enabled for the stage.
	CacheClusterEnabled *bool
	// A map that defines the stage variables for the new Stage () resource. Variable
	// names can have alphanumeric and underscore characters, and the values must match
	// [A-Za-z0-9-._~:/?#&=,]+.
	Variables map[string]*string
	// 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 aws:. The tag value
	// can be up to 256 characters.
	Tags map[string]*string
	// The description of the Stage () resource.
	Description *string
	// [Required] The name for the Stage () resource. Stage names can only contain
	// alphanumeric characters, hyphens, and underscores. Maximum length is 128
	// characters.
	StageName *string
	// [Required] The identifier of the Deployment () resource for the Stage ()
	// resource.
	DeploymentId *string
	// The version of the associated API documentation.
	DocumentationVersion *string
}

Requests API Gateway to create a Stage () resource.

type CreateStageOutput

type CreateStageOutput struct {
	// The identifier of the Deployment () that the stage points to.
	DeploymentId *string
	// The stage's description.
	Description *string
	// The name of the stage is the first path segment in the Uniform Resource
	// Identifier (URI) of a call to API Gateway. Stage names can only contain
	// alphanumeric characters, hyphens, and underscores. Maximum length is 128
	// characters.
	StageName *string
	// The collection of tags. Each tag element is associated with a given resource.
	Tags map[string]*string
	// The status of the cache cluster for the stage, if enabled.
	CacheClusterStatus types.CacheClusterStatus
	// The identifier of a client certificate for an API stage.
	ClientCertificateId *string
	// Specifies whether a cache cluster is enabled for the stage.
	CacheClusterEnabled *bool
	// Settings for the canary deployment in this stage.
	CanarySettings *types.CanarySettings
	// A map that defines the stage variables for a Stage () resource. Variable names
	// can have alphanumeric and underscore characters, and the values must match
	// [A-Za-z0-9-._~:/?#&=,]+.
	Variables map[string]*string
	// The size of the cache cluster for the stage, if enabled.
	CacheClusterSize types.CacheClusterSize
	// Settings for logging access in this stage.
	AccessLogSettings *types.AccessLogSettings
	// The version of the associated API documentation.
	DocumentationVersion *string
	// The timestamp when the stage last updated.
	LastUpdatedDate *time.Time
	// The timestamp when the stage was created.
	CreatedDate *time.Time
	// Specifies whether active tracing with X-ray is enabled for the Stage ().
	TracingEnabled *bool
	// The ARN of the WebAcl associated with the Stage ().
	WebAclArn *string
	// A map that defines the method settings for a Stage () resource. Keys (designated
	// as /{method_setting_key below) are method paths defined as
	// {resource_path}/{http_method} for an individual method override, or /\*/\* for
	// overriding all methods in the stage.
	MethodSettings map[string]*types.MethodSetting

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents a unique identifier for a version of a deployed RestApi () that is callable by users. Deploy an API (https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-deploy-api.html)

type CreateUsagePlanInput

type CreateUsagePlanInput struct {
	// [Required] The name of the usage plan.
	Name             *string
	Title            *string
	Template         *bool
	TemplateSkipList []*string
	// The throttling limits of the usage plan.
	Throttle *types.ThrottleSettings
	// 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 aws:. The tag value
	// can be up to 256 characters.
	Tags map[string]*string
	// The associated API stages of the usage plan.
	ApiStages []*types.ApiStage
	// The description of the usage plan.
	Description *string
	// The quota of the usage plan.
	Quota *types.QuotaSettings
}

The POST request to create a usage plan with the name, description, throttle limits and quota limits, as well as the associated API stages, specified in the payload.

type CreateUsagePlanKeyInput

type CreateUsagePlanKeyInput struct {
	Template         *bool
	Name             *string
	TemplateSkipList []*string
	Title            *string
	// [Required] The Id of the UsagePlan () resource representing the usage plan
	// containing the to-be-created UsagePlanKey () resource representing a plan
	// customer.
	UsagePlanId *string
	// [Required] The type of a UsagePlanKey () resource for a plan customer.
	KeyType *string
	// [Required] The identifier of a UsagePlanKey () resource for a plan customer.
	KeyId *string
}

The POST request to create a usage plan key for adding an existing API key to a usage plan.

type CreateUsagePlanKeyOutput

type CreateUsagePlanKeyOutput struct {
	// The name of a usage plan key.
	Name *string
	// The value of a usage plan key.
	Value *string
	// The Id of a usage plan key.
	Id *string
	// The type of a usage plan key. Currently, the valid key type is API_KEY.
	Type *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents a usage plan key to identify a plan customer. To associate an API stage with a selected API key in a usage plan, you must create a UsagePlanKey resource to represent the selected ApiKey (). " Create and Use Usage Plans (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-api-usage-plans.html)

type CreateUsagePlanOutput

type CreateUsagePlanOutput struct {
	// The identifier of a UsagePlan () resource.
	Id *string
	// The request throttle limits of a usage plan.
	Throttle *types.ThrottleSettings
	// The name of a usage plan.
	Name *string
	// The associated API stages of a usage plan.
	ApiStages []*types.ApiStage
	// The AWS Markeplace product identifier to associate with the usage plan as a SaaS
	// product on AWS Marketplace.
	ProductCode *string
	// The maximum number of permitted requests per a given unit time interval.
	Quota *types.QuotaSettings
	// The collection of tags. Each tag element is associated with a given resource.
	Tags map[string]*string
	// The description of a usage plan.
	Description *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents a usage plan than can specify who can assess associated API stages with specified request limits and quotas. In a usage plan, you associate an API by specifying the API's Id and a stage name of the specified API. You add plan customers by adding API keys to the plan. Create and Use Usage Plans (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-api-usage-plans.html)

type CreateVpcLinkInput

type CreateVpcLinkInput struct {
	// [Required] The name used to label and identify the VPC link.
	Name             *string
	Template         *bool
	Title            *string
	TemplateSkipList []*string
	// [Required] The ARN of the network load balancer of the VPC targeted by the VPC
	// link. The network load balancer must be owned by the same AWS account of the API
	// owner.
	TargetArns []*string
	// The description of the VPC link.
	Description *string
	// 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 aws:. The tag value
	// can be up to 256 characters.
	Tags map[string]*string
}

Creates a VPC link, under the caller's account in a selected region, in an asynchronous operation that typically takes 2-4 minutes to complete and become operational. The caller must have permissions to create and update VPC Endpoint services.

type CreateVpcLinkOutput

type CreateVpcLinkOutput struct {
	// The identifier of the VpcLink (). It is used in an Integration () to reference
	// this VpcLink ().
	Id *string
	// The name used to label and identify the VPC link.
	Name *string
	// The description of the VPC link.
	Description *string
	// A description about the VPC link status.
	StatusMessage *string
	// The ARN of the network load balancer of the VPC targeted by the VPC link. The
	// network load balancer must be owned by the same AWS account of the API owner.
	TargetArns []*string
	// The status of the VPC link. The valid values are AVAILABLE, PENDING, DELETING,
	// or FAILED. Deploying an API will wait if the status is PENDING and will fail if
	// the status is DELETING.
	Status types.VpcLinkStatus
	// The collection of tags. Each tag element is associated with a given resource.
	Tags map[string]*string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

An API Gateway VPC link for a RestApi () to access resources in an Amazon Virtual Private Cloud (VPC). To enable access to a resource in an Amazon Virtual Private Cloud through Amazon API Gateway, you, as an API developer, create a VpcLink () resource targeted for one or more network load balancers of the VPC and then integrate an API method with a private integration that uses the VpcLink (). The private integration has an integration type of HTTP or HTTP_PROXY and has a connection type of VPC_LINK. The integration uses the connectionId property to identify the VpcLink () used.

type DeleteApiKeyInput

type DeleteApiKeyInput struct {
	Name             *string
	TemplateSkipList []*string
	// [Required] The identifier of the ApiKey () resource to be deleted.
	ApiKey   *string
	Title    *string
	Template *bool
}

A request to delete the ApiKey () resource.

type DeleteApiKeyOutput

type DeleteApiKeyOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type DeleteAuthorizerInput

type DeleteAuthorizerInput struct {
	Template *bool
	// [Required] The identifier of the Authorizer () resource.
	AuthorizerId *string
	Name         *string
	// [Required] The string identifier of the associated RestApi ().
	RestApiId        *string
	TemplateSkipList []*string
	Title            *string
}

Request to delete an existing Authorizer () resource.

type DeleteAuthorizerOutput

type DeleteAuthorizerOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type DeleteBasePathMappingInput

type DeleteBasePathMappingInput struct {
	Name *string
	// [Required] The domain name of the BasePathMapping () resource to delete.
	DomainName       *string
	TemplateSkipList []*string
	Title            *string
	// [Required] The base path name of the BasePathMapping () resource to delete. To
	// specify an empty base path, set this parameter to '(none)'.
	BasePath *string
	Template *bool
}

A request to delete the BasePathMapping () resource.

type DeleteBasePathMappingOutput

type DeleteBasePathMappingOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type DeleteClientCertificateInput

type DeleteClientCertificateInput struct {
	Template *bool
	Name     *string
	// [Required] The identifier of the ClientCertificate () resource to be deleted.
	ClientCertificateId *string
	TemplateSkipList    []*string
	Title               *string
}

A request to delete the ClientCertificate () resource.

type DeleteClientCertificateOutput

type DeleteClientCertificateOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type DeleteDeploymentInput

type DeleteDeploymentInput struct {
	TemplateSkipList []*string
	Title            *string
	Name             *string
	// [Required] The identifier of the Deployment () resource to delete.
	DeploymentId *string
	// [Required] The string identifier of the associated RestApi ().
	RestApiId *string
	Template  *bool
}

Requests API Gateway to delete a Deployment () resource.

type DeleteDeploymentOutput

type DeleteDeploymentOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type DeleteDocumentationPartInput

type DeleteDocumentationPartInput struct {
	// [Required] The string identifier of the associated RestApi ().
	RestApiId        *string
	Template         *bool
	TemplateSkipList []*string
	Title            *string
	Name             *string
	// [Required] The identifier of the to-be-deleted documentation part.
	DocumentationPartId *string
}

Deletes an existing documentation part of an API.

type DeleteDocumentationPartOutput

type DeleteDocumentationPartOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type DeleteDocumentationVersionInput

type DeleteDocumentationVersionInput struct {
	Title            *string
	TemplateSkipList []*string
	// [Required] The version identifier of a to-be-deleted documentation snapshot.
	DocumentationVersion *string
	// [Required] The string identifier of the associated RestApi ().
	RestApiId *string
	Template  *bool
	Name      *string
}

Deletes an existing documentation version of an API.

type DeleteDocumentationVersionOutput

type DeleteDocumentationVersionOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type DeleteDomainNameInput

type DeleteDomainNameInput struct {
	Template         *bool
	Title            *string
	Name             *string
	TemplateSkipList []*string
	// [Required] The name of the DomainName () resource to be deleted.
	DomainName *string
}

A request to delete the DomainName () resource.

type DeleteDomainNameOutput

type DeleteDomainNameOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type DeleteGatewayResponseInput

type DeleteGatewayResponseInput struct {
	// [Required] The string identifier of the associated RestApi ().
	RestApiId *string
	Template  *bool
	// [Required] The response type of the associated GatewayResponse (). Valid values
	// are
	//
	//     * ACCESS_DENIED
	//
	//     * API_CONFIGURATION_ERROR
	//
	//     *
	// AUTHORIZER_FAILURE
	//
	//     * AUTHORIZER_CONFIGURATION_ERROR
	//
	//     *
	// BAD_REQUEST_PARAMETERS
	//
	//     * BAD_REQUEST_BODY
	//
	//     * DEFAULT_4XX
	//
	//     *
	// DEFAULT_5XX
	//
	//     * EXPIRED_TOKEN
	//
	//     * INVALID_SIGNATURE
	//
	//     *
	// INTEGRATION_FAILURE
	//
	//     * INTEGRATION_TIMEOUT
	//
	//     * INVALID_API_KEY
	//
	//     *
	// MISSING_AUTHENTICATION_TOKEN
	//
	//     * QUOTA_EXCEEDED
	//
	//     * REQUEST_TOO_LARGE
	//
	//
	// * RESOURCE_NOT_FOUND
	//
	//     * THROTTLED
	//
	//     * UNAUTHORIZED
	//
	//     *
	// UNSUPPORTED_MEDIA_TYPE
	ResponseType     types.GatewayResponseType
	TemplateSkipList []*string
	Title            *string
	Name             *string
}

Clears any customization of a GatewayResponse () of a specified response type on the given RestApi () and resets it with the default settings.

type DeleteGatewayResponseOutput

type DeleteGatewayResponseOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type DeleteIntegrationInput

type DeleteIntegrationInput struct {
	TemplateSkipList []*string
	Title            *string
	// [Required] Specifies a delete integration request's HTTP method.
	HttpMethod *string
	// [Required] The string identifier of the associated RestApi ().
	RestApiId *string
	// [Required] Specifies a delete integration request's resource identifier.
	ResourceId *string
	Template   *bool
	Name       *string
}

Represents a delete integration request.

type DeleteIntegrationOutput

type DeleteIntegrationOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type DeleteIntegrationResponseInput

type DeleteIntegrationResponseInput struct {
	Template *bool
	// [Required] Specifies a delete integration response request's resource
	// identifier.
	ResourceId *string
	Title      *string
	// [Required] Specifies a delete integration response request's HTTP method.
	HttpMethod *string
	// [Required] Specifies a delete integration response request's status code.
	StatusCode       *string
	Name             *string
	TemplateSkipList []*string
	// [Required] The string identifier of the associated RestApi ().
	RestApiId *string
}

Represents a delete integration response request.

type DeleteIntegrationResponseOutput

type DeleteIntegrationResponseOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type DeleteMethodInput

type DeleteMethodInput struct {
	Name *string
	// [Required] The string identifier of the associated RestApi ().
	RestApiId        *string
	TemplateSkipList []*string
	// [Required] The HTTP verb of the Method () resource.
	HttpMethod *string
	Title      *string
	Template   *bool
	// [Required] The Resource () identifier for the Method () resource.
	ResourceId *string
}

Request to delete an existing Method () resource.

type DeleteMethodOutput

type DeleteMethodOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type DeleteMethodResponseInput

type DeleteMethodResponseInput struct {
	Title *string
	// [Required] The HTTP verb of the Method () resource.
	HttpMethod *string
	// [Required] The status code identifier for the MethodResponse () resource.
	StatusCode *string
	// [Required] The Resource () identifier for the MethodResponse () resource.
	ResourceId *string
	Template   *bool
	// [Required] The string identifier of the associated RestApi ().
	RestApiId        *string
	Name             *string
	TemplateSkipList []*string
}

A request to delete an existing MethodResponse () resource.

type DeleteMethodResponseOutput

type DeleteMethodResponseOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type DeleteModelInput

type DeleteModelInput struct {
	// [Required] The string identifier of the associated RestApi ().
	RestApiId *string
	// [Required] The name of the model to delete.
	ModelName        *string
	TemplateSkipList []*string
	Title            *string
	Name             *string
	Template         *bool
}

Request to delete an existing model in an existing RestApi () resource.

type DeleteModelOutput

type DeleteModelOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type DeleteRequestValidatorInput

type DeleteRequestValidatorInput struct {
	TemplateSkipList []*string
	Template         *bool
	// [Required] The string identifier of the associated RestApi ().
	RestApiId *string
	Title     *string
	Name      *string
	// [Required] The identifier of the RequestValidator () to be deleted.
	RequestValidatorId *string
}

Deletes a specified RequestValidator () of a given RestApi ().

type DeleteRequestValidatorOutput

type DeleteRequestValidatorOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type DeleteResourceInput

type DeleteResourceInput struct {
	Title            *string
	TemplateSkipList []*string
	// [Required] The string identifier of the associated RestApi ().
	RestApiId *string
	Name      *string
	Template  *bool
	// [Required] The identifier of the Resource () resource.
	ResourceId *string
}

Request to delete a Resource ().

type DeleteResourceOutput

type DeleteResourceOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type DeleteRestApiInput

type DeleteRestApiInput struct {
	// [Required] The string identifier of the associated RestApi ().
	RestApiId        *string
	Template         *bool
	Title            *string
	TemplateSkipList []*string
	Name             *string
}

Request to delete the specified API from your collection.

type DeleteRestApiOutput

type DeleteRestApiOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type DeleteStageInput

type DeleteStageInput struct {
	TemplateSkipList []*string
	Title            *string
	// [Required] The name of the Stage () resource to delete.
	StageName *string
	Name      *string
	// [Required] The string identifier of the associated RestApi ().
	RestApiId *string
	Template  *bool
}

Requests API Gateway to delete a Stage () resource.

type DeleteStageOutput

type DeleteStageOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type DeleteUsagePlanInput

type DeleteUsagePlanInput struct {
	Name *string
	// [Required] The Id of the to-be-deleted usage plan.
	UsagePlanId      *string
	Template         *bool
	TemplateSkipList []*string
	Title            *string
}

The DELETE request to delete a usage plan of a given plan Id.

type DeleteUsagePlanKeyInput

type DeleteUsagePlanKeyInput struct {
	// [Required] The Id of the UsagePlanKey () resource to be deleted.
	KeyId            *string
	Name             *string
	Title            *string
	TemplateSkipList []*string
	// [Required] The Id of the UsagePlan () resource representing the usage plan
	// containing the to-be-deleted UsagePlanKey () resource representing a plan
	// customer.
	UsagePlanId *string
	Template    *bool
}

The DELETE request to delete a usage plan key and remove the underlying API key from the associated usage plan.

type DeleteUsagePlanKeyOutput

type DeleteUsagePlanKeyOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type DeleteUsagePlanOutput

type DeleteUsagePlanOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type DeleteVpcLinkInput

type DeleteVpcLinkInput struct {
	Title            *string
	Template         *bool
	TemplateSkipList []*string
	Name             *string
	// [Required] The identifier of the VpcLink (). It is used in an Integration () to
	// reference this VpcLink ().
	VpcLinkId *string
}

Deletes an existing VpcLink () of a specified identifier.

type DeleteVpcLinkOutput

type DeleteVpcLinkOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type EndpointResolver

type EndpointResolver interface {
	ResolveEndpoint(region string, options ResolverOptions) (aws.Endpoint, error)
}

EndpointResolver interface for resolving service endpoints.

func WithEndpointResolver

func WithEndpointResolver(awsResolver aws.EndpointResolver, fallbackResolver EndpointResolver) EndpointResolver

WithEndpointResolver returns an EndpointResolver that first delegates endpoint resolution to the awsResolver. If awsResolver returns aws.EndpointNotFoundError error, the resolver will use the the provided fallbackResolver for resolution. awsResolver and fallbackResolver must not be nil

type EndpointResolverFunc

type EndpointResolverFunc func(region string, options ResolverOptions) (aws.Endpoint, error)

EndpointResolverFunc is a helper utility that wraps a function so it satisfies the EndpointResolver interface. This is useful when you want to add additional endpoint resolving logic, or stub out specific endpoints with custom values.

func (EndpointResolverFunc) ResolveEndpoint

func (fn EndpointResolverFunc) ResolveEndpoint(region string, options ResolverOptions) (endpoint aws.Endpoint, err error)

type FlushStageAuthorizersCacheInput

type FlushStageAuthorizersCacheInput struct {
	Template *bool
	// The name of the stage to flush.
	StageName *string
	Title     *string
	Name      *string
	// The string identifier of the associated RestApi ().
	RestApiId        *string
	TemplateSkipList []*string
}

Request to flush authorizer cache entries on a specified stage.

type FlushStageAuthorizersCacheOutput

type FlushStageAuthorizersCacheOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type FlushStageCacheInput

type FlushStageCacheInput struct {
	// [Required] The name of the stage to flush its cache.
	StageName        *string
	Name             *string
	Title            *string
	TemplateSkipList []*string
	Template         *bool
	// [Required] The string identifier of the associated RestApi ().
	RestApiId *string
}

Requests API Gateway to flush a stage's cache.

type FlushStageCacheOutput

type FlushStageCacheOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type GenerateClientCertificateInput

type GenerateClientCertificateInput struct {
	Template         *bool
	Title            *string
	TemplateSkipList []*string
	Name             *string
	// The description of the ClientCertificate ().
	Description *string
	// 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 aws:. The tag value
	// can be up to 256 characters.
	Tags map[string]*string
}

A request to generate a ClientCertificate () resource.

type GenerateClientCertificateOutput

type GenerateClientCertificateOutput struct {
	// The timestamp when the client certificate was created.
	CreatedDate *time.Time
	// The PEM-encoded public key of the client certificate, which can be used to
	// configure certificate authentication in the integration endpoint .
	PemEncodedCertificate *string
	// The collection of tags. Each tag element is associated with a given resource.
	Tags map[string]*string
	// The timestamp when the client certificate will expire.
	ExpirationDate *time.Time
	// The description of the client certificate.
	Description *string
	// The identifier of the client certificate.
	ClientCertificateId *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents a client certificate used to configure client-side SSL authentication while sending requests to the integration endpoint. Client certificates are used to authenticate an API by the backend server. To authenticate an API client (or user), use IAM roles and policies, a custom Authorizer () or an Amazon Cognito user pool. Use Client-Side Certificate (https://docs.aws.amazon.com/apigateway/latest/developerguide/getting-started-client-side-ssl-authentication.html)

type GetAccountInput

type GetAccountInput struct {
	Name             *string
	Title            *string
	TemplateSkipList []*string
	Template         *bool
}

Requests API Gateway to get information about the current Account () resource.

type GetAccountOutput

type GetAccountOutput struct {
	// A list of features supported for the account. When usage plans are enabled, the
	// features list will include an entry of "UsagePlans".
	Features []*string
	// The version of the API keys used for the account.
	ApiKeyVersion *string
	// Specifies the API request limits configured for the current Account ().
	ThrottleSettings *types.ThrottleSettings
	// The ARN of an Amazon CloudWatch role for the current Account ().
	CloudwatchRoleArn *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents an AWS account that is associated with API Gateway. To view the account info, call GET on this resource. Error Codes

The following exception may be thrown when the request fails.

  • UnauthorizedException

    *

NotFoundException

  • TooManyRequestsException

For detailed error code information, including the corresponding HTTP Status Codes, see API Gateway Error Codes (https://docs.aws.amazon.com/apigateway/api-reference/handling-errors/#api-error-codes) Example: Get the information about an account.

Request

GET /account HTTP/1.1

Content-Type: application/json Host: apigateway.us-east-1.amazonaws.com X-Amz-Date: 20160531T184618Z Authorization: AWS4-HMAC-SHA256 Credential={access_key_ID}/us-east-1/apigateway/aws4_request, SignedHeaders=content-type;host;x-amz-date, Signature={sig4_hash}

Response

The successful response returns a 200 OK status code and a payload similar to the following: { "_links": { "curies": { "href": "https://docs.aws.amazon.com/apigateway/latest/developerguide/account-apigateway-{rel}.html", "name": "account", "templated": true }, "self": { "href": "/account" }, "account:update": { "href": "/account" } }, "cloudwatchRoleArn": "arn:aws:iam::123456789012:role/apigAwsProxyRole", "throttleSettings": { "rateLimit": 500, "burstLimit": 1000 } } In addition to making the REST API call directly, you can use the AWS CLI and an AWS SDK to access this resource. API Gateway Limits (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-limits.html)Developer Guide (https://docs.aws.amazon.com/apigateway/latest/developerguide/welcome.html), AWS CLI (https://docs.aws.amazon.com/cli/latest/reference/apigateway/get-account.html)

type GetApiKeyInput

type GetApiKeyInput struct {
	// [Required] The identifier of the ApiKey () resource.
	ApiKey           *string
	TemplateSkipList []*string
	Title            *string
	Name             *string
	// A boolean flag to specify whether (true) or not (false) the result contains the
	// key value.
	IncludeValue *bool
	Template     *bool
}

A request to get information about the current ApiKey () resource.

type GetApiKeyOutput

type GetApiKeyOutput struct {
	// The name of the API Key.
	Name *string
	// A list of Stage () resources that are associated with the ApiKey () resource.
	StageKeys []*string
	// The timestamp when the API Key was created.
	CreatedDate *time.Time
	// The identifier of the API Key.
	Id *string
	// An AWS Marketplace customer identifier , when integrating with the AWS SaaS
	// Marketplace.
	CustomerId *string
	// The timestamp when the API Key was last updated.
	LastUpdatedDate *time.Time
	// Specifies whether the API Key can be used by callers.
	Enabled *bool
	// The collection of tags. Each tag element is associated with a given resource.
	Tags map[string]*string
	// The description of the API Key.
	Description *string
	// The value of the API Key.
	Value *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

A resource that can be distributed to callers for executing Method () resources that require an API key. API keys can be mapped to any Stage () on any RestApi (), which indicates that the callers with the API key can make requests to that stage. Use API Keys (https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-api-keys.html)

type GetApiKeysInput

type GetApiKeysInput struct {
	// The name of queried API keys.
	NameQuery *string
	// The current pagination position in the paged result set.
	Position *string
	// The identifier of a customer in AWS Marketplace or an external system, such as a
	// developer portal.
	CustomerId       *string
	TemplateSkipList []*string
	Template         *bool
	// A boolean flag to specify whether (true) or not (false) the result contains key
	// values.
	IncludeValues *bool
	Title         *string
	// The maximum number of returned results per page. The default value is 25 and the
	// maximum value is 500.
	Limit *int32
	Name  *string
}

A request to get information about the current ApiKeys () resource.

type GetApiKeysOutput

type GetApiKeysOutput struct {
	// A list of warning messages logged during the import of API keys when the
	// failOnWarnings option is set to true.
	Warnings []*string
	// The current page of elements from this collection.
	Items []*types.ApiKey
	// The current pagination position in the paged result set.
	Position *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents a collection of API keys as represented by an ApiKeys () resource. Use API Keys (https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-api-keys.html)

type GetAuthorizerInput

type GetAuthorizerInput struct {
	Title            *string
	TemplateSkipList []*string
	Template         *bool
	// [Required] The identifier of the Authorizer () resource.
	AuthorizerId *string
	// [Required] The string identifier of the associated RestApi ().
	RestApiId *string
	Name      *string
}

Request to describe an existing Authorizer () resource.

type GetAuthorizerOutput

type GetAuthorizerOutput struct {
	// [Required] The name of the authorizer.
	Name *string
	// 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.
	AuthorizerCredentials *string
	// The identity source for which authorization is requested.
	//
	//     * For a TOKEN or
	// COGNITO_USER_POOLS 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 Auth, the
	// header mapping expression is method.request.header.Auth.
	//
	//     * For the REQUEST
	// 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 Auth header, a Name query string
	// parameter are defined as identity sources, this value is
	// method.request.header.Auth, method.request.querystring.Name. These parameters
	// will be used to derive the authorization caching key and to perform runtime
	// validation of the REQUEST 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.
	IdentitySource *string
	// The authorizer type. Valid values are TOKEN for a Lambda function using a single
	// authorization token submitted in a custom header, REQUEST for a Lambda function
	// using incoming request parameters, and COGNITO_USER_POOLS for using an Amazon
	// Cognito user pool.
	Type types.AuthorizerType
	// Specifies the authorizer's Uniform Resource Identifier (URI). For TOKEN or
	// REQUEST authorizers, this must be a well-formed Lambda function URI, for
	// example,
	// 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.
	// In general, the URI has this form
	// arn:aws:apigateway:{region}:lambda:path/{service_api}, where {region} is the
	// same as the region hosting the Lambda function, path indicates that the
	// remaining substring in the URI should be treated as the path to the resource,
	// including the initial /. For Lambda functions, this is usually of the form
	// /2015-03-31/functions/[FunctionARN]/invocations.
	AuthorizerUri *string
	// A list of the Amazon Cognito user pool ARNs for the COGNITO_USER_POOLS
	// authorizer. Each element is of this format:
	// arn:aws:cognito-idp:{region}:{account_id}:userpool/{user_pool_id}. For a TOKEN
	// or REQUEST authorizer, this is not defined.
	ProviderARNs []*string
	// Optional customer-defined field, used in OpenAPI imports and exports without
	// functional impact.
	AuthType *string
	// A validation expression for the incoming identity token. For TOKEN authorizers,
	// this value is a regular expression. For COGNITO_USER_POOLS authorizers, API
	// Gateway will match the aud 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 REQUEST authorizer.
	IdentityValidationExpression *string
	// 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.
	AuthorizerResultTtlInSeconds *int32
	// The identifier for the authorizer resource.
	Id *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents an authorization layer for methods. If enabled on a method, API Gateway will activate the authorizer when a client calls the method. Use Lambda Function as Authorizer (https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-use-lambda-authorizer.html)Use Cognito User Pool as Authorizer (https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-integrate-with-cognito.html)

type GetAuthorizersInput

type GetAuthorizersInput struct {
	TemplateSkipList []*string
	Title            *string
	Template         *bool
	// The maximum number of returned results per page. The default value is 25 and the
	// maximum value is 500.
	Limit *int32
	Name  *string
	// The current pagination position in the paged result set.
	Position *string
	// [Required] The string identifier of the associated RestApi ().
	RestApiId *string
}

Request to describe an existing Authorizers () resource.

type GetAuthorizersOutput

type GetAuthorizersOutput struct {
	// The current page of elements from this collection.
	Items []*types.Authorizer
	// The current pagination position in the paged result set.
	Position *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents a collection of Authorizer () resources. Use Lambda Function as Authorizer (https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-use-lambda-authorizer.html)Use Cognito User Pool as Authorizer (https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-integrate-with-cognito.html)

type GetBasePathMappingInput

type GetBasePathMappingInput struct {
	// [Required] The domain name of the BasePathMapping () resource to be described.
	DomainName *string
	// [Required] 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 any
	// base path name after the domain name.
	BasePath         *string
	Title            *string
	Name             *string
	TemplateSkipList []*string
	Template         *bool
}

Request to describe a BasePathMapping () resource.

type GetBasePathMappingOutput

type GetBasePathMappingOutput struct {
	// The name of the associated stage.
	Stage *string
	// The base path name that callers of the API must provide as part of the URL after
	// the domain name.
	BasePath *string
	// The string identifier of the associated RestApi ().
	RestApiId *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents the base path that callers of the API must provide as part of the URL after the domain name. A custom domain name plus a BasePathMapping specification identifies a deployed RestApi () in a given stage of the owner Account (). Use Custom Domain Names (https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-custom-domains.html)

type GetBasePathMappingsInput

type GetBasePathMappingsInput struct {
	// The maximum number of returned results per page. The default value is 25 and the
	// maximum value is 500.
	Limit *int32
	Name  *string
	// [Required] The domain name of a BasePathMapping () resource.
	DomainName       *string
	Template         *bool
	Title            *string
	TemplateSkipList []*string
	// The current pagination position in the paged result set.
	Position *string
}

A request to get information about a collection of BasePathMapping () resources.

type GetBasePathMappingsOutput

type GetBasePathMappingsOutput struct {
	// The current page of elements from this collection.
	Items []*types.BasePathMapping
	// The current pagination position in the paged result set.
	Position *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents a collection of BasePathMapping () resources. Use Custom Domain Names (https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-custom-domains.html)

type GetClientCertificateInput

type GetClientCertificateInput struct {
	Name     *string
	Title    *string
	Template *bool
	// [Required] The identifier of the ClientCertificate () resource to be described.
	ClientCertificateId *string
	TemplateSkipList    []*string
}

A request to get information about the current ClientCertificate () resource.

type GetClientCertificateOutput

type GetClientCertificateOutput struct {
	// The timestamp when the client certificate was created.
	CreatedDate *time.Time
	// The PEM-encoded public key of the client certificate, which can be used to
	// configure certificate authentication in the integration endpoint .
	PemEncodedCertificate *string
	// The collection of tags. Each tag element is associated with a given resource.
	Tags map[string]*string
	// The timestamp when the client certificate will expire.
	ExpirationDate *time.Time
	// The description of the client certificate.
	Description *string
	// The identifier of the client certificate.
	ClientCertificateId *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents a client certificate used to configure client-side SSL authentication while sending requests to the integration endpoint. Client certificates are used to authenticate an API by the backend server. To authenticate an API client (or user), use IAM roles and policies, a custom Authorizer () or an Amazon Cognito user pool. Use Client-Side Certificate (https://docs.aws.amazon.com/apigateway/latest/developerguide/getting-started-client-side-ssl-authentication.html)

type GetClientCertificatesInput

type GetClientCertificatesInput struct {
	Title    *string
	Template *bool
	Name     *string
	// The maximum number of returned results per page. The default value is 25 and the
	// maximum value is 500.
	Limit *int32
	// The current pagination position in the paged result set.
	Position         *string
	TemplateSkipList []*string
}

A request to get information about a collection of ClientCertificate () resources.

type GetClientCertificatesOutput

type GetClientCertificatesOutput struct {
	// The current page of elements from this collection.
	Items []*types.ClientCertificate
	// The current pagination position in the paged result set.
	Position *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents a collection of ClientCertificate () resources. Use Client-Side Certificate (https://docs.aws.amazon.com/apigateway/latest/developerguide/getting-started-client-side-ssl-authentication.html)

type GetDeploymentInput

type GetDeploymentInput struct {
	TemplateSkipList []*string
	Title            *string
	Name             *string
	// A query parameter to retrieve the specified embedded resources of the returned
	// Deployment () resource in the response. In a REST API call, this embed parameter
	// value is a list of comma-separated strings, as in GET
	// /restapis/{restapi_id}/deployments/{deployment_id}?embed=var1,var2. The SDK and
	// other platform-dependent libraries might use a different format for the list.
	// Currently, this request supports only retrieval of the embedded API summary this
	// way. Hence, the parameter value must be a single-valued list containing only the
	// "apisummary" string. For example, GET
	// /restapis/{restapi_id}/deployments/{deployment_id}?embed=apisummary.
	Embed []*string
	// [Required] The string identifier of the associated RestApi ().
	RestApiId *string
	// [Required] The identifier of the Deployment () resource to get information
	// about.
	DeploymentId *string
	Template     *bool
}

Requests API Gateway to get information about a Deployment () resource.

type GetDeploymentOutput

type GetDeploymentOutput struct {
	// The date and time that the deployment resource was created.
	CreatedDate *time.Time
	// A summary of the RestApi () at the date and time that the deployment resource
	// was created.
	ApiSummary map[string]map[string]*types.MethodSnapshot
	// The identifier for the deployment resource.
	Id *string
	// The description for the deployment resource.
	Description *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

An immutable representation of a RestApi () resource that can be called by users using Stages (). A deployment must be associated with a Stage () for it to be callable over the Internet. To create a deployment, call POST on the Deployments () resource of a RestApi (). To view, update, or delete a deployment, call GET, PATCH, or DELETE on the specified deployment resource (/restapis/{restapi_id}/deployments/{deployment_id}). RestApi (), Deployments (), Stage (), AWS CLI (https://docs.aws.amazon.com/cli/latest/reference/apigateway/get-deployment.html), AWS SDKs (https://aws.amazon.com/tools/)

type GetDeploymentsInput

type GetDeploymentsInput struct {
	// [Required] The string identifier of the associated RestApi ().
	RestApiId *string
	// The maximum number of returned results per page. The default value is 25 and the
	// maximum value is 500.
	Limit    *int32
	Name     *string
	Title    *string
	Template *bool
	// The current pagination position in the paged result set.
	Position         *string
	TemplateSkipList []*string
}

Requests API Gateway to get information about a Deployments () collection.

type GetDeploymentsOutput

type GetDeploymentsOutput struct {
	// The current page of elements from this collection.
	Items []*types.Deployment
	// The current pagination position in the paged result set.
	Position *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents a collection resource that contains zero or more references to your existing deployments, and links that guide you on how to interact with your collection. The collection offers a paginated view of the contained deployments. To create a new deployment of a RestApi (), make a POST request against this resource. To view, update, or delete an existing deployment, make a GET, PATCH, or DELETE request, respectively, on a specified Deployment () resource. Deploying an API (https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-deploy-api.html), AWS CLI (https://docs.aws.amazon.com/cli/latest/reference/apigateway/get-deployment.html), AWS SDKs (https://aws.amazon.com/tools/)

type GetDocumentationPartInput

type GetDocumentationPartInput struct {
	// [Required] The string identifier of the associated RestApi ().
	DocumentationPartId *string
	TemplateSkipList    []*string
	Template            *bool
	// [Required] The string identifier of the associated RestApi ().
	RestApiId *string
	Name      *string
	Title     *string
}

Gets a specified documentation part of a given API.

type GetDocumentationPartOutput

type GetDocumentationPartOutput struct {
	// The DocumentationPart () identifier, generated by API Gateway when the
	// DocumentationPart is created.
	Id *string
	// The location of the API entity to which the documentation applies. Valid fields
	// depend on the targeted API entity type. All the valid location fields are not
	// required. If not explicitly specified, a valid location field is treated as a
	// wildcard and associated documentation content may be inherited by matching
	// entities, unless overridden.
	Location *types.DocumentationPartLocation
	// A content map of API-specific key-value pairs describing the targeted API
	// entity. The map must be encoded as a JSON string, e.g., "{ \"description\":
	// \"The API does ...\" }". Only OpenAPI-compliant documentation-related fields
	// from the properties map are exported and, hence, published as part of the API
	// entity definitions, while the original documentation parts are exported in a
	// OpenAPI extension of x-amazon-apigateway-documentation.
	Properties *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

A documentation part for a targeted API entity. A documentation part consists of a content map (properties) and a target (location). The target specifies an API entity to which the documentation content applies. The supported API entity types are API, AUTHORIZER, MODEL, RESOURCE, METHOD, PATH_PARAMETER, QUERY_PARAMETER, REQUEST_HEADER, REQUEST_BODY, RESPONSE, RESPONSE_HEADER, and RESPONSE_BODY. Valid location fields depend on the API entity type. All valid fields are not required. The content map is a JSON string of API-specific key-value pairs. Although an API can use any shape for the content map, only the OpenAPI-compliant documentation fields will be injected into the associated API entity definition in the exported OpenAPI definition file. Documenting an API (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api.html), DocumentationParts ()

type GetDocumentationPartsInput

type GetDocumentationPartsInput struct {
	TemplateSkipList []*string
	// The type of API entities of the to-be-retrieved documentation parts.
	Type  types.DocumentationPartType
	Title *string
	// The name of API entities of the to-be-retrieved documentation parts.
	NameQuery *string
	// The current pagination position in the paged result set.
	Position *string
	// The maximum number of returned results per page. The default value is 25 and the
	// maximum value is 500.
	Limit *int32
	Name  *string
	// The status of the API documentation parts to retrieve. Valid values are
	// DOCUMENTED for retrieving DocumentationPart () resources with content and
	// UNDOCUMENTED for DocumentationPart () resources without content.
	LocationStatus types.LocationStatusType
	Template       *bool
	// The path of API entities of the to-be-retrieved documentation parts.
	Path *string
	// [Required] The string identifier of the associated RestApi ().
	RestApiId *string
}

Gets the documentation parts of an API. The result may be filtered by the type, name, or path of API entities (targets).

type GetDocumentationPartsOutput

type GetDocumentationPartsOutput struct {
	// The current page of elements from this collection.
	Items []*types.DocumentationPart
	// The current pagination position in the paged result set.
	Position *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

The collection of documentation parts of an API. Documenting an API (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api.html), DocumentationPart ()

type GetDocumentationVersionInput

type GetDocumentationVersionInput struct {
	// [Required] The string identifier of the associated RestApi ().
	RestApiId *string
	Template  *bool
	// [Required] The version identifier of the to-be-retrieved documentation snapshot.
	DocumentationVersion *string
	Title                *string
	TemplateSkipList     []*string
	Name                 *string
}

Gets a documentation snapshot of an API.

type GetDocumentationVersionOutput

type GetDocumentationVersionOutput struct {
	// The description of the API documentation snapshot.
	Description *string
	// The date when the API documentation snapshot is created.
	CreatedDate *time.Time
	// The version identifier of the API documentation snapshot.
	Version *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

A snapshot of the documentation of an API. Publishing API documentation involves creating a documentation version associated with an API stage and exporting the versioned documentation to an external (e.g., OpenAPI) file. Documenting an API (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api.html), DocumentationPart (), DocumentationVersions ()

type GetDocumentationVersionsInput

type GetDocumentationVersionsInput struct {
	// [Required] The string identifier of the associated RestApi ().
	RestApiId *string
	Name      *string
	// The current pagination position in the paged result set.
	Position *string
	// The maximum number of returned results per page. The default value is 25 and the
	// maximum value is 500.
	Limit            *int32
	Title            *string
	TemplateSkipList []*string
	Template         *bool
}

Gets the documentation versions of an API.

type GetDocumentationVersionsOutput

type GetDocumentationVersionsOutput struct {
	// The current page of elements from this collection.
	Items []*types.DocumentationVersion
	// The current pagination position in the paged result set.
	Position *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

The collection of documentation snapshots of an API. Use the DocumentationVersions () to manage documentation snapshots associated with various API stages. Documenting an API (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api.html), DocumentationPart (), DocumentationVersion ()

type GetDomainNameInput

type GetDomainNameInput struct {
	TemplateSkipList []*string
	Title            *string
	Name             *string
	Template         *bool
	// [Required] The name of the DomainName () resource.
	DomainName *string
}

Request to get the name of a DomainName () resource.

type GetDomainNameOutput

type GetDomainNameOutput struct {
	// The domain name associated with the regional endpoint for this custom domain
	// name. You set up this association by adding a DNS record that points the custom
	// domain name to this regional domain name. The regional domain name is returned
	// by API Gateway when you create a regional endpoint.
	RegionalDomainName *string
	// The name of the certificate that will be used by edge-optimized endpoint for
	// this domain name.
	CertificateName *string
	// The region-agnostic Amazon Route 53 Hosted Zone ID of the edge-optimized
	// endpoint. The valid value is Z2FDTNDATAQYW2 for all the regions. For more
	// information, see Set up a Regional Custom Domain Name
	// (https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-regional-api-custom-domain-create.html)
	// and AWS Regions and Endpoints for API Gateway
	// (https://docs.aws.amazon.com/general/latest/gr/rande.html#apigateway_region).
	DistributionHostedZoneId *string
	// The custom domain name as an API host name, for example, my-api.example.com.
	DomainName *string
	// The Transport Layer Security (TLS) version + cipher suite for this DomainName
	// (). The valid values are TLS_1_0 and TLS_1_2.
	SecurityPolicy types.SecurityPolicy
	// An optional text message containing detailed information about status of the
	// DomainName () migration.
	DomainNameStatusMessage *string
	// The reference to an AWS-managed certificate that will be used for validating the
	// regional domain name. AWS Certificate Manager is the only supported source.
	RegionalCertificateArn *string
	// 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.
	CertificateArn *string
	// The timestamp when the certificate that was used by edge-optimized endpoint for
	// this domain name was uploaded.
	CertificateUploadDate *time.Time
	// The name of the certificate that will be used for validating the regional domain
	// name.
	RegionalCertificateName *string
	// The endpoint configuration of this DomainName () showing the endpoint types of
	// the domain name.
	EndpointConfiguration *types.EndpointConfiguration
	// The region-specific Amazon Route 53 Hosted Zone ID of the regional endpoint. For
	// more information, see Set up a Regional Custom Domain Name
	// (https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-regional-api-custom-domain-create.html)
	// and AWS Regions and Endpoints for API Gateway
	// (https://docs.aws.amazon.com/general/latest/gr/rande.html#apigateway_region).
	RegionalHostedZoneId *string
	// The domain name of the Amazon CloudFront distribution associated with this
	// custom domain name for an edge-optimized endpoint. You set up this association
	// when adding a DNS record pointing the custom domain name to this distribution
	// name. For more information about CloudFront distributions, see the Amazon
	// CloudFront documentation (https://aws.amazon.com/documentation/cloudfront/).
	DistributionDomainName *string
	// The collection of tags. Each tag element is associated with a given resource.
	Tags map[string]*string
	// The status of the DomainName () migration. The valid values are AVAILABLE and
	// UPDATING. If the status is UPDATING, the domain cannot be modified further until
	// the existing operation is complete. If it is AVAILABLE, the domain can be
	// updated.
	DomainNameStatus types.DomainNameStatus

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents a custom domain name as a user-friendly host name of an API (RestApi ()). When you deploy an API, API Gateway creates a default host name for the API. This default API host name is of the {restapi-id}.execute-api.{region}.amazonaws.com format. With the default host name, you can access the API's root resource with the URL of https://{restapi-id}.execute-api.{region}.amazonaws.com/{stage}/. When you set up a custom domain name of apis.example.com for this API, you can then access the same resource using the URL of the https://apis.examples.com/myApi, where myApi is the base path mapping (BasePathMapping ()) of your API under the custom domain name. Set a Custom Host Name for an API (https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-custom-domains.html)

type GetDomainNamesInput

type GetDomainNamesInput struct {
	// The current pagination position in the paged result set.
	Position *string
	// The maximum number of returned results per page. The default value is 25 and the
	// maximum value is 500.
	Limit            *int32
	Name             *string
	Title            *string
	Template         *bool
	TemplateSkipList []*string
}

Request to describe a collection of DomainName () resources.

type GetDomainNamesOutput

type GetDomainNamesOutput struct {
	// The current page of elements from this collection.
	Items []*types.DomainName
	// The current pagination position in the paged result set.
	Position *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents a collection of DomainName () resources. Use Client-Side Certificate (https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-custom-domains.html)

type GetExportInput

type GetExportInput struct {
	// A key-value map of query string parameters that specify properties of the
	// export, depending on the requested exportType. For exportTypeoas30 and swagger,
	// any combination of the following parameters are supported:
	// extensions='integrations' or extensions='apigateway' will export the API with
	// x-amazon-apigateway-integration extensions. extensions='authorizers' will export
	// the API with x-amazon-apigateway-authorizer extensions. postman will export the
	// API with Postman extensions, allowing for import to the Postman tool
	Parameters map[string]*string
	// [Required] The string identifier of the associated RestApi ().
	RestApiId *string
	// The content-type of the export, for example application/json. Currently
	// application/json and application/yaml are supported for exportType ofoas30 and
	// swagger. This should be specified in the Accept header for direct API requests.
	Accepts *string
	// [Required] The type of export. Acceptable values are 'oas30' for OpenAPI 3.0.x
	// and 'swagger' for Swagger/OpenAPI 2.0.
	ExportType *string
	// [Required] The name of the Stage () that will be exported.
	StageName *string
}

Request a new export of a RestApi () for a particular Stage ().

type GetExportOutput

type GetExportOutput struct {
	// The binary blob response to GetExport (), which contains the export.
	Body []byte
	// The content-type header value in the HTTP response. This will correspond to a
	// valid 'accept' type in the request.
	ContentType *string
	// The content-disposition header value in the HTTP response.
	ContentDisposition *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

The binary blob response to GetExport (), which contains the generated SDK.

type GetGatewayResponseInput

type GetGatewayResponseInput struct {
	TemplateSkipList []*string
	Template         *bool
	// [Required] The response type of the associated GatewayResponse (). Valid values
	// are
	//
	//     * ACCESS_DENIED
	//
	//     * API_CONFIGURATION_ERROR
	//
	//     *
	// AUTHORIZER_FAILURE
	//
	//     * AUTHORIZER_CONFIGURATION_ERROR
	//
	//     *
	// BAD_REQUEST_PARAMETERS
	//
	//     * BAD_REQUEST_BODY
	//
	//     * DEFAULT_4XX
	//
	//     *
	// DEFAULT_5XX
	//
	//     * EXPIRED_TOKEN
	//
	//     * INVALID_SIGNATURE
	//
	//     *
	// INTEGRATION_FAILURE
	//
	//     * INTEGRATION_TIMEOUT
	//
	//     * INVALID_API_KEY
	//
	//     *
	// MISSING_AUTHENTICATION_TOKEN
	//
	//     * QUOTA_EXCEEDED
	//
	//     * REQUEST_TOO_LARGE
	//
	//
	// * RESOURCE_NOT_FOUND
	//
	//     * THROTTLED
	//
	//     * UNAUTHORIZED
	//
	//     *
	// UNSUPPORTED_MEDIA_TYPE
	ResponseType types.GatewayResponseType
	// [Required] The string identifier of the associated RestApi ().
	RestApiId *string
	Name      *string
	Title     *string
}

Gets a GatewayResponse () of a specified response type on the given RestApi ().

type GetGatewayResponseOutput

type GetGatewayResponseOutput struct {
	// The response type of the associated GatewayResponse (). Valid values are
	//
	//     *
	// ACCESS_DENIED
	//
	//     * API_CONFIGURATION_ERROR
	//
	//     * AUTHORIZER_FAILURE
	//
	//     *
	// AUTHORIZER_CONFIGURATION_ERROR
	//
	//     * BAD_REQUEST_PARAMETERS
	//
	//     *
	// BAD_REQUEST_BODY
	//
	//     * DEFAULT_4XX
	//
	//     * DEFAULT_5XX
	//
	//     * EXPIRED_TOKEN
	//
	//
	// * INVALID_SIGNATURE
	//
	//     * INTEGRATION_FAILURE
	//
	//     * INTEGRATION_TIMEOUT
	//
	//     *
	// INVALID_API_KEY
	//
	//     * MISSING_AUTHENTICATION_TOKEN
	//
	//     * QUOTA_EXCEEDED
	//
	//     *
	// REQUEST_TOO_LARGE
	//
	//     * RESOURCE_NOT_FOUND
	//
	//     * THROTTLED
	//
	//     *
	// UNAUTHORIZED
	//
	//     * UNSUPPORTED_MEDIA_TYPE
	ResponseType types.GatewayResponseType
	// A Boolean flag to indicate whether this GatewayResponse () is the default
	// gateway response (true) or not (false). A default gateway response is one
	// generated by API Gateway without any customization by an API developer.
	DefaultResponse *bool
	// Response parameters (paths, query strings and headers) of the GatewayResponse ()
	// as a string-to-string map of key-value pairs.
	ResponseParameters map[string]*string
	// Response templates of the GatewayResponse () as a string-to-string map of
	// key-value pairs.
	ResponseTemplates map[string]*string
	// The HTTP status code for this GatewayResponse ().
	StatusCode *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

A gateway response of a given response type and status code, with optional response parameters and mapping templates. For more information about valid gateway response types, see Gateway Response Types Supported by API Gateway (https://docs.aws.amazon.com/apigateway/latest/developerguide/supported-gateway-response-types.html) Example: Get a Gateway Response of a given response type

Request

This example shows how to get a gateway response of the MISSING_AUTHENTICATION_TOKEN type. GET /restapis/o81lxisefl/gatewayresponses/MISSING_AUTHENTICATION_TOKEN HTTP/1.1 Host: beta-apigateway.us-east-1.amazonaws.com Content-Type: application/json X-Amz-Date: 20170503T202516Z Authorization: AWS4-HMAC-SHA256 Credential={access-key-id}/20170503/us-east-1/apigateway/aws4_request, SignedHeaders=content-type;host;x-amz-date, Signature=1b52460e3159c1a26cff29093855d50ea141c1c5b937528fecaf60f51129697a Cache-Control: no-cache Postman-Token: 3b2a1ce9-c848-2e26-2e2f-9c2caefbed45 The response type is specified as a URL path. Response

The successful operation returns the 200 OK status code and a payload similar to the following: { "_links": { "curies": { "href": "http://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-gatewayresponse-{rel}.html", "name": "gatewayresponse", "templated": true }, "self": { "href": "/restapis/o81lxisefl/gatewayresponses/MISSING_AUTHENTICATION_TOKEN" }, "gatewayresponse:delete": { "href": "/restapis/o81lxisefl/gatewayresponses/MISSING_AUTHENTICATION_TOKEN" }, "gatewayresponse:put": { "href": "/restapis/o81lxisefl/gatewayresponses/{response_type}", "templated": true }, "gatewayresponse:update": { "href": "/restapis/o81lxisefl/gatewayresponses/MISSING_AUTHENTICATION_TOKEN" } }, "defaultResponse": false, "responseParameters": { "gatewayresponse.header.x-request-path": "method.request.path.petId", "gatewayresponse.header.Access-Control-Allow-Origin": "'a.b.c'", "gatewayresponse.header.x-request-query": "method.request.querystring.q", "gatewayresponse.header.x-request-header": "method.request.header.Accept" }, "responseTemplates": { "application/json": "{\n \"message\": $context.error.messageString,\n \"type\": \"$context.error.responseType\",\n \"stage\": \"$context.stage\",\n \"resourcePath\": \"$context.resourcePath\",\n \"stageVariables.a\": \"$stageVariables.a\",\n \"statusCode\": \"'404'\"\n}" }, "responseType": "MISSING_AUTHENTICATION_TOKEN", "statusCode": "404" }

</div>

<div class="seeAlso"> <a href="https://docs.aws.amazon.com/apigateway/latest/developerguide/customize-gateway-responses.html">Customize Gateway Responses</a> </div>

type GetGatewayResponsesInput

type GetGatewayResponsesInput struct {
	// The maximum number of returned results per page. The default value is 25 and the
	// maximum value is 500. The GatewayResponses () collection does not support
	// pagination and the limit does not apply here.
	Limit *int32
	// [Required] The string identifier of the associated RestApi ().
	RestApiId        *string
	Name             *string
	TemplateSkipList []*string
	Title            *string
	// The current pagination position in the paged result set. The GatewayResponse ()
	// collection does not support pagination and the position does not apply here.
	Position *string
	Template *bool
}

Gets the GatewayResponses () collection on the given RestApi (). If an API developer has not added any definitions for gateway responses, the result will be the API Gateway-generated default GatewayResponses () collection for the supported response types.

type GetGatewayResponsesOutput

type GetGatewayResponsesOutput struct {
	// Returns the entire collection, because of no pagination support.
	Items []*types.GatewayResponse
	// The current pagination position in the paged result set. The GatewayResponse ()
	// collection does not support pagination and the position does not apply here.
	Position *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

The collection of the GatewayResponse () instances of a RestApi () as a responseType-to-GatewayResponse () object map of key-value pairs. As such, pagination is not supported for querying this collection. For more information about valid gateway response types, see Gateway Response Types Supported by API Gateway (https://docs.aws.amazon.com/apigateway/latest/developerguide/supported-gateway-response-types.html) Example: Get the collection of gateway responses of an API

Request

This example request shows how to retrieve the GatewayResponses () collection from an API. GET /restapis/o81lxisefl/gatewayresponses HTTP/1.1 Host: beta-apigateway.us-east-1.amazonaws.com Content-Type: application/json X-Amz-Date: 20170503T220604Z Authorization: AWS4-HMAC-SHA256 Credential={access-key-id}/20170503/us-east-1/apigateway/aws4_request, SignedHeaders=content-type;host;x-amz-date, Signature=59b42fe54a76a5de8adf2c67baa6d39206f8e9ad49a1d77ccc6a5da3103a398a Cache-Control: no-cache Postman-Token: 5637af27-dc29-fc5c-9dfe-0645d52cb515 Response

The successful operation returns the 200 OK status code and a payload similar to the following: { "_links": { "curies": { "href": "http://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-gatewayresponse-{rel}.html", "name": "gatewayresponse", "templated": true }, "self": { "href": "/restapis/o81lxisefl/gatewayresponses" }, "first": { "href": "/restapis/o81lxisefl/gatewayresponses" }, "gatewayresponse:by-type": { "href": "/restapis/o81lxisefl/gatewayresponses/{response_type}", "templated": true }, "item": [ { "href": "/restapis/o81lxisefl/gatewayresponses/INTEGRATION_FAILURE" }, { "href": "/restapis/o81lxisefl/gatewayresponses/RESOURCE_NOT_FOUND" }, { "href": "/restapis/o81lxisefl/gatewayresponses/REQUEST_TOO_LARGE" }, { "href": "/restapis/o81lxisefl/gatewayresponses/THROTTLED" }, { "href": "/restapis/o81lxisefl/gatewayresponses/UNSUPPORTED_MEDIA_TYPE" }, { "href": "/restapis/o81lxisefl/gatewayresponses/AUTHORIZER_CONFIGURATION_ERROR" }, { "href": "/restapis/o81lxisefl/gatewayresponses/DEFAULT_5XX" }, { "href": "/restapis/o81lxisefl/gatewayresponses/DEFAULT_4XX" }, { "href": "/restapis/o81lxisefl/gatewayresponses/BAD_REQUEST_PARAMETERS" }, { "href": "/restapis/o81lxisefl/gatewayresponses/BAD_REQUEST_BODY" }, { "href": "/restapis/o81lxisefl/gatewayresponses/EXPIRED_TOKEN" }, { "href": "/restapis/o81lxisefl/gatewayresponses/ACCESS_DENIED" }, { "href": "/restapis/o81lxisefl/gatewayresponses/INVALID_API_KEY" }, { "href": "/restapis/o81lxisefl/gatewayresponses/UNAUTHORIZED" }, { "href": "/restapis/o81lxisefl/gatewayresponses/API_CONFIGURATION_ERROR" }, { "href": "/restapis/o81lxisefl/gatewayresponses/QUOTA_EXCEEDED" }, { "href": "/restapis/o81lxisefl/gatewayresponses/INTEGRATION_TIMEOUT" }, { "href": "/restapis/o81lxisefl/gatewayresponses/MISSING_AUTHENTICATION_TOKEN" }, { "href": "/restapis/o81lxisefl/gatewayresponses/INVALID_SIGNATURE" }, { "href": "/restapis/o81lxisefl/gatewayresponses/AUTHORIZER_FAILURE" } ] }, "_embedded": { "item": [ { "_links": { "self": { "href": "/restapis/o81lxisefl/gatewayresponses/INTEGRATION_FAILURE" }, "gatewayresponse:put": { "href": "/restapis/o81lxisefl/gatewayresponses/{response_type}", "templated": true }, "gatewayresponse:update": { "href": "/restapis/o81lxisefl/gatewayresponses/INTEGRATION_FAILURE" } }, "defaultResponse": true, "responseParameters": {}, "responseTemplates": { "application/json": "{\"message\":$context.error.messageString}" }, "responseType": "INTEGRATION_FAILURE", "statusCode": "504" }, { "_links": { "self": { "href": "/restapis/o81lxisefl/gatewayresponses/RESOURCE_NOT_FOUND" }, "gatewayresponse:put": { "href": "/restapis/o81lxisefl/gatewayresponses/{response_type}", "templated": true }, "gatewayresponse:update": { "href": "/restapis/o81lxisefl/gatewayresponses/RESOURCE_NOT_FOUND" } }, "defaultResponse": true, "responseParameters": {}, "responseTemplates": { "application/json": "{\"message\":$context.error.messageString}" }, "responseType": "RESOURCE_NOT_FOUND", "statusCode": "404" }, { "_links": { "self": { "href": "/restapis/o81lxisefl/gatewayresponses/REQUEST_TOO_LARGE" }, "gatewayresponse:put": { "href": "/restapis/o81lxisefl/gatewayresponses/{response_type}", "templated": true }, "gatewayresponse:update": { "href": "/restapis/o81lxisefl/gatewayresponses/REQUEST_TOO_LARGE" } }, "defaultResponse": true, "responseParameters": {}, "responseTemplates": { "application/json": "{\"message\":$context.error.messageString}" }, "responseType": "REQUEST_TOO_LARGE", "statusCode": "413" }, { "_links": { "self": { "href": "/restapis/o81lxisefl/gatewayresponses/THROTTLED" }, "gatewayresponse:put": { "href": "/restapis/o81lxisefl/gatewayresponses/{response_type}", "templated": true }, "gatewayresponse:update": { "href": "/restapis/o81lxisefl/gatewayresponses/THROTTLED" } }, "defaultResponse": true, "responseParameters": {}, "responseTemplates": { "application/json": "{\"message\":$context.error.messageString}" }, "responseType": "THROTTLED", "statusCode": "429" }, { "_links": { "self": { "href": "/restapis/o81lxisefl/gatewayresponses/UNSUPPORTED_MEDIA_TYPE" }, "gatewayresponse:put": { "href": "/restapis/o81lxisefl/gatewayresponses/{response_type}", "templated": true }, "gatewayresponse:update": { "href": "/restapis/o81lxisefl/gatewayresponses/UNSUPPORTED_MEDIA_TYPE" } }, "defaultResponse": true, "responseParameters": {}, "responseTemplates": { "application/json": "{\"message\":$context.error.messageString}" }, "responseType": "UNSUPPORTED_MEDIA_TYPE", "statusCode": "415" }, { "_links": { "self": { "href": "/restapis/o81lxisefl/gatewayresponses/AUTHORIZER_CONFIGURATION_ERROR" }, "gatewayresponse:put": { "href": "/restapis/o81lxisefl/gatewayresponses/{response_type}", "templated": true }, "gatewayresponse:update": { "href": "/restapis/o81lxisefl/gatewayresponses/AUTHORIZER_CONFIGURATION_ERROR" } }, "defaultResponse": true, "responseParameters": {}, "responseTemplates": { "application/json": "{\"message\":$context.error.messageString}" }, "responseType": "AUTHORIZER_CONFIGURATION_ERROR", "statusCode": "500" }, { "_links": { "self": { "href": "/restapis/o81lxisefl/gatewayresponses/DEFAULT_5XX" }, "gatewayresponse:put": { "href": "/restapis/o81lxisefl/gatewayresponses/{response_type}", "templated": true }, "gatewayresponse:update": { "href": "/restapis/o81lxisefl/gatewayresponses/DEFAULT_5XX" } }, "defaultResponse": true, "responseParameters": {}, "responseTemplates": { "application/json": "{\"message\":$context.error.messageString}" }, "responseType": "DEFAULT_5XX" }, { "_links": { "self": { "href": "/restapis/o81lxisefl/gatewayresponses/DEFAULT_4XX" }, "gatewayresponse:put": { "href": "/restapis/o81lxisefl/gatewayresponses/{response_type}", "templated": true }, "gatewayresponse:update": { "href": "/restapis/o81lxisefl/gatewayresponses/DEFAULT_4XX" } }, "defaultResponse": true, "responseParameters": {}, "responseTemplates": { "application/json": "{\"message\":$context.error.messageString}" }, "responseType": "DEFAULT_4XX" }, { "_links": { "self": { "href": "/restapis/o81lxisefl/gatewayresponses/BAD_REQUEST_PARAMETERS" }, "gatewayresponse:put": { "href": "/restapis/o81lxisefl/gatewayresponses/{response_type}", "templated": true }, "gatewayresponse:update": { "href": "/restapis/o81lxisefl/gatewayresponses/BAD_REQUEST_PARAMETERS" } }, "defaultResponse": true, "responseParameters": {}, "responseTemplates": { "application/json": "{\"message\":$context.error.messageString}" }, "responseType": "BAD_REQUEST_PARAMETERS", "statusCode": "400" }, { "_links": { "self": { "href": "/restapis/o81lxisefl/gatewayresponses/BAD_REQUEST_BODY" }, "gatewayresponse:put": { "href": "/restapis/o81lxisefl/gatewayresponses/{response_type}", "templated": true }, "gatewayresponse:update": { "href": "/restapis/o81lxisefl/gatewayresponses/BAD_REQUEST_BODY" } }, "defaultResponse": true, "responseParameters": {}, "responseTemplates": { "application/json": "{\"message\":$context.error.messageString}" }, "responseType": "BAD_REQUEST_BODY", "statusCode": "400" }, { "_links": { "self": { "href": "/restapis/o81lxisefl/gatewayresponses/EXPIRED_TOKEN" }, "gatewayresponse:put": { "href": "/restapis/o81lxisefl/gatewayresponses/{response_type}", "templated": true }, "gatewayresponse:update": { "href": "/restapis/o81lxisefl/gatewayresponses/EXPIRED_TOKEN" } }, "defaultResponse": true, "responseParameters": {}, "responseTemplates": { "application/json": "{\"message\":$context.error.messageString}" }, "responseType": "EXPIRED_TOKEN", "statusCode": "403" }, { "_links": { "self": { "href": "/restapis/o81lxisefl/gatewayresponses/ACCESS_DENIED" }, "gatewayresponse:put": { "href": "/restapis/o81lxisefl/gatewayresponses/{response_type}", "templated": true }, "gatewayresponse:update": { "href": "/restapis/o81lxisefl/gatewayresponses/ACCESS_DENIED" } }, "defaultResponse": true, "responseParameters": {}, "responseTemplates": { "application/json": "{\"message\":$context.error.messageString}" }, "responseType": "ACCESS_DENIED", "statusCode": "403" }, { "_links": { "self": { "href": "/restapis/o81lxisefl/gatewayresponses/INVALID_API_KEY" }, "gatewayresponse:put": { "href": "/restapis/o81lxisefl/gatewayresponses/{response_type}", "templated": true }, "gatewayresponse:update": { "href": "/restapis/o81lxisefl/gatewayresponses/INVALID_API_KEY" } }, "defaultResponse": true, "responseParameters": {}, "responseTemplates": { "application/json": "{\"message\":$context.error.messageString}" }, "responseType": "INVALID_API_KEY", "statusCode": "403" }, { "_links": { "self": { "href": "/restapis/o81lxisefl/gatewayresponses/UNAUTHORIZED" }, "gatewayresponse:put": { "href": "/restapis/o81lxisefl/gatewayresponses/{response_type}", "templated": true }, "gatewayresponse:update": { "href": "/restapis/o81lxisefl/gatewayresponses/UNAUTHORIZED" } }, "defaultResponse": true, "responseParameters": {}, "responseTemplates": { "application/json": "{\"message\":$context.error.messageString}" }, "responseType": "UNAUTHORIZED", "statusCode": "401" }, { "_links": { "self": { "href": "/restapis/o81lxisefl/gatewayresponses/API_CONFIGURATION_ERROR" }, "gatewayresponse:put": { "href": "/restapis/o81lxisefl/gatewayresponses/{response_type}", "templated": true }, "gatewayresponse:update": { "href": "/restapis/o81lxisefl/gatewayresponses/API_CONFIGURATION_ERROR" } }, "defaultResponse": true, "responseParameters": {}, "responseTemplates": { "application/json": "{\"message\":$context.error.messageString}" }, "responseType": "API_CONFIGURATION_ERROR", "statusCode": "500" }, { "_links": { "self": { "href": "/restapis/o81lxisefl/gatewayresponses/QUOTA_EXCEEDED" }, "gatewayresponse:put": { "href": "/restapis/o81lxisefl/gatewayresponses/{response_type}", "templated": true }, "gatewayresponse:update": { "href": "/restapis/o81lxisefl/gatewayresponses/QUOTA_EXCEEDED" } }, "defaultResponse": true, "responseParameters": {}, "responseTemplates": { "application/json": "{\"message\":$context.error.messageString}" }, "responseType": "QUOTA_EXCEEDED", "statusCode": "429" }, { "_links": { "self": { "href": "/restapis/o81lxisefl/gatewayresponses/INTEGRATION_TIMEOUT" }, "gatewayresponse:put": { "href": "/restapis/o81lxisefl/gatewayresponses/{response_type}", "templated": true }, "gatewayresponse:update": { "href": "/restapis/o81lxisefl/gatewayresponses/INTEGRATION_TIMEOUT" } }, "defaultResponse": true, "responseParameters": {}, "responseTemplates": { "application/json": "{\"message\":$context.error.messageString}" }, "responseType": "INTEGRATION_TIMEOUT", "statusCode": "504" }, { "_links": { "self": { "href": "/restapis/o81lxisefl/gatewayresponses/MISSING_AUTHENTICATION_TOKEN" }, "gatewayresponse:put": { "href": "/restapis/o81lxisefl/gatewayresponses/{response_type}", "templated": true }, "gatewayresponse:update": { "href": "/restapis/o81lxisefl/gatewayresponses/MISSING_AUTHENTICATION_TOKEN" } }, "defaultResponse": true, "responseParameters": {}, "responseTemplates": { "application/json": "{\"message\":$context.error.messageString}" }, "responseType": "MISSING_AUTHENTICATION_TOKEN", "statusCode": "403" }, { "_links": { "self": { "href": "/restapis/o81lxisefl/gatewayresponses/INVALID_SIGNATURE" }, "gatewayresponse:put": { "href": "/restapis/o81lxisefl/gatewayresponses/{response_type}", "templated": true }, "gatewayresponse:update": { "href": "/restapis/o81lxisefl/gatewayresponses/INVALID_SIGNATURE" } }, "defaultResponse": true, "responseParameters": {}, "responseTemplates": { "application/json": "{\"message\":$context.error.messageString}" }, "responseType": "INVALID_SIGNATURE", "statusCode": "403" }, { "_links": { "self": { "href": "/restapis/o81lxisefl/gatewayresponses/AUTHORIZER_FAILURE" }, "gatewayresponse:put": { "href": "/restapis/o81lxisefl/gatewayresponses/{response_type}", "templated": true }, "gatewayresponse:update": { "href": "/restapis/o81lxisefl/gatewayresponses/AUTHORIZER_FAILURE" } }, "defaultResponse": true, "responseParameters": {}, "responseTemplates": { "application/json": "{\"message\":$context.error.messageString}" }, "responseType": "AUTHORIZER_FAILURE", "statusCode": "500" } ] } }

</div>

<div class="seeAlso"> <a href="https://docs.aws.amazon.com/apigateway/latest/developerguide/customize-gateway-responses.html">Customize Gateway Responses</a> </div>

type GetIntegrationInput

type GetIntegrationInput struct {
	// [Required] The string identifier of the associated RestApi ().
	RestApiId *string
	Name      *string
	Title     *string
	// [Required] Specifies a get integration request's HTTP method.
	HttpMethod       *string
	TemplateSkipList []*string
	// [Required] Specifies a get integration request's resource identifier
	ResourceId *string
	Template   *bool
}

Represents a request to get the integration configuration.

type GetIntegrationOutput

type GetIntegrationOutput struct {
	// Specifies a group of related cached parameters. By default, API Gateway uses the
	// resource ID as the cacheNamespace. You can specify the same cacheNamespace
	// across resources to return the same cached data for requests to different
	// resources.
	CacheNamespace *string
	// Specifies the integration's HTTP method type.
	HttpMethod *string
	// Specifies an API method integration type. The valid value is one of the
	// following:
	//
	//     * AWS: for integrating the API method request with an AWS
	// service action, including the Lambda function-invoking action. With the Lambda
	// function-invoking action, this is referred to as the Lambda custom integration.
	// With any other AWS service action, this is known as AWS integration.
	//
	//     *
	// AWS_PROXY: for integrating the API method request with the Lambda
	// function-invoking action with the client request passed through as-is. This
	// integration is also referred to as the Lambda proxy integration.
	//
	//     * HTTP:
	// for integrating the API method request with an HTTP endpoint, including a
	// private HTTP endpoint within a VPC. This integration is also referred to as the
	// HTTP custom integration.
	//
	//     * HTTP_PROXY: for integrating the API method
	// request with an HTTP endpoint, including a private HTTP endpoint within a VPC,
	// with the client request passed through as-is. This is also referred to as the
	// HTTP proxy integration.
	//
	//     * MOCK: for integrating the API method request with
	// API Gateway as a "loop-back" endpoint without invoking any backend.
	//
	// For the
	// HTTP and HTTP proxy integrations, each integration can specify a protocol
	// (http/https), port and path. Standard 80 and 443 ports are supported as well as
	// custom ports above 1024. An HTTP or HTTP proxy integration with a connectionType
	// of VPC_LINK is referred to as a private integration and uses a VpcLink () to
	// connect API Gateway to a network load balancer of a VPC.
	Type types.IntegrationType
	// Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000
	// milliseconds or 29 seconds.
	TimeoutInMillis *int32
	// Specifies Uniform Resource Identifier (URI) of the integration endpoint.
	//
	//     *
	// For HTTP or HTTP_PROXY integrations, the URI must be a fully formed, encoded
	// HTTP(S) URL according to the RFC-3986 specification
	// (https://en.wikipedia.org/wiki/Uniform_Resource_Identifier), for either standard
	// integration, where connectionType is not VPC_LINK, or private integration, where
	// connectionType is VPC_LINK. For a private HTTP integration, the URI is not used
	// for routing.
	//
	//     * For AWS or AWS_PROXY integrations, the URI is of the form
	// arn:aws:apigateway:{region}:{subdomain.service|service}:path|action/{service_api}.
	// Here, {Region} is the API Gateway region (e.g., us-east-1); {service} is the
	// name of the integrated AWS service (e.g., s3); and {subdomain} is a designated
	// subdomain supported by certain AWS service for fast host-name lookup. action can
	// be used for an AWS service action-based API, using an
	// Action={name}&{p1}={v1}&p2={v2}... query string. The ensuing {service_api}
	// refers to a supported action {name} plus any required input parameters.
	// Alternatively, path can be used for an AWS service path-based API. The ensuing
	// service_api refers to the path to an AWS service resource, including the region
	// of the integrated AWS service, if applicable. For example, for integration with
	// the S3 API of GetObject
	// (https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectGET.html), the uri
	// can be either
	// arn:aws:apigateway:us-west-2:s3:action/GetObject&Bucket={bucket}&Key={key} or
	// arn:aws:apigateway:us-west-2:s3:path/{bucket}/{key}
	Uri *string
	// The type of the network connection to the integration endpoint. The valid value
	// is INTERNET for connections through the public routable internet or VPC_LINK for
	// private connections between API Gateway and a network load balancer in a VPC.
	// The default value is INTERNET.
	ConnectionType types.ConnectionType
	// A key-value map specifying request parameters that are passed from the method
	// request to the back end. The key is an integration request parameter name and
	// the associated value is a method request parameter value or static value that
	// must be enclosed within single quotes and pre-encoded as required by the back
	// end. The method request parameter value must match the pattern of
	// method.request.{location}.{name}, where location is querystring, path, or header
	// and name must be a valid and unique method request parameter name.
	RequestParameters map[string]*string
	// Represents a map of Velocity templates that are applied on the request payload
	// based on the value of the Content-Type header sent by the client. The content
	// type value is the key in this map, and the template (as a String) is the value.
	RequestTemplates map[string]*string
	// A list of request parameters whose values API Gateway caches. To be valid values
	// for cacheKeyParameters, these parameters must also be specified for Method
	// ()requestParameters.
	CacheKeyParameters []*string
	// The (id
	// (https://docs.aws.amazon.com/apigateway/api-reference/resource/vpc-link/#id)) of
	// the VpcLink () used for the integration when connectionType=VPC_LINK and
	// undefined, otherwise.
	ConnectionId *string
	// Specifies how the method request body of an unmapped content type will be passed
	// through the integration request to the back end without transformation. A
	// content type is unmapped if no mapping template is defined in the integration or
	// the content type does not match any of the mapped content types, as specified in
	// requestTemplates. The valid value is one of the following:
	//
	//     * WHEN_NO_MATCH:
	// passes the method request body through the integration request to the back end
	// without transformation when the method request content type does not match any
	// content type associated with the mapping templates defined in the integration
	// request.
	//
	//     * WHEN_NO_TEMPLATES: passes the method request body through the
	// integration request to the back end without transformation when no mapping
	// template is defined in the integration request. If a template is defined when
	// this option is selected, the method request of an unmapped content-type will be
	// rejected with an HTTP 415 Unsupported Media Type response.
	//
	//     * NEVER: rejects
	// the method request with an HTTP 415 Unsupported Media Type response when either
	// the method request content type does not match any content type associated with
	// the mapping templates defined in the integration request or no mapping template
	// is defined in the integration request.
	PassthroughBehavior *string
	// Specifies the TLS configuration for an integration.
	TlsConfig *types.TlsConfig
	// Specifies the credentials required for the integration, if any. For AWS
	// integrations, three options are available. To specify an IAM Role for API
	// Gateway to assume, use the role's Amazon Resource Name (ARN). To require that
	// the caller's identity be passed through from the request, specify the string
	// arn:aws:iam::\*:user/\*. To use resource-based permissions on supported AWS
	// services, specify null.
	Credentials *string
	// Specifies how to handle request payload content type conversions. Supported
	// values are CONVERT_TO_BINARY and CONVERT_TO_TEXT, with the following
	// behaviors:
	//
	//     * CONVERT_TO_BINARY: Converts a request payload from a
	// Base64-encoded string to the corresponding binary blob.
	//
	//     * CONVERT_TO_TEXT:
	// Converts a request payload from a binary blob to a Base64-encoded string.
	//
	// If
	// this property is not defined, the request payload will be passed through from
	// the method request to integration request without modification, provided that
	// the passthroughBehavior is configured to support payload pass-through.
	ContentHandling types.ContentHandlingStrategy
	// Specifies the integration's responses.
	// Example: Get integration responses of a
	// method
	//
	// Request
	//
	//     GET
	// /restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200
	// HTTP/1.1 Content-Type: application/json Host: apigateway.us-east-1.amazonaws.com
	// X-Amz-Date: 20160607T191449Z Authorization: AWS4-HMAC-SHA256
	// Credential={access_key_ID}/20160607/us-east-1/apigateway/aws4_request,
	// SignedHeaders=content-type;host;x-amz-date, Signature={sig4_hash}
	//
	// Response
	//
	// The
	// successful response returns 200 OK status and a payload as follows: { "_links":
	// { "curies": { "href":
	// "https://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-integration-response-{rel}.html",
	// "name": "integrationresponse", "templated": true }, "self": { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200",
	// "title": "200" }, "integrationresponse:delete": { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200"
	// }, "integrationresponse:update": { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200"
	// } }, "responseParameters": { "method.response.header.Content-Type":
	// "'application/xml'" }, "responseTemplates": { "application/json":
	// "$util.urlDecode(\"%3CkinesisStreams%3E#foreach($stream in
	// $input.path('$.StreamNames'))%3Cstream%3E%3Cname%3E$stream%3C/name%3E%3C/stream%3E#end%3C/kinesisStreams%3E\")\n"
	// }, "statusCode": "200" }Creating an API
	// (https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-create-api.html)
	IntegrationResponses map[string]*types.IntegrationResponse

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents an HTTP, HTTP_PROXY, AWS, AWS_PROXY, or Mock integration. In the API Gateway console, the built-in Lambda integration is an AWS integration. Creating an API (https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-create-api.html)

type GetIntegrationResponseInput

type GetIntegrationResponseInput struct {
	// [Required] Specifies a get integration response request's status code.
	StatusCode *string
	// [Required] Specifies a get integration response request's resource identifier.
	ResourceId *string
	Template   *bool
	Title      *string
	// [Required] The string identifier of the associated RestApi ().
	RestApiId        *string
	TemplateSkipList []*string
	// [Required] Specifies a get integration response request's HTTP method.
	HttpMethod *string
	Name       *string
}

Represents a get integration response request.

type GetIntegrationResponseOutput

type GetIntegrationResponseOutput struct {
	// A key-value map specifying response parameters that are passed to the method
	// response from the back end. The key is a method response header parameter name
	// and the mapped value is an integration response header value, a static value
	// enclosed within a pair of single quotes, or a JSON expression from the
	// integration response body. The mapping key must match the pattern of
	// method.response.header.{name}, where name is a valid and unique header name. The
	// mapped non-static value must match the pattern of
	// integration.response.header.{name} or
	// integration.response.body.{JSON-expression}, where name is a valid and unique
	// response header name and JSON-expression is a valid JSON expression without the
	// $ prefix.
	ResponseParameters map[string]*string
	// Specifies the templates used to transform the integration response body.
	// Response templates are represented as a key/value map, with a content-type as
	// the key and a template as the value.
	ResponseTemplates map[string]*string
	// Specifies the status code that is used to map the integration response to an
	// existing MethodResponse ().
	StatusCode *string
	// Specifies the regular expression (regex) pattern used to choose an integration
	// response based on the response from the back end. For example, if the success
	// response returns nothing and the error response returns some string, you could
	// use the .+ regex to match error response. However, make sure that the error
	// response does not contain any newline (\n) character in such cases. If the back
	// end is an AWS Lambda function, the AWS Lambda function error header is matched.
	// For all other HTTP and AWS back ends, the HTTP status code is matched.
	SelectionPattern *string
	// Specifies how to handle response payload content type conversions. Supported
	// values are CONVERT_TO_BINARY and CONVERT_TO_TEXT, with the following
	// behaviors:
	//
	//     * CONVERT_TO_BINARY: Converts a response payload from a
	// Base64-encoded string to the corresponding binary blob.
	//
	//     * CONVERT_TO_TEXT:
	// Converts a response payload from a binary blob to a Base64-encoded string.
	//
	// If
	// this property is not defined, the response payload will be passed through from
	// the integration response to the method response without modification.
	ContentHandling types.ContentHandlingStrategy

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents an integration response. The status code must map to an existing MethodResponse (), and parameters and templates can be used to transform the back-end response. Creating an API (https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-create-api.html)

type GetMethodInput

type GetMethodInput struct {
	Template *bool
	// [Required] The Resource () identifier for the Method () resource.
	ResourceId       *string
	Title            *string
	TemplateSkipList []*string
	// [Required] The string identifier of the associated RestApi ().
	RestApiId *string
	Name      *string
	// [Required] Specifies the method request's HTTP method type.
	HttpMethod *string
}

Request to describe an existing Method () resource.

type GetMethodOutput

type GetMethodOutput struct {
	// A key-value map defining required or optional method request parameters that can
	// be accepted by API Gateway. A key is a method request parameter name matching
	// the pattern of method.request.{location}.{name}, where location is querystring,
	// path, or header and name is a valid and unique parameter name. The value
	// associated with the key is a Boolean flag indicating whether the parameter is
	// required (true) or optional (false). The method request parameter names defined
	// here are available in Integration () to be mapped to integration request
	// parameters or templates.
	RequestParameters map[string]*bool
	// The method's authorization type. Valid values are NONE for open access, AWS_IAM
	// for using AWS IAM permissions, CUSTOM for using a custom authorizer, or
	// COGNITO_USER_POOLS for using a Cognito user pool.
	AuthorizationType *string
	// The method's HTTP verb.
	HttpMethod *string
	// Gets a method response associated with a given HTTP status code. The collection
	// of method responses are encapsulated in a key-value map, where the key is a
	// response's HTTP status code and the value is a MethodResponse () resource that
	// specifies the response returned to the caller from the back end through the
	// integration response.
	// Example: Get a 200 OK response of a GET method
	//
	// Request
	//
	//
	// GET /restapis/uojnr9hd57/resources/0cjtch/methods/GET/responses/200 HTTP/1.1
	// Content-Type: application/json Host: apigateway.us-east-1.amazonaws.com
	// Content-Length: 117 X-Amz-Date: 20160613T215008Z Authorization: AWS4-HMAC-SHA256
	// Credential={access_key_ID}/20160613/us-east-1/apigateway/aws4_request,
	// SignedHeaders=content-type;host;x-amz-date, Signature={sig4_hash}
	//
	// Response
	//
	// The
	// successful response returns a 200 OK status code and a payload similar to the
	// following: { "_links": { "curies": { "href":
	// "https://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-method-response-{rel}.html",
	// "name": "methodresponse", "templated": true }, "self": { "href":
	// "/restapis/uojnr9hd57/resources/0cjtch/methods/GET/responses/200", "title":
	// "200" }, "methodresponse:delete": { "href":
	// "/restapis/uojnr9hd57/resources/0cjtch/methods/GET/responses/200" },
	// "methodresponse:update": { "href":
	// "/restapis/uojnr9hd57/resources/0cjtch/methods/GET/responses/200" } },
	// "responseModels": { "application/json": "Empty" }, "responseParameters": {
	// "method.response.header.operator": false, "method.response.header.operand_2":
	// false, "method.response.header.operand_1": false }, "statusCode": "200" }AWS CLI
	// (https://docs.aws.amazon.com/cli/latest/reference/apigateway/get-method-response.html)
	MethodResponses map[string]*types.MethodResponse
	// The identifier of a RequestValidator () for request validation.
	RequestValidatorId *string
	// The identifier of an Authorizer () to use on this method. The authorizationType
	// must be CUSTOM.
	AuthorizerId *string
	// Gets the method's integration responsible for passing the client-submitted
	// request to the back end and performing necessary transformations to make the
	// request compliant with the back end.
	// Example:
	//
	// Request
	//
	//     GET
	// /restapis/uojnr9hd57/resources/0cjtch/methods/GET/integration HTTP/1.1
	// Content-Type: application/json Host: apigateway.us-east-1.amazonaws.com
	// Content-Length: 117 X-Amz-Date: 20160613T213210Z Authorization: AWS4-HMAC-SHA256
	// Credential={access_key_ID}/20160613/us-east-1/apigateway/aws4_request,
	// SignedHeaders=content-type;host;x-amz-date, Signature={sig4_hash}
	//
	// Response
	//
	// The
	// successful response returns a 200 OK status code and a payload similar to the
	// following: { "_links": { "curies": [ { "href":
	// "https://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-integration-{rel}.html",
	// "name": "integration", "templated": true }, { "href":
	// "https://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-integration-response-{rel}.html",
	// "name": "integrationresponse", "templated": true } ], "self": { "href":
	// "/restapis/uojnr9hd57/resources/0cjtch/methods/GET/integration" },
	// "integration:delete": { "href":
	// "/restapis/uojnr9hd57/resources/0cjtch/methods/GET/integration" },
	// "integration:responses": { "href":
	// "/restapis/uojnr9hd57/resources/0cjtch/methods/GET/integration/responses/200",
	// "name": "200", "title": "200" }, "integration:update": { "href":
	// "/restapis/uojnr9hd57/resources/0cjtch/methods/GET/integration" },
	// "integrationresponse:put": { "href":
	// "/restapis/uojnr9hd57/resources/0cjtch/methods/GET/integration/responses/{status_code}",
	// "templated": true } }, "cacheKeyParameters": [], "cacheNamespace": "0cjtch",
	// "credentials": "arn:aws:iam::123456789012:role/apigAwsProxyRole", "httpMethod":
	// "POST", "passthroughBehavior": "WHEN_NO_MATCH", "requestTemplates": {
	// "application/json": "{\n \"a\": \"$input.params('operand1')\",\n \"b\":
	// \"$input.params('operand2')\", \n \"op\": \"$input.params('operator')\" \n}" },
	// "type": "AWS", "uri":
	// "arn:aws:apigateway:us-west-2:lambda:path//2015-03-31/functions/arn:aws:lambda:us-west-2:123456789012:function:Calc/invocations",
	// "_embedded": { "integration:responses": { "_links": { "self": { "href":
	// "/restapis/uojnr9hd57/resources/0cjtch/methods/GET/integration/responses/200",
	// "name": "200", "title": "200" }, "integrationresponse:delete": { "href":
	// "/restapis/uojnr9hd57/resources/0cjtch/methods/GET/integration/responses/200" },
	// "integrationresponse:update": { "href":
	// "/restapis/uojnr9hd57/resources/0cjtch/methods/GET/integration/responses/200" }
	// }, "responseParameters": { "method.response.header.operator":
	// "integration.response.body.op", "method.response.header.operand_2":
	// "integration.response.body.b", "method.response.header.operand_1":
	// "integration.response.body.a" }, "responseTemplates": { "application/json":
	// "#set($res = $input.path('$'))\n{\n \"result\": \"$res.a, $res.b, $res.op =>
	// $res.c\",\n \"a\" : \"$res.a\",\n \"b\" : \"$res.b\",\n \"op\" : \"$res.op\",\n
	// \"c\" : \"$res.c\"\n}" }, "selectionPattern": "", "statusCode": "200" } } }AWS
	// CLI
	// (https://docs.aws.amazon.com/cli/latest/reference/apigateway/get-integration.html)
	MethodIntegration *types.Integration
	// A human-friendly operation identifier for the method. For example, you can
	// assign the operationName of ListPets for the GET /pets method in the PetStore
	// example.
	OperationName *string
	// A boolean flag specifying whether a valid ApiKey () is required to invoke this
	// method.
	ApiKeyRequired *bool
	// A list of authorization scopes configured on the method. The scopes are used
	// with a COGNITO_USER_POOLS authorizer to authorize the method invocation. The
	// authorization works by matching the method scopes against the scopes parsed from
	// the access token in the incoming request. The method invocation is authorized if
	// any method scopes matches a claimed scope in the access token. Otherwise, the
	// invocation is not authorized. When the method scope is configured, the client
	// must provide an access token instead of an identity token for authorization
	// purposes.
	AuthorizationScopes []*string
	// A key-value map specifying data schemas, represented by Model () resources, (as
	// the mapped value) of the request payloads of given content types (as the mapping
	// key).
	RequestModels map[string]*string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents a client-facing interface by which the client calls the API to access back-end resources. A Method resource is integrated with an Integration () resource. Both consist of a request and one or more responses. The method request takes the client input that is passed to the back end through the integration request. A method response returns the output from the back end to the client through an integration response. A method request is embodied in a Method resource, whereas an integration request is embodied in an Integration () resource. On the other hand, a method response is represented by a MethodResponse () resource, whereas an integration response is represented by an IntegrationResponse () resource. Example: Retrive the GET method on a specified resource

Request

The following example request retrieves the information about the GET method on an API resource (3kzxbg5sa2) of an API (fugvjdxtri). GET /restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET HTTP/1.1 Content-Type: application/json Host: apigateway.us-east-1.amazonaws.com X-Amz-Date: 20160603T210259Z Authorization: AWS4-HMAC-SHA256 Credential={access_key_ID}/20160603/us-east-1/apigateway/aws4_request, SignedHeaders=content-type;host;x-amz-date, Signature={sig4_hash} Response

The successful response returns a 200 OK status code and a payload similar to the following: { "_links": { "curies": [ { "href": "https://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-integration-{rel}.html", "name": "integration", "templated": true }, { "href": "https://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-integration-response-{rel}.html", "name": "integrationresponse", "templated": true }, { "href": "https://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-method-{rel}.html", "name": "method", "templated": true }, { "href": "https://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-method-response-{rel}.html", "name": "methodresponse", "templated": true } ], "self": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET", "name": "GET", "title": "GET" }, "integration:put": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration" }, "method:delete": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET" }, "method:integration": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration" }, "method:responses": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200", "name": "200", "title": "200" }, "method:update": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET" }, "methodresponse:put": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/{status_code}", "templated": true } }, "apiKeyRequired": true, "authorizationType": "NONE", "httpMethod": "GET", "_embedded": { "method:integration": { "_links": { "self": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration" }, "integration:delete": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration" }, "integration:responses": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200", "name": "200", "title": "200" }, "integration:update": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration" }, "integrationresponse:put": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/{status_code}", "templated": true } }, "cacheKeyParameters": [], "cacheNamespace": "3kzxbg5sa2", "credentials": "arn:aws:iam::123456789012:role/apigAwsProxyRole", "httpMethod": "POST", "passthroughBehavior": "WHEN_NO_MATCH", "requestParameters": { "integration.request.header.Content-Type": "'application/x-amz-json-1.1'" }, "requestTemplates": { "application/json": "{\n}" }, "type": "AWS", "uri": "arn:aws:apigateway:us-east-1:kinesis:action/ListStreams", "_embedded": { "integration:responses": { "_links": { "self": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200", "name": "200", "title": "200" }, "integrationresponse:delete": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200" }, "integrationresponse:update": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200" } }, "responseParameters": { "method.response.header.Content-Type": "'application/xml'" }, "responseTemplates": { "application/json": "$util.urlDecode(\"%3CkinesisStreams%3E%23foreach(%24stream%20in%20%24input.path(%27%24.StreamNames%27))%3Cstream%3E%3Cname%3E%24stream%3C%2Fname%3E%3C%2Fstream%3E%23end%3C%2FkinesisStreams%3E\")" }, "statusCode": "200" } } }, "method:responses": { "_links": { "self": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200", "name": "200", "title": "200" }, "methodresponse:delete": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200" }, "methodresponse:update": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200" } }, "responseModels": { "application/json": "Empty" }, "responseParameters": { "method.response.header.Content-Type": false }, "statusCode": "200" } } } In the example above, the response template for the 200 OK response maps the JSON output from the ListStreams action in the back end to an XML output. The mapping template is URL-encoded as %3CkinesisStreams%3E%23foreach(%24stream%20in%20%24input.path(%27%24.StreamNames%27))%3Cstream%3E%3Cname%3E%24stream%3C%2Fname%3E%3C%2Fstream%3E%23end%3C%2FkinesisStreams%3E and the output is decoded using the $util.urlDecode() (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html#util-templat-reference) helper function. MethodResponse (), Integration (), IntegrationResponse (), Resource (), Set up an API's method (https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-method-settings.html)

type GetMethodResponseInput

type GetMethodResponseInput struct {
	// [Required] The Resource () identifier for the MethodResponse () resource.
	ResourceId *string
	// [Required] The status code for the MethodResponse () resource.
	StatusCode *string
	Title      *string
	// [Required] The HTTP verb of the Method () resource.
	HttpMethod       *string
	Name             *string
	TemplateSkipList []*string
	// [Required] The string identifier of the associated RestApi ().
	RestApiId *string
	Template  *bool
}

Request to describe a MethodResponse () resource.

type GetMethodResponseOutput

type GetMethodResponseOutput struct {
	// Specifies the Model () resources used for the response's content-type. Response
	// models are represented as a key/value map, with a content-type as the key and a
	// Model () name as the value.
	ResponseModels map[string]*string
	// The method response's status code.
	StatusCode *string
	// A key-value map specifying required or optional response parameters that API
	// Gateway can send back to the caller. A key defines a method response header and
	// the value specifies whether the associated method response header is required or
	// not. The expression of the key must match the pattern
	// method.response.header.{name}, where name is a valid and unique header name. API
	// Gateway passes certain integration response data to the method response headers
	// specified here according to the mapping you prescribe in the API's
	// IntegrationResponse (). The integration response data that can be mapped include
	// an integration response header expressed in integration.response.header.{name},
	// a static value enclosed within a pair of single quotes (e.g.,
	// 'application/json'), or a JSON expression from the back-end response payload in
	// the form of integration.response.body.{JSON-expression}, where JSON-expression
	// is a valid JSON expression without the $ prefix.)
	ResponseParameters map[string]*bool

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents a method response of a given HTTP status code returned to the client. The method response is passed from the back end through the associated integration response that can be transformed using a mapping template. Example: A MethodResponse instance of an API

Request

The example request retrieves a MethodResponse of the 200 status code. GET /restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200 HTTP/1.1 Content-Type: application/json Host: apigateway.us-east-1.amazonaws.com X-Amz-Date: 20160603T222952Z Authorization: AWS4-HMAC-SHA256 Credential={access_key_ID}/20160603/us-east-1/apigateway/aws4_request, SignedHeaders=content-type;host;x-amz-date, Signature={sig4_hash} Response

The successful response returns 200 OK status and a payload as follows: { "_links": { "curies": { "href": "https://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-method-response-{rel}.html", "name": "methodresponse", "templated": true }, "self": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200", "title": "200" }, "methodresponse:delete": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200" }, "methodresponse:update": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200" } }, "responseModels": { "application/json": "Empty" }, "responseParameters": { "method.response.header.Content-Type": false }, "statusCode": "200" }Method (), IntegrationResponse (), Integration ()Creating an API (https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-create-api.html)

type GetModelInput

type GetModelInput struct {
	// [Required] The RestApi () identifier under which the Model () exists.
	RestApiId        *string
	TemplateSkipList []*string
	// A query parameter of a Boolean value to resolve (true) all external model
	// references and returns a flattened model schema or not (false) The default is
	// false.
	Flatten *bool
	// [Required] The name of the model as an identifier.
	ModelName *string
	Template  *bool
	Title     *string
	Name      *string
}

Request to list information about a model in an existing RestApi () resource.

type GetModelOutput

type GetModelOutput struct {
	// The identifier for the model resource.
	Id *string
	// The name of the model. Must be an alphanumeric string.
	Name *string
	// The content-type for the model.
	ContentType *string
	// The description of the model.
	Description *string
	// The schema for the model. For application/json models, this should be JSON
	// schema draft 4 (https://tools.ietf.org/html/draft-zyp-json-schema-04) model. Do
	// not include "\*/" characters in the description of any properties because such
	// "\*/" characters may be interpreted as the closing marker for comments in some
	// languages, such as Java or JavaScript, causing the installation of your API's
	// SDK generated by API Gateway to fail.
	Schema *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents the data structure of a method's request or response payload. A request model defines the data structure of the client-supplied request payload. A response model defines the data structure of the response payload returned by the back end. Although not required, models are useful for mapping payloads between the front end and back end. A model is used for generating an API's SDK, validating the input request body, and creating a skeletal mapping template. Method (), MethodResponse (), Models and Mappings (https://docs.aws.amazon.com/apigateway/latest/developerguide/models-mappings.html)

type GetModelTemplateInput

type GetModelTemplateInput struct {
	// [Required] The name of the model for which to generate a template.
	ModelName *string
	Template  *bool
	// [Required] The string identifier of the associated RestApi ().
	RestApiId        *string
	TemplateSkipList []*string
	Title            *string
	Name             *string
}

Request to generate a sample mapping template used to transform the payload.

type GetModelTemplateOutput

type GetModelTemplateOutput struct {
	// The Apache Velocity Template Language (VTL)
	// (https://velocity.apache.org/engine/devel/vtl-reference.html) template content
	// used for the template resource.
	Value *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents a mapping template used to transform a payload. Mapping Templates (https://docs.aws.amazon.com/apigateway/latest/developerguide/models-mappings.html#models-mappings-mappings)

type GetModelsInput

type GetModelsInput struct {
	// The maximum number of returned results per page. The default value is 25 and the
	// maximum value is 500.
	Limit            *int32
	Name             *string
	TemplateSkipList []*string
	Title            *string
	// The current pagination position in the paged result set.
	Position *string
	Template *bool
	// [Required] The string identifier of the associated RestApi ().
	RestApiId *string
}

Request to list existing Models () defined for a RestApi () resource.

type GetModelsOutput

type GetModelsOutput struct {
	// The current page of elements from this collection.
	Items []*types.Model
	// The current pagination position in the paged result set.
	Position *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents a collection of Model () resources. Method (), MethodResponse (), Models and Mappings (https://docs.aws.amazon.com/apigateway/latest/developerguide/models-mappings.html)

type GetRequestValidatorInput

type GetRequestValidatorInput struct {
	// [Required] The identifier of the RequestValidator () to be retrieved.
	RequestValidatorId *string
	Template           *bool
	Name               *string
	Title              *string
	TemplateSkipList   []*string
	// [Required] The string identifier of the associated RestApi ().
	RestApiId *string
}

Gets a RequestValidator () of a given RestApi ().

type GetRequestValidatorOutput

type GetRequestValidatorOutput struct {
	// The identifier of this RequestValidator ().
	Id *string
	// A Boolean flag to indicate whether to validate a request body according to the
	// configured Model () schema.
	ValidateRequestBody *bool
	// A Boolean flag to indicate whether to validate request parameters (true) or not
	// (false).
	ValidateRequestParameters *bool
	// The name of this RequestValidator ()
	Name *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

A set of validation rules for incoming Method () requests. In OpenAPI, a RequestValidator () of an API is defined by the x-amazon-apigateway-request-validators.requestValidator (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions.html#api-gateway-swagger-extensions-request-validators.requestValidator.html) object. It the referenced using the x-amazon-apigateway-request-validator (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions.html#api-gateway-swagger-extensions-request-validator) property. Enable Basic Request Validation in API Gateway (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-method-request-validation.html)

type GetRequestValidatorsInput

type GetRequestValidatorsInput struct {
	Template *bool
	Title    *string
	Name     *string
	// The maximum number of returned results per page. The default value is 25 and the
	// maximum value is 500.
	Limit *int32
	// The current pagination position in the paged result set.
	Position         *string
	TemplateSkipList []*string
	// [Required] The string identifier of the associated RestApi ().
	RestApiId *string
}

Gets the RequestValidators () collection of a given RestApi ().

type GetRequestValidatorsOutput

type GetRequestValidatorsOutput struct {
	// The current page of elements from this collection.
	Items []*types.RequestValidator
	// The current pagination position in the paged result set.
	Position *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

A collection of RequestValidator () resources of a given RestApi (). In OpenAPI, the RequestValidators () of an API is defined by the x-amazon-apigateway-request-validators (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions.html#api-gateway-swagger-extensions-request-validators.html) extension. Enable Basic Request Validation in API Gateway (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-method-request-validation.html)

type GetResourceInput

type GetResourceInput struct {
	// [Required] The string identifier of the associated RestApi ().
	RestApiId *string
	Name      *string
	Title     *string
	// A query parameter to retrieve the specified resources embedded in the returned
	// Resource () representation in the response. This embed parameter value is a list
	// of comma-separated strings. Currently, the request supports only retrieval of
	// the embedded Method () resources this way. The query parameter value must be a
	// single-valued list and contain the "methods" string. For example, GET
	// /restapis/{restapi_id}/resources/{resource_id}?embed=methods.
	Embed            []*string
	TemplateSkipList []*string
	Template         *bool
	// [Required] The identifier for the Resource () resource.
	ResourceId *string
}

Request to list information about a resource.

type GetResourceOutput

type GetResourceOutput struct {
	// The resource's identifier.
	Id *string
	// Gets an API resource's method of a given HTTP verb. The resource methods are a
	// map of methods indexed by methods' HTTP verbs enabled on the resource. This
	// method map is included in the 200 OK response of the GET
	// /restapis/{restapi_id}/resources/{resource_id} or GET
	// /restapis/{restapi_id}/resources/{resource_id}?embed=methods request.
	// Example:
	// Get the GET method of an API resource
	//
	// Request
	//
	//     GET
	// /restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET HTTP/1.1 Content-Type:
	// application/json Host: apigateway.us-east-1.amazonaws.com X-Amz-Date:
	// 20170223T031827Z Authorization: AWS4-HMAC-SHA256
	// Credential={access_key_ID}/20170223/us-east-1/apigateway/aws4_request,
	// SignedHeaders=content-type;host;x-amz-date, Signature={sig4_hash}
	//
	// Response
	//
	// {
	// "_links": { "curies": [ { "href":
	// "https://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-integration-{rel}.html",
	// "name": "integration", "templated": true }, { "href":
	// "https://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-integration-response-{rel}.html",
	// "name": "integrationresponse", "templated": true }, { "href":
	// "https://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-method-{rel}.html",
	// "name": "method", "templated": true }, { "href":
	// "https://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-method-response-{rel}.html",
	// "name": "methodresponse", "templated": true } ], "self": { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET", "name": "GET", "title":
	// "GET" }, "integration:put": { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration" },
	// "method:delete": { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET" }, "method:integration":
	// { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration" },
	// "method:responses": { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200", "name":
	// "200", "title": "200" }, "method:update": { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET" }, "methodresponse:put":
	// { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/{status_code}",
	// "templated": true } }, "apiKeyRequired": false, "authorizationType": "NONE",
	// "httpMethod": "GET", "_embedded": { "method:integration": { "_links": { "self":
	// { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration" },
	// "integration:delete": { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration" },
	// "integration:responses": { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200",
	// "name": "200", "title": "200" }, "integration:update": { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration" },
	// "integrationresponse:put": { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/{status_code}",
	// "templated": true } }, "cacheKeyParameters": [], "cacheNamespace": "3kzxbg5sa2",
	// "credentials": "arn:aws:iam::123456789012:role/apigAwsProxyRole", "httpMethod":
	// "POST", "passthroughBehavior": "WHEN_NO_MATCH", "requestParameters": {
	// "integration.request.header.Content-Type": "'application/x-amz-json-1.1'" },
	// "requestTemplates": { "application/json": "{\n}" }, "type": "AWS", "uri":
	// "arn:aws:apigateway:us-east-1:kinesis:action/ListStreams", "_embedded": {
	// "integration:responses": { "_links": { "self": { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200",
	// "name": "200", "title": "200" }, "integrationresponse:delete": { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200"
	// }, "integrationresponse:update": { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200"
	// } }, "responseParameters": { "method.response.header.Content-Type":
	// "'application/xml'" }, "responseTemplates": { "application/json":
	// "$util.urlDecode(\"%3CkinesisStreams%3E#foreach($stream in
	// $input.path('$.StreamNames'))%3Cstream%3E%3Cname%3E$stream%3C/name%3E%3C/stream%3E#end%3C/kinesisStreams%3E\")\n"
	// }, "statusCode": "200" } } }, "method:responses": { "_links": { "self": {
	// "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200",
	// "name": "200", "title": "200" }, "methodresponse:delete": { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200" },
	// "methodresponse:update": { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200" } },
	// "responseModels": { "application/json": "Empty" }, "responseParameters": {
	// "method.response.header.Content-Type": false }, "statusCode": "200" } } } If the
	// OPTIONS is enabled on the resource, you can follow the example here to get that
	// method. Just replace the GET of the last path segment in the request URL with
	// OPTIONS.
	ResourceMethods map[string]*types.Method
	// The parent resource's identifier.
	ParentId *string
	// The full path for this resource.
	Path *string
	// The last path segment for this resource.
	PathPart *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents an API resource. Create an API (https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-create-api.html)

type GetResourcesInput

type GetResourcesInput struct {
	Template *bool
	// [Required] The string identifier of the associated RestApi ().
	RestApiId        *string
	TemplateSkipList []*string
	Title            *string
	// A query parameter used to retrieve the specified resources embedded in the
	// returned Resources () resource in the response. This embed parameter value is a
	// list of comma-separated strings. Currently, the request supports only retrieval
	// of the embedded Method () resources this way. The query parameter value must be
	// a single-valued list and contain the "methods" string. For example, GET
	// /restapis/{restapi_id}/resources?embed=methods.
	Embed []*string
	// The current pagination position in the paged result set.
	Position *string
	// The maximum number of returned results per page. The default value is 25 and the
	// maximum value is 500.
	Limit *int32
	Name  *string
}

Request to list information about a collection of resources.

type GetResourcesOutput

type GetResourcesOutput struct {
	// The current page of elements from this collection.
	Items []*types.Resource
	// The current pagination position in the paged result set.
	Position *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents a collection of Resource () resources. Create an API (https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-create-api.html)

type GetRestApiInput

type GetRestApiInput struct {
	Name             *string
	TemplateSkipList []*string
	Title            *string
	Template         *bool
	// [Required] The string identifier of the associated RestApi ().
	RestApiId *string
}

The GET request to list an existing RestApi () defined for your collection.

type GetRestApiOutput

type GetRestApiOutput struct {
	// The API's description.
	Description *string
	// A stringified JSON policy document that applies to this RestApi regardless of
	// the caller and Method () configuration.
	Policy *string
	// The endpoint configuration of this RestApi () showing the endpoint types of the
	// API.
	EndpointConfiguration *types.EndpointConfiguration
	// The source of the API key for metering requests according to a usage plan. Valid
	// values are:
	//
	//     * HEADER to read the API key from the X-API-Key header of a
	// request.
	//
	//     * AUTHORIZER to read the API key from the UsageIdentifierKey from
	// a custom authorizer.
	ApiKeySource types.ApiKeySourceType
	// The API's name.
	Name *string
	// A version identifier for the API.
	Version *string
	// The collection of tags. Each tag element is associated with a given resource.
	Tags map[string]*string
	// The warning messages reported when failonwarnings is turned on during API
	// import.
	Warnings []*string
	// The timestamp when the API was created.
	CreatedDate *time.Time
	// The API's identifier. This identifier is unique across all of your APIs in API
	// Gateway.
	Id *string
	// The list of binary media types supported by the RestApi (). By default, the
	// RestApi () supports only UTF-8-encoded text payloads.
	BinaryMediaTypes []*string
	// A nullable integer that is used to enable compression (with non-negative between
	// 0 and 10485760 (10M) bytes, inclusive) or disable compression (with a null
	// value) on an API. When compression is enabled, compression or decompression is
	// not applied on the payload if the payload size is smaller than this value.
	// Setting it to zero allows compression for any payload size.
	MinimumCompressionSize *int32

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents a REST API. Create an API (https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-create-api.html)

type GetRestApisInput

type GetRestApisInput struct {
	Name *string
	// The maximum number of returned results per page. The default value is 25 and the
	// maximum value is 500.
	Limit            *int32
	TemplateSkipList []*string
	Title            *string
	// The current pagination position in the paged result set.
	Position *string
	Template *bool
}

The GET request to list existing RestApis () defined for your collection.

type GetRestApisOutput

type GetRestApisOutput struct {
	// The current page of elements from this collection.
	Items []*types.RestApi
	// The current pagination position in the paged result set.
	Position *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Contains references to your APIs and links that guide you in how to interact with your collection. A collection offers a paginated view of your APIs. Create an API (https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-create-api.html)

type GetSdkInput

type GetSdkInput struct {
	// [Required] The string identifier of the associated RestApi ().
	RestApiId *string
	// A string-to-string key-value map of query parameters sdkType-dependent
	// properties of the SDK. For sdkType of objectivec or swift, a parameter named
	// classPrefix is required. For sdkType of android, parameters named groupId,
	// artifactId, artifactVersion, and invokerPackage are required. For sdkType of
	// java, parameters named serviceName and javaPackageName are required.
	Parameters map[string]*string
	// [Required] The language for the generated SDK. Currently java, javascript,
	// android, objectivec (for iOS), swift (for iOS), and ruby are supported.
	SdkType *string
	// [Required] The name of the Stage () that the SDK will use.
	StageName *string
}

Request a new generated client SDK for a RestApi () and Stage ().

type GetSdkOutput

type GetSdkOutput struct {
	// The content-disposition header value in the HTTP response.
	ContentDisposition *string
	// The content-type header value in the HTTP response.
	ContentType *string
	// The binary blob response to GetSdk (), which contains the generated SDK.
	Body []byte

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

The binary blob response to GetSdk (), which contains the generated SDK.

type GetSdkTypeInput

type GetSdkTypeInput struct {
	Template         *bool
	TemplateSkipList []*string
	// [Required] The identifier of the queried SdkType () instance.
	Id    *string
	Title *string
	Name  *string
}

Get an SdkType () instance.

type GetSdkTypeOutput

type GetSdkTypeOutput struct {
	// The user-friendly name of an SdkType () instance.
	FriendlyName *string
	// The description of an SdkType ().
	Description *string
	// A list of configuration properties of an SdkType ().
	ConfigurationProperties []*types.SdkConfigurationProperty
	// The identifier of an SdkType () instance.
	Id *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

A type of SDK that API Gateway can generate.

type GetSdkTypesInput

type GetSdkTypesInput struct {
	Template *bool
	Name     *string
	// The maximum number of returned results per page. The default value is 25 and the
	// maximum value is 500.
	Limit *int32
	// The current pagination position in the paged result set.
	Position         *string
	TemplateSkipList []*string
	Title            *string
}

Get the SdkTypes () collection.

type GetSdkTypesOutput

type GetSdkTypesOutput struct {
	// The current page of elements from this collection.
	Items []*types.SdkType

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

The collection of SdkType () instances.

type GetStageInput

type GetStageInput struct {
	// [Required] The name of the Stage () resource to get information about.
	StageName        *string
	Template         *bool
	TemplateSkipList []*string
	Title            *string
	Name             *string
	// [Required] The string identifier of the associated RestApi ().
	RestApiId *string
}

Requests API Gateway to get information about a Stage () resource.

type GetStageOutput

type GetStageOutput struct {
	// The identifier of the Deployment () that the stage points to.
	DeploymentId *string
	// The stage's description.
	Description *string
	// The name of the stage is the first path segment in the Uniform Resource
	// Identifier (URI) of a call to API Gateway. Stage names can only contain
	// alphanumeric characters, hyphens, and underscores. Maximum length is 128
	// characters.
	StageName *string
	// The collection of tags. Each tag element is associated with a given resource.
	Tags map[string]*string
	// The status of the cache cluster for the stage, if enabled.
	CacheClusterStatus types.CacheClusterStatus
	// The identifier of a client certificate for an API stage.
	ClientCertificateId *string
	// Specifies whether a cache cluster is enabled for the stage.
	CacheClusterEnabled *bool
	// Settings for the canary deployment in this stage.
	CanarySettings *types.CanarySettings
	// A map that defines the stage variables for a Stage () resource. Variable names
	// can have alphanumeric and underscore characters, and the values must match
	// [A-Za-z0-9-._~:/?#&=,]+.
	Variables map[string]*string
	// The size of the cache cluster for the stage, if enabled.
	CacheClusterSize types.CacheClusterSize
	// Settings for logging access in this stage.
	AccessLogSettings *types.AccessLogSettings
	// The version of the associated API documentation.
	DocumentationVersion *string
	// The timestamp when the stage last updated.
	LastUpdatedDate *time.Time
	// The timestamp when the stage was created.
	CreatedDate *time.Time
	// Specifies whether active tracing with X-ray is enabled for the Stage ().
	TracingEnabled *bool
	// The ARN of the WebAcl associated with the Stage ().
	WebAclArn *string
	// A map that defines the method settings for a Stage () resource. Keys (designated
	// as /{method_setting_key below) are method paths defined as
	// {resource_path}/{http_method} for an individual method override, or /\*/\* for
	// overriding all methods in the stage.
	MethodSettings map[string]*types.MethodSetting

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents a unique identifier for a version of a deployed RestApi () that is callable by users. Deploy an API (https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-deploy-api.html)

type GetStagesInput

type GetStagesInput struct {
	// The stages' deployment identifiers.
	DeploymentId     *string
	TemplateSkipList []*string
	// [Required] The string identifier of the associated RestApi ().
	RestApiId *string
	Template  *bool
	Title     *string
	Name      *string
}

Requests API Gateway to get information about one or more Stage () resources.

type GetStagesOutput

type GetStagesOutput struct {
	// The current page of elements from this collection.
	Item []*types.Stage

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

A list of Stage () resources that are associated with the ApiKey () resource. Deploying API in Stages (https://docs.aws.amazon.com/apigateway/latest/developerguide/stages.html)

type GetTagsInput

type GetTagsInput struct {
	Template         *bool
	Title            *string
	TemplateSkipList []*string
	// (Not currently supported) The maximum number of returned results per page. The
	// default value is 25 and the maximum value is 500.
	Limit *int32
	Name  *string
	// [Required] The ARN of a resource that can be tagged.
	ResourceArn *string
	// (Not currently supported) The current pagination position in the paged result
	// set.
	Position *string
}

Gets the Tags () collection for a given resource.

type GetTagsOutput

type GetTagsOutput struct {
	// The collection of tags. Each tag element is associated with a given resource.
	Tags map[string]*string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

The collection of tags. Each tag element is associated with a given resource.

type GetUsageInput

type GetUsageInput struct {
	// The current pagination position in the paged result set.
	Position *string
	Template *bool
	// [Required] The ending date (e.g., 2016-12-31) of the usage data.
	EndDate *string
	// [Required] The starting date (e.g., 2016-01-01) of the usage data.
	StartDate *string
	// [Required] The Id of the usage plan associated with the usage data.
	UsagePlanId      *string
	TemplateSkipList []*string
	Title            *string
	// The Id of the API key associated with the resultant usage data.
	KeyId *string
	// The maximum number of returned results per page. The default value is 25 and the
	// maximum value is 500.
	Limit *int32
	Name  *string
}

The GET request to get the usage data of a usage plan in a specified time interval.

type GetUsageOutput

type GetUsageOutput struct {
	// The ending date of the usage data.
	EndDate *string
	// The plan Id associated with this usage data.
	UsagePlanId *string
	// The starting date of the usage data.
	StartDate *string
	// The usage data, as daily logs of used and remaining quotas, over the specified
	// time interval indexed over the API keys in a usage plan. For example, {...,
	// "values" : { "{api_key}" : [ [0, 100], [10, 90], [100, 10]]}, where {api_key}
	// stands for an API key value and the daily log entry is of the format [used
	// quota, remaining quota].
	Items map[string][][]*int64
	// The current pagination position in the paged result set.
	Position *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents the usage data of a usage plan. Create and Use Usage Plans (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-api-usage-plans.html), Manage Usage in a Usage Plan (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-create-usage-plans-with-console.html#api-gateway-usage-plan-manage-usage)

type GetUsagePlanInput

type GetUsagePlanInput struct {
	// [Required] The identifier of the UsagePlan () resource to be retrieved.
	UsagePlanId      *string
	Template         *bool
	Name             *string
	Title            *string
	TemplateSkipList []*string
}

The GET request to get a usage plan of a given plan identifier.

type GetUsagePlanKeyInput

type GetUsagePlanKeyInput struct {
	Template *bool
	Name     *string
	// [Required] The key Id of the to-be-retrieved UsagePlanKey () resource
	// representing a plan customer.
	KeyId            *string
	TemplateSkipList []*string
	Title            *string
	// [Required] The Id of the UsagePlan () resource representing the usage plan
	// containing the to-be-retrieved UsagePlanKey () resource representing a plan
	// customer.
	UsagePlanId *string
}

The GET request to get a usage plan key of a given key identifier.

type GetUsagePlanKeyOutput

type GetUsagePlanKeyOutput struct {
	// The name of a usage plan key.
	Name *string
	// The value of a usage plan key.
	Value *string
	// The Id of a usage plan key.
	Id *string
	// The type of a usage plan key. Currently, the valid key type is API_KEY.
	Type *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents a usage plan key to identify a plan customer. To associate an API stage with a selected API key in a usage plan, you must create a UsagePlanKey resource to represent the selected ApiKey (). " Create and Use Usage Plans (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-api-usage-plans.html)

type GetUsagePlanKeysInput

type GetUsagePlanKeysInput struct {
	Name *string
	// The maximum number of returned results per page. The default value is 25 and the
	// maximum value is 500.
	Limit *int32
	// A query parameter specifying the name of the to-be-returned usage plan keys.
	NameQuery *string
	Title     *string
	// The current pagination position in the paged result set.
	Position         *string
	TemplateSkipList []*string
	// [Required] The Id of the UsagePlan () resource representing the usage plan
	// containing the to-be-retrieved UsagePlanKey () resource representing a plan
	// customer.
	UsagePlanId *string
	Template    *bool
}

The GET request to get all the usage plan keys representing the API keys added to a specified usage plan.

type GetUsagePlanKeysOutput

type GetUsagePlanKeysOutput struct {
	// The current page of elements from this collection.
	Items []*types.UsagePlanKey
	// The current pagination position in the paged result set.
	Position *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents the collection of usage plan keys added to usage plans for the associated API keys and, possibly, other types of keys. Create and Use Usage Plans (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-api-usage-plans.html)

type GetUsagePlanOutput

type GetUsagePlanOutput struct {
	// The identifier of a UsagePlan () resource.
	Id *string
	// The request throttle limits of a usage plan.
	Throttle *types.ThrottleSettings
	// The name of a usage plan.
	Name *string
	// The associated API stages of a usage plan.
	ApiStages []*types.ApiStage
	// The AWS Markeplace product identifier to associate with the usage plan as a SaaS
	// product on AWS Marketplace.
	ProductCode *string
	// The maximum number of permitted requests per a given unit time interval.
	Quota *types.QuotaSettings
	// The collection of tags. Each tag element is associated with a given resource.
	Tags map[string]*string
	// The description of a usage plan.
	Description *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents a usage plan than can specify who can assess associated API stages with specified request limits and quotas. In a usage plan, you associate an API by specifying the API's Id and a stage name of the specified API. You add plan customers by adding API keys to the plan. Create and Use Usage Plans (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-api-usage-plans.html)

type GetUsagePlansInput

type GetUsagePlansInput struct {
	Template         *bool
	TemplateSkipList []*string
	Title            *string
	// The current pagination position in the paged result set.
	Position *string
	// The identifier of the API key associated with the usage plans.
	KeyId *string
	Name  *string
	// The maximum number of returned results per page. The default value is 25 and the
	// maximum value is 500.
	Limit *int32
}

The GET request to get all the usage plans of the caller's account.

type GetUsagePlansOutput

type GetUsagePlansOutput struct {
	// The current page of elements from this collection.
	Items []*types.UsagePlan
	// The current pagination position in the paged result set.
	Position *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents a collection of usage plans for an AWS account. Create and Use Usage Plans (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-api-usage-plans.html)

type GetVpcLinkInput

type GetVpcLinkInput struct {
	Template *bool
	// [Required] The identifier of the VpcLink (). It is used in an Integration () to
	// reference this VpcLink ().
	VpcLinkId        *string
	Name             *string
	TemplateSkipList []*string
	Title            *string
}

Gets a specified VPC link under the caller's account in a region.

type GetVpcLinkOutput

type GetVpcLinkOutput struct {
	// The identifier of the VpcLink (). It is used in an Integration () to reference
	// this VpcLink ().
	Id *string
	// The name used to label and identify the VPC link.
	Name *string
	// The description of the VPC link.
	Description *string
	// A description about the VPC link status.
	StatusMessage *string
	// The ARN of the network load balancer of the VPC targeted by the VPC link. The
	// network load balancer must be owned by the same AWS account of the API owner.
	TargetArns []*string
	// The status of the VPC link. The valid values are AVAILABLE, PENDING, DELETING,
	// or FAILED. Deploying an API will wait if the status is PENDING and will fail if
	// the status is DELETING.
	Status types.VpcLinkStatus
	// The collection of tags. Each tag element is associated with a given resource.
	Tags map[string]*string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

An API Gateway VPC link for a RestApi () to access resources in an Amazon Virtual Private Cloud (VPC). To enable access to a resource in an Amazon Virtual Private Cloud through Amazon API Gateway, you, as an API developer, create a VpcLink () resource targeted for one or more network load balancers of the VPC and then integrate an API method with a private integration that uses the VpcLink (). The private integration has an integration type of HTTP or HTTP_PROXY and has a connection type of VPC_LINK. The integration uses the connectionId property to identify the VpcLink () used.

type GetVpcLinksInput

type GetVpcLinksInput struct {
	Template         *bool
	TemplateSkipList []*string
	Title            *string
	// The current pagination position in the paged result set.
	Position *string
	Name     *string
	// The maximum number of returned results per page. The default value is 25 and the
	// maximum value is 500.
	Limit *int32
}

Gets the VpcLinks () collection under the caller's account in a selected region.

type GetVpcLinksOutput

type GetVpcLinksOutput struct {
	// The current page of elements from this collection.
	Items []*types.VpcLink
	// The current pagination position in the paged result set.
	Position *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

The collection of VPC links under the caller's account in a region. Getting Started with Private Integrations (https://docs.aws.amazon.com/apigateway/latest/developerguide/getting-started-with-private-integration.html), Set up Private Integrations (https://docs.aws.amazon.com/apigateway/latest/developerguide/set-up-private-integration.html) </div>

type HTTPClient

type HTTPClient interface {
	Do(*http.Request) (*http.Response, error)
}

type HTTPSignerV4

type HTTPSignerV4 interface {
	SignHTTP(ctx context.Context, credentials aws.Credentials, r *http.Request, payloadHash string, service string, region string, signingTime time.Time) error
}

type ImportApiKeysInput

type ImportApiKeysInput struct {
	Name *string
	// A query parameter to specify the input format to imported API keys. Currently,
	// only the csv format is supported.
	Format           types.ApiKeysFormat
	Template         *bool
	TemplateSkipList []*string
	// A query parameter to indicate whether to rollback ApiKey () importation (true)
	// or not (false) when error is encountered.
	FailOnWarnings *bool
	Title          *string
}

The POST request to import API keys from an external source, such as a CSV-formatted file.

type ImportApiKeysOutput

type ImportApiKeysOutput struct {
	// A list of all the ApiKey () identifiers.
	Ids []*string
	// A list of warning messages.
	Warnings []*string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

The identifier of an ApiKey () used in a UsagePlan ().

type ImportDocumentationPartsInput

type ImportDocumentationPartsInput struct {
	Name *string
	// [Required] The string identifier of the associated RestApi ().
	RestApiId *string
	Title     *string
	// A query parameter to specify whether to rollback the documentation importation
	// (true) or not (false) when a warning is encountered. The default value is false.
	FailOnWarnings   *bool
	TemplateSkipList []*string
	Template         *bool
	// A query parameter to indicate whether to overwrite (OVERWRITE) any existing
	// DocumentationParts () definition or to merge (MERGE) the new definition into the
	// existing one. The default value is MERGE.
	Mode types.PutMode
}

Import documentation parts from an external (e.g., OpenAPI) definition file.

type ImportDocumentationPartsOutput

type ImportDocumentationPartsOutput struct {
	// A list of the returned documentation part identifiers.
	Ids []*string
	// A list of warning messages reported during import of documentation parts.
	Warnings []*string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

A collection of the imported DocumentationPart () identifiers. This is used to return the result when documentation parts in an external (e.g., OpenAPI) file are imported into API Gateway Documenting an API (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api.html), documentationpart:import (https://docs.aws.amazon.com/apigateway/api-reference/link-relation/documentationpart-import/), DocumentationPart ()

type ImportRestApiInput

type ImportRestApiInput struct {
	// A query parameter to indicate whether to rollback the API creation (true) or not
	// (false) when a warning is encountered. The default value is false.
	FailOnWarnings *bool
	Template       *bool
	// A key-value map of context-specific query string parameters specifying the
	// behavior of different API importing operations. The following shows
	// operation-specific parameters and their supported values. To exclude
	// DocumentationParts () from the import, set parameters as ignore=documentation.
	// To configure the endpoint type, set parameters as
	// endpointConfigurationTypes=EDGE, endpointConfigurationTypes=REGIONAL, or
	// endpointConfigurationTypes=PRIVATE. The default endpoint type is EDGE. To handle
	// imported basepath, set parameters as basepath=ignore, basepath=prepend or
	// basepath=split. For example, the AWS CLI command to exclude documentation from
	// the imported API is: aws apigateway import-rest-api --parameters
	// ignore=documentation --body 'file:///path/to/imported-api-body.json' The AWS CLI
	// command to set the regional endpoint on the imported API is: aws apigateway
	// import-rest-api --parameters endpointConfigurationTypes=REGIONAL --body
	// 'file:///path/to/imported-api-body.json'
	Parameters       map[string]*string
	Name             *string
	TemplateSkipList []*string
	Title            *string
}

A POST request to import an API to API Gateway using an input of an API definition file.

type ImportRestApiOutput

type ImportRestApiOutput struct {
	// The API's description.
	Description *string
	// A stringified JSON policy document that applies to this RestApi regardless of
	// the caller and Method () configuration.
	Policy *string
	// The endpoint configuration of this RestApi () showing the endpoint types of the
	// API.
	EndpointConfiguration *types.EndpointConfiguration
	// The source of the API key for metering requests according to a usage plan. Valid
	// values are:
	//
	//     * HEADER to read the API key from the X-API-Key header of a
	// request.
	//
	//     * AUTHORIZER to read the API key from the UsageIdentifierKey from
	// a custom authorizer.
	ApiKeySource types.ApiKeySourceType
	// The API's name.
	Name *string
	// A version identifier for the API.
	Version *string
	// The collection of tags. Each tag element is associated with a given resource.
	Tags map[string]*string
	// The warning messages reported when failonwarnings is turned on during API
	// import.
	Warnings []*string
	// The timestamp when the API was created.
	CreatedDate *time.Time
	// The API's identifier. This identifier is unique across all of your APIs in API
	// Gateway.
	Id *string
	// The list of binary media types supported by the RestApi (). By default, the
	// RestApi () supports only UTF-8-encoded text payloads.
	BinaryMediaTypes []*string
	// A nullable integer that is used to enable compression (with non-negative between
	// 0 and 10485760 (10M) bytes, inclusive) or disable compression (with a null
	// value) on an API. When compression is enabled, compression or decompression is
	// not applied on the payload if the payload size is smaller than this value.
	// Setting it to zero allows compression for any payload size.
	MinimumCompressionSize *int32

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents a REST API. Create an API (https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-create-api.html)

type Options

type Options struct {
	// Set of options to modify how an operation is invoked. These apply to all
	// operations invoked for this client. Use functional options on operation call to
	// modify this list for per operation behavior.
	APIOptions []func(*middleware.Stack) error

	// The credentials object to use when signing requests.
	Credentials aws.CredentialsProvider

	// The endpoint options to be used when attempting to resolve an endpoint.
	EndpointOptions ResolverOptions

	// The service endpoint resolver.
	EndpointResolver EndpointResolver

	// Signature Version 4 (SigV4) Signer
	HTTPSignerV4 HTTPSignerV4

	// The region to send requests to. (Required)
	Region string

	// Retryer guides how HTTP requests should be retried in case of recoverable
	// failures. When nil the API client will use a default retryer.
	Retryer retry.Retryer

	// The HTTP client to invoke API calls with. Defaults to client's default HTTP
	// implementation if nil.
	HTTPClient HTTPClient
}

func (Options) Copy

func (o Options) Copy() Options

Copy creates a clone where the APIOptions list is deep copied.

func (Options) GetCredentials

func (o Options) GetCredentials() aws.CredentialsProvider

func (Options) GetEndpointOptions

func (o Options) GetEndpointOptions() ResolverOptions

func (Options) GetEndpointResolver

func (o Options) GetEndpointResolver() EndpointResolver

func (Options) GetHTTPSignerV4

func (o Options) GetHTTPSignerV4() HTTPSignerV4

func (Options) GetRegion

func (o Options) GetRegion() string

func (Options) GetRetryer

func (o Options) GetRetryer() retry.Retryer

type PutGatewayResponseInput

type PutGatewayResponseInput struct {
	// [Required] The response type of the associated GatewayResponse (). Valid values
	// are
	//
	//     * ACCESS_DENIED
	//
	//     * API_CONFIGURATION_ERROR
	//
	//     *
	// AUTHORIZER_FAILURE
	//
	//     * AUTHORIZER_CONFIGURATION_ERROR
	//
	//     *
	// BAD_REQUEST_PARAMETERS
	//
	//     * BAD_REQUEST_BODY
	//
	//     * DEFAULT_4XX
	//
	//     *
	// DEFAULT_5XX
	//
	//     * EXPIRED_TOKEN
	//
	//     * INVALID_SIGNATURE
	//
	//     *
	// INTEGRATION_FAILURE
	//
	//     * INTEGRATION_TIMEOUT
	//
	//     * INVALID_API_KEY
	//
	//     *
	// MISSING_AUTHENTICATION_TOKEN
	//
	//     * QUOTA_EXCEEDED
	//
	//     * REQUEST_TOO_LARGE
	//
	//
	// * RESOURCE_NOT_FOUND
	//
	//     * THROTTLED
	//
	//     * UNAUTHORIZED
	//
	//     *
	// UNSUPPORTED_MEDIA_TYPE
	ResponseType     types.GatewayResponseType
	TemplateSkipList []*string
	Template         *bool
	// [Required] The string identifier of the associated RestApi ().
	RestApiId *string
	Name      *string
	Title     *string
	// Response templates of the GatewayResponse () as a string-to-string map of
	// key-value pairs.
	ResponseTemplates map[string]*string
	// The HTTP status code of the GatewayResponse ().
	StatusCode *string
	// Response parameters (paths, query strings and headers) of the GatewayResponse ()
	// as a string-to-string map of key-value pairs.
	ResponseParameters map[string]*string
}

Creates a customization of a GatewayResponse () of a specified response type and status code on the given RestApi ().

type PutGatewayResponseOutput

type PutGatewayResponseOutput struct {
	// The response type of the associated GatewayResponse (). Valid values are
	//
	//     *
	// ACCESS_DENIED
	//
	//     * API_CONFIGURATION_ERROR
	//
	//     * AUTHORIZER_FAILURE
	//
	//     *
	// AUTHORIZER_CONFIGURATION_ERROR
	//
	//     * BAD_REQUEST_PARAMETERS
	//
	//     *
	// BAD_REQUEST_BODY
	//
	//     * DEFAULT_4XX
	//
	//     * DEFAULT_5XX
	//
	//     * EXPIRED_TOKEN
	//
	//
	// * INVALID_SIGNATURE
	//
	//     * INTEGRATION_FAILURE
	//
	//     * INTEGRATION_TIMEOUT
	//
	//     *
	// INVALID_API_KEY
	//
	//     * MISSING_AUTHENTICATION_TOKEN
	//
	//     * QUOTA_EXCEEDED
	//
	//     *
	// REQUEST_TOO_LARGE
	//
	//     * RESOURCE_NOT_FOUND
	//
	//     * THROTTLED
	//
	//     *
	// UNAUTHORIZED
	//
	//     * UNSUPPORTED_MEDIA_TYPE
	ResponseType types.GatewayResponseType
	// A Boolean flag to indicate whether this GatewayResponse () is the default
	// gateway response (true) or not (false). A default gateway response is one
	// generated by API Gateway without any customization by an API developer.
	DefaultResponse *bool
	// Response parameters (paths, query strings and headers) of the GatewayResponse ()
	// as a string-to-string map of key-value pairs.
	ResponseParameters map[string]*string
	// Response templates of the GatewayResponse () as a string-to-string map of
	// key-value pairs.
	ResponseTemplates map[string]*string
	// The HTTP status code for this GatewayResponse ().
	StatusCode *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

A gateway response of a given response type and status code, with optional response parameters and mapping templates. For more information about valid gateway response types, see Gateway Response Types Supported by API Gateway (https://docs.aws.amazon.com/apigateway/latest/developerguide/supported-gateway-response-types.html) Example: Get a Gateway Response of a given response type

Request

This example shows how to get a gateway response of the MISSING_AUTHENTICATION_TOKEN type. GET /restapis/o81lxisefl/gatewayresponses/MISSING_AUTHENTICATION_TOKEN HTTP/1.1 Host: beta-apigateway.us-east-1.amazonaws.com Content-Type: application/json X-Amz-Date: 20170503T202516Z Authorization: AWS4-HMAC-SHA256 Credential={access-key-id}/20170503/us-east-1/apigateway/aws4_request, SignedHeaders=content-type;host;x-amz-date, Signature=1b52460e3159c1a26cff29093855d50ea141c1c5b937528fecaf60f51129697a Cache-Control: no-cache Postman-Token: 3b2a1ce9-c848-2e26-2e2f-9c2caefbed45 The response type is specified as a URL path. Response

The successful operation returns the 200 OK status code and a payload similar to the following: { "_links": { "curies": { "href": "http://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-gatewayresponse-{rel}.html", "name": "gatewayresponse", "templated": true }, "self": { "href": "/restapis/o81lxisefl/gatewayresponses/MISSING_AUTHENTICATION_TOKEN" }, "gatewayresponse:delete": { "href": "/restapis/o81lxisefl/gatewayresponses/MISSING_AUTHENTICATION_TOKEN" }, "gatewayresponse:put": { "href": "/restapis/o81lxisefl/gatewayresponses/{response_type}", "templated": true }, "gatewayresponse:update": { "href": "/restapis/o81lxisefl/gatewayresponses/MISSING_AUTHENTICATION_TOKEN" } }, "defaultResponse": false, "responseParameters": { "gatewayresponse.header.x-request-path": "method.request.path.petId", "gatewayresponse.header.Access-Control-Allow-Origin": "'a.b.c'", "gatewayresponse.header.x-request-query": "method.request.querystring.q", "gatewayresponse.header.x-request-header": "method.request.header.Accept" }, "responseTemplates": { "application/json": "{\n \"message\": $context.error.messageString,\n \"type\": \"$context.error.responseType\",\n \"stage\": \"$context.stage\",\n \"resourcePath\": \"$context.resourcePath\",\n \"stageVariables.a\": \"$stageVariables.a\",\n \"statusCode\": \"'404'\"\n}" }, "responseType": "MISSING_AUTHENTICATION_TOKEN", "statusCode": "404" }

</div>

<div class="seeAlso"> <a href="https://docs.aws.amazon.com/apigateway/latest/developerguide/customize-gateway-responses.html">Customize Gateway Responses</a> </div>

type PutIntegrationInput

type PutIntegrationInput struct {
	// [Required] Specifies a put integration request's resource ID.
	ResourceId *string
	Template   *bool
	Name       *string
	// [Required] The string identifier of the associated RestApi ().
	RestApiId *string
	// [Required] Specifies a put integration request's HTTP method.
	HttpMethod       *string
	TemplateSkipList []*string
	Title            *string
	// Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000
	// milliseconds or 29 seconds.
	TimeoutInMillis *int32
	// Specifies how to handle request payload content type conversions. Supported
	// values are CONVERT_TO_BINARY and CONVERT_TO_TEXT, with the following
	// behaviors:
	//
	//     * CONVERT_TO_BINARY: Converts a request payload from a
	// Base64-encoded string to the corresponding binary blob.
	//
	//     * CONVERT_TO_TEXT:
	// Converts a request payload from a binary blob to a Base64-encoded string.
	//
	// If
	// this property is not defined, the request payload will be passed through from
	// the method request to integration request without modification, provided that
	// the passthroughBehavior is configured to support payload pass-through.
	ContentHandling types.ContentHandlingStrategy
	// A key-value map specifying request parameters that are passed from the method
	// request to the back end. The key is an integration request parameter name and
	// the associated value is a method request parameter value or static value that
	// must be enclosed within single quotes and pre-encoded as required by the back
	// end. The method request parameter value must match the pattern of
	// method.request.{location}.{name}, where location is querystring, path, or header
	// and name must be a valid and unique method request parameter name.
	RequestParameters map[string]*string
	// Specifies whether credentials are required for a put integration.
	Credentials *string
	// Specifies the pass-through behavior for incoming requests based on the
	// Content-Type header in the request, and the available mapping templates
	// specified as the requestTemplates property on the Integration resource. There
	// are three valid values: WHEN_NO_MATCH, WHEN_NO_TEMPLATES, and NEVER.
	//
	//     *
	// WHEN_NO_MATCH passes the request body for unmapped content types through to the
	// integration back end without transformation.
	//
	//     * NEVER rejects unmapped
	// content types with an HTTP 415 'Unsupported Media Type' response.
	//
	//     *
	// WHEN_NO_TEMPLATES allows pass-through when the integration has NO content types
	// mapped to templates. However if there is at least one content type defined,
	// unmapped content types will be rejected with the same 415 response.
	PassthroughBehavior *string
	// Represents a map of Velocity templates that are applied on the request payload
	// based on the value of the Content-Type header sent by the client. The content
	// type value is the key in this map, and the template (as a String) is the value.
	RequestTemplates map[string]*string
	// The (id
	// (https://docs.aws.amazon.com/apigateway/api-reference/resource/vpc-link/#id)) of
	// the VpcLink () used for the integration when connectionType=VPC_LINK and
	// undefined, otherwise.
	ConnectionId *string
	// A list of request parameters whose values API Gateway caches. To be valid values
	// for cacheKeyParameters, these parameters must also be specified for Method
	// ()requestParameters.
	CacheKeyParameters []*string
	// [Required] Specifies a put integration input's type.
	Type      types.IntegrationType
	TlsConfig *types.TlsConfig
	// Specifies Uniform Resource Identifier (URI) of the integration endpoint.
	//
	//     *
	// For HTTP or HTTP_PROXY integrations, the URI must be a fully formed, encoded
	// HTTP(S) URL according to the RFC-3986 specification
	// (https://en.wikipedia.org/wiki/Uniform_Resource_Identifier), for either standard
	// integration, where connectionType is not VPC_LINK, or private integration, where
	// connectionType is VPC_LINK. For a private HTTP integration, the URI is not used
	// for routing.
	//
	//     * For AWS or AWS_PROXY integrations, the URI is of the form
	// arn:aws:apigateway:{region}:{subdomain.service|service}:path|action/{service_api}.
	// Here, {Region} is the API Gateway region (e.g., us-east-1); {service} is the
	// name of the integrated AWS service (e.g., s3); and {subdomain} is a designated
	// subdomain supported by certain AWS service for fast host-name lookup. action can
	// be used for an AWS service action-based API, using an
	// Action={name}&{p1}={v1}&p2={v2}... query string. The ensuing {service_api}
	// refers to a supported action {name} plus any required input parameters.
	// Alternatively, path can be used for an AWS service path-based API. The ensuing
	// service_api refers to the path to an AWS service resource, including the region
	// of the integrated AWS service, if applicable. For example, for integration with
	// the S3 API of GetObject
	// (https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectGET.html), the uri
	// can be either
	// arn:aws:apigateway:us-west-2:s3:action/GetObject&Bucket={bucket}&Key={key} or
	// arn:aws:apigateway:us-west-2:s3:path/{bucket}/{key}
	Uri *string
	// Specifies a put integration HTTP method. When the integration type is HTTP or
	// AWS, this field is required.
	IntegrationHttpMethod *string
	// Specifies a group of related cached parameters. By default, API Gateway uses the
	// resource ID as the cacheNamespace. You can specify the same cacheNamespace
	// across resources to return the same cached data for requests to different
	// resources.
	CacheNamespace *string
	// The type of the network connection to the integration endpoint. The valid value
	// is INTERNET for connections through the public routable internet or VPC_LINK for
	// private connections between API Gateway and a network load balancer in a VPC.
	// The default value is INTERNET.
	ConnectionType types.ConnectionType
}

Sets up a method's integration.

type PutIntegrationOutput

type PutIntegrationOutput struct {
	// Specifies a group of related cached parameters. By default, API Gateway uses the
	// resource ID as the cacheNamespace. You can specify the same cacheNamespace
	// across resources to return the same cached data for requests to different
	// resources.
	CacheNamespace *string
	// Specifies the integration's HTTP method type.
	HttpMethod *string
	// Specifies an API method integration type. The valid value is one of the
	// following:
	//
	//     * AWS: for integrating the API method request with an AWS
	// service action, including the Lambda function-invoking action. With the Lambda
	// function-invoking action, this is referred to as the Lambda custom integration.
	// With any other AWS service action, this is known as AWS integration.
	//
	//     *
	// AWS_PROXY: for integrating the API method request with the Lambda
	// function-invoking action with the client request passed through as-is. This
	// integration is also referred to as the Lambda proxy integration.
	//
	//     * HTTP:
	// for integrating the API method request with an HTTP endpoint, including a
	// private HTTP endpoint within a VPC. This integration is also referred to as the
	// HTTP custom integration.
	//
	//     * HTTP_PROXY: for integrating the API method
	// request with an HTTP endpoint, including a private HTTP endpoint within a VPC,
	// with the client request passed through as-is. This is also referred to as the
	// HTTP proxy integration.
	//
	//     * MOCK: for integrating the API method request with
	// API Gateway as a "loop-back" endpoint without invoking any backend.
	//
	// For the
	// HTTP and HTTP proxy integrations, each integration can specify a protocol
	// (http/https), port and path. Standard 80 and 443 ports are supported as well as
	// custom ports above 1024. An HTTP or HTTP proxy integration with a connectionType
	// of VPC_LINK is referred to as a private integration and uses a VpcLink () to
	// connect API Gateway to a network load balancer of a VPC.
	Type types.IntegrationType
	// Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000
	// milliseconds or 29 seconds.
	TimeoutInMillis *int32
	// Specifies Uniform Resource Identifier (URI) of the integration endpoint.
	//
	//     *
	// For HTTP or HTTP_PROXY integrations, the URI must be a fully formed, encoded
	// HTTP(S) URL according to the RFC-3986 specification
	// (https://en.wikipedia.org/wiki/Uniform_Resource_Identifier), for either standard
	// integration, where connectionType is not VPC_LINK, or private integration, where
	// connectionType is VPC_LINK. For a private HTTP integration, the URI is not used
	// for routing.
	//
	//     * For AWS or AWS_PROXY integrations, the URI is of the form
	// arn:aws:apigateway:{region}:{subdomain.service|service}:path|action/{service_api}.
	// Here, {Region} is the API Gateway region (e.g., us-east-1); {service} is the
	// name of the integrated AWS service (e.g., s3); and {subdomain} is a designated
	// subdomain supported by certain AWS service for fast host-name lookup. action can
	// be used for an AWS service action-based API, using an
	// Action={name}&{p1}={v1}&p2={v2}... query string. The ensuing {service_api}
	// refers to a supported action {name} plus any required input parameters.
	// Alternatively, path can be used for an AWS service path-based API. The ensuing
	// service_api refers to the path to an AWS service resource, including the region
	// of the integrated AWS service, if applicable. For example, for integration with
	// the S3 API of GetObject
	// (https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectGET.html), the uri
	// can be either
	// arn:aws:apigateway:us-west-2:s3:action/GetObject&Bucket={bucket}&Key={key} or
	// arn:aws:apigateway:us-west-2:s3:path/{bucket}/{key}
	Uri *string
	// The type of the network connection to the integration endpoint. The valid value
	// is INTERNET for connections through the public routable internet or VPC_LINK for
	// private connections between API Gateway and a network load balancer in a VPC.
	// The default value is INTERNET.
	ConnectionType types.ConnectionType
	// A key-value map specifying request parameters that are passed from the method
	// request to the back end. The key is an integration request parameter name and
	// the associated value is a method request parameter value or static value that
	// must be enclosed within single quotes and pre-encoded as required by the back
	// end. The method request parameter value must match the pattern of
	// method.request.{location}.{name}, where location is querystring, path, or header
	// and name must be a valid and unique method request parameter name.
	RequestParameters map[string]*string
	// Represents a map of Velocity templates that are applied on the request payload
	// based on the value of the Content-Type header sent by the client. The content
	// type value is the key in this map, and the template (as a String) is the value.
	RequestTemplates map[string]*string
	// A list of request parameters whose values API Gateway caches. To be valid values
	// for cacheKeyParameters, these parameters must also be specified for Method
	// ()requestParameters.
	CacheKeyParameters []*string
	// The (id
	// (https://docs.aws.amazon.com/apigateway/api-reference/resource/vpc-link/#id)) of
	// the VpcLink () used for the integration when connectionType=VPC_LINK and
	// undefined, otherwise.
	ConnectionId *string
	// Specifies how the method request body of an unmapped content type will be passed
	// through the integration request to the back end without transformation. A
	// content type is unmapped if no mapping template is defined in the integration or
	// the content type does not match any of the mapped content types, as specified in
	// requestTemplates. The valid value is one of the following:
	//
	//     * WHEN_NO_MATCH:
	// passes the method request body through the integration request to the back end
	// without transformation when the method request content type does not match any
	// content type associated with the mapping templates defined in the integration
	// request.
	//
	//     * WHEN_NO_TEMPLATES: passes the method request body through the
	// integration request to the back end without transformation when no mapping
	// template is defined in the integration request. If a template is defined when
	// this option is selected, the method request of an unmapped content-type will be
	// rejected with an HTTP 415 Unsupported Media Type response.
	//
	//     * NEVER: rejects
	// the method request with an HTTP 415 Unsupported Media Type response when either
	// the method request content type does not match any content type associated with
	// the mapping templates defined in the integration request or no mapping template
	// is defined in the integration request.
	PassthroughBehavior *string
	// Specifies the TLS configuration for an integration.
	TlsConfig *types.TlsConfig
	// Specifies the credentials required for the integration, if any. For AWS
	// integrations, three options are available. To specify an IAM Role for API
	// Gateway to assume, use the role's Amazon Resource Name (ARN). To require that
	// the caller's identity be passed through from the request, specify the string
	// arn:aws:iam::\*:user/\*. To use resource-based permissions on supported AWS
	// services, specify null.
	Credentials *string
	// Specifies how to handle request payload content type conversions. Supported
	// values are CONVERT_TO_BINARY and CONVERT_TO_TEXT, with the following
	// behaviors:
	//
	//     * CONVERT_TO_BINARY: Converts a request payload from a
	// Base64-encoded string to the corresponding binary blob.
	//
	//     * CONVERT_TO_TEXT:
	// Converts a request payload from a binary blob to a Base64-encoded string.
	//
	// If
	// this property is not defined, the request payload will be passed through from
	// the method request to integration request without modification, provided that
	// the passthroughBehavior is configured to support payload pass-through.
	ContentHandling types.ContentHandlingStrategy
	// Specifies the integration's responses.
	// Example: Get integration responses of a
	// method
	//
	// Request
	//
	//     GET
	// /restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200
	// HTTP/1.1 Content-Type: application/json Host: apigateway.us-east-1.amazonaws.com
	// X-Amz-Date: 20160607T191449Z Authorization: AWS4-HMAC-SHA256
	// Credential={access_key_ID}/20160607/us-east-1/apigateway/aws4_request,
	// SignedHeaders=content-type;host;x-amz-date, Signature={sig4_hash}
	//
	// Response
	//
	// The
	// successful response returns 200 OK status and a payload as follows: { "_links":
	// { "curies": { "href":
	// "https://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-integration-response-{rel}.html",
	// "name": "integrationresponse", "templated": true }, "self": { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200",
	// "title": "200" }, "integrationresponse:delete": { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200"
	// }, "integrationresponse:update": { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200"
	// } }, "responseParameters": { "method.response.header.Content-Type":
	// "'application/xml'" }, "responseTemplates": { "application/json":
	// "$util.urlDecode(\"%3CkinesisStreams%3E#foreach($stream in
	// $input.path('$.StreamNames'))%3Cstream%3E%3Cname%3E$stream%3C/name%3E%3C/stream%3E#end%3C/kinesisStreams%3E\")\n"
	// }, "statusCode": "200" }Creating an API
	// (https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-create-api.html)
	IntegrationResponses map[string]*types.IntegrationResponse

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents an HTTP, HTTP_PROXY, AWS, AWS_PROXY, or Mock integration. In the API Gateway console, the built-in Lambda integration is an AWS integration. Creating an API (https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-create-api.html)

type PutIntegrationResponseInput

type PutIntegrationResponseInput struct {
	// [Required] Specifies the status code that is used to map the integration
	// response to an existing MethodResponse ().
	StatusCode *string
	// [Required] Specifies a put integration response request's resource identifier.
	ResourceId *string
	Template   *bool
	// [Required] The string identifier of the associated RestApi ().
	RestApiId        *string
	TemplateSkipList []*string
	Title            *string
	// [Required] Specifies a put integration response request's HTTP method.
	HttpMethod *string
	Name       *string
	// A key-value map specifying response parameters that are passed to the method
	// response from the back end. The key is a method response header parameter name
	// and the mapped value is an integration response header value, a static value
	// enclosed within a pair of single quotes, or a JSON expression from the
	// integration response body. The mapping key must match the pattern of
	// method.response.header.{name}, where name is a valid and unique header name. The
	// mapped non-static value must match the pattern of
	// integration.response.header.{name} or
	// integration.response.body.{JSON-expression}, where name must be a valid and
	// unique response header name and JSON-expression a valid JSON expression without
	// the $ prefix.
	ResponseParameters map[string]*string
	// Specifies a put integration response's templates.
	ResponseTemplates map[string]*string
	// Specifies the selection pattern of a put integration response.
	SelectionPattern *string
	// Specifies how to handle response payload content type conversions. Supported
	// values are CONVERT_TO_BINARY and CONVERT_TO_TEXT, with the following
	// behaviors:
	//
	//     * CONVERT_TO_BINARY: Converts a response payload from a
	// Base64-encoded string to the corresponding binary blob.
	//
	//     * CONVERT_TO_TEXT:
	// Converts a response payload from a binary blob to a Base64-encoded string.
	//
	// If
	// this property is not defined, the response payload will be passed through from
	// the integration response to the method response without modification.
	ContentHandling types.ContentHandlingStrategy
}

Represents a put integration response request.

type PutIntegrationResponseOutput

type PutIntegrationResponseOutput struct {
	// A key-value map specifying response parameters that are passed to the method
	// response from the back end. The key is a method response header parameter name
	// and the mapped value is an integration response header value, a static value
	// enclosed within a pair of single quotes, or a JSON expression from the
	// integration response body. The mapping key must match the pattern of
	// method.response.header.{name}, where name is a valid and unique header name. The
	// mapped non-static value must match the pattern of
	// integration.response.header.{name} or
	// integration.response.body.{JSON-expression}, where name is a valid and unique
	// response header name and JSON-expression is a valid JSON expression without the
	// $ prefix.
	ResponseParameters map[string]*string
	// Specifies the templates used to transform the integration response body.
	// Response templates are represented as a key/value map, with a content-type as
	// the key and a template as the value.
	ResponseTemplates map[string]*string
	// Specifies the status code that is used to map the integration response to an
	// existing MethodResponse ().
	StatusCode *string
	// Specifies the regular expression (regex) pattern used to choose an integration
	// response based on the response from the back end. For example, if the success
	// response returns nothing and the error response returns some string, you could
	// use the .+ regex to match error response. However, make sure that the error
	// response does not contain any newline (\n) character in such cases. If the back
	// end is an AWS Lambda function, the AWS Lambda function error header is matched.
	// For all other HTTP and AWS back ends, the HTTP status code is matched.
	SelectionPattern *string
	// Specifies how to handle response payload content type conversions. Supported
	// values are CONVERT_TO_BINARY and CONVERT_TO_TEXT, with the following
	// behaviors:
	//
	//     * CONVERT_TO_BINARY: Converts a response payload from a
	// Base64-encoded string to the corresponding binary blob.
	//
	//     * CONVERT_TO_TEXT:
	// Converts a response payload from a binary blob to a Base64-encoded string.
	//
	// If
	// this property is not defined, the response payload will be passed through from
	// the integration response to the method response without modification.
	ContentHandling types.ContentHandlingStrategy

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents an integration response. The status code must map to an existing MethodResponse (), and parameters and templates can be used to transform the back-end response. Creating an API (https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-create-api.html)

type PutMethodInput

type PutMethodInput struct {
	// [Required] The string identifier of the associated RestApi ().
	RestApiId *string
	Name      *string
	// [Required] The Resource () identifier for the new Method () resource.
	ResourceId *string
	Template   *bool
	// [Required] Specifies the method request's HTTP method type.
	HttpMethod       *string
	Title            *string
	TemplateSkipList []*string
	// Specifies the Model () resources used for the request's content type. Request
	// models are represented as a key/value map, with a content type as the key and a
	// Model () name as the value.
	RequestModels map[string]*string
	// A human-friendly operation identifier for the method. For example, you can
	// assign the operationName of ListPets for the GET /pets method in the PetStore
	// example.
	OperationName *string
	// A list of authorization scopes configured on the method. The scopes are used
	// with a COGNITO_USER_POOLS authorizer to authorize the method invocation. The
	// authorization works by matching the method scopes against the scopes parsed from
	// the access token in the incoming request. The method invocation is authorized if
	// any method scopes matches a claimed scope in the access token. Otherwise, the
	// invocation is not authorized. When the method scope is configured, the client
	// must provide an access token instead of an identity token for authorization
	// purposes.
	AuthorizationScopes []*string
	// [Required] The method's authorization type. Valid values are NONE for open
	// access, AWS_IAM for using AWS IAM permissions, CUSTOM for using a custom
	// authorizer, or COGNITO_USER_POOLS for using a Cognito user pool.
	AuthorizationType *string
	// Specifies whether the method required a valid ApiKey ().
	ApiKeyRequired *bool
	// Specifies the identifier of an Authorizer () to use on this Method, if the type
	// is CUSTOM or COGNITO_USER_POOLS. The authorizer identifier is generated by API
	// Gateway when you created the authorizer.
	AuthorizerId *string
	// The identifier of a RequestValidator () for validating the method request.
	RequestValidatorId *string
	// A key-value map defining required or optional method request parameters that can
	// be accepted by API Gateway. A key defines a method request parameter name
	// matching the pattern of method.request.{location}.{name}, where location is
	// querystring, path, or header and name is a valid and unique parameter name. The
	// value associated with the key is a Boolean flag indicating whether the parameter
	// is required (true) or optional (false). The method request parameter names
	// defined here are available in Integration () to be mapped to integration request
	// parameters or body-mapping templates.
	RequestParameters map[string]*bool
}

Request to add a method to an existing Resource () resource.

type PutMethodOutput

type PutMethodOutput struct {
	// A key-value map defining required or optional method request parameters that can
	// be accepted by API Gateway. A key is a method request parameter name matching
	// the pattern of method.request.{location}.{name}, where location is querystring,
	// path, or header and name is a valid and unique parameter name. The value
	// associated with the key is a Boolean flag indicating whether the parameter is
	// required (true) or optional (false). The method request parameter names defined
	// here are available in Integration () to be mapped to integration request
	// parameters or templates.
	RequestParameters map[string]*bool
	// The method's authorization type. Valid values are NONE for open access, AWS_IAM
	// for using AWS IAM permissions, CUSTOM for using a custom authorizer, or
	// COGNITO_USER_POOLS for using a Cognito user pool.
	AuthorizationType *string
	// The method's HTTP verb.
	HttpMethod *string
	// Gets a method response associated with a given HTTP status code. The collection
	// of method responses are encapsulated in a key-value map, where the key is a
	// response's HTTP status code and the value is a MethodResponse () resource that
	// specifies the response returned to the caller from the back end through the
	// integration response.
	// Example: Get a 200 OK response of a GET method
	//
	// Request
	//
	//
	// GET /restapis/uojnr9hd57/resources/0cjtch/methods/GET/responses/200 HTTP/1.1
	// Content-Type: application/json Host: apigateway.us-east-1.amazonaws.com
	// Content-Length: 117 X-Amz-Date: 20160613T215008Z Authorization: AWS4-HMAC-SHA256
	// Credential={access_key_ID}/20160613/us-east-1/apigateway/aws4_request,
	// SignedHeaders=content-type;host;x-amz-date, Signature={sig4_hash}
	//
	// Response
	//
	// The
	// successful response returns a 200 OK status code and a payload similar to the
	// following: { "_links": { "curies": { "href":
	// "https://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-method-response-{rel}.html",
	// "name": "methodresponse", "templated": true }, "self": { "href":
	// "/restapis/uojnr9hd57/resources/0cjtch/methods/GET/responses/200", "title":
	// "200" }, "methodresponse:delete": { "href":
	// "/restapis/uojnr9hd57/resources/0cjtch/methods/GET/responses/200" },
	// "methodresponse:update": { "href":
	// "/restapis/uojnr9hd57/resources/0cjtch/methods/GET/responses/200" } },
	// "responseModels": { "application/json": "Empty" }, "responseParameters": {
	// "method.response.header.operator": false, "method.response.header.operand_2":
	// false, "method.response.header.operand_1": false }, "statusCode": "200" }AWS CLI
	// (https://docs.aws.amazon.com/cli/latest/reference/apigateway/get-method-response.html)
	MethodResponses map[string]*types.MethodResponse
	// The identifier of a RequestValidator () for request validation.
	RequestValidatorId *string
	// The identifier of an Authorizer () to use on this method. The authorizationType
	// must be CUSTOM.
	AuthorizerId *string
	// Gets the method's integration responsible for passing the client-submitted
	// request to the back end and performing necessary transformations to make the
	// request compliant with the back end.
	// Example:
	//
	// Request
	//
	//     GET
	// /restapis/uojnr9hd57/resources/0cjtch/methods/GET/integration HTTP/1.1
	// Content-Type: application/json Host: apigateway.us-east-1.amazonaws.com
	// Content-Length: 117 X-Amz-Date: 20160613T213210Z Authorization: AWS4-HMAC-SHA256
	// Credential={access_key_ID}/20160613/us-east-1/apigateway/aws4_request,
	// SignedHeaders=content-type;host;x-amz-date, Signature={sig4_hash}
	//
	// Response
	//
	// The
	// successful response returns a 200 OK status code and a payload similar to the
	// following: { "_links": { "curies": [ { "href":
	// "https://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-integration-{rel}.html",
	// "name": "integration", "templated": true }, { "href":
	// "https://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-integration-response-{rel}.html",
	// "name": "integrationresponse", "templated": true } ], "self": { "href":
	// "/restapis/uojnr9hd57/resources/0cjtch/methods/GET/integration" },
	// "integration:delete": { "href":
	// "/restapis/uojnr9hd57/resources/0cjtch/methods/GET/integration" },
	// "integration:responses": { "href":
	// "/restapis/uojnr9hd57/resources/0cjtch/methods/GET/integration/responses/200",
	// "name": "200", "title": "200" }, "integration:update": { "href":
	// "/restapis/uojnr9hd57/resources/0cjtch/methods/GET/integration" },
	// "integrationresponse:put": { "href":
	// "/restapis/uojnr9hd57/resources/0cjtch/methods/GET/integration/responses/{status_code}",
	// "templated": true } }, "cacheKeyParameters": [], "cacheNamespace": "0cjtch",
	// "credentials": "arn:aws:iam::123456789012:role/apigAwsProxyRole", "httpMethod":
	// "POST", "passthroughBehavior": "WHEN_NO_MATCH", "requestTemplates": {
	// "application/json": "{\n \"a\": \"$input.params('operand1')\",\n \"b\":
	// \"$input.params('operand2')\", \n \"op\": \"$input.params('operator')\" \n}" },
	// "type": "AWS", "uri":
	// "arn:aws:apigateway:us-west-2:lambda:path//2015-03-31/functions/arn:aws:lambda:us-west-2:123456789012:function:Calc/invocations",
	// "_embedded": { "integration:responses": { "_links": { "self": { "href":
	// "/restapis/uojnr9hd57/resources/0cjtch/methods/GET/integration/responses/200",
	// "name": "200", "title": "200" }, "integrationresponse:delete": { "href":
	// "/restapis/uojnr9hd57/resources/0cjtch/methods/GET/integration/responses/200" },
	// "integrationresponse:update": { "href":
	// "/restapis/uojnr9hd57/resources/0cjtch/methods/GET/integration/responses/200" }
	// }, "responseParameters": { "method.response.header.operator":
	// "integration.response.body.op", "method.response.header.operand_2":
	// "integration.response.body.b", "method.response.header.operand_1":
	// "integration.response.body.a" }, "responseTemplates": { "application/json":
	// "#set($res = $input.path('$'))\n{\n \"result\": \"$res.a, $res.b, $res.op =>
	// $res.c\",\n \"a\" : \"$res.a\",\n \"b\" : \"$res.b\",\n \"op\" : \"$res.op\",\n
	// \"c\" : \"$res.c\"\n}" }, "selectionPattern": "", "statusCode": "200" } } }AWS
	// CLI
	// (https://docs.aws.amazon.com/cli/latest/reference/apigateway/get-integration.html)
	MethodIntegration *types.Integration
	// A human-friendly operation identifier for the method. For example, you can
	// assign the operationName of ListPets for the GET /pets method in the PetStore
	// example.
	OperationName *string
	// A boolean flag specifying whether a valid ApiKey () is required to invoke this
	// method.
	ApiKeyRequired *bool
	// A list of authorization scopes configured on the method. The scopes are used
	// with a COGNITO_USER_POOLS authorizer to authorize the method invocation. The
	// authorization works by matching the method scopes against the scopes parsed from
	// the access token in the incoming request. The method invocation is authorized if
	// any method scopes matches a claimed scope in the access token. Otherwise, the
	// invocation is not authorized. When the method scope is configured, the client
	// must provide an access token instead of an identity token for authorization
	// purposes.
	AuthorizationScopes []*string
	// A key-value map specifying data schemas, represented by Model () resources, (as
	// the mapped value) of the request payloads of given content types (as the mapping
	// key).
	RequestModels map[string]*string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents a client-facing interface by which the client calls the API to access back-end resources. A Method resource is integrated with an Integration () resource. Both consist of a request and one or more responses. The method request takes the client input that is passed to the back end through the integration request. A method response returns the output from the back end to the client through an integration response. A method request is embodied in a Method resource, whereas an integration request is embodied in an Integration () resource. On the other hand, a method response is represented by a MethodResponse () resource, whereas an integration response is represented by an IntegrationResponse () resource. Example: Retrive the GET method on a specified resource

Request

The following example request retrieves the information about the GET method on an API resource (3kzxbg5sa2) of an API (fugvjdxtri). GET /restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET HTTP/1.1 Content-Type: application/json Host: apigateway.us-east-1.amazonaws.com X-Amz-Date: 20160603T210259Z Authorization: AWS4-HMAC-SHA256 Credential={access_key_ID}/20160603/us-east-1/apigateway/aws4_request, SignedHeaders=content-type;host;x-amz-date, Signature={sig4_hash} Response

The successful response returns a 200 OK status code and a payload similar to the following: { "_links": { "curies": [ { "href": "https://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-integration-{rel}.html", "name": "integration", "templated": true }, { "href": "https://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-integration-response-{rel}.html", "name": "integrationresponse", "templated": true }, { "href": "https://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-method-{rel}.html", "name": "method", "templated": true }, { "href": "https://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-method-response-{rel}.html", "name": "methodresponse", "templated": true } ], "self": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET", "name": "GET", "title": "GET" }, "integration:put": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration" }, "method:delete": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET" }, "method:integration": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration" }, "method:responses": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200", "name": "200", "title": "200" }, "method:update": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET" }, "methodresponse:put": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/{status_code}", "templated": true } }, "apiKeyRequired": true, "authorizationType": "NONE", "httpMethod": "GET", "_embedded": { "method:integration": { "_links": { "self": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration" }, "integration:delete": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration" }, "integration:responses": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200", "name": "200", "title": "200" }, "integration:update": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration" }, "integrationresponse:put": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/{status_code}", "templated": true } }, "cacheKeyParameters": [], "cacheNamespace": "3kzxbg5sa2", "credentials": "arn:aws:iam::123456789012:role/apigAwsProxyRole", "httpMethod": "POST", "passthroughBehavior": "WHEN_NO_MATCH", "requestParameters": { "integration.request.header.Content-Type": "'application/x-amz-json-1.1'" }, "requestTemplates": { "application/json": "{\n}" }, "type": "AWS", "uri": "arn:aws:apigateway:us-east-1:kinesis:action/ListStreams", "_embedded": { "integration:responses": { "_links": { "self": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200", "name": "200", "title": "200" }, "integrationresponse:delete": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200" }, "integrationresponse:update": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200" } }, "responseParameters": { "method.response.header.Content-Type": "'application/xml'" }, "responseTemplates": { "application/json": "$util.urlDecode(\"%3CkinesisStreams%3E%23foreach(%24stream%20in%20%24input.path(%27%24.StreamNames%27))%3Cstream%3E%3Cname%3E%24stream%3C%2Fname%3E%3C%2Fstream%3E%23end%3C%2FkinesisStreams%3E\")" }, "statusCode": "200" } } }, "method:responses": { "_links": { "self": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200", "name": "200", "title": "200" }, "methodresponse:delete": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200" }, "methodresponse:update": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200" } }, "responseModels": { "application/json": "Empty" }, "responseParameters": { "method.response.header.Content-Type": false }, "statusCode": "200" } } } In the example above, the response template for the 200 OK response maps the JSON output from the ListStreams action in the back end to an XML output. The mapping template is URL-encoded as %3CkinesisStreams%3E%23foreach(%24stream%20in%20%24input.path(%27%24.StreamNames%27))%3Cstream%3E%3Cname%3E%24stream%3C%2Fname%3E%3C%2Fstream%3E%23end%3C%2FkinesisStreams%3E and the output is decoded using the $util.urlDecode() (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html#util-templat-reference) helper function. MethodResponse (), Integration (), IntegrationResponse (), Resource (), Set up an API's method (https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-method-settings.html)

type PutMethodResponseInput

type PutMethodResponseInput struct {
	Name *string
	// [Required] The string identifier of the associated RestApi ().
	RestApiId *string
	// [Required] The Resource () identifier for the Method () resource.
	ResourceId *string
	Template   *bool
	// [Required] The method response's status code.
	StatusCode       *string
	Title            *string
	TemplateSkipList []*string
	// [Required] The HTTP verb of the Method () resource.
	HttpMethod *string
	// A key-value map specifying required or optional response parameters that API
	// Gateway can send back to the caller. A key defines a method response header name
	// and the associated value is a Boolean flag indicating whether the method
	// response parameter is required or not. The method response header names must
	// match the pattern of method.response.header.{name}, where name is a valid and
	// unique header name. The response parameter names defined here are available in
	// the integration response to be mapped from an integration response header
	// expressed in integration.response.header.{name}, a static value enclosed within
	// a pair of single quotes (e.g., 'application/json'), or a JSON expression from
	// the back-end response payload in the form of
	// integration.response.body.{JSON-expression}, where JSON-expression is a valid
	// JSON expression without the $ prefix.)
	ResponseParameters map[string]*bool
	// Specifies the Model () resources used for the response's content type. Response
	// models are represented as a key/value map, with a content type as the key and a
	// Model () name as the value.
	ResponseModels map[string]*string
}

Request to add a MethodResponse () to an existing Method () resource.

type PutMethodResponseOutput

type PutMethodResponseOutput struct {
	// Specifies the Model () resources used for the response's content-type. Response
	// models are represented as a key/value map, with a content-type as the key and a
	// Model () name as the value.
	ResponseModels map[string]*string
	// The method response's status code.
	StatusCode *string
	// A key-value map specifying required or optional response parameters that API
	// Gateway can send back to the caller. A key defines a method response header and
	// the value specifies whether the associated method response header is required or
	// not. The expression of the key must match the pattern
	// method.response.header.{name}, where name is a valid and unique header name. API
	// Gateway passes certain integration response data to the method response headers
	// specified here according to the mapping you prescribe in the API's
	// IntegrationResponse (). The integration response data that can be mapped include
	// an integration response header expressed in integration.response.header.{name},
	// a static value enclosed within a pair of single quotes (e.g.,
	// 'application/json'), or a JSON expression from the back-end response payload in
	// the form of integration.response.body.{JSON-expression}, where JSON-expression
	// is a valid JSON expression without the $ prefix.)
	ResponseParameters map[string]*bool

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents a method response of a given HTTP status code returned to the client. The method response is passed from the back end through the associated integration response that can be transformed using a mapping template. Example: A MethodResponse instance of an API

Request

The example request retrieves a MethodResponse of the 200 status code. GET /restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200 HTTP/1.1 Content-Type: application/json Host: apigateway.us-east-1.amazonaws.com X-Amz-Date: 20160603T222952Z Authorization: AWS4-HMAC-SHA256 Credential={access_key_ID}/20160603/us-east-1/apigateway/aws4_request, SignedHeaders=content-type;host;x-amz-date, Signature={sig4_hash} Response

The successful response returns 200 OK status and a payload as follows: { "_links": { "curies": { "href": "https://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-method-response-{rel}.html", "name": "methodresponse", "templated": true }, "self": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200", "title": "200" }, "methodresponse:delete": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200" }, "methodresponse:update": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200" } }, "responseModels": { "application/json": "Empty" }, "responseParameters": { "method.response.header.Content-Type": false }, "statusCode": "200" }Method (), IntegrationResponse (), Integration ()Creating an API (https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-create-api.html)

type PutRestApiInput

type PutRestApiInput struct {
	Title *string
	// Custom header parameters as part of the request. For example, to exclude
	// DocumentationParts () from an imported API, set ignore=documentation as a
	// parameters value, as in the AWS CLI command of aws apigateway import-rest-api
	// --parameters ignore=documentation --body
	// 'file:///path/to/imported-api-body.json'.
	Parameters       map[string]*string
	TemplateSkipList []*string
	Template         *bool
	// The mode query parameter to specify the update mode. Valid values are "merge"
	// and "overwrite". By default, the update mode is "merge".
	Mode types.PutMode
	// A query parameter to indicate whether to rollback the API update (true) or not
	// (false) when a warning is encountered. The default value is false.
	FailOnWarnings *bool
	// [Required] The string identifier of the associated RestApi ().
	RestApiId *string
	Name      *string
}

A PUT request to update an existing API, with external API definitions specified as the request body.

type PutRestApiOutput

type PutRestApiOutput struct {
	// The API's description.
	Description *string
	// A stringified JSON policy document that applies to this RestApi regardless of
	// the caller and Method () configuration.
	Policy *string
	// The endpoint configuration of this RestApi () showing the endpoint types of the
	// API.
	EndpointConfiguration *types.EndpointConfiguration
	// The source of the API key for metering requests according to a usage plan. Valid
	// values are:
	//
	//     * HEADER to read the API key from the X-API-Key header of a
	// request.
	//
	//     * AUTHORIZER to read the API key from the UsageIdentifierKey from
	// a custom authorizer.
	ApiKeySource types.ApiKeySourceType
	// The API's name.
	Name *string
	// A version identifier for the API.
	Version *string
	// The collection of tags. Each tag element is associated with a given resource.
	Tags map[string]*string
	// The warning messages reported when failonwarnings is turned on during API
	// import.
	Warnings []*string
	// The timestamp when the API was created.
	CreatedDate *time.Time
	// The API's identifier. This identifier is unique across all of your APIs in API
	// Gateway.
	Id *string
	// The list of binary media types supported by the RestApi (). By default, the
	// RestApi () supports only UTF-8-encoded text payloads.
	BinaryMediaTypes []*string
	// A nullable integer that is used to enable compression (with non-negative between
	// 0 and 10485760 (10M) bytes, inclusive) or disable compression (with a null
	// value) on an API. When compression is enabled, compression or decompression is
	// not applied on the payload if the payload size is smaller than this value.
	// Setting it to zero allows compression for any payload size.
	MinimumCompressionSize *int32

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents a REST API. Create an API (https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-create-api.html)

type ResolveEndpoint

type ResolveEndpoint struct {
	Resolver EndpointResolver
	Options  ResolverOptions
}

func (*ResolveEndpoint) HandleSerialize

func (*ResolveEndpoint) ID

func (*ResolveEndpoint) ID() string

type ResolveEndpointMiddlewareOptions

type ResolveEndpointMiddlewareOptions interface {
	GetEndpointResolver() EndpointResolver
	GetEndpointOptions() ResolverOptions
}

type ResolverOptions

type ResolverOptions = internalendpoints.Options

ResolverOptions is the service endpoint resolver options

type TagResourceInput

type TagResourceInput struct {
	Template         *bool
	Title            *string
	TemplateSkipList []*string
	// [Required] The ARN of a resource that can be tagged.
	ResourceArn *string
	Name        *string
	// [Required] 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
	// aws:. The tag value can be up to 256 characters.
	Tags map[string]*string
}

Adds or updates a tag on a given resource.

type TagResourceOutput

type TagResourceOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type TestInvokeAuthorizerInput

type TestInvokeAuthorizerInput struct {
	// [Optional] A key-value map of additional context variables.
	AdditionalContext map[string]*string
	// [Optional] The URI path, including query string, of the simulated invocation
	// request. Use this to specify path parameters and query string parameters.
	PathWithQueryString *string
	// [Required] A key-value map of headers to simulate an incoming invocation
	// request. This is where the incoming authorization token, or identity source,
	// should be specified.
	Headers map[string]*string
	// [Optional] The simulated request body of an incoming invocation request.
	Body *string
	// A key-value map of stage variables to simulate an invocation on a deployed Stage
	// ().
	StageVariables map[string]*string
	// [Required] The string identifier of the associated RestApi ().
	RestApiId *string
	// [Required] Specifies a test invoke authorizer request's Authorizer () ID.
	AuthorizerId *string
	// [Optional] The headers as a map from string to list of values to simulate an
	// incoming invocation request. This is where the incoming authorization token, or
	// identity source, may be specified.
	MultiValueHeaders map[string][]*string
}

Make a request to simulate the execution of an Authorizer ().

type TestInvokeAuthorizerOutput

type TestInvokeAuthorizerOutput struct {
	// The API Gateway execution log for the test authorizer request.
	Log           *string
	Authorization map[string][]*string
	// The principal identity returned by the Authorizer ()
	PrincipalId *string
	// The JSON policy document returned by the Authorizer ()
	Policy *string
	// The HTTP status code that the client would have received. Value is 0 if the
	// authorizer succeeded.
	ClientStatus *int32
	// The open identity claims
	// (https://openid.net/specs/openid-connect-core-1_0.html#StandardClaims), with any
	// supported custom attributes, returned from the Cognito Your User Pool configured
	// for the API.
	Claims map[string]*string
	// The execution latency of the test authorizer request.
	Latency *int64

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents the response of the test invoke request for a custom Authorizer ()

type TestInvokeMethodInput

type TestInvokeMethodInput struct {
	// [Required] The string identifier of the associated RestApi ().
	RestApiId *string
	// [Required] Specifies a test invoke method request's resource ID.
	ResourceId *string
	// The headers as a map from string to list of values to simulate an incoming
	// invocation request.
	MultiValueHeaders map[string][]*string
	// A key-value map of stage variables to simulate an invocation on a deployed Stage
	// ().
	StageVariables map[string]*string
	// The simulated request body of an incoming invocation request.
	Body *string
	// A ClientCertificate () identifier to use in the test invocation. API Gateway
	// will use the certificate when making the HTTPS request to the defined back-end
	// endpoint.
	ClientCertificateId *string
	// [Required] Specifies a test invoke method request's HTTP method.
	HttpMethod *string
	// The URI path, including query string, of the simulated invocation request. Use
	// this to specify path parameters and query string parameters.
	PathWithQueryString *string
	// A key-value map of headers to simulate an incoming invocation request.
	Headers map[string]*string
}

Make a request to simulate the execution of a Method ().

type TestInvokeMethodOutput

type TestInvokeMethodOutput struct {
	// The headers of the HTTP response.
	Headers map[string]*string
	// The API Gateway execution log for the test invoke request.
	Log *string
	// The HTTP status code.
	Status *int32
	// The body of the HTTP response.
	Body *string
	// The headers of the HTTP response as a map from string to list of values.
	MultiValueHeaders map[string][]*string
	// The execution latency of the test invoke request.
	Latency *int64

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents the response of the test invoke request in the HTTP method. Test API using the API Gateway console (https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-test-method.html#how-to-test-method-console)

type UntagResourceInput

type UntagResourceInput struct {
	Template         *bool
	TemplateSkipList []*string
	Title            *string
	// [Required] The Tag keys to delete.
	TagKeys []*string
	Name    *string
	// [Required] The ARN of a resource that can be tagged.
	ResourceArn *string
}

Removes a tag from a given resource.

type UntagResourceOutput

type UntagResourceOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type UpdateAccountInput

type UpdateAccountInput struct {
	TemplateSkipList []*string
	Title            *string
	Name             *string
	Template         *bool
	// A list of update operations to be applied to the specified resource and in the
	// order specified in this list.
	PatchOperations []*types.PatchOperation
}

Requests API Gateway to change information about the current Account () resource.

type UpdateAccountOutput

type UpdateAccountOutput struct {
	// A list of features supported for the account. When usage plans are enabled, the
	// features list will include an entry of "UsagePlans".
	Features []*string
	// The version of the API keys used for the account.
	ApiKeyVersion *string
	// Specifies the API request limits configured for the current Account ().
	ThrottleSettings *types.ThrottleSettings
	// The ARN of an Amazon CloudWatch role for the current Account ().
	CloudwatchRoleArn *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents an AWS account that is associated with API Gateway. To view the account info, call GET on this resource. Error Codes

The following exception may be thrown when the request fails.

  • UnauthorizedException

    *

NotFoundException

  • TooManyRequestsException

For detailed error code information, including the corresponding HTTP Status Codes, see API Gateway Error Codes (https://docs.aws.amazon.com/apigateway/api-reference/handling-errors/#api-error-codes) Example: Get the information about an account.

Request

GET /account HTTP/1.1

Content-Type: application/json Host: apigateway.us-east-1.amazonaws.com X-Amz-Date: 20160531T184618Z Authorization: AWS4-HMAC-SHA256 Credential={access_key_ID}/us-east-1/apigateway/aws4_request, SignedHeaders=content-type;host;x-amz-date, Signature={sig4_hash}

Response

The successful response returns a 200 OK status code and a payload similar to the following: { "_links": { "curies": { "href": "https://docs.aws.amazon.com/apigateway/latest/developerguide/account-apigateway-{rel}.html", "name": "account", "templated": true }, "self": { "href": "/account" }, "account:update": { "href": "/account" } }, "cloudwatchRoleArn": "arn:aws:iam::123456789012:role/apigAwsProxyRole", "throttleSettings": { "rateLimit": 500, "burstLimit": 1000 } } In addition to making the REST API call directly, you can use the AWS CLI and an AWS SDK to access this resource. API Gateway Limits (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-limits.html)Developer Guide (https://docs.aws.amazon.com/apigateway/latest/developerguide/welcome.html), AWS CLI (https://docs.aws.amazon.com/cli/latest/reference/apigateway/get-account.html)

type UpdateApiKeyInput

type UpdateApiKeyInput struct {
	Title *string
	Name  *string
	// [Required] The identifier of the ApiKey () resource to be updated.
	ApiKey           *string
	Template         *bool
	TemplateSkipList []*string
	// A list of update operations to be applied to the specified resource and in the
	// order specified in this list.
	PatchOperations []*types.PatchOperation
}

A request to change information about an ApiKey () resource.

type UpdateApiKeyOutput

type UpdateApiKeyOutput struct {
	// The name of the API Key.
	Name *string
	// A list of Stage () resources that are associated with the ApiKey () resource.
	StageKeys []*string
	// The timestamp when the API Key was created.
	CreatedDate *time.Time
	// The identifier of the API Key.
	Id *string
	// An AWS Marketplace customer identifier , when integrating with the AWS SaaS
	// Marketplace.
	CustomerId *string
	// The timestamp when the API Key was last updated.
	LastUpdatedDate *time.Time
	// Specifies whether the API Key can be used by callers.
	Enabled *bool
	// The collection of tags. Each tag element is associated with a given resource.
	Tags map[string]*string
	// The description of the API Key.
	Description *string
	// The value of the API Key.
	Value *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

A resource that can be distributed to callers for executing Method () resources that require an API key. API keys can be mapped to any Stage () on any RestApi (), which indicates that the callers with the API key can make requests to that stage. Use API Keys (https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-api-keys.html)

type UpdateAuthorizerInput

type UpdateAuthorizerInput struct {
	// [Required] The string identifier of the associated RestApi ().
	RestApiId        *string
	Template         *bool
	TemplateSkipList []*string
	Name             *string
	// [Required] The identifier of the Authorizer () resource.
	AuthorizerId *string
	Title        *string
	// A list of update operations to be applied to the specified resource and in the
	// order specified in this list.
	PatchOperations []*types.PatchOperation
}

Request to update an existing Authorizer () resource.

type UpdateAuthorizerOutput

type UpdateAuthorizerOutput struct {
	// [Required] The name of the authorizer.
	Name *string
	// 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.
	AuthorizerCredentials *string
	// The identity source for which authorization is requested.
	//
	//     * For a TOKEN or
	// COGNITO_USER_POOLS 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 Auth, the
	// header mapping expression is method.request.header.Auth.
	//
	//     * For the REQUEST
	// 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 Auth header, a Name query string
	// parameter are defined as identity sources, this value is
	// method.request.header.Auth, method.request.querystring.Name. These parameters
	// will be used to derive the authorization caching key and to perform runtime
	// validation of the REQUEST 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.
	IdentitySource *string
	// The authorizer type. Valid values are TOKEN for a Lambda function using a single
	// authorization token submitted in a custom header, REQUEST for a Lambda function
	// using incoming request parameters, and COGNITO_USER_POOLS for using an Amazon
	// Cognito user pool.
	Type types.AuthorizerType
	// Specifies the authorizer's Uniform Resource Identifier (URI). For TOKEN or
	// REQUEST authorizers, this must be a well-formed Lambda function URI, for
	// example,
	// 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.
	// In general, the URI has this form
	// arn:aws:apigateway:{region}:lambda:path/{service_api}, where {region} is the
	// same as the region hosting the Lambda function, path indicates that the
	// remaining substring in the URI should be treated as the path to the resource,
	// including the initial /. For Lambda functions, this is usually of the form
	// /2015-03-31/functions/[FunctionARN]/invocations.
	AuthorizerUri *string
	// A list of the Amazon Cognito user pool ARNs for the COGNITO_USER_POOLS
	// authorizer. Each element is of this format:
	// arn:aws:cognito-idp:{region}:{account_id}:userpool/{user_pool_id}. For a TOKEN
	// or REQUEST authorizer, this is not defined.
	ProviderARNs []*string
	// Optional customer-defined field, used in OpenAPI imports and exports without
	// functional impact.
	AuthType *string
	// A validation expression for the incoming identity token. For TOKEN authorizers,
	// this value is a regular expression. For COGNITO_USER_POOLS authorizers, API
	// Gateway will match the aud 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 REQUEST authorizer.
	IdentityValidationExpression *string
	// 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.
	AuthorizerResultTtlInSeconds *int32
	// The identifier for the authorizer resource.
	Id *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents an authorization layer for methods. If enabled on a method, API Gateway will activate the authorizer when a client calls the method. Use Lambda Function as Authorizer (https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-use-lambda-authorizer.html)Use Cognito User Pool as Authorizer (https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-integrate-with-cognito.html)

type UpdateBasePathMappingInput

type UpdateBasePathMappingInput struct {
	// [Required] The base path of the BasePathMapping () resource to change. To
	// specify an empty base path, set this parameter to '(none)'.
	BasePath         *string
	TemplateSkipList []*string
	Title            *string
	// [Required] The domain name of the BasePathMapping () resource to change.
	DomainName *string
	Template   *bool
	Name       *string
	// A list of update operations to be applied to the specified resource and in the
	// order specified in this list.
	PatchOperations []*types.PatchOperation
}

A request to change information about the BasePathMapping () resource.

type UpdateBasePathMappingOutput

type UpdateBasePathMappingOutput struct {
	// The name of the associated stage.
	Stage *string
	// The base path name that callers of the API must provide as part of the URL after
	// the domain name.
	BasePath *string
	// The string identifier of the associated RestApi ().
	RestApiId *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents the base path that callers of the API must provide as part of the URL after the domain name. A custom domain name plus a BasePathMapping specification identifies a deployed RestApi () in a given stage of the owner Account (). Use Custom Domain Names (https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-custom-domains.html)

type UpdateClientCertificateInput

type UpdateClientCertificateInput struct {
	TemplateSkipList []*string
	// [Required] The identifier of the ClientCertificate () resource to be updated.
	ClientCertificateId *string
	Name                *string
	Title               *string
	Template            *bool
	// A list of update operations to be applied to the specified resource and in the
	// order specified in this list.
	PatchOperations []*types.PatchOperation
}

A request to change information about an ClientCertificate () resource.

type UpdateClientCertificateOutput

type UpdateClientCertificateOutput struct {
	// The timestamp when the client certificate was created.
	CreatedDate *time.Time
	// The PEM-encoded public key of the client certificate, which can be used to
	// configure certificate authentication in the integration endpoint .
	PemEncodedCertificate *string
	// The collection of tags. Each tag element is associated with a given resource.
	Tags map[string]*string
	// The timestamp when the client certificate will expire.
	ExpirationDate *time.Time
	// The description of the client certificate.
	Description *string
	// The identifier of the client certificate.
	ClientCertificateId *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents a client certificate used to configure client-side SSL authentication while sending requests to the integration endpoint. Client certificates are used to authenticate an API by the backend server. To authenticate an API client (or user), use IAM roles and policies, a custom Authorizer () or an Amazon Cognito user pool. Use Client-Side Certificate (https://docs.aws.amazon.com/apigateway/latest/developerguide/getting-started-client-side-ssl-authentication.html)

type UpdateDeploymentInput

type UpdateDeploymentInput struct {
	// The replacement identifier for the Deployment () resource to change information
	// about.
	DeploymentId *string
	// [Required] The string identifier of the associated RestApi ().
	RestApiId        *string
	Name             *string
	Title            *string
	TemplateSkipList []*string
	Template         *bool
	// A list of update operations to be applied to the specified resource and in the
	// order specified in this list.
	PatchOperations []*types.PatchOperation
}

Requests API Gateway to change information about a Deployment () resource.

type UpdateDeploymentOutput

type UpdateDeploymentOutput struct {
	// The date and time that the deployment resource was created.
	CreatedDate *time.Time
	// A summary of the RestApi () at the date and time that the deployment resource
	// was created.
	ApiSummary map[string]map[string]*types.MethodSnapshot
	// The identifier for the deployment resource.
	Id *string
	// The description for the deployment resource.
	Description *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

An immutable representation of a RestApi () resource that can be called by users using Stages (). A deployment must be associated with a Stage () for it to be callable over the Internet. To create a deployment, call POST on the Deployments () resource of a RestApi (). To view, update, or delete a deployment, call GET, PATCH, or DELETE on the specified deployment resource (/restapis/{restapi_id}/deployments/{deployment_id}). RestApi (), Deployments (), Stage (), AWS CLI (https://docs.aws.amazon.com/cli/latest/reference/apigateway/get-deployment.html), AWS SDKs (https://aws.amazon.com/tools/)

type UpdateDocumentationPartInput

type UpdateDocumentationPartInput struct {
	TemplateSkipList []*string
	// [Required] The identifier of the to-be-updated documentation part.
	DocumentationPartId *string
	Title               *string
	Name                *string
	Template            *bool
	// [Required] The string identifier of the associated RestApi ().
	RestApiId *string
	// A list of update operations to be applied to the specified resource and in the
	// order specified in this list.
	PatchOperations []*types.PatchOperation
}

Updates an existing documentation part of a given API.

type UpdateDocumentationPartOutput

type UpdateDocumentationPartOutput struct {
	// The DocumentationPart () identifier, generated by API Gateway when the
	// DocumentationPart is created.
	Id *string
	// The location of the API entity to which the documentation applies. Valid fields
	// depend on the targeted API entity type. All the valid location fields are not
	// required. If not explicitly specified, a valid location field is treated as a
	// wildcard and associated documentation content may be inherited by matching
	// entities, unless overridden.
	Location *types.DocumentationPartLocation
	// A content map of API-specific key-value pairs describing the targeted API
	// entity. The map must be encoded as a JSON string, e.g., "{ \"description\":
	// \"The API does ...\" }". Only OpenAPI-compliant documentation-related fields
	// from the properties map are exported and, hence, published as part of the API
	// entity definitions, while the original documentation parts are exported in a
	// OpenAPI extension of x-amazon-apigateway-documentation.
	Properties *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

A documentation part for a targeted API entity. A documentation part consists of a content map (properties) and a target (location). The target specifies an API entity to which the documentation content applies. The supported API entity types are API, AUTHORIZER, MODEL, RESOURCE, METHOD, PATH_PARAMETER, QUERY_PARAMETER, REQUEST_HEADER, REQUEST_BODY, RESPONSE, RESPONSE_HEADER, and RESPONSE_BODY. Valid location fields depend on the API entity type. All valid fields are not required. The content map is a JSON string of API-specific key-value pairs. Although an API can use any shape for the content map, only the OpenAPI-compliant documentation fields will be injected into the associated API entity definition in the exported OpenAPI definition file. Documenting an API (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api.html), DocumentationParts ()

type UpdateDocumentationVersionInput

type UpdateDocumentationVersionInput struct {
	TemplateSkipList []*string
	Title            *string
	Template         *bool
	// [Required] The version identifier of the to-be-updated documentation version.
	DocumentationVersion *string
	// [Required] The string identifier of the associated RestApi ()..
	RestApiId *string
	Name      *string
	// A list of update operations to be applied to the specified resource and in the
	// order specified in this list.
	PatchOperations []*types.PatchOperation
}

Updates an existing documentation version of an API.

type UpdateDocumentationVersionOutput

type UpdateDocumentationVersionOutput struct {
	// The description of the API documentation snapshot.
	Description *string
	// The date when the API documentation snapshot is created.
	CreatedDate *time.Time
	// The version identifier of the API documentation snapshot.
	Version *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

A snapshot of the documentation of an API. Publishing API documentation involves creating a documentation version associated with an API stage and exporting the versioned documentation to an external (e.g., OpenAPI) file. Documenting an API (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api.html), DocumentationPart (), DocumentationVersions ()

type UpdateDomainNameInput

type UpdateDomainNameInput struct {
	Name             *string
	Title            *string
	TemplateSkipList []*string
	Template         *bool
	// [Required] The name of the DomainName () resource to be changed.
	DomainName *string
	// A list of update operations to be applied to the specified resource and in the
	// order specified in this list.
	PatchOperations []*types.PatchOperation
}

A request to change information about the DomainName () resource.

type UpdateDomainNameOutput

type UpdateDomainNameOutput struct {
	// The domain name associated with the regional endpoint for this custom domain
	// name. You set up this association by adding a DNS record that points the custom
	// domain name to this regional domain name. The regional domain name is returned
	// by API Gateway when you create a regional endpoint.
	RegionalDomainName *string
	// The name of the certificate that will be used by edge-optimized endpoint for
	// this domain name.
	CertificateName *string
	// The region-agnostic Amazon Route 53 Hosted Zone ID of the edge-optimized
	// endpoint. The valid value is Z2FDTNDATAQYW2 for all the regions. For more
	// information, see Set up a Regional Custom Domain Name
	// (https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-regional-api-custom-domain-create.html)
	// and AWS Regions and Endpoints for API Gateway
	// (https://docs.aws.amazon.com/general/latest/gr/rande.html#apigateway_region).
	DistributionHostedZoneId *string
	// The custom domain name as an API host name, for example, my-api.example.com.
	DomainName *string
	// The Transport Layer Security (TLS) version + cipher suite for this DomainName
	// (). The valid values are TLS_1_0 and TLS_1_2.
	SecurityPolicy types.SecurityPolicy
	// An optional text message containing detailed information about status of the
	// DomainName () migration.
	DomainNameStatusMessage *string
	// The reference to an AWS-managed certificate that will be used for validating the
	// regional domain name. AWS Certificate Manager is the only supported source.
	RegionalCertificateArn *string
	// 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.
	CertificateArn *string
	// The timestamp when the certificate that was used by edge-optimized endpoint for
	// this domain name was uploaded.
	CertificateUploadDate *time.Time
	// The name of the certificate that will be used for validating the regional domain
	// name.
	RegionalCertificateName *string
	// The endpoint configuration of this DomainName () showing the endpoint types of
	// the domain name.
	EndpointConfiguration *types.EndpointConfiguration
	// The region-specific Amazon Route 53 Hosted Zone ID of the regional endpoint. For
	// more information, see Set up a Regional Custom Domain Name
	// (https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-regional-api-custom-domain-create.html)
	// and AWS Regions and Endpoints for API Gateway
	// (https://docs.aws.amazon.com/general/latest/gr/rande.html#apigateway_region).
	RegionalHostedZoneId *string
	// The domain name of the Amazon CloudFront distribution associated with this
	// custom domain name for an edge-optimized endpoint. You set up this association
	// when adding a DNS record pointing the custom domain name to this distribution
	// name. For more information about CloudFront distributions, see the Amazon
	// CloudFront documentation (https://aws.amazon.com/documentation/cloudfront/).
	DistributionDomainName *string
	// The collection of tags. Each tag element is associated with a given resource.
	Tags map[string]*string
	// The status of the DomainName () migration. The valid values are AVAILABLE and
	// UPDATING. If the status is UPDATING, the domain cannot be modified further until
	// the existing operation is complete. If it is AVAILABLE, the domain can be
	// updated.
	DomainNameStatus types.DomainNameStatus

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents a custom domain name as a user-friendly host name of an API (RestApi ()). When you deploy an API, API Gateway creates a default host name for the API. This default API host name is of the {restapi-id}.execute-api.{region}.amazonaws.com format. With the default host name, you can access the API's root resource with the URL of https://{restapi-id}.execute-api.{region}.amazonaws.com/{stage}/. When you set up a custom domain name of apis.example.com for this API, you can then access the same resource using the URL of the https://apis.examples.com/myApi, where myApi is the base path mapping (BasePathMapping ()) of your API under the custom domain name. Set a Custom Host Name for an API (https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-custom-domains.html)

type UpdateGatewayResponseInput

type UpdateGatewayResponseInput struct {
	TemplateSkipList []*string
	Title            *string
	// [Required] The response type of the associated GatewayResponse (). Valid values
	// are
	//
	//     * ACCESS_DENIED
	//
	//     * API_CONFIGURATION_ERROR
	//
	//     *
	// AUTHORIZER_FAILURE
	//
	//     * AUTHORIZER_CONFIGURATION_ERROR
	//
	//     *
	// BAD_REQUEST_PARAMETERS
	//
	//     * BAD_REQUEST_BODY
	//
	//     * DEFAULT_4XX
	//
	//     *
	// DEFAULT_5XX
	//
	//     * EXPIRED_TOKEN
	//
	//     * INVALID_SIGNATURE
	//
	//     *
	// INTEGRATION_FAILURE
	//
	//     * INTEGRATION_TIMEOUT
	//
	//     * INVALID_API_KEY
	//
	//     *
	// MISSING_AUTHENTICATION_TOKEN
	//
	//     * QUOTA_EXCEEDED
	//
	//     * REQUEST_TOO_LARGE
	//
	//
	// * RESOURCE_NOT_FOUND
	//
	//     * THROTTLED
	//
	//     * UNAUTHORIZED
	//
	//     *
	// UNSUPPORTED_MEDIA_TYPE
	ResponseType types.GatewayResponseType
	Name         *string
	Template     *bool
	// [Required] The string identifier of the associated RestApi ().
	RestApiId *string
	// A list of update operations to be applied to the specified resource and in the
	// order specified in this list.
	PatchOperations []*types.PatchOperation
}

Updates a GatewayResponse () of a specified response type on the given RestApi ().

type UpdateGatewayResponseOutput

type UpdateGatewayResponseOutput struct {
	// The response type of the associated GatewayResponse (). Valid values are
	//
	//     *
	// ACCESS_DENIED
	//
	//     * API_CONFIGURATION_ERROR
	//
	//     * AUTHORIZER_FAILURE
	//
	//     *
	// AUTHORIZER_CONFIGURATION_ERROR
	//
	//     * BAD_REQUEST_PARAMETERS
	//
	//     *
	// BAD_REQUEST_BODY
	//
	//     * DEFAULT_4XX
	//
	//     * DEFAULT_5XX
	//
	//     * EXPIRED_TOKEN
	//
	//
	// * INVALID_SIGNATURE
	//
	//     * INTEGRATION_FAILURE
	//
	//     * INTEGRATION_TIMEOUT
	//
	//     *
	// INVALID_API_KEY
	//
	//     * MISSING_AUTHENTICATION_TOKEN
	//
	//     * QUOTA_EXCEEDED
	//
	//     *
	// REQUEST_TOO_LARGE
	//
	//     * RESOURCE_NOT_FOUND
	//
	//     * THROTTLED
	//
	//     *
	// UNAUTHORIZED
	//
	//     * UNSUPPORTED_MEDIA_TYPE
	ResponseType types.GatewayResponseType
	// A Boolean flag to indicate whether this GatewayResponse () is the default
	// gateway response (true) or not (false). A default gateway response is one
	// generated by API Gateway without any customization by an API developer.
	DefaultResponse *bool
	// Response parameters (paths, query strings and headers) of the GatewayResponse ()
	// as a string-to-string map of key-value pairs.
	ResponseParameters map[string]*string
	// Response templates of the GatewayResponse () as a string-to-string map of
	// key-value pairs.
	ResponseTemplates map[string]*string
	// The HTTP status code for this GatewayResponse ().
	StatusCode *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

A gateway response of a given response type and status code, with optional response parameters and mapping templates. For more information about valid gateway response types, see Gateway Response Types Supported by API Gateway (https://docs.aws.amazon.com/apigateway/latest/developerguide/supported-gateway-response-types.html) Example: Get a Gateway Response of a given response type

Request

This example shows how to get a gateway response of the MISSING_AUTHENTICATION_TOKEN type. GET /restapis/o81lxisefl/gatewayresponses/MISSING_AUTHENTICATION_TOKEN HTTP/1.1 Host: beta-apigateway.us-east-1.amazonaws.com Content-Type: application/json X-Amz-Date: 20170503T202516Z Authorization: AWS4-HMAC-SHA256 Credential={access-key-id}/20170503/us-east-1/apigateway/aws4_request, SignedHeaders=content-type;host;x-amz-date, Signature=1b52460e3159c1a26cff29093855d50ea141c1c5b937528fecaf60f51129697a Cache-Control: no-cache Postman-Token: 3b2a1ce9-c848-2e26-2e2f-9c2caefbed45 The response type is specified as a URL path. Response

The successful operation returns the 200 OK status code and a payload similar to the following: { "_links": { "curies": { "href": "http://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-gatewayresponse-{rel}.html", "name": "gatewayresponse", "templated": true }, "self": { "href": "/restapis/o81lxisefl/gatewayresponses/MISSING_AUTHENTICATION_TOKEN" }, "gatewayresponse:delete": { "href": "/restapis/o81lxisefl/gatewayresponses/MISSING_AUTHENTICATION_TOKEN" }, "gatewayresponse:put": { "href": "/restapis/o81lxisefl/gatewayresponses/{response_type}", "templated": true }, "gatewayresponse:update": { "href": "/restapis/o81lxisefl/gatewayresponses/MISSING_AUTHENTICATION_TOKEN" } }, "defaultResponse": false, "responseParameters": { "gatewayresponse.header.x-request-path": "method.request.path.petId", "gatewayresponse.header.Access-Control-Allow-Origin": "'a.b.c'", "gatewayresponse.header.x-request-query": "method.request.querystring.q", "gatewayresponse.header.x-request-header": "method.request.header.Accept" }, "responseTemplates": { "application/json": "{\n \"message\": $context.error.messageString,\n \"type\": \"$context.error.responseType\",\n \"stage\": \"$context.stage\",\n \"resourcePath\": \"$context.resourcePath\",\n \"stageVariables.a\": \"$stageVariables.a\",\n \"statusCode\": \"'404'\"\n}" }, "responseType": "MISSING_AUTHENTICATION_TOKEN", "statusCode": "404" }

</div>

<div class="seeAlso"> <a href="https://docs.aws.amazon.com/apigateway/latest/developerguide/customize-gateway-responses.html">Customize Gateway Responses</a> </div>

type UpdateIntegrationInput

type UpdateIntegrationInput struct {
	// [Required] Represents an update integration request's HTTP method.
	HttpMethod *string
	Name       *string
	// [Required] The string identifier of the associated RestApi ().
	RestApiId        *string
	Title            *string
	TemplateSkipList []*string
	Template         *bool
	// [Required] Represents an update integration request's resource identifier.
	ResourceId *string
	// A list of update operations to be applied to the specified resource and in the
	// order specified in this list.
	PatchOperations []*types.PatchOperation
}

Represents an update integration request.

type UpdateIntegrationOutput

type UpdateIntegrationOutput struct {
	// Specifies a group of related cached parameters. By default, API Gateway uses the
	// resource ID as the cacheNamespace. You can specify the same cacheNamespace
	// across resources to return the same cached data for requests to different
	// resources.
	CacheNamespace *string
	// Specifies the integration's HTTP method type.
	HttpMethod *string
	// Specifies an API method integration type. The valid value is one of the
	// following:
	//
	//     * AWS: for integrating the API method request with an AWS
	// service action, including the Lambda function-invoking action. With the Lambda
	// function-invoking action, this is referred to as the Lambda custom integration.
	// With any other AWS service action, this is known as AWS integration.
	//
	//     *
	// AWS_PROXY: for integrating the API method request with the Lambda
	// function-invoking action with the client request passed through as-is. This
	// integration is also referred to as the Lambda proxy integration.
	//
	//     * HTTP:
	// for integrating the API method request with an HTTP endpoint, including a
	// private HTTP endpoint within a VPC. This integration is also referred to as the
	// HTTP custom integration.
	//
	//     * HTTP_PROXY: for integrating the API method
	// request with an HTTP endpoint, including a private HTTP endpoint within a VPC,
	// with the client request passed through as-is. This is also referred to as the
	// HTTP proxy integration.
	//
	//     * MOCK: for integrating the API method request with
	// API Gateway as a "loop-back" endpoint without invoking any backend.
	//
	// For the
	// HTTP and HTTP proxy integrations, each integration can specify a protocol
	// (http/https), port and path. Standard 80 and 443 ports are supported as well as
	// custom ports above 1024. An HTTP or HTTP proxy integration with a connectionType
	// of VPC_LINK is referred to as a private integration and uses a VpcLink () to
	// connect API Gateway to a network load balancer of a VPC.
	Type types.IntegrationType
	// Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000
	// milliseconds or 29 seconds.
	TimeoutInMillis *int32
	// Specifies Uniform Resource Identifier (URI) of the integration endpoint.
	//
	//     *
	// For HTTP or HTTP_PROXY integrations, the URI must be a fully formed, encoded
	// HTTP(S) URL according to the RFC-3986 specification
	// (https://en.wikipedia.org/wiki/Uniform_Resource_Identifier), for either standard
	// integration, where connectionType is not VPC_LINK, or private integration, where
	// connectionType is VPC_LINK. For a private HTTP integration, the URI is not used
	// for routing.
	//
	//     * For AWS or AWS_PROXY integrations, the URI is of the form
	// arn:aws:apigateway:{region}:{subdomain.service|service}:path|action/{service_api}.
	// Here, {Region} is the API Gateway region (e.g., us-east-1); {service} is the
	// name of the integrated AWS service (e.g., s3); and {subdomain} is a designated
	// subdomain supported by certain AWS service for fast host-name lookup. action can
	// be used for an AWS service action-based API, using an
	// Action={name}&{p1}={v1}&p2={v2}... query string. The ensuing {service_api}
	// refers to a supported action {name} plus any required input parameters.
	// Alternatively, path can be used for an AWS service path-based API. The ensuing
	// service_api refers to the path to an AWS service resource, including the region
	// of the integrated AWS service, if applicable. For example, for integration with
	// the S3 API of GetObject
	// (https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectGET.html), the uri
	// can be either
	// arn:aws:apigateway:us-west-2:s3:action/GetObject&Bucket={bucket}&Key={key} or
	// arn:aws:apigateway:us-west-2:s3:path/{bucket}/{key}
	Uri *string
	// The type of the network connection to the integration endpoint. The valid value
	// is INTERNET for connections through the public routable internet or VPC_LINK for
	// private connections between API Gateway and a network load balancer in a VPC.
	// The default value is INTERNET.
	ConnectionType types.ConnectionType
	// A key-value map specifying request parameters that are passed from the method
	// request to the back end. The key is an integration request parameter name and
	// the associated value is a method request parameter value or static value that
	// must be enclosed within single quotes and pre-encoded as required by the back
	// end. The method request parameter value must match the pattern of
	// method.request.{location}.{name}, where location is querystring, path, or header
	// and name must be a valid and unique method request parameter name.
	RequestParameters map[string]*string
	// Represents a map of Velocity templates that are applied on the request payload
	// based on the value of the Content-Type header sent by the client. The content
	// type value is the key in this map, and the template (as a String) is the value.
	RequestTemplates map[string]*string
	// A list of request parameters whose values API Gateway caches. To be valid values
	// for cacheKeyParameters, these parameters must also be specified for Method
	// ()requestParameters.
	CacheKeyParameters []*string
	// The (id
	// (https://docs.aws.amazon.com/apigateway/api-reference/resource/vpc-link/#id)) of
	// the VpcLink () used for the integration when connectionType=VPC_LINK and
	// undefined, otherwise.
	ConnectionId *string
	// Specifies how the method request body of an unmapped content type will be passed
	// through the integration request to the back end without transformation. A
	// content type is unmapped if no mapping template is defined in the integration or
	// the content type does not match any of the mapped content types, as specified in
	// requestTemplates. The valid value is one of the following:
	//
	//     * WHEN_NO_MATCH:
	// passes the method request body through the integration request to the back end
	// without transformation when the method request content type does not match any
	// content type associated with the mapping templates defined in the integration
	// request.
	//
	//     * WHEN_NO_TEMPLATES: passes the method request body through the
	// integration request to the back end without transformation when no mapping
	// template is defined in the integration request. If a template is defined when
	// this option is selected, the method request of an unmapped content-type will be
	// rejected with an HTTP 415 Unsupported Media Type response.
	//
	//     * NEVER: rejects
	// the method request with an HTTP 415 Unsupported Media Type response when either
	// the method request content type does not match any content type associated with
	// the mapping templates defined in the integration request or no mapping template
	// is defined in the integration request.
	PassthroughBehavior *string
	// Specifies the TLS configuration for an integration.
	TlsConfig *types.TlsConfig
	// Specifies the credentials required for the integration, if any. For AWS
	// integrations, three options are available. To specify an IAM Role for API
	// Gateway to assume, use the role's Amazon Resource Name (ARN). To require that
	// the caller's identity be passed through from the request, specify the string
	// arn:aws:iam::\*:user/\*. To use resource-based permissions on supported AWS
	// services, specify null.
	Credentials *string
	// Specifies how to handle request payload content type conversions. Supported
	// values are CONVERT_TO_BINARY and CONVERT_TO_TEXT, with the following
	// behaviors:
	//
	//     * CONVERT_TO_BINARY: Converts a request payload from a
	// Base64-encoded string to the corresponding binary blob.
	//
	//     * CONVERT_TO_TEXT:
	// Converts a request payload from a binary blob to a Base64-encoded string.
	//
	// If
	// this property is not defined, the request payload will be passed through from
	// the method request to integration request without modification, provided that
	// the passthroughBehavior is configured to support payload pass-through.
	ContentHandling types.ContentHandlingStrategy
	// Specifies the integration's responses.
	// Example: Get integration responses of a
	// method
	//
	// Request
	//
	//     GET
	// /restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200
	// HTTP/1.1 Content-Type: application/json Host: apigateway.us-east-1.amazonaws.com
	// X-Amz-Date: 20160607T191449Z Authorization: AWS4-HMAC-SHA256
	// Credential={access_key_ID}/20160607/us-east-1/apigateway/aws4_request,
	// SignedHeaders=content-type;host;x-amz-date, Signature={sig4_hash}
	//
	// Response
	//
	// The
	// successful response returns 200 OK status and a payload as follows: { "_links":
	// { "curies": { "href":
	// "https://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-integration-response-{rel}.html",
	// "name": "integrationresponse", "templated": true }, "self": { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200",
	// "title": "200" }, "integrationresponse:delete": { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200"
	// }, "integrationresponse:update": { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200"
	// } }, "responseParameters": { "method.response.header.Content-Type":
	// "'application/xml'" }, "responseTemplates": { "application/json":
	// "$util.urlDecode(\"%3CkinesisStreams%3E#foreach($stream in
	// $input.path('$.StreamNames'))%3Cstream%3E%3Cname%3E$stream%3C/name%3E%3C/stream%3E#end%3C/kinesisStreams%3E\")\n"
	// }, "statusCode": "200" }Creating an API
	// (https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-create-api.html)
	IntegrationResponses map[string]*types.IntegrationResponse

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents an HTTP, HTTP_PROXY, AWS, AWS_PROXY, or Mock integration. In the API Gateway console, the built-in Lambda integration is an AWS integration. Creating an API (https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-create-api.html)

type UpdateIntegrationResponseInput

type UpdateIntegrationResponseInput struct {
	Template *bool
	// [Required] Specifies an update integration response request's status code.
	StatusCode *string
	// [Required] Specifies an update integration response request's HTTP method.
	HttpMethod *string
	// [Required] Specifies an update integration response request's resource
	// identifier.
	ResourceId *string
	// [Required] The string identifier of the associated RestApi ().
	RestApiId        *string
	Name             *string
	Title            *string
	TemplateSkipList []*string
	// A list of update operations to be applied to the specified resource and in the
	// order specified in this list.
	PatchOperations []*types.PatchOperation
}

Represents an update integration response request.

type UpdateIntegrationResponseOutput

type UpdateIntegrationResponseOutput struct {
	// A key-value map specifying response parameters that are passed to the method
	// response from the back end. The key is a method response header parameter name
	// and the mapped value is an integration response header value, a static value
	// enclosed within a pair of single quotes, or a JSON expression from the
	// integration response body. The mapping key must match the pattern of
	// method.response.header.{name}, where name is a valid and unique header name. The
	// mapped non-static value must match the pattern of
	// integration.response.header.{name} or
	// integration.response.body.{JSON-expression}, where name is a valid and unique
	// response header name and JSON-expression is a valid JSON expression without the
	// $ prefix.
	ResponseParameters map[string]*string
	// Specifies the templates used to transform the integration response body.
	// Response templates are represented as a key/value map, with a content-type as
	// the key and a template as the value.
	ResponseTemplates map[string]*string
	// Specifies the status code that is used to map the integration response to an
	// existing MethodResponse ().
	StatusCode *string
	// Specifies the regular expression (regex) pattern used to choose an integration
	// response based on the response from the back end. For example, if the success
	// response returns nothing and the error response returns some string, you could
	// use the .+ regex to match error response. However, make sure that the error
	// response does not contain any newline (\n) character in such cases. If the back
	// end is an AWS Lambda function, the AWS Lambda function error header is matched.
	// For all other HTTP and AWS back ends, the HTTP status code is matched.
	SelectionPattern *string
	// Specifies how to handle response payload content type conversions. Supported
	// values are CONVERT_TO_BINARY and CONVERT_TO_TEXT, with the following
	// behaviors:
	//
	//     * CONVERT_TO_BINARY: Converts a response payload from a
	// Base64-encoded string to the corresponding binary blob.
	//
	//     * CONVERT_TO_TEXT:
	// Converts a response payload from a binary blob to a Base64-encoded string.
	//
	// If
	// this property is not defined, the response payload will be passed through from
	// the integration response to the method response without modification.
	ContentHandling types.ContentHandlingStrategy

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents an integration response. The status code must map to an existing MethodResponse (), and parameters and templates can be used to transform the back-end response. Creating an API (https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-create-api.html)

type UpdateMethodInput

type UpdateMethodInput struct {
	TemplateSkipList []*string
	// [Required] The HTTP verb of the Method () resource.
	HttpMethod *string
	Title      *string
	Name       *string
	// [Required] The string identifier of the associated RestApi ().
	RestApiId *string
	// [Required] The Resource () identifier for the Method () resource.
	ResourceId *string
	Template   *bool
	// A list of update operations to be applied to the specified resource and in the
	// order specified in this list.
	PatchOperations []*types.PatchOperation
}

Request to update an existing Method () resource.

type UpdateMethodOutput

type UpdateMethodOutput struct {
	// A key-value map defining required or optional method request parameters that can
	// be accepted by API Gateway. A key is a method request parameter name matching
	// the pattern of method.request.{location}.{name}, where location is querystring,
	// path, or header and name is a valid and unique parameter name. The value
	// associated with the key is a Boolean flag indicating whether the parameter is
	// required (true) or optional (false). The method request parameter names defined
	// here are available in Integration () to be mapped to integration request
	// parameters or templates.
	RequestParameters map[string]*bool
	// The method's authorization type. Valid values are NONE for open access, AWS_IAM
	// for using AWS IAM permissions, CUSTOM for using a custom authorizer, or
	// COGNITO_USER_POOLS for using a Cognito user pool.
	AuthorizationType *string
	// The method's HTTP verb.
	HttpMethod *string
	// Gets a method response associated with a given HTTP status code. The collection
	// of method responses are encapsulated in a key-value map, where the key is a
	// response's HTTP status code and the value is a MethodResponse () resource that
	// specifies the response returned to the caller from the back end through the
	// integration response.
	// Example: Get a 200 OK response of a GET method
	//
	// Request
	//
	//
	// GET /restapis/uojnr9hd57/resources/0cjtch/methods/GET/responses/200 HTTP/1.1
	// Content-Type: application/json Host: apigateway.us-east-1.amazonaws.com
	// Content-Length: 117 X-Amz-Date: 20160613T215008Z Authorization: AWS4-HMAC-SHA256
	// Credential={access_key_ID}/20160613/us-east-1/apigateway/aws4_request,
	// SignedHeaders=content-type;host;x-amz-date, Signature={sig4_hash}
	//
	// Response
	//
	// The
	// successful response returns a 200 OK status code and a payload similar to the
	// following: { "_links": { "curies": { "href":
	// "https://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-method-response-{rel}.html",
	// "name": "methodresponse", "templated": true }, "self": { "href":
	// "/restapis/uojnr9hd57/resources/0cjtch/methods/GET/responses/200", "title":
	// "200" }, "methodresponse:delete": { "href":
	// "/restapis/uojnr9hd57/resources/0cjtch/methods/GET/responses/200" },
	// "methodresponse:update": { "href":
	// "/restapis/uojnr9hd57/resources/0cjtch/methods/GET/responses/200" } },
	// "responseModels": { "application/json": "Empty" }, "responseParameters": {
	// "method.response.header.operator": false, "method.response.header.operand_2":
	// false, "method.response.header.operand_1": false }, "statusCode": "200" }AWS CLI
	// (https://docs.aws.amazon.com/cli/latest/reference/apigateway/get-method-response.html)
	MethodResponses map[string]*types.MethodResponse
	// The identifier of a RequestValidator () for request validation.
	RequestValidatorId *string
	// The identifier of an Authorizer () to use on this method. The authorizationType
	// must be CUSTOM.
	AuthorizerId *string
	// Gets the method's integration responsible for passing the client-submitted
	// request to the back end and performing necessary transformations to make the
	// request compliant with the back end.
	// Example:
	//
	// Request
	//
	//     GET
	// /restapis/uojnr9hd57/resources/0cjtch/methods/GET/integration HTTP/1.1
	// Content-Type: application/json Host: apigateway.us-east-1.amazonaws.com
	// Content-Length: 117 X-Amz-Date: 20160613T213210Z Authorization: AWS4-HMAC-SHA256
	// Credential={access_key_ID}/20160613/us-east-1/apigateway/aws4_request,
	// SignedHeaders=content-type;host;x-amz-date, Signature={sig4_hash}
	//
	// Response
	//
	// The
	// successful response returns a 200 OK status code and a payload similar to the
	// following: { "_links": { "curies": [ { "href":
	// "https://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-integration-{rel}.html",
	// "name": "integration", "templated": true }, { "href":
	// "https://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-integration-response-{rel}.html",
	// "name": "integrationresponse", "templated": true } ], "self": { "href":
	// "/restapis/uojnr9hd57/resources/0cjtch/methods/GET/integration" },
	// "integration:delete": { "href":
	// "/restapis/uojnr9hd57/resources/0cjtch/methods/GET/integration" },
	// "integration:responses": { "href":
	// "/restapis/uojnr9hd57/resources/0cjtch/methods/GET/integration/responses/200",
	// "name": "200", "title": "200" }, "integration:update": { "href":
	// "/restapis/uojnr9hd57/resources/0cjtch/methods/GET/integration" },
	// "integrationresponse:put": { "href":
	// "/restapis/uojnr9hd57/resources/0cjtch/methods/GET/integration/responses/{status_code}",
	// "templated": true } }, "cacheKeyParameters": [], "cacheNamespace": "0cjtch",
	// "credentials": "arn:aws:iam::123456789012:role/apigAwsProxyRole", "httpMethod":
	// "POST", "passthroughBehavior": "WHEN_NO_MATCH", "requestTemplates": {
	// "application/json": "{\n \"a\": \"$input.params('operand1')\",\n \"b\":
	// \"$input.params('operand2')\", \n \"op\": \"$input.params('operator')\" \n}" },
	// "type": "AWS", "uri":
	// "arn:aws:apigateway:us-west-2:lambda:path//2015-03-31/functions/arn:aws:lambda:us-west-2:123456789012:function:Calc/invocations",
	// "_embedded": { "integration:responses": { "_links": { "self": { "href":
	// "/restapis/uojnr9hd57/resources/0cjtch/methods/GET/integration/responses/200",
	// "name": "200", "title": "200" }, "integrationresponse:delete": { "href":
	// "/restapis/uojnr9hd57/resources/0cjtch/methods/GET/integration/responses/200" },
	// "integrationresponse:update": { "href":
	// "/restapis/uojnr9hd57/resources/0cjtch/methods/GET/integration/responses/200" }
	// }, "responseParameters": { "method.response.header.operator":
	// "integration.response.body.op", "method.response.header.operand_2":
	// "integration.response.body.b", "method.response.header.operand_1":
	// "integration.response.body.a" }, "responseTemplates": { "application/json":
	// "#set($res = $input.path('$'))\n{\n \"result\": \"$res.a, $res.b, $res.op =>
	// $res.c\",\n \"a\" : \"$res.a\",\n \"b\" : \"$res.b\",\n \"op\" : \"$res.op\",\n
	// \"c\" : \"$res.c\"\n}" }, "selectionPattern": "", "statusCode": "200" } } }AWS
	// CLI
	// (https://docs.aws.amazon.com/cli/latest/reference/apigateway/get-integration.html)
	MethodIntegration *types.Integration
	// A human-friendly operation identifier for the method. For example, you can
	// assign the operationName of ListPets for the GET /pets method in the PetStore
	// example.
	OperationName *string
	// A boolean flag specifying whether a valid ApiKey () is required to invoke this
	// method.
	ApiKeyRequired *bool
	// A list of authorization scopes configured on the method. The scopes are used
	// with a COGNITO_USER_POOLS authorizer to authorize the method invocation. The
	// authorization works by matching the method scopes against the scopes parsed from
	// the access token in the incoming request. The method invocation is authorized if
	// any method scopes matches a claimed scope in the access token. Otherwise, the
	// invocation is not authorized. When the method scope is configured, the client
	// must provide an access token instead of an identity token for authorization
	// purposes.
	AuthorizationScopes []*string
	// A key-value map specifying data schemas, represented by Model () resources, (as
	// the mapped value) of the request payloads of given content types (as the mapping
	// key).
	RequestModels map[string]*string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents a client-facing interface by which the client calls the API to access back-end resources. A Method resource is integrated with an Integration () resource. Both consist of a request and one or more responses. The method request takes the client input that is passed to the back end through the integration request. A method response returns the output from the back end to the client through an integration response. A method request is embodied in a Method resource, whereas an integration request is embodied in an Integration () resource. On the other hand, a method response is represented by a MethodResponse () resource, whereas an integration response is represented by an IntegrationResponse () resource. Example: Retrive the GET method on a specified resource

Request

The following example request retrieves the information about the GET method on an API resource (3kzxbg5sa2) of an API (fugvjdxtri). GET /restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET HTTP/1.1 Content-Type: application/json Host: apigateway.us-east-1.amazonaws.com X-Amz-Date: 20160603T210259Z Authorization: AWS4-HMAC-SHA256 Credential={access_key_ID}/20160603/us-east-1/apigateway/aws4_request, SignedHeaders=content-type;host;x-amz-date, Signature={sig4_hash} Response

The successful response returns a 200 OK status code and a payload similar to the following: { "_links": { "curies": [ { "href": "https://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-integration-{rel}.html", "name": "integration", "templated": true }, { "href": "https://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-integration-response-{rel}.html", "name": "integrationresponse", "templated": true }, { "href": "https://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-method-{rel}.html", "name": "method", "templated": true }, { "href": "https://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-method-response-{rel}.html", "name": "methodresponse", "templated": true } ], "self": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET", "name": "GET", "title": "GET" }, "integration:put": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration" }, "method:delete": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET" }, "method:integration": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration" }, "method:responses": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200", "name": "200", "title": "200" }, "method:update": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET" }, "methodresponse:put": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/{status_code}", "templated": true } }, "apiKeyRequired": true, "authorizationType": "NONE", "httpMethod": "GET", "_embedded": { "method:integration": { "_links": { "self": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration" }, "integration:delete": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration" }, "integration:responses": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200", "name": "200", "title": "200" }, "integration:update": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration" }, "integrationresponse:put": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/{status_code}", "templated": true } }, "cacheKeyParameters": [], "cacheNamespace": "3kzxbg5sa2", "credentials": "arn:aws:iam::123456789012:role/apigAwsProxyRole", "httpMethod": "POST", "passthroughBehavior": "WHEN_NO_MATCH", "requestParameters": { "integration.request.header.Content-Type": "'application/x-amz-json-1.1'" }, "requestTemplates": { "application/json": "{\n}" }, "type": "AWS", "uri": "arn:aws:apigateway:us-east-1:kinesis:action/ListStreams", "_embedded": { "integration:responses": { "_links": { "self": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200", "name": "200", "title": "200" }, "integrationresponse:delete": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200" }, "integrationresponse:update": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200" } }, "responseParameters": { "method.response.header.Content-Type": "'application/xml'" }, "responseTemplates": { "application/json": "$util.urlDecode(\"%3CkinesisStreams%3E%23foreach(%24stream%20in%20%24input.path(%27%24.StreamNames%27))%3Cstream%3E%3Cname%3E%24stream%3C%2Fname%3E%3C%2Fstream%3E%23end%3C%2FkinesisStreams%3E\")" }, "statusCode": "200" } } }, "method:responses": { "_links": { "self": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200", "name": "200", "title": "200" }, "methodresponse:delete": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200" }, "methodresponse:update": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200" } }, "responseModels": { "application/json": "Empty" }, "responseParameters": { "method.response.header.Content-Type": false }, "statusCode": "200" } } } In the example above, the response template for the 200 OK response maps the JSON output from the ListStreams action in the back end to an XML output. The mapping template is URL-encoded as %3CkinesisStreams%3E%23foreach(%24stream%20in%20%24input.path(%27%24.StreamNames%27))%3Cstream%3E%3Cname%3E%24stream%3C%2Fname%3E%3C%2Fstream%3E%23end%3C%2FkinesisStreams%3E and the output is decoded using the $util.urlDecode() (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html#util-templat-reference) helper function. MethodResponse (), Integration (), IntegrationResponse (), Resource (), Set up an API's method (https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-method-settings.html)

type UpdateMethodResponseInput

type UpdateMethodResponseInput struct {
	Template         *bool
	Title            *string
	TemplateSkipList []*string
	// [Required] The Resource () identifier for the MethodResponse () resource.
	ResourceId *string
	// [Required] The HTTP verb of the Method () resource.
	HttpMethod *string
	Name       *string
	// [Required] The status code for the MethodResponse () resource.
	StatusCode *string
	// [Required] The string identifier of the associated RestApi ().
	RestApiId *string
	// A list of update operations to be applied to the specified resource and in the
	// order specified in this list.
	PatchOperations []*types.PatchOperation
}

A request to update an existing MethodResponse () resource.

type UpdateMethodResponseOutput

type UpdateMethodResponseOutput struct {
	// Specifies the Model () resources used for the response's content-type. Response
	// models are represented as a key/value map, with a content-type as the key and a
	// Model () name as the value.
	ResponseModels map[string]*string
	// The method response's status code.
	StatusCode *string
	// A key-value map specifying required or optional response parameters that API
	// Gateway can send back to the caller. A key defines a method response header and
	// the value specifies whether the associated method response header is required or
	// not. The expression of the key must match the pattern
	// method.response.header.{name}, where name is a valid and unique header name. API
	// Gateway passes certain integration response data to the method response headers
	// specified here according to the mapping you prescribe in the API's
	// IntegrationResponse (). The integration response data that can be mapped include
	// an integration response header expressed in integration.response.header.{name},
	// a static value enclosed within a pair of single quotes (e.g.,
	// 'application/json'), or a JSON expression from the back-end response payload in
	// the form of integration.response.body.{JSON-expression}, where JSON-expression
	// is a valid JSON expression without the $ prefix.)
	ResponseParameters map[string]*bool

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents a method response of a given HTTP status code returned to the client. The method response is passed from the back end through the associated integration response that can be transformed using a mapping template. Example: A MethodResponse instance of an API

Request

The example request retrieves a MethodResponse of the 200 status code. GET /restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200 HTTP/1.1 Content-Type: application/json Host: apigateway.us-east-1.amazonaws.com X-Amz-Date: 20160603T222952Z Authorization: AWS4-HMAC-SHA256 Credential={access_key_ID}/20160603/us-east-1/apigateway/aws4_request, SignedHeaders=content-type;host;x-amz-date, Signature={sig4_hash} Response

The successful response returns 200 OK status and a payload as follows: { "_links": { "curies": { "href": "https://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-method-response-{rel}.html", "name": "methodresponse", "templated": true }, "self": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200", "title": "200" }, "methodresponse:delete": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200" }, "methodresponse:update": { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200" } }, "responseModels": { "application/json": "Empty" }, "responseParameters": { "method.response.header.Content-Type": false }, "statusCode": "200" }Method (), IntegrationResponse (), Integration ()Creating an API (https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-create-api.html)

type UpdateModelInput

type UpdateModelInput struct {
	// [Required] The name of the model to update.
	ModelName        *string
	Title            *string
	Name             *string
	TemplateSkipList []*string
	// [Required] The string identifier of the associated RestApi ().
	RestApiId *string
	Template  *bool
	// A list of update operations to be applied to the specified resource and in the
	// order specified in this list.
	PatchOperations []*types.PatchOperation
}

Request to update an existing model in an existing RestApi () resource.

type UpdateModelOutput

type UpdateModelOutput struct {
	// The identifier for the model resource.
	Id *string
	// The name of the model. Must be an alphanumeric string.
	Name *string
	// The content-type for the model.
	ContentType *string
	// The description of the model.
	Description *string
	// The schema for the model. For application/json models, this should be JSON
	// schema draft 4 (https://tools.ietf.org/html/draft-zyp-json-schema-04) model. Do
	// not include "\*/" characters in the description of any properties because such
	// "\*/" characters may be interpreted as the closing marker for comments in some
	// languages, such as Java or JavaScript, causing the installation of your API's
	// SDK generated by API Gateway to fail.
	Schema *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents the data structure of a method's request or response payload. A request model defines the data structure of the client-supplied request payload. A response model defines the data structure of the response payload returned by the back end. Although not required, models are useful for mapping payloads between the front end and back end. A model is used for generating an API's SDK, validating the input request body, and creating a skeletal mapping template. Method (), MethodResponse (), Models and Mappings (https://docs.aws.amazon.com/apigateway/latest/developerguide/models-mappings.html)

type UpdateRequestValidatorInput

type UpdateRequestValidatorInput struct {
	Name             *string
	TemplateSkipList []*string
	// [Required] The string identifier of the associated RestApi ().
	RestApiId *string
	Title     *string
	// [Required] The identifier of RequestValidator () to be updated.
	RequestValidatorId *string
	Template           *bool
	// A list of update operations to be applied to the specified resource and in the
	// order specified in this list.
	PatchOperations []*types.PatchOperation
}

Updates a RequestValidator () of a given RestApi ().

type UpdateRequestValidatorOutput

type UpdateRequestValidatorOutput struct {
	// The identifier of this RequestValidator ().
	Id *string
	// A Boolean flag to indicate whether to validate a request body according to the
	// configured Model () schema.
	ValidateRequestBody *bool
	// A Boolean flag to indicate whether to validate request parameters (true) or not
	// (false).
	ValidateRequestParameters *bool
	// The name of this RequestValidator ()
	Name *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

A set of validation rules for incoming Method () requests. In OpenAPI, a RequestValidator () of an API is defined by the x-amazon-apigateway-request-validators.requestValidator (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions.html#api-gateway-swagger-extensions-request-validators.requestValidator.html) object. It the referenced using the x-amazon-apigateway-request-validator (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions.html#api-gateway-swagger-extensions-request-validator) property. Enable Basic Request Validation in API Gateway (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-method-request-validation.html)

type UpdateResourceInput

type UpdateResourceInput struct {
	TemplateSkipList []*string
	Template         *bool
	Title            *string
	// [Required] The identifier of the Resource () resource.
	ResourceId *string
	// [Required] The string identifier of the associated RestApi ().
	RestApiId *string
	Name      *string
	// A list of update operations to be applied to the specified resource and in the
	// order specified in this list.
	PatchOperations []*types.PatchOperation
}

Request to change information about a Resource () resource.

type UpdateResourceOutput

type UpdateResourceOutput struct {
	// The resource's identifier.
	Id *string
	// Gets an API resource's method of a given HTTP verb. The resource methods are a
	// map of methods indexed by methods' HTTP verbs enabled on the resource. This
	// method map is included in the 200 OK response of the GET
	// /restapis/{restapi_id}/resources/{resource_id} or GET
	// /restapis/{restapi_id}/resources/{resource_id}?embed=methods request.
	// Example:
	// Get the GET method of an API resource
	//
	// Request
	//
	//     GET
	// /restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET HTTP/1.1 Content-Type:
	// application/json Host: apigateway.us-east-1.amazonaws.com X-Amz-Date:
	// 20170223T031827Z Authorization: AWS4-HMAC-SHA256
	// Credential={access_key_ID}/20170223/us-east-1/apigateway/aws4_request,
	// SignedHeaders=content-type;host;x-amz-date, Signature={sig4_hash}
	//
	// Response
	//
	// {
	// "_links": { "curies": [ { "href":
	// "https://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-integration-{rel}.html",
	// "name": "integration", "templated": true }, { "href":
	// "https://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-integration-response-{rel}.html",
	// "name": "integrationresponse", "templated": true }, { "href":
	// "https://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-method-{rel}.html",
	// "name": "method", "templated": true }, { "href":
	// "https://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-method-response-{rel}.html",
	// "name": "methodresponse", "templated": true } ], "self": { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET", "name": "GET", "title":
	// "GET" }, "integration:put": { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration" },
	// "method:delete": { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET" }, "method:integration":
	// { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration" },
	// "method:responses": { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200", "name":
	// "200", "title": "200" }, "method:update": { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET" }, "methodresponse:put":
	// { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/{status_code}",
	// "templated": true } }, "apiKeyRequired": false, "authorizationType": "NONE",
	// "httpMethod": "GET", "_embedded": { "method:integration": { "_links": { "self":
	// { "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration" },
	// "integration:delete": { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration" },
	// "integration:responses": { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200",
	// "name": "200", "title": "200" }, "integration:update": { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration" },
	// "integrationresponse:put": { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/{status_code}",
	// "templated": true } }, "cacheKeyParameters": [], "cacheNamespace": "3kzxbg5sa2",
	// "credentials": "arn:aws:iam::123456789012:role/apigAwsProxyRole", "httpMethod":
	// "POST", "passthroughBehavior": "WHEN_NO_MATCH", "requestParameters": {
	// "integration.request.header.Content-Type": "'application/x-amz-json-1.1'" },
	// "requestTemplates": { "application/json": "{\n}" }, "type": "AWS", "uri":
	// "arn:aws:apigateway:us-east-1:kinesis:action/ListStreams", "_embedded": {
	// "integration:responses": { "_links": { "self": { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200",
	// "name": "200", "title": "200" }, "integrationresponse:delete": { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200"
	// }, "integrationresponse:update": { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/integration/responses/200"
	// } }, "responseParameters": { "method.response.header.Content-Type":
	// "'application/xml'" }, "responseTemplates": { "application/json":
	// "$util.urlDecode(\"%3CkinesisStreams%3E#foreach($stream in
	// $input.path('$.StreamNames'))%3Cstream%3E%3Cname%3E$stream%3C/name%3E%3C/stream%3E#end%3C/kinesisStreams%3E\")\n"
	// }, "statusCode": "200" } } }, "method:responses": { "_links": { "self": {
	// "href": "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200",
	// "name": "200", "title": "200" }, "methodresponse:delete": { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200" },
	// "methodresponse:update": { "href":
	// "/restapis/fugvjdxtri/resources/3kzxbg5sa2/methods/GET/responses/200" } },
	// "responseModels": { "application/json": "Empty" }, "responseParameters": {
	// "method.response.header.Content-Type": false }, "statusCode": "200" } } } If the
	// OPTIONS is enabled on the resource, you can follow the example here to get that
	// method. Just replace the GET of the last path segment in the request URL with
	// OPTIONS.
	ResourceMethods map[string]*types.Method
	// The parent resource's identifier.
	ParentId *string
	// The full path for this resource.
	Path *string
	// The last path segment for this resource.
	PathPart *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents an API resource. Create an API (https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-create-api.html)

type UpdateRestApiInput

type UpdateRestApiInput struct {
	Title            *string
	TemplateSkipList []*string
	Name             *string
	Template         *bool
	// [Required] The string identifier of the associated RestApi ().
	RestApiId *string
	// A list of update operations to be applied to the specified resource and in the
	// order specified in this list.
	PatchOperations []*types.PatchOperation
}

Request to update an existing RestApi () resource in your collection.

type UpdateRestApiOutput

type UpdateRestApiOutput struct {
	// The API's description.
	Description *string
	// A stringified JSON policy document that applies to this RestApi regardless of
	// the caller and Method () configuration.
	Policy *string
	// The endpoint configuration of this RestApi () showing the endpoint types of the
	// API.
	EndpointConfiguration *types.EndpointConfiguration
	// The source of the API key for metering requests according to a usage plan. Valid
	// values are:
	//
	//     * HEADER to read the API key from the X-API-Key header of a
	// request.
	//
	//     * AUTHORIZER to read the API key from the UsageIdentifierKey from
	// a custom authorizer.
	ApiKeySource types.ApiKeySourceType
	// The API's name.
	Name *string
	// A version identifier for the API.
	Version *string
	// The collection of tags. Each tag element is associated with a given resource.
	Tags map[string]*string
	// The warning messages reported when failonwarnings is turned on during API
	// import.
	Warnings []*string
	// The timestamp when the API was created.
	CreatedDate *time.Time
	// The API's identifier. This identifier is unique across all of your APIs in API
	// Gateway.
	Id *string
	// The list of binary media types supported by the RestApi (). By default, the
	// RestApi () supports only UTF-8-encoded text payloads.
	BinaryMediaTypes []*string
	// A nullable integer that is used to enable compression (with non-negative between
	// 0 and 10485760 (10M) bytes, inclusive) or disable compression (with a null
	// value) on an API. When compression is enabled, compression or decompression is
	// not applied on the payload if the payload size is smaller than this value.
	// Setting it to zero allows compression for any payload size.
	MinimumCompressionSize *int32

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents a REST API. Create an API (https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-create-api.html)

type UpdateStageInput

type UpdateStageInput struct {
	Title            *string
	TemplateSkipList []*string
	Name             *string
	// [Required] The name of the Stage () resource to change information about.
	StageName *string
	Template  *bool
	// [Required] The string identifier of the associated RestApi ().
	RestApiId *string
	// A list of update operations to be applied to the specified resource and in the
	// order specified in this list.
	PatchOperations []*types.PatchOperation
}

Requests API Gateway to change information about a Stage () resource.

type UpdateStageOutput

type UpdateStageOutput struct {
	// The identifier of the Deployment () that the stage points to.
	DeploymentId *string
	// The stage's description.
	Description *string
	// The name of the stage is the first path segment in the Uniform Resource
	// Identifier (URI) of a call to API Gateway. Stage names can only contain
	// alphanumeric characters, hyphens, and underscores. Maximum length is 128
	// characters.
	StageName *string
	// The collection of tags. Each tag element is associated with a given resource.
	Tags map[string]*string
	// The status of the cache cluster for the stage, if enabled.
	CacheClusterStatus types.CacheClusterStatus
	// The identifier of a client certificate for an API stage.
	ClientCertificateId *string
	// Specifies whether a cache cluster is enabled for the stage.
	CacheClusterEnabled *bool
	// Settings for the canary deployment in this stage.
	CanarySettings *types.CanarySettings
	// A map that defines the stage variables for a Stage () resource. Variable names
	// can have alphanumeric and underscore characters, and the values must match
	// [A-Za-z0-9-._~:/?#&=,]+.
	Variables map[string]*string
	// The size of the cache cluster for the stage, if enabled.
	CacheClusterSize types.CacheClusterSize
	// Settings for logging access in this stage.
	AccessLogSettings *types.AccessLogSettings
	// The version of the associated API documentation.
	DocumentationVersion *string
	// The timestamp when the stage last updated.
	LastUpdatedDate *time.Time
	// The timestamp when the stage was created.
	CreatedDate *time.Time
	// Specifies whether active tracing with X-ray is enabled for the Stage ().
	TracingEnabled *bool
	// The ARN of the WebAcl associated with the Stage ().
	WebAclArn *string
	// A map that defines the method settings for a Stage () resource. Keys (designated
	// as /{method_setting_key below) are method paths defined as
	// {resource_path}/{http_method} for an individual method override, or /\*/\* for
	// overriding all methods in the stage.
	MethodSettings map[string]*types.MethodSetting

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents a unique identifier for a version of a deployed RestApi () that is callable by users. Deploy an API (https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-deploy-api.html)

type UpdateUsageInput

type UpdateUsageInput struct {
	// [Required] The Id of the usage plan associated with the usage data.
	UsagePlanId      *string
	TemplateSkipList []*string
	Title            *string
	// [Required] The identifier of the API key associated with the usage plan in which
	// a temporary extension is granted to the remaining quota.
	KeyId    *string
	Name     *string
	Template *bool
	// A list of update operations to be applied to the specified resource and in the
	// order specified in this list.
	PatchOperations []*types.PatchOperation
}

The PATCH request to grant a temporary extension to the remaining quota of a usage plan associated with a specified API key.

type UpdateUsageOutput

type UpdateUsageOutput struct {
	// The ending date of the usage data.
	EndDate *string
	// The plan Id associated with this usage data.
	UsagePlanId *string
	// The starting date of the usage data.
	StartDate *string
	// The usage data, as daily logs of used and remaining quotas, over the specified
	// time interval indexed over the API keys in a usage plan. For example, {...,
	// "values" : { "{api_key}" : [ [0, 100], [10, 90], [100, 10]]}, where {api_key}
	// stands for an API key value and the daily log entry is of the format [used
	// quota, remaining quota].
	Items map[string][][]*int64
	// The current pagination position in the paged result set.
	Position *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents the usage data of a usage plan. Create and Use Usage Plans (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-api-usage-plans.html), Manage Usage in a Usage Plan (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-create-usage-plans-with-console.html#api-gateway-usage-plan-manage-usage)

type UpdateUsagePlanInput

type UpdateUsagePlanInput struct {
	// [Required] The Id of the to-be-updated usage plan.
	UsagePlanId      *string
	Title            *string
	TemplateSkipList []*string
	Name             *string
	Template         *bool
	// A list of update operations to be applied to the specified resource and in the
	// order specified in this list.
	PatchOperations []*types.PatchOperation
}

The PATCH request to update a usage plan of a given plan Id.

type UpdateUsagePlanOutput

type UpdateUsagePlanOutput struct {
	// The identifier of a UsagePlan () resource.
	Id *string
	// The request throttle limits of a usage plan.
	Throttle *types.ThrottleSettings
	// The name of a usage plan.
	Name *string
	// The associated API stages of a usage plan.
	ApiStages []*types.ApiStage
	// The AWS Markeplace product identifier to associate with the usage plan as a SaaS
	// product on AWS Marketplace.
	ProductCode *string
	// The maximum number of permitted requests per a given unit time interval.
	Quota *types.QuotaSettings
	// The collection of tags. Each tag element is associated with a given resource.
	Tags map[string]*string
	// The description of a usage plan.
	Description *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

Represents a usage plan than can specify who can assess associated API stages with specified request limits and quotas. In a usage plan, you associate an API by specifying the API's Id and a stage name of the specified API. You add plan customers by adding API keys to the plan. Create and Use Usage Plans (https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-api-usage-plans.html)

type UpdateVpcLinkInput

type UpdateVpcLinkInput struct {
	Template *bool
	// [Required] The identifier of the VpcLink (). It is used in an Integration () to
	// reference this VpcLink ().
	VpcLinkId        *string
	Title            *string
	Name             *string
	TemplateSkipList []*string
	// A list of update operations to be applied to the specified resource and in the
	// order specified in this list.
	PatchOperations []*types.PatchOperation
}

Updates an existing VpcLink () of a specified identifier.

type UpdateVpcLinkOutput

type UpdateVpcLinkOutput struct {
	// The identifier of the VpcLink (). It is used in an Integration () to reference
	// this VpcLink ().
	Id *string
	// The name used to label and identify the VPC link.
	Name *string
	// The description of the VPC link.
	Description *string
	// A description about the VPC link status.
	StatusMessage *string
	// The ARN of the network load balancer of the VPC targeted by the VPC link. The
	// network load balancer must be owned by the same AWS account of the API owner.
	TargetArns []*string
	// The status of the VPC link. The valid values are AVAILABLE, PENDING, DELETING,
	// or FAILED. Deploying an API will wait if the status is PENDING and will fail if
	// the status is DELETING.
	Status types.VpcLinkStatus
	// The collection of tags. Each tag element is associated with a given resource.
	Tags map[string]*string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

An API Gateway VPC link for a RestApi () to access resources in an Amazon Virtual Private Cloud (VPC). To enable access to a resource in an Amazon Virtual Private Cloud through Amazon API Gateway, you, as an API developer, create a VpcLink () resource targeted for one or more network load balancers of the VPC and then integrate an API method with a private integration that uses the VpcLink (). The private integration has an integration type of HTTP or HTTP_PROXY and has a connection type of VPC_LINK. The integration uses the connectionId property to identify the VpcLink () used.

Source Files

Directories

Path Synopsis
internal

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL