@conference {apiace:2023:icwe,
	title = {An empirical study of Web API versioning practices},
	booktitle = {23rd International Conference on Web Engineering (ICWE)},
	year = {2023},
	month = {June},
	publisher = {Springer},
	organization = {Springer},
	address = {Alicante, Spain},
	abstract = {As Web APIs evolve, developers assign them version identifiers to reflect the amount and the nature of changes that the API clients should expect. In this work we focus on identifying versioning practices adopted by Web API developers by extracting and classifying version identifiers found in a large collection of OpenAPI descriptions.
In particular, we observe how frequently different versioning schemes have been adopted for identifying both stable and preview releases (e.g., simple version counters, semantic versioning, or release timestamps). We further study the stability of versioning schemes during APIs evolution. We also detect APIs which offer dynamic access to versioning metadata through dedicated endpoints as well as APIs which support clients expecting to reach up to 14 different versions of the same API at the same time.
Overall the results offer a detailed view over current Web API versioning practices and can serve as the basis for future discussions on how to standardize critical API versioning metadata.},
	keywords = {API Analytics, Versioning},
	author = {Souhaila Serbout and Cesare Pautasso}
}
@demo {2022:ecsa:expresso,
	title = {ExpressO: From Express.js implementation code to OpenAPI interface descriptions},
	year = {2022},
	month = {September},
	pages = {29{\textendash}44},
	publisher = {Springer},
	abstract = {This tool demo paper brings forward a new CLI tool called ExpressO for developers who need to analyze a Web API implemented using the Express.js framework and automatically extract a specification written in the standard OpenAPI interface description language. The specification includes all of the implemented endpoints along with their response status codes and path and query parameters. Developers can use it to automatically determine whether the interface of a Web API matches its implementation based on the Express.js framework. The tool has been released on the npm component registry as {\textquoteleft}expresso-api{\textquoteright}.

},
	keywords = {API, express.js, OpenAPI},
	doi = {10.1007/978-3-031-36889-9_4},
	author = {Souhaila Serbout and Alessandro Romanelli and Cesare Pautasso}
}
