API Connect

API Connect

Join this online group to communicate across IBM product users and experts by sharing advice and best practices with peers and staying up to date regarding product enhancements.

 View Only
  • 1.  IBM APIC to/from IBM MQ

    Posted Tue February 14, 2023 11:00 AM

    Does IBM APIC v10 allow for an API that listens on an IBM MQ Queue, similar to a Java MDB?

    I'm the MQ guy, I am being told APIC can't do this and find it hard to believe.

    I assume/hope IBM's premier API platform can talk with IBM's premier messaging platform. "Plain" DataPower does MQ integration very well, and APIC's APIs run on DataPower under the covers, so can't APIC poll an IBM MQ queue regularly?

    Peter (APIC noob)



    ------------------------------
    Peter Potkay
    ------------------------------


  • 2.  RE: IBM APIC to/from IBM MQ

    Posted Tue February 14, 2023 12:33 PM

    Hi Peter, 

    I raised your question to our team - short answer is No but here is what else they provided:

    APIC does REST/SOAP/graphql etc... endpoints

    what happens behind those endpoints is up to the customer, so they could expose a REST endpoint from App Connect that listened to an MQ Queue and then they could use that REST endpoint in APIC in order to add API management - access control, rate limiting, etc. 

    or they could look at some of the kafka based technologies in EEM in Cloud Pak for Integration which would allow a kafka queue based managed API. 




    ------------------------------
    Gabriel Marte Blanco
    Austin TX
    ------------------------------



  • 3.  RE: IBM APIC to/from IBM MQ

    Posted Tue February 14, 2023 03:13 PM

    Hi Gabriel,

    I'm not following exactly. "so they could expose a REST endpoint from App Connect that listened to an MQ Queue "

    The API on APIC would be built with a REST endpoint that would somehow regularly call the REST interface on the MQ Queue Manager to check if there were any messages in a particular IBM MQ queue on the IBM MQ Queue Manager?

    Peter



    ------------------------------
    Peter Potkay
    ------------------------------



  • 4.  RE: IBM APIC to/from IBM MQ

    Posted Wed February 15, 2023 05:18 AM
    Edited by Panu Tamminen Wed February 15, 2023 05:20 AM

    Hi,

    We've been using this user defined policy for years for writing messages to MQ queues "directly" from APIC/API:

    https://github.com/charlottehutchinson/APIConnect-Policy-MQInvoke

    Nowadays you have also the MQ provided native REST API option too (if made available in MQ side): https://developer.ibm.com/tutorials/mq-develop-mq-rest-api/

    Anyhow, for polling messages from a queue, hmm, personally I would not implement the scheduling/polling part within APIC, but sure for exposing/publishing REST operations for listing and consuming messages from a queue, assuming that using normal Datapower MPGw for polling messages is ruled out for some reason (APIC vs. Datapower use licensing?).

    Br, Panu



    ------------------------------
    Panu Tamminen
    Digia
    ------------------------------



  • 5.  RE: IBM APIC to/from IBM MQ

    Posted Wed February 15, 2023 08:26 AM

    Hi Panu,

    Currently the team is using a "Proxy Adapter" to pull the message from the IBM MQ Queue and then it turns around to HTTP post it to the APIC API. The Proxy Adapter is either a Java MDB or an MPG deployed to a non APIC DataPower appliance. This works. But it seems crazy to me that this extra hop is required to allow IBM APIC to consume an IBM MQ message. How is the functionality not in APIC? As I mentioned earlier, IBM's premier API platform can't talk with IBM's premier messaging platform? Am I missing a basic understanding of APIs that maybe makes it anti-pattern to allow for polling a queue?



    ------------------------------
    Peter Potkay
    ------------------------------