diff --git a/pkg/api/dtos/plugins.go b/pkg/api/dtos/plugins.go index 48ed908d797..8b32bea41dc 100644 --- a/pkg/api/dtos/plugins.go +++ b/pkg/api/dtos/plugins.go @@ -56,7 +56,7 @@ type ImportDashboardCommand struct { PluginId string `json:"pluginId"` Path string `json:"path"` Overwrite bool `json:"overwrite"` - Dashboard *simplejson.Json `json:"dashboard" binding:"Required"` + Dashboard *simplejson.Json `json:"dashboard"` Inputs []plugins.ImportDashboardInput `json:"inputs"` FolderId int64 `json:"folderId"` } diff --git a/pkg/api/plugins.go b/pkg/api/plugins.go index d275eb267bc..e473ce0f935 100644 --- a/pkg/api/plugins.go +++ b/pkg/api/plugins.go @@ -179,6 +179,10 @@ func GetPluginMarkdown(c *m.ReqContext) Response { } func ImportDashboard(c *m.ReqContext, apiCmd dtos.ImportDashboardCommand) Response { + if apiCmd.PluginId == "" && apiCmd.Dashboard == nil { + return Error(422, "Dashboard must be set", nil) + } + cmd := plugins.ImportDashboardCommand{ OrgId: c.OrgId, User: c.SignedInUser,