Drop API
Deploy with one HTTP call. No login, no CLI, no account. Get a live URL in seconds.
https://api.zerodeploy.dev/drop and get a live URL back. No API key, no login, no account needed. The URL stays live for 72 hours; use the claim link returned with it to move the site into your account.
Deploy a single file
curl -X POST https://api.zerodeploy.dev/drop \
-H "Content-Type: text/html" \
--data-binary @index.html
Deploy a multi-file site
Package your build output as a tar.gz archive:
tar -czf site.tar.gz -C ./dist .
curl -X POST https://api.zerodeploy.dev/drop \
-H "Content-Type: application/gzip" \
--data-binary @site.tar.gz
Response
The API returns a temporary live URL, a claim token for redeployment, and an expiration timestamp. Follow the claim link before the 72-hour preview expires to keep the site in your account:
{
"data": {
"url": "https://shy-hill-9433.zerodeploy.app",
"claim_token": "zdr_abc123...",
"expires_at": "2026-03-10T12:00:00Z",
"is_temporary": true
},
"next_steps": {
"redeploy": {
"description": "Update this site with new files",
"method": "POST",
"url": "https://api.zerodeploy.dev/drop",
"headers": {
"Content-Type": "application/gzip",
"X-Claim-Token": "zdr_abc123..."
}
},
"claim": {
"description": "Keep this temporary site after its 72-hour preview ends. Sign in to claim it.",
"url": "https://dashboard.zerodeploy.dev/drop-claim?token=zdr_abc123...&url=https%3A%2F%2Fshy-hill-9433.zerodeploy.app"
}
}
}
Redeploy (update existing site)
Pass the claim_token from the original deploy via the X-Claim-Token header to update the same site. This resets the 72-hour expiration timer:
curl -X POST https://api.zerodeploy.dev/drop \
-H "Content-Type: text/html" \
-H "X-Claim-Token: zdr_abc123..." \
--data-binary @index.html
Framework examples
| Framework | Command |
|---|---|
| Single HTML file | curl -X POST https://api.zerodeploy.dev/drop -H "Content-Type: text/html" --data-binary @index.html |
| React / Vite / Astro | cd dist && tar -czf ../site.tar.gz . && curl -X POST https://api.zerodeploy.dev/drop -H "Content-Type: application/gzip" --data-binary @../site.tar.gz |
| Next.js (static export) | cd out && tar -czf ../site.tar.gz . && curl -X POST https://api.zerodeploy.dev/drop -H "Content-Type: application/gzip" --data-binary @../site.tar.gz |
Claim a site
Drop sites expire after 72 hours. To move a site into your account, claim it by logging in at the URL in the next_steps.claim field. To deploy updates to an account-backed site, start a 14-day Starter trial (credit or debit card required; no charge until the trial ends). Claimed sites get all the features of a regular ZeroDeploy site: custom domains, analytics, forms, and rollbacks.
Limits
- 50 MB max per file, 5,000 files max, 100 MB total per deployment
- 5 deploys per hour per IP address
- 72 hours expiration (reset on each redeploy)
Headers
| Header | Required | Description |
|---|---|---|
Content-Type | Yes | text/html for single files, application/gzip for tar.gz archives |
X-Claim-Token | No | Include to redeploy (update) an existing drop site |
X-Filename | No | Filename for single-file uploads (default: index.html) |
Choose a publishing path
- Drop API: One-off deploys, prototypes, demos, and AI agent deploys. Zero setup. The URL is temporary for 72 hours unless you claim it.
- Dashboard upload: A finished website you want to keep without using a terminal. Create an account, start the Starter trial, and drag in your folder for account-backed hosting.
- CLI: Ongoing projects and CI/CD pipelines. Use it for repeatable deploys, custom domains, rollbacks, analytics, and forms from an account-backed site.
Using Drop from AI agents
The Drop API is designed for AI agents like ChatGPT, Claude, Cursor, and Copilot. An agent can deploy a user’s site with a single HTTP call:
# Agent generates HTML, then deploys it
echo '<html><body><h1>Hello World</h1></body></html>' | \
curl -X POST https://api.zerodeploy.dev/drop \
-H "Content-Type: text/html" \
--data-binary @-
The response includes next_steps with exact instructions for redeployment and claiming. Tell the user that the URL is temporary for 72 hours and open the claim link if they want to keep it.
For more on AI workflows, see AI & LLM Workflows.