Skip to main content

Setting Up The AEM Asset Selector Integration

Connect your Knak account to Adobe Experience Manager as a Cloud Service (AEM as a Cloud Service) so you can browse and insert approved AEM assets directly into your Knak emails and landing pages.

This feature is in alpha testing! Please reach out to spencer@knak.com if you would like to participate.


Before You Begin

Before you start, make sure you have:

  • An active Adobe Experience Manager as a Cloud Service (AEM as a Cloud Service) subscription

  • Access to the Adobe Developer Console for your organization

  • An AEM administrator with access to:

    • Your AEM Git repository

    • Adobe Cloud Manager

  • Admin permissions in Knak

  • Dynamic Media enabled using either:

    • OpenAPI

    • Dynamic Media Classic (Scene7)

Setup Responsibilities

The setup process involves three different roles.

Role

Responsibility

Adobe

Provides the IMS Client ID and related credentials

AEM Administrator

Allow-lists the Client ID in each AEM environment

Knak Administrator

Configures the integration inside Knak

Important: This guide covers the AEM Asset Selector integration, which uses Adobe's native Asset Selector inside Knak.

If you are setting up the legacy AEM Assets integration, see Setting Up the Adobe Experience Manager Integration instead.


Step 1: Request Credentials from Adobe

Contact your Adobe account team and request provisioning for the AEM Asset Selector.

Adobe will provide the following values:

Value

Description

Example

IMS Client ID

Identifies the Asset Selector application

aemcs-knak-assetselector

IMS Organization ID

Your Adobe organization identifier

XXXXXXXXXXXX@AdobeOrg

Repository ID

The hostname of your AEM author environment

author-pXXXXX-eXXXXX.adobeaemcloud.com

IMS Scope (optional)

The default Asset Selector scopes are almost always correct; Adobe will tell you if anything custom is required

Important: Adobe must provision the IMS Client ID before the integration can authenticate.

Without it, the Asset Selector returns 403 Forbidden or Network Error messages.

Register Your Knak URLs

Tell Adobe the exact URL(s) where your users access Knak (e.g. https://enterprise.knak.io, plus any custom/white-label Knak domain).

Adobe must register these origins with the IMS Client ID. If they are not registered, authentication fails with a browser Cross-Origin Resource Sharing (CORS) error.


Step 2: Allow-List the Client ID in AEM

Your AEM administrator must allow-list the IMS Client ID in every environment.

For example:

  • Development

  • Stage

  • Production

Skipping this step is the most common cause of 403 Forbidden errors.

Create the Configuration File

  1. Clone the appropriate Git repository.

  2. Create the following file: config/api.yaml

  3. Replace <provided-clientId> with the value Adobe supplied.

     kind: "API"
    version: "1"
    metadata:
    envTypes: ["dev"] # or ["stage"] / ["prod"] for other environments
    data:
    allowedClientIDs:
    author:
    - "<provided-clientId>"

Deploy the Configuration

  1. Commit the changes.

  2. Push the repository.

  3. Open Adobe Cloud Manager.

  4. Create a Config Pipeline for the repository and branch.

  5. Run the pipeline.

After deployment finishes, the Client ID becomes available for that environment.

Important: Only the author entry is required.

The Asset Selector communicates with the author environment. Public assets are served from the delivery environment.

Find Your Repository

To access your Git repository:

  1. Open your Adobe Cloud Manager program.

  2. Navigate to Repositories.

    The repositories page under the desired program
  3. Select Access Repo Info.

  4. Copy the repository URL and credentials.

  5. Clone the repository locally.

  6. Add the YAML file.

  7. Commit and push your changes.

For Adobe's reference, see Introduction to CI/CD Pipelines.


Step 3: Configure the Integration in Knak

  1. Open Knak.

  2. Go to Admin.

  3. Select Integrations.

  4. Click Platforms.

    Integrations &gt; Platforms navigation in the admin side of Knak.
  5. Navigate to the AEM Asset Selector tile under the Digital Asset Management section

  6. Click Connect.

  7. Enter the credentials provided by Adobe.

  8. Leave Dynamic Media Delivery for the next step.

  9. Click Create New Integration.

    AEM Asset Selector integration settings page.

Step 4: Choose a Dynamic Media Delivery Option

The Dynamic Media Delivery setting determines how Knak builds public asset URLs.

OpenAPI (Recommended)

Choose OpenAPI if you use:

  • Adobe Experience Manager as a Cloud Service

  • Adobe Assets Delivery OpenAPI

This is the correct option for most customers.

Scene7 (Dynamic Media Classic)

Choose Scene7 only if your organization delivers assets through Dynamic Media Classic.

Scene7 environments have:

  • A dedicated dashboard

  • Separate delivery domains

Not Sure Which Option to Choose?

Start with OpenAPI. If approved assets cannot load, ask your AEM administrator whether your organization uses Scene7.

Both delivery methods must be enabled in AEM before they can be used.


Step 5: Approve and Publish Assets

The Asset Selector displays all repository assets.

Knak only accepts assets that are:

  • Images

  • Approved

  • Published

  • Publicly accessible

Non-image files, such as PDFs or videos, cannot be inserted.

Scene7 Requirements

If you selected Scene7, every asset must also:

  • Sync successfully to Dynamic Media

  • Have a publish status of PublishComplete

Tip: Publish and approve your assets before authors begin building emails or landing pages. This ensures assets are available for selection in Knak. It also makes troubleshooting easier because unpublished assets can appear in the Asset Selector but cannot be inserted.


Step 6: Verify Network Requirements

Adobe's authentication services require HTTPS. Knak already uses HTTPS.

If your organization blocks external services, ask your IT team to allow:

  • experience.adobe.com — loads the Asset Selector JavaScript library

  • *.adobeaemcloud.com — your author and delivery tier hostnames (repository discovery, asset metadata, public URL delivery)

  • Adobe IMS authentication domains

    • ims-na1.adobelogin.com

    • auth.services.adobe.com

If your organization uses a Content Security Policy (CSP), verify these directives allow Adobe services:

  • script-src

  • connect-src

  • img-src

  • frame-src


Use the Integration

After setup, authors can insert AEM images anywhere Knak supports image uploads.

  1. Open an email or landing page.

  2. Open the image picker.

  3. Select AEM Asset Selector.

    AEM asset selector option highlighted in the image picker window.
  4. Sign in using your Adobe ID.

  5. Browse your repository.

  6. Select an approved image.

  7. Click Select.

Knak validates the asset before inserting it.

Insertion fails if the asset:

  • Is not an image

  • Is unpublished

  • Is not publicly accessible


Troubleshooting

"Network Error" or "403 Forbidden" when opening the Asset Selector

The IMS Client ID has not been allow-listed in your AEM environment.

To resolve this issue:

  • Verify that config/api.yaml exists in the correct Git branch.

  • Confirm the IMS Client ID matches the value provided by Adobe exactly.

  • Make sure the configuration was committed and pushed successfully.

  • Verify that the Config Pipeline completed successfully for the environment you are testing.

  • If you use multiple environments (development, stage, or production), ensure the Client ID has been allow-listed in each one.

"Authentication failed. Please try again."

Adobe Identity Management Services (IMS) rejected the authentication request.

To resolve this issue:

  • Verify that the IMS Client ID and IMS Organization ID in Knak exactly match the values provided by Adobe.

  • Remove any leading or trailing spaces from the values.

  • Confirm you are signing in with an Adobe ID that belongs to the same Adobe organization.

  • If you entered a custom IMS Scope, remove it unless Adobe specifically instructed you to use one.

"This asset is not available for public delivery. Ensure it is approved and published in AEM."

The selected asset is not publicly available through the configured delivery method.

To resolve this issue:

  • Verify the asset has completed your organization's approval and publishing workflow.

  • Confirm the asset is publicly accessible using its delivery URL.

  • If you are using OpenAPI delivery, verify that the Assets Delivery endpoint is enabled in your AEM environment.

"This asset is not available via Scene7." or "The Scene7 delivery URL is not reachable."

The asset is not available through Dynamic Media Classic (Scene7).

To resolve this issue:

  • Verify the asset has synchronized to Dynamic Media.

  • Confirm the asset's publish status is PublishComplete.

  • Verify that your organization uses Scene7 for asset delivery.

  • If your organization does not use Scene7, change the Dynamic Media Delivery setting in Knak to OpenAPI.

"Failed to load AEM Asset Selector. Please try again."

The Adobe-hosted Asset Selector could not load.

To resolve this issue:

  • Open your browser's developer tools and look for blocked requests to experience.adobe.com.

  • If your organization uses a firewall, proxy, or Content Security Policy (CSP), ask your IT team to allow the Adobe domains listed in the HTTPS and Network Requirements section.

Unpublished or non-image assets appear in the Asset Selector

This behavior is expected. Adobe's Asset Selector displays all assets in the repository. Knak validates assets when you select them.

To insert an asset successfully, it must:

  • Be an image.

  • Be approved.

  • Be published.

  • Have a publicly accessible delivery URL.

To make browsing easier, organize approved images into dedicated folders within AEM.


Need more help? Contact support via live chat within Knak using the chat bubble in the bottom right corner or email support@knak.com.

Did this answer your question?