CI / automation

Run

CI / automation

Use FLOOM_TOKEN as a repository secret. The CLI reads it automatically; no floom setup needed in CI.

GitHub Actions#

GitHub Actions
# GitHub Actions
- name: Deploy Floom app
  env:
    FLOOM_TOKEN: ${{ secrets.FLOOM_TOKEN }}
  run: |
    npx @floomhq/cli@latest deploy

# Run and capture JSON output
OUTPUT=$(npx @floomhq/cli@latest run my-app '{"text":"test"}' --json)
echo "$OUTPUT" | jq '.output'

The --json flag makes floom run print a machine-readable envelope. Exit code: 0 on success, 1 on app failure, 2 on network or auth error.

Programmatic deploy (no CLI)#

Use POST /api/apps/publish with a multipart/form-data body containing the tarball and a meta JSON field.

REST publish
# Programmatic deploy without the CLI
curl -X POST https://floom.dev/api/apps/publish \
  -H 'Authorization: Bearer YOUR_AGENT_TOKEN' \
  -F 'bundle=@./my-app.tar.gz' \
  -F 'meta={"slug":"my-app","public":true}'

Requires an agent token with publish scope.

Last updated: 2026-05-04 · Floom v0.4