Typeface Brand Kits API
The Brand Kits API from Typeface — 6 operation(s) for brand kits.
The Brand Kits API from Typeface — 6 operation(s) for brand kits.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
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.curl "https://apis.io/api/v1/apis/typeface-brand-kits-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
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: 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