-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathroutes.json
More file actions
76 lines (76 loc) · 2.31 KB
/
routes.json
File metadata and controls
76 lines (76 loc) · 2.31 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
{
"_comment": "Routes are defined explicitly rather than using defaults to omit POST / and PUT /:_id",
"root": "contentplugins",
"routes": [
{
"route": "/",
"handlers": { "get": "requestHandler" },
"permissions": { "get": ["read:${scope}"] }
},
{
"route": "/schema",
"handlers": { "get": "serveSchema" },
"permissions": { "get": ["read:schema"] }
},
{
"route": "/:_id",
"handlers": { "get": "requestHandler", "patch": "requestHandler", "delete": "requestHandler" },
"permissions": { "get": ["read:${scope}"], "patch": ["write:${scope}"], "delete": ["write:${scope}"] }
},
{
"route": "/query",
"validate": false,
"modifying": false,
"handlers": { "post": "queryHandler" },
"permissions": { "post": ["read:${scope}"] }
},
{
"route": "/install",
"validate": false,
"handlers": { "post": "installHandler" },
"permissions": { "post": ["install:${scope}"] },
"meta": {
"post": {
"summary": "Install a content plugin",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"name": { "type": "string" },
"version": { "type": "string" },
"force": { "type": "boolean", "default": false }
}
}
}
}
}
}
}
},
{
"route": "/:_id/update",
"handlers": { "post": "updateHandler" },
"permissions": { "post": ["update:${scope}"] },
"meta": {
"post": {
"summary": "Update a single content plugin",
"parameters": [{ "name": "_id", "in": "path", "description": "Content plugin _id", "required": true }]
}
}
},
{
"route": "/:_id/uses",
"handlers": { "get": "usesHandler" },
"permissions": { "get": ["read:${scope}"] },
"meta": {
"get": {
"summary": "Return courses using a single content plugin",
"parameters": [{ "name": "_id", "in": "path", "description": "Content plugin _id", "required": true }]
}
}
}
]
}