|
2 | 2 |
|
3 | 3 | /** |
4 | 4 | * Routes for the BookStack API. |
5 | | - * Routes have a uri prefix of /api/. |
| 5 | + * Routes have a URI prefix of /api/. |
6 | 6 | * Controllers all end with "ApiController" |
7 | 7 | */ |
8 | 8 |
|
|
19 | 19 | use BookStack\Users\Controllers\UserApiController; |
20 | 20 | use Illuminate\Support\Facades\Route; |
21 | 21 |
|
22 | | -Route::get('docs.json', [ApiDocsController::class, 'json']); |
23 | | - |
24 | | -Route::get('attachments', [AttachmentApiController::class, 'list']); |
25 | | -Route::post('attachments', [AttachmentApiController::class, 'create']); |
26 | | -Route::get('attachments/{id}', [AttachmentApiController::class, 'read']); |
27 | | -Route::put('attachments/{id}', [AttachmentApiController::class, 'update']); |
28 | | -Route::delete('attachments/{id}', [AttachmentApiController::class, 'delete']); |
| 22 | +// Main Entity Routes |
29 | 23 |
|
30 | | -Route::get('books', [EntityControllers\BookApiController::class, 'list']); |
31 | | -Route::post('books', [EntityControllers\BookApiController::class, 'create']); |
32 | | -Route::get('books/{id}', [EntityControllers\BookApiController::class, 'read']); |
33 | | -Route::put('books/{id}', [EntityControllers\BookApiController::class, 'update']); |
34 | | -Route::delete('books/{id}', [EntityControllers\BookApiController::class, 'delete']); |
35 | | - |
36 | | -Route::get('books/{id}/export/html', [ExportControllers\BookExportApiController::class, 'exportHtml']); |
37 | | -Route::get('books/{id}/export/pdf', [ExportControllers\BookExportApiController::class, 'exportPdf']); |
38 | | -Route::get('books/{id}/export/plaintext', [ExportControllers\BookExportApiController::class, 'exportPlainText']); |
39 | | -Route::get('books/{id}/export/markdown', [ExportControllers\BookExportApiController::class, 'exportMarkdown']); |
40 | | -Route::get('books/{id}/export/zip', [ExportControllers\BookExportApiController::class, 'exportZip']); |
| 24 | +Route::get('pages', [EntityControllers\PageApiController::class, 'list']); |
| 25 | +Route::post('pages', [EntityControllers\PageApiController::class, 'create']); |
| 26 | +Route::get('pages/{id}', [EntityControllers\PageApiController::class, 'read']); |
| 27 | +Route::put('pages/{id}', [EntityControllers\PageApiController::class, 'update']); |
| 28 | +Route::delete('pages/{id}', [EntityControllers\PageApiController::class, 'delete']); |
| 29 | +Route::get('pages/{id}/export/html', [ExportControllers\PageExportApiController::class, 'exportHtml']); |
| 30 | +Route::get('pages/{id}/export/pdf', [ExportControllers\PageExportApiController::class, 'exportPdf']); |
| 31 | +Route::get('pages/{id}/export/plaintext', [ExportControllers\PageExportApiController::class, 'exportPlainText']); |
| 32 | +Route::get('pages/{id}/export/markdown', [ExportControllers\PageExportApiController::class, 'exportMarkdown']); |
| 33 | +Route::get('pages/{id}/export/zip', [ExportControllers\PageExportApiController::class, 'exportZip']); |
41 | 34 |
|
42 | 35 | Route::get('chapters', [EntityControllers\ChapterApiController::class, 'list']); |
43 | 36 | Route::post('chapters', [EntityControllers\ChapterApiController::class, 'create']); |
|
50 | 43 | Route::get('chapters/{id}/export/markdown', [ExportControllers\ChapterExportApiController::class, 'exportMarkdown']); |
51 | 44 | Route::get('chapters/{id}/export/zip', [ExportControllers\ChapterExportApiController::class, 'exportZip']); |
52 | 45 |
|
53 | | -Route::get('pages', [EntityControllers\PageApiController::class, 'list']); |
54 | | -Route::post('pages', [EntityControllers\PageApiController::class, 'create']); |
55 | | -Route::get('pages/{id}', [EntityControllers\PageApiController::class, 'read']); |
56 | | -Route::put('pages/{id}', [EntityControllers\PageApiController::class, 'update']); |
57 | | -Route::delete('pages/{id}', [EntityControllers\PageApiController::class, 'delete']); |
| 46 | +Route::get('books', [EntityControllers\BookApiController::class, 'list']); |
| 47 | +Route::post('books', [EntityControllers\BookApiController::class, 'create']); |
| 48 | +Route::get('books/{id}', [EntityControllers\BookApiController::class, 'read']); |
| 49 | +Route::put('books/{id}', [EntityControllers\BookApiController::class, 'update']); |
| 50 | +Route::delete('books/{id}', [EntityControllers\BookApiController::class, 'delete']); |
| 51 | +Route::get('books/{id}/export/html', [ExportControllers\BookExportApiController::class, 'exportHtml']); |
| 52 | +Route::get('books/{id}/export/pdf', [ExportControllers\BookExportApiController::class, 'exportPdf']); |
| 53 | +Route::get('books/{id}/export/plaintext', [ExportControllers\BookExportApiController::class, 'exportPlainText']); |
| 54 | +Route::get('books/{id}/export/markdown', [ExportControllers\BookExportApiController::class, 'exportMarkdown']); |
| 55 | +Route::get('books/{id}/export/zip', [ExportControllers\BookExportApiController::class, 'exportZip']); |
58 | 56 |
|
59 | | -Route::get('pages/{id}/export/html', [ExportControllers\PageExportApiController::class, 'exportHtml']); |
60 | | -Route::get('pages/{id}/export/pdf', [ExportControllers\PageExportApiController::class, 'exportPdf']); |
61 | | -Route::get('pages/{id}/export/plaintext', [ExportControllers\PageExportApiController::class, 'exportPlainText']); |
62 | | -Route::get('pages/{id}/export/markdown', [ExportControllers\PageExportApiController::class, 'exportMarkdown']); |
63 | | -Route::get('pages/{id}/export/zip', [ExportControllers\PageExportApiController::class, 'exportZip']); |
| 57 | +Route::get('shelves', [EntityControllers\BookshelfApiController::class, 'list']); |
| 58 | +Route::post('shelves', [EntityControllers\BookshelfApiController::class, 'create']); |
| 59 | +Route::get('shelves/{id}', [EntityControllers\BookshelfApiController::class, 'read']); |
| 60 | +Route::put('shelves/{id}', [EntityControllers\BookshelfApiController::class, 'update']); |
| 61 | +Route::delete('shelves/{id}', [EntityControllers\BookshelfApiController::class, 'delete']); |
64 | 62 |
|
65 | | -Route::get('image-gallery', [ImageGalleryApiController::class, 'list']); |
66 | | -Route::post('image-gallery', [ImageGalleryApiController::class, 'create']); |
67 | | -Route::get('image-gallery/url/data', [ImageGalleryApiController::class, 'readDataForUrl']); |
68 | | -Route::get('image-gallery/{id}', [ImageGalleryApiController::class, 'read']); |
69 | | -Route::get('image-gallery/{id}/data', [ImageGalleryApiController::class, 'readData']); |
70 | | -Route::put('image-gallery/{id}', [ImageGalleryApiController::class, 'update']); |
71 | | -Route::delete('image-gallery/{id}', [ImageGalleryApiController::class, 'delete']); |
| 63 | +// Additional Model Routes, in alphabetical order |
72 | 64 |
|
73 | | -Route::get('search', [SearchApiController::class, 'all']); |
| 65 | +Route::get('attachments', [AttachmentApiController::class, 'list']); |
| 66 | +Route::post('attachments', [AttachmentApiController::class, 'create']); |
| 67 | +Route::get('attachments/{id}', [AttachmentApiController::class, 'read']); |
| 68 | +Route::put('attachments/{id}', [AttachmentApiController::class, 'update']); |
| 69 | +Route::delete('attachments/{id}', [AttachmentApiController::class, 'delete']); |
| 70 | + |
| 71 | +Route::get('audit-log', [ActivityControllers\AuditLogApiController::class, 'list']); |
74 | 72 |
|
75 | 73 | Route::get('comments', [ActivityControllers\CommentApiController::class, 'list']); |
76 | 74 | Route::post('comments', [ActivityControllers\CommentApiController::class, 'create']); |
77 | 75 | Route::get('comments/{id}', [ActivityControllers\CommentApiController::class, 'read']); |
78 | 76 | Route::put('comments/{id}', [ActivityControllers\CommentApiController::class, 'update']); |
79 | 77 | Route::delete('comments/{id}', [ActivityControllers\CommentApiController::class, 'delete']); |
80 | 78 |
|
81 | | -Route::get('shelves', [EntityControllers\BookshelfApiController::class, 'list']); |
82 | | -Route::post('shelves', [EntityControllers\BookshelfApiController::class, 'create']); |
83 | | -Route::get('shelves/{id}', [EntityControllers\BookshelfApiController::class, 'read']); |
84 | | -Route::put('shelves/{id}', [EntityControllers\BookshelfApiController::class, 'update']); |
85 | | -Route::delete('shelves/{id}', [EntityControllers\BookshelfApiController::class, 'delete']); |
| 79 | +Route::get('content-permissions/{contentType}/{contentId}', [ContentPermissionApiController::class, 'read']); |
| 80 | +Route::put('content-permissions/{contentType}/{contentId}', [ContentPermissionApiController::class, 'update']); |
86 | 81 |
|
87 | | -Route::get('users', [UserApiController::class, 'list']); |
88 | | -Route::post('users', [UserApiController::class, 'create']); |
89 | | -Route::get('users/{id}', [UserApiController::class, 'read']); |
90 | | -Route::put('users/{id}', [UserApiController::class, 'update']); |
91 | | -Route::delete('users/{id}', [UserApiController::class, 'delete']); |
| 82 | +Route::get('docs.json', [ApiDocsController::class, 'json']); |
92 | 83 |
|
93 | | -Route::get('roles', [RoleApiController::class, 'list']); |
94 | | -Route::post('roles', [RoleApiController::class, 'create']); |
95 | | -Route::get('roles/{id}', [RoleApiController::class, 'read']); |
96 | | -Route::put('roles/{id}', [RoleApiController::class, 'update']); |
97 | | -Route::delete('roles/{id}', [RoleApiController::class, 'delete']); |
| 84 | +Route::get('image-gallery', [ImageGalleryApiController::class, 'list']); |
| 85 | +Route::post('image-gallery', [ImageGalleryApiController::class, 'create']); |
| 86 | +Route::get('image-gallery/url/data', [ImageGalleryApiController::class, 'readDataForUrl']); |
| 87 | +Route::get('image-gallery/{id}', [ImageGalleryApiController::class, 'read']); |
| 88 | +Route::get('image-gallery/{id}/data', [ImageGalleryApiController::class, 'readData']); |
| 89 | +Route::put('image-gallery/{id}', [ImageGalleryApiController::class, 'update']); |
| 90 | +Route::delete('image-gallery/{id}', [ImageGalleryApiController::class, 'delete']); |
98 | 91 |
|
99 | 92 | Route::get('imports', [ExportControllers\ImportApiController::class, 'list']); |
100 | 93 | Route::post('imports', [ExportControllers\ImportApiController::class, 'create']); |
|
106 | 99 | Route::put('recycle-bin/{deletionId}', [EntityControllers\RecycleBinApiController::class, 'restore']); |
107 | 100 | Route::delete('recycle-bin/{deletionId}', [EntityControllers\RecycleBinApiController::class, 'destroy']); |
108 | 101 |
|
109 | | -Route::get('content-permissions/{contentType}/{contentId}', [ContentPermissionApiController::class, 'read']); |
110 | | -Route::put('content-permissions/{contentType}/{contentId}', [ContentPermissionApiController::class, 'update']); |
| 102 | +Route::get('roles', [RoleApiController::class, 'list']); |
| 103 | +Route::post('roles', [RoleApiController::class, 'create']); |
| 104 | +Route::get('roles/{id}', [RoleApiController::class, 'read']); |
| 105 | +Route::put('roles/{id}', [RoleApiController::class, 'update']); |
| 106 | +Route::delete('roles/{id}', [RoleApiController::class, 'delete']); |
111 | 107 |
|
112 | | -Route::get('audit-log', [ActivityControllers\AuditLogApiController::class, 'list']); |
| 108 | +Route::get('search', [SearchApiController::class, 'all']); |
113 | 109 |
|
114 | 110 | Route::get('system', [SystemApiController::class, 'read']); |
| 111 | + |
| 112 | +Route::get('users', [UserApiController::class, 'list']); |
| 113 | +Route::post('users', [UserApiController::class, 'create']); |
| 114 | +Route::get('users/{id}', [UserApiController::class, 'read']); |
| 115 | +Route::put('users/{id}', [UserApiController::class, 'update']); |
| 116 | +Route::delete('users/{id}', [UserApiController::class, 'delete']); |
0 commit comments