Analysis of application programming interface usage for improving a computer system
US-2018203746-A1 · Jul 19, 2018 · US
US11550640B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11550640-B2 |
| Application number | US-201916389096-A |
| Country | US |
| Kind code | B2 |
| Filing date | Apr 19, 2019 |
| Priority date | Jan 19, 2017 |
| Publication date | Jan 10, 2023 |
| Grant date | Jan 10, 2023 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A method and system. Application programming interface (API) call data is analyzed for a user to identify a relationship between API input data and API output data of two or more API calls. API usage information is generated by utilizing a dependency between the two or more API calls. The API usage information includes information pertaining to how data flows between the two or more API calls. API provision is improved with respect to execution of a process, based on utilization of the API usage information. Improving API provision includes: receiving a specification of an improvement to be achieved for the process, selecting at least two APIs from the two or more APIs for achieving the improvement, generating a new API that combines the at least two APIs, and modifying the process by including the new API in the process and removing the at least two APIs from the process.
Opening claim text (preview).
What is claimed is: 1. A method, said method comprising: analyzing, by one or more processors of a computer system, application programming interface (API) call data for a user to identify a relationship between API input data and API output data of two or more API calls to or from respective two or more APIs; generating, by the one or more processors, API usage information, said generating the API usage information utilizing a dependency between the two or more API calls, wherein the API usage information comprises information pertaining to how data flows between the two or more API calls; and improving API provision with respect to execution of a process that includes the two or more APIs, said improving API provision being based on utilization of the API usage information, said improving API provision comprising: receiving a specification of an improvement to be achieved for the process, selecting a plurality of APIs from the two or more APIs for achieving the improvement, generating a new API that combines the plurality of APIs into an API combination included in the new API, and modifying the process by including the new API in the process and removing the plurality of APIs from the process, wherein the improvement is achieved due to the new API in the modified process. 2. The method of claim 1 , said method further comprising: prior to said generating the API usage information, determining, by the one or more processors, the dependency between the two or more API calls, based on the identified relationship. 3. The method of claim 1 , wherein said analyzing comprises determining that input data of an API call is based on output data of a preceding API call and in response, identifying a relationship between the input data of the API call and the output data of the preceding API call. 4. The method of claim 3 , wherein said determining that the input data of the API call is based on the output data of the preceding API call comprises: determining that the input data of the API call is selected from the group consisting of an aggregation, a subset, a concatenation, a conversion, a translation of the response data of the preceding API call, and combinations thereof. 5. The method of claim 1 , wherein said obtaining API call data for the user comprises: intercepting API traffic between an API consumer and an API provider, said API consumer being controlled by the user to invoke the two or more API calls. 6. The method of claim 5 , wherein said obtaining API call data for the user comprises: reading API call data from the intercepted API traffic; storing the read API call data in a data store; and forwarding the intercepted API traffic to the API traffic's intended destination. 7. The method of claim 5 , wherein said intercepting API traffic is performed at either the API consumer or the API provider. 8. The method of claim 1 , said method further comprising: obtaining, by the one or more processors, API call data for a second user; and analyzing, by the one or more processors, the obtained API call data for the second user to determine a refined dependency between the two or more API calls indication of accuracy of the obtained API call data for the second user. 9. A computer program product, comprising one or more computer readable hardware storage devices having computer readable program code stored therein, said program code containing instructions executable: by one or more processors of a computer system to implement a method, said method comprising: analyzing, by one or more processors, application programming interface (API) call data for a user to identify a relationship between API input data and API output data of two or more API calls to or from respective two or more APIs; generating, by the one or more processors, API usage information, said generating the API usage information utilizing a dependency between the two or more API calls, wherein the API usage information comprises information pertaining to how data flows between the two or more API calls; and improving API provision with respect to execution of a process that includes the two or more APIs, said improving API provision being based on utilization of the API usage information, said improving API provision comprising: receiving a specification of an improvement to be achieved for the process, selecting a plurality of APIs from the two or more APIs for achieving the improvement, generating a new API that combines the plurality of APIs into an API combination included in the new API, and modifying the process by including the new API in the process and removing the plurality of APIs from the process, wherein the improvement is achieved due to the new API in the modified process. 10. The computer program product of claim 9 , said method further comprising: prior to said generating the API usage information, determining, by the one or more processors, the dependency between the two or more API calls, based on the identified relationship. 11. The computer program product of claim 9 , wherein said analyzing comprises determining that input data of an API call is based on output data of a preceding API call and in response, identifying a relationship between the input data of the API call and the output data of the preceding API call. 12. The computer program product of claim 11 , wherein said determining that the input data of the API call is based on the output data of the preceding API call comprises: determining that the input data of the API call is selected from the group consisting of an aggregation, a subset, a concatenation, a conversion, a translation of the response data of the preceding API call, and combinations thereof. 13. The computer program product of claim 9 , wherein said obtaining API call data for the user comprises: intercepting API traffic between an API consumer and an API provider, said API consumer being controlled by the user to invoke the two or more API calls. 14. The computer program product of claim 9 , said method further comprising: obtaining, by the one or more processors, API call data for a second user; and analyzing, by the one or more processors, the obtained API call data for the second user to determine a refined dependency between the two or more API calls indication of accuracy of the obtained API call data for the second user. 15. A computer system, comprising one or more processors, one or more memories, and one or more computer readable hardware storage devices, said one or more hardware storage device containing program code executable by the one or more processors via the one or more memories to implement a method, said method comprising: analyzing, by one or more processors, application programming interface (API) call data for a user to identify a relationship between API input data and API output data of two or more API calls to or from respective two or more APIs; generating, by the one or more processors, API usage information, said generating the API usage information utilizing a dependency between the two or more API calls, wherein the API usage information comprises information pertaining to how data flows between the two or more API calls; and improving API provision with respect to execution of a process that includes the two or more APIs, said improving API provision being based on utilization of the API usage information, said improving API provision comprising: receiving a specification of an improvement to be achieved for the process, selecting a plurality of APIs from the two or more APIs for achieving the improvement, generating a new API that combines the plurality f API
via adapters, e.g. between incompatible applications · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.