Developer Perspectives on REST API Usability: A Study of REST API Guidelines
Sven Peldszus, Jan Rutenkolk, Marcel Heide, Jan Sollmann, Benjamin Klatt, Frank K\"ohne, Thorsten Berger

TL;DR
This study explores REST API usability from developer perspectives, identifying key factors influencing design effectiveness, challenges in guideline adoption, and best practices to improve API quality and developer compliance.
Contribution
It provides empirical insights from industry experts on REST API guideline effectiveness, challenges, and best practices, highlighting the importance of adherence to conventions and organizational fit.
Findings
Adherence to conventions is the most critical factor for API usability.
Guideline size and organizational fit significantly affect guideline adoption.
Automated linting can enhance compliance and serve educational purposes.
Abstract
REST is today's most widely used architectural style for providing web-based services. In the age of service-orientation (a.k.a. Software as a Service (SaaS)) APIs have become core business assets and can easily expose hundreds of operations. While well-designed APIs contribute to the commercial success of a service, poorly designed APIs can threaten entire organizations. Recognizing their relevance and value, many guidelines have been proposed for designing usable APIs, similar to design patterns and coding standards. For example, Zalando and Microsoft provide popular REST API guidelines. However, they are often considered as too large and inapplicable, so many companies create and maintain their own guidelines, which is a challenge in itself. In practice, however, developers still struggle to design effective REST APIs. To improve the situation, we need to improve our empirical…
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 · Usability and User Interface Design · Software Engineering Research
