Skip to main content
The version is in the path: https://api.indm.social/v1. Everything in these docs is v1.

Within v1, changes only add

Code you write against v1 today keeps working. Within v1 we may:
  • add endpoints
  • add optional request fields
  • add fields to responses
  • add error codes, and caveat codes on write responses
  • add values to fields documented as open, such as reason on an account
We won’t, within v1:
  • remove or rename an endpoint, a field or an error code
  • change a field’s type or meaning
  • make an optional request field required
  • reuse a code for a different reason

Build for additions

A few habits keep an integration steady as the API grows:
  • Ignore fields you don’t know. Don’t fail on an unexpected key in a response.
  • Branch on code, fall back on type. An error code you’ve never seen still has a type that tells you the status and the right response. See Errors.
  • Treat message text as words, not data. It’s written for people and may be reworded.

Breaking changes

A change that would break v1 ships as a new version in a new path, and the changelog announces it before it arrives. Every change, additive or not, is recorded on the changelog.