Table of Contents

Interface ICfnMethodProps

Namespace
Amazon.CDK.AWS.APIGateway
Assembly
Amazon.CDK.AWS.APIGateway.dll

Properties for defining a CfnMethod.

public interface ICfnMethodProps

Examples

// The code below shows an example of how to instantiate this type.
             // The values are placeholders you should change.
             using Amazon.CDK.AWS.APIGateway;

             var cfnMethodProps = new CfnMethodProps {
                 HttpMethod = "httpMethod",
                 ResourceId = "resourceId",
                 RestApiId = "restApiId",

                 // the properties below are optional
                 ApiKeyRequired = false,
                 AuthorizationScopes = new [] { "authorizationScopes" },
                 AuthorizationType = "authorizationType",
                 AuthorizerId = "authorizerId",
                 Integration = new IntegrationProperty {
                     CacheKeyParameters = new [] { "cacheKeyParameters" },
                     CacheNamespace = "cacheNamespace",
                     ConnectionId = "connectionId",
                     ConnectionType = "connectionType",
                     ContentHandling = "contentHandling",
                     Credentials = "credentials",
                     IntegrationHttpMethod = "integrationHttpMethod",
                     IntegrationResponses = new [] { new IntegrationResponseProperty {
                         StatusCode = "statusCode",

                         // the properties below are optional
                         ContentHandling = "contentHandling",
                         ResponseParameters = new Dictionary<string, string> {
                             { "responseParametersKey", "responseParameters" }
                         },
                         ResponseTemplates = new Dictionary<string, string> {
                             { "responseTemplatesKey", "responseTemplates" }
                         },
                         SelectionPattern = "selectionPattern"
                     } },
                     PassthroughBehavior = "passthroughBehavior",
                     RequestParameters = new Dictionary<string, string> {
                         { "requestParametersKey", "requestParameters" }
                     },
                     RequestTemplates = new Dictionary<string, string> {
                         { "requestTemplatesKey", "requestTemplates" }
                     },
                     TimeoutInMillis = 123,
                     Type = "type",
                     Uri = "uri"
                 },
                 MethodResponses = new [] { new MethodResponseProperty {
                     StatusCode = "statusCode",

                     // the properties below are optional
                     ResponseModels = new Dictionary<string, string> {
                         { "responseModelsKey", "responseModels" }
                     },
                     ResponseParameters = new Dictionary<string, object> {
                         { "responseParametersKey", false }
                     }
                 } },
                 OperationName = "operationName",
                 RequestModels = new Dictionary<string, string> {
                     { "requestModelsKey", "requestModels" }
                 },
                 RequestParameters = new Dictionary<string, object> {
                     { "requestParametersKey", false }
                 },
                 RequestValidatorId = "requestValidatorId"
             };

Remarks

Properties

ApiKeyRequired

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

object? ApiKeyRequired { get; }

Property Value

object

Remarks

AuthorizationScopes

A list of authorization scopes configured on the method.

string[]? AuthorizationScopes { get; }

Property Value

string[]

Remarks

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.

Link: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-authorizationscopes

AuthorizationType

The method's authorization type.

string? AuthorizationType { get; }

Property Value

string

Remarks

This parameter is required. For valid values, see Method in the API Gateway API Reference .

If you specify the <code>AuthorizerId</code> property, specify <code>CUSTOM</code> or <code>COGNITO_USER_POOLS</code> for this property.

Link: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-authorizationtype

AuthorizerId

The identifier of an authorizer to use on this method.

string? AuthorizerId { get; }

Property Value

string

Remarks

HttpMethod

The method's HTTP verb.

string HttpMethod { get; }

Property Value

string

Remarks

Integration

Represents an HTTP , HTTP_PROXY , AWS , AWS_PROXY , or Mock integration.

object? Integration { get; }

Property Value

object

Remarks

MethodResponses

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

object? MethodResponses { get; }

Property Value

object

Remarks

OperationName

A human-friendly operation identifier for the method.

string? OperationName { get; }

Property Value

string

Remarks

For example, you can assign the operationName of ListPets for the GET /pets method in the PetStore example.

Link: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-operationname

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

object? RequestModels { get; }

Property Value

object

Remarks

RequestParameters

A key-value map defining required or optional method request parameters that can be accepted by API Gateway.

object? RequestParameters { get; }

Property Value

object

Remarks

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.

Link: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-requestparameters

RequestValidatorId

The identifier of a RequestValidator for request validation.

string? RequestValidatorId { get; }

Property Value

string

Remarks

ResourceId

The Resource identifier for the MethodResponse resource.

string ResourceId { get; }

Property Value

string

Remarks

RestApiId

The string identifier of the associated RestApi.

string RestApiId { get; }

Property Value

string

Remarks