Skip to main content

Frontify Component

Frontify is a comprehensive brand management platform that enables organizations to create, manage, and distribute brand assets, guidelines, and digital content across teams and channels, streamlining brand consistency and collaboration.

Component key: frontify

Description

Frontify is a comprehensive brand management platform that enables organizations to create, manage, and distribute brand assets, guidelines, and digital content across teams and channels, streamlining brand consistency and collaboration.

Use the Frontify Component to create, manage, and distribute brand assets, guidelines, and digital content across teams and channels, streamlining brand consistency and collaboration.

API Documentation:

This component was built using the Frontify GraphQL API Reference.

Connections

OAuth 2.0

Documentation

  1. Go to Frontify and open the applications setting.
  2. Add a new application with the following configuration options:
  3. Redirect URIs: Enter https://oauth2.prismatic.io/callback for US based integrations.
    1. For integrations outside the US refer to this guide to find your region’s Callback URL

Personal Developer Token

Documentation

  1. To generate a Personal Developer token, navigate to https://company-domain/api/developer/token in your browser.
    1. Replace 'company-domain' in URL with the domain name of your company's site.
  2. Once generated, a developer can use the token until it is manually revoked.
  3. When creating a new token, give it a meaningful name. This is helpful if you later need to revoke a token and for you to keep track of where a given token is used.

Data Sources

Select Brand

Select a Brand belonging to the current Account. | key: brandDataSource | type: picklist


Select Library

Select a Library belonging to a certain Brand. | key: libraryDataSource | type: picklist


Select Library Asset

Select an Asset that belongs to a given Library. | key: libraryAssetDataSource | type: picklist


Select Workspace Project

Select a Workspace Project belonging to a certain Brand. | key: workspaceProjectDatasource | type: picklist


Select Workspace Project Asset

Select an Asset that belongs to a given Workspace Project. | key: workspaceProjectAssetDataSource | type: picklist


Actions

Create Asset

Create an Asset. | key: createAsset

{
"data": {
"createAsset": {
"job": {
"assetId": "eyJpZGVudGl..."
}
}
}
}

Create Attachment

Create a new Attachment. | key: createAttachment

{
"data": {
"createAttachment": {
"job": {
"attachmentId": "eyJpZGVudGl..."
}
}
}
}

Create Collection

Create a new Collection. Currently supported for Library type parent entities only. | key: createCollection

{
"data": {
"createCollection": {
"collection": {
"id": "eyJpZGV..."
}
}
}
}

Create Folder

Create a new Folder. | key: createFolder

{
"data": {
"createFolder": {
"folder": {
"id": "eyJpZGV..."
}
}
}
}

Delete Asset

Delete an Asset. | key: deleteAsset

{
"data": {
"deleteAsset": {
"id": "eyJpZGVud..."
}
}
}

Delete Attachment

Delete an existing Attachment. | key: deleteAttachment

{
"data": {
"deleteAttachment": {
"id": "eyJpZGVudGlmaWVyIjo5NDA3ODksInR5cGUiOiJhdHRhY2htZW50In0="
}
}
}

Delete Collection

Delete an existing Collection. | key: deleteCollection

{
"data": {
"deleteCollection": {
"id": "eyJpZGV..."
}
}
}

Delete Folders

Delete existing Folders. | key: deleteFolders

{
"data": {
"deleteFolders": {
"ids": [
"eyJpZGV..."
]
}
}
}

Get Account ID

Retrieve current Account ID. | key: getAccountId

{
"data": {
"account": {
"id": "eyJpZGVudGl..."
}
}
}

Get Asset

Retrieve an Asset by ID. | key: getAsset

{
"data": {
"asset": {
"id": "eyJpZGVudGlma...",
"creator": {
"id": "eyJpZGVudGlma...",
"name": "John Doe",
"email": "example@example.com"
},
"createdAt": "2024-09-17T23:54:57.000+00:00",
"modifier": {
"id": "eyJpZGVudGlma...",
"name": "John Doe",
"email": "example@example.com"
},
"modifiedAt": "2024-09-17T23:54:57.000+00:00",
"title": "Example Asset",
"description": "This is a sample description",
"attachments": [],
"externalId": null,
"tags": [],
"copyright": {
"status": "UNKNOWN",
"notice": ""
},
"expiresAt": null,
"licenses": [],
"status": "PROCESSING",
"relatedAssets": {
"total": 0
},
"comments": {
"total": 0
},
"customMetadata": [],
"location": {
"brand": {
"id": "eyJpZGVudGlma...",
"name": "Example Brand"
},
"library": null,
"workspaceProject": {
"id": "eyJpZGVudGlma...",
"name": "Sample Project: Example Cats"
},
"folder": null
}
}
}
}

Get Assets by IDs

Retrieve a list of Assets by IDs. | key: getAssetsByIds

{
"data": {
"assets": [
{
"id": "eyJpZGVudGlma...",
"creator": {
"id": "eyJpZGVudGlma...",
"name": "John Doe",
"email": "example@example.com"
},
"createdAt": "2024-09-05T19:49:25.000+00:00",
"modifier": {
"id": "eyJpZGVudGlma...",
"name": "John Doe",
"email": "example@example.com"
},
"modifiedAt": "2024-09-05T19:49:27.000+00:00",
"title": "Example Title 2",
"description": null,
"attachments": [
{
"id": "eyJpZGVudGlma...",
"creator": {
"id": "eyJpZGVudGlma...",
"name": "John Doe",
"email": "example@example.com"
},
"createdAt": "2024-09-17T23:42:43.000+00:00",
"modifier": null,
"modifiedAt": null,
"name": "Sample Attachment 1",
"filename": "example.png",
"type": "",
"externalId": null,
"extension": "png",
"size": 585728,
"downloadUrl": "https://example.com/example.png"
},
{
"id": "eyJpZGVudGlma...",
"creator": {
"id": "eyJpZGVudGlma...",
"name": "John Doe",
"email": "example@example.com"
},
"createdAt": "2024-09-18T17:20:22.000+00:00",
"modifier": null,
"modifiedAt": null,
"name": "Sample Attachment 2",
"filename": "example.png",
"type": "",
"externalId": "512",
"extension": "png",
"size": 585728,
"downloadUrl": "https://example.com/example.png"
}
],
"externalId": null,
"tags": [],
"copyright": {
"status": "UNKNOWN",
"notice": ""
},
"expiresAt": null,
"licenses": [],
"status": "FINISHED",
"relatedAssets": {
"total": 0
},
"comments": {
"total": 0
},
"customMetadata": [],
"location": {
"brand": {
"id": "eyJpZGVudGlma...",
"name": "Example Brand"
},
"library": {
"id": "eyJpZGVudGlma...",
"name": "Logos"
},
"workspaceProject": null,
"folder": null
}
}
]
}
}

Get Brand

Retrieve a Brand by its ID. | key: getBrand

{
"data": {
"brand": {
"id": "eyJpZGVudGlmaWVyIjoyNjE1MDUsInR5cGUiOiJicmFuZCJ9",
"name": "Monobrand",
"rgbaColor": {
"red": 130,
"green": 95,
"blue": 255,
"alpha": 1
},
"avatar": null,
"slug": "monobrand",
"customMetadataProperties": []
}
}
}

Get Current User

Get the current User. | key: getCurrentUser

{
"data": {
"currentUser": {
"id": "eyJpZGV...",
"email": "example@email.com",
"name": "John Doe",
"avatar": null
}
}
}

Get Library

Retrieve a Library by its ID. | key: getLibrary

{
"data": {
"library": {
"__typename": "LogoLibrary",
"id": "eyJpZGV...",
"name": "Logos",
"color": null,
"licenses": [],
"customMetadataProperties": []
}
}
}

Get Workspace Project

Retrieve a Workspace Project by its ID. | key: getWorkspaceProject

{
"data": {
"workspaceProject": {
"id": "eyJpZGVudGlmaWVyIjo0Mzk2MDUsInR5cGUiOiJwcm9qZWN0In0=",
"name": "Test Project: Siamese Cats",
"color": {
"red": 225,
"green": 255,
"blue": 191,
"alpha": 1
},
"licenses": [],
"collaborators": {
"users": {
"total": 1,
"hasNextPage": false,
"page": 1,
"limit": 25,
"items": [
{
"id": "eyJpZGVudGlmaWVyIjo2NjIyODcsInR5cGUiOiJ1c2VyIn0=",
"name": "TJ Tedrow",
"email": "components@prismatic.io"
}
]
}
},
"customMetadata": []
}
}
}

Install Webhook

Install a Webhook onto a Workspace Project or Library. | key: installWebhook

{
"data": {
"installProjectWebhook": {
"webhook": {
"id": "eyJpZGVudGlmaWVyIjo4OSwidHlwZSI6IndlYmhvb2sifQ==",
"creator": {
"id": "eyJpZGVudGlmaWVyIjoxMjMsInR5cGUiOiJ1c2VyIn0=",
"email": "example@example.com",
"name": "John Doe"
},
"createdAt": "2024-09-19T13:18:52.000+00:00",
"name": "Example Webhook",
"notificationUrl": "https://hooks.example.io/trigger/SW5zdGFuY2VGbG93Q29uZmlnOjEyMzQ1NmUyLWM1M2QtNGUzOC04ZGY3LTE2ODRjYTJmZmVkZA==",
"secret": "AbcD123SecretKeyExample"
}
}
}
}

List Asset Comments

Retrieve a list of Comments relating to a given Asset. | key: listAssetComments

{
"data": {
"asset": {
"id": "eyJpZGV...",
"externalId": null,
"comments": {
"total": 1,
"page": 1,
"limit": 25,
"hasNextPage": false,
"items": [
{
"id": "eyJpZGV...",
"creator": {
"id": "eyJpZGV...",
"email": "example@email.com",
"name": "John Doe"
},
"createdAt": "2024-09-06T15:49:47.000+00:00",
"modifier": null,
"modifiedAt": null,
"content": "Test comment \n\n",
"mentionedUsers": [],
"isResolved": false,
"replies": {
"total": 0,
"hasNextPage": false,
"page": 1,
"limit": 50,
"items": []
},
"marking": null
}
]
}
}
}
}

List Brand Libraries

Retrieve list of Libraries belonging to a Brand. For full Library details, please use the 'Get Library' action. | key: listBrandLibraries

{
"data": {
"brand": {
"id": "eyJpZGV...",
"name": "Monobrand",
"libraries": {
"total": 4,
"hasNextPage": false,
"page": 1,
"limit": 25,
"items": [
{
"id": "eyJpZGV...",
"name": "Logos"
}
]
}
}
}
}

List Brand Workspace Projects

Retrieve list of Workspace Projects belonging to a Brand. For full details, please use the 'Get Workspace Project' action. | key: listBrandWorkspaceProjects

{
"data": {
"brand": {
"id": "eyJpZGV...",
"name": "Monobrand",
"workspaceProjects": {
"total": 2,
"limit": 25,
"page": 1,
"hasNextPage": false,
"items": [
{
"id": "eyJpZGV...",
"name": "Test Project: Siamese Cats"
}
]
}
}
}
}

List Brands

Retrieve Brand list for current Account. | key: listBrands

{
"data": {
"brands": [
{
"id": "eyJpZGVudGlmaWVyIjoyNjE1MDUsInR5cGUiOiJicmFuZCJ9",
"name": "Monobrand",
"rgbaColor": {
"red": 130,
"green": 95,
"blue": 255,
"alpha": 1
},
"avatar": null,
"slug": "monobrand",
"customMetadataProperties": []
}
]
}
}

List Library Assets

Retrieve a list of Assets belonging to a Library. | key: listLibraryAssets

{
"data": {
"library": {
"id": "eyJpZGV...",
"name": "Example Library",
"assets": {
"limit": 25,
"page": 1,
"total": 1,
"hasNextPage": false,
"items": [
{
"id": "eyJpZGV...",
"creator": {
"id": "eyJpZGV...",
"name": "John Doe",
"email": "john@example.com"
},
"createdAt": "2024-09-05T19:49:25.000+00:00",
"modifier": {
"id": "eyJpZGV...",
"name": "John Doe",
"email": "john@example.com"
},
"modifiedAt": "2024-09-05T19:49:27.000+00:00",
"title": "example_title_1",
"description": null,
"attachments": [
{
"id": "eyJpZGV...",
"creator": {
"id": "eyJpZGV...",
"name": "John Doe",
"email": "john@example.com"
},
"createdAt": "2024-09-17T23:42:43.000+00:00",
"modifier": null,
"modifiedAt": null,
"name": "Example attachment",
"filename": "example.png",
"type": "",
"externalId": null,
"extension": "png",
"size": 585728,
"downloadUrl": "https://example.com/file1.png"
}
],
"externalId": null,
"tags": [],
"copyright": {
"status": "UNKNOWN",
"notice": ""
},
"expiresAt": null,
"licenses": [],
"status": "FINISHED",
"relatedAssets": {
"total": 0
},
"comments": {
"total": 0
},
"customMetadata": [],
"location": {
"brand": {
"id": "eyJpZGV...",
"name": "ExampleBrand"
},
"library": {
"id": "eyJpZGV...",
"name": "Example Library"
},
"workspaceProject": null,
"folder": null
}
}
]
}
}
}
}

List Library Collaborators

Retrieve a list of Collaborators belonging to a Library. | key: listLibraryCollaborators

{
"data": {
"library": {
"id": "eyJpZGV...",
"name": "Example Library",
"collaborators": {
"users": {
"total": 1,
"page": 1,
"limit": 25,
"hasNextPage": false,
"items": [
{
"id": "eyJpZGV...",
"email": "john@example.com",
"name": "John Doe"
}
]
}
}
}
}
}

List Library Collections

Retrieve a list of Collections belonging to a Library. | key: listLibraryCollections

{
"data": {
"library": {
"id": "eyJpZGV...",
"name": "Logos",
"collections": {
"total": 1,
"page": 1,
"limit": 25,
"hasNextPage": false,
"items": [
{
"id": "eyJpZGV...",
"name": "Main Logos",
"assets": {
"total": 4,
"page": 1,
"limit": 25,
"hasNextPage": false,
"items": [
{
"id": "eyJpZGV..."
}
]
}
}
]
}
}
}
}

List Library Folders

Retrieve a list of the top-level folders in a Library. To browse further, use the Raw Request action. | key: listLibraryFolders

{
"data": {
"library": {
"id": "eyJpZGV...",
"name": "Logos",
"browse": {
"folders": {
"limit": 25,
"page": 1,
"hasNextPage": false,
"total": 0,
"items": []
}
}
}
}
}

Retrieve a list of assets that relate to a specific Asset. | key: listRelatedAssets

{
"data": {
"asset": {
"id": "eyJpZGV...",
"externalId": null,
"relatedAssets": {
"total": 0,
"hasNextPage": false,
"page": 1,
"limit": 25,
"items": []
}
}
}
}

List User Groups

Retrieve UserGroups list for the current Account. | key: listUserGroups

{
"data": {
"account": {
"id": "eyJpZGVudGlmaWVyIjoyNjczMDcsInR5cGUiOiJhY2NvdW50In0=",
"userGroups": {
"total": 0,
"page": 1,
"limit": 25,
"hasNextPage": false,
"items": []
}
}
}
}

List Users

Retrieve Users list for the current Account. | key: listUsers

{
"data": {
"account": {
"users": {
"total": 1,
"page": 1,
"limit": 25,
"hasNextPage": false,
"items": [
{
"id": "eyJpZGVudGlmaWVyIjo2NjIyODcsInR5cGUiOiJ1c2VyIn0=",
"email": "components@prismatic.io",
"name": "TJ Tedrow",
"avatar": null
}
]
}
}
}
}

List Webhooks

Retrieve WebhookItems related to current Account. | key: listWebhooks

{
"data": {
"webhooks": {
"total": 1,
"page": 1,
"limit": 25,
"hasNextPage": false,
"items": [
{
"id": "abc123...",
"creator": {
"id": "user456...",
"name": "John Doe",
"email": "john.doe@example.com"
},
"createdAt": "2024-09-19T13:18:52.000+00:00",
"name": "Sample Webhook",
"notificationUrl": "https://example.com/trigger/webhook...",
"secret": "sampleSecretKey...",
"__typename": "ProjectWebhook",
"project": {
"id": "proj789..."
}
}
]
}
}
}

List Workspace Project Assets

Retrieve a list of Assets belonging to a Workspace Project. | key: listWorkspaceProjectAssets

{
"data": {
"workspaceProject": {
"id": "eyJpZG...==",
"name": "Example Project: Dogs",
"assets": {
"limit": 25,
"page": 1,
"total": 1,
"hasNextPage": false,
"items": [
{
"id": "eyJpZG...==",
"creator": {
"id": "eyJpZG...==",
"name": "John Doe",
"email": "john.doe@example.com"
},
"createdAt": "2024-09-17T23:36:00.000+00:00",
"modifier": {
"id": "eyJpZG...==",
"name": "John Doe",
"email": "john.doe@example.com"
},
"modifiedAt": "2024-09-19T10:49:21.000+00:00",
"title": "Sample Asset",
"description": "Sample description",
"attachments": [],
"externalId": null,
"tags": [],
"copyright": {
"status": "UNKNOWN",
"notice": ""
},
"expiresAt": null,
"licenses": [],
"status": "FINISHED",
"relatedAssets": {
"total": 0
},
"comments": {
"total": 0
},
"customMetadata": [],
"location": {
"brand": {
"id": "eyJpZG...==",
"name": "ExampleBrand"
},
"library": null,
"workspaceProject": {
"id": "eyJpZG...==",
"name": "Example Project: Dogs"
},
"folder": {
"id": "eyJpZG...==",
"name": "Sample Folder"
}
}
}
]
}
}
}
}

List Workspace Project Folders

Retrieve a list of the top-level folders in a Workspace Project. To browse further, use the Raw Request action. | key: listWorkspaceProjectFolders

{
"data": {
"workspaceProject": {
"id": "eyJpZGV...",
"name": "Test Project",
"browse": {
"folders": {
"limit": 25,
"page": 1,
"hasNextPage": false,
"total": 1,
"items": [
{
"id": "eyJpZGV...",
"name": "A Parent Folder",
"creator": {
"id": "eyJpZGV...",
"name": "John Doe",
"email": "example@email.com"
},
"createdAt": "2024-09-06T13:18:00.000+00:00",
"modifier": null,
"modifiedAt": null,
"breadcrumbs": [],
"folders": {
"total": 0
}
}
]
}
}
}
}
}

Move Assets

Move existing Asset item(s) to the given Library, Workspace or Folder destination. Only moves within the same Library/Workspace are supported by this operation. | key: moveAssets

{
"data": {
"moveAssets": {
"assets": [
{
"id": "eyJpZGV..."
}
]
}
}
}

Move Folders

Move existing Folder item(s) to the given Library, Workspace or Folder destination. Only moves within the same Library/Workspace are supported by this operation. | key: moveFolders

{
"data": {
"moveFolders": {
"ids": [
"eyJpZGV..."
]
}
}
}

Raw GraphQL Request

Send a raw GraphQL request to Frontify. | key: rawRequest


Uninstall Webhook

Uninstall a Webhook. | key: uninstallWebhook

{
"data": {
"uninstallWebhook": {
"webhook": {
"id": "eyJpZGV..."
}
}
}
}

Update Asset

Update an existing Asset. | key: updateAsset

{
"data": {
"updateAsset": {
"asset": {
"id": "eyJpZGVudGlmaWVyIjoxMDEzOTI0MSwidHlwZSI6ImFzc2V0In0="
}
}
}
}

Update Collection

Update an existing Collection. | key: updateCollection

{
"data": {
"updateCollection": {
"collection": {
"id": "eyJpZGV..."
}
}
}
}

Update Folder

Update an existing Folder. | key: updateFolder

{
"data": {
"updateFolder": {
"folder": {
"id": "eyJpZGV..."
}
}
}
}

Upload File

Upload a new file. | key: uploadFile

{
"data": {
"uploadFile": {
"id": "eyJpZGVudGl...",
"urls": [
"https://s3.amazonaws.com/frontify-cloud-files-us/frontify/file..."
]
}
}
}