Knowledge Base
API referenceOpen app
KB-801Updated August 28, 2026

Capabilities

Every capability an API key can carry, what it lets a key do, and the two that spend money.

Generated from the app (capabilities), so always current.

An API key carries a set of capabilities. A tool call with a key that lacks the capability it needs returns 403. Grant the smallest set that does the job; to change a key's scopes, revoke it and create a new one.

The API reference shows which capability each tool needs. The table is generated from the app's own capability list, so it is always current.

CapabilityLets a keyDetails
article:readRead articlesList and fetch articles, collections, and published posts.
article:writeWrite articlesCreate, update, and permanently delete draft articles, and run Auto-Pen (research, writing kernel, Enhance) over one.
article:publishPublish articlesPublish or unpublish an article's current content as its live version.
connector:readRead connector targets and publish statusSee where a post could be published and whether a publish worked. Reading only — publishing itself needs connector:publish.
connector:publishPublish to connectors (Webflow / Framer / Google Docs / Contentful)Publish an article out to an external CMS connector (Webflow, Framer, Google Docs, or Contentful).
flow_run:createStart flow runsStart a flow against an article.
flow_run:readRead flow run statusPoll the status and stage results of a flow run.
flow_run:resolveResolve flow run reviewsApply a stage's suggestions past its awaiting_review checkpoint (accepting the AI's picks or an explicit suggestion_id list) and advance the run to the next stage.
webhook:readRead the configured webhookSee the webhook destination this organization has configured. Reading only — changing it needs webhook:manage.
webhook:manageManage webhooksRead and set the webhook destination for article.published and article.finished events.
provisioning:readRead positioning & competitorsRead editorial positioning, competitors, and onboarding progress.
provisioning:writeSet positioning & add competitorsSet positioning, add competitors, advance onboarding, and import a sitemap.
collection:readRead collections & runsList collections, read a collection's one-file configuration and its topic map, and poll collection runs (get_collection_run / list_collection_runs).
collection:writeRun collections (create / configure / run / approve)Create, configure and delete collections; open runs on them (run_collection — one published post, metered on the collection's weekly cadence); approve or cancel runs; queue topics. Also moves articles between collections. Includes defining custom_fields: each one's generation_prompt is free text sent straight to the model and written into every future post, so this capability can shape content generation, not just toggle settings.
phantom:readRead phantoms (Phantomstory)List the org's hosted phantom sites, poll provisioning, read a phantom's configuration and diagnostics, check domain availability, and read Search Console and GEO performance across them.
phantom:writeManage phantoms (create / configure / rebuild / delete)Create a hosted phantom site (metered on the org's phantom credits — sites live at once), configure it, rebuild it, pause it, tear it down, and attach a domain you already own.
phantom:domainBuy custom domains for phantomsBuy a new domain for a phantom: a separate, explicitly-granted scope since it spends real money (the price must be under $30, and an organization can hold at most 2 custom domains).
insight:readRead performance insightsRead Search Console performance for the org's published posts: per-site and per-post clicks, impressions, CTR, and position, with previous-period comparison and top posts.
phantom_access:readRead phantom page accessSee who is reading the caller's phantom sites: recent AI-agent/crawler requests and confirmed visits (what's hitting the fleet right now), per-assistant totals, and the page-access panel's rollups over a period.
kernel:readRead writing kernels, endpoints & runsList the kernel catalog and the org's kernel endpoints, read an endpoint's configuration, poll a run (standalone or article-bound), and read the kernel-run balance.
kernel:writeRun writing kernelsWrite with a kernel through one of the org's kernel endpoints (run_kernel — prose comes back to you, metered in kernel runs), or into an article (run_kernel with article_id — locks the article until the output is written back). Also creates, configures and deletes kernel endpoints.
geo:readRead GEO tracking (AI-assistant visibility)Read GEO opportunities, tracked topics, native-tracker settings, and run batches.
geo:writeManage GEO trackingAdd, rename, pause/resume, or delete tracked GEO topics, update native-tracker settings, trigger a native-tracker run, and sync a connected GEO provider's opportunities.
ranking_target:readRead ranking targetsList the org's ranking targets and their cluster/collection bindings.
ranking_target:writeManage ranking targetsAdd a ranking target, or edit its phrase, framing, or status.
social_profile:readRead social posting profilesList the org's social posting personas.
social_profile:writeManage social posting profilesCreate, update, or delete a social posting persona.
curate:readRead Curate content strategyRead topic clusters, suggested headlines, and the client content inventory.
curate:writeManage Curate content strategyCreate, rename, prioritise, merge and remove clusters and assign articles to them, generate or queue suggested headlines, infer competitor/client-content keywords, and remove or permanently exclude discovered SEO keywords.
insight:writeBackfill performance historyTrigger a one-time full-history Search Console import for the org.
account:readRead account & org settingsList the org's API keys (metadata only, never secrets), read organization profile, list members/seats, list pending invites, and read AI-usage/credit-gate status (credits used, threshold, and the per-action breakdown).
account:writeManage account access (revoke keys / invite members)Revoke an API key (never the calling key itself) or create a pending member invite. No key-minting and no billing changes: those are separate, more sensitive scopes.
review:readRead article reviewersList an article's org-member and guest reviewers, their verdicts, and the aggregate approval summary, the same gate publish_article checks.
review:writeManage article reviewersAdd or remove an org-member reviewer on an article, and revoke a guest reviewer's access (soft-revoke; their comments are preserved). Never invites a new guest reviewer: that sends a real email and can hand back a live PIN, so it's a separate, not-yet-built scope.
story:readRead The Story (editorial momentum feed)Read the deterministic 'Needs you' action deck (topics ready + pipeline queues), recent publishing wins, and still-actionable publish failures (failed CMS pushes and enhancement runs).
strategy:readRead publishing cadenceRead the org-wide publishing-cadence roll-up (one entry per collection) and a single collection's pace against its target over its rolling 7- or 30-day window. Also lists a collection's pending strategy suggestions with their auto-apply countdown.
strategy:writeDecide strategy suggestionsApprove, dismiss, or snooze a collection's pending strategy suggestions (verdicts and proposals) — the same levers the web queue pulls.
measure:readRead measurement probes & AI visibilityList a collection's AI-answer probes with their rotation lifecycle (retiring, earning, protected), and read the AI Visibility Bank — the named / cited / breakthrough evidence behind Measure's AI-answer numbers.
measure:writeControl measurement probesPause/resume, keep (protect from rotation), edit, or add AI-answer probes — the same controls as the Measure → Probes tab.
brand:readRead brand assets & context filesList the org's uploaded context files (name, size, mime, upload date), never the extracted text.
brand:writeManage brand assets (logo / font / context files)Mint a signed upload URL for a new org logo or custom font (the caller PUTs the bytes directly to storage), and remove an existing logo, font, or context file.
canvas:readRead Canvas types & visualsList and fetch the org's Canvas types (style templates) and canvas_visuals instances, and list available image models.
canvas:writeManage Canvas types & compositionsCreate or update a Canvas type, arrange a semi-structured composition, and re-classify a sticker. Excludes deletes and the image-spending generate endpoints (separate, more sensitive scopes).
visual:readRead visualsList and fetch table/venn visuals, org- or article-scoped.
visual:writeManage visualsCreate or update a table/venn visual, and generate a table or Venn diagram structure from article content (usage-gated).
arena:readRead arena runsList arenas and poll their runs: phase-by-phase progress, the sources the cluster gathered and read, the competing directions it proposed, the outline, the stat ledger, the paper trail, and the verification read-back.
arena:writeRun arenasRun an arena (an adversarial cluster of research agents) on a topic — standalone, or hosted into a post — answer its direction gate, cancel a run in flight, and create or configure arenas. Direct runs spend the org's arena-run balance.
seer:readRead Seers (event-driven signals)List and fetch seers with their activity, detected events (with dedup aliases and relevance verdicts), the seer-sourced headlines feed, held drafts, the provider catalog, and GitHub/Notion connection status.
seer:writeManage & run SeersCreate, update, or delete a seer, trigger an on-demand poll+produce run (usage-gated: production spends model budget), dismiss detected events, release or discard held drafts, and store a GitHub token or a Notion internal-integration token.
template:readRead content templatesList and fetch the org's content templates (compose structures shared by seers and collections).
template:writeManage content templatesCreate, update, or delete a content template.
shredder:readRead shredder endpoints & telemetryList the org's shredder endpoints and their shred-run telemetry.
shredder:writeManage shredder endpoints & run shredsCreate and delete shredder endpoints, and run prose through one. Shredding rewrites each sentence across multiple LLM providers to diversify, leaving structure (headings, lists, tables) untouched, and logs the call to telemetry.
lede:readRead lede endpoints & telemetryList the org's lede endpoints and their lede-run telemetry, read an endpoint's configuration, and read the lede balance.
lede:writeManage lede endpoints & run ledesCreate, configure and delete lede endpoints, and run a prospect through one. A lede run enriches the person's company and returns scored opening lines for cold email, and logs the call to telemetry.
lede:library:readRead the org's lede libraryList the org's opening-line library: the pre-built lines and any the org has authored, each with its wording variants, trigger, strictness dial and enabled state.
lede:library:writeEdit the org's lede libraryCreate, edit, enable, disable and delete opening lines in the org's lede library, and run an AI 'rewrite in my voice' pass over them. Edits change which lines the org's lede runs can pick and how they read; triggers stay validated so a line can never assert something the engine did not observe.
landing:readRead landing pagesList and read the org's landing pages (a URL plus context that collections can auto-mention).
landing:writeManage landing pagesCreate, update, or delete a landing page (a URL plus context). Collections with auto-mention enabled weave relevant landing pages into articles as they're written.
vendor:readRead Letterprove vendor dataRead this org's Letterprove vendor account: link status, customers, proof/attestation summaries, and install status.
vendor:writeManage Letterprove vendor accountCreate or update this org's Letterprove vendor account: link a vendor, manage customers and consent, rotate the collector key, verify the domain.
feedback:writeSubmit product feedbackSubmit feedback about Letterstory itself -- a bug, something missing, something unclear, a feature request, or praise.
mailer:readRead mailers & mail domain statusRead the mail status of a domain you own (provisioning stage, DNS/verification state) and the mailers on it, including each mailer's warmup progress and daily send limit.
mailer:provisionLaunch new mailers (buy domain, set up email, warm up)The one-shot Mailers launch: price a domain, buy or adopt the shared domain, provision a mailserver on it, create the mailers, and enroll them in warmup. This can SPEND money (registering a net-new domain). Also sets where that money is spent: the org's own Vercel key and team, and the WHOIS registrant for purchases on it. A separate, explicitly-granted scope.
mailer:manageManage mailers (forwarding, warmup, suppressions)Manage existing mailers: set reply forwarding, start or pause warmup, and maintain the org's email suppression (do-not-send) list.
sequence:readRead sequences & the review queueList and read the org's email sequences (flow, attached mailers, enrollment and per-step counts, who replied) and the Dispatch review queue of emails waiting for a decision. Reading only: nothing is sent. Pocket Dispatch links (no-login URLs that can approve sends) are admin-only to list, mint or revoke — see sequence:write.
sequence:writeRun sequences (create, enroll, approve sends)Create and edit sequences, activate, pause or archive them, enroll recipients or a prospect list, stop an enrollment, edit, approve, skip or delete queued emails in the review queue, and list, mint or revoke Pocket Dispatch links (no-login URLs that can approve sends; listing never returns their tokens). This MAILS REAL PEOPLE from the org's mailers: enrolling into an active sequence and approving a review item both send email. Sequence Frontrunner steps also start the org's Frontrunner (LinkedIn) agents for recipients, and a key minted by an org admin can connect or disconnect the org's Frontrunner workspace (stores its API key).
prospect:readRead prospects & prospect listsList and read the org's prospect lists and the prospects in them (contact details, company, enrichment, worked-state). Prospect records are personal data about third parties.
prospect:writeSource & edit prospectsCreate prospect lists, import a CSV, edit a prospect, and SPEND on sourcing: fill a list from a plain-language description (paid data providers) and enrich prospects with funding and competitors (model calls). Does not send email; enrolling a list into a sequence needs sequence:write.
composition:readRead primitive compositionsList and fetch the org's primitive compositions (named bundles of a writing kernel, shredder, content template and optional seer) and resolve one into the sections create_phantom takes.
composition:writeManage primitive compositionsCreate, update, or delete a primitive composition.
evals:readRead content evalsRead the live content scoreboard for your posts (per-stage measures, failing posts with evidence), list your org's regression cases, and poll a suite run.
evals:writeCapture eval cases & run the suiteFreeze one of your posts' pipeline records as a regression case (a measure that must pass once the bug is fixed) and run the record-only suite over your org's cases. Never publishes or edits a post.
audit:readRead site auditsList the org's site audits and read a finished audit's report: crawled pages, SEO issues with how-to-fix guidance, and Lighthouse results.
audit:writeRun & delete site auditsStart a site audit (crawls the target site, optionally rendering JavaScript and running Lighthouse) and delete audits. Crawling reaches out to third-party sites identified as Letterstory's crawler.
org_config:readExport org configRead the org's whole configuration as one JSON bundle (export_org_config): settings, primitives and data, keyed by name. Config only — no runs, history or credentials. What each setting means and how it is edited (describe_org_config_fields). Also shows which GitHub repo the org's config is synced from (get_org_config_source).
org_config:writeApply org configApply an org config bundle (apply_org_config): create and update the org's settings, context, collections, phantoms, primitives and their files, outreach and measure by name — changes that send, spend or destroy only when allowed and confirmed — and delete records missing from the bundle only when pruning. Also connect, sync and disconnect the GitHub repo the org's config is kept in (connect/sync/disconnect_org_config_source).
visitors:readRead VisitorsRead this org's Visitors sites: the script and its install checks, which AI agents and crawlers read each site, and the visitors identified on it.
visitors:writeManage VisitorsAdd a Visitors site, switch its modules, check that its script is on the site, and turn visitor identification on or off.
repo:readRead repo changesList the repos the Letterstory GitHub App can reach, and list and poll repo-change runs: phase, spend, the files changed and the PR they opened.
repo:writeRequest repo changesStart a repo-change run (Claude Code edits a checkout of one of your repos in a sandbox from your instructions and opens a pull request through the Letterstory GitHub App) and cancel one. Spends model credit; never merges.
site:readRead the site mapList mapped sites, walk the site tree one folder at a time with rollups, read a page's facts and bindings, and list observations, families and proposals.
site:writeMap and act on the siteMap a host from its sitemap, run observation passes (Jev), dismiss observations, track or dismiss page families, and create, accept or dismiss proposals.

Related