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
    February 18, 2021 05:35
  • Deleted User commented
    September 09, 2015 15:26

    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
    September 09, 2015 15:23

    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
    September 09, 2015 15:20

    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)