API & Automation

Automate enrollment today. Full API next.

Provision devices into your mesh without a human in the loop — setup keys and a scriptable CLI agent are live now. A token-authenticated REST API and a Terraform provider for the rest of the platform are on the roadmap.

  • Setup keys for unattended device enrollment
  • Scriptable CLI agent — install & connect
  • REST API + API tokens Coming soon
  • Terraform provider & webhooks Coming soon
Terminal — headless enrollment
# Provision a device with a setup key — no browser
$ curl -fsSL get.meshr.to | \
     sudo MESHR_KEY=msk_ab12...c9f3 bash
 Joined as runner-ci-04 (100.64.0.41)
 auto-added to group: ci-runners

# Or drive the agent directly in a pipeline
$ meshr up --key $MESHR_SETUP_KEY
 Connected · 24 peers reachable
Headless
CLI-driven
CI/CD enrollment

Drop a key into your pipeline.

Register ephemeral runners as mesh devices and tear them down when the job ends. Works with the CI you already run.

GitHub Actions

Enroll the runner with a setup key at the start of the job; it joins the mesh, runs, and disappears.

- name: Join meshr
  run: |
    curl -fsSL get.meshr.to | \
      sudo MESHR_KEY=${{ secrets.MESHR_KEY }} bash

GitLab CI

Use a setup key in your .gitlab-ci.yml for unattended enrollment and tunnel provisioning.

deploy:
  script:
    - meshr up --key $MESHR_SETUP_KEY
    - ./run-integration-tests.sh
On the roadmap

VPN as code — what's next.

The pieces that turn the whole platform into something you can declare and apply. In progress, not shipped yet.

Coming soon

REST API + API tokens

A public REST surface for devices, policies, groups, and tunnels — authenticated with long-lived, scoped API tokens you can issue per integration. Not available yet.

Coming soon

Terraform provider

Declare your mesh — devices, policies, setup keys — as code and apply it from your existing IaC pipeline. Planned alongside the REST API.

Coming soon

Webhooks

Subscribe to events — device enrolled, policy changed, tunnel opened — and fan them out to Slack, PagerDuty, or your own automation.

Want one of these sooner? Tell us what you'd build — early-access feedback shapes the order.

Provision your first device from a script.

Free for every feature while we're in beta. Mint a setup key and enroll a headless device in minutes — no browser required.