A Technical Overview Of Adapters – FINTLabs Technical Docs

Introduction

A Common API is a API on a business application. The Common API gets and sends information to/from a clientele application through an arranger. This document aims to describe how an arranger should be implemented .

Architectural overview – Common API

Overview

Information Models

The Common API consist of standardize information models that will presented as resources in the Consumer API. Each Common API can consist of one or more information models. The models are documented here hypertext transfer protocol : //informasjonsmodell.felleskomponent.no

Consumer API

Consumer API is where clients ( applications, processes etc ) access the data from the Business Application. Provider API Provider API is where the arranger feeds the Common API with data.

Adapter

The adapter is the “ connection ” between the Common API and the Business Application. The independent tasks for the adapter is : Getting data from the Business Application Mapping the data from the business application model to the Common API model Sending the mapped data to the Common API

Common API internals

The Common API has two main services :

  • Cache service
  • Event service

Cache Service

The hoard overhaul has the pursue responsibility : store data from the business applications for all the organisations using the Common API Populate the cache Keeps track of which data has changed since the last clock the hoard was populated

Event service

The internals in the Common API is event based. An consequence is created by :

  • Cache Service
  • Client

When a customer hits a end point in the Consumer API the Common API is generating an event and sends it to the Cache Service. An consequence from the customer will never go all the way down to the arranger .
When the Cache Service need to update the hoard it sends an consequence down to the arranger .
All events are logged at all stages .
Event Flow
Event flow

Provider API

The provider API is where the arranger communicates with the Common API. The adapter connects to get events from the Common API and sends back the reception with the information from the clientele application.

The supplier API makes use of SSE ( Server-Sent-Events ) ( hypertext transfer protocol : //en.wikipedia.org/wiki/Server-sent_events ) to send events to the adapter .

Endpoints

Adapter Flow

Endpoint Method Flow# Description
/provider/sse/:id GET 1 The adapter registers on this endpoint. Id should be an UUID. If the adapter supports several orgId’s each orgId must have it’s own UUID.
/provider/status POST 3 When the adapter receives an event it should post back a status to tell the provider if the event can be handled. Adapters must accept or reject events with /status within 120 seconds.
/provider/response POST 4 This is where the adapter sends back the response. Adapters must respond to events within 20 minutes.

Authentication

The provider API is secured with OAuth2 using the Resource Owner Password Credentials Grant flow .
Authentication
The Adapter is both Resource Owner and Client. See hypertext transfer protocol : //github.com/FINTprosjektet/fint-oauth-consumer-client-sample for an model execution .

Error handling

The arranger must handle the following error scenarios : The event send from the provider is not silent There is something wrong with the receive event Could not communicate with the beginning system
All of the error situations should result in an event sent from the arranger to the supplier with the condition PROVIDER_REJECTED. If the adapter has information about the error this can be added to the message plain in the event-object .

Adapter skeleton

There is a skeleton as a start detail and guideline for develop a adapter. This skeleton has code for communicating with the provider api. See the readme for more information .

Language Link
Java https://github.com/FINTprosjektet/fint-sse-adapter-skeleton
C# https://github.com/FINTprosjektet/fint-sse-adapter-skeleton-csharp

Information Models

The main determination of the arranger is to map the home business lotion model to the FINT information model. This includes relations between objects .
The FINT information model consist of two key elements :

Main classes which represent the resources. This can be a person, scholar, employee, use, code and thus on. Relations between independent classes .
For more information about the FINT information model and a description of all the classes, attributes and relations one can go to https : //informasjonsmodell.felleskomponent.no .
The technical implementations of the models can be found at hypertext transfer protocol : //github.com/FINTmodels .

Vocabulary

Norwegian term English term
Felleskomponent Common API
Fagapplikasjon Business application
source : https://thefartiste.com
Category : Tech

About admin

I am the owner of the website thefartiste.com, my purpose is to bring all the most useful information to users.

Check Also

articlewriting1

Manage participants in a zoom meeting webinar

Call the people who attend the meet as follows Alternate host host Who scheduled the …

Leave a Reply

Your email address will not be published.