Developer Tools

Deploy from Code, CLI, or AI

Ship websites from anywhere — connect your AI assistant with our MCP server, automate with the REST API, or deploy on every push with GitHub Actions.

Base URLhttps://api.dplooy.com/api/v1

Deploy in 3 Steps

From zero to live website in under a minute.

1

Get Your API Key

Go to Settings → API Keys and create a new key. Copy the key — it's shown only once.

dpk_live_aBcDeFgHiJkLmNoPqRsTuVwX
2

Deploy Your Site

Send your HTML to the deploy endpoint. Optionally include CSS and JS as separate strings.

bash
curl -X POST https://api.dplooy.com/api/v1/deploy \
  -H "Authorization: Bearer dpk_live_..." \
  -H "Content-Type: application/json" \
  -d '{"html":"<h1>Hello</h1>","name":"demo"}'
3

It's Live!

The API responds with your live URL. That's it — your site is deployed with SSL.

json
{
  "success": true,
  "url": "https://my-site.dplooy.com",
  "projectId": "a1b2c3d4-...",
  "isRedeploy": false,
  "plan": "pro",
  "expiresAt": null
}

Authentication

All API requests require a valid API key sent as a Bearer token in the Authorization header.

HTTP Header
Authorization: Bearer dpk_live_your_key_here

Getting a Key

  1. Sign in to Dplooy and go to Settings
  2. Open the API Keys tab
  3. Click Create API Key, give it a name, and copy the key

Hashed Storage

Keys are SHA-256 hashed, never stored in plain text

Rate Limited

30 requests per minute per IP address

Revocable

Revoke any key instantly from the dashboard

API Reference

Six endpoints to deploy, manage, and inspect your hosted projects.

POST/deploy

Deploy an HTML website from code strings. Optionally include separate CSS and JS — they'll be auto-injected into the HTML as linked files.

Request Body (JSON)

ParameterTypeStatusDescription
htmlstringRequiredHTML content for the page
cssstringOptionalCSS styles — saved as style.css and linked in <head>
jsstringOptionalJavaScript — saved as script.js and linked before </body>
namestringOptionalProject name for the URL (e.g. 'my-site' → my-site.dplooy.com)

Response — 201 Created

json
{
  "success": true,
  "url": "https://my-site.dplooy.com",
  "projectId": "a1b2c3d4-e5f6-...",
  "isRedeploy": false,
  "plan": "pro",
  "expiresAt": null
}

Example

bash
curl -X POST https://api.dplooy.com/api/v1/deploy \
  -H "Authorization: Bearer dpk_live_your_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "html": "<!DOCTYPE html><html><head><title>My Site</title></head><body><h1>Hello World</h1></body></html>",
    "css": "h1 { color: teal; font-family: sans-serif; }",
    "name": "my-site"
  }'
POST/deploy/zip

Deploy a complete website from a ZIP archive. The ZIP must contain an index.html at the root. Subdirectories, CSS, JS, images, and fonts are all preserved.

Request Body (multipart/form-data)

ParameterTypeStatusDescription
filefileRequiredZIP file containing the website (max 500 MB)
namestringOptionalDisplay name for the project
projectNamestringOptionalURL slug (e.g. 'my-site' → my-site.dplooy.com)

Response — 201 Created

json
{
  "success": true,
  "url": "https://my-site.dplooy.com",
  "projectId": "a1b2c3d4-e5f6-...",
  "isRedeploy": false,
  "plan": "pro",
  "expiresAt": null,
  "fileCount": 12,
  "warnings": []
}

Example

bash
curl -X POST https://api.dplooy.com/api/v1/deploy/zip \
  -H "Authorization: Bearer dpk_live_your_key_here" \
  -F "file=@website.zip" \
  -F "name=my-website" \
  -F "projectName=my-website"

Code Examples

Copy-paste examples to get started in your language of choice.

Deploy HTML + CSS

deploy.sh
curl -X POST https://api.dplooy.com/api/v1/deploy \
  -H "Authorization: Bearer dpk_live_your_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "html": "<!DOCTYPE html><html><head><title>My Site</title></head><body><h1>Hello World</h1></body></html>",
    "css": "h1 { color: teal; font-family: sans-serif; }",
    "name": "my-site"
  }'

Deploy ZIP

deploy-zip.sh
curl -X POST https://api.dplooy.com/api/v1/deploy/zip \
  -H "Authorization: Bearer dpk_live_your_key_here" \
  -F "file=@website.zip" \
  -F "name=my-website" \
  -F "projectName=my-website"

List Projects

list.sh
curl https://api.dplooy.com/api/v1/projects \
  -H "Authorization: Bearer dpk_live_your_key_here"

GitHub Actions

Auto-deploy on every push to main. Same project URL, updated content.

Push to Main

GitHub Actions triggers on every push to your main branch.

Auto-Redeploy

Same project name = same URL. Content updates in-place, analytics preserved.

Secure

API key stored as a GitHub Secret — never exposed in your code or logs.

Setup (one-time)

  1. Go to your GitHub repo → Settings → Secrets and variables → Actions
  2. Click New repository secret
  3. Name: DPLOOY_API_KEY
  4. Value: paste your dpk_live_... key
  5. Add the workflow file below to your repo

For repos that are already plain HTML/CSS/JS — no build step needed.

.github/workflows/deploy.yml
# .github/workflows/deploy.yml
name: Deploy to Dplooy

on:
  push:
    branches: [main]

jobs:
  deploy:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4

      - name: Deploy to Dplooy
        run: |
          zip -r site.zip . -x ".git/*" ".github/*" "node_modules/*" "README.md"
          curl -X POST https://api.dplooy.com/api/v1/deploy/zip \
            -H "Authorization: Bearer ${{ secrets.DPLOOY_API_KEY }}" \
            -F "name=${{ github.event.repository.name }}" \
            -F "file=@site.zip"
AI Integration

MCP Server

Deploy websites directly from Claude, Cursor, Windsurf, and any AI assistant that supports Model Context Protocol. Just ask your AI to build a site and deploy it — no copy-pasting needed.

Install Once

One command to add the MCP server to your AI tool. Runs locally via npx.

Ask Your AI

"Build a coffee shop landing page and deploy it to Dplooy" — that's it.

Instant Deploy

The AI generates code and deploys in one step. Get a live URL back immediately.

Install

The MCP server is published on npm as @dplooy/mcp-server. It runs locally on your machine and talks to the Dplooy API using your key.

Run this single command in your terminal:

Terminal
claude mcp add -t stdio \
  -e DPLOOY_API_KEY=dpk_live_your_key_here \
  dplooy -- npx -y @dplooy/mcp-server

Restart Claude Code after adding. The dplooy tools will appear automatically.

Available Tools

ToolDescription
deploy_websiteDeploy HTML/CSS/JS to a live URL
deploy_folderDeploy a local folder (zips and uploads automatically)
list_projectsList all your deployed projects
get_projectGet details about a specific project
delete_projectDelete a project permanently
get_accountView your plan, usage, and limits

Example Usage

Once installed, just chat with your AI assistant naturally:

"Build a minimal portfolio site with my name, a bio, and links to my social profiles. Deploy it as my-portfolio."
I'll create that for you and deploy it now...
Website deployed successfully!
URL: https://my-portfolio.dplooy.com

Rate Limits & Plans

API limits are based on your plan. Upgrade anytime for higher limits.

LimitFreePlus$4.99/moPro$12.99/mo
Projects325Unlimited
Max File Size5 MB50 MB100 MB
Total Storage50 MB500 MB5 GB
Project Expiry3 daysNeverNever
Rate Limit30 req/min30 req/min30 req/min
API Access

Error Handling

All errors return JSON with an error message and a machine-readable code.

Error Response
{
  "error": "Invalid or revoked API key",
  "code": "INVALID_API_KEY"
}
StatusCodeDescription
400VALIDATION_FAILEDMissing or invalid request parameters
400PROJECT_LIMIT_REACHEDYou've hit your plan's project limit
400FILE_TOO_LARGEContent exceeds your plan's file size limit
400SECURITY_THREAT_DETECTEDMalicious content detected in HTML
400NO_INDEX_HTMLZIP file must contain an index.html at root
400INVALID_FILE_TYPEOnly ZIP files are accepted for /deploy/zip
401INVALID_API_KEYMissing, invalid, or revoked API key
404NOT_FOUNDProject does not exist or isn't yours
429RATE_LIMITEDToo many requests — wait 60 seconds
500DEPLOY_FAILEDInternal error during deployment
Ready to Build?

Start deploying in seconds

Create a free account, grab an API key, and ship your first project with a single command.

No credit card required · Free plan includes 3 projects · Upgrade anytime