Public API
Run any marketing App from your own system
Every SupaMarketers App is available as a JSON API. Create a run, stream live progress over SSE, and fetch the finished report — with the same API key, Credits balance, and run history as the website.
Quick start
Create an API key in Settings → API Keys (the same key works for MCP), then create a run:
curl -X POST https://api.TODO-APP-DOMAIN/api/v1/runs \
-H "Authorization: Bearer $SUPAMARKETERS_API_KEY" \
-H "Content-Type: application/json" \
-d '{"app_slug":"oss-growth","input":{"repo_url":"https://github.com/your-org/your-repo"}}'Subscribe to progress events — the stream survives reconnects via Last-Event-ID:
curl -N https://api.TODO-APP-DOMAIN/api/v1/runs/{run_no}/events \
-H "Authorization: Bearer $SUPAMARKETERS_API_KEY"Fetch the finished result once the run reaches a terminal status:
curl https://api.TODO-APP-DOMAIN/api/v1/runs/{run_no} \
-H "Authorization: Bearer $SUPAMARKETERS_API_KEY"Replace $SUPAMARKETERS_API_KEY with your key.
Authentication
All endpoints require a Bearer API key in the Authorization header. Create one under Settings → API Keys after signing up. The same key authenticates the MCP surface; a key grants access to the resources of the account that created it.
Authorization: Bearer $SUPAMARKETERS_API_KEYBase URL
The canonical origin is https://api.TODO-APP-DOMAIN with the same paths as the website origin (https://www.TODO-APP-DOMAIN/api/v1/... also works). All request and response URLs returned by the API are relative paths — resolve them against the origin you called.
Credits & dynamic pricing
Every run consumes Credits from the key owner's balance, prepaid at creation and refunded on failure. Prices are calibrated against real run costs, so they adjust over time — treat the credit_cost returned when creating a run as the authoritative price, not a number cached from documentation. Current prices are always visible in the capability list and on each App's reference page.
Rate & concurrency limits
Limits protect shared capacity and answer with 429 plus a Retry-After header.
| Surface | Limit |
|---|---|
| Run creation (POST /api/v1/runs) | 10 / min |
| Reads (capabilities, run status, events) | 120 / min |
| Concurrent active runs per key owner | 3 |
| Concurrent active runs, platform-wide (all users) | 12 |
Per API key unless noted
Error codes
Errors share one envelope: {"error":{"code","message"}}.
| HTTP | code | Meaning |
|---|---|---|
| 400 | invalid_request | Malformed body, non-JSON content, or file fields (the API is JSON-only) |
| 401 | unauthorized | Missing or invalid Bearer API key |
| 402 | insufficient_credits | Balance below the locked credit cost |
| 404 | app_not_found / run_not_found | Unknown or non-runnable App slug |
| 409 | pricing_not_ready | App price missing, changed, or recalibrating — retry |
| 422 | invalid_input | Input schema validation failure |
| 422 | invalid_brand_context | brand_context_id rejected |
| 429 | rate_limited | Rate limit exceeded — retry after Retry-After seconds |
| 429 | concurrency_limit | Active-run ceiling reached (per key owner or platform-wide) — wait for a run to finish |
| 500 / 503 | internal_error | Unexpected server error or busy database — safe to retry |
Progress streaming (SSE)
GET /api/v1/runs/{run_no}/events streams the run's event log as Server-Sent Events. Event types: started, tool_running, completed, failed; heartbeats arrive as SSE comments. Pass the last received sequence id via the Last-Event-ID header (or lastEventSeq query parameter) to resume exactly where a dropped connection left off. Clients that cannot hold a connection may poll GET /api/v1/runs/{run_no} instead.
Ready for API use63
These Apps accept JSON input and can run end to end through the API. Each links to a full reference page.
- A/B Test Designab-test-design25 cr
- Ad Creativead-creative25 cr
- Ads Account Auditads-audit25 cr
- AI Visibilityai-visibility110 cr
- Analytics Tracking Plananalytics-plan25 cr
- ASO Growthaso-growth25 cr
- Audit Domainaudit-domain490 cr
- Audit Pageaudit-page23 cr
- Technical SEO Auditaudit-technical10 cr
- B2B Revenue Growthb2b-growth25 cr
- Backlink Analysisbacklink-analysis37 cr
- Brand Contextbrand-context5 cr
- Churn Preventionchurn-prevention25 cr
- Cold Email Writercold-email-writer25 cr
- Community & Ambassadorscommunity-ambassador25 cr
- Competitor Analysiscompetitor-analysis240 cr
- Competitor Growth Researchcompetitor-growth25 cr
- Content Distillcontent-distill25 cr
- Content Gapcontent-gap18 cr
- Landing Page CRO Auditcro-audit25 cr
- Customer Researchcustomer-research25 cr
- Developer Marketingdeveloper-marketing25 cr
- Email Sequence Designemail-sequence25 cr
- Facebook Lead Intelligencefacebook-lead-intelligence28 cr
- Generate Schemagenerate-schema16 cr
- Go-Global Strategygo-global-plan25 cr
- Go-To-Market Plango-to-market-plan25 cr
- Google Maps Lead Intelligencegoogle-maps-lead-intelligence38 cr
- Growth Diagnosisgrowth-diagnosis25 cr
- Hardware & SaaS GTMhardware-gtm25 cr
- Keyword Researchkeyword-research3 cr
- Knowledge Longformknowledge-longform25 cr
- KOL Outreachkol-outreach25 cr
- Launch Campaignlaunch-campaign25 cr
- Lead Magnet Designlead-magnet25 cr
- LinkedIn Lead Intelligencelinkedin-lead-intelligence18 cr
- Offer Designoffer-design25 cr
- Onboarding Optimizationonboarding-optimization25 cr
- Optimize GEOoptimize-geo52 cr
- Optimize Metaoptimize-meta37 cr
- OSS Growthoss-growth25 cr
- Launch Board Campaignph-launch25 cr
- Pricing Strategypricing-strategy25 cr
- Rank Snapshotrank-snapshot11 cr
- Reddit Comment Engagementreddit-comment-engagement25 cr
- Reddit Community Mapreddit-community-map25 cr
- Reddit Community Playbookreddit-community-playbook25 cr
- Reddit Customer Insightreddit-customer-insight25 cr
- Reddit Growth Opportunityreddit-growth-opportunity25 cr
- Reddit Growth Planreddit-growth-plan25 cr
- Reddit Hot Post Analysisreddit-hot-post-analysis25 cr
- Reddit Lead Intelligencereddit-lead-intelligence8 cr
- Reddit Mention Reportreddit-mention-report25 cr
- Reddit Native Contentreddit-native-content25 cr
- Reddit Product Opportunityreddit-product-opportunity25 cr
- Referral Programreferral-program25 cr
- SEO+GEO Strategyseo-geo-strategy25 cr
- SEO Patrolseo-patrol25 cr
- SERP Analysisserp-analysis12 cr
- Social Content Strategysocial-content25 cr
- UGC Matrixugc-matrix25 cr
- User Interviewsuser-interview25 cr
- Write Contentwrite-content25 cr
Web UI only21
These Apps need reference image or video uploads, which the JSON-only API cannot carry in this phase. Run them from the website.
- Ad Creative Enginead-creative-engine25 cr
- Ad Creative Visualad-creative-visual25 cr
- Ad Recastad-recast80 cr
- Amazon Listing Suiteamazon-listing-suite25 cr
- Campaign Postercampaign-poster25 cr
- Logo Mockuplogo-mockup25 cr
- Nine-Angle Portrait Gridnine-angle-portrait25 cr
- OOTD Magazine Spreadootd-magazine25 cr
- Performance Ad Clipperformance-15s100 cr
- Photo Vlogphoto-vlog80 cr
- Product Image Editproduct-image-edit25 cr
- Product Motion Videoproduct-motion-video80 cr
- Product Photo Studioproduct-photo-studio25 cr
- Quote Cardquote-card25 cr
- Short Remakeshort-remake100 cr
- Social Post Visualsocial-post-visual25 cr
- Store UGC Selfiestore-ugc-selfie25 cr
- Talking Headtalking-head80 cr
- UGC Video Factoryugc-video-factory95 cr
- Virtual Try-Onvirtual-tryon25 cr
- Video Cover & Thumbnailyoutube-thumbnail25 cr