Skip to content

Commit 5e4ff37

Browse files
committed
## Python SDK Changes Detected:
* `polar.organizations.update()`: * `request.organization_update` **Changed** **Breaking** ⚠️ * `response` **Changed** * `polar.customer_portal.subscriptions.cancel()`: `response.product` **Changed** **Breaking** ⚠️ * `polar._endpointcheckout_created_post()`: * `request.data` **Changed** **Breaking** ⚠️ * `polar._endpointcheckout_updated_post()`: * `request.data` **Changed** **Breaking** ⚠️ * `polar._endpointsubscription_created_post()`: * `request.data.product.prices.[]` **Changed** **Breaking** ⚠️ * `polar._endpointsubscription_updated_post()`: * `request.data.product.prices.[]` **Changed** **Breaking** ⚠️ * `polar._endpointsubscription_active_post()`: * `request.data.product.prices.[]` **Changed** **Breaking** ⚠️ * `polar._endpointsubscription_canceled_post()`: * `request.data.product.prices.[]` **Changed** **Breaking** ⚠️ * `polar.checkouts.client_get()`: `response` **Changed** **Breaking** ⚠️ * `polar._endpointsubscription_revoked_post()`: * `request.data.product.prices.[]` **Changed** **Breaking** ⚠️ * `polar._endpointproduct_created_post()`: * `request.data.prices.[]` **Changed** **Breaking** ⚠️ * `polar._endpointproduct_updated_post()`: * `request.data.prices.[]` **Changed** **Breaking** ⚠️ * `polar._endpointorganization_updated_post()`: * `request.data` **Changed** **Breaking** ⚠️ * `polar.events.list()`: * `request.hierarchical` **Added** * `response.items.[]` **Changed** **Breaking** ⚠️ * `polar.events.get()`: `response` **Changed** **Breaking** ⚠️ * `polar.organizations.create()`: * `request` **Changed** **Breaking** ⚠️ * `response` **Changed** * `polar._endpointsubscription_uncanceled_post()`: * `request.data.product.prices.[]` **Changed** **Breaking** ⚠️ * `polar.customer_portal.subscriptions.update()`: `response.product` **Changed** **Breaking** ⚠️ * `polar.customer_portal.subscriptions.get()`: `response.product` **Changed** **Breaking** ⚠️ * `polar.customer_portal.subscriptions.list()`: `response.items.[].product` **Changed** **Breaking** ⚠️ * `polar.customer_portal.organizations.get()`: `response` **Changed** **Breaking** ⚠️ * `polar.customer_portal.orders.update()`: `response.product` **Changed** **Breaking** ⚠️ * `polar.customer_portal.orders.get()`: `response.product` **Changed** **Breaking** ⚠️ * `polar.customer_portal.orders.list()`: `response.items.[].product` **Changed** **Breaking** ⚠️ * `polar.customer_portal.seats.list_claimed_subscriptions()`: `response.[].product` **Changed** **Breaking** ⚠️ * `polar.customer_portal.benefit-grants.update()`: `response.[customer_benefit_grant_license_keys].benefit.organization` **Changed** **Breaking** ⚠️ * `polar.customer_portal.benefit-grants.get()`: `response.[customer_benefit_grant_downloadables].benefit.organization` **Changed** **Breaking** ⚠️ * `polar.customer_portal.benefit-grants.list()`: * `request.sorting` **Changed** * `response.items.[].[customer_benefit_grant_meter_credit].benefit.organization` **Changed** **Breaking** ⚠️ * `polar.customers.create()`: * `request` **Changed** **Breaking** ⚠️ * `response.members` **Added** * `polar.metrics.get()`: `response` **Changed** **Breaking** ⚠️ * `polar.checkouts.client_confirm()`: * `request.checkout_confirm_stripe.allow_trial` **Added** * `response` **Changed** **Breaking** ⚠️ * `error.[trial_already_redeemed]` **Added** * `polar.checkouts.client_update()`: * `request.checkout_update_public.allow_trial` **Added** * `response` **Changed** **Breaking** ⚠️ * `error.[trial_already_redeemed]` **Added** * `polar.checkouts.get()`: `response` **Changed** * `polar.checkouts.update()`: * `request.checkout_update.allow_trial` **Added** * `response` **Changed** * `error.[trial_already_redeemed]` **Added** * `polar.members.list_members()`: **Added** * `polar.checkouts.create()`: * `request` **Changed** * `response` **Changed** * `polar.checkout-links.list()`: `response.items.[].products.[].prices.[]` **Changed** * `polar.checkout-links.create()`: `response.products.[].prices.[]` **Changed** * `polar.checkout-links.get()`: `response.products.[].prices.[]` **Changed** * `polar.checkout-links.update()`: `response.products.[].prices.[]` **Changed** * `polar.customers.list()`: * `request.include_members` **Added** * `response.items.[].members` **Added** * `polar.checkouts.list()`: `response.items.[]` **Changed** * `polar.customers.get()`: * `request.include_members` **Added** * `response.members` **Added** * `polar.customers.update()`: * `request.include_members` **Added** * `response.members` **Added** * `polar.customers.get_external()`: * `request.include_members` **Added** * `response.members` **Added** * `polar.customers.update_external()`: * `request.include_members` **Added** * `response.members` **Added** * `polar.products.update_benefits()`: `response.prices.[]` **Changed** * `polar.products.update()`: `response.prices.[]` **Changed** * `polar.products.get()`: `response.prices.[]` **Changed** * `polar.products.create()`: `response.prices.[]` **Changed** * `polar.products.list()`: `response.items.[].prices.[]` **Changed** * `polar.webhooks.list_webhook_deliveries()`: `response.items.[].webhook_event.skipped` **Added** * `polar.subscriptions.update()`: * `request.subscription_update.[subscription_update_billing_period]` **Added** * `response.product.prices.[]` **Changed** * `polar.subscriptions.revoke()`: `response.product.prices.[]` **Changed** * `polar.subscriptions.get()`: `response.product.prices.[]` **Changed** * `polar.subscriptions.create()`: `response.product.prices.[]` **Changed** * `polar.subscriptions.list()`: * `request.cancel_at_period_end` **Added** * `response.items.[].product.prices.[]` **Changed** * `polar.organizations.get()`: `response` **Changed** * `polar.organizations.list()`: `response.items.[]` **Changed** * `polar.event_types.update_event_type()`: **Added**
1 parent 211e1ae commit 5e4ff37

File tree

195 files changed

+3282
-451
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

195 files changed

+3282
-451
lines changed

.speakeasy/gen.lock

Lines changed: 146 additions & 63 deletions
Large diffs are not rendered by default.

.speakeasy/gen.yaml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ generation:
2727
generateNewTests: false
2828
skipResponseBodyAssertions: false
2929
python:
30-
version: 0.28.0
30+
version: 0.28.2
3131
additionalDependencies:
3232
dev:
3333
pydantic-ai-slim: ^0.1.0
@@ -62,6 +62,7 @@ python:
6262
webhooks: ""
6363
inputModelSuffix: input
6464
legacyPyright: true
65+
license: ""
6566
maxMethodParams: 100
6667
methodArguments: infer-optional-args
6768
moduleName: ""

.speakeasy/workflow.lock

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,20 +2,20 @@ speakeasyVersion: 1.648.0
22
sources:
33
Polar-OAS:
44
sourceNamespace: polar-oas
5-
sourceRevisionDigest: sha256:c0187c3b97b30297429930c9b97513e82a6fb748fa42bb6ef632b447899f4063
6-
sourceBlobDigest: sha256:64e17fc520f1c7b5bf6663aa5279d8655e70ee7240fa77085f5486aa632e0275
5+
sourceRevisionDigest: sha256:f6ba586581ccab28bf81ca71f5857797e00694a95d0ea7259f1c0ff1b5a50620
6+
sourceBlobDigest: sha256:1a54c9f0da5292e13058c2b139bbf61edab8576f4c232d4e24035d885f987e9e
77
tags:
88
- latest
9-
- speakeasy-sdk-regen-1761956132
9+
- speakeasy-sdk-regen-1762301662
1010
- 0.1.0
1111
targets:
1212
polar:
1313
source: Polar-OAS
1414
sourceNamespace: polar-oas
15-
sourceRevisionDigest: sha256:c0187c3b97b30297429930c9b97513e82a6fb748fa42bb6ef632b447899f4063
16-
sourceBlobDigest: sha256:64e17fc520f1c7b5bf6663aa5279d8655e70ee7240fa77085f5486aa632e0275
15+
sourceRevisionDigest: sha256:f6ba586581ccab28bf81ca71f5857797e00694a95d0ea7259f1c0ff1b5a50620
16+
sourceBlobDigest: sha256:1a54c9f0da5292e13058c2b139bbf61edab8576f4c232d4e24035d885f987e9e
1717
codeSamplesNamespace: polar-oas-py-code-samples
18-
codeSamplesRevisionDigest: sha256:b5f5b4797959ba0b423abb100d9e63089ed790c5741f080bb93f10d561b59823
18+
codeSamplesRevisionDigest: sha256:b1d257c8f7f392e606f96e3e45b2d4ca5bdb22daf4f954f6f7b00e540b9f7b3b
1919
workflow:
2020
workflowVersion: 1.0.0
2121
speakeasyVersion: latest

README.md

Lines changed: 30 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -336,6 +336,10 @@ def webhook():
336336
* [update](docs/sdks/discounts/README.md#update) - Update Discount
337337
* [delete](docs/sdks/discounts/README.md#delete) - Delete Discount
338338

339+
### [event_types](docs/sdks/eventtypes/README.md)
340+
341+
* [update_event_type](docs/sdks/eventtypes/README.md#update_event_type) - Update Event Type
342+
339343
### [events](docs/sdks/events/README.md)
340344

341345
* [list](docs/sdks/events/README.md#list) - List Events
@@ -361,6 +365,10 @@ def webhook():
361365
* [activate](docs/sdks/licensekeys/README.md#activate) - Activate License Key
362366
* [deactivate](docs/sdks/licensekeys/README.md#deactivate) - Deactivate License Key
363367

368+
### [members](docs/sdks/members/README.md)
369+
370+
* [list_members](docs/sdks/members/README.md#list_members) - List Members
371+
364372
### [meters](docs/sdks/meters/README.md)
365373

366374
* [list](docs/sdks/meters/README.md#list) - List Meters
@@ -550,7 +558,7 @@ with Polar(
550558
* [`PolarError`](./src/polar_sdk/models/polarerror.py): The base class for HTTP error responses.
551559
* [`HTTPValidationError`](./src/polar_sdk/models/httpvalidationerror.py): Validation Error. Status code `422`. *
552560

553-
<details><summary>Less common errors (25)</summary>
561+
<details><summary>Less common errors (26)</summary>
554562

555563
<br />
556564

@@ -561,26 +569,27 @@ with Polar(
561569

562570

563571
**Inherit from [`PolarError`](./src/polar_sdk/models/polarerror.py)**:
564-
* [`ResourceNotFound`](./src/polar_sdk/models/resourcenotfound.py): Status code `404`. Applicable to 80 of 155 methods.*
565-
* [`NotPermitted`](./src/polar_sdk/models/notpermitted.py): Status code `403`. Applicable to 10 of 155 methods.*
566-
* [`Unauthorized`](./src/polar_sdk/models/unauthorized.py): Not authorized to manage license key. Status code `401`. Applicable to 5 of 155 methods.*
567-
* [`AlreadyCanceledSubscription`](./src/polar_sdk/models/alreadycanceledsubscription.py): Status code `403`. Applicable to 4 of 155 methods.*
568-
* [`AlreadyActiveSubscriptionError`](./src/polar_sdk/models/alreadyactivesubscriptionerror.py): The checkout is expired, the customer already has an active subscription, or the organization is not ready to accept payments. Status code `403`. Applicable to 3 of 155 methods.*
569-
* [`NotOpenCheckout`](./src/polar_sdk/models/notopencheckout.py): The checkout is expired, the customer already has an active subscription, or the organization is not ready to accept payments. Status code `403`. Applicable to 3 of 155 methods.*
570-
* [`PaymentNotReady`](./src/polar_sdk/models/paymentnotready.py): The checkout is expired, the customer already has an active subscription, or the organization is not ready to accept payments. Status code `403`. Applicable to 3 of 155 methods.*
571-
* [`ExpiredCheckoutError`](./src/polar_sdk/models/expiredcheckouterror.py): The checkout session is expired. Status code `410`. Applicable to 3 of 155 methods.*
572-
* [`SubscriptionLocked`](./src/polar_sdk/models/subscriptionlocked.py): Subscription is pending an update. Status code `409`. Applicable to 2 of 155 methods.*
573-
* [`MissingInvoiceBillingDetails`](./src/polar_sdk/models/missinginvoicebillingdetails.py): Order is not paid or is missing billing name or address. Status code `422`. Applicable to 2 of 155 methods.*
574-
* [`NotPaidOrder`](./src/polar_sdk/models/notpaidorder.py): Order is not paid or is missing billing name or address. Status code `422`. Applicable to 2 of 155 methods.*
575-
* [`RefundAmountTooHigh`](./src/polar_sdk/models/refundamounttoohigh.py): Refund amount exceeds remaining order balance. Status code `400`. Applicable to 1 of 155 methods.*
576-
* [`PaymentError`](./src/polar_sdk/models/paymenterror.py): The payment failed. Status code `400`. Applicable to 1 of 155 methods.*
577-
* [`PaymentIntentFailedError`](./src/polar_sdk/models/paymentintentfailederror.py): The payment request failed. Status code `400`. Applicable to 1 of 155 methods.*
578-
* [`CustomerNotReady`](./src/polar_sdk/models/customernotready.py): Customer is not ready to confirm a payment method. Status code `400`. Applicable to 1 of 155 methods.*
579-
* [`PaymentMethodInUseByActiveSubscription`](./src/polar_sdk/models/paymentmethodinusebyactivesubscription.py): Payment method is used by active subscription(s). Status code `400`. Applicable to 1 of 155 methods.*
580-
* [`MissingPaymentMethodError`](./src/polar_sdk/models/missingpaymentmethoderror.py): No payment method available. Status code `402`. Applicable to 1 of 155 methods.*
581-
* [`RefundedAlready`](./src/polar_sdk/models/refundedalready.py): Order is already fully refunded. Status code `403`. Applicable to 1 of 155 methods.*
582-
* [`PaymentAlreadyInProgress`](./src/polar_sdk/models/paymentalreadyinprogress.py): Payment already in progress. Status code `409`. Applicable to 1 of 155 methods.*
583-
* [`OrderNotEligibleForRetry`](./src/polar_sdk/models/ordernoteligibleforretry.py): Order not eligible for retry or payment confirmation failed. Status code `422`. Applicable to 1 of 155 methods.*
572+
* [`ResourceNotFound`](./src/polar_sdk/models/resourcenotfound.py): Status code `404`. Applicable to 80 of 157 methods.*
573+
* [`NotPermitted`](./src/polar_sdk/models/notpermitted.py): Status code `403`. Applicable to 10 of 157 methods.*
574+
* [`Unauthorized`](./src/polar_sdk/models/unauthorized.py): Not authorized to manage license key. Status code `401`. Applicable to 5 of 157 methods.*
575+
* [`AlreadyCanceledSubscription`](./src/polar_sdk/models/alreadycanceledsubscription.py): Status code `403`. Applicable to 4 of 157 methods.*
576+
* [`AlreadyActiveSubscriptionError`](./src/polar_sdk/models/alreadyactivesubscriptionerror.py): The checkout is expired, the customer already has an active subscription, or the organization is not ready to accept payments. Status code `403`. Applicable to 3 of 157 methods.*
577+
* [`NotOpenCheckout`](./src/polar_sdk/models/notopencheckout.py): The checkout is expired, the customer already has an active subscription, or the organization is not ready to accept payments. Status code `403`. Applicable to 3 of 157 methods.*
578+
* [`PaymentNotReady`](./src/polar_sdk/models/paymentnotready.py): The checkout is expired, the customer already has an active subscription, or the organization is not ready to accept payments. Status code `403`. Applicable to 3 of 157 methods.*
579+
* [`TrialAlreadyRedeemed`](./src/polar_sdk/models/trialalreadyredeemed.py): The checkout is expired, the customer already has an active subscription, or the organization is not ready to accept payments. Status code `403`. Applicable to 3 of 157 methods.*
580+
* [`ExpiredCheckoutError`](./src/polar_sdk/models/expiredcheckouterror.py): The checkout session is expired. Status code `410`. Applicable to 3 of 157 methods.*
581+
* [`SubscriptionLocked`](./src/polar_sdk/models/subscriptionlocked.py): Subscription is pending an update. Status code `409`. Applicable to 2 of 157 methods.*
582+
* [`MissingInvoiceBillingDetails`](./src/polar_sdk/models/missinginvoicebillingdetails.py): Order is not paid or is missing billing name or address. Status code `422`. Applicable to 2 of 157 methods.*
583+
* [`NotPaidOrder`](./src/polar_sdk/models/notpaidorder.py): Order is not paid or is missing billing name or address. Status code `422`. Applicable to 2 of 157 methods.*
584+
* [`RefundAmountTooHigh`](./src/polar_sdk/models/refundamounttoohigh.py): Refund amount exceeds remaining order balance. Status code `400`. Applicable to 1 of 157 methods.*
585+
* [`PaymentError`](./src/polar_sdk/models/paymenterror.py): The payment failed. Status code `400`. Applicable to 1 of 157 methods.*
586+
* [`PaymentIntentFailedError`](./src/polar_sdk/models/paymentintentfailederror.py): The payment request failed. Status code `400`. Applicable to 1 of 157 methods.*
587+
* [`CustomerNotReady`](./src/polar_sdk/models/customernotready.py): Customer is not ready to confirm a payment method. Status code `400`. Applicable to 1 of 157 methods.*
588+
* [`PaymentMethodInUseByActiveSubscription`](./src/polar_sdk/models/paymentmethodinusebyactivesubscription.py): Payment method is used by active subscription(s). Status code `400`. Applicable to 1 of 157 methods.*
589+
* [`MissingPaymentMethodError`](./src/polar_sdk/models/missingpaymentmethoderror.py): No payment method available. Status code `402`. Applicable to 1 of 157 methods.*
590+
* [`RefundedAlready`](./src/polar_sdk/models/refundedalready.py): Order is already fully refunded. Status code `403`. Applicable to 1 of 157 methods.*
591+
* [`PaymentAlreadyInProgress`](./src/polar_sdk/models/paymentalreadyinprogress.py): Payment already in progress. Status code `409`. Applicable to 1 of 157 methods.*
592+
* [`OrderNotEligibleForRetry`](./src/polar_sdk/models/ordernoteligibleforretry.py): Order not eligible for retry or payment confirmation failed. Status code `422`. Applicable to 1 of 157 methods.*
584593
* [`ResponseValidationError`](./src/polar_sdk/models/responsevalidationerror.py): Type mismatch between the response data and the expected Pydantic model. Provides access to the Pydantic validation error via the `cause` attribute.
585594

586595
</details>

RELEASES.md

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -983,4 +983,14 @@ Based on:
983983
### Generated
984984
- [python v0.28.0] .
985985
### Releases
986-
- [PyPI v0.28.0] https://pypi.org/project/polar-sdk/0.28.0 - .
986+
- [PyPI v0.28.0] https://pypi.org/project/polar-sdk/0.28.0 - .
987+
988+
## 2025-11-21 00:13:49
989+
### Changes
990+
Based on:
991+
- OpenAPI Doc
992+
- Speakeasy CLI 1.648.0 (2.737.0) https://github.com/speakeasy-api/speakeasy
993+
### Generated
994+
- [python v0.28.2] .
995+
### Releases
996+
- [PyPI v0.28.2] https://pypi.org/project/polar-sdk/0.28.2 - .

0 commit comments

Comments
 (0)