Frontify icon

Frontify

Interact with Frontify

Overview

This node integrates with the Frontify platform to manage digital assets within libraries. Specifically, the Asset - Create operation allows users to upload new files (assets) into a chosen library and folder in Frontify. It supports uploading either binary files or text content as assets, with options to add metadata such as descriptions, external IDs, and whether to skip EXIF metadata extraction.

Common scenarios for this node include:

  • Automating the upload of images, documents, or other media files into Frontify libraries.
  • Organizing assets into specific folders programmatically.
  • Adding descriptive metadata or external references to assets during upload.
  • Skipping EXIF metadata extraction when not needed or to speed up processing.

Practical example:

  • A marketing team automatically uploads newly created brand images from their design tool into the correct Frontify library and folder, including descriptions and external IDs for tracking.

Properties

Name Meaning
Authentication Means of authenticating with Frontify; currently supports "Access Token".
Library The destination library where the asset will be uploaded. Options are dynamically loaded from available libraries in Frontify.
File Name The name of the file to upload, including its extension (e.g., example.jpg). Required.
Folder The folder path inside the library where the asset should be placed. Use empty string or / for the root folder. Optional.
Description A textual description of the asset. Optional.
External ID An optional external identifier for the asset, useful for linking with external systems.
Skip EXIF metadata Boolean flag indicating whether to skip extracting EXIF metadata from the file. When true, all file metadata contents are ignored. Optional.
Binary File Boolean flag indicating if the file data should be taken from a binary input field (true) or from a text input (false). Defaults to true.
File Content The text content of the file to upload, used only if Binary File is set to false.
Input Binary Field The name of the binary property containing the file data to upload, used only if Binary File is true. Defaults to "data". Required if using binary upload.
Additional Options Collection of extra options:
- Token: an optional token string (password type).
- Domain: the Frontify domain URL, defaulting to https://example.frontify.com.

Output

The output JSON contains details about the upload process and the created asset:

  • init: Information about the initialized upload, including the generated file ID and upload URLs.
  • upload: Result of the HTTP PUT request that uploads the binary or text file content to the provided URL.
  • asset: Contains the job information related to the created asset, including the assigned asset ID.

The node does not output binary data itself but handles binary input for uploading.

Dependencies

  • Requires an API authentication token credential to authenticate requests to Frontify.
  • Uses GraphQL API calls to Frontify for querying libraries and creating assets.
  • Requires n8n's HTTP Request helper to perform the actual file upload via PUT to a pre-signed URL.
  • The getLibraries method dynamically loads available libraries from Frontify for user selection.

Troubleshooting

  • File Upload Failures: If the upload HTTP PUT request fails, ensure the binary data is correctly provided and the file size matches the declared size.
  • Invalid Library or Folder: Selecting a non-existent library or folder may cause errors. Use the dynamic library loader to select valid libraries.
  • Authentication Errors: Ensure the provided access token is valid and has sufficient permissions to upload assets.
  • Skipping EXIF Metadata: Setting Skip EXIF metadata to true disables metadata extraction; if metadata is required later, set it to false.
  • Binary Data Issues: If Binary File is true but the specified binary property does not exist or is empty, the upload will fail. Verify the binary input field name and presence of data.
  • API Rate Limits or Timeouts: Large files or many uploads may hit API limits; consider adding delays or batching.

Links and References

Discussion