GeneXus has the ability to automatically create REST Web Services from transactions that are Business Component (BC), Data Provider object and procedures.
The Object-level properties involved in configuring a Rest web service in GeneXus are as follows:
- Expose as Web Service = TRUE
- Web Service Protocol = REST Protocol
By setting the necessary configuration, the data that encapsulates the BC, Data Provider or Procedure may be accessed through the web as a REST service using the HTTP protocol.
A Rest application requires a different approach than a remote procedure-based application.
In Rest, the focus is placed on the wide range of resources; for instance, a Rest application could define resources such as products, clients, purchase orders, etc.
So, the process to design an application like this would be to identify each one of its resources: remember that each resource has its own URI.
- A URI for the products and a URI for each product
- A URI for the Purchase Orders and a URI for each one.
- etc
Consider the methods that you need to implement. For example, to let end users access the list of products - GET, to access each product (GET), to insert a purchase order (POST) or to update an order (PUT).
In GeneXus, developing and/or consuming a Rest service is an easy task.
As you'll see in the following documents, a Rest service is generated by setting just an object property, and the specification document of this service is generated automatically.
With respect to consuming a Rest service (it can be generated by GeneXus or not), GeneXus provides the OpenAPI import tool.