Knowledge Base
API referenceOpen app
KB-802Updated October 15, 2026

Limits and timing

How long things take, how many you can start at once, and what counts against your usage allotment.

How long things take

OperationTypicalNotes
Kernel run, short brief1–4 min
Kernel run, full-length15–20 minSeveral draft-and-review rounds
Arena run (research)3–10 minLonger with many source URLs
Enhance pass1 to 5 minPer pass, per post
Collection run from a topic20 to 60 minResearch + write + passes + publish + rebuild
Phantom site to live2–5 minSubdomain; custom domain adds DNS time
One-call phantom onboarding~10 min to liveFirst posts continue afterwards
Phantom configuration2–5 min
Cover image generationunder a minutePer variant

All of these are start-then-poll; see KB-405.

What runs at once

  • One kernel run per post and one arena run per post. Auto-Pen blocks a hosted arena run while it owns the post. Different posts run in parallel; a standalone arena run takes no lock.
  • One Auto-Pen per post.
  • Background sweeps advance every running job every few minutes (every two minutes for site provisioning), so a job you stop polling still finishes. A job that makes no progress for six hours is closed as failed.

Rate limits per API key

Limits are per key and per minute. Reads and status polls are generous; tools that start AI work are tight.

KindLimit
Arena runs, phantom launches and configuration, collection runs, site creation, domain purchases, image and visual generation, Enhance passes5 per minute
Creating seers, templates, landing pages, social profiles, shredder endpoints, canvases, invites, and suggestions10 per minute
Everything else1,000 per minute (the per-key default; set a lower one when you create the key)

A 429 carries Retry-After. Nothing was started. Responses include X-RateLimit-Limit, X-RateLimit-Remaining, and X-RateLimit-Reset. You can set a lower limit on a key when you create it.

Domains

Buying a domain through the API must price under $30, and an organization can hold at most two custom domains; the same cap applies when you connect a domain you already own. Connecting costs nothing but needs the same phantom:domain capability.

Usage allotment

Writing, research, Enhance passes, image generation, and seer runs use AI credits. Settings → Usage shows credits used, the share of your allotment, and where the credits went. When you reach the allotment, the app shows a notice to book a call and, where enforcement is on, start-work tools return 402 with the same message. Reads keep working.

Balances, per primitive

Separately from the AI allotment, each primitive you can call directly has its own balance. Only calls you make yourself count: a run another part of Letterstory started on your behalf is recorded but billed to that product (KB-407). A run that errors is free.

BalanceOn the houseWhat spends it
Kernel runs (get_kernel_run_balance)10run_kernel, the Kernel Studio
Shreds (get_shred_balance)10run_shred, the Shredder Studio
Arena runs (get_arena_run_balance)50run_arena, the Arenas Studio, the post's Research panel
Seer runs (get_seer_run_balance)50run_seer, a dry run, the run-now button
Hosted phantom sites (get_phantom_balance)3 liveA site being live, not its posts

Collection runs are not metered per post. Each publication has a weekly cadence (posts per week, capped at six for your organization by default), and a run you ask for spends that week's budget. Past the budget the call is refused with a 429 rather than queued.

Sizes

ThingLimit
A kernel input200,000 characters
A draft body1,000,000 characters
Arena run: source URLs20
Arena run: must-include sections40
Internal links per post5
Cover variants per request4 models
First posts seeded by onboarding10
Text per shredder call200,000 characters
Strategy context, per pass10 links, 10 documents of up to 10MB each

Related