How Are Web APIs Versioned in Practice? A Large-Scale Empirical Study
Web APIs form the cornerstone of modern software ecosystems, facilitating seamless data exchange and service integration. Ensuring the compatibility and longevity of these APIs is paramount. This study delves into the intricate realm of API versioning practices, a crucial mechanism for managing API evolution. Exploring an expanded and diverse dataset of 603 293 APIs specifications created during the 2015–2023 timeframe and gathered from four different sources, we examined the adoption of the following versioning practices: Metadata-based, URL-based, Header-based and Dynamic versioning, with one or more versions in production. API developers use more than 50 different version identifier formats to encode information about the changes introduced with respect to the previous version (i.e., semantic versioning), about when the version was released (i.e., age versioning) and about which phase of the API development lifecycle the version belongs (i.e., stable vs. preview releases).
Authors
- Souhaila Serbout
- Cesare Pautasso (ORCID: https://orcid.org/0000-0002-2748-9665)
Institutions
- Università della Svizzera italiana (CH)
Publication Details
- Journal
- Journal of Web Engineering
- Published
- 2024-08-08
- DOI
- https://doi.org/10.13052/jwe1540-9589.2341
- Citations
- 2
- Primary Topic
- Service-Oriented Architecture and Web Services
- Type
- article
- Field-Weighted Citation Impact
- 1.56