US 11,693,715 B2
Method and apparatus for real-time dynamic application programming interface (API) traffic shaping and infrastructure resource protection in a multiclient network environment
Jody Calton, Orlando, FL (US); Benny Tseng, Brookfield, CT (US); Michael Russell, Torrington, CT (US); Sai Kumar Pola, Farmers Branch, TX (US); and Xaysana Saycocie, Westminster, CO (US)
Assigned to Pitney Bowes Inc., Shelton, CT (US)
Filed by Pitney Bowes Inc., Shelton, CT (US)
Filed on Aug. 11, 2021, as Appl. No. 17/399,181.
Prior Publication US 2023/0045994 A1, Feb. 16, 2023
Int. Cl. G06F 9/54 (2006.01); G06F 16/245 (2019.01); G06Q 10/083 (2023.01)
CPC G06F 9/541 (2013.01) [G06F 16/245 (2019.01); G06Q 10/083 (2013.01)] 14 Claims
OG exemplary drawing
 
1. A method for processing an API request for an API operation made by a customer using a remote device comprising:
receiving at a processing module the API request via a network from the remote device;
determining, by the processing module, if a threshold number of transactions per second for the API operation has been exceeded;
if the threshold number of transactions per second has not been exceeded for the API operation, sending by the processing module the API request to the API operation via a first processing path that does not have a limit for a number of transactions per second that will be sent to the API operation;
if the threshold number of transactions per second has been exceeded for the API operation, determining, by the processing module, if the customer has a customer limit value for a number of API requests per second;
if the customer does have the customer limit value for the number of API requests per second, determining, by the processing module, if the customer limit value for the customer has been exceeded;
if the customer limit value for the number of API requests per second for the customer has not been exceeded, sending by the processing module the API request to the API operation via the first processing path;
if the customer limit value for the customer for the number of API requests per second has been exceeded, sending by the processing module the API request to the API operation via a second processing path that is different than the first processing path, the second processing path having a predefined limit for the number of transactions per second that will be sent to the API operation;
if the customer does not have the customer limit value for the number of API requests per second, determining, by the processing module, if a standard limit value for the number of API requests per second has been exceeded;
if the standard limit value for the number of API requests per second has not been exceeded, sending by the processing module the API request to the API operation via the first processing path; and
if the standard limit value for the number of API requests per second has been exceeded, sending by the processing module the API request to the API operation via the second processing path.