# CLI

> The official Superwall CLI: agent-driven SDK integration, products, campaigns, and paywalls from the terminal, SQL over your analytics, the raw API, and the entire App Store Connect API — no .p8 required.

Source: https://superwall.com/features/cli

---

Superwall CLI

# Superwall, from your terminal

Set up the SDK, manage products, campaigns, and paywalls, query your analytics with SQL, and drive the entire App Store Connect API — from your terminal or your coding agent. One package: `superwall`. 

 Terminal 

```
npx superwall login
```

 Or install globally: `npm install --global superwall` — ships both `superwall` and the short `sw`. Source on [GitHub](https://github.com/superwall/cli); pairs with the [Agent Skills](https://superwall.com/features/skills). 

The command surface

## The whole platform answers to --help

 Workflows, resources, SQL, the raw API, and App Store Connect — one binary, grouped the way you think. 

 Terminal 

$ superwall --help

Superwall CLI v1.0.1

Usage:

superwall \[command\]

Workflow commands:

integrate Set up Superwall in your app (agent-driven) 

migrate Migrate from RevenueCat / Adapty / Qonversion 

review \[--fix\] Audit an existing Superwall setup; --fix repairs issues 

Each takes --skill to print the playbook instead of running. 

Resource commands:

bootstrap Complete account tree: projects, apps, campaigns, and products 

apps Projects and platform apps (list, create, use) 

products Products (list, create, storekit) 

entitlements Entitlements (list, create) 

campaigns Campaigns (list, create, placement) 

paywalls Paywalls (list) 

query \[sql\] Run SQL against your ClickHouse analytics data 

orgs Organizations (list, use) — only needed with multiple orgs 

API commands:

get, post, patch, delete Raw requests to the Superwall API (/v2/...) 

App Store Connect commands:

asc The ASC API via Superwall's signed proxy (no .p8 / JWT) 

asc docs Exact ASC request schema, from Apple's spec (path or search) 

asc keys Manage App Store Connect API keys (list, set, rm) 

Other commands:

login, logout, whoami Authenticate the CLI 

skills Install or update the Superwall agent skills 

doctor Check the health of your integration 

upgrade Update the CLI to the latest version 

feedback Send feedback about the CLI to the Superwall team 

Flags:

\--json Machine-readable output 

\--no-interactive Disable prompts for automation 

\-v, --version Print the CLI version 

\-h, --help Help for superwall 

npx superwall integrate

##  Zero to paywall in one run 

`integrate` works out what kind of app it's looking at, connects it to your account, and drives the Claude Code or Codex already on your machine — headless — through SDK install, products, campaigns, paywalls, and on-device verification. 

 Prefer to drive the agent yourself? Add `--skill` to print the full playbook for your framework instead of running it. 

 Terminal 

\> npx superwall integrate 

◆ Superwall v1.0.1 

│ 

◇ Scanning your project 

│ 

◇ Found multiple apps — which one? 

│ tapes-demo · Swift (iOS) 

│ 

◆ Created project tapes-demo 

│ 

◆ Added iOS app tapes-demo-ios 

│ 

◇ Step 1 · Integrate the SDK 

│ 

◇ Integrate the Superwall SDK into tapes-demo? 

│ Integrate for me 

│ 

◆ Integration complete 

│ 

◆ Superwall skills installed 

│ 

◇ Step 2 · Products 

│ 

◇ Step 3 · Campaigns & Placements 

│ 

● Example Campaign 97778 

│ campaign\_trigger 

│ 

◇ Step 4 · Paywall 

│ 

◇ Step 5 · Verify 

│ 

◆ Campaigns: 1 

│ 

└ Done. https://superwall.com/dashboard 

Every surface

## The dashboard, your data, the API — and Apple's

### Integrate, migrate & review

* Agent-driven SDK setup — detects your app, runs Claude Code or Codex headless
* Migrate off RevenueCat, Adapty, or Qonversion
* review --fix audits an existing setup and repairs what it finds
* \--skill prints the full playbook to paste into any agent

### Apps, products & campaigns

* Projects, apps, products, entitlements, campaigns & paywalls
* bootstrap — the whole account tree at a glance
* list is the default action; scope with --project / --app
* products storekit generates a local .storekit file

### Query with SQL

* superwall query "SELECT count() FROM transactions"
* Direct ClickHouse access, row-level scoped to your org
* Pipe in .sql files; --json returns the native envelope
* Ad hoc analysis, custom dashboards, scheduled reports

### Get, post, patch & delete

* Any /v2 endpoint, signed with your session
* \-d key=value sends strings; key:=value sends typed JSON
* key\[sub\]=value nests objects
* No token juggling — log in once

### App Store Connect

* The entire ASC API, proxied and signed — no .p8 or JWT to manage
* asc docs searches Apple's own OpenAPI spec
* Writes validated locally: precise fixes, not opaque 409s
* Shortcuts for apps, products & subscriptions

### Agents & scripts

* \--json: stable output shapes, structured errors, never prompts
* \--no-interactive keeps human output, drops the prompts
* Logging in installs the Superwall agent skills
* superwall skills reinstalls or updates them any time

App Store Connect

## Apple's API without the .p8

 The entire ASC API, proxied and signed by Superwall — no key file or JWT to manage. The CLI keeps a copy of Apple's own OpenAPI spec, so `asc docs` answers any schema question and writes are validated locally: a mistake comes back as a precise fix instead of one of Apple's opaque 409s. 

 Between the schema lookup and the validation, an agent can build your whole ASC catalog — groups, subscriptions, prices, intro offers — without memorizing the API. 

 Terminal 

$  superwall asc post /v1/subscriptions \\ 

 \-d name="Premium Monthly" -d productId=com.acme.pro \\ 

 \-d subscriptionPeriod=MONTHLY -d group=20885741 

 ✗ Invalid POST /v1/subscriptions body: 

 • subscriptionPeriod "MONTHLY" not allowed — use ONE\_WEEK|ONE\_MONTH|…|ONE\_YEAR 

$  superwall asc post /v1/subscriptions -d subscriptionPeriod=ONE\_MONTH … 

 ✓ Created subscription "Premium Monthly" 

How it works

## Install, log in, run

 One browser sign-in and every command — resources, SQL, API, ASC — runs against your real account. 

Step 01

### Install once

 npm install --global superwall — or run it cold with npx superwall. The package ships both superwall and the short sw command, and tells you when a new version is out. 

Step 02

### Log in once

 superwall login opens your browser one time; every command shares that session. In CI, authenticate without a browser: superwall login --api-key <key>. 

Step 03

### Run anything

 Workflows, resources, SQL, the raw API, App Store Connect — human-readable by default, --json when a script or agent is driving. 

Prompts, not flags

##  Your agent already speaks it 

superwall login installs the Superwall skills into Claude Code, Cursor, Codex, and 70+ agents — so every command on this page becomes something you can just ask for.

 Prompt 

 Use the superwall CLI to create a $9.99/month pro product and attach it to my onboarding campaign 

##  Book a demo 

 Tell us a little about your app and we'll match you with the right person. 

* A personalized walkthrough of the paywall builder
* Guidance on your monetization and pricing strategy
* Custom implementation recommendations for your stack
* A look at proven paywall templates
* Revenue-optimization best practices

###  Thanks — opening your calendar 

 If a new tab didn't open, [click here to pick a time](#). 

Get started

##  Open a terminal 

Install the CLI, sign in once, and take your first app from empty repo to live paywall without leaving the shell.

[Start for free](https://superwall.com/sign-up) 

No credit card required
