Data-driven web APIs recommendation for building web applications

Lianyong Qi, Qiang He*, Feifei Chen, Xuyun Zhang, Wanchun Dou, Qiang Ni

*Corresponding author for this work

Research output: Contribution to journalArticlepeer-review

67 Citations (Scopus)


The ever-increasing popularity of web APIs allows app developers to leverage a set of existing web APIs to achieve their sophisticated objectives. The heavily fragmented distribution of web APIs makes it challenging for an app developer to find appropriate and compatible web APIs. Currently, app developers usually have to manually discover candidate web APIs, verify their compatibility and select appropriate and compatible ones. This process is cumbersome and requires detailed knowledge of web APIs which is often too demanding. It has become a major obstacle to further and broader applications of web APIs. To address this issue, we first propose a web API correlation graph built on extensive data about the compatibility between web APIs. Then, we propose WAR (Web APIs Recommendation), the first data-driven approach for web APIs recommendation that integrates web API discovery, verification and selection operations based on keywords search over the web API correlation graph. WAR assists app developers without detailed knowledge of web APIs in searching for appropriate and compatible web APIs by typing a few keywords that represent the tasks required to achieve app developers' objectives. WAR can significantly save app developers' time and effort in searching for web APIs. We conducted large-scale experiments on 18,478 real-world web APIs and 6,146 real-world apps to demonstrate the usefulness and efficiency of WAR.

Original languageEnglish
Pages (from-to)685-698
Number of pages14
JournalIEEE Transactions on Big Data
Issue number3
Early online date24 Feb 2020
Publication statusPublished - 1 Jun 2022


  • Dynamic Programming
  • Keyword search
  • Steiner Tree
  • Web APIs recommendation


Dive into the research topics of 'Data-driven web APIs recommendation for building web applications'. Together they form a unique fingerprint.

Cite this