Frontify DAM connector

Issues

Git

Git

Latest

1.0.4

Compatible with Magnolia 6.2.

The Frontify DAM Connector provides a connector to Frontify to use assets form this service. It incorporates Frontify Media browser widget that allows users to select assets to be included in the website.

This module is at the INCUBATOR level.

  • apiToken has to be defined correctly in the passwords app, make sure it is not expired, for image selection users authenticate to Frontify, but for the website to be able to use the images you need to have a valid token. Otherwise you will get a 403 error.

  • The richTextField does not support selecting external DAM assets, just JCR ones. See MGNLUI-6143 for more details.

Installing with Maven

Maven is the easiest way to install the module. Add the following to your bundle:

<dependency>
  <groupId>info.magnolia.external.dam</groupId>
  <artifactId>frontify-dam-connector</artifactId>
  <version>1.0.4</version>
</dependency>

Configuration

To use this module you need to have exiting account with Frontify. From your frontify account you need below information:

  • domain (please use full url)

  • apiToken

  • projectId

  • clientId

  • publicUrl - Additional you need to provide public url under which magnolia is accessible. This url will be used to register Frontify webhook callback.

This information needs to be entered in module configuration and passwords app. Please check screenshots below:

frontify configuration

Magnolia will try to register Frontify webhook when this module starts. Webhook registration on module start should happen only if frontify webhook is not registered previously.

Alternatively magnolia will listen for any change in the module configuration folder (/modules/frontify-dam-connector/config) and in the defined apiToken path (keystore workspace). For any change in these folders magnolia will register new Frontify webhook.

Webhook registration is done only on author instance. So, only author instance will get notifications from Frontify for the file updates.

These notifications include:

  • create

  • update

  • delete actions.

For each notification that author instance receives, frontify JCR cache will be updated and this JCR changes will be propagated (published) to public instance(s).

Each http request that magnolia author instance receives from frontify is checked to make sure that request comes from Frontify. This security check is done based on secret token that is received from Frontify when webhook is registered. This webhook secret is saved in the "frontify-media" workspace.

Make sure you have a valid value in config/server/defaultBaseUrl.

frontify passwords

Usage

You can use magnolia field in any dialog:

form:
  implementationClass: info.magnolia.ui.javascript.form.FormViewWithChangeListener
  properties:
    image:
      label: Frontify Image
      $type: frontifyWidgetField

After opening magnolia dialog and clicking on select image button, you should be presented with frontify widget select dialog. Please check the screenshot below:

frontify example

Getting the API Token

To enable the api token, from within one of your Frontify Libraries, look for the cogwheel on the Power Bar and go into the Integrations section.

Click on API Access Token, toggle it on, and save.

frontify api token 1

After toggling it on, the alphanumeric access key will be displayed on the very same fly-out. If needed, you can also toggle the write permission.

frontify api token 2

You can set the API token only at the backend view of the libraries; this is a backend-only functionality, not available in the front view of the libraries.

Getting the Client Id

1

Go to Frontify and open the applications setting.

Important: This is only possible for Frontify Admins. If it is not visible for you, please contact your Frontify Account Admin.

frontify clientid 1

2

Add a new application with the following configuration options:

[ON] Support Authenticator

[OFF] Confidential

[EMPTY] Redirect URL

Scopes: basic:read, finder:read

The redirect URL is generated automatically, no need to enter one.

frontify clientid 2

3

By saving, you get a valid OAuth Client ready for use. Click on your newly created Client to get the necessary data.

frontify clientid 3

Changelog

Version Notes

1.0.4

1.0.3

1.0.2

1.0.1

1.0

Initial release of the module.

Feedback

DX Core

×

Location

This widget lets you know where you are on the docs site.

You are currently perusing through the Frontify DAM connector docs.

Main doc sections

DX Core Headless PaaS Legacy Cloud Incubator modules