Hi
I am trying to use AWS api gateway(AWS api key is required) as a target endpoint in APIGEE.
I have included the x-api-key for AWS api in the headers using the assign message policy in APIGEE but it throws me this error:
403 Forbidden { "message": "Forbidden" }
Whereas if i include the x-api-key explicitly in postman, it works:
Can anyone suggest a solution for this?
Could you please check where you have used the assign message.
As per my understanding , You want to add x-api-key and pass it in the header for the target endpoint.
It could be done using assign message <Set> Property.
Hi this is my assign message policy. I used the <Add> property:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<AssignMessage async="false" continueOnError="false" enabled="true" name="Assign-Message_convert-params">
<DisplayName>Assign Message_convert params</DisplayName>
<Properties/>
<Copy source="request">
<Headers/>
<QueryParams/>
<FormParams/>
<Payload/>
<Verb/>
<StatusCode/>
<ReasonPhrase/>
<Path/>
</Copy>
<Remove>
<Headers>
<Header name="Authorization"/>
<Header name="X-Api-Key"/>
<Header name="apikey"/>
</Headers>
</Remove>
<Add>
<Headers>
<Header name="X-Api-Key">awsapikey</Header>
</Headers>
</Add>
<AssignVariable>
<Name>name</Name>
<Value/>
<Ref/>
</AssignVariable>
<IgnoreUnresolvedVariables>true</IgnoreUnresolvedVariables> <AssignTo createNew="false" transport="http" type="request"/> </AssignMessage>
Instead of adding the header for request,set it for request.
<Add> <Headers>
<Header name="X-Api-Key">awsapikey</Header>
</Headers>
</Add>
Kindly Try Setting the value.
<Set>
<Headers> <Header name="X-Api-Key">awsapikey</Header> </Headers> </Set>
Hey I tried that, it still does not work
User | Count |
---|---|
2 | |
1 | |
1 | |
1 | |
1 |