Skip to main content

REST API Client

Succeed Insurance needs to be able to connect directly from their InsuranceSuite applications to the REST application deployed throughout their ecosystem. They want to understand how they can use the REST API Client to connect to those endpoints.

Learning Objective

The learning objective for this module is to explain the basic functionality of the REST API Client.

Overview

The InsuranceSuite REST API Client provides functionality that Guidewire InsuranceSuite applications use to make outbound HTTP calls to OpenAPI Spec-compliant REST services. Using the client enables loosely coupled external code to be invoked by events that are sourced in InsuranceSuite applications.

Note: The REST API Client does not support outbound HTTP calls to InsuranceSuite applications, such as ClaimCenter, PolicyCenter, and BillingCenter.

The Guidewire REST API client consists of two modules, a client plugin and a client library:

  • The client plugin generates Java REST API code based on an OpenAPI Spec definition file and packages it together with the REST API Client Library.

  • The client library provides utilities that support writing code to invoke REST API classes with fault tolerance. The integration developers use it to invoke classes generated by the REST API Client plugin and make synchronous REST API calls from InsuranceSuite.

REST API Client Overview

About the client plugin

The client plugin generates OpenFeign based REST clients from an OpenAPI Spec definition. The integration developers install the generated client in an InsuranceSuite application and use it to make outbound HTTP calls to OpenAPI Spec-compliant REST services.

The client plugin uses the OpenAPI Generator tool to automatically generate API client libraries, server stubs, documentation, and configuration that is based on an OpenAPI Spec.

About the client library

The client library is distributed as a JAR file. The library works with OpenFeign annotated API and Jackson annotated data objects. Integration developers can manually create these objects or provide existing ones. If their REST service complies with the OpenAPI Spec they can use the client plugin to generate that set of classes.

The library provides the following features:

  • Code generation in Java and isolation from Gosu for rapid development.

  • Integrates with Resilience4j to provide a lightweight, easy-to-use fault tolerance library.

  • Integrates with OpenFeign to facilitate the creation of web service client implementations, with quality-of-service features, configurable and customizable clients. Uses OpenFeign to implement timeout.

  • Fault tolerance with retry, circuit breaker, and fallback.

  • Observability with logging and traceability.

  • Authentication that supports Basic, API Key, Bearer, OAuth 2.0, and Mutual TLS authentications.

  • Uses Apache HttpClient for robust client connections.

  • Uses Apache OAuth implementation for OAuth authentication.

  • By default, uses IS standard headers in logging context.

  • Uses Jackson as JSON parser.

Additional information

There is a course that provides more detail on REST API Client and lets you get hands-on experience with them. It is part of the current Insurance Suite Cloud Integration track.