---
title: "Draft a brand kit from a website URL"
method: POST
path: "/v1/brand-kits/from-url"
tags: ["Brand kits"]
---

# Draft a brand kit from a website URL

`POST /v1/brand-kits/from-url`

## Request

- Base URL: `https://api.vivideo.ai`
- URL: `https://api.vivideo.ai/v1/brand-kits/from-url`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/vivideo/apis/vivideo-api/docs/v1/brand-kits/from-url/post.ts> (a function with typed inputs; its response is checked against the schema)

Extracts logo, colors, fonts and identity from a public https website
and returns a DRAFT (nothing is saved). Review it, then create it with
POST /v1/brand-kits.

## Request body

- object
  - `url` string, required

## Response `200`

Draft brand kit extracted from the site.

- BrandKit
  - `object` string
  - `brand_ref` string: Use as brand_kit_id when creating auto videos.
  - `name` string
  - `logo_url` string
  - `logo_asset_id` string
  - `primary_color` string
  - `secondary_color` string
  - `tertiary_color` string
  - `accent_color` string
  - `title_font` string
  - `body_font` string
  - `motion_style` string
  - `brand_identity` string

## Other responses

- `400`: Invalid parameters (`invalid_request`, `unknown_model`, `invalid_url`).
- `401`: Missing, malformed or revoked API key (`missing_api_key`, `invalid_api_key`, `api_key_revoked`).
- `429`: Rate limit hit (`rate_limited`). Honor the `Retry-After` header / `retry_after_seconds` field.

---

[API](https://skmtc.dev/vivideo/apis/vivideo-api.md) - [All operations](https://skmtc.dev/vivideo/apis/vivideo-api/llms.txt) - [OpenAPI document](https://skmtc.dev/vivideo/apis/vivideo-api/revisions/6e8a47e72b46?raw)
