Home / Digitec Coding Practices / REST API
REST API Standards
-
All URL paths must be dashed and lowercase.
-
All URL parameters (POST, GET, etc) must be underscored and lowercase:
snake_case
. -
All entities of the same type must have a common schema with a minimum set of properties.
-
Extra properties can be requested using the following notation:
resource-endpoint:(extra-property1, extra-property2)
- Extra properties can be sub-collections, relationships etc of the main resource.
-
Updating or creating an entity should return the entity if discreet (i.e. tagging an asset will not return the tag or the asset but creating a tag will return the tag).
HTTP | Route | Action |
---|---|---|
POST |
'/permissions` | create resource, optional permission id for parent in payload |
GET |
'/permissions` | get resource collection |
GET |
'/permissions?role=:id` | get resource collection for role |
GET |
'/permissions/:id` | get single resource |
DELETE |
'/permissions/:id` | delete single resource |
DELETE |
'/permissions/:id?recursive=:boolean` | delete single resource |
PATCH |
'/permissions/:id` | update resource |
POST |
'/permissions/:id/link` | link permission to specified role(s), payload [] |
POST |
'/permissions/:id/unlink` | unlink permission to specified role(s), payload [] |
|
HTTP | Route | Action |
---|---|---|
GET |
/resources |
View all resources |
GET |
/resources/{id} |
View single resource |
GET |
/resources/new |
View create resource form |
POST |
/resources |
Store new resource |
GET |
/resources/{id}/edit |
View edit resource form |
PUT |
/resources/{id} |
Update resource |
PATCH |
/resources/{id} |
Update resource |
DELETE |
/resources/{id} |
Delete resource |