ZeroTierOne API Spec
OpenAPI and JSON-schema for the ZeroTierOne service API.
This is the API that lets you leave and join networks on your local machine, or configure a self-hosted network controller.
The specs are generated from a typespec spec.
dev
npm install
npm start
test
This integration test requires zerotier-one to be running. It may change configuration of your node! It runs in github actions too.
AUTH_TOKEN=$(cat /path/to/authtoken.secret) npm test
missing features
Features not implemented by typespec yet
publishing
How to create a github release.
Releases contain the openapi and json-schema files.
Try to use conventional commit messages if you want. They will appear in the changelog.
This is a multistep process now due to branch protection.
Locally, create version:
When main is in a state you'd like to create a new release for:
- create a feature branch off
main npm version major|minor|patchThis bumps the version and updates the changelognpm run buildThis is a little chicken and eggy. The build script updates the the spec version based on the npm package version, which just got updated above.- commit && push
- create PR
- get merged to
main
On Github, create release:
- Go into the repo's Github Actions
- Click "tag and release"
- Click Run Workflow
- Run it off
main
The url to the latest release of the openapi spec is: https://github.com/zerotier/zerotier-one-api-spec/releases/latest/download/openapi.yaml