Baton
API Development. Synced.

Your API collections, in your own git repository.

Baton keeps requests, environments, and schedules as plain YAML files in a repository you own. Review changes in a pull request. Run them on a schedule from a worker you host. No vendor cloud in the middle.

Open the web app — try it right in the browser with a demo workspace, nothing to install.

Get a key and a build

Registration is free. Your key is valid for 180 days, verified offline — the app never calls home.

Already registered and your key expired? Request a fresh one.

What you get

Downloads

Loading the current release…

Every desktop build's SHA-256 is listed above and in version.json, which is also what the app checks for updates. Phones and tablets install from the store.

Baton Worker — optional, and yours

A small Node service you run yourself. The app is complete without it; the worker adds the things a desktop app cannot do alone — running collections on a schedule while your laptop is shut, reaching an API that sends no CORS headers, and giving the browser build a real git checkout.

It is not a service we operate. There is no account, and nothing about your requests reaches us.

docker run -d --name baton-worker \
  -p 8787:8787 \
  -e BATON_WORKER_TOKEN=pick-a-long-secret \
  -e BATON_GIT_URL=https://github.com/you/your-apis.git \
  -v baton-data:/data \
  ghcr.io/dudko-dev/baton-worker:latest

The worker clones that repository itself and re-checks it every five minutes; it never reads the machine running the app.

Then pair it from the app: the sidebar's worker row, or Baton Worker in the command palette. The worker dialog lists every option and the schedule format.

Commercial licensing for the worker and the packages beyond the small-entity thresholds: siarhei@dudko.dev.