{"id":1408,"date":"2012-02-28T12:17:36","date_gmt":"2012-02-28T11:17:36","guid":{"rendered":"http:\/\/www.meanboyfriend.com\/overdue_ideas\/?p=1408"},"modified":"2012-02-28T12:18:00","modified_gmt":"2012-02-28T11:18:00","slug":"mendeley-and-apis","status":"publish","type":"post","link":"http:\/\/www.meanboyfriend.com\/overdue_ideas\/2012\/02\/mendeley-and-apis\/","title":{"rendered":"Mendeley and APIs"},"content":{"rendered":"<p>Now Ian Mulvany talking about <a href=\"http:\/\/www.mendeley.com\/\">Mendeley<\/a> and how they use APIs &#8211; both publishing and consuming.<\/p>\n<p>Try to expose all the metadata being added by users via an API &#8211; a &#8220;social catalogue&#8221;. This enables &#8216;discovery&#8217;, but not &#8216;delivery&#8217; &#8211; this is where Mendeley can make use of external APIs &#8211; such as the WorldCat API.<\/p>\n<p>Mendeley invest in APIs because<\/p>\n<ul>\n<li>It helps them extend their product, but integrating data\/functionality from other places<\/li>\n<li>It enables others to extend their product &#8211; they don&#8217;t have time to build everything that users are asking for. E.g. Android client built by users, as company didn&#8217;t have the resource<\/li>\n<\/ul>\n<p>Mendeley uses WorldCat registry to find\/suggest appropriate OpenURL resolver depending on users location &#8211; as most users won&#8217;t know what an OpenURL resolver is, or what the detail are.<\/p>\n<p>Mendeley uses OAuth &#8211; which means they can integrate with institutional repositories and a users own publications in Mendeley &#8211; going to be live soon (working with JISC, Symplectic and University of Cambridge on this &#8211; http:\/\/jisc-dura.blogspot.com\/). Learnt a lot about consuming their own APIs in this project &#8211; and uncovered bugs&#8230;<\/p>\n<p>&#8220;We should have built the API first, and the product second&#8221; &#8211; the fact they didn&#8217;t now creating work. Now they are creating a new application for libraries, and building API first. Ian firmly believes this is a better approach.<\/p>\n<p>Ian&#8217;s top 10 tips for API provision:<\/p>\n<ul>\n<li>first API, then app<\/li>\n<li>use your own APIs (and he believes Mendeley should do this more)<\/li>\n<li>make an (API) interface you would use yourself<\/li>\n<li>provide lots of example docs &#8211; coders like to do stuff quickly &#8211; if they can get something working from an example quickly, they&#8217;ll then invest<\/li>\n<li>version your API &#8211; backwards compatible<\/li>\n<li>put rate limits in place<\/li>\n<li>work with a 3rd party to provide keys<\/li>\n<li>have clear licensing<\/li>\n<li>engage with your community<\/li>\n<li>promote, promote, promote, promote, promote<\/li>\n<\/ul>\n<p>In terms of consuming:<\/p>\n<ul>\n<li>know what you want to do<\/li>\n<li>define the value &#8211; this may be service delivery, or could be development of skills for developers etc.<\/li>\n<li>measure the value &#8211; otherwise difficult to prioritise future developments<\/li>\n<li>understand the SLA<\/li>\n<li>if it&#8217;s important &#8211; have a backup plan &#8211; dependence on 3rd party is a risk which you should manage<\/li>\n<li>don&#8217;t wait on API for page loads &#8211; found that Mendeley homepage was waiting for a response from an API was down, and so the page didn&#8217;t load&#8230;<\/li>\n<li>get on the mailing list\/dev group<\/li>\n<li>look for good example code<\/li>\n<li>don&#8217;t be afraid to pay &#8211; if it&#8217;s important, it&#8217;s worth paying for<\/li>\n<li>use Mendeley&#8217;s APIs \ud83d\ude09<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Now Ian Mulvany talking about Mendeley and how they use APIs &#8211; both publishing and consuming. Try to expose all the metadata being added by users via an API &#8211; a &#8220;social catalogue&#8221;. This enables &#8216;discovery&#8217;, but not &#8216;delivery&#8217; &#8211; this is where Mendeley can make use of external APIs &#8211; such as the WorldCat [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-1408","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/www.meanboyfriend.com\/overdue_ideas\/wp-json\/wp\/v2\/posts\/1408","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/www.meanboyfriend.com\/overdue_ideas\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.meanboyfriend.com\/overdue_ideas\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.meanboyfriend.com\/overdue_ideas\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"http:\/\/www.meanboyfriend.com\/overdue_ideas\/wp-json\/wp\/v2\/comments?post=1408"}],"version-history":[{"count":3,"href":"http:\/\/www.meanboyfriend.com\/overdue_ideas\/wp-json\/wp\/v2\/posts\/1408\/revisions"}],"predecessor-version":[{"id":1411,"href":"http:\/\/www.meanboyfriend.com\/overdue_ideas\/wp-json\/wp\/v2\/posts\/1408\/revisions\/1411"}],"wp:attachment":[{"href":"http:\/\/www.meanboyfriend.com\/overdue_ideas\/wp-json\/wp\/v2\/media?parent=1408"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.meanboyfriend.com\/overdue_ideas\/wp-json\/wp\/v2\/categories?post=1408"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.meanboyfriend.com\/overdue_ideas\/wp-json\/wp\/v2\/tags?post=1408"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}