Comments on: Good Practice for Provision of APIs http://blogs.ukoln.ac.uk/good-apis-jisc A JISC project looking at good practice for provision of and consuming APIs Thu, 16 Jul 2009 12:46:10 +0000 hourly 1 http://wordpress.org/?v=3.5.2 By: Marieke Guy http://blogs.ukoln.ac.uk/good-apis-jisc/good-practice-for-provision-of-apis/#comment-36 Marieke Guy Mon, 18 May 2009 13:49:47 +0000 http://blogs.ukoln.ac.uk/good-apis-jisc/?page_id=103#comment-36 Hi Pete,

There is something in the main report that talks about types of APIs:

“Although some have found it useful to make a distinction between traditional and Web type of API for this report some better distinctions might include:

• projects which provide an API versus projects which are actually developing a Standard API (e.g. OpenDOAR offers an API, SWORD is a project defining one).

• APIs which are about offering simple access to resources (e.g. RESTful) versus ones which are about exploiting some re-usable function (e.g. APIs for workflow systems)

• APIs which are tied to programming languages versus those which are not (SOAP/ HTTP REST/XML RPC)

We’ll have a go at expanding on this to differentiate further.

Thanks

Marieke

]]>
By: PeteJ http://blogs.ukoln.ac.uk/good-apis-jisc/good-practice-for-provision-of-apis/#comment-32 PeteJ Mon, 18 May 2009 10:05:05 +0000 http://blogs.ukoln.ac.uk/good-apis-jisc/?page_id=103#comment-32 I think the point about “the unpredictable nature of APIS” really needs a lot of qualification; especially if the report is saying it applies “mainly to Web APIs”.

One of the key tenets of the REST architectural style, the set of principles which was used to guide the development of foundational Web standards like the URI syntax and the HTTP protocol, is that of the “uniform interface”; i.e. that components within the system expose the same interface, rather than components within different subsystems exposing different interfaces. I don’t see how this fits with a notion that APIs are “unpredictable”.

I think this particular point is a symptom of a the more general point that the report probably needs some discussion of the different contexts within which “APIs” are designed and deployed, and the different “affordances” of those different contexts. What is “good” in one context isn’t necessarily “good” in another.

The globally distributed, highly devolved context of the Web is a very different different context from that of, say, the systems of one particular organisation. And so application interfaces within those two different contexts may have very different requirements and characteristics. The foundational standards of the Web were designed to support the requirements of that particular context, and they exhibit certain properties and characteristics specifically to meet the particular requirements of that context.

Without this sort of differentiation, it seems to me it is very difficult to make particular recommendations about what constitutes a “good” API.

]]>
By: Andy Powell http://blogs.ukoln.ac.uk/good-apis-jisc/good-practice-for-provision-of-apis/#comment-30 Andy Powell Tue, 12 May 2009 13:53:35 +0000 http://blogs.ukoln.ac.uk/good-apis-jisc/?page_id=103#comment-30 Brief comments… (sorry)

The treatment of REST here seems far too minimal but given your current structure I’m not sure where it would go.

Ditto any thinking about access control / identity in 1.8. The reference to Linked Data in 1.8 seems out of place (though treatment Linked Data and REST should probably be co-located).

]]>
By: Good APIs Project » Good Practice for APIs http://blogs.ukoln.ac.uk/good-apis-jisc/good-practice-for-provision-of-apis/#comment-11 Good APIs Project » Good Practice for APIs Wed, 15 Apr 2009 09:17:18 +0000 http://blogs.ukoln.ac.uk/good-apis-jisc/?page_id=103#comment-11 [...] Good Practice for Provision of APIs [...]

]]>