Features Overview
REST API Features
Introduction
EasyManage REST APIs make your data instantly accessible via REST API. Build and ship modern apps and APIs faster. Deploy a real-time, secured REST API against any supported database.
The EasyManage Builder Studio generates your REST API code based on your tables/views selected in build. You don't need to code / write a REST controller, service or model. Also generated are a range of possible queries, all CRUD operations.
Databases
Please refer to APIs Reference Databases for details.
REST APIs against Data Model
Model is generated for your data, and we provide an instant REST APIs based on CRUD operations against model.
Naming Conventions for REST models: Update, We have implemented Java-default. In this naming convention:
- PascalCase is used for Model names, REST Path names
- camelCase is used for field names and arguments
APIs Made Available Are
Please refer to Feature Support Matrix Table for backend.
Example client calls for REST
These are generated and provisioned for each table. Please refer to respective *ClientInfo.txt
file for details, e.g.
emapi\app\dbrest\src\main\java\com\example\emapi\app\Customer\Customer_DataRestClientInfo.txt
Note: You can use Swagger UI to test APIs, try them out and send REST requests.
* Access the API documentation With Swagger UI at:
* http://localhost:9080/swagger-ui.html
Documentation of Spring REST APIs Using OpenAPI 3.0 :
* The OpenAPI descriptions are available at the default path /v3/api-docs :
* http://localhost:9080/v3/api-docs/
* Download OpenAPI definitions in yaml format:
* http://localhost:9080/v3/api-docs.yaml
Authentication & Authorization
Authorization is performed with Basic Auth User/Password, and can be extended to JWT token based or OAuth 2.0.
Access control is based on roles USER
, ADMIN
. e.g. Customize Allow delete only for ADMIN roles via @RolesAllowed({ "ADMIN" })
.
Please refer to Readme for Security at:
...\dbrest\security\Readme_Security.txt
Security Authorization for REST API calls as per ROLE_USER, ROLE_ADMIN is implemented via antMatchers. e.g. refer to ...\dbrest\security\basicAuthDbUserDetails\SpringSecurityConfigBasicAuth.java
/* Note: Below annotations can be used in spring controller methods
*/
@Secured({ "ADMIN" })
or
@RolesAllowed({ "USER","ADMIN" })
Serverless
- Enabling Serverless (Functions) with Spring Cloud Function, Please refer to:
- /res/docs/backend/reference/api-how-tos#serverless