- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎08-18-2017 07:25 AM
Hi,
I have been stuck for a while to configure the HTTP method for Post using the Outbound REST Message.
Since the API will need me to send some information on the request body, such as: grant_type, resource, client_id, etc.
So, I made the configuration as below.
But when I tested it, it looks like the Azure endpoint cannot recognize the Content to get the parameter for the request body with this error:
"error":"invalid_request","error_description":"AADSTS90014: The request body must contain the following parameter: 'grant_type'.
I strongly believe this is because the problem on the Content-type, since I also got the same exact error when I am changing the Content-Type in another Content-type in Postman.
Just for the info, this API have been tested working correctly if I use the Postman standard content-type with form data.
Any suggestion or clue will much appreciated.
Solved! Go to Solution.

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎08-18-2017 12:55 PM
I think you just need to remove the curly brackets from your body and change the content-type to 'application/x-www-form-urlencoded'.
Example, using only code (no Outbound REST Message forms)
var restMessage = new sn_ws.RESTMessageV2();
restMessage.setEndpoint('http://httpbin.org/post');
restMessage.setHttpMethod('post');
//restMessage.setMIDServer('midserverbyname');
restMessage.setRequestHeader('content-type','application/x-www-form-urlencoded');
restMessage.setRequestHeader('accept','application/json');
restMessage.setRequestBody('form1=value1&form2=value2');
var response = restMessage.execute();
var httpStatus = response.getStatusCode();
var responseBody = response.haveError() ? response.getErrorMessage() : response.getBody();
if (httpStatus == '200'){
gs.info('Body: '+responseBody);
}else{
gs.info('HTTP Status: '+httpStatus);
gs.info('Error: '+responseBody);
}

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎01-17-2020 04:16 AM
This issue has been nagging me since yesterday. Fixed it using the approach suggested by you.Thanks a lot for your help.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎02-09-2018 12:30 PM
Did you end up scripting all of this instead of using the REST forms? I tried it this way and still getting 401 Error
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎02-09-2018 01:03 PM
Hi,
I end up using the REST forms for the better maintainability, which my script calls this REST to invoke the API.
In case of 401 error I believe it's because of authorization problem, make sure you have setup the required user access/ permission on the remote end.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎02-09-2018 01:37 PM
I finally got it working using the same method. The problem I found was the syntax of the content block was not correct. I ran the same POST message on https://www.hurl.it/ and noticed the body message did not match. I copied the working body message from hurl and it worked.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎03-02-2018 02:05 AM
Hi Mirza,
I am facing similar issue where you able to fix at your end, can you please provide me the steps.
@mirza