Ideas for Arc XP

API versioning

In an environment where not all apps are updated at the same time. Versioned APIs allow multiple App versions to exist in "the wild". If a class of Users for whatever reason no longer receives updates it allows them to continue having a usable app.

 

This also allows apps to migrate Data at rest safely. 

  • Aaron Crespo
  • Sep 9 2015
  • Already exists
  • Attach files
  • Guest commented
    18 Feb, 2021 05:35am
  • Deleted User commented
    9 Sep, 2015 03:26pm

    Yep; it'll be a little 2-dimensional because the ANS schema can advance at one rate (e.g. 0.3 -> 0.4 -> 0.5) and the various micro-services that use the ANS spec will advance at other rates.


    So, for example,

    • arc-story-api v1.0 will be "ANS 0.3 compatible" at endpoint /api/v1/story and
    • arc-story-api v2.0 might be "ANS 0.4 compatible" at endpoint /api/v2/story  (while maintaining backwards compatibility at the /api/v1/story endpoint)
  • Aaron Crespo commented
    9 Sep, 2015 03:23pm

    Great, I saw it in the ANS specification but was curious if that was going to bubble down all the way into adaptors(?) like Story Builder endpoints.

  • Deleted User commented
    9 Sep, 2015 03:20pm

    Hi Aaron - this is a great idea.  So great, in fact, that we're building it in to all ARC applications.  We're going with the slightly brute-force approach of putting the version in the API endpoints (so it'll be "/api/v1/story" for example)