Loomio
Sat 20 Feb 2016 11:30AM

Request for comments: API specification draft

DS Dennis Schubert Public Seen by 97

So, since we now have a nice API authentication implemented I think we should ship 0.6.0.0 with an API if we manage to implement it in time. Initial work was already done in #6636 but after taking a look with it, I felt like we really should think about a proper structure for our API, especially since our backend models are rather... complex and simply exposing anything to our API does not feel like the right thing to do.

The initial work by @theworldbright was based on jsonapi, but after a small chat over IRC, we both agreed that following jsonapi creates a lot of unnecessary overhead. So I went ahead and wrote an API proposal (actually, I wrote a whole documentation so we would be ready to go...) and I'd like to have some feedback. Most of the routes are simple RESTy JSON routes. Pagination is done via Link headers which also is a somewhat "usual" approach that I have seen in various places, for example in GitHubs API.

There we go: https://diaspora.github.io/api-documentation/

Feel free to ask any questions and make suggestions. If you find a spelling or grammar error, please submit a PR and keep that out of Loomio since that would create a lot of noise. ;) If no one has objections, I'd move the repository over to the org rather sooner than later and add links to the wiki, so everyone interested in API work has an easy time finding that documentation.

DS

Dennis Schubert Sun 6 Nov 2016 4:52AM

Actually, I've reverted the first name and last name split. See https://github.com/diaspora/diaspora/issues/3648