Use Cloudinary parameters

After you install the Cloudinary integration, the following parameter types are available. You can use these to incorporate content from Cloudinary into your components and compositions.

Parameter typeDescription
Cloudinary image parameterSelect one single item from Cloudinary.
Cloudinary image list parameterSelect one or many images assets to be returned as an array.
Cloudinary video parameterSelect one or many video assets.

This parameter type allows a Uniform user to select one Cloudinary media item.

For a user to select a media item from Cloudinary, you must add a parameter to a component. The parameter is used to store the identifiers to the selected media items when the user selects media items.

  1. In Uniform, navigate to your component.

  2. Add a new parameter using the parameter type Cloudinary image.

  3. The configuration parameters are all optional. Project admins can specify whether a value must be set for a specific Cloudinary parameter in order for the component to validate and allow the composition to be published.
    To use the new “folder pre-selection” utility, you will need to supply the Cloudinary API secret in the settings screen of the integration so that Uniform can use the Admin API to pull down the folders that are available. This key is optional in the setup of the integration, but without it you won't be able to use the folder feature.

    parameter-config
    Cloudinary parameter with no options specified.

When you use a component with an Cloudinary parameter, by default no media item will be selected. You are prompted to add a media item.

  1. After adding the component to a composition, click Edit value in the property panel.

  2. Click Add media item.

    edit-value-default
  3. Select the item you want to select and click Insert.

  4. You will see details about the item you selected, including the title and some metadata.

    cloudinary-image-parameter-example

    About this step

    After your selection is saved, you are presented with the following options:

    • If you want to edit the selected item in Cloudinary, click Edit.
    • If you want to deselect the item, click Unlink.

With this parameter, authors can select one or many images assets to be returned as an array.

For a user to select a media item from Cloudinary, you must add a parameter to a component. The parameter is used to store the identifiers to the selected media items when the user selects media items.

  1. In Uniform, navigate to your component.

  2. Add a new parameter using the parameter type Cloudinary image list.

  3. The configuration parameters are all optional. Project admins can specify whether a value must be set for a specific Cloudinary parameter in order for the component to validate and allow the composition to be published.
    To use the new “folder pre-selection” utility, you will need to supply the Cloudinary API secret in the settings screen of the integration so that Uniform can use the Admin API to pull down the folders that are available. This key is optional in the setup of the integration, but without it you won't be able to use the folder feature.
    Select “gallery view” to manage selected Cloudinary assets in a responsive and “drag and drop” interface.

    list-parameter-config

When you use a component with an Cloudinary parameter, by default no media item will be selected. You are prompted to add a media item.

  1. After adding the component to a composition, click Edit value in the property panel.

  2. Click Add media item.

    edit-value-default
  3. Select the item you want to select and click Insert.

  4. You will see details about the item you selected, including the title and some metadata.

    cloudinary-image-list-parameter-example

    About this step

    After your selection is saved, you are presented with the following options:

    • If you want to edit the selected item in Cloudinary, click Edit.
    • If you want to deselect the item, click Unlink.
    • You can select additional media items by clicking Add media item.

With this parameter, authors can select one or many images assets to be returned as an array.

For a user to select a video item from Cloudinary, you must add a parameter to a component. The parameter is used to store the identifiers to the selected media items when the user selects media items.

  1. In Uniform, navigate to your component.

  2. Add a new parameter using the parameter type Cloudinary video.

  3. The configuration parameters are all optional. Project admins can specify whether a value must be set for a specific Cloudinary parameter in order for the component to validate and allow the composition to be published.
    To use the new “folder pre-selection” utility, you will need to supply the Cloudinary API secret in the settings screen of the integration so that Uniform can use the Admin API to pull down the folders that are available. This key is optional in the setup of the integration, but without it you won't be able to use the folder feature.
    Select “gallery view” to manage selected Cloudinary assets in a responsive and “drag and drop” interface.

    video-parameter-config

When you use a component with an Cloudinary parameter, by default no media item will be selected. You are prompted to add a media item.

  1. After adding the component to a composition, click Edit value in the property panel.

  2. Click Add media item.

    edit-value-default
  3. Select the item you want to select and click Insert.

  4. You will see details about the item you selected, including the title and some metadata.

    cloudinary-video-parameter-example

    About this step

    After your selection is saved, you are presented with the following options:

    • If you want to edit the selected item in Cloudinary, click Edit.
    • If you want to deselect the item, click Unlink.

When an item is selected, Uniform only stores the identifier for the item. Your front-end application must retrieve the details for the item. Uniform provides an enhancer to simplify this process.

tip

Using the enhancer provided by Uniform saves you from having to write logic to interact directly with Cloudinary.

The following is an example of what Uniform stores for the parameter.

{ "type": "cloudinary-media-selector", "value": [ { "publicId": "######################", "resourceType": "image", "createdAt": "######################", "width": "0000", "height": "0000", "format": "jpg", "url": "######################", "version": 0000000000, "previewUrl": "######################", "options": "", "widths": "", "ratio": "", "transformation": "", "globalImageOptions": "", "alt": "", "caption": "" } ] }

Uniform provides an enhancer so you don't need to write the API calls to Cloudinary to retrieve data for media items.

  1. Add the following npm packages to your front-end application:

    @uniformdev/canvas-cloudinary
  2. In a text editor, open the file where you retrieve the composition definition from Uniform.

    About this step

    You are looking for the code calls the async function getComposition. The code below assumes the object returned is set in a variable composition.

  3. Add the following import statements:

    import { createCloudinaryEnhancer, CLOUDINARY_PARAMETER_TYPES, } from '@uniformdev/canvas-cloudinary';
  4. Add the following code:

    await enhance({ composition, enhancers: new EnhancerBuilder().parameterType( CLOUDINARY_PARAMETER_TYPES, createCloudinaryEnhancer(), ), context: {}, });

    About this step

    This registers the enhancer to be used for any occurrence of the Cloudinary Items parameter.

Next steps

Now, the parameter value in the composition is mutated to include the field values for the selected Cloudinary media item (instead of just being an identifier).