REST API

One endpoint publishes a site.

Everything else reads deployments or points a hostname at one. Authenticate with a bearer token; there is no SDK to install.

Upload a build folder

multipart/form-data
curl -X POST https://api.xhost.buzz/v1/deployments \
  -H "Authorization: Bearer hx_..." \
  -F "site=atlas-docs" \
  -F "files=@site.zip"

Send files inline

application/json
curl -X POST https://api.xhost.buzz/v1/deployments \
  -H "Authorization: Bearer hx_..." \
  -H "Content-Type: application/json" \
  -d '{
    "site": "atlas-docs",
    "files": [
      { "path": "index.html", "content": "<!doctype html>..." }
    ]
  }'

Endpoints

  • POST/v1/deploymentsPublish. ZIP, inline files, or a hash manifest.
  • PUT/v1/deployments/:id/blobs/:hashUpload one blob of a two-phase deployment.
  • POST/v1/deployments/:id/finalizeSeal a deployment and promote it.
  • POST/v1/deployments/:id/promotePromote or roll back to this deployment.
  • GET/v1/deploymentsList deployments across sites.
  • GET/v1/deployments/:id/filesThe full file manifest.
  • GET/v1/sitesList sites with their live URL.
  • PATCH/v1/sites/:idRename, pause, or change 404 behaviour.
  • POST/v1/domainsAttach a custom domain.
  • POST/v1/domains/:id/verifyCheck DNS and issue a certificate.
  • GET/v1/analyticsViews, visitors, requests, bandwidth.
  • GET/v1/usageCurrent billing period totals.

Scopes

  • sites:readRead sites, deployments, files and activity
  • sites:writePublish, promote, roll back, edit sites
  • domainsAdd, verify and remove custom domains
  • analyticsRead traffic data

sites:write implies sites:read. An API key cannot create another API key — that requires a dashboard session.