api gateway and step functions

0

Hi, i've created an Api Gateway that calls a state machine. The problem i have is that when you invoke this service from out you need to specify a stateMachineArn. It seems a lack of security. There's a way to pass it as integration of the request (for example as a constant)? I have tried some solutions as mapping templates but it seems that they does'n work , i always had this error: Value null at 'stateMachineArn' failed to satisfy constraint: Member must not be null" thanks in advance.

2 Risposte
1

Value null at 'stateMachineArn' failed to satisfy constraint: Member must not be null"

The same problem raised for me while posting data to DynamoDB table through API Gateway.

How I solved that error: By adding a Body-Mapping template in the Integration Request

In the API > whatever resource > whatever method > Integration Request > Body mapping template, added a new template "application/json" as given below

{ 

    "TableName": "yourTableName",

    "Item": {

        "inputField1": {

            "S": "$input.path('$.tableItemAttribute1')"

            },

        "inputField2": {

            "S": "$input.path('$.tableItemAttribute2')"

            },

        "inputField3": {

            "S": "$input.path('$.tableItemAttribute3')"

            }

    }

}
con risposta un anno fa
0

Thank You Anirban for your reply. I've solved too adding a Body-Mapping template in the Integration Request.

{ "input": "$util.escapeJavaScript($input.json('$'))", "stateMachineArn": "arn:aws:MyStateMachine" } it works, you must remember to redeploy the api gateway. Thanks. Dryuyd

con risposta un anno fa

Accesso non effettuato. Accedi per postare una risposta.

Una buona risposta soddisfa chiaramente la domanda, fornisce un feedback costruttivo e incoraggia la crescita professionale del richiedente.

Linee guida per rispondere alle domande