Typeface Brand Kits API

The Brand Kits API from Typeface — 6 operation(s) for brand kits.

Operations 7

GET /workspace-resolver-service/accounts/{accountId}/libraries/sub-types/BRAND_KIT_LIBRARY List Brand Kits #
POST /workspace-resolver-service/accounts/{accountId}/libraries Create Brand Kit #
DELETE /workspace-resolver-service/accounts/{accountId}/libraries/{brandKitId} Delete Brand Kit #
GET /profile-service/accounts/{accountId}/brand-kits/{brandKitId}/style-types/{styleType} Get Brand-kit styles #
POST /profile-service/accounts/{accountId}/brand-kits/{brandKitId}/style-types/{styleType} Create Brand-kit style #
POST /profile-service/accounts/{accountId}/brand-kits/{brandKitId}/style-types/{styleType}/{styleId}/images Update or Manage Brand-kit style #
POST /profile-service/accounts/{accountId}/brand-kits/{brandKitId}/style-types/image/{styleId}/train Train Brand-kit image style #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/typeface-brand-kits-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

typeface-brand-kits-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Typeface Brand Kits API
  version: v0
servers:
- url: https://api-us.typeface.ai
  description: Generated server url
security:
- BearerAuth: []
tags:
- name: Brand Kits
paths:
  /workspace-resolver-service/accounts/{accountId}/libraries/sub-types/BRAND_KIT_LIBRARY:
    get:
      description: This API endpoint lists all available Brand kits in the given team.
      tags:
      - Brand Kits
      operationId: queryBrandsInAccount
      parameters:
      - name: accountId
        in: path
        required: true
        description: Unique identifier for the specific team
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetLibrariesResponseBody'
      summary: List Brand Kits
  /workspace-resolver-service/accounts/{accountId}/libraries:
    post:
      description: 'Create Brand-kit within the library


        **Sample request body**

        ```json

        {

        "name": "Awesome Brand Kit",

        "workspaceSubType": "BRAND_KIT_LIBRARY"

        }

        ```'
      tags:
      - Brand Kits
      operationId: createBrandKitInAccount
      parameters:
      - name: accountId
        in: path
        required: true
        description: Unique identifier for the specific team
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                name:
                  type: string
                workspaceSubType:
                  type: string
                  default: BRAND_KIT_LIBRARY
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateLibraryResponseBody'
      summary: Create Brand Kit
  /workspace-resolver-service/accounts/{accountId}/libraries/{brandKitId}:
    delete:
      tags:
      - Brand Kits
      operationId: deleteBrandKitInAccount
      parameters:
      - name: accountId
        in: path
        required: true
        description: Unique identifier for the specific team
        schema:
          type: string
      - name: brandKitId
        in: path
        required: true
        description: Unique identifier for the specific brand-kit
        schema:
          type: integer
          format: int64
      responses:
        '204':
          description: No Content
      summary: Delete Brand Kit
  /profile-service/accounts/{accountId}/brand-kits/{brandKitId}/style-types/{styleType}:
    get:
      description: This API endpoint lists all existing styles of given type (i.e. *Image / Text / Logo*) available in the given Brand Kit.
      tags:
      - Brand Kits
      operationId: getStyleinBrandkit
      parameters:
      - name: accountId
        in: path
        required: true
        description: Unique identifier for the specific team
        schema:
          type: string
      - name: brandKitId
        in: path
        required: true
        description: Unique identifier for the specific brand-kit
        schema:
          type: integer
          format: int64
      - name: styleType
        in: path
        required: true
        description: Style type of the brand kit
        schema:
          type: string
          enum:
          - image
          - text
          - logo
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/QueryBrandKitStylesResponseBody'
      summary: Get Brand-kit styles
    post:
      description: 'Create styles within the Brand kit for content genration


        **Sample request body for creating Image / Logo style**

        ```json

        {

        "name": "Bikes style"

        }

        ```


        **Sample Request body for creating Text style**

        ```json

        {

        "name": "Text style",

        "subType": "BrandVoice",

        "data": {

        "brandValues": [

        {

        "name": "Innovation",

        "description": "We are committed to unlocking the power of technology to create personalized, on-brand images. Our innovative approach allows us to span diverse markets and significantly reduce production time."

        },

        {

        "name": "Efficiency",

        "description": "We are dedicated to amplifying our content factory initiative. Our focus on efficiency enables us to streamline our processes and deliver high-quality results."

        }

        ],

        "brandTones": [

        {

        "name": "Strategic",

        "description": "We are strategic in our ideation and refinement processes. Our focus on strategy ensures we deliver impactful and effective solutions."

        },

        {

        "name": "Empowering",

        "description": "We believe in the power of our solutions to transform and scale content standards across organizations."

        },

        {

        "name": "Visionary",

        "description": "From ideation to refinement, we are forward-thinking and innovative in our approach to content creation."

        }

        ],

        "brandRules": [

        {

        "type": "termsToAvoid",

        "value": [

        {

        "source": "replace",

        "replacement": ""

        },

        {

        "source": "typeface",

        "replacement": "TypeFace AI"

        }

        ]

        }

        ]

        }

        }

        ```


        **Note**: Only 1 text style and logo style could be created for each Brand Kit'
      tags:
      - Brand Kits
      operationId: createStyleinBrandkit
      parameters:
      - name: accountId
        in: path
        required: true
        description: Unique identifier for the specific team
        schema:
          type: string
      - name: brandKitId
        in: path
        required: true
        description: Unique identifier for the specific brand-kit
        schema:
          type: integer
          format: int64
      - name: styleType
        in: path
        required: true
        description: Style type of the brand kit
        schema:
          type: string
          enum:
          - image
          - text
          - logo
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateBrandKitStyleRequestBody'
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EntityModelBrandKitStyle'
      summary: Create Brand-kit style
  /profile-service/accounts/{accountId}/brand-kits/{brandKitId}/style-types/{styleType}/{styleId}/images:
    post:
      description: 'This API allows you to upload image in the brand kit of given style type. There are two different options available to do so:

        - `content`: The binary format content of image to be uploaded

        - `contentUrl`: Publicly accessible url of the required image


        **Sample curl request**

        ```bash

        curl --silent --location ''https://api-us.typeface.ai/profile-service/accounts/accountId/brand-kits/brandKitId/style-types/image/styleType/images'' \

        --header ''Authorization: Bearer '' \

        --form ''contentUrl="image url..."''

        ```


        **Note**: It is mandatory to train a Brand-kit image style before it can be utilized in content generation.'
      tags:
      - Brand Kits
      operationId: uploadImageInBrandKitStyle
      parameters:
      - name: accountId
        in: path
        required: true
        description: Unique identifier for the specific team
        schema:
          type: string
      - name: brandKitId
        in: path
        required: true
        description: Unique identifier for the specific brand-kit
        schema:
          type: integer
          format: int64
      - name: styleType
        in: path
        required: true
        description: Style type of the brand kit
        schema:
          type: string
          enum:
          - image
          - logo
      - name: styleId
        in: path
        required: true
        description: Unique identifier for the specific brand-kit style
        schema:
          type: integer
          format: int64
      requestBody:
        content:
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/UploadImageToBrandKitStyleRequestBody'
        required: true
      responses:
        '201':
          description: Created
      summary: Update or Manage Brand-kit style
  /profile-service/accounts/{accountId}/brand-kits/{brandKitId}/style-types/image/{styleId}/train:
    post:
      description: 'This API enables you to train a Brand-kit image style, which can then be applied within content generation.


        **Sample Request Body**

        ```json

        {

        "notificationEmail": "user.email@test.in"

        }

        ```


        **Note**: It is mandatory to train a Brand-kit image style before it can be utilized in content generation.'
      tags:
      - Brand Kits
      operationId: trainBrandKitImagestyle
      parameters:
      - name: accountId
        in: path
        required: true
        description: Unique identifier for the specific team
        schema:
          type: string
      - name: brandKitId
        in: path
        required: true
        description: Unique identifier for the specific brand-kit
        schema:
          type: integer
          format: int64
      - name: styleId
        in: path
        required: true
        description: Unique identifier for the specific brand-kit style
        schema:
          type: integer
          format: int64
      requestBody:
        content:
          application/json:
            schema:
              type: object
              required:
              - notificationEmail
              properties:
                notificationEmail:
                  type: string
      responses:
        '201':
          description: Created
      summary: Train Brand-kit image style
components:
  schemas:
    CreateBrandKitStyleRequestBody:
      type: object
      properties:
        name:
          type: string
        subType:
          type: string
          default: BRAND_KIT_LIBRARY
    LibraryDetails:
      type: object
      properties:
        id:
          $ref: '#/components/schemas/WorkspaceId'
        ownerId:
          type: string
        name:
          type: string
        image:
          $ref: '#/components/schemas/Image'
        createdAt:
          type: string
          format: date-time
        modifiedAt:
          type: string
          format: date-time
        discarded:
          type: boolean
        properties:
          $ref: '#/components/schemas/LibraryProperties'
        workspaceSubType:
          type: string
          enum:
          - ALCHEMIST
          - WEAVER
          - BATCH_OUTPUT
          - DEFAULT
          - BRAND_KIT_LIBRARY
          - DECORATION_LIBRARY
          - AUDIENCE_LIBRARY
          - LOGO_LIBRARY
    CreateLibraryResponseBody:
      type: object
      properties:
        libraryDetails:
          $ref: '#/components/schemas/LibraryDetails'
    JsonNode:
      type: object
    BlobId:
      type: object
      properties:
        id:
          type: integer
          format: int64
    UploadImageToBrandKitStyleRequestBody:
      type: object
      properties:
        contentUrl:
          type: string
          description: URL from where the content can be downloaded. This should be a pre-signed url
        content:
          type: string
          description: File to be uploaded. Either the contentUrl or content field should be passed in a single request
          format: binary
    GetLibrariesResponseBody:
      type: object
      properties:
        libraries:
          type: array
          items:
            $ref: '#/components/schemas/LibraryDetails'
    EntityModelBrandKitStyle:
      type: object
      properties:
        id:
          type: integer
          format: int64
        name:
          type: string
        isDefault:
          type: boolean
          deprecated: true
        createdAt:
          type: string
          format: date-time
        modifiedAt:
          type: string
          format: date-time
        createdBy:
          type: string
        modifiedBy:
          type: string
        type:
          type: string
          enum:
          - Text
          - Image
          - Palette
        subType:
          type: string
        data:
          $ref: '#/components/schemas/JsonNode'
        ref:
          type: string
        links:
          type: array
          items:
            $ref: '#/components/schemas/Link'
    LibraryProperties:
      type: object
      properties:
        hideBrandKit:
          type: boolean
        defaultTextStyleId:
          type: integer
          format: int64
        defaultImageStyleId:
          type: integer
          format: int64
        defaultColorPaletteId:
          type: integer
          format: int64
        defaultLanguage:
          type: string
    Image:
      type: object
      properties:
        workspaceId:
          $ref: '#/components/schemas/WorkspaceId'
        id:
          $ref: '#/components/schemas/EntityId'
        name:
          type: string
        sourcePath:
          type: string
        ingestionSource:
          type: string
        properties:
          $ref: '#/components/schemas/ImageProperties'
        createdAt:
          type: string
          format: date-time
        modifiedAt:
          type: string
          format: date-time
        renditionId:
          $ref: '#/components/schemas/EntityId'
        createdBy:
          type: string
        modifiedBy:
          type: string
    Link:
      type: object
      properties:
        rel:
          type: string
        href:
          type: string
        hreflang:
          type: string
        media:
          type: string
        title:
          type: string
        type:
          type: string
        deprecation:
          type: string
        profile:
          type: string
        name:
          type: string
    EntityId:
      type: object
      properties:
        id:
          type: integer
          format: int64
    WorkspaceId:
      type: object
      properties:
        id:
          type: integer
          format: int64
    ImageProperties:
      type: object
      properties:
        blobId:
          $ref: '#/components/schemas/BlobId'
    QueryBrandKitStylesResponseBody:
      type: object
      properties:
        styles:
          type: array
          items:
            $ref: '#/components/schemas/EntityModelBrandKitStyle'
        links:
          type: array
          items:
            $ref: '#/components/schemas/Link'
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
x-readme:
  explorer-enabled: true
  proxy-enabled: true