Shop API

Manage products, variants, categories, and shop settings programmatically.

Get your API key

Products

GET /api/v1/projects/{project_id}/products/

List all products.

Filters: ?category={id}&is_active=true&search=keyword

{
  "success": true,
  "data": [
    {
      "id": "uuid",
      "name": "Premium T-Shirt",
      "slug": "premium-t-shirt",
      "price": "29.99",
      "compare_at_price": "39.99",
      "sku": "TSH-001",
      "is_active": true,
      "is_featured": true,
      "stock_quantity": 100,
      "category": {"id": "uuid", "name": "Apparel"},
      "variant_count": 3
    }
  ],
  "count": 25
}
POST /api/v1/projects/{project_id}/products/

Create a product.

{
  "name": "Premium T-Shirt",
  "slug": "premium-t-shirt",
  "description": "100% organic cotton t-shirt",
  "price": "29.99",
  "compare_at_price": "39.99",
  "sku": "TSH-001",
  "category_id": "uuid",
  "track_inventory": true,
  "stock_quantity": 100,
  "is_active": true,
  "is_featured": false,
  "features": ["100% organic", "Machine washable"],
  "technical_specs": {"material": "Cotton", "weight": "200g"}
}
GET PUT DELETE /api/v1/projects/{project_id}/products/{product_id}/

Get, update, or delete a product.

POST /api/v1/projects/{project_id}/products/{product_id}/image/

Upload product image (multipart/form-data or base64 JSON).

Formats: JPEG, PNG, WebP (max 10MB)

Product Variants

GET POST /api/v1/projects/{project_id}/products/{product_id}/variants/

List or create variants for a product.

Create Variant

{
  "title": "Large / Blue",
  "sku": "TSH-001-LG-BL",
  "price": "29.99",
  "stock_quantity": 25
}
PUT DELETE /api/v1/projects/{project_id}/products/{product_id}/variants/{variant_id}/

Update or delete a variant.

Categories

GET POST /api/v1/projects/{project_id}/categories/

List or create product categories.

{
  "name": "Apparel",
  "slug": "apparel",
  "description": "Clothing and accessories"
}
PUT DELETE /api/v1/projects/{project_id}/categories/{category_id}/

Update or delete a category.

Shop Settings & Pages

GET PUT /api/v1/projects/{project_id}/shop/settings/

Get or update shop settings.

{
  "success": true,
  "data": {
    "is_enabled": true,
    "currency": "USD",
    "tax_rate": "0.00",
    "shipping_info": {},
    "refund_policy": ""
  }
}
GET PUT /api/v1/projects/{project_id}/shop/page/

Get or update shop page HTML.

POST /api/v1/projects/{project_id}/shop/page/generate/

AI-generate a shop page.

{"prompt": "Create a modern shop page for a fashion brand"}
GET /api/v1/projects/{project_id}/shop/product-template/

Get the product page template.

Shop Hero Slides

GET POST /api/v1/projects/{project_id}/shop/hero-slides/

List or create hero slides.

{
  "title": "Summer Collection",
  "subtitle": "Up to 50% off",
  "image_url": "https://...",
  "cta_text": "Shop Now",
  "cta_url": "/shop/summer"
}
POST /api/v1/projects/{project_id}/shop/hero-slides/generate/

AI-generate hero slides.

PUT DELETE /api/v1/projects/{project_id}/shop/hero-slides/{slide_id}/

Update or delete a hero slide.