Automated API Generation via Compiler Templates

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional software development kits (SDKs) face challenges in managing a large number of APIs, requiring significant user input and leading to increased coding errors when new features are introduced, as they lack a scalable infrastructure for automatic API generation.

Innovation Solution

A scalable API infrastructure that uses a compiler to automatically generate functional API codes based on pre-stored coding templates and initial API parameters, minimizing user input and optimizing API dispatch time through Type-Length-Value (TLV) packaging and consistent naming conventions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If traditional SDKs are used to manage a large number of APIs, then software development tools are provided, but user input requirements increase and coding errors increase when new features are introduced

Engineering Contradiction:
ImproveAPI generation capabilityVSAvoidUser input requirement
Core Design Contradiction:
Adaptability or versatilityVSEase of operation

Solution Approach 1:

The system enables self-service API generation through automated code synthesis. The SDK infrastructure automatically generates API codes based on predefined templates and specifications without requiring manual user input for each API, thus reducing user input requirements while maintaining adaptability to new features

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent implements preliminary action by pre-defining API coding templates and structures before actual API generation is needed. These templates contain predefined patterns, data structures, and coding conventions that are prepared in advance, allowing the system to automatically generate new APIs quickly when features are introduced without requiring users to create templates from scratch

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If traditional SDKs are used to manage a large number of APIs, then software development tools are provided, but coding errors increase when new features are introduced

Engineering Contradiction:
ImproveAPI generation capabilityVSAvoidCoding error rate
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The system uses copying by replicating proven, error-free API templates for generating new APIs. Instead of manually coding each new API from scratch (which introduces errors), the system copies and adapts established template patterns that have already been validated, ensuring consistency and reducing coding errors while maintaining adaptability to new features

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent applies parameter changes by allowing the same API template to generate different APIs through parameter variation rather than structural modification. The templates accept configurable parameters that can be changed to accommodate new features, maintaining the reliability of the proven template structure while adapting to different API requirements through parameter adjustments

Inventive Principle:
Principle #35Parameter changes

3Productivity

If automated API generation is implemented, then API generation efficiency improves, but infrastructure complexity increases

Engineering Contradiction:
ImproveAPI generation efficiencyVSAvoidInfrastructure complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent implements universality by creating a single, multi-functional SDK infrastructure that can generate multiple different APIs using the same core mechanisms. The template system, code synthesis engine, and dispatch infrastructure serve universal purposes across all API generations, reducing overall infrastructure complexity compared to having separate systems for each API

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The system applies segmentation by dividing the API generation process into modular components: template definitions, parameter specifications, code synthesis rules, and dispatch mechanisms. This segmentation allows each component to be independently managed and reused, improving generation efficiency while keeping the overall infrastructure organized and manageable rather than monolithic

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS8843945B2Automated application programming interface (API) generation
Publication Date: 2014.09.23 CISCO TECHNOLOGY INC
  • US8843945B2 patent drawing
  • US8843945B2 patent drawing
  • US8843945B2 patent drawing

AI summary

Techniques are provided for automatically generating Application Programming Interfaces (APIs) in a computing device. In one example, a request for the addition of a first API to a software infrastructure of a computing device is received. An API coding table that includes one or more initial API parameters corresponding to the first API is generated and an API coding template stored in memory of the computing device is obtained. A compiler of the computing device generates functional codes for the first API based on the API coding template and the initial API parameters.