Skip to content

client

Client

API client for the Nylas API.

Attributes:

Name Type Description
api_key

The Nylas API key to use for authentication

api_uri

The URL to use for communicating with the Nylas API

http_client

The HTTP client to use for requests to the Nylas API

Source code in nylas/client.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
 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
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
class Client:
    """
    API client for the Nylas API.

    Attributes:
        api_key: The Nylas API key to use for authentication
        api_uri: The URL to use for communicating with the Nylas API
        http_client: The HTTP client to use for requests to the Nylas API
    """

    def __init__(
        self, api_key: str, api_uri: str = DEFAULT_SERVER_URL, timeout: int = 90
    ):
        """
        Initialize the Nylas API client.

        Args:
            api_key: The Nylas API key to use for authentication
            api_uri: The URL to use for communicating with the Nylas API
            timeout: The timeout for requests to the Nylas API, in seconds
        """
        self.api_key = api_key
        self.api_uri = api_uri
        self.http_client = HttpClient(self.api_uri, self.api_key, timeout)

    @property
    def auth(self) -> Auth:
        """
        Access the Auth API.

        Returns:
            The Auth API.
        """
        return Auth(self.http_client)

    @property
    def applications(self) -> Applications:
        """
        Access the Applications API.

        Returns:
            The Applications API.
        """
        return Applications(self.http_client)

    @property
    def attachments(self) -> Attachments:
        """
        Access the Attachments API.

        Returns:
            The Attachments API.
        """
        return Attachments(self.http_client)

    @property
    def connectors(self) -> Connectors:
        """
        Access the Connectors API.

        Returns:
            The Connectors API.
        """
        return Connectors(self.http_client)

    @property
    def calendars(self) -> Calendars:
        """
        Access the Calendars API.

        Returns:
            The Calendars API.
        """
        return Calendars(self.http_client)

    @property
    def contacts(self) -> Contacts:
        """
        Access the Contacts API.

        Returns:
            The Contacts API.
        """
        return Contacts(self.http_client)

    @property
    def drafts(self) -> Drafts:
        """
        Access the Drafts API.

        Returns:
            The Drafts API.
        """
        return Drafts(self.http_client)

    @property
    def events(self) -> Events:
        """
        Access the Events API.

        Returns:
            The Events API.
        """
        return Events(self.http_client)

    @property
    def folders(self) -> Folders:
        """
        Access the Folders API.

        Returns:
            The Folders API.
        """
        return Folders(self.http_client)

    @property
    def grants(self) -> Grants:
        """
        Access the Grants API.

        Returns:
            The Grants API.
        """
        return Grants(self.http_client)

    @property
    def messages(self) -> Messages:
        """
        Access the Messages API.

        Returns:
            The Messages API.
        """
        return Messages(self.http_client)

    @property
    def threads(self) -> Threads:
        """
        Access the Threads API.

        Returns:
            The Threads API.
        """
        return Threads(self.http_client)

    @property
    def webhooks(self) -> Webhooks:
        """
        Access the Webhooks API.

        Returns:
            The Webhooks API.
        """
        return Webhooks(self.http_client)

applications: Applications property

Access the Applications API.

Returns:

Type Description
Applications

The Applications API.

attachments: Attachments property

Access the Attachments API.

Returns:

Type Description
Attachments

The Attachments API.

auth: Auth property

Access the Auth API.

Returns:

Type Description
Auth

The Auth API.

calendars: Calendars property

Access the Calendars API.

Returns:

Type Description
Calendars

The Calendars API.

connectors: Connectors property

Access the Connectors API.

Returns:

Type Description
Connectors

The Connectors API.

contacts: Contacts property

Access the Contacts API.

Returns:

Type Description
Contacts

The Contacts API.

drafts: Drafts property

Access the Drafts API.

Returns:

Type Description
Drafts

The Drafts API.

events: Events property

Access the Events API.

Returns:

Type Description
Events

The Events API.

folders: Folders property

Access the Folders API.

Returns:

Type Description
Folders

The Folders API.

grants: Grants property

Access the Grants API.

Returns:

Type Description
Grants

The Grants API.

messages: Messages property

Access the Messages API.

Returns:

Type Description
Messages

The Messages API.

threads: Threads property

Access the Threads API.

Returns:

Type Description
Threads

The Threads API.

webhooks: Webhooks property

Access the Webhooks API.

Returns:

Type Description
Webhooks

The Webhooks API.

__init__(api_key, api_uri=DEFAULT_SERVER_URL, timeout=90)

Initialize the Nylas API client.

Parameters:

Name Type Description Default
api_key str

The Nylas API key to use for authentication

required
api_uri str

The URL to use for communicating with the Nylas API

DEFAULT_SERVER_URL
timeout int

The timeout for requests to the Nylas API, in seconds

90
Source code in nylas/client.py
28
29
30
31
32
33
34
35
36
37
38
39
40
41
def __init__(
    self, api_key: str, api_uri: str = DEFAULT_SERVER_URL, timeout: int = 90
):
    """
    Initialize the Nylas API client.

    Args:
        api_key: The Nylas API key to use for authentication
        api_uri: The URL to use for communicating with the Nylas API
        timeout: The timeout for requests to the Nylas API, in seconds
    """
    self.api_key = api_key
    self.api_uri = api_uri
    self.http_client = HttpClient(self.api_uri, self.api_key, timeout)