aura icon indicating copy to clipboard operation
aura copied to clipboard

Versioning of the API spec?

Open mgoltzsche opened this issue 1 year ago • 1 comments
trafficstars

How is the AURA API versioned? I already noticed that the old beets web API is not versioned. Unfortunately, that also seems to be the case with the new AURA API, isn't it?

There are two common ways of versioning REST APIs:

  • The text book way: specifying the version as part of the path prefix, e.g. /aura/v1/tracks.
  • Specifying the version as part of the Content-Type which simplifies supporting multiple API versions at the same time and negotiating versioning with the clients.

mgoltzsche avatar Dec 10 '23 20:12 mgoltzsche

This is a great point; thanks for bringing it up. It seems like I never actually wrote the down anywhere, but my original idea was your "textbook" suggestion—basically, everything the spec currently specifies is supposed to be hosted under a top-level path like /aura/1 or similar.

But I'm also open to the content-negotiation style… I've never used an API that uses that style! Clearly, we should pick one and actually specify it here.

sampsyo avatar Dec 15 '23 13:12 sampsyo