IP Library Granted Patent US 11,720,653
Granted Patent B2
US 11,720,653 · App. 17/712,829 · Granted Aug 8, 2023

Software component relation engine

Inventors: Tina Huang (San Francisco, CA); Adam H. Leventhal (San Francisco, CA)
Assignee: Transposit Corporation
G06F21/121G06F8/427G06F9/44505G06F21/31
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,720,653
App. No.
17/712,829
Granted
Aug 8, 2023
Kind
B2
Abstract

Various embodiments support or provide for a software environment in which one or more software components (e.g., APIs) can be relationally composed together by logic (e.g., as defined using a computer language) to form an operation that abstracts details of the composition, such as details relating to the multiple API calls being made in the composition, to implement the logic of the operation. Depending on the embodiment, a particular software component environment can comprise one or more of the following: a data connector to an external software service; stored authentication information to establish access to the external software service; an operation having defined logic for using at least one data connector or another operation (e.g., from operation repository); or an endpoint for deploying the operation for access.

Claims (64)

1. A method comprising:

receiving, by a hardware processor, input data from a client device; and

based on the input data:

generating, by the hardware processor, a software component environment;

associating, by the hardware processor, the software component environment with a data connection to an external software service;

associating, by the hardware processor, operation logic data with the software component environment, the operation logic data describing logic for an operation, the logic that translates to a set of actions performed with respect to the external software service, via the data connection, when the operation is executed, the set of actions being selected from a unified set of actions, each action of the unified set of actions mapping to one or more application program interface specifications that result in one or more application program interface calls; and

generating, by the hardware processor, an endpoint for invoking execution of the operation, the endpoint being associated with the software component environment, the generating of the endpoint comprising configuring a set of permissions for accessing the endpoint, the set of permissions include a requirement that an entity accessing the endpoint provide an application program interface (API) key.

2. The method of claim 1 , wherein the external software service is a first external software service, the data connection is a first data connection, and the method comprises:

based on the input data:

associating, by the hardware processor, the software component environment with a second data connection to a second external software service, the logic of the operation specifying that the set of actions is performed with respect to the second external software service, via the second data connection, when the operation is executed.

3. The method of claim 1 , comprising:

based on the input data:

associating, by the hardware processor, the software component environment with data connection setting information for the data connection, the data connection setting information configuring the operation to use stored authentication information in establishing access to the external software service through the data connection.

4. The method of claim 3 , comprising:

based on the input data:

associating, by the hardware processor, the software component environment with the stored authentication information for establishing access to the external software service through the data connection.

5. The method of claim 1 , comprising:

based on the input data:

associating, by the hardware processor, the software component environment with data connection setting information for the data connection, the data connection setting information configuring the operation to request, during execution, an end user to provide credentials of an external user account to establish access to the external software service through the data connection.

6. The method of claim 1 , wherein the set of permissions include a requirement that an entity accessing the endpoint be authenticated based on credentials provided by the entity for a user account associated with the endpoint.

7. The method of claim 6 , wherein the user account is associated with the software component environment.

8. A system comprising:

a memory storing instructions; and

one or more hardware processors communicatively coupled to the memory and configured by the instructions to perform operations comprising:

receiving, by a hardware processor, input data from a client device; and

based on the input data:

generating a software component environment;

associating the software component environment with a data connection to an external software service;

associating operation logic data with the software component environment, the operation logic data describing logic for an operation, the logic that translates to a set of actions performed with respect to the external software service, via the data connection, when the operation is executed, the set of actions being selected from a unified set of actions, each action of the unified set of actions mapping to one or more application program interface specifications that result in one or more application program interface calls; and

generating an endpoint for invoking execution of the operation, the endpoint being associated with the software component environment, the generating of the endpoint comprising configuring a set of permissions for accessing the endpoint, the set of permissions include a requirement that an entity accessing the endpoint provide an application program interface (API) key.

9. The system of claim 8 , wherein the external software service is a first external software service, the data connection is a first data connection, and the operations comprise:

based on the input data:

associating, by the hardware processor, the software component environment with a second data connection to a second external software service, the logic of the operation specifying that the set of actions is performed with respect to the second external software service, via the second data connection, when the operation is executed.

10. The system of claim 8 , wherein the operations comprise:

based on the input data:

associating, by the hardware processor, the software component environment with data connection setting information for the data connection, the data connection setting information configuring the operation to use stored authentication information in establishing access to the external software service through the data connection.

11. The system of claim 10 , wherein the operations comprise:

based on the input data:

associating, by the hardware processor, the software component environment with the stored authentication information for establishing access to the external software service through the data connection.

12. The system of claim 8 , wherein the operations comprise:

based on the input data:

associating, by the hardware processor, the software component environment with data connection setting information for the data connection, the data connection setting information configuring the operation to request, during execution, an end user to provide credentials of an external user account to establish access to the external software service through the data connection.

13. The system of claim 8 , wherein the set of permissions include a requirement that an entity accessing the endpoint be authenticated based on credentials provided by the entity for a user account associated with the endpoint.

14. The system of claim 13 , wherein the user account is associated with the software component environment.

15. A non-transitory computer-readable medium comprising instructions that, when executed by a hardware processor of a device, cause the device to perform operations comprising:

receiving, by a hardware processor, input data from a client device; and

based on the input data:

generating a software component environment;

associating the software component environment with a data connection to an external software service;

associating operation logic data with the software component environment, the operation logic data describing logic for an operation, the logic that translates to a set of actions performed with respect to the external software service, via the data connection, when the operation is executed, the set of actions being selected from a unified set of actions, each action of the unified set of actions mapping to one or more application program interface specifications that result in one or more application program interface calls; and

generating an endpoint for invoking execution of the operation, the endpoint being associated with the software component environment, the generating of the endpoint comprising configuring a set of permissions for accessing the endpoint, the set of permissions include a requirement that an entity accessing the endpoint provide an application program interface (API) key.

16. The non-transitory computer-readable medium of claim 15 , wherein the external software service is a first external software service, the data connection is a first data connection, and the operations comprise:

based on the input data:

associating, by the hardware processor, the software component environment with a second data connection to a second external software service, the logic of the operation specifying that the set of actions is performed with respect to the second external software service, via the second data connection, when the operation is executed.

17. The non-transitory computer-readable medium of claim 15 , wherein the operations comprise:

based on the input data:

associating, by the hardware processor, the software component environment with data connection setting information for the data connection, the data connection setting information configuring the operation to use stored authentication information in establishing access to the external software service through the data connection.

18. The non-transitory computer-readable medium of claim 17 , wherein the operations comprise:

based on the input data:

associating, by the hardware processor, the software component environment with the stored authentication information for establishing access to the external software service through the data connection.

19. The non-transitory computer-readable medium of claim 15 , wherein the operations comprise:

based on the input data:

associating, by the hardware processor, the software component environment with data connection setting information for the data connection, the data connection setting information configuring the operation to request, during execution, an end user to provide credentials of an external user account to establish access to the external software service through the data connection.

20. The non-transitory computer-readable medium of claim 15 , wherein the set of permissions include a requirement that an entity accessing the endpoint be authenticated based on credentials provided by the entity for a user account associated with the endpoint.

Assignments (6)
RELEASE OF SECURITY INTEREST Recorded Aug 18, 2026
From: SILICON VALLEY BANK, A DIVISION OF FIRST-CITIZENS BANK & TRUST COMPANY
To: HARNESS INC.; HARNESS INTERNATIONAL, INC.
Reel/Frame 075690/0701 →
RELEASE OF SECURITY INTEREST Recorded Aug 18, 2026
From: SILICON VALLEY BANK, A DIVISION OF FIRST-CITIZENS BANK & TRUST COMPANY, AS AGENT
To: HARNESS INC.; HARNESS INTERNATIONAL, INC.
Reel/Frame 075690/0915 →
SECURITY INTEREST Recorded Nov 24, 2024
From: HARNESS INC.; HARNESS INTERNATIONAL, INC.
To: FIRST-CITIZENS BANK & TRUST COMPANY
Reel/Frame 069387/0805 →
SECURITY INTEREST Recorded Nov 24, 2024
From: HARNESS INC.; HARNESS INTERNATIONAL, INC.
To: FIRST-CITIZENS BANK & TRUST COMPANY, AS AGENT
Reel/Frame 069387/0816 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 2, 2024
From: TRANSPOSIT CORPORATION
To: HARNESS INC.
Reel/Frame 068775/0397 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 20, 2023
From: HUANG, TINA; LEVENTHAL, ADAM H.
To: TRANSPOSIT CORPORATION
Reel/Frame 063994/0355 →
Continuity (2)
Continuation 16515717 · Jul 18, 2019
Related Publication 20220222324A1 · Jul 14, 2022