2

I'm implementing a mobile app that would communicate with Magento, there is a lot of functions/endpoints not implemented in SOAP or REST api, so im definitely going to extend whichever im going to consume. But the question is which should i use,

  1. The REST api apparently needs oAuth and end-user authroization, and from i understand there is no way to bypass this. But i dont want to do that, I just want to access the api and start firing request without the user authorization or prompting him with a dialog.
  2. From what i read the SOAP fits better with what im doing here, it just needs an api user and key.

Can you guys confirm this, should i go for the SOAP and extend it when needed.

Regards.

3
  • For sure you can use REST API from the application. inchoo.net/ecommerce/magento/…
    – Amasty
    Aug 26, 2014 at 19:38
  • @Amasty without prompting the user for any Authorization?, if yes how, any article discussing this? Aug 26, 2014 at 19:40
  • Have edited the first comment. There are several roles. For guests you don't need authorization for example.
    – Amasty
    Aug 26, 2014 at 19:43

1 Answer 1

2

If this is purely read only data driven, You would be are better off push/polling Magento's API data into some data structure/DB to CDN and possibly cache locally. Scaling becomes a lot easier and your authentication problem isn't an obstacle anymore. But this purely depends on the requirements of the mobile app.

Magento has this authentication for a reason, as it exposes both Customer and Backend facing functionality. Someone could easily sniff out the URLs you are using and have lots of fun if there was no authentication. And for pete's sake use SSL! :)

In the end the purpose of the mobile app is what should be most considered.

To answer your question SOAP vs REST:

REST is most usually the answer.

1
  • im going for the soap api, with pre-autorized access token Aug 31, 2014 at 20:15

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.