Retina API
home
This document describes the process we followed for exposing the Retina Rest API on Cloud.
During the process, we completed the following steps
- Decide which endpoints should be exposed (either OOTB or custom endpoints)
- Create a JSON file (OPEN API 3.0) that describes the selected endpoints
- Create (using the above JSON file) and Deploy a self-service mule App (Proxy API) to expose the aforementioned endpoints to Cloud
Access API
To access Retina’s Exposed API, a client needs to request the proper credentials (client_id and client_secret) from API Administrators.
Administrators may use the “Exchange” screens to generate credentials for a new client. For details check here: https://rochewiki.roche.com/confluence/display/APIGOV/API+Consumer+Guidelines
Also, from “API Manager” screens, Administrators can approve/revoke the access to any registered client
Example Call
A client can call one of the exposed endpoints in a similar way (eg same Body, same http method, same Basic authentication credentials etc) as these endpoints are called by direct/internal retina clients.
However, the following two parameters should be passed as https headers
- https header: cliend_id
- this should contain the client_id value as it is provided by Proxy API administrators
- https header: client_secret
- this should contain the client_secret value as it is provided by Proxy API administrators
Moreover, valid Retina credentials (username & password) should be passed as Basic Authentication parameters in the https request.
Client SSL Certificate
Each Client should make sure that a valid client SSL certificate should be sent on each https requests.
To create a valid certificate, check here: https://docs.google.com/document/d/1t_JsNZLh0-jN58ujX-A4JyWlt8b5ejjU6eLhgTvEz-I