Skip to content

grants

Grants

Bases: ListableApiResource, FindableApiResource, UpdatableApiResource, DestroyableApiResource

Nylas Grants API

The Grants API allows you to find and manage existing grants for your Nylas application.

Grants represent a specific set of permissions ("scopes") that a specific end user granted Nylas for a specific service provider

Source code in nylas/resources/grants.py
 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
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
class Grants(
    ListableApiResource,
    FindableApiResource,
    UpdatableApiResource,
    DestroyableApiResource,
):
    """
    Nylas Grants API

    The Grants API allows you to find and manage existing grants for your Nylas application.

    Grants represent a specific set of permissions ("scopes") that a specific end user granted Nylas
    for a specific service provider
    """

    def list(
        self,
        query_params: ListGrantsQueryParams = None,
        overrides: RequestOverrides = None,
    ) -> ListResponse[Grant]:
        """
        Return all Grants.

        Args:
            query_params: The query parameters to include in the request.
            overrides: The request overrides to use.

        Returns:
            A list of Grants.
        """

        return super().list(
            path="/v3/grants",
            response_type=Grant,
            query_params=_normalize_grants_query_params(query_params),
            overrides=overrides,
        )

    def find(
        self, grant_id: str, overrides: RequestOverrides = None
    ) -> Response[Grant]:
        """
        Return a Grant.

        Args:
            grant_id: The ID of the Grant to retrieve.
            overrides: The request overrides to use.

        Returns:
            The Grant.
        """

        return super().find(
            path=f"/v3/grants/{grant_id}", response_type=Grant, overrides=overrides
        )

    def update(
        self,
        grant_id: str,
        request_body: UpdateGrantRequest,
        overrides: RequestOverrides = None,
    ) -> Response[Grant]:
        """
        Update a Grant.

        Args:
            grant_id: The ID of the Grant to update.
            request_body: The values to update the Grant with.
            overrides: The request overrides to use.

        Returns:
            The updated Grant.
        """

        return super().update(
            path=f"/v3/grants/{grant_id}",
            response_type=Grant,
            request_body=request_body,
            overrides=overrides,
            method="PATCH"
        )

    def destroy(
        self, grant_id: str, overrides: RequestOverrides = None
    ) -> DeleteResponse:
        """
        Delete a Grant.

        Args:
            grant_id: The ID of the Grant to delete.
            overrides: The request overrides to use.

        Returns:
            The deletion response.
        """

        return super().destroy(path=f"/v3/grants/{grant_id}", overrides=overrides)

destroy(grant_id, overrides=None)

Delete a Grant.

Parameters:

Name Type Description Default
grant_id str

The ID of the Grant to delete.

required
overrides RequestOverrides

The request overrides to use.

None

Returns:

Type Description
DeleteResponse

The deletion response.

Source code in nylas/resources/grants.py
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
def destroy(
    self, grant_id: str, overrides: RequestOverrides = None
) -> DeleteResponse:
    """
    Delete a Grant.

    Args:
        grant_id: The ID of the Grant to delete.
        overrides: The request overrides to use.

    Returns:
        The deletion response.
    """

    return super().destroy(path=f"/v3/grants/{grant_id}", overrides=overrides)

find(grant_id, overrides=None)

Return a Grant.

Parameters:

Name Type Description Default
grant_id str

The ID of the Grant to retrieve.

required
overrides RequestOverrides

The request overrides to use.

None

Returns:

Type Description
Response[Grant]

The Grant.

Source code in nylas/resources/grants.py
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
def find(
    self, grant_id: str, overrides: RequestOverrides = None
) -> Response[Grant]:
    """
    Return a Grant.

    Args:
        grant_id: The ID of the Grant to retrieve.
        overrides: The request overrides to use.

    Returns:
        The Grant.
    """

    return super().find(
        path=f"/v3/grants/{grant_id}", response_type=Grant, overrides=overrides
    )

list(query_params=None, overrides=None)

Return all Grants.

Parameters:

Name Type Description Default
query_params ListGrantsQueryParams

The query parameters to include in the request.

None
overrides RequestOverrides

The request overrides to use.

None

Returns:

Type Description
ListResponse[Grant]

A list of Grants.

Source code in nylas/resources/grants.py
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
def list(
    self,
    query_params: ListGrantsQueryParams = None,
    overrides: RequestOverrides = None,
) -> ListResponse[Grant]:
    """
    Return all Grants.

    Args:
        query_params: The query parameters to include in the request.
        overrides: The request overrides to use.

    Returns:
        A list of Grants.
    """

    return super().list(
        path="/v3/grants",
        response_type=Grant,
        query_params=_normalize_grants_query_params(query_params),
        overrides=overrides,
    )

update(grant_id, request_body, overrides=None)

Update a Grant.

Parameters:

Name Type Description Default
grant_id str

The ID of the Grant to update.

required
request_body UpdateGrantRequest

The values to update the Grant with.

required
overrides RequestOverrides

The request overrides to use.

None

Returns:

Type Description
Response[Grant]

The updated Grant.

Source code in nylas/resources/grants.py
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
def update(
    self,
    grant_id: str,
    request_body: UpdateGrantRequest,
    overrides: RequestOverrides = None,
) -> Response[Grant]:
    """
    Update a Grant.

    Args:
        grant_id: The ID of the Grant to update.
        request_body: The values to update the Grant with.
        overrides: The request overrides to use.

    Returns:
        The updated Grant.
    """

    return super().update(
        path=f"/v3/grants/{grant_id}",
        response_type=Grant,
        request_body=request_body,
        overrides=overrides,
        method="PATCH"
    )