aws-cdk-lib.aws_apigateway.ModelOptions

interface ModelOptions

LanguageType name
.NETAmazon.CDK.AWS.APIGateway.ModelOptions
Gogithub.com/aws/aws-cdk-go/awscdk/v2/awsapigateway#ModelOptions
Javasoftware.amazon.awscdk.services.apigateway.ModelOptions
Pythonaws_cdk.aws_apigateway.ModelOptions
TypeScript (source)aws-cdk-lib » aws_apigateway » ModelOptions

Example

declare const api: apigateway.RestApi;

// We define the JSON Schema for the transformed valid response
const responseModel = api.addModel('ResponseModel', {
  contentType: 'application/json',
  modelName: 'ResponseModel',
  schema: {
    schema: apigateway.JsonSchemaVersion.DRAFT4,
    title: 'pollResponse',
    type: apigateway.JsonSchemaType.OBJECT,
    properties: {
      state: { type: apigateway.JsonSchemaType.STRING },
      greeting: { type: apigateway.JsonSchemaType.STRING }
    }
  }
});

// We define the JSON Schema for the transformed error response
const errorResponseModel = api.addModel('ErrorResponseModel', {
  contentType: 'application/json',
  modelName: 'ErrorResponseModel',
  schema: {
    schema: apigateway.JsonSchemaVersion.DRAFT4,
    title: 'errorResponse',
    type: apigateway.JsonSchemaType.OBJECT,
    properties: {
      state: { type: apigateway.JsonSchemaType.STRING },
      message: { type: apigateway.JsonSchemaType.STRING }
    }
  }
});

Properties

NameTypeDescription
schemaJsonSchemaThe schema to use to transform data to one or more output formats.
contentType?stringThe content type for the model.
description?stringA description that identifies this model.
modelName?stringA name for the model.

schema

Type: JsonSchema

The schema to use to transform data to one or more output formats.

Specify null ({}) if you don't want to specify a schema.


contentType?

Type: string (optional, default: 'application/json')

The content type for the model.

You can also force a content type in the request or response model mapping.


description?

Type: string (optional, default: None)

A description that identifies this model.


modelName?

Type: string (optional, default: If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the model name. For more information, see Name Type.)

A name for the model.

Important If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name.