Documentation

Delivery API

Automate site projects, deploys, and launch status from your own tools.

Getting started

Base URL
https://api.elvra.net/v1
Auth
Bearer token in the Authorization header. Create keys in the delivery portal.
Rate limit
120 requests per minute per API key. Burst up to 30 concurrent connections.
Format
JSON request and response bodies. UTF-8 encoding.
curl https://api.elvra.net/v1/sites \
  -H "Authorization: Bearer elv_live_xxxxx" \
  -H "Accept: application/json"

Endpoints

GET /sites

List sites in the workspace with status and last deploy time.

curl https://api.elvra.net/v1/sites \
  -H "Authorization: Bearer elv_live_xxxxx"

{
  "data": [
    {
      "id": "site_8f2a",
      "name": "Acme Marketing",
      "slug": "acme-marketing",
      "status": "live",
      "domain": "www.acme.example",
      "last_deploy_at": "2026-07-28T14:22:00Z"
    }
  ]
}
GET /sites/{id}

Retrieve a single site, checklist progress, and environment URLs.

curl https://api.elvra.net/v1/sites/site_8f2a \
  -H "Authorization: Bearer elv_live_xxxxx"

{
  "id": "site_8f2a",
  "name": "Acme Marketing",
  "status": "in_review",
  "checklist": { "completed": 8, "total": 10 },
  "staging_url": "https://acme.preview.elvra.net",
  "production_url": null
}
POST /sites

Create a new site project from a template and brand kit.

curl -X POST https://api.elvra.net/v1/sites \
  -H "Authorization: Bearer elv_live_xxxxx" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Launch Landing",
    "template": "marketing-v2",
    "brand_kit_id": "bk_12"
  }'

{
  "id": "site_9c1b",
  "status": "scaffolding",
  "created_at": "2026-08-01T09:00:00Z"
}
POST /sites/{id}/deploys

Trigger a deploy to staging or production after checklist gates pass.

curl -X POST https://api.elvra.net/v1/sites/site_8f2a/deploys \
  -H "Authorization: Bearer elv_live_xxxxx" \
  -H "Content-Type: application/json" \
  -d '{ "target": "staging" }'

{
  "deploy_id": "dep_44",
  "target": "staging",
  "status": "queued"
}
GET /sites/{id}/checklist

Read launch checklist items and completion state.

curl https://api.elvra.net/v1/sites/site_8f2a/checklist \
  -H "Authorization: Bearer elv_live_xxxxx"

{
  "items": [
    { "key": "seo_meta", "label": "SEO meta tags", "done": true },
    { "key": "analytics", "label": "Analytics installed", "done": true },
    { "key": "legal_pages", "label": "Privacy & terms", "done": false }
  ]
}

SDKs & client libraries

Official clients are available for Node.js and Python. Community wrappers exist for Go and Ruby. Each SDK handles authentication, retries with exponential backoff, and typed responses for sites and deploys.

npm install @elvra/sdk
# or
pip install elvra

Need help wiring the API into your CI pipeline? Email [email protected] or request a demo.