Smithereen API is versioned to ensure compatibility between apps and servers.

A new version will only be introduced when there are API changes that apps need to be aware of, and thus API versions do not necessarily correspond to Smithereen release versions. You should not make any assumptions about the relation of API and Smithereen server versions.

Your app will support a range of Smithereen API versions depending on your requirements and the distribution of Smithereen servers in the wild. To pick a version to use, it is recommended to do the following when first connecting to a previously unknown server:

  1. Call server.getInfo with the lowest API version your app supports.
  2. Retrieve the server's highest supported API version from the api_versions.smithereen field.
  3. Use that, or your app's highest supported version, whichever is lowest, for all subsequent requests to this server.
  4. To make sure your app is using the latest version, refresh the server information by calling server.getInfo periodically, e.g. whenever your app starts but not more often than once a day, and upgrade your API version if api_versions.smithereen is different from your locally stored previous value.

Version history

1.1

Smithereen 1.1:

1.0

Smithereen 1.0. Initial API version.