> ## Documentation Index
> Fetch the complete documentation index at: https://widgetic.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Remove a font or icon from the Brand Kit



## OpenAPI

````yaml /openapi/widgetic-api-public.json delete /brand-kit/assets/{assetId}
openapi: 3.0.0
info:
  title: Widgetic API Gateway
  version: 1.0.0
  description: API documentation for the Widgetic API Gateway
  license:
    name: Widgetic Integration License
    url: https://docs.widgetic.com/resources/license
servers:
  - url: https://api.widgetic.com/v1
    description: Production server
    variables:
      env:
        default: production
        description: Environment
      apiUrl:
        default: https://api.widgetic.com
        description: API URL
      apiVersion:
        default: /v1
        description: API Version path prefix
security: []
tags: []
paths:
  /brand-kit/assets/{assetId}:
    delete:
      tags:
        - Brand Kit
      summary: Remove a font or icon from the Brand Kit
      operationId: deleteBrandKitAsset
      parameters:
        - in: path
          name: assetId
          required: true
          schema:
            type: string
            format: uuid
        - in: query
          name: organizationId
          schema:
            type: string
            format: uuid
      responses:
        '200':
          description: The kit without the asset
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BrandKitViewResponse'
        '401':
          description: Not authenticated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: not_a_member or not_allowed_to_edit
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: asset_not_found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '503':
          description: brand_kit_unavailable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      security:
        - apiKeyAuth: []
components:
  schemas:
    BrandKitViewResponse:
      type: object
      required:
        - success
        - data
      properties:
        success:
          type: boolean
          description: Always `true` on a success.
          example: true
        data:
          $ref: '#/components/schemas/BrandKitView'
        meta:
          $ref: '#/components/schemas/ResponseMeta'
    ErrorResponse:
      type: object
      required:
        - success
        - message
        - error
      additionalProperties: true
      properties:
        success:
          type: boolean
          description: Always `false` on a failure.
          example: false
        message:
          type: string
          description: The same text as `error.message`, for a caller that reads one line.
        error:
          $ref: '#/components/schemas/ErrorDetail'
    BrandKitView:
      type: object
      required:
        - owner
        - isDefault
        - canEdit
        - version
        - tokens
        - assets
      properties:
        owner:
          type: object
          required:
            - type
            - organizationId
          properties:
            type:
              type: string
              enum:
                - user
                - organization
            organizationId:
              type: string
              format: uuid
              nullable: true
        isDefault:
          type: boolean
        canEdit:
          type: boolean
        version:
          type: integer
        tokens:
          $ref: '#/components/schemas/BrandKitTokens'
        assets:
          type: array
          items:
            $ref: '#/components/schemas/BrandKitAssetView'
        figmaSource:
          $ref: '#/components/schemas/BrandKitFigmaSource'
          nullable: true
        updatedAt:
          type: string
          format: date-time
          nullable: true
        updatedBy:
          type: string
          format: uuid
          nullable: true
        warnings:
          type: array
          description: >-
            Things worth fixing in the saved colors, such as a text color that
            is hard to read on the background. The kit is saved either way.
          items:
            type: string
      example:
        owner: {}
        isDefault: true
        canEdit: true
        version: 42
        tokens: null
        assets:
          - Example BrandKitAssetView
        figmaSource: null
        updatedAt: '2026-01-15T09:30:00.000Z'
        updatedBy: 3fa85f64-5717-4562-b3fc-2c963f66afa6
        warnings: []
    ResponseMeta:
      type: object
      description: >-
        Extra information about the answer: where a page sits in a list, the
        cursor of the next page, or warnings about a call that succeeded with a
        caveat.
      additionalProperties: true
      properties:
        page:
          type: integer
          description: The page that was read, counting from 1.
          example: 1
        size:
          type: integer
          description: How many items one page holds.
          example: 20
        total:
          type: integer
          description: How many items the whole list has.
          example: 135
        limit:
          type: integer
          description: The same as `size`.
          example: 20
        offset:
          type: integer
          description: How many items come before this page.
          example: 0
        hasNextPage:
          type: boolean
          example: true
        hasPreviousPage:
          type: boolean
          example: false
        nextCursor:
          type: string
          nullable: true
          description: >-
            Pass this as `cursor` to read the next page of a list that is read
            by cursor. `null` on the last page.
        warnings:
          type: array
          items:
            type: string
          description: >-
            Things the call did not do, though it succeeded (for example a table
            that could not be created just now).
    ErrorDetail:
      type: object
      required:
        - code
        - message
        - timestamp
      properties:
        code:
          type: string
          description: Machine-readable error code.
          example: RESOURCE_NOT_FOUND
        message:
          type: string
          description: Human-readable explanation.
          example: Composition not found
        param:
          type: string
          description: The field that caused the error, when one did.
          example: name
        docUrl:
          type: string
          description: Where this error is explained.
        suggestedAction:
          type: string
          description: What to do about it.
        retryAfter:
          type: integer
          description: >-
            Seconds to wait before trying again (rate limits). The same number
            is in the `Retry-After` header.
          example: 60
        details:
          type: object
          additionalProperties: true
          description: >-
            More about the error: the fields that failed, a limit that was
            reached.
        correlationId:
          type: string
          description: Quote this when you ask support about the call.
          example: req_123e4567-e89b-12d3-a456-426614174000
        timestamp:
          type: string
          format: date-time
          example: '2026-10-15T10:00:00.000Z'
    BrandKitTokens:
      type: object
      required:
        - colors
        - fonts
        - spacing
      description: Colors, fonts by role, spacing and corner radii of a Brand Kit.
      properties:
        colors:
          type: array
          maxItems: 24
          items:
            $ref: '#/components/schemas/BrandColor'
        fonts:
          type: object
          properties:
            title:
              $ref: '#/components/schemas/BrandFont'
            subtitle:
              $ref: '#/components/schemas/BrandFont'
            body:
              $ref: '#/components/schemas/BrandFont'
            caption:
              $ref: '#/components/schemas/BrandFont'
        spacing:
          $ref: '#/components/schemas/BrandSpacing'
        instructions:
          type: string
          maxLength: 500
          description: >-
            The kit owner's own style notes, taken into account in every widget
            made with the kit, for example "Use the dark color as the background
            always and the light color for titles". They are about how a widget
            looks and never about what it holds, and what a request names itself
            wins over them. Left out, Widgetic's default note applies ("Widget
            backgrounds to be white whenever possible."); an empty string means
            none.
      example:
        colors:
          - Example BrandColor
        fonts: {}
        spacing: null
        instructions: Example instructions
    BrandKitAssetView:
      type: object
      required:
        - id
        - kind
        - name
        - createdAt
      properties:
        id:
          type: string
          format: uuid
        kind:
          type: string
          enum:
            - font
            - icon
        name:
          type: string
        createdAt:
          type: string
          format: date-time
        family:
          type: string
        weight:
          type: integer
        style:
          type: string
          enum:
            - normal
            - italic
        format:
          type: string
          enum:
            - woff2
            - woff
            - ttf
            - otf
        bytes:
          type: integer
        url:
          type: string
          nullable: true
        slug:
          type: string
        exportName:
          type: string
        svg:
          type: string
      example:
        id: 3fa85f64-5717-4562-b3fc-2c963f66afa6
        kind: Example kind
        name: Example name
        createdAt: '2026-01-15T09:30:00.000Z'
        family: Example family
        weight: 42
        style: Example style
        format: Example format
        bytes: 42
        url: Example url
        slug: Example slug
        exportName: Example exportName
        svg: Example svg
    BrandKitFigmaSource:
      type: object
      required:
        - url
        - fileKey
        - nodeId
        - fileName
        - importedAt
      properties:
        url:
          type: string
        fileKey:
          type: string
        nodeId:
          type: string
          nullable: true
        fileName:
          type: string
          nullable: true
        importedAt:
          type: string
          format: date-time
      example:
        url: Example url
        fileKey: Example fileKey
        nodeId: Example nodeId
        fileName: Example fileName
        importedAt: '2026-01-15T09:30:00.000Z'
    BrandColor:
      type: object
      required:
        - name
        - hex
      properties:
        name:
          type: string
          minLength: 1
          maxLength: 40
        hex:
          type: string
          pattern: ^#[0-9A-Fa-f]{6}$
        role:
          type: string
          enum:
            - primary
            - secondary
            - accent
            - background
            - surface
            - text
            - title
            - sub
            - border
            - error
      example:
        name: Example name
        hex: Example hex
        role: Example role
    BrandFont:
      type: object
      required:
        - family
        - source
      properties:
        family:
          type: string
          minLength: 1
          maxLength: 80
        source:
          type: string
          enum:
            - google
            - upload
        weight:
          type: integer
          enum:
            - 100
            - 200
            - 300
            - 400
            - 500
            - 600
            - 700
            - 800
            - 900
        sizeMax:
          type: integer
          minimum: 8
          maximum: 200
      example:
        family: Example family
        source: Example source
        weight: 42
        sizeMax: 42
    BrandSpacing:
      type: object
      required:
        - xs
        - s
        - m
        - l
        - xl
        - radiusS
        - radiusM
        - radiusL
      properties:
        xs:
          type: integer
          minimum: 0
          maximum: 128
        s:
          type: integer
          minimum: 0
          maximum: 128
        m:
          type: integer
          minimum: 0
          maximum: 128
        l:
          type: integer
          minimum: 0
          maximum: 128
        xl:
          type: integer
          minimum: 0
          maximum: 128
        radiusS:
          type: integer
          minimum: 0
          maximum: 64
        radiusM:
          type: integer
          minimum: 0
          maximum: 64
        radiusL:
          type: integer
          minimum: 0
          maximum: 64
      example:
        xs: 42
        s: 42
        m: 42
        l: 42
        xl: 42
        radiusS: 42
        radiusM: 42
        radiusL: 42
  securitySchemes:
    apiKeyAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.