diff --git a/events/appsync.go b/events/appsync.go index 37682b9e..23529922 100644 --- a/events/appsync.go +++ b/events/appsync.go @@ -45,6 +45,7 @@ const ( type AppSyncLambdaAuthorizerRequest struct { AuthorizationToken string `json:"authorizationToken"` RequestContext AppSyncLambdaAuthorizerRequestContext `json:"requestContext"` + RequestHeaders map[string]string `json:"requestHeaders"` } // AppSyncLambdaAuthorizerRequestContext contains the parameters of the AppSync invocation which triggered @@ -61,6 +62,7 @@ type AppSyncLambdaAuthorizerRequestContext struct { // AppSyncLambdaAuthorizerResponse represents the expected format of an authorization response to AppSync. type AppSyncLambdaAuthorizerResponse struct { IsAuthorized bool `json:"isAuthorized"` + HandlerContext map[string]string `json:"handlerContext,omitempty"` ResolverContext map[string]interface{} `json:"resolverContext,omitempty"` DeniedFields []string `json:"deniedFields,omitempty"` TTLOverride *int `json:"ttlOverride,omitempty"` diff --git a/events/testdata/appsync-lambda-auth-request.json b/events/testdata/appsync-lambda-auth-request.json index c2243376..3b7f4f2e 100644 --- a/events/testdata/appsync-lambda-auth-request.json +++ b/events/testdata/appsync-lambda-auth-request.json @@ -7,5 +7,8 @@ "queryString": "mutation CreateEvent {...}\n\nquery MyQuery {...}\n", "operationName": "MyQuery", "variables": {} + }, + "requestHeaders": { + "header": "value" } } diff --git a/events/testdata/appsync-lambda-auth-response.json b/events/testdata/appsync-lambda-auth-response.json index c71c8d87..66548c2a 100644 --- a/events/testdata/appsync-lambda-auth-response.json +++ b/events/testdata/appsync-lambda-auth-response.json @@ -1,5 +1,9 @@ { "isAuthorized": true, + "handlerContext": { + "banana": "very yellow", + "apple": "very green" + }, "resolverContext": { "banana": "very yellow", "apple": "very green"