Receba mensagens de erro detalhadas do AWS API Gateway Request Validator

fundo

Eu tenho um API Gateway criado usando as definições do Swagger 2.0 comExtensões do API Gateway.

Substituí as respostas padrão do API Gateway, por exemplo:

x-amazon-apigateway-gateway-responses:
  BAD_REQUEST_BODY:
    statusCode: 400
    responseTemplates:
      application/json: |
        {
          "error": {
            "code": 400,
            "stage": "$context.stage",
            "request": "$context.requestId",
            "message": "$context.error.message"
          }
        }

o$context na carga útil acima vem deVariáveis do API Gateway.

Um recurso / método de amostra na minha API tem esta aparência (sempreLAMBDA_PROXY integrações):

paths:
  /test:
    post:
      parameters:
        - in: body
          name: Test
          required: true
          schema:
          $ref: "#/definitions/Test"
      responses:
        201:
          description: Created
        400:
          description: Bad Request
        401:
          description: Unauthorized
        403:
          description: Forbidden
      x-amazon-apigateway-integration:
      uri: >-
        arn:aws:apigateway:${region}:lambda:path/2015-03-31/functions/${lambda}/invocations
      type: aws_proxy
      httpMethod: POST
      credentials: "${credentials}"
      passthroughBehavior: never

Com a definição de carga útil de solicitação correspondente:

definitions:
  Test:
    type: object
    title: Test
    required:
      - date
    properties:
      date:
        type: string
        pattern: "^20[0-9]{2}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01])$"
        description: Date in YYYY-MM-DD Format

E asolicitar extensões do validador:

x-amazon-apigateway-request-validator: body
x-amazon-apigateway-request-validators:
  body:
    validateRequestBody: true
    validateRequestParameters: false
Problema

Quando ligo para este terminal com uma mensagem ausente ou inválidadate, Sempre recebo a mesma resposta:

{
    "error": {
        "code": 400,
        "stage": "latest",
        "request": "6b7a64f5-e7f0-11e7-845b-f53ceb4cb049",
        "message": "Invalid request body"
    }
}

No entanto, quando eu o testo através do console do API Gateway sem odate propriedade:

Request body does not match model schema for content type application/json: [
  object has missing required properties (["date"])
]

E com um inválidodate:

Request body does not match model schema for content type application/json: [
  ECMA 262 regex "^20[0-9]{2}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01])$" does not match input string "2017/12/25"
]
Pergunta, questão

Como posso acessar a mensagem de erro detalhada para enriquecer minha resposta de erro com uma mensagem mais descritiva do queInvalid request body? Eu suspeito que isso deve ser possível, talvez usandox-amazon-apigateway-gateway-responses mapeamento, mas até agora não consegui fazer isso.

questionAnswers(4)

yourAnswerToTheQuestion