[gpodder-devel] API Versioning?

  • From: koeglstefan at gmail.com (Stefan Kögl)
  • Date: Thu, 27 Jan 2011 17:03:29 +0200

Am 2011-01-27 14:47, schrieb Stefan Derkits:
> I was thinking ... with more & more People using the gpodder API
> directly (or writing Libraries for using it ;) ) I was wondering if it
> could be a good Idea (and if this would be "the way to do it") to put a
> Version Number on the API.

We are doing this already, at least for the Advanced API. For any
particular API Endpoint such as

 GET /api/2/data/podcast.json?url={url}

the "2" refers to the version of the API.

> E.g. say that it is 2.2 at the Moment and every new Feature added to the
> API (more JSON Data, new API Calls for new Features, ...) increments it
> (to e.g. 2.3)

Our current approach is to extend the API as needed while keeping it
stable. Once we have to introduce a change that would break some
clients, we increase the version number. From that point on, the
previous version is frozen (and continues to work as before) and changes
are only made to the next version.

This keeps the number of versions low so that we can easily maintain and
offer all API versions.

-- Stefan

Other related posts: