@@ -58,3 +58,56 @@ func (c *Client) UpdateDashboardPermissionsByUID(uid string, items *PermissionIt
5858
5959 return c .request ("POST" , path , nil , data , nil )
6060}
61+
62+ func (c * Client ) ListDashboardResourcePermissions (uid string ) ([]* ResourcePermission , error ) {
63+ return c .listResourcePermissions (DashboardsResource , ResourceUID (uid ))
64+ }
65+
66+ func (c * Client ) SetDashboardResourcePermissions (uid string , body SetResourcePermissionsBody ) (* SetResourcePermissionsResponse , error ) {
67+ return c .setResourcePermissions (DashboardsResource , ResourceUID (uid ), body )
68+ }
69+
70+ func (c * Client ) SetUserDashboardResourcePermissions (dashboardUID string , userID int64 , permission string ) (* SetResourcePermissionsResponse , error ) {
71+ return c .setResourcePermissionByAssignment (
72+ DashboardsResource ,
73+ ResourceUID (dashboardUID ),
74+ UsersResource ,
75+ ResourceID (userID ),
76+ SetResourcePermissionBody {
77+ Permission : SetResourcePermissionItem {
78+ UserID : userID ,
79+ Permission : permission ,
80+ },
81+ },
82+ )
83+ }
84+
85+ func (c * Client ) SetTeamDashboardResourcePermissions (dashboardUID string , teamID int64 , permission string ) (* SetResourcePermissionsResponse , error ) {
86+ return c .setResourcePermissionByAssignment (
87+ DashboardsResource ,
88+ ResourceUID (dashboardUID ),
89+ TeamsResource ,
90+ ResourceID (teamID ),
91+ SetResourcePermissionBody {
92+ Permission : SetResourcePermissionItem {
93+ TeamID : teamID ,
94+ Permission : permission ,
95+ },
96+ },
97+ )
98+ }
99+
100+ func (c * Client ) SetBuiltInRoleDashboardResourcePermissions (dashboardUID string , builtInRole string , permission string ) (* SetResourcePermissionsResponse , error ) {
101+ return c .setResourcePermissionByAssignment (
102+ DashboardsResource ,
103+ ResourceUID (dashboardUID ),
104+ BuiltInRolesResource ,
105+ ResourceUID (builtInRole ),
106+ SetResourcePermissionBody {
107+ Permission : SetResourcePermissionItem {
108+ BuiltinRole : builtInRole ,
109+ Permission : permission ,
110+ },
111+ },
112+ )
113+ }
0 commit comments