Configure Adobe I/O Integration | Community
Skip to main content
Level 2
May 22, 2025
Solved

Configure Adobe I/O Integration

  • May 22, 2025
  • 4 replies
  • 818 views

I'm trying to connect my AEM as a Cloud Service instance to Adobe I/O in order to call APIs like Adobe Target, Analytics, etc. What is the correct way to set up the integration with Adobe Developer Console?

Best answer by SantoshSai

Hi @nehaba4,

To integrate AEM as a Cloud Service with Adobe I/O for event handling, follow these steps:

  1. Set Up a Project in Adobe Developer Console:

    • Navigate to Adobe Developer Console.

    • Create a new project or select an existing one.

    • Add the I/O Management API to manage integrations.

    • Add the AEM Events API to receive events from AEM.

  2. Configure Event Registration:

    • In your project, add an event registration for AEM.

    • Select the specific AEM instance and event types you wish to subscribe to (eg. asset uploads, page publications).

    • Choose how you want to receive events, such as via an Adobe I/O Runtime action.

  3. Deploy an Adobe I/O Runtime Action:

    • Develop a Node.js action using the Adobe I/O CLI.

    • Deploy the action to Adobe I/O Runtime.

    • Link this action to your event registration to process incoming events.

For detailed guidance, refer to Adobe's official documentation: Adobe I/O Runtime Action and AEM Events

Hope that helps!

4 replies

SantoshSai
Community Advisor
SantoshSaiCommunity AdvisorAccepted solution
Community Advisor
May 22, 2025

Hi @nehaba4,

To integrate AEM as a Cloud Service with Adobe I/O for event handling, follow these steps:

  1. Set Up a Project in Adobe Developer Console:

    • Navigate to Adobe Developer Console.

    • Create a new project or select an existing one.

    • Add the I/O Management API to manage integrations.

    • Add the AEM Events API to receive events from AEM.

  2. Configure Event Registration:

    • In your project, add an event registration for AEM.

    • Select the specific AEM instance and event types you wish to subscribe to (eg. asset uploads, page publications).

    • Choose how you want to receive events, such as via an Adobe I/O Runtime action.

  3. Deploy an Adobe I/O Runtime Action:

    • Develop a Node.js action using the Adobe I/O CLI.

    • Deploy the action to Adobe I/O Runtime.

    • Link this action to your event registration to process incoming events.

For detailed guidance, refer to Adobe's official documentation: Adobe I/O Runtime Action and AEM Events

Hope that helps!

Santosh Sai
AmitVishwakarma
Community Advisor
Community Advisor
May 23, 2025

Hi @nehaba4 ,

Try below steps:

1. Create Project in Adobe Developer Console

Go to: https://developer.adobe.com/console

Click “Create new project”

Name it: AEM Event Handler

Click “Add API” => Select AEM Cloud Service Events API

Click Next and Save

2. Create Runtime Action to Receive Events

You’ll deploy a Node.js function that gets triggered by AEM events.

a. Initialize AIO App

aio app init aem-events-handler --template=generic cd aem-events-handler

b. Update the action

In actions/generic/index.js, modify the code:

async function main(params) { console.log("Received AEM event:", JSON.stringify(params, null, 2)); return { statusCode: 200, body: { message: "Event received", }, }; } exports.main = main;

c. Deploy it

aio app deploy

After deploying, copy the action URL shown in the terminal (you’ll need it next).

3. Register AEM Events in Adobe Developer Console

In your AEM Event project => Click Add Event Registration

Select:

  - Product: AEM as a Cloud Service

  - Instance: your AEM environment

  - Event types: choose events like:

      - com.adobe.aem.AssetCreated

      - com.adobe.aem.PagePublished

  - Delivery method: Select Runtime Action

  - Paste your action URL

  - Save and confirm subscription


4. Test the Integration

  - Go to your AEM instance

  - Upload an asset or publish a page

  - Go to Adobe I/O Console Logs (or check logs with aio CLI):

aio app logs

You should see the event payload with details like path, event type, timestamp.

 

Example Output Payload

{ "event": { "eventType": "com.adobe.aem.AssetCreated", "assetPath": "/content/dam/test.png", "user": "admin", "timestamp": "2025-05-23T10:45:00Z" } }


Regards,
Amit

EstebanBustamante
Community Advisor and Adobe Champion
Community Advisor and Adobe Champion
May 23, 2025

Hi @nehaba4 

 

It’s not entirely clear whether you intend to call the APIs from Adobe I/O Runtime or from an external environment. That said, many of the responses in this thread already provide more detailed steps based on the general summary I’ll outline below—so I recommend reviewing the other community advisors’ answers as well.

Typically, the process involves the following steps:

  • Create a project in the Adobe Developer Console.

  • Within the project, add the appropriate Product APIs (e.g., Target, Analytics) or other services you wish to access.

  • The project will generate the necessary credentials required to authenticate your API calls.

  • Using these credentials, you can call the APIs from anywhere—Postman, Adobe I/O Runtime, a Java application, etc.

  • If you're using Adobe I/O Runtime, you'll need to create a new service and make a REST call using the credentials provided.

I hope this helps clarify your question.

Esteban Bustamante