package apigateway
import "github.com/aws/aws-sdk-go-v2/service/apigateway"
Index ¶
- Constants
- func AddResolveEndpointMiddleware(stack *middleware.Stack, options ResolveEndpointMiddlewareOptions)
- func NewDefaultEndpointResolver() *internalendpoints.Resolver
- func RemoveResolveEndpointMiddleware(stack *middleware.Stack) error
- type Client
- func New(options Options, optFns ...func(*Options)) *Client
- func NewFromConfig(cfg aws.Config, optFns ...func(*Options)) *Client
- func (c *Client) CreateApiKey(ctx context.Context, params *CreateApiKeyInput, optFns ...func(*Options)) (*CreateApiKeyOutput, error)
- func (c *Client) CreateAuthorizer(ctx context.Context, params *CreateAuthorizerInput, optFns ...func(*Options)) (*CreateAuthorizerOutput, error)
- func (c *Client) CreateBasePathMapping(ctx context.Context, params *CreateBasePathMappingInput, optFns ...func(*Options)) (*CreateBasePathMappingOutput, error)
- func (c *Client) CreateDeployment(ctx context.Context, params *CreateDeploymentInput, optFns ...func(*Options)) (*CreateDeploymentOutput, error)
- func (c *Client) CreateDocumentationPart(ctx context.Context, params *CreateDocumentationPartInput, optFns ...func(*Options)) (*CreateDocumentationPartOutput, error)
- func (c *Client) CreateDocumentationVersion(ctx context.Context, params *CreateDocumentationVersionInput, optFns ...func(*Options)) (*CreateDocumentationVersionOutput, error)
- func (c *Client) CreateDomainName(ctx context.Context, params *CreateDomainNameInput, optFns ...func(*Options)) (*CreateDomainNameOutput, error)
- func (c *Client) CreateModel(ctx context.Context, params *CreateModelInput, optFns ...func(*Options)) (*CreateModelOutput, error)
- func (c *Client) CreateRequestValidator(ctx context.Context, params *CreateRequestValidatorInput, optFns ...func(*Options)) (*CreateRequestValidatorOutput, error)
- func (c *Client) CreateResource(ctx context.Context, params *CreateResourceInput, optFns ...func(*Options)) (*CreateResourceOutput, error)
- func (c *Client) CreateRestApi(ctx context.Context, params *CreateRestApiInput, optFns ...func(*Options)) (*CreateRestApiOutput, error)
- func (c *Client) CreateStage(ctx context.Context, params *CreateStageInput, optFns ...func(*Options)) (*CreateStageOutput, error)
- func (c *Client) CreateUsagePlan(ctx context.Context, params *CreateUsagePlanInput, optFns ...func(*Options)) (*CreateUsagePlanOutput, error)
- func (c *Client) CreateUsagePlanKey(ctx context.Context, params *CreateUsagePlanKeyInput, optFns ...func(*Options)) (*CreateUsagePlanKeyOutput, error)
- func (c *Client) CreateVpcLink(ctx context.Context, params *CreateVpcLinkInput, optFns ...func(*Options)) (*CreateVpcLinkOutput, error)
- func (c *Client) DeleteApiKey(ctx context.Context, params *DeleteApiKeyInput, optFns ...func(*Options)) (*DeleteApiKeyOutput, error)
- func (c *Client) DeleteAuthorizer(ctx context.Context, params *DeleteAuthorizerInput, optFns ...func(*Options)) (*DeleteAuthorizerOutput, error)
- func (c *Client) DeleteBasePathMapping(ctx context.Context, params *DeleteBasePathMappingInput, optFns ...func(*Options)) (*DeleteBasePathMappingOutput, error)
- func (c *Client) DeleteClientCertificate(ctx context.Context, params *DeleteClientCertificateInput, optFns ...func(*Options)) (*DeleteClientCertificateOutput, error)
- func (c *Client) DeleteDeployment(ctx context.Context, params *DeleteDeploymentInput, optFns ...func(*Options)) (*DeleteDeploymentOutput, error)
- func (c *Client) DeleteDocumentationPart(ctx context.Context, params *DeleteDocumentationPartInput, optFns ...func(*Options)) (*DeleteDocumentationPartOutput, error)
- func (c *Client) DeleteDocumentationVersion(ctx context.Context, params *DeleteDocumentationVersionInput, optFns ...func(*Options)) (*DeleteDocumentationVersionOutput, error)
- func (c *Client) DeleteDomainName(ctx context.Context, params *DeleteDomainNameInput, optFns ...func(*Options)) (*DeleteDomainNameOutput, error)
- func (c *Client) DeleteGatewayResponse(ctx context.Context, params *DeleteGatewayResponseInput, optFns ...func(*Options)) (*DeleteGatewayResponseOutput, error)
- func (c *Client) DeleteIntegration(ctx context.Context, params *DeleteIntegrationInput, optFns ...func(*Options)) (*DeleteIntegrationOutput, error)
- func (c *Client) DeleteIntegrationResponse(ctx context.Context, params *DeleteIntegrationResponseInput, optFns ...func(*Options)) (*DeleteIntegrationResponseOutput, error)
- func (c *Client) DeleteMethod(ctx context.Context, params *DeleteMethodInput, optFns ...func(*Options)) (*DeleteMethodOutput, error)
- func (c *Client) DeleteMethodResponse(ctx context.Context, params *DeleteMethodResponseInput, optFns ...func(*Options)) (*DeleteMethodResponseOutput, error)
- func (c *Client) DeleteModel(ctx context.Context, params *DeleteModelInput, optFns ...func(*Options)) (*DeleteModelOutput, error)
- func (c *Client) DeleteRequestValidator(ctx context.Context, params *DeleteRequestValidatorInput, optFns ...func(*Options)) (*DeleteRequestValidatorOutput, error)
- func (c *Client) DeleteResource(ctx context.Context, params *DeleteResourceInput, optFns ...func(*Options)) (*DeleteResourceOutput, error)
- func (c *Client) DeleteRestApi(ctx context.Context, params *DeleteRestApiInput, optFns ...func(*Options)) (*DeleteRestApiOutput, error)
- func (c *Client) DeleteStage(ctx context.Context, params *DeleteStageInput, optFns ...func(*Options)) (*DeleteStageOutput, error)
- func (c *Client) DeleteUsagePlan(ctx context.Context, params *DeleteUsagePlanInput, optFns ...func(*Options)) (*DeleteUsagePlanOutput, error)
- func (c *Client) DeleteUsagePlanKey(ctx context.Context, params *DeleteUsagePlanKeyInput, optFns ...func(*Options)) (*DeleteUsagePlanKeyOutput, error)
- func (c *Client) DeleteVpcLink(ctx context.Context, params *DeleteVpcLinkInput, optFns ...func(*Options)) (*DeleteVpcLinkOutput, error)
- func (c *Client) FlushStageAuthorizersCache(ctx context.Context, params *FlushStageAuthorizersCacheInput, optFns ...func(*Options)) (*FlushStageAuthorizersCacheOutput, error)
- func (c *Client) FlushStageCache(ctx context.Context, params *FlushStageCacheInput, optFns ...func(*Options)) (*FlushStageCacheOutput, error)
- func (c *Client) GenerateClientCertificate(ctx context.Context, params *GenerateClientCertificateInput, optFns ...func(*Options)) (*GenerateClientCertificateOutput, error)
- func (c *Client) GetAccount(ctx context.Context, params *GetAccountInput, optFns ...func(*Options)) (*GetAccountOutput, error)
- func (c *Client) GetApiKey(ctx context.Context, params *GetApiKeyInput, optFns ...func(*Options)) (*GetApiKeyOutput, error)
- func (c *Client) GetApiKeys(ctx context.Context, params *GetApiKeysInput, optFns ...func(*Options)) (*GetApiKeysOutput, error)
- func (c *Client) GetAuthorizer(ctx context.Context, params *GetAuthorizerInput, optFns ...func(*Options)) (*GetAuthorizerOutput, error)
- func (c *Client) GetAuthorizers(ctx context.Context, params *GetAuthorizersInput, optFns ...func(*Options)) (*GetAuthorizersOutput, error)
- func (c *Client) GetBasePathMapping(ctx context.Context, params *GetBasePathMappingInput, optFns ...func(*Options)) (*GetBasePathMappingOutput, error)
- func (c *Client) GetBasePathMappings(ctx context.Context, params *GetBasePathMappingsInput, optFns ...func(*Options)) (*GetBasePathMappingsOutput, error)
- func (c *Client) GetClientCertificate(ctx context.Context, params *GetClientCertificateInput, optFns ...func(*Options)) (*GetClientCertificateOutput, error)
- func (c *Client) GetClientCertificates(ctx context.Context, params *GetClientCertificatesInput, optFns ...func(*Options)) (*GetClientCertificatesOutput, error)
- func (c *Client) GetDeployment(ctx context.Context, params *GetDeploymentInput, optFns ...func(*Options)) (*GetDeploymentOutput, error)
- func (c *Client) GetDeployments(ctx context.Context, params *GetDeploymentsInput, optFns ...func(*Options)) (*GetDeploymentsOutput, error)
- func (c *Client) GetDocumentationPart(ctx context.Context, params *GetDocumentationPartInput, optFns ...func(*Options)) (*GetDocumentationPartOutput, error)
- func (c *Client) GetDocumentationParts(ctx context.Context, params *GetDocumentationPartsInput, optFns ...func(*Options)) (*GetDocumentationPartsOutput, error)
- func (c *Client) GetDocumentationVersion(ctx context.Context, params *GetDocumentationVersionInput, optFns ...func(*Options)) (*GetDocumentationVersionOutput, error)
- func (c *Client) GetDocumentationVersions(ctx context.Context, params *GetDocumentationVersionsInput, optFns ...func(*Options)) (*GetDocumentationVersionsOutput, error)
- func (c *Client) GetDomainName(ctx context.Context, params *GetDomainNameInput, optFns ...func(*Options)) (*GetDomainNameOutput, error)
- func (c *Client) GetDomainNames(ctx context.Context, params *GetDomainNamesInput, optFns ...func(*Options)) (*GetDomainNamesOutput, error)
- func (c *Client) GetExport(ctx context.Context, params *GetExportInput, optFns ...func(*Options)) (*GetExportOutput, error)
- func (c *Client) GetGatewayResponse(ctx context.Context, params *GetGatewayResponseInput, optFns ...func(*Options)) (*GetGatewayResponseOutput, error)
- func (c *Client) GetGatewayResponses(ctx context.Context, params *GetGatewayResponsesInput, optFns ...func(*Options)) (*GetGatewayResponsesOutput, error)
- func (c *Client) GetIntegration(ctx context.Context, params *GetIntegrationInput, optFns ...func(*Options)) (*GetIntegrationOutput, error)
- func (c *Client) GetIntegrationResponse(ctx context.Context, params *GetIntegrationResponseInput, optFns ...func(*Options)) (*GetIntegrationResponseOutput, error)
- func (c *Client) GetMethod(ctx context.Context, params *GetMethodInput, optFns ...func(*Options)) (*GetMethodOutput, error)
- func (c *Client) GetMethodResponse(ctx context.Context, params *GetMethodResponseInput, optFns ...func(*Options)) (*GetMethodResponseOutput, error)
- func (c *Client) GetModel(ctx context.Context, params *GetModelInput, optFns ...func(*Options)) (*GetModelOutput, error)
- func (c *Client) GetModelTemplate(ctx context.Context, params *GetModelTemplateInput, optFns ...func(*Options)) (*GetModelTemplateOutput, error)
- func (c *Client) GetModels(ctx context.Context, params *GetModelsInput, optFns ...func(*Options)) (*GetModelsOutput, error)
- func (c *Client) GetRequestValidator(ctx context.Context, params *GetRequestValidatorInput, optFns ...func(*Options)) (*GetRequestValidatorOutput, error)
- func (c *Client) GetRequestValidators(ctx context.Context, params *GetRequestValidatorsInput, optFns ...func(*Options)) (*GetRequestValidatorsOutput, error)
- func (c *Client) GetResource(ctx context.Context, params *GetResourceInput, optFns ...func(*Options)) (*GetResourceOutput, error)
- func (c *Client) GetResources(ctx context.Context, params *GetResourcesInput, optFns ...func(*Options)) (*GetResourcesOutput, error)
- func (c *Client) GetRestApi(ctx context.Context, params *GetRestApiInput, optFns ...func(*Options)) (*GetRestApiOutput, error)
- func (c *Client) GetRestApis(ctx context.Context, params *GetRestApisInput, optFns ...func(*Options)) (*GetRestApisOutput, error)
- func (c *Client) GetSdk(ctx context.Context, params *GetSdkInput, optFns ...func(*Options)) (*GetSdkOutput, error)
- func (c *Client) GetSdkType(ctx context.Context, params *GetSdkTypeInput, optFns ...func(*Options)) (*GetSdkTypeOutput, error)
- func (c *Client) GetSdkTypes(ctx context.Context, params *GetSdkTypesInput, optFns ...func(*Options)) (*GetSdkTypesOutput, error)
- func (c *Client) GetStage(ctx context.Context, params *GetStageInput, optFns ...func(*Options)) (*GetStageOutput, error)
- func (c *Client) GetStages(ctx context.Context, params *GetStagesInput, optFns ...func(*Options)) (*GetStagesOutput, error)
- func (c *Client) GetTags(ctx context.Context, params *GetTagsInput, optFns ...func(*Options)) (*GetTagsOutput, error)
- func (c *Client) GetUsage(ctx context.Context, params *GetUsageInput, optFns ...func(*Options)) (*GetUsageOutput, error)
- func (c *Client) GetUsagePlan(ctx context.Context, params *GetUsagePlanInput, optFns ...func(*Options)) (*GetUsagePlanOutput, error)
- func (c *Client) GetUsagePlanKey(ctx context.Context, params *GetUsagePlanKeyInput, optFns ...func(*Options)) (*GetUsagePlanKeyOutput, error)
- func (c *Client) GetUsagePlanKeys(ctx context.Context, params *GetUsagePlanKeysInput, optFns ...func(*Options)) (*GetUsagePlanKeysOutput, error)
- func (c *Client) GetUsagePlans(ctx context.Context, params *GetUsagePlansInput, optFns ...func(*Options)) (*GetUsagePlansOutput, error)
- func (c *Client) GetVpcLink(ctx context.Context, params *GetVpcLinkInput, optFns ...func(*Options)) (*GetVpcLinkOutput, error)
- func (c *Client) GetVpcLinks(ctx context.Context, params *GetVpcLinksInput, optFns ...func(*Options)) (*GetVpcLinksOutput, error)
- func (c *Client) ImportApiKeys(ctx context.Context, params *ImportApiKeysInput, optFns ...func(*Options)) (*ImportApiKeysOutput, error)
- func (c *Client) ImportDocumentationParts(ctx context.Context, params *ImportDocumentationPartsInput, optFns ...func(*Options)) (*ImportDocumentationPartsOutput, error)
- func (c *Client) ImportRestApi(ctx context.Context, params *ImportRestApiInput, optFns ...func(*Options)) (*ImportRestApiOutput, error)
- func (c *Client) PutGatewayResponse(ctx context.Context, params *PutGatewayResponseInput, optFns ...func(*Options)) (*PutGatewayResponseOutput, error)
- func (c *Client) PutIntegration(ctx context.Context, params *PutIntegrationInput, optFns ...func(*Options)) (*PutIntegrationOutput, error)
- func (c *Client) PutIntegrationResponse(ctx context.Context, params *PutIntegrationResponseInput, optFns ...func(*Options)) (*PutIntegrationResponseOutput, error)
- func (c *Client) PutMethod(ctx context.Context, params *PutMethodInput, optFns ...func(*Options)) (*PutMethodOutput, error)
- func (c *Client) PutMethodResponse(ctx context.Context, params *PutMethodResponseInput, optFns ...func(*Options)) (*PutMethodResponseOutput, error)
- func (c *Client) PutRestApi(ctx context.Context, params *PutRestApiInput, optFns ...func(*Options)) (*PutRestApiOutput, error)
- func (c *Client) TagResource(ctx context.Context, params *TagResourceInput, optFns ...func(*Options)) (*TagResourceOutput, error)
- func (c *Client) TestInvokeAuthorizer(ctx context.Context, params *TestInvokeAuthorizerInput, optFns ...func(*Options)) (*TestInvokeAuthorizerOutput, error)
- func (c *Client) TestInvokeMethod(ctx context.Context, params *TestInvokeMethodInput, optFns ...func(*Options)) (*TestInvokeMethodOutput, error)
- func (c *Client) UntagResource(ctx context.Context, params *UntagResourceInput, optFns ...func(*Options)) (*UntagResourceOutput, error)
- func (c *Client) UpdateAccount(ctx context.Context, params *UpdateAccountInput, optFns ...func(*Options)) (*UpdateAccountOutput, error)
- func (c *Client) UpdateApiKey(ctx context.Context, params *UpdateApiKeyInput, optFns ...func(*Options)) (*UpdateApiKeyOutput, error)
- func (c *Client) UpdateAuthorizer(ctx context.Context, params *UpdateAuthorizerInput, optFns ...func(*Options)) (*UpdateAuthorizerOutput, error)
- func (c *Client) UpdateBasePathMapping(ctx context.Context, params *UpdateBasePathMappingInput, optFns ...func(*Options)) (*UpdateBasePathMappingOutput, error)
- func (c *Client) UpdateClientCertificate(ctx context.Context, params *UpdateClientCertificateInput, optFns ...func(*Options)) (*UpdateClientCertificateOutput, error)
- func (c *Client) UpdateDeployment(ctx context.Context, params *UpdateDeploymentInput, optFns ...func(*Options)) (*UpdateDeploymentOutput, error)
- func (c *Client) UpdateDocumentationPart(ctx context.Context, params *UpdateDocumentationPartInput, optFns ...func(*Options)) (*UpdateDocumentationPartOutput, error)
- func (c *Client) UpdateDocumentationVersion(ctx context.Context, params *UpdateDocumentationVersionInput, optFns ...func(*Options)) (*UpdateDocumentationVersionOutput, error)
- func (c *Client) UpdateDomainName(ctx context.Context, params *UpdateDomainNameInput, optFns ...func(*Options)) (*UpdateDomainNameOutput, error)
- func (c *Client) UpdateGatewayResponse(ctx context.Context, params *UpdateGatewayResponseInput, optFns ...func(*Options)) (*UpdateGatewayResponseOutput, error)
- func (c *Client) UpdateIntegration(ctx context.Context, params *UpdateIntegrationInput, optFns ...func(*Options)) (*UpdateIntegrationOutput, error)
- func (c *Client) UpdateIntegrationResponse(ctx context.Context, params *UpdateIntegrationResponseInput, optFns ...func(*Options)) (*UpdateIntegrationResponseOutput, error)
- func (c *Client) UpdateMethod(ctx context.Context, params *UpdateMethodInput, optFns ...func(*Options)) (*UpdateMethodOutput, error)
- func (c *Client) UpdateMethodResponse(ctx context.Context, params *UpdateMethodResponseInput, optFns ...func(*Options)) (*UpdateMethodResponseOutput, error)
- func (c *Client) UpdateModel(ctx context.Context, params *UpdateModelInput, optFns ...func(*Options)) (*UpdateModelOutput, error)
- func (c *Client) UpdateRequestValidator(ctx context.Context, params *UpdateRequestValidatorInput, optFns ...func(*Options)) (*UpdateRequestValidatorOutput, error)
- func (c *Client) UpdateResource(ctx context.Context, params *UpdateResourceInput, optFns ...func(*Options)) (*UpdateResourceOutput, error)
- func (c *Client) UpdateRestApi(ctx context.Context, params *UpdateRestApiInput, optFns ...func(*Options)) (*UpdateRestApiOutput, error)
- func (c *Client) UpdateStage(ctx context.Context, params *UpdateStageInput, optFns ...func(*Options)) (*UpdateStageOutput, error)
- func (c *Client) UpdateUsage(ctx context.Context, params *UpdateUsageInput, optFns ...func(*Options)) (*UpdateUsageOutput, error)
- func (c *Client) UpdateUsagePlan(ctx context.Context, params *UpdateUsagePlanInput, optFns ...func(*Options)) (*UpdateUsagePlanOutput, error)
- func (c *Client) UpdateVpcLink(ctx context.Context, params *UpdateVpcLinkInput, optFns ...func(*Options)) (*UpdateVpcLinkOutput, error)
- type CreateApiKeyInput
- type CreateApiKeyOutput
- type CreateAuthorizerInput
- type CreateAuthorizerOutput
- type CreateBasePathMappingInput
- type CreateBasePathMappingOutput
- type CreateDeploymentInput
- type CreateDeploymentOutput
- type CreateDocumentationPartInput
- type CreateDocumentationPartOutput
- type CreateDocumentationVersionInput
- type CreateDocumentationVersionOutput
- type CreateDomainNameInput
- type CreateDomainNameOutput
- type CreateModelInput
- type CreateModelOutput
- type CreateRequestValidatorInput
- type CreateRequestValidatorOutput
- type CreateResourceInput
- type CreateResourceOutput
- type CreateRestApiInput
- type CreateRestApiOutput
- type CreateStageInput
- type CreateStageOutput
- type CreateUsagePlanInput
- type CreateUsagePlanKeyInput
- type CreateUsagePlanKeyOutput
- type CreateUsagePlanOutput
- type CreateVpcLinkInput
- type CreateVpcLinkOutput
- type DeleteApiKeyInput
- type DeleteApiKeyOutput
- type DeleteAuthorizerInput
- type DeleteAuthorizerOutput
- type DeleteBasePathMappingInput
- type DeleteBasePathMappingOutput
- type DeleteClientCertificateInput
- type DeleteClientCertificateOutput
- type DeleteDeploymentInput
- type DeleteDeploymentOutput
- type DeleteDocumentationPartInput
- type DeleteDocumentationPartOutput
- type DeleteDocumentationVersionInput
- type DeleteDocumentationVersionOutput
- type DeleteDomainNameInput
- type DeleteDomainNameOutput
- type DeleteGatewayResponseInput
- type DeleteGatewayResponseOutput
- type DeleteIntegrationInput
- type DeleteIntegrationOutput
- type DeleteIntegrationResponseInput
- type DeleteIntegrationResponseOutput
- type DeleteMethodInput
- type DeleteMethodOutput
- type DeleteMethodResponseInput
- type DeleteMethodResponseOutput
- type DeleteModelInput
- type DeleteModelOutput
- type DeleteRequestValidatorInput
- type DeleteRequestValidatorOutput
- type DeleteResourceInput
- type DeleteResourceOutput
- type DeleteRestApiInput
- type DeleteRestApiOutput
- type DeleteStageInput
- type DeleteStageOutput
- type DeleteUsagePlanInput
- type DeleteUsagePlanKeyInput
- type DeleteUsagePlanKeyOutput
- type DeleteUsagePlanOutput
- type DeleteVpcLinkInput
- type DeleteVpcLinkOutput
- type EndpointResolver
- type EndpointResolverFunc
- type FlushStageAuthorizersCacheInput
- type FlushStageAuthorizersCacheOutput
- type FlushStageCacheInput
- type FlushStageCacheOutput
- type GenerateClientCertificateInput
- type GenerateClientCertificateOutput
- type GetAccountInput
- type GetAccountOutput
- type GetApiKeyInput
- type GetApiKeyOutput
- type GetApiKeysInput
- type GetApiKeysOutput
- type GetAuthorizerInput
- type GetAuthorizerOutput
- type GetAuthorizersInput
- type GetAuthorizersOutput
- type GetBasePathMappingInput
- type GetBasePathMappingOutput
- type GetBasePathMappingsInput
- type GetBasePathMappingsOutput
- type GetClientCertificateInput
- type GetClientCertificateOutput
- type GetClientCertificatesInput
- type GetClientCertificatesOutput
- type GetDeploymentInput
- type GetDeploymentOutput
- type GetDeploymentsInput
- type GetDeploymentsOutput
- type GetDocumentationPartInput
- type GetDocumentationPartOutput
- type GetDocumentationPartsInput
- type GetDocumentationPartsOutput
- type GetDocumentationVersionInput
- type GetDocumentationVersionOutput
- type GetDocumentationVersionsInput
- type GetDocumentationVersionsOutput
- type GetDomainNameInput
- type GetDomainNameOutput
- type GetDomainNamesInput
- type GetDomainNamesOutput
- type GetExportInput
- type GetExportOutput
- type GetGatewayResponseInput
- type GetGatewayResponseOutput
- type GetGatewayResponsesInput
- type GetGatewayResponsesOutput
- type GetIntegrationInput
- type GetIntegrationOutput
- type GetIntegrationResponseInput
- type GetIntegrationResponseOutput
- type GetMethodInput
- type GetMethodOutput
- type GetMethodResponseInput
- type GetMethodResponseOutput
- type GetModelInput
- type GetModelOutput
- type GetModelTemplateInput
- type GetModelTemplateOutput
- type GetModelsInput
- type GetModelsOutput
- type GetRequestValidatorInput
- type GetRequestValidatorOutput
- type GetRequestValidatorsInput
- type GetRequestValidatorsOutput
- type GetResourceInput
- type GetResourceOutput
- type GetResourcesInput
- type GetResourcesOutput
- type GetRestApiInput
- type GetRestApiOutput
- type GetRestApisInput
- type GetRestApisOutput
- type GetSdkInput
- type GetSdkOutput
- type GetSdkTypeInput
- type GetSdkTypeOutput
- type GetSdkTypesInput
- type GetSdkTypesOutput
- type GetStageInput
- type GetStageOutput
- type GetStagesInput
- type GetStagesOutput
- type GetTagsInput
- type GetTagsOutput
- type GetUsageInput
- type GetUsageOutput
- type GetUsagePlanInput
- type GetUsagePlanKeyInput
- type GetUsagePlanKeyOutput
- type GetUsagePlanKeysInput
- type GetUsagePlanKeysOutput
- type GetUsagePlanOutput
- type GetUsagePlansInput
- type GetUsagePlansOutput
- type GetVpcLinkInput
- type GetVpcLinkOutput
- type GetVpcLinksInput
- type GetVpcLinksOutput
- type HTTPClient
- type HTTPSignerV4
- type ImportApiKeysInput
- type ImportApiKeysOutput
- type ImportDocumentationPartsInput
- type ImportDocumentationPartsOutput
- type ImportRestApiInput
- type ImportRestApiOutput
- type Options
- func (o Options) Copy() Options
- func (o Options) GetCredentials() aws.CredentialsProvider
- func (o Options) GetEndpointOptions() ResolverOptions
- func (o Options) GetEndpointResolver() EndpointResolver
- func (o Options) GetHTTPSignerV4() HTTPSignerV4
- func (o Options) GetRegion() string
- func (o Options) GetRetryer() retry.Retryer
- type PutGatewayResponseInput
- type PutGatewayResponseOutput
- type PutIntegrationInput
- type PutIntegrationOutput
- type PutIntegrationResponseInput
- type PutIntegrationResponseOutput
- type PutMethodInput
- type PutMethodOutput
- type PutMethodResponseInput
- type PutMethodResponseOutput
- type PutRestApiInput
- type PutRestApiOutput
- type ResolveEndpoint
- func (m *ResolveEndpoint) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, )
- func (*ResolveEndpoint) ID() string
- type ResolveEndpointMiddlewareOptions
- type ResolverOptions
- type TagResourceInput
- type TagResourceOutput
- type TestInvokeAuthorizerInput
- type TestInvokeAuthorizerOutput
- type TestInvokeMethodInput
- type TestInvokeMethodOutput
- type UntagResourceInput
- type UntagResourceOutput
- type UpdateAccountInput
- type UpdateAccountOutput
- type UpdateApiKeyInput
- type UpdateApiKeyOutput
- type UpdateAuthorizerInput
- type UpdateAuthorizerOutput
- type UpdateBasePathMappingInput
- type UpdateBasePathMappingOutput
- type UpdateClientCertificateInput
- type UpdateClientCertificateOutput
- type UpdateDeploymentInput
- type UpdateDeploymentOutput
- type UpdateDocumentationPartInput
- type UpdateDocumentationPartOutput
- type UpdateDocumentationVersionInput
- type UpdateDocumentationVersionOutput
- type UpdateDomainNameInput
- type UpdateDomainNameOutput
- type UpdateGatewayResponseInput
- type UpdateGatewayResponseOutput
- type UpdateIntegrationInput
- type UpdateIntegrationOutput
- type UpdateIntegrationResponseInput
- type UpdateIntegrationResponseOutput
- type UpdateMethodInput
- type UpdateMethodOutput
- type UpdateMethodResponseInput
- type UpdateMethodResponseOutput
- type UpdateModelInput
- type UpdateModelOutput
- type UpdateRequestValidatorInput
- type UpdateRequestValidatorOutput
- type UpdateResourceInput
- type UpdateResourceOutput
- type UpdateRestApiInput
- type UpdateRestApiOutput
- type UpdateStageInput
- type UpdateStageOutput
- type UpdateUsageInput
- type UpdateUsageOutput
- type UpdateUsagePlanInput
- type UpdateUsagePlanOutput
- type UpdateVpcLinkInput
- type UpdateVpcLinkOutput
Constants ¶
const ServiceAPIVersion = "2015-07-09"
const ServiceID = "API Gateway"
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 ¶
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 ¶
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 (*Client) CreateVpcLink ¶
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 (*Client) DeleteVpcLink ¶
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 (*Client) GetVpcLink ¶
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 (*Client) GetVpcLinks ¶
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 (*Client) UpdateVpcLink ¶
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 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 ¶
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 (Options) GetRetryer ¶
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 (m *ResolveEndpoint) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, )
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 ¶
api_client.go api_op_CreateApiKey.go api_op_CreateAuthorizer.go api_op_CreateBasePathMapping.go api_op_CreateDeployment.go api_op_CreateDocumentationPart.go api_op_CreateDocumentationVersion.go api_op_CreateDomainName.go api_op_CreateModel.go api_op_CreateRequestValidator.go api_op_CreateResource.go api_op_CreateRestApi.go api_op_CreateStage.go api_op_CreateUsagePlan.go api_op_CreateUsagePlanKey.go api_op_CreateVpcLink.go api_op_DeleteApiKey.go api_op_DeleteAuthorizer.go api_op_DeleteBasePathMapping.go api_op_DeleteClientCertificate.go api_op_DeleteDeployment.go api_op_DeleteDocumentationPart.go api_op_DeleteDocumentationVersion.go api_op_DeleteDomainName.go api_op_DeleteGatewayResponse.go api_op_DeleteIntegration.go api_op_DeleteIntegrationResponse.go api_op_DeleteMethod.go api_op_DeleteMethodResponse.go api_op_DeleteModel.go api_op_DeleteRequestValidator.go api_op_DeleteResource.go api_op_DeleteRestApi.go api_op_DeleteStage.go api_op_DeleteUsagePlan.go api_op_DeleteUsagePlanKey.go api_op_DeleteVpcLink.go api_op_FlushStageAuthorizersCache.go api_op_FlushStageCache.go api_op_GenerateClientCertificate.go api_op_GetAccount.go api_op_GetApiKey.go api_op_GetApiKeys.go api_op_GetAuthorizer.go api_op_GetAuthorizers.go api_op_GetBasePathMapping.go api_op_GetBasePathMappings.go api_op_GetClientCertificate.go api_op_GetClientCertificates.go api_op_GetDeployment.go api_op_GetDeployments.go api_op_GetDocumentationPart.go api_op_GetDocumentationParts.go api_op_GetDocumentationVersion.go api_op_GetDocumentationVersions.go api_op_GetDomainName.go api_op_GetDomainNames.go api_op_GetExport.go api_op_GetGatewayResponse.go api_op_GetGatewayResponses.go api_op_GetIntegration.go api_op_GetIntegrationResponse.go api_op_GetMethod.go api_op_GetMethodResponse.go api_op_GetModel.go api_op_GetModelTemplate.go api_op_GetModels.go api_op_GetRequestValidator.go api_op_GetRequestValidators.go api_op_GetResource.go api_op_GetResources.go api_op_GetRestApi.go api_op_GetRestApis.go api_op_GetSdk.go api_op_GetSdkType.go api_op_GetSdkTypes.go api_op_GetStage.go api_op_GetStages.go api_op_GetTags.go api_op_GetUsage.go api_op_GetUsagePlan.go api_op_GetUsagePlanKey.go api_op_GetUsagePlanKeys.go api_op_GetUsagePlans.go api_op_GetVpcLink.go api_op_GetVpcLinks.go api_op_ImportApiKeys.go api_op_ImportDocumentationParts.go api_op_ImportRestApi.go api_op_PutGatewayResponse.go api_op_PutIntegration.go api_op_PutIntegrationResponse.go api_op_PutMethod.go api_op_PutMethodResponse.go api_op_PutRestApi.go api_op_TagResource.go api_op_TestInvokeAuthorizer.go api_op_TestInvokeMethod.go api_op_UntagResource.go api_op_UpdateAccount.go api_op_UpdateApiKey.go api_op_UpdateAuthorizer.go api_op_UpdateBasePathMapping.go api_op_UpdateClientCertificate.go api_op_UpdateDeployment.go api_op_UpdateDocumentationPart.go api_op_UpdateDocumentationVersion.go api_op_UpdateDomainName.go api_op_UpdateGatewayResponse.go api_op_UpdateIntegration.go api_op_UpdateIntegrationResponse.go api_op_UpdateMethod.go api_op_UpdateMethodResponse.go api_op_UpdateModel.go api_op_UpdateRequestValidator.go api_op_UpdateResource.go api_op_UpdateRestApi.go api_op_UpdateStage.go api_op_UpdateUsage.go api_op_UpdateUsagePlan.go api_op_UpdateVpcLink.go deserializers.go endpoints.go serializers.go validators.go
Directories ¶
Path | Synopsis |
---|---|
internal | |
types |
- Version
- v0.1.0
- Published
- Sep 29, 2020
- Platform
- darwin/amd64
- Imports
- 28 packages
- Last checked
- 1 second ago –
Tools for package owners.