1. Packages
  2. AWS
  3. API Docs
  4. apigateway
  5. MethodResponse
Viewing docs for AWS v5.43.0 (Older version)
published on Tuesday, Mar 10, 2026 by Pulumi
aws logo
Viewing docs for AWS v5.43.0 (Older version)
published on Tuesday, Mar 10, 2026 by Pulumi

    Provides an HTTP Method Response for an API Gateway Resource.

    Example Usage

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Aws = Pulumi.Aws;
    
    return await Deployment.RunAsync(() => 
    {
        var myDemoAPI = new Aws.ApiGateway.RestApi("myDemoAPI", new()
        {
            Description = "This is my API for demonstration purposes",
        });
    
        var myDemoResource = new Aws.ApiGateway.Resource("myDemoResource", new()
        {
            RestApi = myDemoAPI.Id,
            ParentId = myDemoAPI.RootResourceId,
            PathPart = "mydemoresource",
        });
    
        var myDemoMethod = new Aws.ApiGateway.Method("myDemoMethod", new()
        {
            RestApi = myDemoAPI.Id,
            ResourceId = myDemoResource.Id,
            HttpMethod = "GET",
            Authorization = "NONE",
        });
    
        var myDemoIntegration = new Aws.ApiGateway.Integration("myDemoIntegration", new()
        {
            RestApi = myDemoAPI.Id,
            ResourceId = myDemoResource.Id,
            HttpMethod = myDemoMethod.HttpMethod,
            Type = "MOCK",
        });
    
        var response200 = new Aws.ApiGateway.MethodResponse("response200", new()
        {
            RestApi = myDemoAPI.Id,
            ResourceId = myDemoResource.Id,
            HttpMethod = myDemoMethod.HttpMethod,
            StatusCode = "200",
        });
    
    });
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/apigateway"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		myDemoAPI, err := apigateway.NewRestApi(ctx, "myDemoAPI", &apigateway.RestApiArgs{
    			Description: pulumi.String("This is my API for demonstration purposes"),
    		})
    		if err != nil {
    			return err
    		}
    		myDemoResource, err := apigateway.NewResource(ctx, "myDemoResource", &apigateway.ResourceArgs{
    			RestApi:  myDemoAPI.ID(),
    			ParentId: myDemoAPI.RootResourceId,
    			PathPart: pulumi.String("mydemoresource"),
    		})
    		if err != nil {
    			return err
    		}
    		myDemoMethod, err := apigateway.NewMethod(ctx, "myDemoMethod", &apigateway.MethodArgs{
    			RestApi:       myDemoAPI.ID(),
    			ResourceId:    myDemoResource.ID(),
    			HttpMethod:    pulumi.String("GET"),
    			Authorization: pulumi.String("NONE"),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = apigateway.NewIntegration(ctx, "myDemoIntegration", &apigateway.IntegrationArgs{
    			RestApi:    myDemoAPI.ID(),
    			ResourceId: myDemoResource.ID(),
    			HttpMethod: myDemoMethod.HttpMethod,
    			Type:       pulumi.String("MOCK"),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = apigateway.NewMethodResponse(ctx, "response200", &apigateway.MethodResponseArgs{
    			RestApi:    myDemoAPI.ID(),
    			ResourceId: myDemoResource.ID(),
    			HttpMethod: myDemoMethod.HttpMethod,
    			StatusCode: pulumi.String("200"),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.aws.apigateway.RestApi;
    import com.pulumi.aws.apigateway.RestApiArgs;
    import com.pulumi.aws.apigateway.Resource;
    import com.pulumi.aws.apigateway.ResourceArgs;
    import com.pulumi.aws.apigateway.Method;
    import com.pulumi.aws.apigateway.MethodArgs;
    import com.pulumi.aws.apigateway.Integration;
    import com.pulumi.aws.apigateway.IntegrationArgs;
    import com.pulumi.aws.apigateway.MethodResponse;
    import com.pulumi.aws.apigateway.MethodResponseArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var myDemoAPI = new RestApi("myDemoAPI", RestApiArgs.builder()        
                .description("This is my API for demonstration purposes")
                .build());
    
            var myDemoResource = new Resource("myDemoResource", ResourceArgs.builder()        
                .restApi(myDemoAPI.id())
                .parentId(myDemoAPI.rootResourceId())
                .pathPart("mydemoresource")
                .build());
    
            var myDemoMethod = new Method("myDemoMethod", MethodArgs.builder()        
                .restApi(myDemoAPI.id())
                .resourceId(myDemoResource.id())
                .httpMethod("GET")
                .authorization("NONE")
                .build());
    
            var myDemoIntegration = new Integration("myDemoIntegration", IntegrationArgs.builder()        
                .restApi(myDemoAPI.id())
                .resourceId(myDemoResource.id())
                .httpMethod(myDemoMethod.httpMethod())
                .type("MOCK")
                .build());
    
            var response200 = new MethodResponse("response200", MethodResponseArgs.builder()        
                .restApi(myDemoAPI.id())
                .resourceId(myDemoResource.id())
                .httpMethod(myDemoMethod.httpMethod())
                .statusCode("200")
                .build());
    
        }
    }
    
    import * as pulumi from "@pulumi/pulumi";
    import * as aws from "@pulumi/aws";
    
    const myDemoAPI = new aws.apigateway.RestApi("myDemoAPI", {description: "This is my API for demonstration purposes"});
    const myDemoResource = new aws.apigateway.Resource("myDemoResource", {
        restApi: myDemoAPI.id,
        parentId: myDemoAPI.rootResourceId,
        pathPart: "mydemoresource",
    });
    const myDemoMethod = new aws.apigateway.Method("myDemoMethod", {
        restApi: myDemoAPI.id,
        resourceId: myDemoResource.id,
        httpMethod: "GET",
        authorization: "NONE",
    });
    const myDemoIntegration = new aws.apigateway.Integration("myDemoIntegration", {
        restApi: myDemoAPI.id,
        resourceId: myDemoResource.id,
        httpMethod: myDemoMethod.httpMethod,
        type: "MOCK",
    });
    const response200 = new aws.apigateway.MethodResponse("response200", {
        restApi: myDemoAPI.id,
        resourceId: myDemoResource.id,
        httpMethod: myDemoMethod.httpMethod,
        statusCode: "200",
    });
    
    import pulumi
    import pulumi_aws as aws
    
    my_demo_api = aws.apigateway.RestApi("myDemoAPI", description="This is my API for demonstration purposes")
    my_demo_resource = aws.apigateway.Resource("myDemoResource",
        rest_api=my_demo_api.id,
        parent_id=my_demo_api.root_resource_id,
        path_part="mydemoresource")
    my_demo_method = aws.apigateway.Method("myDemoMethod",
        rest_api=my_demo_api.id,
        resource_id=my_demo_resource.id,
        http_method="GET",
        authorization="NONE")
    my_demo_integration = aws.apigateway.Integration("myDemoIntegration",
        rest_api=my_demo_api.id,
        resource_id=my_demo_resource.id,
        http_method=my_demo_method.http_method,
        type="MOCK")
    response200 = aws.apigateway.MethodResponse("response200",
        rest_api=my_demo_api.id,
        resource_id=my_demo_resource.id,
        http_method=my_demo_method.http_method,
        status_code="200")
    
    resources:
      myDemoAPI:
        type: aws:apigateway:RestApi
        properties:
          description: This is my API for demonstration purposes
      myDemoResource:
        type: aws:apigateway:Resource
        properties:
          restApi: ${myDemoAPI.id}
          parentId: ${myDemoAPI.rootResourceId}
          pathPart: mydemoresource
      myDemoMethod:
        type: aws:apigateway:Method
        properties:
          restApi: ${myDemoAPI.id}
          resourceId: ${myDemoResource.id}
          httpMethod: GET
          authorization: NONE
      myDemoIntegration:
        type: aws:apigateway:Integration
        properties:
          restApi: ${myDemoAPI.id}
          resourceId: ${myDemoResource.id}
          httpMethod: ${myDemoMethod.httpMethod}
          type: MOCK
      response200:
        type: aws:apigateway:MethodResponse
        properties:
          restApi: ${myDemoAPI.id}
          resourceId: ${myDemoResource.id}
          httpMethod: ${myDemoMethod.httpMethod}
          statusCode: '200'
    

    Create MethodResponse Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new MethodResponse(name: string, args: MethodResponseArgs, opts?: CustomResourceOptions);
    @overload
    def MethodResponse(resource_name: str,
                       args: MethodResponseArgs,
                       opts: Optional[ResourceOptions] = None)
    
    @overload
    def MethodResponse(resource_name: str,
                       opts: Optional[ResourceOptions] = None,
                       http_method: Optional[str] = None,
                       resource_id: Optional[str] = None,
                       rest_api: Optional[str] = None,
                       status_code: Optional[str] = None,
                       response_models: Optional[Mapping[str, str]] = None,
                       response_parameters: Optional[Mapping[str, bool]] = None)
    func NewMethodResponse(ctx *Context, name string, args MethodResponseArgs, opts ...ResourceOption) (*MethodResponse, error)
    public MethodResponse(string name, MethodResponseArgs args, CustomResourceOptions? opts = null)
    public MethodResponse(String name, MethodResponseArgs args)
    public MethodResponse(String name, MethodResponseArgs args, CustomResourceOptions options)
    
    type: aws:apigateway:MethodResponse
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args MethodResponseArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args MethodResponseArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args MethodResponseArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args MethodResponseArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args MethodResponseArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

    The following reference example uses placeholder values for all input properties.

    var methodResponseResource = new Aws.ApiGateway.MethodResponse("methodResponseResource", new()
    {
        HttpMethod = "string",
        ResourceId = "string",
        RestApi = "string",
        StatusCode = "string",
        ResponseModels = 
        {
            { "string", "string" },
        },
        ResponseParameters = 
        {
            { "string", false },
        },
    });
    
    example, err := apigateway.NewMethodResponse(ctx, "methodResponseResource", &apigateway.MethodResponseArgs{
    	HttpMethod: pulumi.String("string"),
    	ResourceId: pulumi.String("string"),
    	RestApi:    pulumi.Any("string"),
    	StatusCode: pulumi.String("string"),
    	ResponseModels: pulumi.StringMap{
    		"string": pulumi.String("string"),
    	},
    	ResponseParameters: pulumi.BoolMap{
    		"string": pulumi.Bool(false),
    	},
    })
    
    var methodResponseResource = new MethodResponse("methodResponseResource", MethodResponseArgs.builder()
        .httpMethod("string")
        .resourceId("string")
        .restApi("string")
        .statusCode("string")
        .responseModels(Map.of("string", "string"))
        .responseParameters(Map.of("string", false))
        .build());
    
    method_response_resource = aws.apigateway.MethodResponse("methodResponseResource",
        http_method="string",
        resource_id="string",
        rest_api="string",
        status_code="string",
        response_models={
            "string": "string",
        },
        response_parameters={
            "string": False,
        })
    
    const methodResponseResource = new aws.apigateway.MethodResponse("methodResponseResource", {
        httpMethod: "string",
        resourceId: "string",
        restApi: "string",
        statusCode: "string",
        responseModels: {
            string: "string",
        },
        responseParameters: {
            string: false,
        },
    });
    
    type: aws:apigateway:MethodResponse
    properties:
        httpMethod: string
        resourceId: string
        responseModels:
            string: string
        responseParameters:
            string: false
        restApi: string
        statusCode: string
    

    MethodResponse Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

    The MethodResponse resource accepts the following input properties:

    HttpMethod string
    HTTP Method (GET, POST, PUT, DELETE, HEAD, OPTIONS, ANY)
    ResourceId string
    API resource ID
    RestApi string | string
    ID of the associated REST API
    StatusCode string
    HTTP status code
    ResponseModels Dictionary<string, string>
    Map of the API models used for the response's content type
    ResponseParameters Dictionary<string, bool>
    Map of response parameters that can be sent to the caller. For example: response_parameters = { "method.response.header.X-Some-Header" = true } would define that the header X-Some-Header can be provided on the response.
    HttpMethod string
    HTTP Method (GET, POST, PUT, DELETE, HEAD, OPTIONS, ANY)
    ResourceId string
    API resource ID
    RestApi string | string
    ID of the associated REST API
    StatusCode string
    HTTP status code
    ResponseModels map[string]string
    Map of the API models used for the response's content type
    ResponseParameters map[string]bool
    Map of response parameters that can be sent to the caller. For example: response_parameters = { "method.response.header.X-Some-Header" = true } would define that the header X-Some-Header can be provided on the response.
    httpMethod String
    HTTP Method (GET, POST, PUT, DELETE, HEAD, OPTIONS, ANY)
    resourceId String
    API resource ID
    restApi String | String
    ID of the associated REST API
    statusCode String
    HTTP status code
    responseModels Map<String,String>
    Map of the API models used for the response's content type
    responseParameters Map<String,Boolean>
    Map of response parameters that can be sent to the caller. For example: response_parameters = { "method.response.header.X-Some-Header" = true } would define that the header X-Some-Header can be provided on the response.
    httpMethod string
    HTTP Method (GET, POST, PUT, DELETE, HEAD, OPTIONS, ANY)
    resourceId string
    API resource ID
    restApi string | RestApi
    ID of the associated REST API
    statusCode string
    HTTP status code
    responseModels {[key: string]: string}
    Map of the API models used for the response's content type
    responseParameters {[key: string]: boolean}
    Map of response parameters that can be sent to the caller. For example: response_parameters = { "method.response.header.X-Some-Header" = true } would define that the header X-Some-Header can be provided on the response.
    http_method str
    HTTP Method (GET, POST, PUT, DELETE, HEAD, OPTIONS, ANY)
    resource_id str
    API resource ID
    rest_api str | str
    ID of the associated REST API
    status_code str
    HTTP status code
    response_models Mapping[str, str]
    Map of the API models used for the response's content type
    response_parameters Mapping[str, bool]
    Map of response parameters that can be sent to the caller. For example: response_parameters = { "method.response.header.X-Some-Header" = true } would define that the header X-Some-Header can be provided on the response.
    httpMethod String
    HTTP Method (GET, POST, PUT, DELETE, HEAD, OPTIONS, ANY)
    resourceId String
    API resource ID
    restApi String |
    ID of the associated REST API
    statusCode String
    HTTP status code
    responseModels Map<String>
    Map of the API models used for the response's content type
    responseParameters Map<Boolean>
    Map of response parameters that can be sent to the caller. For example: response_parameters = { "method.response.header.X-Some-Header" = true } would define that the header X-Some-Header can be provided on the response.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the MethodResponse resource produces the following output properties:

    Id string
    The provider-assigned unique ID for this managed resource.
    Id string
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.
    id string
    The provider-assigned unique ID for this managed resource.
    id str
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.

    Look up Existing MethodResponse Resource

    Get an existing MethodResponse resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: MethodResponseState, opts?: CustomResourceOptions): MethodResponse
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            http_method: Optional[str] = None,
            resource_id: Optional[str] = None,
            response_models: Optional[Mapping[str, str]] = None,
            response_parameters: Optional[Mapping[str, bool]] = None,
            rest_api: Optional[str] = None,
            status_code: Optional[str] = None) -> MethodResponse
    func GetMethodResponse(ctx *Context, name string, id IDInput, state *MethodResponseState, opts ...ResourceOption) (*MethodResponse, error)
    public static MethodResponse Get(string name, Input<string> id, MethodResponseState? state, CustomResourceOptions? opts = null)
    public static MethodResponse get(String name, Output<String> id, MethodResponseState state, CustomResourceOptions options)
    resources:  _:    type: aws:apigateway:MethodResponse    get:      id: ${id}
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    HttpMethod string
    HTTP Method (GET, POST, PUT, DELETE, HEAD, OPTIONS, ANY)
    ResourceId string
    API resource ID
    ResponseModels Dictionary<string, string>
    Map of the API models used for the response's content type
    ResponseParameters Dictionary<string, bool>
    Map of response parameters that can be sent to the caller. For example: response_parameters = { "method.response.header.X-Some-Header" = true } would define that the header X-Some-Header can be provided on the response.
    RestApi string | string
    ID of the associated REST API
    StatusCode string
    HTTP status code
    HttpMethod string
    HTTP Method (GET, POST, PUT, DELETE, HEAD, OPTIONS, ANY)
    ResourceId string
    API resource ID
    ResponseModels map[string]string
    Map of the API models used for the response's content type
    ResponseParameters map[string]bool
    Map of response parameters that can be sent to the caller. For example: response_parameters = { "method.response.header.X-Some-Header" = true } would define that the header X-Some-Header can be provided on the response.
    RestApi string | string
    ID of the associated REST API
    StatusCode string
    HTTP status code
    httpMethod String
    HTTP Method (GET, POST, PUT, DELETE, HEAD, OPTIONS, ANY)
    resourceId String
    API resource ID
    responseModels Map<String,String>
    Map of the API models used for the response's content type
    responseParameters Map<String,Boolean>
    Map of response parameters that can be sent to the caller. For example: response_parameters = { "method.response.header.X-Some-Header" = true } would define that the header X-Some-Header can be provided on the response.
    restApi String | String
    ID of the associated REST API
    statusCode String
    HTTP status code
    httpMethod string
    HTTP Method (GET, POST, PUT, DELETE, HEAD, OPTIONS, ANY)
    resourceId string
    API resource ID
    responseModels {[key: string]: string}
    Map of the API models used for the response's content type
    responseParameters {[key: string]: boolean}
    Map of response parameters that can be sent to the caller. For example: response_parameters = { "method.response.header.X-Some-Header" = true } would define that the header X-Some-Header can be provided on the response.
    restApi string | RestApi
    ID of the associated REST API
    statusCode string
    HTTP status code
    http_method str
    HTTP Method (GET, POST, PUT, DELETE, HEAD, OPTIONS, ANY)
    resource_id str
    API resource ID
    response_models Mapping[str, str]
    Map of the API models used for the response's content type
    response_parameters Mapping[str, bool]
    Map of response parameters that can be sent to the caller. For example: response_parameters = { "method.response.header.X-Some-Header" = true } would define that the header X-Some-Header can be provided on the response.
    rest_api str | str
    ID of the associated REST API
    status_code str
    HTTP status code
    httpMethod String
    HTTP Method (GET, POST, PUT, DELETE, HEAD, OPTIONS, ANY)
    resourceId String
    API resource ID
    responseModels Map<String>
    Map of the API models used for the response's content type
    responseParameters Map<Boolean>
    Map of response parameters that can be sent to the caller. For example: response_parameters = { "method.response.header.X-Some-Header" = true } would define that the header X-Some-Header can be provided on the response.
    restApi String |
    ID of the associated REST API
    statusCode String
    HTTP status code

    Import

    aws_api_gateway_method_response can be imported using REST-API-ID/RESOURCE-ID/HTTP-METHOD/STATUS-CODE, e.g.,

     $ pulumi import aws:apigateway/methodResponse:MethodResponse example 12345abcde/67890fghij/GET/200
    

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    AWS Classic pulumi/pulumi-aws
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the aws Terraform Provider.
    aws logo
    Viewing docs for AWS v5.43.0 (Older version)
    published on Tuesday, Mar 10, 2026 by Pulumi
      Try Pulumi Cloud free. Your team will thank you.