Abstract
Nowadays, public web APIs are considered as business assets by many organizations. They provide data and functionality which other developers can integrate within their own services. These APIs are commercialized through pricings, which include a series of plans. Each plan contains features and limitations, coupled with a price. Developers who wish to use the API need to choose which plan better suits their needs. The formal description of pricings is not standardized, which hinders the ability to automate their analysis. The SLA4OAI specification aims to provide an extension for OpenAPI that allows pricings to be described. This specification paves the way for an ecosystem of tools that leverage the information of a pricing.
In this paper, we present SLA4OAI-Analyzer, a public API that automatically checks an SLA4OAI specification file for conflicts at different levels. We also provide an online Jupyter notebook to validate the API using different examples.
This work has been partially supported by grants RTI2018-101204-B-C21, RTI2018-101204-B-C22, PID2021-126227NB-C21, PID2021-126227NB-C22, TED2021-131023B-C21, TED2021-131023B-C22, PDC2022-133521-I00 funded by MCIN/AEI/10.13039/501100011033 and “ERDF a way of making Europe”; grants PYC20 RE 084 US, P18-FR-2895, US-1264651, US-1381595 funded by Junta de Andalucia/ERDF,UE; and FPU19/00666 funded by MCIN/AEI/10.13039/501100011033 and by “ESF Investing in your future”.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
For historical reasons, we keep the name SLA4OAI even though the specification does not support Service Level Agreements, which are out of the scope of this paper.
References
Full SLA4OAI Specification Files. https://github.com/isa-group/icwe23-demo-sla4oaianalyzer
OpenAPI Specification 3.1.0. https://spec.openapis.org/oas/v3.1.0
SLA4OAI-Analyzer API. https://sla4oai-analyzer-api.services.governify.io
SLA4OAI-Analyzer API Repository. https://github.com/isa-group/sla4oai-analyzer-api
SLA4OAI-Analyzer Deepnote Notebook. https://deepnote.com/workspace/rafael-fresno-ab85b312-0a6a-4a0d-8975-786d40a9e336/project/SLA4OAI-Conflicts-e39d1e11-8472-47c5-abd6-b4be10851a8d/notebook/Notebook%201-a14aeec4a0394c47bebbabbfe0c4dfce
SLA4OAI Research Specification. https://github.com/isa-group/SLA4OAI-ResearchSpecification
SLA4OAI Technical Committee. https://github.com/isa-group/SLA4OAI-TC
Fielding, R.T.: Architectural styles and the design of network-based software architectures. University of California, Irvine (2000)
Fresno-Aranda, R., Fernández, P., Durán, A., Ruiz-Cortés, A.: Semi-Automated Capacity Analysis of Limitation-Aware Microservices Architectures. In: Bañares, J.Á., Altmann, J., Agmon Ben-Yehuda, O., Djemame, K., Stankovski, V., Tuffin, B. (eds.) Economics of Grids, Clouds, Systems, and Services. GECON 2022. LNCS, vol. 13430, pp. 75–88. Springer, Cham (2022). https://doi.org/10.1007/978-3-031-29315-3_7
Gamez-Diaz, A., Fernandez, P., Ruiz-Cortes, A.: An analysis of RESTful APIs offerings in the industry. In: Maximilien, M., Vallecillo, A., Wang, J., Oriol, M. (eds.) ICSOC 2017. LNCS, vol. 10601, pp. 589–604. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-69035-3_43
Martin-Lopez, A., Segura, S., Ruiz-Cortés, A.: RESTest: automated black-box testing of RESTful web APIs. In: Proceedings 30th ACM SIGSOFT International Symposium on Software Testing and Analysis (ISSTA), pp. 682–685 (2021)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2023 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this paper
Cite this paper
Fresno-Aranda, R., Fernández, P., Ruiz-Cortés, A. (2023). SLA4OAI-Analyzer: Automated Validation of RESTful API Pricing Plans. In: Garrigós, I., Murillo Rodríguez, J.M., Wimmer, M. (eds) Web Engineering. ICWE 2023. Lecture Notes in Computer Science, vol 13893. Springer, Cham. https://doi.org/10.1007/978-3-031-34444-2_28
Download citation
DOI: https://doi.org/10.1007/978-3-031-34444-2_28
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-34443-5
Online ISBN: 978-3-031-34444-2
eBook Packages: Computer ScienceComputer Science (R0)