Codeless API Abstraction via Metadata Signatures
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The traditional API development process is cumbersome and time-consuming due to its code-heavy approach, requiring repeated efforts for each new data source and struggling with unifying disparate data sources, and is inflexible with rigid input parameters, leading to long product development cycles.
Innovation Solution
A system and method for creating an Application Programming Interface (API) without code, utilizing a metadata repository to generate API signatures, an authentication server for authorization, and an API server to facilitate communication with target databases, allowing flexible input parameters and unified access to disparate data sources.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a traditional code-heavy API development approach is used, then security policies and API versions can be properly defined and maintained, but the development process becomes cumbersome and time-consuming with long product development cycles
Solution Approach 1:
The system performs preliminary actions by pre-defining API templates with standard security policies, authentication methods, and versioning rules in a metadata repository. This allows APIs to be generated automatically from templates without manual coding, significantly reducing development time while maintaining security standards.
Solution Approach 2:
The patent introduces an intermediary layer consisting of template definitions and metadata that sits between the security requirements and the actual API implementation. This intermediary layer automates the translation of security policies into coded implementations, eliminating manual security policy definition while maintaining reliability.
2Adaptability or versatility
If manual API development is performed for each new data source, then data source-specific semantics can be properly handled, but the process must be repeated for every new data source making it cumbersome
Solution Approach 1:
The system creates universal API templates that can work with multiple different data sources. These templates define common patterns for data access, authentication, and error handling that can be adapted to various data sources through configuration rather than重新coding, making the system both versatile and easy to manufacture.
Solution Approach 2:
The patent uses parameter changes to adapt API templates to different data sources. Instead of creating new APIs for each data source, the system modifies parameters such as data source identifiers, connection strings, and query templates to accommodate different semantics, thereby maintaining ease of manufacture while preserving adaptability.
3Device complexity
If rigid input parameters are used in REST APIs, then the API structure remains simple and standardized, but flexibility in handling different data sources is reduced
Solution Approach 1:
The system implements dynamic input parameters within the API template framework. While the overall API structure remains simple and standardized, the input parameters can dynamically adapt based on the specific data source and query requirements. This is achieved through template parameters that are resolved at runtime, maintaining structural simplicity while enabling flexibility.
4Reliability
If disparate data sources are unified through traditional API development, then secure access can be implemented, but the complexity of unifying and securely accessing all data sources increases significantly
Solution Approach 1:
The patent segments the complexity of unifying disparate data sources by separating concerns into distinct layers: authentication/authorization logic is separated from data access logic, which is separated from business logic. This segmentation is achieved through standardized API templates that handle security uniformly while allowing data-source-specific implementations to remain isolated and manageable.
Data Source
AI summary
A system for abstraction of creation of an Application Programming Interface (API) without code is provided. The system includes a metadata repository, at least one authentication server, and at least one API server. The metadata repository is configured to store API metadata information and generate API signatures. The authentication server(s) is configured to check authorization of client application. The API server(s) is configured to receive an API call including credentials from client application; send a request including credentials to the authentication server(s); receive authorization token from the authentication server(s) upon successful authorization of client application; send first query including authorization token to metadata repository; receive, from metadata repository, API signature including input parameters of the API and definition of the API; send second query including API signature to target database; receive API response including target data that is retrieved from target database; and send API response to client application.


