IBM Developer

Tutorial

Build integration projects faster with IBM Bob and App Connect Enterprise

Generate production-ready REST APIs with AI assistance and deploy them with centralized governance

By Anand Awasthi

Modern enterprises are adopting AI coding assistants to accelerate integration development. IBM Bob, combined with IBM webMethods Hybrid Integration, provides a powerful solution for rapidly developing and deploying IBM App Connect Enterprise integration projects.

In this tutorial, you implement an end-to-end workflow using IBM Bob to generate integration code that follows enterprise patterns, validate the integration project with IBM Bob and the App Connect Enterprise Toolkit to ensure its quality, and then deploy and test it locally. Optionally, you deploy the integration project to a self-managed App Connect Enterprise runtime using IBM webMethods Hybrid Integration to ensure central governance and auditability.

In this tutorial, you create a REST API in IBM App Connect Enterprise to check a city's current weather and any alerts by using an open source API on the backend.

For this tutorial, you use an IBM Bob custom mode, the ACE Developer mode, which enables enterprise-grade development of IBM App Connect Enterprise v13 integration projects. This mode combines the ace-bob skill with best practices, patterns, and guidelines to ensure all generated App Connect Enterprise artifacts align with organizational standards. You can customize the ACE Developer custom mode to align with your own enterprise best practices and guidelines for ACE development.

Prerequisites

In addition to having a basic understanding of integration concepts, a familiarity with REST APIs, and a basic understanding of AI coding workflows, ensure that you have access to the following:

Step 1. Create an App Connect Enterprise integration server

Create and start an App Connect Enterprise integration server using the following command. Replace the work-dir with the directory where you want to store the integration server data.

IntegrationServer --name ace_demo --work-dir /data/ace/ace-demo-server&

App Connect Enterprise integration server setup command output showing successful server creation

To create integration server using ACE toolkit on your local machine, follow the steps in the App Connect Enterprise documentation.

Step 2. Import the ACE Developer mode into the Bob IDE

Now that you have an App Connect Enterprise integration server running, you need to set up the ACE Developer mode in Bob IDE. The ACE Developer mode enables capabilities for building, testing, and deploying App Connect Enterprise integrations directly within Bob IDE.

  1. In a terminal, clone the ACE Developer mode repo:

     git clone https://github.com/ibm-self-serve-assets/ibm-ace-bob-mode
    
  2. In a terminal, navigate to the IBM ACE workspace and create a .bob directory within the IBM ACE workspace.

     cd <ace-workspace>
     mkdir .bob
    
  3. Move the content of the files from the ibm-ace-bob-mode directory to the .bob directory.

     mv <path-where-you-cloned-ace-mode>/ibm-ace-mode/rules-ace-developer <ace-workspace>/.bob/
     mv <path-where-you-cloned-ace-mode>/ibm-ace-mode/custom_modes.yaml <ace-workspace>/.bob/
    

    By placing the .bob directory within the IBM ACE workspace, the ACE Developer mode is locally available in that workspace. You can make it globally available by moving this .bob directory to your home folder and change the mode scope to global. Learn more about configuring custom modes in the Bob IDE documentation.

  4. Install the ace-bob skill. Navigate to the .bob directory. If there is no skills directory inside it, create that directory and install the ace-bob skill in the skills directory.

     mkdir skills
     cd skills
     git clone https://github.com/ot4i/ace-bob
    
  5. Open the IBM ACE workspace directory in the Bob IDE.

    The '.bob' folder now contains custom_modes.yaml and the rule-ace-developer directory (as well as the skills directory ).

    Bob IDE workspace showing .bob directory structure with custom modes and skills folders

  6. In the Bob IDE, click the Modes drop-down, and select the ACE Developer mode.

    Bob IDE modes dropdown menu with ACE Developer mode selected

Step 3. Create an App Connect Enterprise integration project using IBM Bob

In this tutorial, you use IBM Bob to create a REST API in App Connect Enterprise to check a city's current weather and any alerts by using an open source API on the backend.

In the Bob IDE, enter the following prompt in the chat interface. Update the integration server port number as per your configuration. Also, update the weatherapi key in the prompt.

Create a Weather API project for IBM ACE as per below specifications:
    - It exposes two GET methods, "current weather" and "alerts" over HTTP
    - Accepts a request parameter with the name "location" where we can pass city name
    - It calls the below backend opensource weather api url to get alerts and current weather:
            http://api.weatherapi.com/v1/alerts.json for alerts
            http://api.weatherapi.com/v1/current.json for current weather
            Passes below api key in query parameter with the name "key" while invoking above APIs
            8fdf10a32b9e44ca93633906260605
            Below are two working examples to call the above backend weatherapi from ACE flow:
    curl -X GET "http://api.weatherapi.com/v1/alerts.json?q=London&key=8fdf10a32b9e44ca93633906260605"
    curl -X GET "http://api.weatherapi.com/v1/current.json?q=London&key=8fdf10a32b9e44ca93633906260605"
    - It returns the json response as is what it received from the backed weatherapi
Build a BAR file and deploy & test on local independent integration server on admin port 7600

Bob IDE chat interface showing Weather API project creation prompt

When prompted, click Approve. Bob starts planning the next steps. Bob generates a todo list for creating our integration project for the REST API.

Bob IDE displaying generated todo list for Weather API integration project

Bob also builds, deploys, and tests the integration project. When prompted, click Approve. It takes a few minutes to develop, deploy it to a local integration server, and test the integration project.

Bob IDE showing completed Weather API project with successful deployment confirmation

Step 4. Validate and test the integration project in the App Connect Enterprise Toolkit

In this step, you open the integration project in the App Connect Enterprise Toolkit so that you can modify it.

  1. Open your App Connect Enterprise Toolkit.

    App Connect Enterprise Toolkit welcome screen

  2. From the File menu, select Open projects from file system. Select the 'WeatherAPI' project directory, and then click Open. Click Finish.

    App Connect Enterprise Toolkit showing WeatherAPI project successfully imported

    'WeatherAPI' is visible in Application Perspectives. Bob has built and deployed it on the integration server.

    App Connect Enterprise Toolkit Application Perspectives view with WeatherAPI project visible

  3. Expand the 'WeatherAPI' project and explore the different components of the project, such as the message flows, subflows, and ESQL code.

    WeatherAPI project structure showing message flows, subflows, and ESQL code components

    You can make further modifications to the project as needed and redeploy. To learn more about deploying integrations solutions during development, follow the steps in this App Connect Enterprise deployment guide.

  4. In the integration server, click the WeatherAPI project and scroll in the Properties tab to see the details and endpoints.

    Integration server Properties tab showing WeatherAPI project details and REST API endpoints

  5. Test the APIs by using a curl command in the Terminal or through a web browser:

     # Test current weather
     curl -X GET "http://localhost:7800/weather/current?location=London"
    
     # Test weather alerts
     curl -X GET "http://localhost:7800/weather/alerts?location=London"
    

(Optional) Step 5. Deploy the created ACE integration project through IWHI Hybrid Control Plane

While you've successfully deployed your integration locally, enterprise environments often require centralized management and monitoring of integration runtimes. IBM webMethods Hybrid Integration (IWHI) Hybrid Control Plane provides a unified platform to manage, monitor, and govern your App Connect Enterprise runtimes across hybrid cloud environments. This optional step demonstrates how to register your ACE integration server with IWHI and deploy your WeatherAPI project through the control plane, enabling enterprise-grade visibility, lifecycle management, and operational control.

Follow the steps for deploying integrations in the IBM webMethods Hybrid Integration documentation for more details. For this tutorial, follow the below steps to deploy the WeatherAPI project through IWHI Hybrid Control Plane.

  1. Follow the steps to register the App Connect Enterprise runtimes in the IBM webMethods Hybrid Integration documentation.

  2. Go to the IWHI Hybrid control plane → Integration runtime management.

    IBM webMethods Hybrid Integration control plane showing Integration runtime management view

  3. Click the right arrow on your ace runtime instance, 'ace-demo', to open it. It will take you to admin UI of the ACE integration server.

    IBM webMethods Hybrid Integration showing ace-demo runtime instance admin UI

  4. Click Deploy > Add Bar file and select the Bar file from the ACE workspace.

    IBM webMethods Hybrid Integration Deploy menu with Add Bar file option for WeatherAPI deployment

  5. Click Deploy.

    IBM webMethods Hybrid Integration showing WeatherAPI BAR file deployment in progress

    When successfully deployed, you will see the deployed API in the runtime.

    IBM webMethods Hybrid Integration runtime showing successfully deployed WeatherAPI application

  6. Click the deployed application and navigate to both the APIs to see the endpoint and any other details.

    WeatherAPI application details showing REST API endpoints for current weather and alerts

  7. Test the APIs by using a curl command in the Terminal or through a web browser replacing the endpoint hostname with the hostname of your Linux VM:

     # Test current weather
     curl -X GET "http://<server-ip-or-hostname:port>/weather/current?location=London"
    
     # Test weather alerts
     curl -X GET "http://<server-ip-or-hostname:port>/weather/alerts?location=London"
    

Summary

This tutorial demonstrated an end-to-end AI-assisted integration development workflow that combines IBM Bob's generative AI capabilities with centralized management to accelerate App Connect Enterprise integration project delivery while maintaining enterprise governance and control.

The Weather API implementation showcased real-world integration patterns with two GET endpoints (current weather and alerts) that integrate with an external weather service, demonstrating how Bob generates production-ready code following App Connect Enterprise best practices.

Next, explore how to use IBM Bob in the ACE Toolkit for enhanced integration development workflows.