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 · Changelog ↓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
key: frontifyOAuth2- Go to Frontify and open the applications setting.
- Add a new application with the following configuration options:
- Redirect URIs: Enter
https://oauth2.prismatic.io/callback.
| Input | Notes | Example |
|---|---|---|
| Authorize URL | The Authorization URL for Frontify. | https://my-example-domain.frontify.com/api/oauth/authorize |
| Base URL | The base URL of the Frontify API. This URL should be provided by the service provider. | https://my-example-domain.frontify.com |
| Client ID | ||
| Client Secret | ||
| Scopes | A list of scopes, combined by a space. At least | |
| State | The state is a parameter controlled by you and used to preserves some state objects set by the client in the Authorization request and makes it available to the client in the response. | testStateA@s432! |
| Token URL | The Token URL for Frontify. | https://my-example-domain.frontify.com/api/oauth/accesstoken |
Personal Developer Token
key: personalDeveloperToken- To generate a Personal Developer token, navigate to
https://company-domain/api/developer/tokenin your browser.- Replace
company-domainin URL with the domain name of your company's site.
- Replace
- Once generated, a developer can use the token until it is manually revoked.
- 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.
| Input | Notes | Example |
|---|---|---|
| Base URL | The base URL of the Frontify API. This URL should be provided by the service provider. | https://my-example-domain.frontify.com |
| Token | The personal developer token is used to authenticate with the Frontify API. This token should be provided by the service provider. |
Data Sources
Select Brand
Select a Brand belonging to the current Account. | key: brandDataSource | type: picklist
| Input | Notes | Example |
|---|---|---|
| Frontify Connection |
Select Library
Select a Library belonging to a certain Brand. | key: libraryDataSource | type: picklist
| Input | Notes | Example |
|---|---|---|
| Brand ID | ID of the Brand entity. | eyJpZG... |
| Frontify Connection |
Select Library Asset
Select an Asset that belongs to a given Library. | key: libraryAssetDataSource | type: picklist
| Input | Notes | Example |
|---|---|---|
| Frontify Connection | ||
| Library ID | ID of the Library entity. | eyJpZG... |
Select Library Collection
A picklist of collections belonging to a Library. | key: selectLibraryCollection | type: picklist
| Input | Notes | Example |
|---|---|---|
| Frontify Connection | ||
| Library ID | ID of the Library entity. | eyJpZG... |
{
"result": [
{
"label": "My Collection",
"key": "eyJpZGVudGlmaWVyIjoiMSJ9"
}
]
}
Select Library Folder
A picklist of top-level folders in a Library. | key: selectLibraryFolder | type: picklist
| Input | Notes | Example |
|---|---|---|
| Frontify Connection | ||
| Library ID | ID of the Library entity. | eyJpZG... |
{
"result": [
{
"label": "My Folder",
"key": "eyJpZGVudGlmaWVyIjoiMSJ9"
}
]
}
Select Related Asset
A picklist of assets related to a specific asset. | key: selectRelatedAsset | type: picklist
| Input | Notes | Example |
|---|---|---|
| Asset ID | ID of the Asset entity. | eyJpZG... |
| Frontify Connection |
{
"result": [
{
"label": "My Asset",
"key": "eyJpZGVudGlmaWVyIjoiMSJ9"
}
]
}
Select Webhook
A picklist of webhooks in the current account. | key: selectWebhook | type: picklist
| Input | Notes | Example |
|---|---|---|
| Frontify Connection |
{
"result": [
{
"label": "My Webhook",
"key": "eyJpZGVudGlmaWVyIjoiMSJ9"
}
]
}
Select Workspace Project
Select a Workspace Project belonging to a certain Brand. | key: workspaceProjectDatasource | type: picklist
| Input | Notes | Example |
|---|---|---|
| Brand ID | ID of the Brand entity. | eyJpZG... |
| Frontify Connection |
Select Workspace Project Asset
Select an Asset that belongs to a given Workspace Project. | key: workspaceProjectAssetDataSource | type: picklist
| Input | Notes | Example |
|---|---|---|
| Frontify Connection | ||
| Workspace Project ID | ID of the Workspace Project entity. | eyJpZG... |
Select Workspace Project Folder
A picklist of top-level folders in a Workspace Project. | key: selectWorkspaceProjectFolder | type: picklist
| Input | Notes | Example |
|---|---|---|
| Frontify Connection | ||
| Workspace Project ID | ID of the Workspace Project entity. | eyJpZG... |
{
"result": [
{
"label": "My Folder",
"key": "eyJpZGVudGlmaWVyIjoiMSJ9"
}
]
}
Actions
Create Asset
Create an Asset. | key: createAsset
| Input | Notes | Example |
|---|---|---|
| Author | Represents the Author of the Asset. | Photographer Name |
| Frontify Connection | ||
| Copyright Notice | Asset copyright notice. Supports medium text length. | © 2021 My Company |
| Copyright Status | Asset copyright status. | UNKNOWN |
| Description | Asset description. | Some description |
| Directory | An array of strings representing the directory, if a folder does not exist, it is created. Important: Cannot be used in conjunction with parentId that is from a Folder. | My Folder |
| Expires At | Asset will expire once the defined date is reached. | 2001-12-31T22:10:30.000+00:00 |
| External ID | Asset external ID. | 12345 |
| File ID | A file's Signed ID, returned by the Upload File action. For more information, see: https://developer.frontify.com/document/1367#/deep-dive/upload-file-create-asset | eyJpZG... |
| Parent ID | The parent Id, where the Asset should be located in. Should either be a Library, WorkspaceProject or Folder Id. Important: Cannot be used in conjunction with directory if the Id is from a Folder. | eyJpZG... |
| Skip File Metadata | Skip file's EXIF metadata. When true, it will ignore all file metadata contents. | false |
| Tags | List of tags to create with the Asset. | tag1 |
| Title | Asset title or display name. | My Asset |
{
"data": {
"createAsset": {
"job": {
"assetId": "eyJpZGVudGl..."
}
}
}
}
Create Attachment
Create a new Attachment. | key: createAttachment
| Input | Notes | Example |
|---|---|---|
| Frontify Connection | ||
| External ID | Attachment external ID. | 12345 |
| File ID | The signed ID returned by the Upload File action. | eyJpZG... |
| Name | Attachment name or display name. | My Attachment |
| Parent ID | The parent ID of the attachment. For parents of Asset type only. | eyJpZG... |
{
"data": {
"createAttachment": {
"job": {
"attachmentId": "eyJpZGVudGl..."
}
}
}
}
Create Collection
Create a new Collection. Currently supported for Library type parent entities only. | key: createCollection
| Input | Notes | Example |
|---|---|---|
| Frontify Connection | ||
| Name | Collection name. | My Collection |
| Parent ID | ID of the parent Library entity. | eyJpZG... |
{
"data": {
"createCollection": {
"collection": {
"id": "eyJpZGV..."
}
}
}
}
Create Folder
Create a new Folder. | key: createFolder
| Input | Notes | Example |
|---|---|---|
| Frontify Connection | ||
| Description | Folder description. | This is my folder. |
| Name | Folder name. | My Folder |
| Parent ID | ID of the parent. | eyJpZGVud... |
{
"data": {
"createFolder": {
"folder": {
"id": "eyJpZGV..."
}
}
}
}
Delete Asset
Delete an Asset. | key: deleteAsset
| Input | Notes | Example |
|---|---|---|
| Asset ID | ID of the Asset to delete. | eyJpZG... |
| Frontify Connection |
{
"data": {
"deleteAsset": {
"id": "eyJpZGVud..."
}
}
}
Delete Attachment
Delete an existing Attachment. | key: deleteAttachment
| Input | Notes | Example |
|---|---|---|
| Attachment ID | ID of the Attachment to delete. | eyJpZG... |
| Frontify Connection |
{
"data": {
"deleteAttachment": {
"id": "eyJpZGVudGlmaWVyIjo5NDA3ODksInR5cGUiOiJhdHRhY2htZW50In0="
}
}
}
Delete Collection
Delete an existing Collection. | key: deleteCollection
| Input | Notes | Example |
|---|---|---|
| Brand ID | ID of the Brand entity. | eyJpZG... |
| Collection ID | ID of the Collection to delete. | eyJpZG... |
| Frontify Connection | ||
| Library ID | ID of the Library entity. | eyJpZG... |
{
"data": {
"deleteCollection": {
"id": "eyJpZGV..."
}
}
}
Delete Folders
Delete existing Folders. | key: deleteFolders
| Input | Notes | Example |
|---|---|---|
| Brand ID | ID of the Brand entity. | eyJpZG... |
| Frontify Connection | ||
| Folder IDs | ID of the Folder to delete. | eyJpZGVud... |
| Library ID | ID of the Library entity. | eyJpZG... |
{
"data": {
"deleteFolders": {
"ids": [
"eyJpZGV..."
]
}
}
}
Get Account ID
Retrieve current Account ID. | key: getAccountId
| Input | Notes | Example |
|---|---|---|
| Frontify Connection |
{
"data": {
"account": {
"id": "eyJpZGVudGl..."
}
}
}
Get Asset
Retrieve an Asset by ID. | key: getAsset
| Input | Notes | Example |
|---|---|---|
| Asset ID | ID of the Asset to retrieve. | eyJpZG... |
| Frontify Connection |
{
"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
| Input | Notes | Example |
|---|---|---|
| Asset IDs | List of Asset IDs to retrieve. | eyJpZG... |
| Frontify Connection |
{
"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
| Input | Notes | Example |
|---|---|---|
| Brand ID | ID of the Brand to retrieve. | eyJpZG... |
| Frontify Connection |
{
"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
| Input | Notes | Example |
|---|---|---|
| Frontify Connection |
{
"data": {
"currentUser": {
"id": "eyJpZGV...",
"email": "example@email.com",
"name": "John Doe",
"avatar": null
}
}
}
Get Library
Retrieve a Library by its ID. | key: getLibrary
| Input | Notes | Example |
|---|---|---|
| Brand ID | ID of the Brand entity. | eyJpZG... |
| Frontify Connection | ||
| Library ID | ID of the Library entity. | eyJpZG... |
{
"data": {
"library": {
"__typename": "LogoLibrary",
"id": "eyJpZGV...",
"name": "Logos",
"color": null,
"licenses": [],
"customMetadataProperties": []
}
}
}
Get Workspace Project
Retrieve a Workspace Project by its ID. | key: getWorkspaceProject
| Input | Notes | Example |
|---|---|---|
| Frontify Connection | ||
| Workspace Project ID | ID of the Workspace Project entity. | eyJpZG... |
{
"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": "Jane Anderson",
"email": "example@company.com"
}
]
}
},
"customMetadata": []
}
}
}
Install Webhook
Install a Webhook onto a Workspace Project or Library. | key: installWebhook
| Input | Notes | Example |
|---|---|---|
| Frontify Connection | ||
| Webhook Name | The name of the Webhook. | My Webhook |
| Notification URL | The URL that the Webhook will send notifications to when triggered. | https://example.com/webhook |
| Workspace Project ID or Library ID | The ID of the Workspace Project or Library to attach the Webhook to. | eyJpZGV... |
{
"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
| Input | Notes | Example |
|---|---|---|
| Asset ID | ID of the Asset to retrieve comments for. | eyJpZG... |
| Frontify Connection | ||
| Fetch All | If true, it will fetch all records and ignore parameters like page and page size. | false |
| Page Size | How many items to show per page. | 25 |
| Page | Page number | 1 |
| Reply Limit | The limit of how may replies to show per comment. | 50 |
{
"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
| Input | Notes | Example |
|---|---|---|
| Brand ID | ID of the Brand to retrieve Libraries for. | eyJpZG... |
| Frontify Connection | ||
| Fetch All | If true, it will fetch all records and ignore parameters like page and page size. | false |
| Page Size | How many items to show per page. | 25 |
| Page | Page number | 1 |
{
"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
| Input | Notes | Example |
|---|---|---|
| Brand ID | ID of the Brand to retrieve Workspace Projects for. | eyJpZG... |
| Frontify Connection | ||
| Fetch All | If true, it will fetch all records and ignore parameters like page and page size. | false |
| Page Size | How many items to show per page. | 25 |
| Page | Page number | 1 |
{
"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
| Input | Notes | Example |
|---|---|---|
| Frontify Connection |
{
"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
| Input | Notes | Example |
|---|---|---|
| External ID | Limit the result set by the external ID of an Asset. | 123456 |
| Search Query | Limit the result set by the search term. | some search term |
| Brand ID | ID of the Brand entity. | eyJpZG... |
| Frontify Connection | ||
| Fetch All | If true, it will fetch all records and ignore parameters like page and page size. | false |
| Library ID | ID of the Library entity. | eyJpZG... |
| Page Size | How many items to show per page. | 25 |
| Page | Page number | 1 |
{
"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
| Input | Notes | Example |
|---|---|---|
| Brand ID | ID of the Brand entity. | eyJpZG... |
| Frontify Connection | ||
| Fetch All | If true, it will fetch all records and ignore parameters like page and page size. | false |
| Library ID | ID of the Library entity. | eyJpZG... |
| Page Size | How many items to show per page. | 25 |
| Page | Page number | 1 |
{
"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
| Input | Notes | Example |
|---|---|---|
| Page Size (Assets) | Assets are paginated within collections. Use this to control the nested Asset pagination. | 50 |
| Page (Assets) | Assets are paginated within collections. Use this to control the nested Asset pagination. | 1 |
| Brand ID | ID of the Brand entity. | eyJpZG... |
| Frontify Connection | ||
| Fetch All | If true, it will fetch all top-level Collections records and ignore parameters like page and page size. This toggle will not affect the Asset pagination within each Collection. | false |
| Library ID | ID of the Library entity. | eyJpZG... |
| Page Size | How many items to show per page. | 25 |
| Page | Page number | 1 |
{
"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
| Input | Notes | Example |
|---|---|---|
| Brand ID | ID of the Brand entity. | eyJpZG... |
| Frontify Connection | ||
| Fetch All | If true, it will fetch all records and ignore parameters like page and page size. | false |
| Library ID | ID of the Library entity. | eyJpZG... |
| Page Size | How many items to show per page. | 25 |
| Page | Page number | 1 |
{
"data": {
"library": {
"id": "eyJpZGV...",
"name": "Logos",
"browse": {
"folders": {
"limit": 25,
"page": 1,
"hasNextPage": false,
"total": 0,
"items": []
}
}
}
}
}
List Related Assets
Retrieve a list of assets that relate to a specific Asset. | key: listRelatedAssets
| Input | Notes | Example |
|---|---|---|
| Asset ID | ID of the Asset to retrieve related assets for. | eyJpZG... |
| Frontify Connection | ||
| Fetch All | If true, it will fetch all records and ignore parameters like page and page size. | false |
| Page Size | How many items to show per page. | 25 |
| Page | Page number | 1 |
{
"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
| Input | Notes | Example |
|---|---|---|
| Frontify Connection | ||
| Fetch All | If true, it will fetch all UserGroups and ignore parameters like page and page size. This toggle will not affect the User pagination within each UserGroup. | false |
| Page Size | How many items to show per page. | 25 |
| Page | Page number | 1 |
| Page (users) | For paging through users belonging to a userGroup. | 1 |
| Limit (user pages) | How many records to show per page of users. | 25 |
{
"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
| Input | Notes | Example |
|---|---|---|
| Frontify Connection | ||
| Fetch All | If true, it will fetch all records and ignore parameters like page and page size. | false |
| Page Size | How many items to show per page. | 25 |
| Page | Page number | 1 |
{
"data": {
"account": {
"users": {
"total": 1,
"page": 1,
"limit": 25,
"hasNextPage": false,
"items": [
{
"id": "eyJpZGVudGlmaWVyIjo2NjIyODcsInR5cGUiOiJ1c2VyIn0=",
"email": "example@company.com",
"name": "Jane Anderson",
"avatar": null
}
]
}
}
}
}
List Webhooks
Retrieve WebhookItems related to current Account. | key: listWebhooks
| Input | Notes | Example |
|---|---|---|
| Frontify Connection | ||
| Fetch All | If true, it will fetch all records and ignore parameters like page and page size. | false |
| Page Size | How many items to show per page. | 25 |
| Page | Page number | 1 |
{
"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
| Input | Notes | Example |
|---|---|---|
| External ID | Limit the result set by the external ID of an Asset. | 123456 |
| Search Query | Limit the result set by the search term. | some search term |
| Frontify Connection | ||
| Fetch All | If true, it will fetch all records and ignore parameters like page and page size. | false |
| Page Size | How many items to show per page. | 25 |
| Page | Page number | 1 |
| Workspace Project ID | ID of the Workspace Project entity. | eyJpZG... |
{
"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
| Input | Notes | Example |
|---|---|---|
| Frontify Connection | ||
| Fetch All | If true, it will fetch all records and ignore parameters like page and page size. | false |
| Page Size | How many items to show per page. | 25 |
| Page | Page number | 1 |
| Workspace Project ID | ID of the Workspace Project entity. | eyJpZG... |
{
"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
| Input | Notes | Example |
|---|---|---|
| Asset IDs | IDs of the Assets to move. | eyJpZG... |
| Frontify Connection | ||
| Destination ID | Only allows Library, Workspace, or Folder IDs. | eyJpZG... |
{
"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
| Input | Notes | Example |
|---|---|---|
| Brand ID | ID of the Brand entity. | eyJpZG... |
| Frontify Connection | ||
| Destination ID | Only allows Library, Workspace, or Folder IDs. | eyJpZGVud... |
| Folder IDs | ID of the Folder items to move. | eyJpZGVud... |
| Library ID | ID of the Library entity. | eyJpZG... |
{
"data": {
"moveFolders": {
"ids": [
"eyJpZGV..."
]
}
}
}
Raw GraphQL Request
Send a raw GraphQL request to Frontify. | key: rawRequest
| Input | Notes | Example |
|---|---|---|
| Frontify Connection | ||
| Query or Mutation | Provide a query or mutation for the GraphQL request. | |
| GraphQL Variables | These should match the variables of your query or mutation. | {"key":"libraryId","value":"eyJpZGVudGl..."} |
Uninstall Webhook
Uninstall a Webhook. | key: uninstallWebhook
| Input | Notes | Example |
|---|---|---|
| Frontify Connection | ||
| Webhook ID | The ID of the Webhook to uninstall. | eyJpZGV... |
{
"data": {
"uninstallWebhook": {
"webhook": {
"id": "eyJpZGV..."
}
}
}
}
Update Asset
Update an existing Asset. | key: updateAsset
| Input | Notes | Example |
|---|---|---|
| Asset ID | ID of the Asset to update. | eyJpZG... |
| Author | Represents the Author of the Asset. | Photographer Name |
| Frontify Connection | ||
| Copyright Notice | Asset copyright notice. Supports medium text length. | © 2021 My Company |
| Copyright Status | Asset copyright status. | UNKNOWN |
| Description | Asset description. | Some description |
| Expires At | Asset will expire once the defined date is reached. | 2001-12-31T22:10:30.000+00:00 |
| File Name | Asset filename, including extension. | my-file.jpg |
| Title | Asset title or display name. | My Asset |
{
"data": {
"updateAsset": {
"asset": {
"id": "eyJpZGVudGlmaWVyIjoxMDEzOTI0MSwidHlwZSI6ImFzc2V0In0="
}
}
}
}
Update Collection
Update an existing Collection. | key: updateCollection
| Input | Notes | Example |
|---|---|---|
| Brand ID | ID of the Brand entity. | eyJpZG... |
| Collection ID | ID of the Collection to update. | eyJpZG... |
| Frontify Connection | ||
| Library ID | ID of the Library entity. | eyJpZG... |
| Name | Collection name. | My Collection |
{
"data": {
"updateCollection": {
"collection": {
"id": "eyJpZGV..."
}
}
}
}
Update Folder
Update an existing Folder. | key: updateFolder
| Input | Notes | Example |
|---|---|---|
| Brand ID | ID of the Brand entity. | eyJpZG... |
| Frontify Connection | ||
| Description | Folder description. | This is my folder. |
| Folder ID | ID of the Folder to update. | eyJpZGVud... |
| Library ID | ID of the Library entity. | eyJpZG... |
| Name | Folder name. | My Folder |
{
"data": {
"updateFolder": {
"folder": {
"id": "eyJpZGV..."
}
}
}
}
Upload File
Upload a new file. | key: uploadFile
| Input | Notes | Example |
|---|---|---|
| Chunk Size | File chunk size in bytes. Value must be integer between 5MB and 1GB. | 104857600 |
| Frontify Connection | ||
| File Name | File name. | my-file.jpg |
| Size | File size in bytes. | 104857600 |
{
"data": {
"uploadFile": {
"id": "eyJpZGVudGl...",
"urls": [
"https://s3.amazonaws.com/frontify-cloud-files-us/frontify/file..."
]
}
}
}
Changelog
2026-03-27
Added optional Brand ID and Library ID inputs to folder and collection actions to support the inline datasource dependency chain (Brand → Library → Folder/Collection):
- Delete Folders
- Move Folders
- Update Folder
- Delete Collection
- Update Collection
- Get Library
- List Library Assets
- List Library Collaborators
- List Library Collections
- List Library Folders
2026-02-26
Added inline data sources for workspace project folders, webhooks, related assets, library folders, and library collections to enable dynamic dropdown selection