-
Notifications
You must be signed in to change notification settings - Fork 302
/
screenboards.py
50 lines (41 loc) · 1.36 KB
/
screenboards.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
# Unless explicitly stated otherwise all files in this repository are licensed under the BSD-3-Clause License.
# This product includes software developed at Datadog (https://www.datadoghq.com/).
# Copyright 2015-Present Datadog, Inc
from datadog.api.resources import (
GetableAPIResource,
CreateableAPIResource,
UpdatableAPIResource,
DeletableAPIResource,
ActionAPIResource,
ListableAPIResource,
)
class Screenboard(
GetableAPIResource,
CreateableAPIResource,
UpdatableAPIResource,
DeletableAPIResource,
ActionAPIResource,
ListableAPIResource,
):
"""
A wrapper around Screenboard HTTP API.
"""
_resource_name = "screen"
@classmethod
def share(cls, board_id):
"""
Share the screenboard with given id
:param board_id: screenboard to share
:type board_id: id
:returns: Dictionary representing the API's JSON response
"""
return super(Screenboard, cls)._trigger_action("POST", "screen/share", board_id)
@classmethod
def revoke(cls, board_id):
"""
Revoke a shared screenboard with given id
:param board_id: screenboard to revoke
:type board_id: id
:returns: Dictionary representing the API's JSON response
"""
return super(Screenboard, cls)._trigger_action("DELETE", "screen/share", board_id)