PDA

View Full Version : ShopWindow - SOAP vs REST


GeorgeGaz
17-08-09, 12:58
Hello all,

With the release of v3 underway, ShopWindow development have found themselves twiddling their thumbs ... :o (well actually they have been moved onto other projects but let's see if we can give them something meaty to get their coding digits in to).

ShopWindow is, and always has been, built using SOAP, however, a REST API has been mentioned time and time again and is worth looking into (as it is something that the timeline for v3 did not allow us to fully explore).
For those that are using the API (and those that have knowledge of APIs in general) I would like to begin a constructive thread about these two methods and how they can aid ShopWindow as a platform.

I, admittedly, am not a developer so forgive my ignorance. Members of the dev team will be involved in this thread in due course.

SOAP

Pros:
• Language, platform, and transport agnostic
• Designed to handle distributed computing environments
• Is the prevailing standard for web services, and hence has better support from other standards (WSDL, WS-*) and tooling from vendors
• Built-in error handling (faults)
• Extensibility
Cons:
• Conceptually more difficult, more "heavy-weight" than REST
• More verbose
• Harder to develop, requires tools

REST

Pros:
• Language and platform agnostic
• Much simpler to develop than SOAP
• Small learning curve, less reliance on tools
• Concise, no need for additional messaging layer
• Closer in design and philosophy to the Web
Cons:
• Assumes a point-to-point communication model--not usable for distributed computing environment where message may go through one or more intermediaries
• Lack of standards support for security, policy, reliable messaging, etc., so services that have more sophisticated requirements are harder to develop ("roll your own")
• Tied to the HTTP transport model

Source ( http://ajaxonomy.com/2008/xml/web-services-part-1-soap-vs-rest)

I look forward to reading (and hopefully understanding) what you guys think about this.

Cheers

nole
17-08-09, 13:33
Hello

Why Vs, Wouldnt you just do both?

For alot of us whom are unlikely to meet the V3 threshold, a Rest api is a nice easy to use alternative.
We arent all super programers and as you said soap is "heavy-weight".

Are api calls less taxing on AW/DW systems than the v3 client?

Nole

GeorgeGaz
17-08-09, 13:36
When I say vs I mean just in general, drawing comparisons.

I believe that there would still be both. The REST would be "laid on top" of the current system.

That is my understanding anyway :eek:

I want to gauge the interest in REST as a concept for ShopWindow before actually committing any time to the idea. Hmmm, where are those in-house developers to help me out here :D

nole
17-08-09, 15:42
Well i believe Rest is:

1.Easier to make niche sites
2.Easy to populate DB's
3.You can make less dynamic sites which in turn are easier to make em search engine friendly.

Alot also depends on the queries DW make available and demo's/documentation provided. Some really sweet demo scripts would make Rest an option for people who wouldnt look twice at api's.

Also get the devs busy on this so they dont make a £28K or a £120 a month V4 ;)

Nole

GeorgeGaz
28-08-09, 12:02
Hey,

Do we have any further API developers that have an opinion on this?

It is something that we are keen to start with but I cannot push for it without building a good case :D

Cheers

authcode
29-08-09, 11:29
I honestly don't know enough about the differences between REST and SOAP to offer an opinion. I hadn't even heard of SOAP before I started using SW.

I would prefer to see more time spent on improving the quality of the data and resolving some of the design issues with the current system, rather than developing a parallel platform. Data is what makes or breaks SW, not delivery.

GeorgeGaz
01-09-09, 10:06
Hi authcode,

Improving the integrity of the data would predominantly be a different department ... :cool: as well as the merchants themselves.

Cheers

currentstyle
07-09-09, 11:07
George, I can't find a single reason for developing a REST interaction for the API, other than 'it makes it easier', which is true in some cases, but, as the calls will all be URL based, then the margin for error, and consequently support requests will be multiplied a thousandfold. I have written a couple of APIs that are RESTful, and the only reason I developed them that way was because I write the code to interact with them, and the margin for user error is zero.

Probably not what you wanted to read :)

GeorgeGaz
07-09-09, 11:12
Hi currentstyle,

Thank you for your feedback, any feedback whether it be positive or constructively negative is going to be put towards building a case for this.

Cheers