API

Introduction

VitoDeploy ships with a REST API so you can automate everything you can do in the dashboard — creating servers and sites, managing databases, deploying, running workflows, and more.

Interactive Reference

Your Vito instance hosts an interactive API reference (Swagger UI) at:

ARDUINO
https://your-vito-instance/api/docs

The raw OpenAPI specification is available at https://your-vito-instance/api.yaml.

Authentication

The API authenticates with a Bearer token. First, generate an API key, then send it in the Authorization header of every request:

Shell
curl -H "Authorization: Bearer YOUR_API_KEY" \
     https://your-vito-instance/api/projects

Permissions & Scope

API keys carry their permissions and project scope:

  • Read keys can only perform read (GET) operations; Read & Write keys can also create, update, and delete.
  • Keys scoped to specific projects can only access those projects. Unscoped keys can access all projects you have access to.

See API Keys for how to create and scope a key.

Base URL & Endpoints

All endpoints are served under /api on your instance, and most are nested under a project, for example:

Shell
GET  /api/projects
GET  /api/projects/{project}/servers
POST /api/projects/{project}/servers/{server}/sites

The API covers resources including projects, servers, sites, databases and database users, cron jobs, workers, firewall rules, domains and DNS records, services, SSH keys, SSL certificates, providers (server/source-control/storage/DNS), and workflows.

Refer to the interactive reference on your instance for the complete, always-up-to-date list of endpoints, parameters, and response schemas.

Health Check

A health endpoint is available at /api/health to verify the instance is up.