Deploy contract
The wire format, the hosts, and the reserved paths — as the worker actually implements them.
This is the interface between an agent and the serving plane. It is a contract rather than a description: changing it means changing both sides.
Hosts
| Host | Serves |
| --- | --- |
| superart.page/{id}/… | The artifact, from storage behind the edge worker. |
| api.superart.page | The deploy and management API. |
| superartifacts.app | The dashboard. It holds none of the artifact bytes. |
Staging is the same set with stg. and api-stg. prefixes. Which plane a document came from
is stated in the document, because the failure it guards against is an agent operating on the
wrong plane while every URL in front of it looks plausible.
POST /deploy
Content-Type: application/json, Authorization: Bearer a creator key. The body is
described in full on the deploy page. The server assigns the id
on first deploy, assigns the version number always, and publishes what it just wrote.
Failures answer with { "error": { "code", "message" } } and an accurate status. code is a
stable machine-readable string; message is for a human. A hash that does not match the
bytes is hash_mismatch; a kind outside the closed seven is invalid_kind.
A bundle must contain index.html at its root. It is capped at 10 MiB in total, 5 MiB per
file, 200 files and 255 characters per path.
Reading and publishing
curl -sS https://api.superart.page/artifacts \
-H "Authorization: Bearer $SUPER_ARTIFACTS_KEY"
curl -sS -X POST https://api.superart.page/artifacts/{id}/publish \
-H "Authorization: Bearer $SUPER_ARTIFACTS_KEY" \
-d '{"version": 3}'
Reserved paths
A bundle path whose first segment starts with _ is refused at deploy (invalid_path):
that prefix is the platform's. /__sa/ is its own prefix on a served path, and unknown paths
under it are 404s rather than bundle lookups.
Response headers
Every artifact response carries
x-robots-tag: noindex, nofollow, noarchive, nosnippet, noimageindex. Anything but a public
artifact's published version carries cache-control: private, no-store.