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

02/01/2021
by   Henk Grent, et al.
0

Web APIs may have constraints on parameters, such that not all parameters are either always required or always optional. Moreover, the presence or value of one parameter could cause another parameter to be required, or parameters could have restrictions on what kinds of values are valid. Having a clear overview of the constraints helps API consumers to integrate without the need for additional support and with fewer integration faults. We made use of existing documentation and code analysis approaches for identifying parameter constraints in complex web APIs. In this paper, we report our case study of several APIs at Adyen, a large-scale payment company that offers complex Web APIs to its customers. Our results show that the documentation- and code-based approach can identify 23 combined, 68 approaches face. In particular, the absence of information that explicitly describes the constraints in the documentation (in the documentation analysis), and the engineering of a sound static code analyser that is sensitive to data-flow, maintains longer parameter references throughout the API's code, and that is able to symbolically execute the several libraries and frameworks used by the API (in the static analysis).

READ FULL TEXT
research
08/28/2020

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

REpresentational State Transfer (REST) is considered as one standard sof...
research
08/18/2019

API Misuse Correction: A Statistical Approach

Modern software development relies heavily on Application Programming In...
research
11/14/2018

Say Hi to Eliza. An Embodied Conversational Agent on the Web

The creation and support of Embodied Conversational Agents (ECAs) has be...
research
01/01/2020

Web APIs in Android through the Lens of Security

Web communication has become an indispensable characteristic of mobile a...
research
03/23/2023

Reduce API Debugging Overhead via Knowledge Prepositioning

OpenAPI indicates a behavior where producers offer Application Programmi...
research
12/01/2017

A Systematic Evaluation of Static API-Misuse Detectors

Application Programming Interfaces (APIs) often have usage constraints, ...
research
03/07/2023

ADELT: Transpilation Between Deep Learning Frameworks

We propose Adversarial DEep Learning Transpiler (ADELT) for source-to-so...

Please sign up or login with your details

Forgot password? Click here to reset