Presented at InterConnect 2016 by Carsten Bornert and Ulas Cubuk. This session will discuss the power of combining IBM API Management and IBM Integration Bus together to expose core backend systems in a controlled, managed and secured manner. It will also explore common use cases where these technologies are used together to provide a compelling solution.
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
HAM 1032 Combining the Power of IBM API Management and IBM Integration Bus
1. HAM-1032 Combining the Power of IBM API
Management and IBM Integration Bus
Ulas Cubuk – IBM UK Lab Services
Carsten Börnert – IBM UK Lab Services
2. Agenda
• Introduction to API Connect and IBM Integration Bus
• How to use APIM / API Connect with IBM Integration Bus
• Expose REST APIs from IIB
• Expose IIB Integration Services
• Use Interaction APIs to combine System APIs
• Summary
2
4. IBM Integration Bus - Overview
• ESB that connects Systems of Record
and Systems of Interaction using
• Integration Services
• REST APIs
• Applications
• Integration platform
• Extensive support for formats and protocols
• Extensive support for standards
• Built-in support for enterprise applications
• Range of deployment options from
on-premise to on-cloud
4
5. Batch Apps Data Process Packaged App
(SAP, PeopleSoft)
Adapter
SOAP/HTTP
ODBC/JDBC
MQ/JMS
Legacy (CICS /
IMS / Z)
File
External
Services
REST/HTTP
IBM Integration Bus
TCP/IP
APIAPIAPIAPI
IBM Integration Bus Accelerates Digital Transformation
5
6. IBM API Management v4
design, secure,
control, publish,
monitor & manage
APIs
6
API Manager
Define and manage
APIs
Explore API usage with
analytics
Manage API user
communities
Management Console
Provision system
resources
Monitor runtime health
Scale the environment
Explore API
documentation
Provision application
keys
Self-service
experience
Developer Portal
API Gateway
(IBM DataPower)
Enforce runtime policies to control API traffic
10. Different use cases
1. Expose REST APIs from IIB
2. Expose Integration Services from IIB
3. Use Interaction APIs to combine System APIs
10
11. Expose a REST API from IBM Integration Bus
• Introducing IIB’s new REST API first class
construct
• Provides a simple way to receive JSON / HTTP and
expose a REST API
• Import Swagger 2.0 definitions, clients can use existing
Swagger tools and projects to retrieve Swagger definitions
• Create a new REST API in the IIB Toolkit without having to
import a Swagger file (beta)
• Administer REST APIs as a first class IIB construct in the
Web UI
11
12. Simple workflow to implement an API in IIB
1. Import swagger definition into Toolkit
2. Select operation to implement
3. Complete the generated skeleton with standard IIB development
tools
4. Unit test with integrated runtime
5. Package & Deploy
6. Push to API Management
14. • Select operations to implement
• Add error and timeout handling
Workflow steps (2)
15. • Add implementation for operation using standard IIB
Development tools
• Unit test in integrated Test Node
Workflow steps (3 - 4)
16. Workflow steps (5)
• REST APIs can be deployed to an integration server using any of the standard
mechanisms – either the Integration Toolkit, the command line, or the Integration Java
API.
• Once deployed, a REST API appears in the Integration Toolkit and web administration
interface as a REST API, under a new REST APIs category.
16
17. Easy Integration with IBM API Management
• Deployed IIB REST APIs can be pushed to API Management
from the IIB Toolkit
• In IBM APIM, begin by ensuring you have:
– A registered organization and email address for the API owner for
logging in to the IBM API Management console
– A sandbox environment defined, and network connectivity
• The IIB REST API is identified by the API Management
server using the Swagger Title
– REST API is created if it is a new definition
– If it already exists, then the latest revision
is replaced
17
19. Expose existing IIB Integration Service
19
Integration Services
•First class IIB construct for Web
Services
•Consistent representation in Toolkit
and WebUI
•Imports/Creates WSDL
20. Simple workflow to proxy a SOAP (Integration) Service
1. Create API in API Management
• Import WSDL
1. Configure API
• Description
• Security
• Properties
• Implementation
1. Create Plan
• Define SLA
• Add API operations
1. Publish
20
25. Use Interaction APIs to combine System APIs
Interaction APIs
•Invoke one or more
System APIs
•Manipulate data
•Change data format
•Add new logic
•Promote reuse
across new
applications
25
Web
Service
System API
ManageSecure
REST
API
System API
ManageSecure
Interaction
API
ManageSecure
Create Run
27. Services or APIs? – Services with APIs
Services APIs
Business function, coarse grained, discrete task
in a process
Business resource, atomic, simple, cacheable
Share business capability across the enterprise Extend functionality, crowdsourcing
Integration between heterogeneous applications Consumable by heterogeneous clients
Share and reuse assets in enterprise Grow ecosystem with maximum reach, maximum access,
Consolidate redundant functionality Enable functionality to evolve
Adhere to common enterprise standards Flexible, low barrier of entry, lightweight
Enterprise /inter-enterprise domain Extra enterprise, Internet of Things
Implementation focus Interface focus
Provider focus Consumer focus
Similar distinction between System APIs vs Interaction APIs
28. Already Have APIs?
Companies already have web
services, which can be exposed as
APIs
Software vendors are adding API
support to existing products to
pass through data from a system of
record unchanged; aka System
APIs
System API System API
ESB
Web
Service
System API
Added Management & Security to
protect enterprise assets
System APIs should be managed
and secured to protect enterprise
systems:
Where are they published?
Which developers can discover
them? Which applications can
access them? How frequently?
At what cost?
Vs.
Web
Service
System API
ManageSecure
System API
ManageSecure
System API
ESB
ManageSecure
29. IBM Integration BusAPI ConnectConsumer
(Systems of Engagement)
Business Partner Apps
Internet of Things
Enterprise Internal Apps
Mobile & Web Apps
Secure
API Policy Enforcement
Security & Control
Connectivity & Scale
Monitoring/Analytics Collection
Manage
API Discovery, API Policy
Management
Lifecycle Mgmt & Governance
Self-service App Developer Portal
Monitoring & Analytics
Build & Run:
System APIs
Develop & Compose APIs
based on Swagger Specs,
Develop and Compose
Integration Services,
Implement using any data
source and data formats.
Publish new APIs to API
Connect, Deploy and Scale
z System / Legacy Apps
Provider
(Systems of Record)
Application
Data
(SQL, NoSQL, other)
Build & Run: Microservices,
Interaction APIs
Create and Model API,
Consume System API,
Connect API to other data sources,
Run & Scale
API Connect & IBM Integration Bus
31. Notices and Disclaimers Con’t.
31
Information concerning non-IBM products was obtained from the suppliers of those products, their published announcements or other publicly available sources. IBM has not
tested those products in connection with this publication and cannot confirm the accuracy of performance, compatibility or any other claims related to non-IBM products.
Questions on the capabilities of non-IBM products should be addressed to the suppliers of those products. IBM does not warrant the quality of any third-party products, or the
ability of any such third-party products to interoperate with IBM’s products. IBM EXPRESSLY DISCLAIMS ALL WARRANTIES, EXPRESSED OR IMPLIED, INCLUDING BUT
NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
The provision of the information contained h erein is not intended to, and does not, grant any right or license under any IBM patents, copyrights, trademarks or other
intellectual property right.
IBM, the IBM logo, ibm.com, Aspera®, Bluemix, Blueworks Live, CICS, Clearcase, Cognos®, DOORS®, Emptoris®, Enterprise Document Management System™, FASP®,
FileNet®, Global Business Services ®, Global Technology Services ®, IBM ExperienceOne™, IBM SmartCloud®, IBM Social Business®, Information on Demand, ILOG,
Maximo®, MQIntegrator®, MQSeries®, Netcool®, OMEGAMON, OpenPower, PureAnalytics™, PureApplication®, pureCluster™, PureCoverage®, PureData®,
PureExperience®, PureFlex®, pureQuery®, pureScale®, PureSystems®, QRadar®, Rational®, Rhapsody®, Smarter Commerce®, SoDA, SPSS, Sterling Commerce®,
StoredIQ, Tealeaf®, Tivoli®, Trusteer®, Unica®, urban{code}®, Watson, WebSphere®, Worklight®, X-Force® and System z® Z/OS, are trademarks of International Business
Machines Corporation, registered in many jurisdictions worldwide. Other product and service names might be trademarks of IBM or other companies. A current list of IBM
trademarks is available on the Web at "Copyright and trademark information" at: www.ibm.com/legal/copytrade.shtml.
32. Thank You
Your Feedback is Important!
Access the InterConnect 2016 Conference Attendee
Portal to complete your session surveys from your
smartphone,
laptop or conference kiosk.
Editor's Notes
General welcome
Narrative:
From a functional perspective…
Explain the old v4 components in v5
Briefly mention the new components for CREATE and RUN
Since only been announced recently and not GA yet, there are no screenshots of API Connect.
Name the use cases
Explain the structure for each use case: Summary, Workflow steps (screenshots)
System APIs will be explained later
Importance of Swagger: (Who has used Swagger?)
Where would the Swagger file come from?
De-facto standard
Used for consumption and documentation
Includes: Endpoints, Resources, Methods (Get, Post…), Parameters, Documentation
Use case implements the API in IIB, defines and exposes in APIM.
More screenshots on the next slide
Once pushed, there are more steps in API Management to configure and deploy to environments… more in the next use case.
Use case: Expose Integration Service from IIB
Last slide for APIM
Use cases have in common that the implementation logic for both REST API and SOAP API resides on IIB.
Next Use case is to combine System APIs in an Interaction API
NEW IN API CONNECT V5
What is an Interaction API?
Has its own runtime – new!
Uses the new create and run functionality of API Connect. Quickly design/create APIs using System APIs
(model driven)
What are System APIs?
Same difference between Interaction APIs and System APIs.