Command Line
Drop from your terminal
Internal betaThe Droploft CLI is ready for internal testing. Download the package, install it with npm, and drop files from your terminal against Stage-A by default.
droploft-cli-0.4.0.tgz
Manual beta package for Node 20+. Use
--api-url or DROPLOFT_API_URL to point the CLI at production or a local app.Install manually
npm install -g ./droploft-cli-0.4.0.tgzStage-A by defaultFresh installs talk to
https://stage-a.droploft.ai.Anonymous first useFirst
droploft push works without login; sign in later when you need API keys or account-owned documents.Pipe from stdin
claude --output html "Q1 report" | droploft push - — drop straight from your AI tool.terminal
# Internal beta
$ curl -O https://stage-a.droploft.ai/droploft-cli-0.4.0.tgz
$ npm install -g ./droploft-cli-0.4.0.tgz
$ droploft push q1-report.html
Optimizing..... 342 KB → 98 KB
Auto TOC ...... 5 sections
OG card ....... ready
✓ Dropped in 4.2s
→ https://stage-a.droploft.ai/d/a3x9k2
# Override the target app when needed
$ droploft push q1-report.html \
--api-url http://localhost:3000
CI/CD
Ship from your repo
Available nowShip from GitHub today with a copyable workflow. First run publishes a document; later runs can update the same link from the same repo.
publish-html.yml
Download the workflow, add your Droploft token, and publish HTML from your repo with the same CLI beta path used locally.
Outputs the URLExport
url, document_id, slug, and version fields for follow-up steps in the same job.Same document, new versionKeep
DROPLOFT_DOCUMENT_ID in a repo variable so future runs call droploft update instead of creating a new link.Own the workflowThe YAML lives in your repo, so you can wire step outputs into summaries, PR comments, Slack, or deploy checks.
Or just use the CLIPrefer the terminal? Local publish and CI use the same upload contract.
.github/workflows/drop.yml
name: Drop to Droploft
on:
push:
branches: [main]
paths: ['reports/**.html']
jobs:
drop:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: curl -fsSLO .../droploft-cli-0.4.0.tgz
- run: npm install -g ./droploft-cli-0.4.0.tgz
- id: droploft
run:
droploft push "$REPORT_PATH" --json
# later: droploft update "$DROPLOFT_DOCUMENT_ID" ...
- run: echo "Dropped: ${{ steps.droploft.outputs.url }}"
REST API
Build on top of Droploft
Use the API when you need Droploft inside your own product, scripts, or internal tools.
Open API documentation
Request and response shapes, authentication, error codes, pagination, webhooks, and SDK notes.
Webhooks
Subscribe to events
Get notified when something happens. Useful for triggering workflows, piping analytics to your data warehouse, or firing Slack alerts when someone reads your proposal.
9 event types
HMAC-SHA256 signed, retry on 5xx, delivered in order per endpoint.
document.publishedA new document was published
document.viewedFirst view by a unique visitor
comment.created / comment.resolvedThreaded comment lifecycle
version.created / fork.createdVersion bumps and forks
POST https://your-server.com/hook
// headers
X-Droploft-Event: document.viewed
X-Droploft-Signature: sha256=a7f...
// body
{
"event": "document.viewed",
"document_id": "a3x9k2",
"visitor_id": "anon_f7d...",
"source": "slack",
"timestamp": "2026-04-11T..."
}
Reference
Deep dives
Complete specifications for every surface.
CLI beta packageDownload
Manual install tarball for internal testers. Defaults to Stage-A and supports --api-url overrides
REST API reference
Every endpoint with request/response examples, error codes, pagination
Browser ExtensionComing soon
One-click drop from Claude, ChatGPT, v0. Batch capture with AI source metadata
Manage API keys
Create account-level or document-level keys. Scoped permissions, revocation