amazonka-apigateway-2.0: Amazon API Gateway SDK.
Copyright(c) 2013-2023 Brendan Hay
LicenseMozilla Public License, v. 2.0.
MaintainerBrendan Hay
Stabilityauto-generated
Portabilitynon-portable (GHC extensions)
Safe HaskellSafe-Inferred
LanguageHaskell2010

Amazonka.APIGateway.PutMethod

Description

Add a method to an existing Resource resource.

Synopsis

Creating a Request

data PutMethod Source #

Request to add a method to an existing Resource resource.

See: newPutMethod smart constructor.

Constructors

PutMethod' 

Fields

  • apiKeyRequired :: Maybe Bool

    Specifies whether the method required a valid ApiKey.

  • authorizationScopes :: Maybe [Text]

    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.

  • authorizerId :: Maybe Text

    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.

  • operationName :: Maybe Text

    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.

  • requestModels :: Maybe (HashMap Text Text)

    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.

  • requestParameters :: Maybe (HashMap Text Bool)

    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.

  • requestValidatorId :: Maybe Text

    The identifier of a RequestValidator for validating the method request.

  • restApiId :: Text

    The string identifier of the associated RestApi.

  • resourceId :: Text

    The Resource identifier for the new Method resource.

  • httpMethod :: Text

    Specifies the method request's HTTP method type.

  • authorizationType :: Text

    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.

Instances

Instances details
ToJSON PutMethod Source # 
Instance details

Defined in Amazonka.APIGateway.PutMethod

ToHeaders PutMethod Source # 
Instance details

Defined in Amazonka.APIGateway.PutMethod

Methods

toHeaders :: PutMethod -> [Header] #

ToPath PutMethod Source # 
Instance details

Defined in Amazonka.APIGateway.PutMethod

ToQuery PutMethod Source # 
Instance details

Defined in Amazonka.APIGateway.PutMethod

AWSRequest PutMethod Source # 
Instance details

Defined in Amazonka.APIGateway.PutMethod

Associated Types

type AWSResponse PutMethod #

Generic PutMethod Source # 
Instance details

Defined in Amazonka.APIGateway.PutMethod

Associated Types

type Rep PutMethod :: Type -> Type #

Read PutMethod Source # 
Instance details

Defined in Amazonka.APIGateway.PutMethod

Show PutMethod Source # 
Instance details

Defined in Amazonka.APIGateway.PutMethod

NFData PutMethod Source # 
Instance details

Defined in Amazonka.APIGateway.PutMethod

Methods

rnf :: PutMethod -> () #

Eq PutMethod Source # 
Instance details

Defined in Amazonka.APIGateway.PutMethod

Hashable PutMethod Source # 
Instance details

Defined in Amazonka.APIGateway.PutMethod

type AWSResponse PutMethod Source # 
Instance details

Defined in Amazonka.APIGateway.PutMethod

type Rep PutMethod Source # 
Instance details

Defined in Amazonka.APIGateway.PutMethod

type Rep PutMethod = D1 ('MetaData "PutMethod" "Amazonka.APIGateway.PutMethod" "amazonka-apigateway-2.0-zw0Lbt4rUGxZBjJ4Rpfi" 'False) (C1 ('MetaCons "PutMethod'" 'PrefixI 'True) (((S1 ('MetaSel ('Just "apiKeyRequired") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Bool)) :*: S1 ('MetaSel ('Just "authorizationScopes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe [Text]))) :*: (S1 ('MetaSel ('Just "authorizerId") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: (S1 ('MetaSel ('Just "operationName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "requestModels") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe (HashMap Text Text)))))) :*: ((S1 ('MetaSel ('Just "requestParameters") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe (HashMap Text Bool))) :*: (S1 ('MetaSel ('Just "requestValidatorId") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "restApiId") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text))) :*: (S1 ('MetaSel ('Just "resourceId") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text) :*: (S1 ('MetaSel ('Just "httpMethod") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text) :*: S1 ('MetaSel ('Just "authorizationType") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text))))))

newPutMethod Source #

Create a value of PutMethod with all optional fields omitted.

Use generic-lens or optics to modify other optional fields.

The following record fields are available, with the corresponding lenses provided for backwards compatibility:

PutMethod, putMethod_apiKeyRequired - Specifies whether the method required a valid ApiKey.

PutMethod, putMethod_authorizationScopes - 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.

PutMethod, putMethod_authorizerId - 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.

PutMethod, putMethod_operationName - 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.

PutMethod, putMethod_requestModels - 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.

PutMethod, putMethod_requestParameters - 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.

PutMethod, putMethod_requestValidatorId - The identifier of a RequestValidator for validating the method request.

PutMethod, putMethod_restApiId - The string identifier of the associated RestApi.

$sel:resourceId:PutMethod', putMethod_resourceId - The Resource identifier for the new Method resource.

PutMethod, putMethod_httpMethod - Specifies the method request's HTTP method type.

PutMethod, putMethod_authorizationType - 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.

Request Lenses

putMethod_apiKeyRequired :: Lens' PutMethod (Maybe Bool) Source #

Specifies whether the method required a valid ApiKey.

putMethod_authorizationScopes :: Lens' PutMethod (Maybe [Text]) Source #

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.

putMethod_authorizerId :: Lens' PutMethod (Maybe Text) Source #

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.

putMethod_operationName :: Lens' PutMethod (Maybe Text) Source #

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.

putMethod_requestModels :: Lens' PutMethod (Maybe (HashMap Text Text)) Source #

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.

putMethod_requestParameters :: Lens' PutMethod (Maybe (HashMap Text Bool)) Source #

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.

putMethod_requestValidatorId :: Lens' PutMethod (Maybe Text) Source #

The identifier of a RequestValidator for validating the method request.

putMethod_restApiId :: Lens' PutMethod Text Source #

The string identifier of the associated RestApi.

putMethod_resourceId :: Lens' PutMethod Text Source #

The Resource identifier for the new Method resource.

putMethod_httpMethod :: Lens' PutMethod Text Source #

Specifies the method request's HTTP method type.

putMethod_authorizationType :: Lens' PutMethod Text Source #

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.

Destructuring the Response

data Method Source #

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.

See: newMethod smart constructor.

Constructors

Method' 

Fields

  • apiKeyRequired :: Maybe Bool

    A boolean flag specifying whether a valid ApiKey is required to invoke this method.

  • authorizationScopes :: Maybe [Text]

    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.

  • authorizationType :: Maybe Text

    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.

  • authorizerId :: Maybe Text

    The identifier of an Authorizer to use on this method. The authorizationType must be CUSTOM.

  • httpMethod :: Maybe Text

    The method's HTTP verb.

  • methodIntegration :: Maybe Integration

    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.

  • methodResponses :: Maybe (HashMap Text MethodResponse)

    Gets a method response associated with a given HTTP status code.

  • operationName :: Maybe Text

    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.

  • requestModels :: Maybe (HashMap Text Text)

    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).

  • requestParameters :: Maybe (HashMap Text Bool)

    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.

  • requestValidatorId :: Maybe Text

    The identifier of a RequestValidator for request validation.

Instances

Instances details
FromJSON Method Source # 
Instance details

Defined in Amazonka.APIGateway.Types.Method

Generic Method Source # 
Instance details

Defined in Amazonka.APIGateway.Types.Method

Associated Types

type Rep Method :: Type -> Type #

Methods

from :: Method -> Rep Method x #

to :: Rep Method x -> Method #

Read Method Source # 
Instance details

Defined in Amazonka.APIGateway.Types.Method

Show Method Source # 
Instance details

Defined in Amazonka.APIGateway.Types.Method

NFData Method Source # 
Instance details

Defined in Amazonka.APIGateway.Types.Method

Methods

rnf :: Method -> () #

Eq Method Source # 
Instance details

Defined in Amazonka.APIGateway.Types.Method

Methods

(==) :: Method -> Method -> Bool #

(/=) :: Method -> Method -> Bool #

Hashable Method Source # 
Instance details

Defined in Amazonka.APIGateway.Types.Method

Methods

hashWithSalt :: Int -> Method -> Int #

hash :: Method -> Int #

type Rep Method Source # 
Instance details

Defined in Amazonka.APIGateway.Types.Method

type Rep Method = D1 ('MetaData "Method" "Amazonka.APIGateway.Types.Method" "amazonka-apigateway-2.0-zw0Lbt4rUGxZBjJ4Rpfi" 'False) (C1 ('MetaCons "Method'" 'PrefixI 'True) (((S1 ('MetaSel ('Just "apiKeyRequired") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Bool)) :*: S1 ('MetaSel ('Just "authorizationScopes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe [Text]))) :*: (S1 ('MetaSel ('Just "authorizationType") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: (S1 ('MetaSel ('Just "authorizerId") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "httpMethod") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text))))) :*: ((S1 ('MetaSel ('Just "methodIntegration") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Integration)) :*: (S1 ('MetaSel ('Just "methodResponses") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe (HashMap Text MethodResponse))) :*: S1 ('MetaSel ('Just "operationName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)))) :*: (S1 ('MetaSel ('Just "requestModels") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe (HashMap Text Text))) :*: (S1 ('MetaSel ('Just "requestParameters") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe (HashMap Text Bool))) :*: S1 ('MetaSel ('Just "requestValidatorId") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)))))))

newMethod :: Method Source #

Create a value of Method with all optional fields omitted.

Use generic-lens or optics to modify other optional fields.

The following record fields are available, with the corresponding lenses provided for backwards compatibility:

$sel:apiKeyRequired:Method', method_apiKeyRequired - A boolean flag specifying whether a valid ApiKey is required to invoke this method.

$sel:authorizationScopes:Method', method_authorizationScopes - 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.

$sel:authorizationType:Method', method_authorizationType - 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.

$sel:authorizerId:Method', method_authorizerId - The identifier of an Authorizer to use on this method. The authorizationType must be CUSTOM.

Method, method_httpMethod - The method's HTTP verb.

$sel:methodIntegration:Method', method_methodIntegration - 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.

$sel:methodResponses:Method', method_methodResponses - Gets a method response associated with a given HTTP status code.

$sel:operationName:Method', method_operationName - 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.

$sel:requestModels:Method', method_requestModels - 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).

Method, method_requestParameters - 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.

$sel:requestValidatorId:Method', method_requestValidatorId - The identifier of a RequestValidator for request validation.

Response Lenses

method_apiKeyRequired :: Lens' Method (Maybe Bool) Source #

A boolean flag specifying whether a valid ApiKey is required to invoke this method.

method_authorizationScopes :: Lens' Method (Maybe [Text]) Source #

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.

method_authorizationType :: Lens' Method (Maybe Text) Source #

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.

method_authorizerId :: Lens' Method (Maybe Text) Source #

The identifier of an Authorizer to use on this method. The authorizationType must be CUSTOM.

method_httpMethod :: Lens' Method (Maybe Text) Source #

The method's HTTP verb.

method_methodIntegration :: Lens' Method (Maybe Integration) Source #

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.

method_methodResponses :: Lens' Method (Maybe (HashMap Text MethodResponse)) Source #

Gets a method response associated with a given HTTP status code.

method_operationName :: Lens' Method (Maybe Text) Source #

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.

method_requestModels :: Lens' Method (Maybe (HashMap Text Text)) Source #

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).

method_requestParameters :: Lens' Method (Maybe (HashMap Text Bool)) Source #

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.

method_requestValidatorId :: Lens' Method (Maybe Text) Source #

The identifier of a RequestValidator for request validation.