diff --git a/API_DESIGN.md b/API_DESIGN.md index cc89d1c6c..90bb3ef4f 100644 --- a/API_DESIGN.md +++ b/API_DESIGN.md @@ -270,6 +270,30 @@ Additionally, state changes, specific actions or operations that do not fit into - `Send` for sending a resource. - etc. +#### REST Path + +Paths of operations MUST be structured as follows: + +| Operation | Method | Path | +|---------------|--------|------------------------------------------| +| Create/Add | POST | /\/\ | +| Update | POST | /\/\/\ | +| Delete/Remove | DELETE | /\/\/\ | +| Set | PUT | /\/\ | +| Get | GET | /\/\/\ | +| List | POST | /\/\/search | + +Which results in an example path for operations like `/v2beta/users/search`. + +Paths of status changes on resources MUST be structured as follows: + +| Operation | Method | Path | +|------------|--------|-----------------------------------------------------| +| Activate | POST | /\/\/\/activate | +| Deactivate | POST | /\/\/\/deactivate | + +Which results in an example path for status changes like `/v2beta/users/1234567890/activate`. + ## Authentication and Authorization The API uses OAuth 2 for authorization. There are corresponding middlewares that check the access token for validity and