# US 2014/0157228 A1 · Method and system for automatically generating a restful web service software development kit client

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2014/0157228 A1
- Document ID: US20140157228A1
- Status: Published application
- Kind: A1
- Application number: 13/690,518
- Filed: 2012-11-30
- Published: 2014-06-05
- Earliest claimed: 2012-11-30
- Assignees: Red Hat Israel, Ltd.
- Applicants: Red Hat Israel, Ltd.
- Inventors: Michael Pasternak
- Web page: https://patentgrep.com/patent/US20140157228A1

## CPC

- G06F 8/30: Creation or generation of source code
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A computer system receives user input indicating uniform resource identifiers (URIs) for a RESTful web service. The computer system identifies a programming language for a RESTful web service software development kit (SDK) client and creates methods for the URIs using programming code format of the identified programming language. The computer system creates the RESTful web service SDK client using the methods.

## Claims

### Claim 1

A method comprising:
receiving user input indicating a plurality of uniform resource identifiers (URIs) for a RESTful web service;
identifying a programming language for a RESTful web service software development kit (SDK) client;
creating, by a server computer system, a plurality of methods for the plurality of URIs using programming code format of the identified programming language; and
creating the RESTful web service SDK client using the plurality of methods.

### Claim 2 (depends on 1)

The method of claim 1, further comprising:
storing the plurality of methods on the server computer system, wherein the server computer system receives a call from the SDK client for at least one of the stored methods.

### Claim 3 (depends on 1)

The method of claim 1, further comprising:
creating pluralities of methods for the plurality of URIs in a plurality of programming languages.

### Claim 4 (depends on 1)

The method of claim 1, further comprising:
detecting a change in the RESTful web service;
identifying one of the plurality of URIs associated with the change;
updating the method corresponding to the identified URI to reflect the change; and
storing the updated method on the server.

### Claim 5 (depends on 4)

The method of claim 4, wherein updating the method comprises:
creating a new method for the change in the RESTful web service.

### Claim 6 (depends on 1)

The method of claim 1, wherein creating the plurality of methods for the plurality of URIs comprises:
identifying a template that corresponds to the identified programming language;
identifying RESTful (Representational State Transfer) service description language describing the plurality of URIs; and
populating the template with input data extracted from the RESTful service description language describing the corresponding URI, wherein the populated template represents the method for the corresponding URI.

### Claim 7 (depends on 6)

The method of claim 6, wherein populating the template comprises:
populating the template with at least one of HTTP attribute metadata, HTTP method metadata, header metadata, body argument metadata, URI argument metadata, or response argument metadata.

### Claim 8

A non-transitory computer-readable storage medium including instructions that, when executed by a processing device, cause the processing device to perform a set of operations comprising:
receiving user input indicating a plurality of uniform resource identifiers (URIs) for a RESTful web service;
identifying a programming language for a RESTful web service software development kit (SDK) client;
creating, by the processing device, a plurality of methods for the plurality of URIs using programming code format of the identified programming language; and
creating the RESTful web service SDK client using the plurality of methods.

### Claim 9 (depends on 8)

The non-transitory computer-readable storage medium of claim 8, the method further comprising:
storing the plurality of methods on a data store coupled to the processing device, wherein the processing device receives a call from the SDK client for at least one of the stored method.

### Claim 10 (depends on 8)

The non-transitory computer-readable storage medium of claim 8, the operations further comprising:
creating pluralities of methods for the plurality of URIs in a plurality of programming languages.

### Claim 11 (depends on 8)

The non-transitory computer-readable storage medium of claim 8, the opertions further comprising:
detecting a change in the RESTful web service;
identifying one of the plurality of URIs associated with the change; and
updating the method corresponding to the identified URI to reflect the change.

### Claim 12 (depends on 8)

The non-transitory computer-readable storage medium of claim 8, wherein creating the plurality of methods for the plurality of URIs comprises:
identifying a template that corresponds to the identified programming language;
identifying RESTful (Representational State Transfer) service description language describing the plurality of URIs; and
populating the template with input data extracted from the RESTful service description language describing the corresponding URI, wherein the populated template represents the method argument for the corresponding URI.

### Claim 13 (depends on 12)

The non-transitory computer-readable storage medium of claim 12, wherein populating the template comprises:
populating the template with at least one of URI HTTP attribute metadata, HTTP method metadata, header metadata, body argument metadata, URI argument metadata, or response argument metadata.

### Claim 14

A system comprising:
a memory; and
a processing device coupled to the memory to:
receive user input indicating a plurality of uniform resource identifiers (URIs) for a RESTful web service;
identify a programming language for a RESTful web service software development kit (SDK) client;
create a plurality of methods for the plurality of URIs using programming code format of the identified programming language; and
create the RESTful web service SDK client using the plurality of methods.

### Claim 15 (depends on 14)

The system of claim 14, further comprising:
a persistent storage unit coupled to the memory and the processing device to store the plurality of methods, wherein the processing device receives a call from the SDK client for at least one of the stored methods.

### Claim 16 (depends on 14)

The system of claim 14, wherein the processing device is further to:
create pluralities of methods for the plurality of URIs in a plurality of programming languages.

### Claim 17 (depends on 14)

The system of claim 14, wherein the processing device is further to:
detect a change in the RESTful web service;
identify one of the plurality of URIs associated with the change; and
update the method corresponding to the identified URI to reflect the change.

### Claim 18 (depends on 17)

The system of claim 17, further comprising:
a persistent storage unit coupled to the memory and the processing device to store the updated method, wherein the processing device receives a call from the SDK client for the updated method.

### Claim 19 (depends on 14)

The system of claim 14, wherein creating the plurality of methods argument for the plurality of URIs comprises:
identifying a template that corresponds to the identified programming language;
identifying RESTful (Representational State Transfer) service description language describing the plurality of URIs; and
populating the template with input data extracted from the RESTful service description language describing the corresponding URI, wherein the populated template represents the method argument for the corresponding URI.

### Claim 20 (depends on 19)

The system of claim 19, wherein populating the template comprises:
populating the template with at least one of URI HTTP attribute metadata, HTTP method metadata, header metadata, body argument metadata, URI argument metadata, or response argument metadata.
