4
4
"github.com/go-macaron/binding"
5
5
"github.com/grafana/grafana/pkg/api/avatar"
6
6
"github.com/grafana/grafana/pkg/api/dtos"
7
+ "github.com/grafana/grafana/pkg/api/routing"
7
8
"github.com/grafana/grafana/pkg/middleware"
8
9
m "github.com/grafana/grafana/pkg/models"
9
10
)
@@ -117,10 +118,10 @@ func (hs *HTTPServer) registerRoutes() {
117
118
r .Get ("/api/login/ping" , quota ("session" ), LoginAPIPing )
118
119
119
120
// authed api
120
- r .Group ("/api" , func (apiRoute RouteRegister ) {
121
+ r .Group ("/api" , func (apiRoute routing. RouteRegister ) {
121
122
122
123
// user (signed in)
123
- apiRoute .Group ("/user" , func (userRoute RouteRegister ) {
124
+ apiRoute .Group ("/user" , func (userRoute routing. RouteRegister ) {
124
125
userRoute .Get ("/" , wrap (GetSignedInUser ))
125
126
userRoute .Put ("/" , bind (m.UpdateUserCommand {}), wrap (UpdateSignedInUser ))
126
127
userRoute .Post ("/using/:id" , wrap (UserSetUsingOrg ))
@@ -140,7 +141,7 @@ func (hs *HTTPServer) registerRoutes() {
140
141
})
141
142
142
143
// users (admin permission required)
143
- apiRoute .Group ("/users" , func (usersRoute RouteRegister ) {
144
+ apiRoute .Group ("/users" , func (usersRoute routing. RouteRegister ) {
144
145
usersRoute .Get ("/" , wrap (SearchUsers ))
145
146
usersRoute .Get ("/search" , wrap (SearchUsersWithPaging ))
146
147
usersRoute .Get ("/:id" , wrap (GetUserByID ))
@@ -152,7 +153,7 @@ func (hs *HTTPServer) registerRoutes() {
152
153
}, reqGrafanaAdmin )
153
154
154
155
// team (admin permission required)
155
- apiRoute .Group ("/teams" , func (teamsRoute RouteRegister ) {
156
+ apiRoute .Group ("/teams" , func (teamsRoute routing. RouteRegister ) {
156
157
teamsRoute .Post ("/" , bind (m.CreateTeamCommand {}), wrap (CreateTeam ))
157
158
teamsRoute .Put ("/:teamId" , bind (m.UpdateTeamCommand {}), wrap (UpdateTeam ))
158
159
teamsRoute .Delete ("/:teamId" , wrap (DeleteTeamByID ))
@@ -162,19 +163,19 @@ func (hs *HTTPServer) registerRoutes() {
162
163
}, reqOrgAdmin )
163
164
164
165
// team without requirement of user to be org admin
165
- apiRoute .Group ("/teams" , func (teamsRoute RouteRegister ) {
166
+ apiRoute .Group ("/teams" , func (teamsRoute routing. RouteRegister ) {
166
167
teamsRoute .Get ("/:teamId" , wrap (GetTeamByID ))
167
168
teamsRoute .Get ("/search" , wrap (SearchTeams ))
168
169
})
169
170
170
171
// org information available to all users.
171
- apiRoute .Group ("/org" , func (orgRoute RouteRegister ) {
172
+ apiRoute .Group ("/org" , func (orgRoute routing. RouteRegister ) {
172
173
orgRoute .Get ("/" , wrap (GetOrgCurrent ))
173
174
orgRoute .Get ("/quotas" , wrap (GetOrgQuotas ))
174
175
})
175
176
176
177
// current org
177
- apiRoute .Group ("/org" , func (orgRoute RouteRegister ) {
178
+ apiRoute .Group ("/org" , func (orgRoute routing. RouteRegister ) {
178
179
orgRoute .Put ("/" , bind (dtos.UpdateOrgForm {}), wrap (UpdateOrgCurrent ))
179
180
orgRoute .Put ("/address" , bind (dtos.UpdateOrgAddressForm {}), wrap (UpdateOrgAddressCurrent ))
180
181
orgRoute .Post ("/users" , quota ("user" ), bind (m.AddOrgUserCommand {}), wrap (AddOrgUserToCurrentOrg ))
@@ -192,7 +193,7 @@ func (hs *HTTPServer) registerRoutes() {
192
193
}, reqOrgAdmin )
193
194
194
195
// current org without requirement of user to be org admin
195
- apiRoute .Group ("/org" , func (orgRoute RouteRegister ) {
196
+ apiRoute .Group ("/org" , func (orgRoute routing. RouteRegister ) {
196
197
orgRoute .Get ("/users" , wrap (GetOrgUsersForCurrentOrg ))
197
198
})
198
199
@@ -203,7 +204,7 @@ func (hs *HTTPServer) registerRoutes() {
203
204
apiRoute .Get ("/orgs" , reqGrafanaAdmin , wrap (SearchOrgs ))
204
205
205
206
// orgs (admin routes)
206
- apiRoute .Group ("/orgs/:orgId" , func (orgsRoute RouteRegister ) {
207
+ apiRoute .Group ("/orgs/:orgId" , func (orgsRoute routing. RouteRegister ) {
207
208
orgsRoute .Get ("/" , wrap (GetOrgByID ))
208
209
orgsRoute .Put ("/" , bind (dtos.UpdateOrgForm {}), wrap (UpdateOrg ))
209
210
orgsRoute .Put ("/address" , bind (dtos.UpdateOrgAddressForm {}), wrap (UpdateOrgAddress ))
@@ -217,24 +218,24 @@ func (hs *HTTPServer) registerRoutes() {
217
218
}, reqGrafanaAdmin )
218
219
219
220
// orgs (admin routes)
220
- apiRoute .Group ("/orgs/name/:name" , func (orgsRoute RouteRegister ) {
221
+ apiRoute .Group ("/orgs/name/:name" , func (orgsRoute routing. RouteRegister ) {
221
222
orgsRoute .Get ("/" , wrap (GetOrgByName ))
222
223
}, reqGrafanaAdmin )
223
224
224
225
// auth api keys
225
- apiRoute .Group ("/auth/keys" , func (keysRoute RouteRegister ) {
226
+ apiRoute .Group ("/auth/keys" , func (keysRoute routing. RouteRegister ) {
226
227
keysRoute .Get ("/" , wrap (GetAPIKeys ))
227
228
keysRoute .Post ("/" , quota ("api_key" ), bind (m.AddApiKeyCommand {}), wrap (AddAPIKey ))
228
229
keysRoute .Delete ("/:id" , wrap (DeleteAPIKey ))
229
230
}, reqOrgAdmin )
230
231
231
232
// Preferences
232
- apiRoute .Group ("/preferences" , func (prefRoute RouteRegister ) {
233
+ apiRoute .Group ("/preferences" , func (prefRoute routing. RouteRegister ) {
233
234
prefRoute .Post ("/set-home-dash" , bind (m.SavePreferencesCommand {}), wrap (SetHomeDashboard ))
234
235
})
235
236
236
237
// Data sources
237
- apiRoute .Group ("/datasources" , func (datasourceRoute RouteRegister ) {
238
+ apiRoute .Group ("/datasources" , func (datasourceRoute routing. RouteRegister ) {
238
239
datasourceRoute .Get ("/" , wrap (GetDataSources ))
239
240
datasourceRoute .Post ("/" , quota ("data_source" ), bind (m.AddDataSourceCommand {}), wrap (AddDataSource ))
240
241
datasourceRoute .Put ("/:id" , bind (m.UpdateDataSourceCommand {}), wrap (UpdateDataSource ))
@@ -250,7 +251,7 @@ func (hs *HTTPServer) registerRoutes() {
250
251
apiRoute .Get ("/plugins/:pluginId/settings" , wrap (GetPluginSettingByID ))
251
252
apiRoute .Get ("/plugins/:pluginId/markdown/:name" , wrap (GetPluginMarkdown ))
252
253
253
- apiRoute .Group ("/plugins" , func (pluginRoute RouteRegister ) {
254
+ apiRoute .Group ("/plugins" , func (pluginRoute routing. RouteRegister ) {
254
255
pluginRoute .Get ("/:pluginId/dashboards/" , wrap (GetPluginDashboards ))
255
256
pluginRoute .Post ("/:pluginId/settings" , bind (m.UpdatePluginSettingCmd {}), wrap (UpdatePluginSetting ))
256
257
}, reqOrgAdmin )
@@ -260,25 +261,25 @@ func (hs *HTTPServer) registerRoutes() {
260
261
apiRoute .Any ("/datasources/proxy/:id" , reqSignedIn , hs .ProxyDataSourceRequest )
261
262
262
263
// Folders
263
- apiRoute .Group ("/folders" , func (folderRoute RouteRegister ) {
264
+ apiRoute .Group ("/folders" , func (folderRoute routing. RouteRegister ) {
264
265
folderRoute .Get ("/" , wrap (GetFolders ))
265
266
folderRoute .Get ("/id/:id" , wrap (GetFolderByID ))
266
267
folderRoute .Post ("/" , bind (m.CreateFolderCommand {}), wrap (CreateFolder ))
267
268
268
- folderRoute .Group ("/:uid" , func (folderUidRoute RouteRegister ) {
269
+ folderRoute .Group ("/:uid" , func (folderUidRoute routing. RouteRegister ) {
269
270
folderUidRoute .Get ("/" , wrap (GetFolderByUID ))
270
271
folderUidRoute .Put ("/" , bind (m.UpdateFolderCommand {}), wrap (UpdateFolder ))
271
272
folderUidRoute .Delete ("/" , wrap (DeleteFolder ))
272
273
273
- folderUidRoute .Group ("/permissions" , func (folderPermissionRoute RouteRegister ) {
274
+ folderUidRoute .Group ("/permissions" , func (folderPermissionRoute routing. RouteRegister ) {
274
275
folderPermissionRoute .Get ("/" , wrap (GetFolderPermissionList ))
275
276
folderPermissionRoute .Post ("/" , bind (dtos.UpdateDashboardAclCommand {}), wrap (UpdateFolderPermissions ))
276
277
})
277
278
})
278
279
})
279
280
280
281
// Dashboard
281
- apiRoute .Group ("/dashboards" , func (dashboardRoute RouteRegister ) {
282
+ apiRoute .Group ("/dashboards" , func (dashboardRoute routing. RouteRegister ) {
282
283
dashboardRoute .Get ("/uid/:uid" , wrap (GetDashboard ))
283
284
dashboardRoute .Delete ("/uid/:uid" , wrap (DeleteDashboardByUID ))
284
285
@@ -292,25 +293,25 @@ func (hs *HTTPServer) registerRoutes() {
292
293
dashboardRoute .Get ("/tags" , GetDashboardTags )
293
294
dashboardRoute .Post ("/import" , bind (dtos.ImportDashboardCommand {}), wrap (ImportDashboard ))
294
295
295
- dashboardRoute .Group ("/id/:dashboardId" , func (dashIdRoute RouteRegister ) {
296
+ dashboardRoute .Group ("/id/:dashboardId" , func (dashIdRoute routing. RouteRegister ) {
296
297
dashIdRoute .Get ("/versions" , wrap (GetDashboardVersions ))
297
298
dashIdRoute .Get ("/versions/:id" , wrap (GetDashboardVersion ))
298
299
dashIdRoute .Post ("/restore" , bind (dtos.RestoreDashboardVersionCommand {}), wrap (RestoreDashboardVersion ))
299
300
300
- dashIdRoute .Group ("/permissions" , func (dashboardPermissionRoute RouteRegister ) {
301
+ dashIdRoute .Group ("/permissions" , func (dashboardPermissionRoute routing. RouteRegister ) {
301
302
dashboardPermissionRoute .Get ("/" , wrap (GetDashboardPermissionList ))
302
303
dashboardPermissionRoute .Post ("/" , bind (dtos.UpdateDashboardAclCommand {}), wrap (UpdateDashboardPermissions ))
303
304
})
304
305
})
305
306
})
306
307
307
308
// Dashboard snapshots
308
- apiRoute .Group ("/dashboard/snapshots" , func (dashboardRoute RouteRegister ) {
309
+ apiRoute .Group ("/dashboard/snapshots" , func (dashboardRoute routing. RouteRegister ) {
309
310
dashboardRoute .Get ("/" , wrap (SearchDashboardSnapshots ))
310
311
})
311
312
312
313
// Playlist
313
- apiRoute .Group ("/playlists" , func (playlistRoute RouteRegister ) {
314
+ apiRoute .Group ("/playlists" , func (playlistRoute routing. RouteRegister ) {
314
315
playlistRoute .Get ("/" , wrap (SearchPlaylists ))
315
316
playlistRoute .Get ("/:id" , ValidateOrgPlaylist , wrap (GetPlaylist ))
316
317
playlistRoute .Get ("/:id/items" , ValidateOrgPlaylist , wrap (GetPlaylistItems ))
@@ -329,7 +330,7 @@ func (hs *HTTPServer) registerRoutes() {
329
330
apiRoute .Get ("/tsdb/testdata/gensql" , reqGrafanaAdmin , wrap (GenerateSQLTestData ))
330
331
apiRoute .Get ("/tsdb/testdata/random-walk" , wrap (GetTestDataRandomWalk ))
331
332
332
- apiRoute .Group ("/alerts" , func (alertsRoute RouteRegister ) {
333
+ apiRoute .Group ("/alerts" , func (alertsRoute routing. RouteRegister ) {
333
334
alertsRoute .Post ("/test" , bind (dtos.AlertTestCommand {}), wrap (AlertTest ))
334
335
alertsRoute .Post ("/:alertId/pause" , reqEditorRole , bind (dtos.PauseAlertCommand {}), wrap (PauseAlert ))
335
336
alertsRoute .Get ("/:alertId" , ValidateOrgAlert , wrap (GetAlert ))
@@ -340,7 +341,7 @@ func (hs *HTTPServer) registerRoutes() {
340
341
apiRoute .Get ("/alert-notifications" , wrap (GetAlertNotifications ))
341
342
apiRoute .Get ("/alert-notifiers" , wrap (GetAlertNotifiers ))
342
343
343
- apiRoute .Group ("/alert-notifications" , func (alertNotifications RouteRegister ) {
344
+ apiRoute .Group ("/alert-notifications" , func (alertNotifications routing. RouteRegister ) {
344
345
alertNotifications .Post ("/test" , bind (dtos.NotificationTestCommand {}), wrap (NotificationTest ))
345
346
alertNotifications .Post ("/" , bind (m.CreateAlertNotificationCommand {}), wrap (CreateAlertNotification ))
346
347
alertNotifications .Put ("/:notificationId" , bind (m.UpdateAlertNotificationCommand {}), wrap (UpdateAlertNotification ))
@@ -351,7 +352,7 @@ func (hs *HTTPServer) registerRoutes() {
351
352
apiRoute .Get ("/annotations" , wrap (GetAnnotations ))
352
353
apiRoute .Post ("/annotations/mass-delete" , reqOrgAdmin , bind (dtos.DeleteAnnotationsCmd {}), wrap (DeleteAnnotations ))
353
354
354
- apiRoute .Group ("/annotations" , func (annotationsRoute RouteRegister ) {
355
+ apiRoute .Group ("/annotations" , func (annotationsRoute routing. RouteRegister ) {
355
356
annotationsRoute .Post ("/" , bind (dtos.PostAnnotationsCmd {}), wrap (PostAnnotation ))
356
357
annotationsRoute .Delete ("/:annotationId" , wrap (DeleteAnnotationByID ))
357
358
annotationsRoute .Put ("/:annotationId" , bind (dtos.UpdateAnnotationsCmd {}), wrap (UpdateAnnotation ))
@@ -365,7 +366,7 @@ func (hs *HTTPServer) registerRoutes() {
365
366
}, reqSignedIn )
366
367
367
368
// admin api
368
- r .Group ("/api/admin" , func (adminRoute RouteRegister ) {
369
+ r .Group ("/api/admin" , func (adminRoute routing. RouteRegister ) {
369
370
adminRoute .Get ("/settings" , AdminGetSettings )
370
371
adminRoute .Post ("/users" , bind (dtos.AdminCreateUserForm {}), AdminCreateUser )
371
372
adminRoute .Put ("/users/:id/password" , bind (dtos.AdminUpdateUserPasswordForm {}), AdminUpdateUserPassword )
0 commit comments