@photon-ai/api to npm, photonhq-api to PyPI, and
photonhq-api to crates.io at the same version, and tags the Go module
github.com/photon-hq/api/packages/go as packages/go/v<version>, even when one of them has no
changes. A version of one package therefore matches the same version of the
others and was generated from the same API contract.
Semantic versioning
Releases follow semantic versioning. While the version is below 1.0:- a release with breaking changes increases the minor version, for example from 0.2.1 to 0.3.0;
- every other release increases the patch version, for example from 0.2.0 to 0.2.1.
Because responses are read leniently, an installed client keeps working when the
API adds fields or enum values. All four clients accept new fields: TypeScript
and Python keep them, Go ignores them, and Rust ignores them unless the object
allows extra members. Upgrade to use new endpoints and to get typed access to
new fields.
Changelog and releases
Every release is listed inCHANGELOG.md
and tagged v<version> in photon-hq/api.
Each release’s GitHub page carries the exact files published to npm, PyPI, and
crates.io, with their SHA-256 checksums. Their build provenance attestations are
in the repository’s
attestations; verify a file
with gh attestation verify FILE --repo photon-hq/api.
API references
- Rust: the full API reference is on docs.rs/photonhq-api.
- Go: the full API reference is on pkg.go.dev/github.com/photon-hq/api/packages/go.
- TypeScript: the package ships its type declarations, and the generated methods carry each endpoint’s summary and description as documentation comments, so your editor shows them.
- Python: the package is typed (
py.typed), and each method’s docstring carries the endpoint’s summary and description.