From b3f90175c48ff235d14d7ce83e926b7c66d7c3e7 Mon Sep 17 00:00:00 2001 From: "fern-api[bot]" <115122769+fern-api[bot]@users.noreply.github.com> Date: Sat, 24 Oct 2026 00:46:15 +0000 Subject: [PATCH 1/2] [fern-generated] Update SDK Generated by Fern CLI Version: unknown Generators: - fernapi/fern-python-sdk: 5.39.2 --- .fern/metadata.json | 2 +- reference.md | 16 ++++++++++++++++ src/whop_sdk/types/webhook.py | 5 +++++ src/whop_sdk/types/webhook_list_item.py | 5 +++++ src/whop_sdk/webhooks/client.py | 20 ++++++++++++++++++++ src/whop_sdk/webhooks/raw_client.py | 20 ++++++++++++++++++++ 6 files changed, 67 insertions(+), 1 deletion(-) diff --git a/.fern/metadata.json b/.fern/metadata.json index 759b0e5c5..2136655cc 100644 --- a/.fern/metadata.json +++ b/.fern/metadata.json @@ -15,7 +15,7 @@ "standardwebhooks": ">=1.0.1,<2" } }, - "originGitCommit": "7f4874492ea69bebb374c4938000c7eec0c1504c", + "originGitCommit": "c10862aedcd9ddb1656d7da1815165e7dcfa2f08", "originGitCommitIsDirty": false, "invokedBy": "ci", "requestedVersion": "2.6.0", diff --git a/reference.md b/reference.md index 71713fa35..e72322be2 100644 --- a/reference.md +++ b/reference.md @@ -48954,6 +48954,14 @@ client.webhooks.create(
+**title:** `typing.Optional[str]` — A label for the webhook, shown in the dashboard. Up to 255 characters. + +
+
+ +
+
+ **request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration.
@@ -49205,6 +49213,14 @@ client.webhooks.update(
+**title:** `typing.Optional[str]` — A label for the webhook, shown in the dashboard. Up to 255 characters. Pass `null` or an empty string to remove it. + +
+
+ +
+
+ **url:** `typing.Optional[str]` — The URL to send the webhook to.
diff --git a/src/whop_sdk/types/webhook.py b/src/whop_sdk/types/webhook.py index c0b36ecee..42caeb9ce 100644 --- a/src/whop_sdk/types/webhook.py +++ b/src/whop_sdk/types/webhook.py @@ -73,6 +73,11 @@ class Webhook(UniversalBaseModel): """ testable_events: typing.List[WebhookTestableEventsItem] + title: typing.Optional[str] = pydantic.Field(default=None) + """ + A label for this webhook endpoint, such as `Production`, shown in the dashboard. `null` if no title was set. + """ + url: str = pydantic.Field() """ Destination URL where webhook payloads are delivered via HTTP POST. diff --git a/src/whop_sdk/types/webhook_list_item.py b/src/whop_sdk/types/webhook_list_item.py index 7c0c07db8..274b2ac4b 100644 --- a/src/whop_sdk/types/webhook_list_item.py +++ b/src/whop_sdk/types/webhook_list_item.py @@ -71,6 +71,11 @@ class WebhookListItem(UniversalBaseModel): ID of the resource (account or app) this webhook is attached to. """ + title: typing.Optional[str] = pydantic.Field(default=None) + """ + A label for this webhook endpoint, such as `Production`, shown in the dashboard. `null` if no title was set. + """ + url: str = pydantic.Field() """ Destination URL where webhook payloads are delivered via HTTP POST. diff --git a/src/whop_sdk/webhooks/client.py b/src/whop_sdk/webhooks/client.py index f5795e380..d37e3a711 100644 --- a/src/whop_sdk/webhooks/client.py +++ b/src/whop_sdk/webhooks/client.py @@ -124,6 +124,7 @@ def create( enabled: typing.Optional[bool] = OMIT, events: typing.Optional[typing.Sequence[CreateWebhooksRequestEventsItem]] = OMIT, resource_id: typing.Optional[str] = OMIT, + title: typing.Optional[str] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> Webhook: """ @@ -149,6 +150,9 @@ def create( resource_id : typing.Optional[str] The account or app to create the webhook for. Defaults to the current account. + title : typing.Optional[str] + A label for the webhook, shown in the dashboard. Up to 255 characters. + request_options : typing.Optional[RequestOptions] Request-specific configuration. @@ -177,6 +181,7 @@ def create( enabled=enabled, events=events, resource_id=resource_id, + title=title, request_options=request_options, ) return _response.data @@ -255,6 +260,7 @@ def update( child_resource_events: typing.Optional[bool] = OMIT, enabled: typing.Optional[bool] = OMIT, events: typing.Optional[typing.Sequence[UpdateWebhooksRequestEventsItem]] = OMIT, + title: typing.Optional[str] = OMIT, url: typing.Optional[str] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> Webhook: @@ -278,6 +284,9 @@ def update( events : typing.Optional[typing.Sequence[UpdateWebhooksRequestEventsItem]] The events to send the webhook for, in dot form (for example `payment.succeeded`). + title : typing.Optional[str] + A label for the webhook, shown in the dashboard. Up to 255 characters. Pass `null` or an empty string to remove it. + url : typing.Optional[str] The URL to send the webhook to. @@ -308,6 +317,7 @@ def update( child_resource_events=child_resource_events, enabled=enabled, events=events, + title=title, url=url, request_options=request_options, ) @@ -630,6 +640,7 @@ async def create( enabled: typing.Optional[bool] = OMIT, events: typing.Optional[typing.Sequence[CreateWebhooksRequestEventsItem]] = OMIT, resource_id: typing.Optional[str] = OMIT, + title: typing.Optional[str] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> Webhook: """ @@ -655,6 +666,9 @@ async def create( resource_id : typing.Optional[str] The account or app to create the webhook for. Defaults to the current account. + title : typing.Optional[str] + A label for the webhook, shown in the dashboard. Up to 255 characters. + request_options : typing.Optional[RequestOptions] Request-specific configuration. @@ -691,6 +705,7 @@ async def main() -> None: enabled=enabled, events=events, resource_id=resource_id, + title=title, request_options=request_options, ) return _response.data @@ -787,6 +802,7 @@ async def update( child_resource_events: typing.Optional[bool] = OMIT, enabled: typing.Optional[bool] = OMIT, events: typing.Optional[typing.Sequence[UpdateWebhooksRequestEventsItem]] = OMIT, + title: typing.Optional[str] = OMIT, url: typing.Optional[str] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> Webhook: @@ -810,6 +826,9 @@ async def update( events : typing.Optional[typing.Sequence[UpdateWebhooksRequestEventsItem]] The events to send the webhook for, in dot form (for example `payment.succeeded`). + title : typing.Optional[str] + A label for the webhook, shown in the dashboard. Up to 255 characters. Pass `null` or an empty string to remove it. + url : typing.Optional[str] The URL to send the webhook to. @@ -848,6 +867,7 @@ async def main() -> None: child_resource_events=child_resource_events, enabled=enabled, events=events, + title=title, url=url, request_options=request_options, ) diff --git a/src/whop_sdk/webhooks/raw_client.py b/src/whop_sdk/webhooks/raw_client.py index 0b8517dab..453743c5a 100644 --- a/src/whop_sdk/webhooks/raw_client.py +++ b/src/whop_sdk/webhooks/raw_client.py @@ -192,6 +192,7 @@ def create( enabled: typing.Optional[bool] = OMIT, events: typing.Optional[typing.Sequence[CreateWebhooksRequestEventsItem]] = OMIT, resource_id: typing.Optional[str] = OMIT, + title: typing.Optional[str] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> HttpResponse[Webhook]: """ @@ -217,6 +218,9 @@ def create( resource_id : typing.Optional[str] The account or app to create the webhook for. Defaults to the current account. + title : typing.Optional[str] + A label for the webhook, shown in the dashboard. Up to 255 characters. + request_options : typing.Optional[RequestOptions] Request-specific configuration. @@ -235,6 +239,7 @@ def create( "enabled": enabled, "events": events, "resource_id": resource_id, + "title": title, "url": url, }, headers={ @@ -477,6 +482,7 @@ def update( child_resource_events: typing.Optional[bool] = OMIT, enabled: typing.Optional[bool] = OMIT, events: typing.Optional[typing.Sequence[UpdateWebhooksRequestEventsItem]] = OMIT, + title: typing.Optional[str] = OMIT, url: typing.Optional[str] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> HttpResponse[Webhook]: @@ -500,6 +506,9 @@ def update( events : typing.Optional[typing.Sequence[UpdateWebhooksRequestEventsItem]] The events to send the webhook for, in dot form (for example `payment.succeeded`). + title : typing.Optional[str] + A label for the webhook, shown in the dashboard. Up to 255 characters. Pass `null` or an empty string to remove it. + url : typing.Optional[str] The URL to send the webhook to. @@ -520,6 +529,7 @@ def update( "child_resource_events": child_resource_events, "enabled": enabled, "events": events, + "title": title, "url": url, }, headers={ @@ -1217,6 +1227,7 @@ async def create( enabled: typing.Optional[bool] = OMIT, events: typing.Optional[typing.Sequence[CreateWebhooksRequestEventsItem]] = OMIT, resource_id: typing.Optional[str] = OMIT, + title: typing.Optional[str] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> AsyncHttpResponse[Webhook]: """ @@ -1242,6 +1253,9 @@ async def create( resource_id : typing.Optional[str] The account or app to create the webhook for. Defaults to the current account. + title : typing.Optional[str] + A label for the webhook, shown in the dashboard. Up to 255 characters. + request_options : typing.Optional[RequestOptions] Request-specific configuration. @@ -1260,6 +1274,7 @@ async def create( "enabled": enabled, "events": events, "resource_id": resource_id, + "title": title, "url": url, }, headers={ @@ -1504,6 +1519,7 @@ async def update( child_resource_events: typing.Optional[bool] = OMIT, enabled: typing.Optional[bool] = OMIT, events: typing.Optional[typing.Sequence[UpdateWebhooksRequestEventsItem]] = OMIT, + title: typing.Optional[str] = OMIT, url: typing.Optional[str] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> AsyncHttpResponse[Webhook]: @@ -1527,6 +1543,9 @@ async def update( events : typing.Optional[typing.Sequence[UpdateWebhooksRequestEventsItem]] The events to send the webhook for, in dot form (for example `payment.succeeded`). + title : typing.Optional[str] + A label for the webhook, shown in the dashboard. Up to 255 characters. Pass `null` or an empty string to remove it. + url : typing.Optional[str] The URL to send the webhook to. @@ -1547,6 +1566,7 @@ async def update( "child_resource_events": child_resource_events, "enabled": enabled, "events": events, + "title": title, "url": url, }, headers={ From 3fc4348dbabc866f4aaade62dd5cc1de4fe709bd Mon Sep 17 00:00:00 2001 From: "fern-api[bot]" <115122769+fern-api[bot]@users.noreply.github.com> Date: Sat, 24 Oct 2026 00:46:15 +0000 Subject: [PATCH 2/2] [fern-replay] advance lockfile --- .fern/replay.lock | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/.fern/replay.lock b/.fern/replay.lock index 1d6303b31..454fc4557 100644 --- a/.fern/replay.lock +++ b/.fern/replay.lock @@ -3288,5 +3288,11 @@ generations: cli_version: unknown generator_versions: fernapi/fern-python-sdk: 5.39.2 -current_generation: f1ff928cdb565996b0928fafb97337b365057463 + - commit_sha: d2769b3b3e891664c1e559e02b24beb73a77a994 + tree_hash: 0d839560fa495070e98e1d8f88c44d0e31dc0107 + timestamp: 2026-10-24T00:46:10.129Z + cli_version: unknown + generator_versions: + fernapi/fern-python-sdk: 5.39.2 +current_generation: d2769b3b3e891664c1e559e02b24beb73a77a994 patches: []