External Services & API Keys
The CLI integrates with several external services for AI image generation, app store management, and subscription setup. All keys are stored locally at ~/.config/kappmaker/config.json.
fal.ai — AI Image Generation
Used for: Logo generation, background removal, image enhancement, screenshot translation, and screenshot generation.
How to get your key:
- Sign up at fal.ai
- Go to Dashboard > Keys and create an API key
- Configure:
Or skip this — the CLI will prompt you the first time you run a command that needs it.kappmaker config set falApiKey <your-key>
ImgBB — Image Hosting
Used for: Temporarily hosting reference images when generating or translating screenshots (fal.ai needs a public URL to process images).
How to get your key:
- Sign up at imgbb.com
- Go to api.imgbb.com and get your free API key
- Configure:
kappmaker config set imgbbApiKey <your-key>
OpenAI — Prompt Generation
Used for: Generating detailed screenshot specifications from a short app description (uses GPT-4.1). Only needed for the generate-screenshots command.
How to get your key:
- Sign up at platform.openai.com
- Go to API Keys and create a new key
- Configure:
kappmaker config set openaiApiKey <your-key>
App Store Connect CLI
Used for: Creating apps, setting metadata, categories, subscriptions, privacy declarations, and review info on App Store Connect. The same API key credentials are also used by publish --platform ios.
How to set up:
- Install:
brew install asc - Generate an API key at App Store Connect > Users and Access > Integrations > API (Admin role, download the
.p8file immediately) - Configure:
Or runkappmaker config set ascKeyId <your-key-id>kappmaker config set ascIssuerId <your-issuer-id>kappmaker config set ascPrivateKeyPath /path/to/AuthKey.p8kappmaker config set appleId your@email.com
kappmaker config appstore-defaults --initfor interactive setup.
kappmaker publish --platform ios uses ascKeyId, ascIssuerId, and ascPrivateKeyPath to automatically generate the Fastlane-format publisher JSON — no separate credentials needed.
Adapty CLI — Subscription Management
Used for: Setting up in-app subscription products, paywalls, and placements across iOS and Android via Adapty's backend.
How to set up:
- Install:
npm install -g adapty - Log in:
adapty auth login(opens browser for authentication) - Run:
kappmaker adapty setup
Firebase CLI — Backend Setup
Used for: Creating Firebase projects, registering Android/iOS apps, downloading SDK config files, and enabling anonymous authentication.
How to set up:
- Install:
npm install -g firebase-tools - The
createcommand handles login and project creation interactively.
Google Play Publisher
Used for:
- Building and uploading Android AABs via
kappmaker publish --platform android(Fastlane) - Configuring store listings, subscriptions, in-app products, and data safety via
kappmaker gpc ...(direct Publisher API)
Both flows share the same service account JSON key — set it once, use it everywhere.
How to set up:
- Go to Google Cloud Console and create a new project (or select existing)
- Open APIs & Services > Library, search for Google Play Android Developer API, and enable it
- Go to IAM & Admin > Service Accounts, create a new service account (skip role assignment)
- Open the service account, go to Keys, click Add key > Create new key > JSON, and download it
- Open Google Play Console, go to Settings > Users and permissions
- Click Invite new user with the service account email and grant permissions for your app(s)
- Save the JSON key file and configure:
kappmaker config set googleServiceAccountPath /path/to/google-service-app-publisher.json
Google Play does not allow creating new apps via any public API — you must create the app manually once in Play Console before kappmaker gpc can configure it.
App Store Publisher — iOS Store Uploads
Used for: Building and uploading iOS IPAs to App Store Connect via kappmaker publish --platform ios.
The publish command reuses the same App Store Connect API key credentials used by create-appstore-app (ascKeyId, ascIssuerId, ascPrivateKeyPath) and automatically generates the Fastlane-format publisher JSON.
If not already configured for create-appstore-app:
- Open App Store Connect > Users and Access > Integrations
- Create an API key with App Manager access and download the
.p8file - Note the Key ID and Issuer ID
- Configure:
kappmaker config set ascKeyId <your-key-id>kappmaker config set ascIssuerId <your-issuer-id>kappmaker config set ascPrivateKeyPath /path/to/AuthKey.p8