public-api.workchats.com/v1changes only additively. Your integration must ignore fields, callback kinds, block types and error codes it doesn’t recognize, rather than treating them as errors.- A breaking change ships as a new major version,
/v2. Nothing breaking ever lands inside/v1. - When
/v2becomes generally available,/v1stays supported for at least 12 months afterward.DeprecationandSunsetresponse headers are added once the first deprecation is announced. - Every public change — additive or a new major version — gets a dated entry on the Changelog.
What counts as additive
Safe to add without a version bump: a new endpoint, a new optional request field, a new field in a response, a new error code, a new callback eventkind, a new block type.
Not additive, and would need /v2: removing or renaming a field, changing
a field’s type or meaning, making an optional field required, removing an
error code, or changing what an existing endpoint does for the same input.
Build for this
- Parse JSON leniently: don’t fail on an unrecognized field.
- Treat an unrecognized error
codeas a generic failure (see Errors), not a crash. - Treat an unrecognized
directory.changedkindor blocktypeas “skip this, keep going” once callbacks and richer blocks ship.