Skip to content

HTTP API authorizer id JSON Schema validation error #8170

Description

@fredericbarthelet

With #8068 , httpApi.authorizer.id lambda trigger event configuration is now required to be a string.
However, this property used to accept any CF functions, like stated in the documentation https://www.serverless.com/framework/docs/providers/aws/events/http-api#shared-authorizer

serverless.ts
import type AWS from 'serverless/aws';

const serverlessConfiguration: AWS.Serverless = {
  service: {
    name: 'test',
  },
  configValidationMode: 'error',
  custom: {
    webpack: {
      webpackConfig: './webpack.config.js',
      includeModules: true
    }
  },
  plugins: ['serverless-webpack'],
  provider: {
    name: 'aws',
    runtime: 'nodejs12.x',
    httpApi: {
      id: {
        'Fn::ImportValue': 'httpApiId'
      }
    }
  },
  functions: {
    hello: {
      handler: 'handler.hello',
      events: [
        {
          httpApi: {
            method: 'GET',
            path: '/hello',
            authorizer: {
              id: {
                'Fn::ImportValue': 'httpApiAuthorizerId'
              }
            }
          }
        }
      ]
    }
  }
}

module.exports = serverlessConfiguration;
sls deploy output
Serverless Error ---------------------------------------

  Configuration error at 'functions.hello.events[0].httpApi.authorizer.id': should be string

  Get Support --------------------------------------------
     Docs:          docs.serverless.com
     Bugs:          github.com/serverless/serverless/issues
     Issues:        forum.serverless.com

  Your Environment Information ---------------------------
     Operating System:          darwin
     Node Version:              12.13.0
     Framework Version:         1.80.0
     Plugin Version:            3.8.1
     SDK Version:               2.3.1
     Components Version:        2.34.9

Installed version

Framework Core: 1.80.0
Plugin: 3.8.1
SDK: 2.3.1
Components: 2.34.9

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions