IP Library Granted Patent US 11,652,652
Granted Patent B2
US 11,652,652 · App. 17/357,307 · Granted May 16, 2023

Function as a service console for an online application exchange platform

Inventors: Daniel Craggs (Montreal, CA); Mathew Spolin (San Francisco, CA); Fivos Constantinou (San Francisco, CA); Jean-Philippe Boudreault (Montreal, CA); Raheem Syed (San Francisco, CA)
Assignee: AppDirect, Inc.
H04L12/1432
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,652,652
App. No.
17/357,307
Granted
May 16, 2023
Kind
B2
Abstract

A method for managing an application exchange platform includes receiving, from a developer, a service function, wherein the service function includes configuration details for an application available through an online application exchange. The method includes deploying the service function in the application exchange, identifying a first domain event requesting access to the service function from a user, and calling the service function in the online application exchange, in response to the first domain event. The method also includes recording a metric associate with the service function and a return parameter, emitting a second domain event indicative of a completion of the service function, and charging, with a billing tool, an appropriate party based on a usage metadata for the service function. A system and a non-transitory, computer-readable memory storing instructions to cause the system to perform the above method are also provided.

Claims (52)

1. A computer-implemented method, comprising:

receiving, from a developer, a service function, wherein the service function includes configuration details for an application available through an online application exchange;

deploying the service function in the online application exchange;

identifying a first domain event requesting access to the service function from a user;

calling, with a wrapper function, the service function in the online application exchange, in response to the first domain event;

recording, with a wrapper function executed on top of the service function, a metric associated with the service function and a return parameter;

emitting a second domain event indicative of a completion of the service function;

charging, with a billing tool, an appropriate party based on a usage metadata for the service function;

granting fine grained permissions to an end user based on the configuration details;

decrypting a secret key in the configuration details upon receipt of the first domain event; and

displaying, in a function dashboard for the online application exchange, a graphic value of the metric associated with the service function.

2. The computer-implemented method of claim 1 , wherein the configuration details include a whitelist, and an external authentication network address, further comprising granting fine grained permissions to an end user based on the configuration details.

3. The computer-implemented method of claim 1 , wherein the configuration details include a secret key, further comprising decrypting the secret key upon receipt of the first domain event.

4. The computer-implemented method of claim 1 , wherein the first domain event is a subscription request to an application from a user, further comprising requesting user credentials to validate a user account for the application.

5. The computer-implemented method of claim 1 , further comprising reporting, to the developer, the metric associated with the service function.

6. The computer-implemented method of claim 1 , wherein recording a metric associated with the service function comprises recording a return parameter provided by the service function.

7. The computer-implemented method of claim 1 , wherein recording a metric comprises generating a value for the metric as a nonlinear combination of a central processor usage, a number of threads used by the service function, and a memory usage.

8. The computer-implemented method of claim 1 , wherein the return parameter comprises one of a succeed, fail or pending event, further comprising resubmitting a request for the service function when the return parameter is failed.

9. The computer-implemented method of claim 1 , wherein charging an appropriate party comprises charging either of an end user of the application or a platform owner, based on a selection by the developer.

10. The computer-implemented method of claim 1 , further comprising determining a cost that has a non-linear dependence with a computational time usage to execute the service function.

11. The computer-implemented method of claim 1 , further comprising updating the function dashboard in a developer console when the second domain event is emitted.

12. The computer-implemented method of claim 1 , further comprising recording the first domain event indicative of a completion of the service function in a database.

13. A system, comprising:

a memory, storing instructions; and

one or more processors, configured to execute the instructions to cause the system to:

receive, from a developer, a service function, wherein the service function includes configuration details for an application available through an online application exchange;

deploy the service function in the online application exchange;

identify a first domain event, which requests access to the service function from a user;

call, with a wrapper function, the service function in the online application exchange, in response to the first domain event;

record, with a wrapper function executed on top of the service function, a metric associated with the service function and a return parameter;

emit a second domain event indicative of a completion of the service function;

charge, with a billing tool, an appropriate party based on a usage metadata for the service function;

grant fine grained permissions to an end user based on the configuration details;

decrypt a secret key in the configuration details upon receipt of the first domain event; and

display, in a function dashboard for the online application exchange, a graphic value of the metric associated with the service function.

14. The system of claim 13 , wherein the configuration details include a secret key, and the one or more processors further execute instructions to decrypt the secret key upon receipt of the first domain event.

15. The system of claim 13 , wherein the first domain event is a subscription request to an application from a user, and the one or more processors further execute instructions to request user credentials to validate a user account for the application.

16. The system of claim 13 , wherein the one or more processors further execute instructions to report, to the developer, the metric associated with the service function.

17. The system of claim 13 , wherein to record a metric associated with the service function the one or more processors execute instructions to record a return parameter provided by the service function.

18. A non-transitory, computer-readable medium storing instructions which, when executed by a processor, cause a computer to perform a method, the method comprising:

receiving, from a developer, a service function, wherein the service function includes configuration details for an application available through an online application exchange;

deploying the service function in the online application exchange;

identifying a first domain event, which requests access to the service function from a user;

calling, with a wrapper function, the service function in the online application exchange, in response to the first domain event;

recording, with a wrapper function executed on top of the service function, a metric associated with the service function and a return parameter;

emitting a second domain event indicative of a completion of the service function;

charging, with a billing tool, an appropriate party based on a usage metadata for the service function;

granting fine grained permissions to an end user based on the configuration details;

decrypting a secret key in the configuration details upon receipt of the first domain event; and

displaying, in a function dashboard for the online application exchange, a graphic value of the metric associated with the service function.

19. The non-transitory, computer-readable medium of claim 18 , wherein the first domain event is a subscription request to an application from a user, and the processor further executes instructions to cause the computer to perform requesting user credentials to validate a user account for the application.

20. The non-transitory, computer-readable medium of claim 18 , wherein the processor further executes instructions to cause the computer to perform reporting, to the developer, the metric associated with the service function.

Assignments (7)
RELEASE OF SECURITY INTEREST Recorded Oct 29, 2025
From: BANK OF MONTREAL, AS ADMINISTRATIVE AGENT
To: APPDIRECT, INC.
Reel/Frame 072723/0104 →
SECURITY INTEREST Recorded Sep 22, 2025
From: APPDIRECT, INC.; LEFTRONICDIRECT INC.; APPDIRECT CSP, INC.; APPSMART, INC.; APPDIRECT AGENT SERVICES, INC.; APPSMART CCC, INC.; APPSMART ENERGY SERVICES, INC.; ATLANTA DATACOM, INC.; BUILTFIRST TECHNOLOGIES, INC.; CONVERGED NETWORK SERVICES GROUP, LLC; CNSG VG SOLUTIONS, LLC; MICROCORP LLC; TBI, INC.; APPDIRECT CANADA INC.; NEOSYSTEMS INC.
To: HERCULES CAPITAL, INC., AS AGENT
Reel/Frame 072334/0967 →
RELEASE OF SECURITY INTEREST Recorded Jun 25, 2024
From: HERCULES CAPITAL, INC., AS AGENT
To: APPDDIRECT, INC.; STANDING CLOUD DIRECT, INC.; CLOUD SERVICE PARTNERS, INC.
Reel/Frame 067835/0236 →
SECURITY INTEREST Recorded May 1, 2024
From: APPDIRECT, INC.
To: BANK OF MONTREAL, AS AGENT
Reel/Frame 067280/0815 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 3, 2022
From: CRAGGS, DANIEL; SPOLIN, MATHEW; CONSTANTINOU, FIVOS; BOUDREAULT, JEAN-PHILIPPE; SYED, RAHEEM
To: APPDIRECT, INC.
Reel/Frame 060712/0064 →
SECURITY INTEREST Recorded Dec 20, 2021
From: APPDIRECT, INC.; STANDING CLOUD DIRECT, INC.; CLOUD SERVICE PARTNERS, INC.
To: HERCULES CAPITAL, INC., AS AGENT
Reel/Frame 058437/0829 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 29, 2021
From: CRAGGS, DANIEL; SPOLIN, MATHEW; CONSTANTINOU, FIVOS; BOUDREAULT, JEAN-PHILIPPE; SYED, RAHEEM
To: APPDIRECT, INC.
Reel/Frame 056707/0268 →
Continuity (1)
Related Publication 20220417046A1 · Dec 29, 2022
Cited By (1)
US 12,498,907