API Reference

HTTP API for the Zectre platform — authentication, applications, deployments, tasks, and more.

Zectre's primary interface is zectre-api, a JSON REST service used by the CLI, dashboard, and direct integrations.

Base URL — configured in [api] in your config. Dev default: http://localhost:47080

Quick start

# 1. Get a token
TOKEN=$(curl -sf -X POST http://localhost:47080/api/v1/auth/login \
  -H 'Content-Type: application/json' \
  -d '{"email":"you@example.com","password":"yourpassword"}' \
  | jq -r .token)
 
# 2. Create an app
APP_ID=$(curl -sf -X POST http://localhost:47080/api/v1/apps \
  -H 'Content-Type: application/json' \
  -d '{"name":"my-api","namespace":"production"}' | jq -r .id)
 
# 3. Deploy a Docker container
curl -sf -X POST http://localhost:47080/api/v1/apps/$APP_ID/deployments \
  -H 'Content-Type: application/json' \
  -d '{"process_type":"docker","image":"nginx:latest","replicas":1}'

Authentication

Routes that require credentials are marked 🔒. Two credential types are accepted:

HeaderValue
AuthorizationBearer <jwt> — from /api/v1/auth/login (7-day expiry)
X-API-Key<key> — from /api/v1/api-keys

Most cluster API routes are open at the application layer — access control relies on network placement. See Authentication for the full auth flow.

Sections

PageWhat it covers
AuthenticationSignup, login, CLI auth flow, API keys
ApplicationsApps, environments, env vars, source config, custom domains
DeploymentsCreate, promote, scale, stream logs
Builds & artifactsBuilding from source or uploading binaries
TasksRunning replicas — status, logs, stop
Clusters & nodesClusters, nodes, managed databases, templates
Internal servicesScheduler, registry, build service, catalog