You’re building a site with an AI agent — Claude Code, Cursor, ChatGPT, whatever — and you want to see it live. Not in a preview pane. On an actual URL you can share.
The usual flow: create an account on a hosting platform, install their CLI, authenticate, create a project, configure the build settings, push to git, wait for the build, and finally get a URL. That’s a lot of steps for “show me what this looks like.”
Here’s the alternative: one HTTP call.
The Drop API
curl -X POST https://api.zerodeploy.dev/drop \
-H "Content-Type: text/html" \
--data-binary @index.html
That’s it. You get back a live URL:
{
"url": "https://shy-hill-9433.zerodeploy.app",
"claim_token": "zdc_a1b2c3d4...",
"expires_at": "2026-03-11T12:00:00Z"
}
No account. No API key. No config file. The site is live in seconds and stays up for 72 hours. Claim it with a ZeroDeploy account to make it permanent (14-day free trial).
How Each Agent Uses It
Claude Code
Claude Code can deploy directly. Just tell it what you want:
Build a landing page for my coffee shop and deploy it to ZeroDeploy.
Claude Code reads llms.txt automatically and knows how to use the Drop API. It’ll build your site, create a tar.gz, POST it to /drop, and give you the live URL.
For ongoing projects, Claude Code can also use the full CLI (zerodeploy deploy) with incremental deploys, custom domains, and rollbacks.
Cursor
Cursor can run shell commands, so the Drop API works naturally:
# Single file
curl -X POST https://api.zerodeploy.dev/drop \
-H "Content-Type: text/html" \
--data-binary @index.html
# Multi-file project (after building)
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
For structured output that Cursor can parse, add --json to CLI commands — every command returns machine-readable JSON with consistent exit codes (0-7).
ChatGPT
ChatGPT can generate HTML inline and deploy it without even touching the file system:
echo "<html><body><h1>Hello World</h1></body></html>" | \
curl -X POST https://api.zerodeploy.dev/drop \
-H "Content-Type: text/html" \
--data-binary @-
Custom Agents (Python, Node, etc.)
The Drop API is a single HTTP endpoint. Any language works:
import requests
resp = requests.post(
"https://api.zerodeploy.dev/drop",
headers={"Content-Type": "text/html"},
data=open("index.html", "rb"),
)
print(resp.json()["url"])
const fs = require("fs");
const resp = await fetch("https://api.zerodeploy.dev/drop", {
method: "POST",
headers: { "Content-Type": "text/html" },
body: fs.readFileSync("index.html"),
});
const { url } = await resp.json();
console.log(url);
Updating a Deployed Site
The initial response includes a claim_token. Use it to redeploy to the same URL:
curl -X POST https://api.zerodeploy.dev/drop \
-H "Content-Type: text/html" \
-H "X-Claim-Token: zdc_a1b2c3d4..." \
--data-binary @index.html
Same URL, updated content. The agent can iterate — build, deploy, check, adjust, redeploy — without creating new sites each time.
Beyond Drop: Full Features
Drop is the fast path for getting something live. When you’re ready for more, claim the site and get:
- Custom domains —
yoursite.comwith automatic SSL - Built-in analytics — visitors, pages, referrers, countries (no tracking scripts)
- Forms — add
action="/_forms/contact"to any HTML form - GitHub CI/CD — deploy on every push, PR preview URLs
- Incremental deploys — only upload changed files
- Rollbacks — revert to any previous version instantly
All included on the Starter plan (1 site, 1 GB, 10 deploys/day).
Why This Matters
AI agents are becoming the primary way people build websites. But the deployment story hasn’t kept up — most hosting platforms still assume a human clicking through a dashboard or configuring a CLI.
The Drop API treats deployment as what it actually is for AI workflows: an HTTP call. No ceremony, no authentication theater, no multi-step configuration. Build the thing, POST it, share the URL.
That’s it. Read the full AI workflow docs or try the Drop API yourself.