Forum Discussion

Karzone's avatar
Karzone
New Contributor
9 years ago

Can we use Ready API for sending messages to Amazon SQS Queue

My requirement is to send messages(In JSON format) to Amazon SQS Queue using Ready API.

 

Could you please advise.

 

Thank you,

Karthick K

    • 944pi's avatar
      944pi
      New Contributor

      Has anyone got this to work - sending request to SendMessage to SQS?

       

      I am evaluating ReadyAPI to move from Postman and need to send messages onto an SQS queue.

       

      Using a get request as described here 

      https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-making-api-requests.html

       

      Created an AWS Signature Profile as per https://support.smartbear.com/readyapi/docs/projects/requests/auth/types/aws.html

       

      Cannot get anything other than "The request signature we calculated does not match the signature you provided. Check your AWS Secret Access Key and signing method. Consult the service documentation for details." when sending from ReadyAPI.

       

      Using the same request and AWS IAM credentials in Postman allows messages to be posted to the queue.

       

      The only difference I can see is that in the headers, ReadyAPI adds x-amz-content-sha256 to the header, whereas Postman (which works) does not create or add this.

       

      Both are sending the Authorization header as below

       

      Postman (works)

      Authorization: AWS4-HMAC-SHA256 Credential=XXXXXXXXXXXXXXXXXXXX/20190116/eu-west-1/sqs/aws4_request, SignedHeaders=content-type;host;x-amz-date, 
      Signature=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

      ReadyAPI (not working)

      Authorization: AWS4-HMAC-SHA256 Credential=XXXXXXXXXXXXXXXXXXXX/20190116/eu-west-1/sqs/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

      Is the inclusion of the x-amz-content-sha256 in the signature generation significant?

       

      Grateful for any pointers,

      Phil

       

    • 944pi's avatar
      944pi
      New Contributor

      Hi 

       

      Downgrading to v2.5 didn't resolve the issue for me. 

      We worked around this by changing from SQS as the target to an API and Lambda solution.