IP Library Granted Patent US 11,477,134
Granted Patent B1
US 11,477,134 · App. 17/219,026 · Granted Oct 18, 2022

Computer resource-based API transaction method and system

Inventors: Yevgeniy Viatcheslavovich Khmelev (San Antonio, TX); Christopher Russell (The Colony, TX); Deborah Janette Schulz (San Antonio, TX); David Morley (San Antonio, TX); Gregory Brian Meyer (San Antonio, TX); Ryan Thomas Russell (The Colony, TX)
Assignee: United Services Automobile Association (USAA)
H04L47/781H04L47/762H04L47/808H04L47/826
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,477,134
App. No.
17/219,026
Granted
Oct 18, 2022
Kind
B1
Abstract

A transactional method and system of managing access to API services based on the performance of computational tasks by an end-user is disclosed. The system and method are configured to identify requests from an end-user to an API for services that are associated with a transactional cost. This cost is passed on to the end-user by generation of a computational task assignment to be completed by the client computing system. Once the assignment has been performed, the end-user may be granted access to the requested service.

Claims (84)

1. A method of managing requests to an application programming interface (API), the method comprising:

identifying, for a transaction processing task, a plurality of task units;

receiving, at a first time, from a user account, a first request to access a first service offered through the API;

determining that access to the first service is conditional upon performance of a first amount of the transaction processing task;

assigning, to the user account, a first set of task units from the plurality of task units equivalent to the first amount;

receiving a first indication that at least the first set of task units has been performed;

granting to the user account, in response to receiving the first indication, a first access session of the first service;

receiving, from the user account, a second request to access a second service offered through the API;

determining that access to the second service is conditional upon performance of at least a second amount of the transaction processing task that differs from the first amount;

assigning, to the user account, a second set of task units from the plurality of task units equivalent to the second amount;

receiving a second indication that the second set of task units has been performed; and

granting to the user account, in response to receiving the second indication, a second access session of the second service.

2. The method of claim 1 , wherein an access record granting a predetermined number of subsequent access sessions of the first service to the user account is generated in response to receiving the first indication.

3. The method of claim 2 , further comprising:

receiving from the user account, at a second time after the first time, a second request to access the first service;

determining that the user account is associated with the access record; and

granting, in response to determining the user account is associated with the access record, a second access session of the first service.

4. The method of claim 3 , further comprising:

receiving, from the user account, a first number of requests to access the first service;

determining the first number of requests exceeds the predetermined number; and

assigning, to the user account, a second set of task units from the plurality of task units equivalent to the first amount.

5. The method of claim 1 , wherein the first set of task units further includes an artificially generated verification task which has a predefined outcome.

6. The method of claim 1 , wherein the API receives an average of a first number of requests for the first service over a first period of time and a second number of requests for the second service over the first period of time, and the difference between the first amount and the second amount is proportional to a difference between the first number and second number.

7. The method of claim 1 , further comprising:

assigning, to the user account, in addition to the first set of task units, one or more verification tasks;

receiving, from the user account, a signal corresponding to a response to the assignment of the first set of task units and one or more verification tasks, each verification task representing a dummy task with a predefined outcome;

verifying the one or more verification tasks were performed correctly; and

generating the first indication in response to verifying the one or more verification tasks were performed correctly.

8. The method of claim 1 , further comprising:

receiving, at a second time before the first time, an initial request from the user account for trial access of the first service;

determining that trial access to the first service is available to the user account; and

granting to the user account a trial access session of the first service prior to the granting of the first access session.

9. The method of claim 1 , further comprising:

determining that granting the user account access to the first service is associated with a first transactional cost and granting the user account access to the second service is associated with a second transactional cost that is lower than the first transactional cost; and

wherein a calculation of the first amount is based at least on the first transactional cost, a calculation of the second amount is based at least on the second transactional cost, and the first amount is greater than the second amount.

10. The method of claim 1 , further comprising providing, to the user account, a program configured to execute the performance of the first set of task units.

11. A system of managing requests to an application programming interface (API), the system comprising a processor and machine-readable media including instructions which, when executed by the processor, cause the processor to:

identify, for a transaction processing task, a plurality of task units;

receive, at a first time, from a user account, a first request to access a first service offered through the API;

determine that access to the first service is conditional upon performance of a first amount of the transaction processing task;

assign, to the user account, a first set of task units from the plurality of task units equivalent to the first amount;

receive a first indication that at least the first set of task units has been performed;

grant to the user account, in response to receiving the first indication, a first access session of the first service;

receive, from the user account, a second request to access a second service offered through the API;

determine that access to the second service is conditional upon performance of at least a second amount of the transaction processing task that differs from the first amount;

assign, to the user account, a second set of task units from the plurality of task units equivalent to the second amount;

receive a second indication that the second set of task units has been performed; and

grant to the user account, in response to receiving the second indication, a second access session of the second service.

12. The system of claim 11 , wherein an access record granting a predetermined number of subsequent access sessions of the first service to the user account is generated in response to receiving the first indication.

13. The system of claim 12 , wherein the instructions further cause the processor to:

receive from the user account, at a second time after the first time, a second request to access the first service;

determine that the user account is associated with the access record; and

grant, in response to determining the user account is associated with the access record, a second access session of the first service.

14. The system of claim 13 , wherein the instructions further cause the processor to:

receive, from the user account, a first number of requests to access the first service;

determine the first number of requests exceeds the predetermined number; and

assign, to the user account, a second set of task units from the plurality of task units equivalent to the first amount.

15. The system of claim 11 , wherein the first set of task units further includes an artificially generated verification task which has a predefined outcome, and the instructions further cause the processor to:

verify that the first set of task units has been performed only if the first indication includes a value corresponding to the predefined outcome.

16. The system of claim 11 , wherein the API receives an average of a first number of requests for the first service over a first period of time and a second number of requests for the second service over the first period of time, and the difference between the first amount and the second amount is proportional to a difference between the first number and second number.

17. The system of claim 11 , wherein the instructions further cause the processor to:

assign, to the user account, in addition to the first set of task units, one or more verification tasks;

receive, from the user account, a signal corresponding to a response to the assignment of the first set of task units and one or more verification tasks, each verification task representing a task unit that has a known outcome;

verify the one or more verification tasks were performed correctly; and

generate the first indication in response to verifying the one or more verification tasks were performed correctly.

18. The system of claim 11 , wherein the instructions further cause the processor to:

receive, at a second time before the first time, an initial request from the user account for trial access of the first service;

determine that trial access to the first service is available to the user account; and

grant to the user account a trial access session of the first service prior to the granting of the first access session.

19. The system of claim 11 , wherein the instructions further cause the processor to:

determine that granting the user account access to the first service is associated with a first transactional cost and granting the user account access to the second service is associated with a second transactional cost that is lower than the first transactional cost; and

wherein a calculation of the first amount is based at least on the first transactional cost, a calculation of the second amount is based at least on the second transactional cost, and the first amount is greater than the second amount.

20. A system comprising one or more computers and one or more storage devices storing instructions that are operable, when executed by the one or more computers, to cause the one or more computers to:

identify, for a transaction processing task, a plurality of task units;

receive, at a first time, from a user account, a first request to access a first service offered through the API;

determine that access to the first service is conditional upon performance of a first amount of the transaction processing task;

assign, to the user account, a first set of task units from the plurality of task units equivalent to the first amount;

receive a first indication that at least the first set of task units has been performed;

grant to the user account, in response to receiving the first indication, a first access session of the first service;

receive, from the user account, a second request to access a second service offered through the API;

determine that access to the second service is conditional upon performance of at least a second amount of the transaction processing task that differs from the first amount;

assign, to the user account, a second set of task units from the plurality of task units equivalent to the second amount;

receive a second indication that the second set of task units has been performed; and

grant to the user account, in response to receiving the second indication, a second access session of the second service.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 8, 2022
From: UIPCO, LLC
To: UNITED SERVICES AUTOMOBILE ASSOCIATION (USAA)
Reel/Frame 061024/0954 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 22, 2022
From: KHMELEV, YEVGENIY VIATCHESLAVOVICH; RUSSELL, CHRISTOPHER; SCHULZ, DEBORAH JANETTE; MORLEY, DAVID; MEYER, GREGORY BRIAN; RUSSELL, RYAN THOMAS
To: UIPCO, LLC
Reel/Frame 059681/0155 →
Continuity (1)
Provisional Application 63002940 · Mar 31, 2020
Cited By (1)
US 12,731,168