Providing prioritization of user online access to an online commerce site. Third party applications using API function calls to access an online commerce site are restricted to specific services by an access rule. An access rule defines which API server on the online commerce site a specific third party application may access when using a specific API function call. In this way, the operator of the online commerce site may prioritize server access per service level agreements based on a specific third party application and API function call.
Legal claims defining the scope of protection. Each claim is shown in both the original legal language and a plain English translation.
1. A method comprising: receiving, from a client, a request for at least one of a plurality of services of a network-based site, access to the plurality of services being provided by a plurality of application programming interface (API) servers; identifying, by a machine having a memory and at least one processor, one of the plurality of API servers to which to direct the client for the at least one of the plurality of services of the request, the identification of the API server being based on a service level agreement corresponding to the client; and transmitting the request to the identified API server.
A system handles client requests to an online service accessed via APIs. When a client requests a service, the system identifies a specific API server to handle the request. The selection of the API server is based on the service level agreement (SLA) associated with that client. The request is then forwarded to the chosen API server for processing. This allows prioritizing access to online services based on client SLAs.
2. The method of claim 1 , wherein the request is transmitted to the identified API server using a uniform resource locator (URL) string.
The method described previously, where client requests are routed to specific API servers based on SLAs, uses a URL string to transmit the request to the identified API server. This URL string effectively directs the request to the correct server.
3. The method of claim 2 , further comprising determining the URL string based on an identification of the at least one of the plurality of services.
Building upon the previous method of routing requests using URL strings, the system determines the specific URL string based on which service the client is requesting. This means the URL isn't just a generic address, but includes information about the service being requested, allowing the API server to handle it correctly.
4. The method of claim 1 , further comprising determining whether to perform an API function call corresponding to the request for the at least one of the plurality of services based on a determination of compliance with a predefined usage limitation of the service level agreement.
Expanding on the initial method, the system now includes a check against the client's service level agreement (SLA). Before executing an API function call for a service request, the system verifies that the request complies with predefined usage limits defined in the SLA. The API call is only performed if it adheres to these limits.
5. The method of claim 4 , wherein the determination of compliance with the predefined usage limitation comprises a determination of whether the client has exceeded the predefined usage limitation.
Continuing with the previous description that checks SLA compliance, the check involves determining if the client has *already* exceeded the usage limitations defined in their service level agreement (SLA). If the client has surpassed their allowed usage, the API function call is not performed.
6. The method of claim 5 , wherein the predefined usage limitation comprises a maximum number of API function calls within a predefined time frame.
Refining the previous usage limitation check, the system specifically examines the maximum number of API function calls a client is allowed to make within a certain timeframe. The service level agreement (SLA) defines this limit. The system verifies if the current request would cause the client to exceed this maximum calls within the defined time period.
7. The method of claim 6 , further comprising: determining that the predefined usage limitation will be exceeded by performance of a plurality of transactions corresponding to the API function call; determining a portion of the plurality of transactions that will be below the predefined usage limitation; and amongst the plurality of transactions, transmitting only the determined portion to the client.
Building on the maximum API call limit within a timeframe, if a client's request involves multiple transactions that would exceed the limit, the system determines how many transactions *can* be performed without exceeding the limit. Then, only that determined portion of the transactions is processed and transmitted back to the client. The remaining transactions are omitted or queued for later processing.
8. The method of claim 5 , wherein the predefined usage limitation comprises a maximum number of simultaneous API function calls.
As an alternative to limiting API calls within a timeframe, the system can also enforce a predefined usage limitation based on the maximum number of *simultaneous* API function calls. If a client attempts to exceed this simultaneous call limit, the system will prevent further API calls from being processed until the number of concurrent calls falls below the limit.
9. The method of claim 4 , wherein the predefined usage limitation comprises a predefined time of day.
In addition to call volume limitations, the system can also define usage limitations based on the time of day. A client's service level agreement (SLA) may specify that certain API function calls are only allowed during specific times. The system will check the current time against the SLA before performing the API function call.
10. A system comprising: at least one server comprising a memory and at least one processor, the at least one server being configured to: receive, from a client, a request for at least one of a plurality of services of a network-based site, access to the plurality of services being provided by a plurality of application programming interface (API) servers; identify one of the plurality of API servers to which to direct the client for the at least one of the plurality of services of the request, the identification of the API server being based on a service level agreement corresponding to the client; and transmit the request to the identified API server.
A system for prioritizing access to services on a network-based site. The system includes at least one server with memory and a processor. This server receives requests from clients for services offered through various API servers. Based on the client's service level agreement (SLA), the server identifies a specific API server to handle the request and then transmits the request to that identified server.
11. The system of claim 10 , wherein the request is transmitted to the identified API server using a uniform resource locator (URL) string.
The system for prioritizing access, as previously described, transmits the client request to the identified API server using a URL string. This URL contains the address and any necessary parameters for the API server to handle the request.
12. The system of claim 11 , wherein the at least one server is further configured to determine the URL string based on an identification of the at least one of the plurality of services.
In the previously described system using URL strings for request transmission, the server determines the specific URL string based on the particular service that the client is requesting. The URL encodes information about the requested service, allowing the designated API server to process the request appropriately.
13. The system of claim 10 , wherein the at least one server is further configured to determine whether to perform an API function call corresponding to the request for the at least one of the plurality of services based on a determination of compliance with a predefined usage limitation of the service level agreement.
The previously described system also determines whether to execute an API function call associated with a client's service request. This determination is based on compliance with predefined usage limitations as specified in the client's service level agreement (SLA). Only if the request complies with these limitations will the API call be performed.
14. The system of claim 13 , wherein the determination of compliance with the predefined usage limitation comprises a determination of whether the client has exceeded the predefined usage limitation.
As part of the compliance check in the previously described system, it's determined whether the client has already exceeded the usage limitations defined in their service level agreement (SLA). If the client has exceeded these limits, the corresponding API function call will not be executed.
15. The system of claim 14 , wherein the predefined usage limitation comprises a maximum number of API function calls within a predefined time frame.
The predefined usage limitation in the described system can be a maximum number of API function calls allowed within a specific timeframe. The server checks whether processing the current request would cause the client to exceed this call limit within the defined time period.
16. The system of claim 15 , wherein the at least one server is further configured to: determine that the predefined usage limitation will be exceeded by performance of a plurality of transactions corresponding to the API function call; determine a portion of the plurality of transactions that will be below the predefined usage limitation; and amongst the plurality of transactions, transmit only the determined portion to the client.
In the system with the API call limit per timeframe, if a client's request entails multiple transactions that would breach the limit, the server calculates the number of transactions it can execute without exceeding the limit. Only this permissible portion of transactions is processed and sent back to the client.
17. The system of claim 14 , wherein the predefined usage limitation comprises a maximum number of simultaneous API function calls.
As an alternative usage limitation, the previously described system can enforce a limit on the maximum number of *simultaneous* API function calls permitted for a client. Attempts to surpass this simultaneous call limit will be blocked until the concurrent call count drops below the allowed threshold.
18. The system of claim 13 , wherein the predefined usage limitation comprises a predefined time of day.
Besides call volume limits, the described system can also define usage restrictions based on the time of day. Client SLAs can dictate that specific API function calls are permissible only during certain hours. The server validates the current time against the SLA before executing the API function call.
19. A non-transitory machine-readable storage medium, tangibly embodying a set of instructions that, when executed by at least one processor, causes the at least one processor to perform a set of operations comprising: receiving, from a client, a request for at least one of a plurality of services of a network-based site, access to the plurality of services being provided by a plurality of application programming interface (API) servers; identifying one of the plurality of API servers to which to direct the client for the at least one of the plurality of services of the request, the identification of the API server being based on a service level agreement corresponding to the client; and transmitting the request to the identified API server.
A non-transitory computer-readable medium (like a hard drive or flash drive) stores instructions. When these instructions are executed by a processor, they cause the processor to: receive a client's request for a service on a network site via APIs; identify the appropriate API server to handle the request, based on the client's service level agreement (SLA); and then transmit the request to that identified API server.
20. The non-transitory machine-readable storage medium of claim 19 , wherein the set of operations further comprises determining whether to perform an API function call corresponding to the request for the at least one of the plurality of services based on a determination of compliance with a predefined usage limitation of the service level agreement.
The instructions stored on the computer-readable medium, as previously described, further cause the processor to determine whether to perform an API function call for a service request. This determination is made by verifying compliance with the predefined usage limitations specified in the client's service level agreement (SLA).
Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.
March 31, 2014
June 13, 2017
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.