Downloading a registry
You can download a whole prompt registry as a single .zip, much like GitHub's Download ZIP. The archive holds the latest published version of every prompt and promptlet in the registry, with every model variant of that version. Older versions are not included.
From the app
- On Registries, click the download icon on a registry's row, or
- open a registry and click Download ZIP in its details panel.
From the command line
curl -OJ https://YOUR_APP_URL/api/registries/{orgSlug}/{registryName}/archive \
-H "X-API-Key: YOUR_API_KEY"-OJ saves the file under the name the server sends ({orgSlug}-{registryName}.zip).
Authentication is the same as for pulling a single artifact:
- Public registries need no authentication.
- Private registries need an organization API key (
ela_prefix) inX-API-KeyorAuthorization: Bearer. A signed-in session token also works.
A registry that doesn't exist, or that you can't read, returns 404.
What's inside
{orgSlug}-{registryName}/
manifest.json
prompts/{promptName}/{model}.md
prompts/{promptName}/{model}.json
promptlets/{promptName}/{model}.md
promptlets/{promptName}/{model}.json{model}.mdis the prompt source: markdown with its frontmatter, as written in the editor. If an artifact has no stored source, there is no.mdand only the.jsonis included.{model}.jsonis the full published artifact (compiled text, hash, schema, components, tools, metadata). It is the same JSON as the single-artifact download.manifest.jsonlists the registry (ref,name,visibility), the export time, and, for each artifact, its name, type (promptorpromptlet), version, and each model variant with its content hash and file paths.
{model} is generic for the model-agnostic variant, or the model ID for a model-specific one.
Limits
An archive can hold at most 2,000 artifact variants and 100 MB of uncompressed artifacts. A larger registry returns 413. For those, pull artifacts one at a time with GET /api/prompts/{orgSlug}/{registryName}/{promptName}/{version}.
Every artifact's content hash is checked as it is packed. If any artifact can't be read or fails its check, the whole download fails with 500 instead of returning a partial archive.