IP Library › Granted Patent US 12,386,685
Granted Patent B2
US 12,386,685 · App. 17/505,065 · Granted Aug 12, 2025

Facilitating access to API integrations

Inventors: Bruno Marquie (Fort Collins, CO); Harshavardhan Gupta (Kishanganj, IN); Madhumitha Raveendar (Cary, NC); Gaurav Saraf (Apex, NC); Venkatesh Bonageri (Raleigh, NC); Sangamesh Vishweshwar Kalagond (Vijayapura, IN); Rakesh Kumar (Cary, NC)
G06F9/543G06F16/24575
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 12,386,685
App. No.
17/505,065
Granted
Aug 12, 2025
Kind
B2
Abstract

One disclosed method involves receiving, at a first application programming interface (API) endpoint of a computing system, a first API call requesting performance of a first type of operation; invoking, by the computing system and based on the first API call, a first process to send at least a second API call to a second API endpoint of a first system of record; receiving, by the computing system and from the first system of record, a first response to the second API call; and sending, from the computing system to a source of the first API call, a second response that is based at least in part on the first response.

Claims (44)

1. A method, comprising:

receiving, by a computing system from a first device, a request to identify application programming interface (API) endpoints that are configured to perform a search operation;

determining, by the computing system, that first and second API endpoints of the computing system are both configured to perform search operation operations;

sending, from the computing system to the first device and based at least in part on the first and second API endpoints both being configured to perform search operations, indications of the first API endpoint and the second API endpoint;

receiving, at the first API endpoint and from the first device, a first API call requesting performance of a first search operation;

executing, by the computing system and based on the first API call, a first script to send at least a second API call to a third API endpoint of a first system of record, the second API call representing a request to perform the first search operation;

receiving, by the computing system and from the first system of record, first search results in response to the second API call;

generating, by the computing system and based at least in part on the first search results, a first response to the first API call, the first response representing the first search results;

sending, from the computing system to the first device, the first response;

receiving, at the second API endpoint and from the first device, a third API call requesting performance of a second search operation;

executing, by the computing system and based on the third API call, a second script to generate at least a fourth API call to a fourth API endpoint of a second system of record, the fourth API call representing a request to perform the second search operation;

receiving, by the computing system and from the second system of record, second search results in response to the fourth API call;

generating, by the computing system and based at least in part on the second search results, a second response to the third API call, the second response representing the second search results; and

sending, from the computing system to the first device, the second response.

2. The method of claim 1 , wherein determining that the first API endpoint is configured to perform the search operation further comprises:

determining that the request to identify the API endpoints includes a first indicator of the search operation;

determining that the first API endpoint is associated with the first indicator; and

determining, based at least in part on the request to identify the API endpoints including the first indicator and the first API endpoint being associated with the first indicator, that the first API endpoint is configured to perform the search operation.

3. The method of claim 2 further comprising:

prior to receiving the request to identify the API endpoints, receiving, from a second device, an indication that the first API endpoint is configured to perform the search operation; and

storing, by the computing system and based at least in part on the first API endpoint being configured to perform the search operation, a second indicator in association with the first API endpoint;

wherein determining that the first API endpoint is associated with the first indicator further comprises determining that the second indicator corresponds to the first indicator.

4. The method of claim 1 , further comprising:

determining, by the computing system, access credentials associated with a user of the first API call; and

using the access credentials to make the second API call.

5. The method of claim 1 , wherein the first API endpoint has a first input schema, the second API endpoint has a second input schema that is different than the first input schema, and executing the first script further comprises:

generating, by the computing system, the second API call according to the second input schema.

6. The method of claim 1 , wherein the first API endpoint has a first output schema, the second API endpoint has a second output schema that is different than the first output schema, and generating the second response further comprises:

generating, by the computing system, the second response in accordance with the first output schema.

7. The method of claim 1 , wherein the first API call and the third API call originate from the first device, and the method further comprises:

receiving, by the computing system and from the first device, a request to identify API endpoints configured to perform a first type of operation;

determining, by the computing system, that the first API endpoint and the third API endpoint are both configured to perform the first type of operation; and

sending, from the computing system to the first device and based at least in part on the first API endpoint and the third API endpoint both being configured to perform the first type of operation, indications of the first API endpoint and the third API endpoint.

8. The method of claim 7 , wherein determining that the first API endpoint and the third API endpoint are both configured to perform the first type of operation further comprises:

determining that the request to identify the API endpoints includes a first indicator of the first type of operation;

determining that the first API endpoint is associated with the first indicator;

determining that the third API endpoint is associated with the first indicator; and

determining, based at least in part on the request to identify the API endpoints including the first indicator and the first API endpoint and the third API endpoint both being associated with the first indicator, that the first API endpoint and the third API endpoint are both configured to perform the first type of operation.

9. The method of claim 8 , further comprising:

prior to receiving the request to identify the API endpoints, receiving a first indication that first API endpoint is configured to perform the first type of operation;

storing, by the computing system and based at least in part on the first API endpoint being configured to perform the first type of operation, a second indicator in association with the first API endpoint;

prior to receiving the request, receiving a second indication that third API endpoint is configured to perform the first type of operation; and

storing, by the computing system and based at least in part on the third API endpoint being configured to perform the first type of operation, a third indicator in association with the third API endpoint;

wherein determining that the first API endpoint is associated with the first indicator further comprises determining that the second indicator corresponds to the first indicator, and determining that the third API endpoint is associated with the first indicator further comprises determining that the third indicator corresponds to the first indicator.

Assignments (9)
PATENT SECURITY AGREEMENT Recorded Aug 15, 2025
From: CLOUD SOFTWARE GROUP, INC.; CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 072488/0172 →
SECURITY INTEREST Recorded May 24, 2024
From: CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.); CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 067662/0568 →
PATENT SECURITY AGREEMENT Recorded Apr 14, 2023
From: CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.); CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 063340/0164 →
RELEASE AND REASSIGNMENT OF SECURITY INTEREST IN PATENT (REEL/FRAME 062113/0001) Recorded Apr 14, 2023
From: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
To: CITRIX SYSTEMS, INC.; CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.)
Reel/Frame 063339/0525 →
PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 062112/0262 →
PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 062113/0470 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 062113/0001 →
SECURITY INTEREST Recorded Sep 30, 2022
From: CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION
Reel/Frame 062079/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 20, 2021
From: KALAGOND, SANGAMESH VISHWESHWAR; KUMAR, RAKESH
To: CITRIX SYSTEMS, INC.
Reel/Frame 058429/0354 →
Continuity (1)
Related Publication 20230123860A1 · Apr 20, 2023
References Cited (5)
US 20180278471A1 · Burli · 2018 [cited by examiner]
US 20190042323A1 · Shotton · 2019 [cited by examiner]
US 20200192727A1 · Savenkov · 2020 [cited by examiner]
US 20210117946A1 · Poole · 2021 [cited by examiner]
US 20210294671A1 · Hirsekorn · 2021 [cited by examiner]