A First Look at the Deprecation of RESTful APIs: An Empirical Study

08/28/2020
by   Jerin Yasmin, et al.
0

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 automatically identifying deprecated API elements and analyzing impacted operations from an OpenAPI specification, a machine-readable profile for describing RESTful web service. We apply RADA on 2,224 OpenAPI specifications of 1,368 RESTful APIs collected from APIs.guru, the largest directory of OpenAPI specifications. Based on the data mined by RADA, we perform an empirical study to investigate how the deprecated-removed protocol is followed in RESTful APIs and characterize practices in RESTful API deprecation. The results of our study reveal several severe deprecation-related problems in existing RESTful APIs. Our implementation of RADA and detailed empirical results are publicly available for future intelligent tools that could automatically identify and migrate usage of deprecated RESTful API operations in client code.

READ FULL TEXT
research
05/24/2023

Carving UI Tests to Generate API Tests and API Specification

Modern web applications make extensive use of API calls to update the UI...
research
06/11/2023

RestGPT: Connecting Large Language Models with Real-World Applications via RESTful APIs

Tool-augmented large language models (LLMs) have achieved remarkable pro...
research
02/01/2021

Automatically Identifying Parameter Constraints in Complex Web APIs: A Case Study at Adyen

Web APIs may have constraints on parameters, such that not all parameter...
research
01/26/2018

Automatically Extracting Web API Specifications from HTML Documentation

Web API specifications are machine-readable descriptions of APIs. These ...
research
02/20/2019

RESTful or RESTless -- Current State of Today's Top Web APIs

Recent developments in the world of services on the Web show that both t...
research
07/30/2021

Which RESTful API Design Rules Are Important and How Do They Improve Software Quality? A Delphi Study with Industry Experts

Several studies analyzed existing Web APIs against the constraints of RE...
research
06/19/2019

A survey of OpenRefine reconciliation services

We review the services implementing the OpenRefine reconciliation API, c...

Please sign up or login with your details

Forgot password? Click here to reset