github.com/mweagle/Sparta@v1.15.0/docs_source/static/source/resources/provision/apigateway/inputmapping_json.vtl (about)

     1  #*
     2  Provide an automatic pass through template that transforms all inputs
     3  into the JSON payload sent to a golang function. The JSON behavior attempts to parse
     4  the incoming HTTP body as JSON assign it to the `body` field.
     5  
     6  See
     7    https://forums.aws.amazon.com/thread.jspa?threadID=220274&tstart=0
     8    http://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html
     9  *#
    10  {
    11    "method": "$context.httpMethod",
    12    "body" : $input.json('$'),
    13    "headers": {
    14      #foreach($param in $input.params().header.keySet())
    15      "$param": "$util.escapeJavaScript($input.params().header.get($param))" #if($foreach.hasNext),#end
    16      #end
    17    },
    18    "queryParams": {
    19      #foreach($param in $input.params().querystring.keySet())
    20      "$param": "$util.escapeJavaScript($input.params().querystring.get($param))" #if($foreach.hasNext),#end
    21  
    22      #end
    23    },
    24    "pathParams": {
    25      #foreach($param in $input.params().path.keySet())
    26      "$param": "$util.escapeJavaScript($input.params().path.get($param))" #if($foreach.hasNext),#end
    27      #end
    28    },
    29    "context" : {
    30      "apiId" : "$util.escapeJavaScript($context.apiId)",
    31      "method" : "$util.escapeJavaScript($context.httpMethod)",
    32      "requestId" : "$util.escapeJavaScript($context.requestId)",
    33      "resourceId" : "$util.escapeJavaScript($context.resourceId)",
    34      "resourcePath" : "$util.escapeJavaScript($context.resourcePath)",
    35      "stage" : "$util.escapeJavaScript($context.stage)",
    36      "identity" : {
    37        "accountId" : "$util.escapeJavaScript($context.identity.accountId)",
    38        "apiKey" : "$util.escapeJavaScript($context.identity.apiKey)",
    39        "caller" : "$util.escapeJavaScript($context.identity.caller)",
    40        "cognitoAuthenticationProvider" : "$util.escapeJavaScript($context.identity.cognitoAuthenticationProvider)",
    41        "cognitoAuthenticationType" : "$util.escapeJavaScript($context.identity.cognitoAuthenticationType)",
    42        "cognitoIdentityId" : "$util.escapeJavaScript($context.identity.cognitoIdentityId)",
    43        "cognitoIdentityPoolId" : "$util.escapeJavaScript($context.identity.cognitoIdentityPoolId)",
    44        "sourceIp" : "$util.escapeJavaScript($context.identity.sourceIp)",
    45        "user" : "$util.escapeJavaScript($context.identity.user)",
    46        "userAgent" : "$util.escapeJavaScript($context.identity.userAgent)",
    47        "userArn" : "$util.escapeJavaScript($context.identity.userArn)"
    48      }
    49    },
    50     "authorizer": {
    51       #foreach($param in $context.authorizer.keySet())
    52       "$param": "$util.escapeJavaScript($context.authorizer.get($param))" #if($foreach.hasNext),#end
    53       #end
    54     }
    55  }