CartViral API
Last updated: 24 September 2026
Authorization: Bearer cv_live_...) or an OAuth 2.1 access token. The same operations are available to AI agents through the MCP server, and the full spec is at /api/v1/openapi.json (OpenAPI 3.1).Endpoints
| Method and path | What it does | Credits |
|---|---|---|
| GET /account | Plan, credit balance, price of each clip type | 0 |
| POST /products/import | Import a store or product URL (Shopify, Amazon, Etsy, most sites). Body: {"url"} | 0 |
| GET /products | Catalog with CartViral score. Query: search, limit | 0 |
| POST /clips | Queue clips. Body: {"product_id", "clip_type": "montage|ai_story|ad|avatar", "count"} | 1 / 4 / 4 / 10 per clip |
| GET /clips | Render status and download links (24 hours). Query: status, limit | 0 |
| GET /offers | Creator marketplace offers (needs an Earn profile) | 0 |
| POST /offers/{offer_id}/join | Join an offer, get your tracking link | 0 |
| POST /pitches | Pitch a brand: 3 AI clips and a page to send. Body: {"url"} | 12 |
| GET /pitches | Your pitches and who opened them | 0 |
Quick start
curl https://app.cartviral.com/api/v1/account \
-H "Authorization: Bearer $CARTVIRAL_API_KEY"
curl -X POST https://app.cartviral.com/api/v1/products/import \
-H "Authorization: Bearer $CARTVIRAL_API_KEY" -H "Content-Type: application/json" \
-d '{"url": "https://yourstore.com/products/your-product"}'
curl -X POST https://app.cartviral.com/api/v1/clips \
-H "Authorization: Bearer $CARTVIRAL_API_KEY" -H "Content-Type: application/json" \
-d '{"product_id": "PRODUCT_ID", "clip_type": "ai_story", "count": 2}'
curl "https://app.cartviral.com/api/v1/clips?status=done" \
-H "Authorization: Bearer $CARTVIRAL_API_KEY"
Authentication
- API key: create one at Account → AI agents. Send it as
Authorization: Bearer cv_live_...orx-api-key: cv_live_.... Keys act as your account (same credits and limits) and can be revoked on the same page. - OAuth 2.1: authorization code flow. Authorize at
/oauth/authorize, exchange at/oauth/token, scopemcp. Public clients use PKCE (S256); confidential clients authenticate with their secret. Clients can self-register at/oauth/register(RFC 7591); discovery at/.well-known/oauth-authorization-server.
Errors and limits
- Errors return a JSON body
{"error": "..."}with 400 (invalid input or the action can't be done), 401 (credentials), 404 (unknown endpoint) or 429 (rate limit). - 120 calls per minute per key. Clips render in a few minutes: poll
GET /clipsevery 30-60 seconds. - A clip that fails to render refunds its credits automatically.
Automations
Use the API from any HTTP step (Zapier Webhooks, Make HTTP, n8n HTTP Request) or connect an AI agent through MCP: see n8n and Make and MCP for AI agents.
FAQ
Does CartViral have an API?
Yes: a REST API at https://app.cartviral.com/api/v1 with an OpenAPI 3.1 spec at /api/v1/openapi.json, plus an MCP server for AI agents.
How do I get an API key?
Create a free account, then Account → AI agents → Create an API key. It's shown once; revoke it anytime.
Does the API cost extra?
No. Reading data is free; clips cost the same credits as in the web app.
Can I use OAuth instead of a key?
Yes. The authorization code flow with PKCE is supported, and clients can register themselves.
Free account, 48 free credits, no card.
Open AI agentsMore guides: Best AI product video generators · Creatify alternatives · Content Rewards alternative · Product link to TikTok video · Earn with AI product videos · MCP for AI agents · n8n and Make · Shopify Collabs alternative · Start a Shopify affiliate program · AI video affiliate programs · Faceless affiliate with AI videos · Clipping jobs: per view vs per sale