Overview of IBM z/OS Connect (OpenAPI 3)

Use IBM® z/OS Connect to create OpenAPI 3.0 interfaces.

Why IBM z/OS Connect?

Simplify working with APIs by using z/OS Connect and benefit from the following capabilities:
  • Interact with z/OS applications and data by using APIs that conform to the OpenAPI 3.0 specification.
  • Develop a z/OS Connect API starting from an existing OpenAPI 3.0 specification definition.
  • Transform z/OS data with functional mapping capabilities and feature-rich tools.
  • Deploy z/OS Connect APIs as isolated secure microservices, driving agility across the enterprise.
  • Take advantage of the improved security schemes provided by the OpenAPI 3.0 specification to deliver more granular control of user authorization at the API operation level.
  • Use Red Hat® OpenShift® Dev Space, Red Hat OpenShift Wazi Dev Space or make the z/OS Connect Designer image available on your image registries for self-service use with an OCI compliant container run time. For example, Podman, or Docker Desktop V19.0.3 or higher.
  • Develop APIs in your own IBM z/OS Connect development environment containing an isolated IBM z/OS Connect development server.
  • Use JSONata, a powerful data transformation language to enhance your API mapping.
  • Manage API projects across your teams by using your choice of Source Control Management (SCM) systems.
  • Your z/OS applications applications can call APIs that conform to the OpenAPI 3.0 specification through z/OS Connect.

Creating APIs to access existing applications and data.

The use of APIs for z/OS has matured as a key mechanism for modernizing and unlocking the value of existing applications and data. With this maturity has grown the number and diversity of development teams engaging with the mainframe. This requires a development and deployment model that supports agility and enables self-service provisioning.

z/OS Connect includes cloud native development support and API first mapping for creating OpenAPI 3 interfaces to z/OS applications and data. To achieve this, we have added two new components; a new container-based deployment model that is known as the IBM z/OS Connect server and a powerful new browser-based tooling that is known as the z/OS Connect Designer.

Figure 1. The z/OS Connect OpenAPI3 provider experience.
The z/OS Connect OpenAPI3 provider experience.

z/OS Connect Designer container capabilities

Intuitive web-based user interface
z/OS Connect features an intuitive web user interface that provides a low code approach, built specifically to create APIs for z Systems®. This graphical interface is designed to speed up development time, and shorten the learning curve for new developers who use z/OS Connect. Additionally, this interface aligns with IBM's portfolio of integration offerings, providing consistency to developers who work with multiple IBM products.
Support for OpenAPI 3.0 specification
You can use this OpenAPI specification to create APIs that meet your company and industry standards. To find out about the capabilities of the OpenAPI 3.0 specification, see What is OpenAPI?.
Contract first API creation
Developers can import a pre-defined OpenAPI contract, then map the operations of that API directly to their IBM Z® application and data. This method ensures that the API looks exactly as you want it to, and meets your company’s API standards.
Tooling that is served as a container image
To simplify out roll, z/OS Connect tools are served as a container image called the z/OS Connect Designer. This container image can be instantiated in a container runtime on Red Hat OpenShift alongside Wazi for Red Hat CodeReady Workspaces to deliver a cloud native experience for creating and managing end to end API flows, or, a hosted developer workspace on a developer's workstation. When the image is run as a container, the user interface is accessed with a web browser.
Editable API project source files
API project source files are fully accessible and editable from any development environment of your choice. This feature enables developers to change an API independent of the user interface, and offers more flexibility when refactoring or merging projects. You can also use templates, or even fully automate API creation.
Powerful mapping experience
When you enable the zosconnect:zosConnect-3.0 feature (available from V3.0.55 onwards), z/OS Connect uses the powerful transformation language JSONata. This offers z/OS Connect greater flexibility when mapping data between an OpenAPI contract and z Systems data and service. You can use this feature to create an API that looks exactly as you want it to, no matter the data structure you expose from z Systems.

z/OS Connect Gradle plug-in capabilities for API-First development

If you have an OpenAPI 3.0 definition you can use the IBM z/OS Connect API provider Gradle plug-in to generate the API provider project files and the language copybooks that are required to implement the API. This method is called API-First development. z/OS Connect Designer is not required.

From IBM z/OS Connect V3.0.69.0, the supplied Gradle plug-in can be used to generate a complete API provider project, which can then be built and deployed into z/OS Connect. These APIs are then used to call your z/OS applications.

For more information, see Developing APIs with Gradle.

z/OS Connect Server container capabilities

Containerized API deployments
In the next version of z/OS Connect, APIs are built as a container image and are deployed in various containers. A business can run z/OS Connect APIs where it makes most sense for them, whether it's on z/OS, zCX, or Linux®.
Micro-service architecture
To benefit from containers, users adopt a micro-service architecture for their APIs; whereby individual APIs, or logical groups of APIs are packaged in separate containers. This architecture provides isolation between APIs, simpler maintenance, and the ability to scale APIs based on their usage.
Container orchestration
Manage the orchestration of z/OS Connect APIs with container orchestration solutions such as Kubernetes, or Red Hat OpenShift. These technologies offer a simpler means of managing container deployments and features such as dynamic scaling. This decentralized-ownership of API integrations enables teams to work in parallel, with developers having the freedom to build and deploy APIs in isolation, while system administrators maintain control by using a container orchestration platform.
Industry standard DevOps pipeline
By using containers, z/OS Connect requires fewer specialist tools and less specialist knowledge to deploy and manage its APIs. DevOps professionals are able to plug z/OS Connect APIs into industry standard DevOps pipelines, while Operations Specialists can use a rich set of capabilities for container management and monitoring solutions to control their production API workloads. Learn more about DevOps pipelines here.
Decentralized ownership of infrastructure

To increase agility, API development teams can provision and own their own isolated z/OS Connect APIs so they can quickly develop, iterate and deploy APIs independently without impacting other teams. Teams can adopt continuous delivery updates of z/OS Connect at their own pace, reducing risk by avoiding large-scale updates.

The bounds of each team's environment are tightly controlled by the system programmer, who has an oversight of the resource allocation, standard security configuration, and the versions of the z/OS Connect server images allowed.

Enhanced role-based security model

Enhanced role-based security model to provide more control to security admins. This takes advantage of the improved security schemes that are provided by the OpenAPI 3 specification to deliver more granular control of user authorization at the API operation level.

z/OS Connect Images

When you use z/OS Connect to create a production-ready API, it's vital to understand the purpose of the two container images:

The Designer Image [ibm-zcon-designer]

The Designer image is used by an application developer to build and test the z/OS Connect API project. When this image is run in an OCI-compliant container runtime such as z/OS Container Extensions (z/CX), the z/OS Connect tools can be accessed in a web browser. A developer can then create their API project and when finalized, check it into source code management as a WAR file.

Figure 2. The z/OS Connect Designer image.
The z/OS Connect Designer image.
The Server Image [ibm-zcon-server]

The Server image is used to run the z/OS Connect API projects in the different stages of a production environment. When a developer creates an API project and checks it into source code management, the DevOps build process mounts the API project to the Server image. The DevOps pipeline then provisions the server image on a container runtime such as zCX, or Linux.

Figure 3. The server image.
The z/OS Connect server image.

Both z/OS Connect Designer and z/OS Connect server images are supported by any OCI-compliant container platforms. For more information, see System requirements.