IP Library › Granted Patent US 11,423,111
Granted Patent B2
US 11,423,111 · App. 16/668,374 · Granted Aug 23, 2022

Client API for rest based endpoints for a multi-tenant identify cloud service

Inventor: Nikhil Yograj Vaishnavi (Fremont, CA)
Assignee: ORACLE INTERNATIONAL CORPORATION
G06F16/955G06F9/541G06F16/953G06F16/958H04L67/10
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,423,111
App. No.
16/668,374
Granted
Aug 23, 2022
Kind
B2
Abstract

One embodiment is a client API module for accessing an endpoint that includes a REST API corresponding to a server. Embodiments initialize an endpoint request and in response receive a URI of the server and a client context. Embodiments provide a get service request to the server based on the URI and the client context and in response receive a service instance and initialize a service context. Embodiments generate, based on the service context, a request including one of a create, a search, an update, a replace, or a delete requests, and a corresponding REST call including one of an HTTP post, an HTTP get, an HTTP patch and HTTP put or an HTTP delete.

Claims (34)

1. A method of accessing an endpoint, the endpoint comprising a representational state transfer application programming interface (REST API) corresponding to a server, the method implemented by a client API module and comprising:

initializing an endpoint request and in response receiving a Uniform Resource Identifier (URI) of the server and a client context comprising a first set of static maps of global key-value pairs and accessible during a life of the client API module, the client context maintaining the URI, wherein the URI comprises a baseURI and the initializing comprises initializing an internal HK2 and setting up bindings;

providing a get service request to the server based on the URI and the client context and in response receiving a service instance and initializing a service context, the service context comprising a second set of maps of key-value pairs having a lifespan limited to a corresponding service class that the key-value pairs are set; and

generating, using the service instance and based on the service context, a request comprising one of a create, a search, an update, a replace, or a delete requests, and a corresponding REST call comprising one of a HyperText Transfer Protocol (HTTP) post, an HTTP get, an HTTP patch and HTTP put or an HTTP delete;

wherein the endpoint is one of a System for Cross-domain Identity Management (SCIM) based service, an HTTP service or a streaming service.

2. The method of claim 1 , wherein the baseURI is read on instantiation to prepare a class Jersey Client object.

3. The method of claim 1 , wherein the service context maintains context information that includes a tenant name and an access token.

4. The method of claim 1 , wherein the endpoint comprises a microservice that performs an identity management service in response to the request.

5. The method of claim 1 , wherein the endpoint is one of a plurality of endpoints in a multi-tenant identity cloud service, and each endpoint corresponds to a System for Cross-domain Identity Management (SCIM) based REST endpoint that comprises attributes that are provided by the request.

6. The method of claim 5 , wherein each endpoint comprises a microservice, and each microservice comprises one or more corresponding APIs.

7. A non-transitory computer-readable medium storing instructions which, when executed by at least one of a plurality of processors, cause the processor to access an endpoint, the endpoint comprising a representational state transfer application programming interface (REST API) corresponding to a server, the accessing implemented by a client API module and comprising:

initializing an endpoint request and in response receiving a Uniform Resource Identifier (URI) of the server and a client context comprising a first set of static maps of global key-value pairs and accessible during a life of the client API module, the client context maintaining the URI, wherein the URI comprises a baseURI and the initializing comprises initializing an internal HK2 and setting up bindings;

providing a get service request to the server based on the URI and the client context and in response receiving a service instance and initializing a service context, the service context comprising a second set of maps of key-value pairs having a lifespan limited to a corresponding service class that the key-value pairs are set; and

generating, using the service instance and based on the service context, a request comprising one of a create, a search, an update, a replace, or a delete requests, and a corresponding REST call comprising one of a HyperText Transfer Protocol (HTTP) post, an HTTP get, an HTTP patch and HTTP put or an HTTP delete;

wherein the endpoint is one of a System for Cross-domain Identity Management (SCIM) based service, an HTTP service or a streaming service.

8. The non-transitory computer-readable medium of claim 7 , wherein the baseURL is read on instantiation to prepare a class Jersey Client object.

9. The non-transitory computer-readable medium of claim 7 , wherein the service context maintains context information that includes a tenant name and an access token.

10. The non-transitory computer-readable medium of claim 7 , wherein the endpoint comprises a microservice that performs an identity management service in response to the request.

11. The non-transitory computer-readable medium of claim 7 , wherein the endpoint is one of a plurality of endpoints in a multi-tenant identity cloud service, and each endpoint corresponds to a System for Cross-domain Identity Management (SCIM) based REST endpoint that comprises attributes that are provided by the request.

12. The non-transitory computer-readable medium of claim 11 , wherein each endpoint comprises a microservice, and each microservice comprises one or more corresponding APIs.

13. A multi-tenant identity cloud system comprising:

a plurality of endpoints, each endpoint comprising a representational state transfer application programming interface (REST API) corresponding to a server;

a client API module comprising one or more hardware processors executing instructions for accessing at least one of the endpoints, the accessing comprising:

initializing an endpoint request and in response receiving a Uniform Resource Identifier (URI) of the server and a client context comprising a first set of static maps of global key-value pairs and accessible during a life of the client API module, the client context maintaining the URI, wherein the URI comprises a baseURI and the initializing comprises initializing an internal HK2 and setting up bindings;

providing a get service request to the server based on the URI and the client context and in response receiving a service instance and initializing a service context, the service context comprising a second set of maps of key-value pairs having a lifespan limited to a corresponding service class that the key-value pairs are set; and

generating, using the service instance and based on the service context, a request comprising one of a create, a search, an update, a replace, or a delete requests, and a corresponding REST call comprising one of a HyperText Transfer Protocol (HTTP) post, an HTTP get, an HTTP patch and HTTP put or an HTTP delete;

wherein each endpoint is one of a System for Cross-domain Identity Management (SCIM) based service, an HTTP service or a streaming service.

14. The system of claim 13 , wherein the baseURI is read on instantiation to prepare a class Jersey Client object.

15. The system of claim 13 , wherein the service context maintains context information that includes a tenant name and an access token.

16. The system of claim 13 , wherein each endpoint corresponds to a System for Cross-domain Identity Management (SCIM) based REST endpoint that comprises attributes that are provided by the request.

17. The system of claim 16 , wherein each endpoint comprises a microservice, and each microservice comprises one or more corresponding APIs.

18. The system of claim 13 , wherein the endpoint comprises a microservice that performs an identity management service in response to the request.

19. The system of claim 13 , wherein the client API module functions as a software development kit.

20. The system of claim 13 , wherein the client API module functions as a software development kit.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 30, 2019
From: VAISHNAVI, NIKHIL YOGRAJ
To: ORACLE INTERNATIONAL CORPORATION
Reel/Frame 050862/0783 →
Continuity (2)
Provisional Application 62809814 · Feb 25, 2019
Related Publication 20200272670A1 · Aug 27, 2020