This article describes Semaphore’s commitment to compatibility for services built for the Semaphore API v2. It also describes how we introduce changes to the API and how those changes are communicated.
Within any given version of the API, any given resource (eg. /orgs, /teams) has a specified level of stability. The stability of a resource documented and displayed on the resource's documentation page. The stability of a resource specifies what changes (if any) Semaphore will make to the resource.
There are three levels of stability:
A prototype resource is experimental and major changes are likely. In time, a prototype resource may or may not advance to production.
A development resource is a work-in-progress, but major changes should be infrequent. Development resources should advance to production stability in time.
A production resources is complete and major changes will no longer occur.
Small in scope and unlikely to break or change semantics of existing methods.
May have larger impact and effort will be made to provide migration paths as needed.
May have larger impact, but are unavoidable due to legal compliance, security vulnerabilities or violation of specification.
Semaphore Docs are open source — Edit on GitHub