A First Look at the Deprecation of RESTful APIs: An Empirical Study
Jerin Yasmin, Yuan Tian, Jinqiu Yang

TL;DR
This paper presents RADA, a framework for automatically identifying deprecated RESTful API elements from OpenAPI specs, and conducts an empirical study revealing prevalent deprecation issues in RESTful APIs.
Contribution
The paper introduces RADA, the first automated tool for analyzing RESTful API deprecation using OpenAPI specifications, and provides an empirical analysis of deprecation practices across numerous APIs.
Findings
Many RESTful APIs exhibit severe deprecation-related problems.
Deprecation practices are inconsistent and often problematic.
RADA effectively identifies deprecated elements and impacted operations.
Abstract
REpresentational State Transfer (REST) is considered as one standard software architectural style to build web APIs that can integrate software systems over the internet. However, while connecting systems, RESTful APIs might also break the dependent applications that rely on their services when they introduce breaking changes, e.g., an older version of the API is no longer supported. To warn developers promptly and thus prevent critical impact on downstream applications, a deprecated-removed model should be followed, and deprecation-related information such as alternative approaches should also be listed. While API deprecation analysis as a theme is not new, most existing work focuses on non-web APIs, such as the ones provided by Java and Android. To investigate RESTful API deprecation, we propose a framework called RADA (RESTful API Deprecation Analyzer). RADA is capable of…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware System Performance and Reliability · Service-Oriented Architecture and Web Services · Advanced Software Engineering Methodologies
