/api/v1 is the contract for the routes in the API reference and the tools of the connector.

Changes inside v1#

Write a client that tolerates these, because they can arrive at any time:

  • a new field in an answer;
  • a new route, or a new connector tool;
  • a new optional parameter;
  • a new value in a list of values (a shelf, a status, an error code);
  • a looser limit.

Unknown fields and values should be ignored, not treated as errors.

Changes that need a new version#

Removing or renaming a documented field, changing what one means, removing a route or making a parameter required would be a new path, /api/v2, announced on this page and in the site's changelog before /api/v1 changes.

Limits and terms#

The limits and the terms are not part of the version. They may tighten to protect the site; this documentation says so first, and the site's changelog carries an "API" line for every change to the API, the connector or their limits.