Extremely easy way how to create REST API. All you need to do is create a configuration file with definitions of your API and prepare backend to store all of these data (multiple backends supported). Then you can simply run it anywhere because USA is just one small binary file (also shipped as Docker image).
- name: people
api:
client: "domain.com" # value for CORS - optional
bearer: "xyz" # API auth
limits: # API rate limits
list: "0" # unlimited
get: "0" # unlimited
put: "5m" # 5 requests / minute [s,m,h,d - available]
delete: "-1" # endpoint disabled
fields:
firstname:
type: "string"
required: false
lastname:
type: "string"
required: true
min: 1 # min length of lastname field
max: 50 # max length of lastname field
email:
type: "string"
rule: "email" # field must contain valid email address
required: true
# use config file with memory store
./universal-store-api run path/to/config.yml mem
PUT http://localhost:8080/people
Authorization: Bearer xyz
Content-Type: application/json
{
"firstname": "tomas",
"lastname": "kozak",
"email": "email@talko.cz"
}
GET http://localhost:8080/people
Authorization: Bearer xyz
GET http://localhost:8080/people/[ENTITY-ID]
Authorization: Bearer xyz
DELETE http://localhost:8080/people/[ENTITY-ID]
Authorization: Bearer xyz
USA does not support pagination. It's not recommended using USA for project with more than 1000 entities.