API keys
Creating, testing, rotating, and revoking the keys agents use.
On this page
An API key (sk_live_…) lets an AI agent — Claude Code, Codex, or a compatible MCP
client — design and render screenshots through your account. Document edits over the
API are free; renders and AI-helper calls count against your shared credit budget.
Creating a key
Settings → Developer → Create key. Name it after where it lives ("Claude Code on my Mac", "CI"). The full key is shown exactly once — we store only a hash, so nobody (including us) can read it back later. Copy it somewhere safe.
Choose permissions and an expiration (7, 30, or 90 days). New keys default to read/design access for 30 days. Enable publishing only for clients that should replace store screenshots.
Use Test connection right from the reveal panel to prove the key works against this deployment before you wire it anywhere.
Connecting a client
For client-specific commands, see Agents & MCP. Claude Code also accepts a .mcp.json with this deployment's real
endpoint. The shape:
{
"mcpServers": {
"appstaged": {
"type": "http",
"url": "https://appstaged.com/api/mcp",
"headers": { "Authorization": "Bearer ${APPSTAGED_API_KEY}" }
}
}
}Set APPSTAGED_API_KEY in your environment rather than pasting the key into the file —
config files get committed; environment variables don't.
Scope and safety
- Read allows discovery, reading, listing, previews, and publish status. Design allows edits, uploads, AI helpers, and renders. Publish separately allows store screenshot replacement.
- Expired keys and keys belonging to disabled or deleted accounts are rejected on every request.
- A key acts within your selected permissions: documents it creates are yours, and it can't touch anyone else's.
- Every request without a valid key is rejected with a 401.
- Treat keys like passwords. If one leaks — or you just aren't sure — revoke it in Settings → Developer. Revocation is instant; agents using it stop working immediately.
- Rotate by creating the new key first, moving your clients over, then revoking the old one. Zero downtime.
Quotas
Renders and AI-helper calls (anchor_regions, write_captions, audit, localize) meter against
your included credit budget; create, get, apply_ops, and asset uploads never do. Live
numbers are on the Developer and Billing pages, and agents can read the caps from
screenset_usage.
AI input validation failures do not consume a helper unit. Once a provider request starts, its unit remains charged even if the provider or response processing fails.