---
title: "Update Copilot Styles"
method: PUT
path: "/api/products/{product_id}/copilot-styles"
tags: ["products"]
---

# Update Copilot Styles

`PUT /api/products/{product_id}/copilot-styles`

## Request

- Base URL: `https://api.usecrow.ai` (the document declares no server; this is the origin it was published from)
- URL: `https://api.usecrow.ai/api/products/{product_id}/copilot-styles`
- Auth: none declared
- TypeScript: <https://skmtc.dev/usecrow/apis/crow-backend-multi-tenant-saas/docs/api/products/:product_id/copilot-styles/put.ts> (a function with typed inputs; its response is checked against the schema)

Update copilot styles for a product

Accepts a partial or complete CopilotStyleConfig object.
The styles are stored as JSONB and merged with defaults on the client side.

## Path parameters

- `product_id` string, required

## Headers

- `authorization` string, nullable

## Request body

- UpdateCopilotStylesRequest: Request model for updating copilot styles
  - `styles` CopilotStyleConfig, required: Complete copilot style configuration. All fields are optional - only specified fields override defaults.
    - `colors` ColorsConfig: Color configuration shared between widget and copilot
      - `primary` string, nullable
      - `background` string, nullable
      - `text` string, nullable
      - `border` string, nullable
      - `botBubble` string, nullable
      - `botText` string, nullable
      - `userBubble` string, nullable
      - `userText` string, nullable
      - `userBorder` string, nullable
      - `messagesBackground` string, nullable
      - `bubbleBackground` string, nullable
      - `bubbleBorder` string, nullable
      - `bubbleIcon` string, nullable
    - `typography` TypographyConfig: Typography configuration
      - `fontFamily` string, nullable
      - `fontSize` integer, nullable
      - `headerFontSize` integer, nullable
      - `fontWeight` integer, nullable
      - `lineHeight` number, nullable
      - `letterSpacing` number, nullable
    - `animations` AnimationsConfig: Animation configuration
      - `duration` number, nullable
      - `easing` string, nullable
    - `dimensions` CopilotDimensionsConfig: Copilot dimension configuration
      - `width` integer, nullable
      - `headerHeight` integer, nullable
      - `borderRadius` integer, nullable
      - `padding` integer, nullable
    - `position` CopilotPositionConfig: Copilot position configuration
      - `side` 'left' | 'right', nullable
    - `branding` CopilotBrandingConfig: Branding configuration for copilot
      - `showPoweredBy` boolean, nullable
      - `poweredByText` string, nullable

## Response `200`

Successful Response

- unknown

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/usecrow/apis/crow-backend-multi-tenant-saas.md) - [All operations](https://skmtc.dev/usecrow/apis/crow-backend-multi-tenant-saas/llms.txt) - [OpenAPI document](https://skmtc.dev/usecrow/apis/crow-backend-multi-tenant-saas/revisions/b2950af46532?raw)
