Home » Php » php – Magento REST api

php – Magento REST api

Posted by: admin July 12, 2020 Leave a comment

Questions:

I am trying to use magento rest api for customers. But when i authenticate the application, it gives me following error.

Invalid auth/bad request (got a 500, expected HTTP/1.1 20X or a redirect)
Service temporary unavailable

I am trying to fetch product collection for customer role.

$oauthClient->fetch($resourceUrl, array(), 'GET', array('Content-Type' => 'application/xml'));

The line of code throws exception.

Any help will be appreciated.

How to&Answers:

Have you tried adding an “Accept” header to your request? I ran into the same problem with the Magento API, tested it and found that the PHP OAuth client doesn’t send any accept header by default. So try the following instead:

$oauthClient->fetch($resourceUrl, array(), 'GET', array('Content-Type' => 'application/xml', 'Accept' => 'application/xml'));

or

$oauthClient->fetch($resourceUrl, array(), 'GET', array('Content-Type' => 'application/xml', 'Accept' => '*/*'));

You can view more info about the exception by using the following when you set up the client:

$oauthClient->enableDebug();

…and then looking at the debug with:

$oauthClient->debugInfo

or

$oauthClient->getLastResponse

The other methods are documented here:

http://www.php.net/manual/en/class.oauth.php

Answer:

I’ve used $oauthClient->fetch($resourceUrl, array(), 'GET', array('Content-Type' => 'application/json', 'Accept' => '*/*')); which works fine.