US 11,720,396 B2
Application programming interface (API) request throttling
Juan Fernández Ortiz, Madrid (ES); Madeleine Genevieve Muscari, Berkeley, CA (US); JoséManuel Felguera Rodriguez, Ciudad Real (ES); Freddy Pena, Madrid (ES); Samuel Moran, San Jose, CA (US); Umer Liqat, Madrid (ES); Jeremy Andrew McEntire, San Francisco, CA (US); and Will Mason, Moraga, CA (US)
Assigned to Twillo Inc., San Francisco, CA (US)
Filed by Twilio Inc., San Francisco, CA (US)
Filed on Jun. 22, 2021, as Appl. No. 17/304,543.
Prior Publication US 2022/0405119 A1, Dec. 22, 2022
Int. Cl. G06F 15/04 (2006.01); G06F 9/48 (2006.01); G06F 9/54 (2006.01)
CPC G06F 9/485 (2013.01) [G06F 9/541 (2013.01); G06F 9/547 (2013.01)] 15 Claims
OG exemplary drawing
 
1. A method comprising:
receiving an Application Programming Interface (API) request having originated from an Internet Protocol (IP) address;
determining a counter value based on one or more previous API requests having originated from the IP address and one or more responses that each comprise a response code indicating whether a respective previous API request originated from the IP address has resulted in an error;
in response to determining that the counter value satisfies a threshold criterion, initiating a delay in processing of the API request; and
in response to determining that the delay has completed, causing the processing of the API request to resume, wherein the processing of the API request comprises:
forwarding the API request to a resource based on a request path included in the API request;
receiving an API response from the resource in response to the API request;
transmitting the API response to the originating IP address; and
updating the one or more previous API requests having originated from the IP address based on the API response.