From 65a2464be37cbffeebe5178ee901cd7610b332cd Mon Sep 17 00:00:00 2001 From: Cal Date: Mon, 27 Jul 2026 14:23:38 -0500 Subject: [PATCH] fix(webhooks): forward overrides from webhooks.list Webhooks.list accepted overrides and documented it, then called super().list() without it, so a per request api_key, api_uri, timeout or headers had no effect on that one call. It is the only method in nylas/resources/ that accepts overrides and does not pass it on. Adds a regression test and a CHANGELOG entry. --- CHANGELOG.md | 4 ++++ nylas/resources/webhooks.py | 6 +++++- tests/resources/test_webhooks.py | 10 ++++++++++ 3 files changed, 19 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 47dde70..eb4a10a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ nylas-python Changelog ====================== +Unreleased +---------- +* Fixed `webhooks.list()` dropping the `overrides` argument, so per request `api_key`, `api_uri`, `timeout` and `headers` now apply to it + v6.17.0 ---------- * Clarify that event `default` visibility is Google-only diff --git a/nylas/resources/webhooks.py b/nylas/resources/webhooks.py index 443c159..5a44f23 100644 --- a/nylas/resources/webhooks.py +++ b/nylas/resources/webhooks.py @@ -42,7 +42,11 @@ def list(self, overrides: RequestOverrides = None) -> ListResponse[Webhook]: Returns: The list of webhook destinations """ - return super().list(path="/v3/webhooks", response_type=Webhook) + return super().list( + path="/v3/webhooks", + response_type=Webhook, + overrides=overrides, + ) def find( self, webhook_id: str, overrides: RequestOverrides = None diff --git a/tests/resources/test_webhooks.py b/tests/resources/test_webhooks.py index 159a94d..fa65484 100644 --- a/tests/resources/test_webhooks.py +++ b/tests/resources/test_webhooks.py @@ -108,6 +108,16 @@ def test_list_webhooks(self, http_client_list_response): "GET", "/v3/webhooks", None, None, None, overrides=None ) + def test_list_webhooks_with_overrides(self, http_client_list_response): + webhooks = Webhooks(http_client_list_response) + overrides = {"api_key": "override-key", "api_uri": "https://override.nylas.com"} + + webhooks.list(overrides=overrides) + + http_client_list_response._execute.assert_called_once_with( + "GET", "/v3/webhooks", None, None, None, overrides=overrides + ) + def test_find_webhook(self, http_client_response): webhooks = Webhooks(http_client_response)