Upload API
Upload files to a project using the project API key.
Endpoint
POST /api/uploads
Authentication: Authorization: Bearer <project_api_key>
Single file upload
The @ prefix tells curl to read the file and include its contents in the request.
curl -X POST https://sealstatic.com/api/uploads \
-H "Authorization: Bearer your-api-key" \
-F "file=@index.html"
Multiple files
curl -X POST https://sealstatic.com/api/uploads \
-H "Authorization: Bearer your-api-key" \
-F "files[]=@file1.html" \
-F "files[]=@file2.html"
ZIP upload
Upload a ZIP file to preserve folder structure:
curl -X POST https://sealstatic.com/api/uploads \
-H "Authorization: Bearer your-api-key" \
-F "file=@site.zip"
The ZIP is automatically extracted. Existing files (by content hash) are skipped.
Response
{
"status": "ok",
"files": [
{"path": "index.html", "url": "https://…/index.html"},
{"path": "assets/app.js", "url": "https://…/assets/app.js"}
],
"url": "https://project-url.com"
}