IP Library Granted Patent US 10,067,776
Granted Patent B2
US 10,067,776 · App. 15/348,312 · Granted Sep 4, 2018

Codeless generation of APIs

Inventors: Zhaohui Feng (Fremont, CA); Ritchie Tyler Martori (Fremont, CA); Miroslav Bajto{hacek over (s)} (Hradec Králové, CZ); Albert K. Tsang (San Carlos, CA)
Assignee: International Business Machines Corporation
G06F9/45529G06F8/315G06F9/466G06F9/54G06F9/541G06F9/547G06F21/6236H04L63/083H04L67/02H04L67/1097H04L67/42G06F21/335G06F21/6218G06F2221/2141
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,067,776
App. No.
15/348,312
Granted
Sep 4, 2018
Kind
B2
Abstract

A method and system for generating application programming interfaces (APIs) in a codeless manner. A set of data graphs is generated. The data graphs identify relationships between data objects included in a description of a database schema of a database. The APIs are generated based on the set of data graphs. The APIs are provided to a user for selecting an API of the APIs. A JavaScript object notation based model (JSON-based model) associated with the selected API is generated, wherein the selected API is added to an application that uses the selected API for exchanging data with the database using the JSON-based model.

Claims (29)

1. A method for generating a plurality of application programming interfaces (APIs) in a codeless manner, said method comprising:

generating, by one or more processors of an electronic system, a set of data graphs that identifies relationships between data objects included in a description of a database schema of a database;

generating, by the one or more processors, the plurality of APIs based on the set of data graphs;

publishing, by the one or more processors, the plurality of APIs to a user for selecting an API of the plurality of APIs; and

generating, by the one or more processors, a JavaScript object notation based model (JSON-based model) associated with the selected API, wherein the selected API is added to an application that uses the selected API for exchanging data with the database using the JSON-based model;

wherein during execution of the application, the JSON-based model is instantiated into a JS object based on the JSON-based model's behavioral description in the JS file and the JSON-based model's property description in the JSON file.

2. The method of claim 1 , said method further comprising: receiving, by the one or more processors from the user, a set of credentials of the user to determine what portion of the database is accessible to the user.

3. The method of claim 1 , wherein the description of the database schema comprises connecting to a data storage that includes the database.

4. The method of claim 1 , wherein the description of the database schema comprises a set of data objects in the database.

5. The method of claim 1 , wherein the database is a relational database (RIB), and wherein each data graph represents (i) a table in the RDB and (ii) the table's relationship with other tables of the RDB.

6. The method of claim 1 , wherein the set of data graphs identifies the relationships between the set of data objects by identifying a set of foreign keys.

7. A storage medium, comprising a computer readable hardware storage device storing instructions executable by one or more processors of an electronic system to implement a method for generating a plurality of application programming interfaces (APIs) in a codeless manner, said method comprising:

generating, by the one or more processors, a set of data graphs that identities relationships between data objects included in a description of a database schema of a database;

generating, by the one or more processors, the plurality of APIs based on the set of data graphs;

publishing, by the one or more processors, the plurality of APIs to a user for selecting an API of the plurality of APIs; and

generating, by the one or more processors, a JavaScript object notation based model (JSON-based model) associated with the selected API, wherein the selected API is added to an application that uses the selected API for exchanging data with the database using the JSON-based model;

wherein during execution of the application, the JSON-based model is instantiated into a JS object based on the JSON-based model's behavioral description in the JS file and the JSON-based model's property description in the JSON file.

8. The storage medium of claim 7 , said method further comprising: receiving, by the one or more processors from the user, a set of credentials of the user to determine what portion of the database is accessible to the user.

9. The storage medium of claim 7 , wherein the database is a relational database (RDB), and wherein each data graph represents (i) a table in the RDB and (ii) the table's relationship with other tables of the RDB.

10. The storage medium of claim 7 , wherein the set of data graphs identifies the relationships between the data objects by identifying a set of foreign keys.

11. An electronic system, comprising one or more processors, one or more memories, and a computer readable hardware storage device, said hardware storage device storing instructions executable by the one or more processors via the one or more memories to implement a method for generating a plurality of application programming interfaces (APIs) in a codeless manner, said method comprising:

generating, by the one or more processors, a set of data graphs that identifies relationships between data objects included in a description of a database schema of a database;

generating, by the one or more processors, the plurality of APIs based on the set of data graphs;

publishing, by the one or more processors, the plurality of APIs to a user for selecting an API of the plurality of APIs; and

generating, by the one or more processors, a JavaScript object notation based model (JSON-based model) associated with the selected API, wherein the selected API is added to an application that uses the selected API for exchanging data with the database using the JSON-based model;

during execution of the application, the JSON-based model is instantiated into a JS object based on the JSON-based model's behavioral description in the JS file and the JSON-based model's property description in the JSON file.

12. The electronic system of claim 11 , said method further comprising: receiving, by the one or more processors from the user, a set of credentials of the user to determine what portion of the database is accessible to the user.

13. The electronic system of claim 11 , wherein the database is a relational database (RDB), and wherein each data graph represents (i) a table in the RDB and (ii) the table's relationship with other tables of the RDB.

14. The electronic system of claim 11 , wherein the set of data graphs identifies the relationships between the data objects by identifying a set of foreign keys.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 5, 2017
From: STRONGLOOP, INC.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 042593/0231 →
Continuity (3)
Continuation 14490651 · Sep 18, 2014
Provisional Application 62051924 · Sep 17, 2014
Related Publication 20170161121A1 · Jun 8, 2017