Skip to main content
Planned Feature - This API endpoint is planned for ClypAI’s 2026 launch. The documentation below represents the intended design and may change before release.

Overview

Brand Kits allow you to define reusable brand assets and styling that can be applied to your clips. Create consistent visual identity across all your video content.
All brand kit endpoints require authentication. See Authentication for details.

The Brand Kit Object

id
string
Unique identifier for the brand kit
name
string
Display name of the brand kit
description
string
Optional description of the brand kit
organizationId
string
ID of the organization that owns this brand kit
isDefault
boolean
Whether this is the default brand kit for the organization
assets
object
Brand assets
styling
object
Visual styling configuration
createdAt
string
ISO 8601 timestamp of brand kit creation
updatedAt
string
ISO 8601 timestamp of last update

Example Brand Kit Object

{
  "id": "brand_xyz123",
  "name": "Acme Corp Brand",
  "description": "Primary brand kit for Acme Corp video content",
  "organizationId": "org_1234567890",
  "isDefault": true,
  "assets": {
    "logoUrl": "https://storage.clypai.com/brands/acme-logo.png",
    "logoPosition": "bottom-right",
    "watermarkUrl": "https://storage.clypai.com/brands/acme-watermark.png",
    "introVideoUrl": "https://storage.clypai.com/brands/acme-intro.mp4",
    "outroVideoUrl": "https://storage.clypai.com/brands/acme-outro.mp4"
  },
  "styling": {
    "primaryColor": "#8B5CF6",
    "secondaryColor": "#A78BFA",
    "accentColor": "#7C3AED",
    "fontFamily": "Inter",
    "captionStyle": {
      "backgroundColor": "#000000",
      "textColor": "#FFFFFF",
      "fontSize": 24,
      "fontWeight": "bold",
      "position": "bottom"
    }
  },
  "createdAt": "2024-01-10T08:00:00Z",
  "updatedAt": "2024-01-20T15:30:00Z"
}

Create Brand Kit

curl -X POST https://api.clypai.com/v1/brand-kits \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Acme Corp Brand",
    "description": "Primary brand kit for video content",
    "assets": {
      "logoUrl": "https://example.com/logo.png",
      "logoPosition": "bottom-right"
    },
    "styling": {
      "primaryColor": "#8B5CF6",
      "fontFamily": "Inter"
    }
  }'

Parameters

name
string
required
Display name for the brand kit (1-100 characters)
description
string
Optional description (max 500 characters)
isDefault
boolean
default:"false"
Set as the default brand kit for the organization
assets
object
Brand assets configuration
styling
object
Visual styling configuration

Response

success
boolean
Whether the request was successful
data
object
The created brand kit object
{
  "success": true,
  "data": {
    "id": "brand_xyz123",
    "name": "Acme Corp Brand",
    "description": "Primary brand kit for video content",
    "organizationId": "org_1234567890",
    "isDefault": false,
    "assets": {
      "logoUrl": "https://example.com/logo.png",
      "logoPosition": "bottom-right"
    },
    "styling": {
      "primaryColor": "#8B5CF6",
      "fontFamily": "Inter"
    },
    "createdAt": "2024-01-10T08:00:00Z",
    "updatedAt": "2024-01-10T08:00:00Z"
  }
}

List Brand Kits

Retrieve all brand kits for your organization.
curl https://api.clypai.com/v1/brand-kits \
  -H "Authorization: Bearer YOUR_API_KEY"

Query Parameters

limit
integer
default:"20"
Number of brand kits to return (max 100)
cursor
string
Pagination cursor from previous response

Response

{
  "success": true,
  "data": [
    {
      "id": "brand_xyz123",
      "name": "Acme Corp Brand",
      "description": "Primary brand kit",
      "isDefault": true,
      "createdAt": "2024-01-10T08:00:00Z",
      "updatedAt": "2024-01-20T15:30:00Z"
    },
    {
      "id": "brand_abc456",
      "name": "Product Launch Theme",
      "description": "Special theme for product launch",
      "isDefault": false,
      "createdAt": "2024-01-15T10:00:00Z",
      "updatedAt": "2024-01-15T10:00:00Z"
    }
  ],
  "pagination": {
    "hasMore": false,
    "nextCursor": null
  }
}

Get Brand Kit

Retrieve a specific brand kit by ID.
curl https://api.clypai.com/v1/brand-kits/brand_xyz123 \
  -H "Authorization: Bearer YOUR_API_KEY"

Path Parameters

brandKitId
string
required
The unique identifier of the brand kit

Response

{
  "success": true,
  "data": {
    "id": "brand_xyz123",
    "name": "Acme Corp Brand",
    "description": "Primary brand kit for Acme Corp video content",
    "organizationId": "org_1234567890",
    "isDefault": true,
    "assets": {
      "logoUrl": "https://storage.clypai.com/brands/acme-logo.png",
      "logoPosition": "bottom-right",
      "watermarkUrl": "https://storage.clypai.com/brands/acme-watermark.png"
    },
    "styling": {
      "primaryColor": "#8B5CF6",
      "secondaryColor": "#A78BFA",
      "fontFamily": "Inter"
    },
    "createdAt": "2024-01-10T08:00:00Z",
    "updatedAt": "2024-01-20T15:30:00Z"
  }
}

Update Brand Kit

Update an existing brand kit. Only provided fields will be updated.
curl -X PATCH https://api.clypai.com/v1/brand-kits/brand_xyz123 \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Updated Brand Name",
    "styling": {
      "primaryColor": "#6366F1"
    }
  }'

Path Parameters

brandKitId
string
required
The unique identifier of the brand kit

Body Parameters

name
string
Updated display name
description
string
Updated description
isDefault
boolean
Set as default brand kit
assets
object
Updated assets (partial updates supported)
styling
object
Updated styling (partial updates supported)

Response

{
  "success": true,
  "data": {
    "id": "brand_xyz123",
    "name": "Updated Brand Name",
    "styling": {
      "primaryColor": "#6366F1"
    },
    "updatedAt": "2024-01-25T11:45:00Z"
  }
}

Delete Brand Kit

Permanently delete a brand kit.
Deleting a brand kit does not affect existing clips that use it, but the brand kit will no longer be available for new clips.
curl -X DELETE https://api.clypai.com/v1/brand-kits/brand_xyz123 \
  -H "Authorization: Bearer YOUR_API_KEY"

Path Parameters

brandKitId
string
required
The unique identifier of the brand kit to delete

Response

{
  "success": true,
  "data": {
    "id": "brand_xyz123",
    "deleted": true
  }
}

Upload Brand Assets

Upload brand assets (logos, watermarks, etc.) to ClypAI storage.
curl -X POST https://api.clypai.com/v1/brand-kits/assets/upload \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -F "[email protected]" \
  -F "type=logo"

Parameters

file
file
required
The file to upload (PNG, SVG, JPG for images; MP4 for videos)
type
string
required
Asset type: logo, watermark, intro, outro

Response

{
  "success": true,
  "data": {
    "url": "https://storage.clypai.com/brands/logo_abc123.png",
    "type": "logo",
    "size": 45678,
    "mimeType": "image/png"
  }
}
File Limits: Logos and watermarks max 5MB. Intro/outro videos max 50MB and 5 seconds duration.

Error Responses

Brand Kit Not Found

{
  "success": false,
  "error": {
    "code": "not_found",
    "message": "Brand kit not found"
  }
}

Invalid Color Format

{
  "success": false,
  "error": {
    "code": "invalid_request",
    "message": "Invalid color format. Use hex format (e.g., #8B5CF6)",
    "field": "styling.primaryColor"
  }
}

Asset Upload Failed

{
  "success": false,
  "error": {
    "code": "upload_failed",
    "message": "File size exceeds maximum allowed size",
    "details": {
      "maxSize": 5242880,
      "actualSize": 7340032
    }
  }
}

Build docs developers (and LLMs) love