I have a Sandbox API credential created and tested successfully in the API Reference page. In other words, the authentication credential was valid and received successfully by the Authorize.Net API. When I tried to test it in POSTMAN, I am getting the XML E00003 Root element is missing. In POSTMAN, I supplied the URL https://apitest.authorize.net/xml/v1/request.api and passed 3 header values: name, transactionKey, and content-type. The method is GET. What am I missing here?
Solved! Go to Solution.
09-26-2018 08:01 AM
Hi jeffalmquist,
Sorry about the delay in answering your question. I was on vacation.
In POSTMAN, you do not need to provide header information. Provide JSON or XML script with request type, name, transactionkey, and other information in the "Body". That's all. For example, go to the API Reference page (https://developer.authorize.net/api/reference/index.html) and enter your API Login ID and Transaction Key information to test your authentication credentials. Go to Get Transaction List under Transaction Reporting section and click on Try It tab. Here, you can copy the XML or JSON script and then paste it into POSTMAN Body. That's all. Send it and you should get data returned if you have transactions created. I hope this is helpful.
Susan
10-10-2018 08:09 AM
Got it working in POSTMAN. My mistake was using the GET method when I should have used POST. With POST and supplying the call JSON code, such as the getTransactionListRequest block of code, then it worked successfully.
The goal is to make this API call in the Oracle database and I was successful. However, I am getting a leading inverted question mark in the returned data set. I've tried saving/storing the returned dataset in a NCLOB, CLOB, and NVARCHAR2 variable and that didn't eliminate the inverted question mark. I also tried "application/json;charset=utf-8" value for the "Accept" key and that didn't make a difference either.
09-26-2018 11:30 AM
Would you mind describing more specifically everything you entered into Postman to successfully authenticate? I'm trying that myself using the name and transactionKey headers (with the values I got when I created my sandbox account), and I keep getting the E00003 "Root element is missing." error. My method is POST, and I I've tried it with and without the Content-Type header, application/json and application/xml. No luck yet. :(
10-02-2018 07:53 PM
Hi jeffalmquist,
Sorry about the delay in answering your question. I was on vacation.
In POSTMAN, you do not need to provide header information. Provide JSON or XML script with request type, name, transactionkey, and other information in the "Body". That's all. For example, go to the API Reference page (https://developer.authorize.net/api/reference/index.html) and enter your API Login ID and Transaction Key information to test your authentication credentials. Go to Get Transaction List under Transaction Reporting section and click on Try It tab. Here, you can copy the XML or JSON script and then paste it into POSTMAN Body. That's all. Send it and you should get data returned if you have transactions created. I hope this is helpful.
Susan
10-10-2018 08:09 AM