Skip to content

policies

Policies

Bases: ListableApiResource, FindableApiResource, CreatableApiResource, UpdatableApiResource, DestroyableApiResource

Nylas Policies API.

Policies define operational configuration for Nylas Agent Accounts.

Source code in nylas/resources/policies.py
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
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
class Policies(
    ListableApiResource,
    FindableApiResource,
    CreatableApiResource,
    UpdatableApiResource,
    DestroyableApiResource,
):
    """
    Nylas Policies API.

    Policies define operational configuration for Nylas Agent Accounts.
    """

    def list(
        self,
        query_params: ListPoliciesQueryParams = None,
        overrides: RequestOverrides = None,
    ) -> ListResponse[Policy]:
        return super().list(
            path="/v3/policies",
            response_type=Policy,
            query_params=query_params,
            overrides=overrides,
        )

    def create(
        self,
        request_body: CreatePolicyRequest,
        overrides: RequestOverrides = None,
    ) -> Response[Policy]:
        return super().create(
            path="/v3/policies",
            request_body=request_body,
            response_type=Policy,
            overrides=overrides,
        )

    def find(
        self, policy_id: str, overrides: RequestOverrides = None
    ) -> Response[Policy]:
        return super().find(
            path=f"/v3/policies/{policy_id}",
            response_type=Policy,
            overrides=overrides,
        )

    def update(
        self,
        policy_id: str,
        request_body: UpdatePolicyRequest,
        overrides: RequestOverrides = None,
    ) -> Response[Policy]:
        return super().update(
            path=f"/v3/policies/{policy_id}",
            response_type=Policy,
            request_body=request_body,
            method="PUT",
            overrides=overrides,
        )

    def destroy(
        self, policy_id: str, overrides: RequestOverrides = None
    ) -> DeleteResponse:
        return super().destroy(path=f"/v3/policies/{policy_id}", overrides=overrides)