@@ -36,7 +36,7 @@ def list(self, owner: str = None, tags: List[str] = None) -> PaginatedList["Dash
3636 The dashboard must match all the specified tags.
3737 """
3838 params = {"owner" : owner , "tags" : tags }
39- return PaginatedList (DashboardStub , self .__http_client , f "/api/config/v1/dashboards" , params , list_item = "dashboards" )
39+ return PaginatedList (DashboardStub , self .__http_client , "/api/config/v1/dashboards" , params , list_item = "dashboards" )
4040
4141 def get (self , dashboard_id : str ) -> "Dashboard" :
4242 """
@@ -45,6 +45,13 @@ def get(self, dashboard_id: str) -> "Dashboard":
4545 response = self .__http_client .make_request (f"/api/config/v1/dashboards/{ dashboard_id } " ).json ()
4646 return Dashboard (self .__http_client , None , response )
4747
48+ def post (self , body : dict ):
49+ return self .__http_client .make_request ("/api/config/v1/dashboards" , params = body , method = "POST" )
50+
51+ def put (self , dashboard_id : str , body : dict ):
52+ params = {"id" : dashboard_id , "body" : body }
53+ return self .__http_client .make_request (f"/api/config/v1/dashboards/{ dashboard_id } " , params = params , method = "PUT" )
54+
4855 def delete (self , dashboard_id : str ) -> Response :
4956 """
5057 Deletes the specified dashboard
@@ -80,6 +87,7 @@ def _create_from_raw_data(self, raw_element):
8087 self .id : str = raw_element .get ("id" )
8188 self .dashboard_metadata : DashboardMetadata = DashboardMetadata (self ._http_client , None , raw_element .get ("dashboardMetadata" ))
8289 self .tiles : List [Tile ] = [Tile (self ._http_client , None , raw_tile ) for raw_tile in raw_element .get ("tiles" , [])]
90+ self .raw_json : dict = raw_element
8391
8492
8593class DashboardStub (DynatraceObject ):
0 commit comments