Skip to content

Releases: polarsource/polar-python

python - v0.31.7 - 2026-06-12 06:50:16

Choose a tag to compare

@github-actions github-actions released this 12 Jun 06:50
262af50

Generated by Speakeasy CLI

polar-sdk 0.31.7

Python SDK Changes Detected:

  • polar._endpointcustomer_created_post():
    • request.data Changed Breaking ⚠️
  • polar._endpointcustomer_updated_post():
    • request.data Changed Breaking ⚠️
  • polar._endpointcustomer_deleted_post():
    • request.data Changed Breaking ⚠️
  • polar._endpointcustomer_state_changed_post():
    • request.data Changed Breaking ⚠️
  • polar._endpointorder_created_post():
    • request.data.customer.billing_name Added Breaking ⚠️
  • polar._endpointorder_updated_post():
    • request.data.customer.billing_name Added Breaking ⚠️
  • polar._endpointorder_paid_post():
    • request.data.customer.billing_name Added Breaking ⚠️
  • polar._endpointorder_refunded_post():
    • request.data.customer.billing_name Added Breaking ⚠️
  • polar._endpointsubscription_created_post():
    • request.data Changed Breaking ⚠️
  • polar._endpointsubscription_updated_post():
    • request.data Changed Breaking ⚠️
  • polar._endpointsubscription_active_post():
    • request.data Changed Breaking ⚠️
  • polar._endpointsubscription_canceled_post():
    • request.data Changed Breaking ⚠️
  • polar._endpointsubscription_uncanceled_post():
    • request.data Changed Breaking ⚠️
  • polar._endpointsubscription_revoked_post():
    • request.data Changed Breaking ⚠️
  • polar._endpointsubscription_past_due_post():
    • request.data Changed Breaking ⚠️
  • polar._endpointproduct_created_post():
    • request.data.benefits.[] Changed Breaking ⚠️
  • polar._endpointproduct_updated_post():
    • request.data.benefits.[] Changed Breaking ⚠️
  • polar._endpointorganization_updated_post():
    • request.data.feature_settings.account_review_v2_enabled Removed Breaking ⚠️
  • polar._endpointbenefit_created_post():
    • request.data Changed Breaking ⚠️
  • polar._endpointbenefit_updated_post():
    • request.data Changed Breaking ⚠️
  • polar._endpointbenefit_grant_created_post():
    • request.data Changed Breaking ⚠️
  • polar._endpointbenefit_grant_updated_post():
    • request.data Changed Breaking ⚠️
  • polar._endpointbenefit_grant_cycled_post():
    • request.data Changed Breaking ⚠️
  • polar._endpointbenefit_grant_revoked_post():
    • request.data Changed Breaking ⚠️
  • polar.organizations.list_organizations(): response.items.[].feature_settings.account_review_v2_enabled Removed Breaking ⚠️
  • polar.organizations.create():
    • request.feature_settings Changed Breaking ⚠️
    • response.feature_settings.account_review_v2_enabled Removed Breaking ⚠️
  • polar.organizations.get(): response.feature_settings.account_review_v2_enabled Removed Breaking ⚠️
  • polar.organizations.update():
    • request.organization_update.feature_settings Changed Breaking ⚠️
    • response.feature_settings.account_review_v2_enabled Removed Breaking ⚠️
  • polar.customer_portal.benefit-grants.update():
    • request.customer_benefit_grant_update.[slack_shared_channel] Added
    • response Changed Breaking ⚠️
  • polar.customer_portal.benefit-grants.get(): response Changed Breaking ⚠️
  • polar.customer_portal.benefit-grants.list():
    • request.type_filter Changed
    • response.items.[] Changed Breaking ⚠️
  • polar.orders.list(): response.items.[].customer.billing_name Added
  • polar.customers.create(): response Changed
  • polar.benefits.list():
    • request.type_filter Changed
    • response.items.[] Changed
  • polar.benefits.create():
    • request Changed
    • response Changed
  • polar.benefits.get(): response Changed
  • polar.benefits.update():
    • request_body Changed
    • response Changed
  • polar.benefits.grants(): response.items.[] Changed
  • polar.benefit-grants.list(): response.items.[] Changed
  • polar.products.list(): response.items.[].benefits.[] Changed
  • polar.products.create(): response.benefits.[] Changed
  • polar.products.get(): response.benefits.[] Changed
  • polar.products.update(): response.benefits.[] Changed
  • polar.products.update_benefits(): response.benefits.[] Changed
  • polar.subscriptions.revoke(): response Changed
  • polar.orders.create(): response.customer.billing_name Added
  • polar.orders.get(): response.customer.billing_name Added
  • polar.orders.update(): response.customer.billing_name Added
  • polar.orders.finalize(): response.customer.billing_name Added
  • polar.license_keys.list(): response.items.[].customer.billing_name Added
  • polar.license_keys.get(): response.customer.billing_name Added
  • polar.license_keys.update(): response.customer.billing_name Added
  • polar.license_keys.get_activation(): response.license_key.customer.billing_name Added
  • polar.license_keys.validate(): response.customer.billing_name Added
  • polar.license_keys.activate(): response.license_key.customer.billing_name Added
  • polar.checkout-links.list(): response.items.[].seats Added
  • polar.checkout-links.create():
    • request Changed
    • response.seats Added
  • polar.checkout-links.get(): response.seats Added
  • polar.checkout-links.update():
    • request.checkout_link_update.seats Added
    • response.seats Added
  • polar.customers.list(): response.items.[] Changed
  • polar.subscriptions.update(): response Changed
  • polar.customers.get(): response Changed
  • polar.customers.update(): response Changed
  • polar.customers.get_external(): response Changed
  • polar.customers.update_external(): response Changed
  • polar.customers.get_state(): response Changed
  • polar.customers.get_state_external(): response Changed
  • polar.subscriptions.get(): response Changed
  • polar.subscriptions.create(): response Changed
  • polar.subscriptions.list():
    • request.status Added
    • response.items.[] Changed
  • polar.customer_portal.customers.get(): response.locale Added
  • polar.customer_portal.customers.update(): response.locale Added
  • polar.customer_portal.seats.list_claimed_subscriptions(): response.items.[].product.organization.organization_features.checkout_localization_enabled Added
  • polar.customer_portal.license_keys.list(): response.items.[].customer.billing_name Added
  • polar.customer_portal.license_keys.get(): response.customer.billing_name Added
  • polar.customer_portal.license_keys.validate(): response.customer.billing_name Added
  • polar.customer_portal.license_keys.activate(): response.license_key.customer.billing_name Added
  • polar.customer_portal.orders.list(): response.items.[].product.organization.organization_features.checkout_localization_enabled Added
  • polar.customer_portal.orders.get(): response.product.organization.organization_features.checkout_localization_enabled Added
  • polar.customer_portal.orders.update(): response.product.organization.organization_features.checkout_localization_enabled Added
  • polar.customer_portal.organizations.get(): response.organization.organization_features.checkout_localization_enabled Added
  • polar.customer_portal.subscriptions.list(): response.items.[].product.organization.organization_features.checkout_localization_enabled Added
  • polar.customer_portal.subscriptions.get(): response.product.organization.organization_features.checkout_localization_enabled Added
  • polar.customer_portal.subscriptions.cancel(): response.product.organization.organization_features.checkout_localization_enabled Added
  • polar.customer_portal.subscriptions.update(): response.product.organization.organization_features.checkout_localization_enabled Added
  • polar.customer-sessions.create(): response.customer Changed
  • polar.events.list(): response.[list_resource_event_].items.[].[system_event] Changed
  • polar.events.get(): response Changed
  • polar.customer_meters.list(): response.items.[].customer Changed
  • polar.customer_meters.get(): response.customer Changed

Generated with Speakeasy CLI 1.648.0

Publishing Completed

python - v0.31.6 - 2026-06-08 09:18:36

Choose a tag to compare

@github-actions github-actions released this 08 Jun 09:18

Generated by Speakeasy CLI

polar-sdk 0.31.6

Python SDK Changes Detected:

  • polar.subscriptions.update():
    • request.subscription_update Changed Breaking ⚠️
    • response.customer.default_payment_method_id Added
  • polar.events.get(): response.[system_event] Changed Breaking ⚠️
  • polar.events.list(): response.[list_resource_event_].items.[].[system_event] Changed Breaking ⚠️
  • polar.customer_portal.orders.update(): response.invoice_number Changed Breaking ⚠️
  • polar.customer_portal.orders.get(): response.invoice_number Changed Breaking ⚠️
  • polar.customer_portal.orders.list(): response.items.[].invoice_number Changed Breaking ⚠️
  • polar.orders.update(): response Changed Breaking ⚠️
  • polar.orders.get(): response Changed Breaking ⚠️
  • polar.orders.list(): response.items.[] Changed Breaking ⚠️
  • polar.subscriptions.get(): response.customer.default_payment_method_id Added
  • polar._endpointcustomer_created_post():
    • request.data Changed
  • polar._endpointorder_updated_post():
    • request.data Changed
  • polar._endpointorder_paid_post():
    • request.data Changed
  • polar._endpointorder_refunded_post():
    • request.data Changed
  • polar._endpointsubscription_created_post():
    • request.data.customer.default_payment_method_id Added
  • polar._endpointsubscription_updated_post():
    • request.data.customer.default_payment_method_id Added
  • polar._endpointsubscription_active_post():
    • request.data.customer.default_payment_method_id Added
  • polar._endpointsubscription_canceled_post():
    • request.data.customer.default_payment_method_id Added
  • polar._endpointsubscription_uncanceled_post():
    • request.data.customer.default_payment_method_id Added
  • polar._endpointsubscription_revoked_post():
    • request.data.customer.default_payment_method_id Added
  • polar._endpointsubscription_past_due_post():
    • request.data.customer.default_payment_method_id Added
  • polar._endpointorganization_updated_post():
    • request.data.feature_settings Changed
  • polar._endpointbenefit_grant_created_post():
    • request.data.[benefit_grant_git_hub_repository_webhook].customer Changed
  • polar._endpointbenefit_grant_updated_post():
    • request.data.[benefit_grant_license_keys_webhook].customer Changed
  • polar._endpointbenefit_grant_cycled_post():
    • request.data.[benefit_grant_discord_webhook].customer Changed
  • polar._endpointbenefit_grant_revoked_post():
    • request.data.[benefit_grant_discord_webhook].customer Changed
  • polar.organizations.create():
    • request.feature_settings Changed
    • response.feature_settings Changed
  • polar.organizations.get(): response.feature_settings Changed
  • polar.organizations.update():
    • request.organization_update.feature_settings Changed
    • response.feature_settings Changed
  • polar.subscriptions.list(): response.items.[].customer.default_payment_method_id Added
  • polar.subscriptions.create(): response.customer.default_payment_method_id Added
  • polar.organizations.list_organizations(): Added
  • polar.subscriptions.revoke(): response.customer.default_payment_method_id Added
  • polar._endpointcustomer_state_changed_post():
    • request.data Changed
  • polar.benefits.grants(): response.items.[].customer Changed
  • polar.benefit-grants.list(): response.items.[].customer Changed
  • polar._endpointcustomer_deleted_post():
    • request.data Changed
  • polar._endpointcustomer_updated_post():
    • request.data Changed
  • polar._endpointorder_created_post():
    • request.data Changed
  • polar.license_keys.list(): response.items.[].customer.default_payment_method_id Added
  • polar.license_keys.get(): response.customer.default_payment_method_id Added
  • polar.license_keys.update(): response.customer.default_payment_method_id Added
  • polar.license_keys.get_activation(): response.license_key.customer.default_payment_method_id Added
  • polar.license_keys.validate(): response.customer.default_payment_method_id Added
  • polar.license_keys.activate(): response.license_key.customer.default_payment_method_id Added
  • polar.customers.list():
    • request.active Added
    • response.items.[] Changed
  • polar.customers.create(): response Changed
  • polar.customers.get(): response Changed
  • polar.customers.update(): response Changed
  • polar.customers.get_external(): response Changed
  • polar.customers.update_external(): response Changed
  • polar.customers.get_state(): response Changed
  • polar.customers.get_state_external(): response Changed
  • polar.customer_portal.customers.add_payment_method(): error.status[400] Added
  • polar.customer_portal.license_keys.list(): response.items.[].customer.default_payment_method_id Added
  • polar.customer_portal.license_keys.get(): response.customer.default_payment_method_id Added
  • polar.customer_portal.license_keys.validate(): response.customer.default_payment_method_id Added
  • polar.customer_portal.license_keys.activate(): response.license_key.customer.default_payment_method_id Added
  • polar.organizations.list(): Deleted Breaking ⚠️
  • polar.customers.list_payment_methods_external(): Added
  • polar.customers.list_payment_methods(): Added
  • polar.customer-sessions.create(): response.customer Changed
  • polar.orders.finalize(): Added
  • polar.orders.create(): Added
  • polar.customer_meters.list(): response.items.[].customer Changed
  • polar.customer_meters.get(): response.customer Changed
  • polar.payments.list(): request.customer_id Added

Generated with Speakeasy CLI 1.648.0

Publishing Completed

python - v0.31.5 - 2026-05-19 07:05:48

Choose a tag to compare

@github-actions github-actions released this 19 May 07:05
331a4fe

Generated by Speakeasy CLI

polar-sdk 0.31.5

Python SDK Changes Detected:

  • polar.customer_portal.seats.assign_seat():
    • request.checkout_client_secret Removed Breaking ⚠️
  • polar.events.list(): response.[list_resource_event_].items.[].[system_event] Changed Breaking ⚠️
  • polar._endpointorder_created_post():
    • request.data Changed Breaking ⚠️
  • polar._endpointorder_updated_post():
    • request.data Changed Breaking ⚠️
  • polar._endpointorder_paid_post():
    • request.data Changed Breaking ⚠️
  • polar._endpointorder_refunded_post():
    • request.data Changed Breaking ⚠️
  • polar._endpointorganization_updated_post():
    • request.data.feature_settings Changed Breaking ⚠️
  • polar.organizations.list(): response.items.[].feature_settings Changed Breaking ⚠️
  • polar.organizations.create():
    • request.feature_settings Changed Breaking ⚠️
    • response.feature_settings Changed Breaking ⚠️
  • polar.organizations.get(): response.feature_settings Changed Breaking ⚠️
  • polar.organizations.update():
    • request.organization_update.feature_settings Changed Breaking ⚠️
    • response.feature_settings Changed Breaking ⚠️
  • polar.event-types.list(): response.items.[] Changed Breaking ⚠️
  • polar.events.get(): response.[system_event] Changed Breaking ⚠️
  • polar.customer-seats.assign_seat(): request Changed Breaking ⚠️
  • polar.discounts.create(): request Changed Breaking ⚠️
  • polar.subscriptions.update():
    • request.subscription_update.[subscription_update_clear] Added
  • polar.members.create_member():
    • request.role Changed
  • polar.customer_portal.customers.update():
    • request.default_payment_method_id Added
  • polar.orders.receipt(): Added
  • polar.customer_portal.orders.list(): response.items.[] Changed
  • polar.customer_portal.orders.get(): response Changed
  • polar.customer_portal.orders.update(): response Changed
  • polar.customer_portal.subscriptions.update():
    • request.customer_subscription_update.[customer_subscription_update_clear] Added
  • polar.orders.list(): response.items.[] Changed
  • polar.orders.get(): response Changed
  • polar.customer_portal.orders.receipt(): Added
  • polar.orders.update(): response Changed

Generated with Speakeasy CLI 1.648.0

Publishing Completed

python - v0.31.4 - 2026-04-28 10:50:55

Choose a tag to compare

@github-actions github-actions released this 28 Apr 10:51
a5f829c

Generated by Speakeasy CLI

polar-sdk 0.31.4

Python SDK Changes Detected:

  • polar._endpointcheckout_created_post():
    • request.data Changed Breaking ⚠️
  • polar._endpointcheckout_updated_post():
    • request.data Changed Breaking ⚠️
  • polar._endpointcheckout_expired_post():
    • request.data Changed Breaking ⚠️
  • polar._endpointsubscription_created_post():
    • request.data.product.benefits.[] Changed Breaking ⚠️
  • polar._endpointsubscription_updated_post():
    • request.data.product.benefits.[] Changed Breaking ⚠️
  • polar._endpointsubscription_active_post():
    • request.data.product.benefits.[] Changed Breaking ⚠️
  • polar._endpointsubscription_canceled_post():
    • request.data.product.benefits.[] Changed Breaking ⚠️
  • polar._endpointsubscription_uncanceled_post():
    • request.data.product.benefits.[] Changed Breaking ⚠️
  • polar._endpointsubscription_revoked_post():
    • request.data.product.benefits.[] Changed Breaking ⚠️
  • polar._endpointsubscription_past_due_post():
    • request.data.product.benefits.[] Changed Breaking ⚠️
  • polar._endpointproduct_created_post():
    • request.data.benefits.[] Changed Breaking ⚠️
  • polar._endpointproduct_updated_post():
    • request.data.benefits.[] Changed Breaking ⚠️
  • polar._endpointorganization_updated_post():
    • request.data Changed Breaking ⚠️
  • polar._endpointbenefit_created_post():
    • request.data Changed Breaking ⚠️
  • polar._endpointbenefit_updated_post():
    • request.data Changed Breaking ⚠️
  • polar._endpointbenefit_grant_created_post():
    • request.data Changed Breaking ⚠️
  • polar._endpointbenefit_grant_updated_post():
    • request.data Changed Breaking ⚠️
  • polar._endpointbenefit_grant_cycled_post():
    • request.data Changed Breaking ⚠️
  • polar._endpointbenefit_grant_revoked_post():
    • request.data Changed Breaking ⚠️
  • polar.organizations.list(): response.items.[] Changed Breaking ⚠️
  • polar.organizations.create():
    • request Changed Breaking ⚠️
    • response Changed Breaking ⚠️
  • polar.organizations.get(): response Changed Breaking ⚠️
  • polar.organizations.update():
    • request.organization_update Changed Breaking ⚠️
    • response Changed Breaking ⚠️
  • polar.customer_portal.customers.request_email_update(): Added
  • polar.customer_portal.customers.check_email_update(): Added
  • polar.customer_portal.customers.verify_email_update(): Added
  • polar.subscriptions.list(): response.items.[].product.benefits.[] Changed
  • polar.subscriptions.create(): response.product.benefits.[] Changed
  • polar.subscriptions.get(): response.product.benefits.[] Changed
  • polar.subscriptions.revoke(): response.product.benefits.[] Changed
  • polar.subscriptions.update(): response.product.benefits.[] Changed
  • polar.benefits.list(): response.items.[] Changed
  • polar.benefits.create(): response Changed
  • polar.benefits.get(): response Changed
  • polar.benefits.update(): response Changed
  • polar.benefits.grants(): response.items.[].benefit Changed
  • polar.benefit-grants.list(): response.items.[].benefit Changed
  • polar.products.list(): response.items.[].benefits.[] Changed
  • polar.products.create(): response.benefits.[] Changed
  • polar.products.get(): response.benefits.[] Changed
  • polar.products.update(): response.benefits.[] Changed
  • polar.products.update_benefits(): response.benefits.[] Changed
  • polar.checkouts.list(): response.items.[] Changed
  • polar.checkouts.create(): response Changed
  • polar.checkouts.get(): response Changed
  • polar.checkouts.update(): response Changed
  • polar.checkouts.client_get(): response Changed
  • polar.checkouts.client_update(): response Changed
  • polar.checkouts.client_confirm(): response Changed
  • polar.metrics.get(): response Changed
  • polar.license_keys.list(): request.status Added
  • polar.checkout-links.list(): response.items.[].products.[].benefits.[].is_deleted Added
  • polar.checkout-links.create(): response.products.[].benefits.[].is_deleted Added
  • polar.checkout-links.get(): response.products.[].benefits.[].is_deleted Added
  • polar.checkout-links.update(): response.products.[].benefits.[].is_deleted Added
  • polar.members.get_member_by_external_id(): request Changed
  • polar.members.delete_member_by_external_id(): request Changed
  • polar.members.update_member_by_external_id(): request Changed
  • polar.customer_portal.benefit-grants.list(): response.items.[] Changed
  • polar.customer_portal.benefit-grants.get(): response Changed
  • polar.customer_portal.benefit-grants.update(): response Changed
  • polar.customer_portal.seats.assign_seat():
    • request.checkout_client_secret Added
  • polar.customer_portal.seats.list_claimed_subscriptions(): response.items.[].product Changed
  • polar.customer_portal.orders.list(): response.items.[].product Changed
  • polar.customer_portal.orders.get(): response.product Changed
  • polar.customer_portal.orders.update(): response.product Changed
  • polar.customer_portal.organizations.get(): response Changed
  • polar.customer_portal.subscriptions.list(): response.items.[].product Changed
  • polar.customer_portal.subscriptions.get(): response.product Changed
  • polar.customer_portal.subscriptions.cancel(): response.product Changed
  • polar.customer_portal.subscriptions.update(): response.product Changed
  • polar.customer-seats.assign_seat():
    • request.checkout_client_secret Added

Generated with Speakeasy CLI 1.648.0

Publishing Completed

python - v0.31.3 - 2026-04-10 09:42:08

Choose a tag to compare

@github-actions github-actions released this 10 Apr 09:42
35627bf

Generated by Speakeasy CLI

polar-sdk 0.31.3

Python SDK Changes Detected:

  • polar._endpointcheckout_created_post():
    • request.data.products.[].prices.[].[product_price].[seat_based].meter Changed Breaking ⚠️
  • polar._endpointcheckout_updated_post():
    • request.data.products.[].prices.[].[product_price].[seat_based].meter Changed Breaking ⚠️
  • polar._endpointcheckout_expired_post():
    • request.data.products.[].prices.[].[product_price].[seat_based].meter Changed Breaking ⚠️
  • polar._endpointsubscription_created_post():
    • request.data Changed Breaking ⚠️
  • polar._endpointsubscription_updated_post():
    • request.data Changed Breaking ⚠️
  • polar._endpointsubscription_active_post():
    • request.data Changed Breaking ⚠️
  • polar._endpointsubscription_canceled_post():
    • request.data Changed Breaking ⚠️
  • polar._endpointsubscription_uncanceled_post():
    • request.data Changed Breaking ⚠️
  • polar._endpointsubscription_revoked_post():
    • request.data Changed Breaking ⚠️
  • polar._endpointsubscription_past_due_post():
    • request.data Changed Breaking ⚠️
  • polar._endpointproduct_created_post():
    • request.data.prices.[].[product_price].[seat_based].meter Changed Breaking ⚠️
  • polar._endpointproduct_updated_post():
    • request.data.prices.[].[product_price].[seat_based].meter Changed Breaking ⚠️
  • polar._endpointorganization_updated_post():
    • request.data Changed Breaking ⚠️
  • polar.metrics.export(): Added
  • polar.members.get_member_by_external_id(): Added
  • polar.members.update_member_by_external_id(): Added
  • polar.members.delete_member_by_external_id(): Added
  • polar.organizations.list(): response.items.[] Changed
  • polar.organizations.create(): response Changed
  • polar.organizations.get(): response Changed
  • polar.organizations.update(): response Changed
  • polar.subscriptions.list(): response.items.[] Changed
  • polar.subscriptions.create(): response Changed
  • polar.subscriptions.get(): response Changed
  • polar.subscriptions.revoke(): response Changed
  • polar.subscriptions.update(): response Changed
  • polar.products.list(): response.items.[].prices.[].[product_price].[seat_based].meter Changed
  • polar.products.create(): response.prices.[].[product_price].[seat_based].meter Changed
  • polar.products.get(): response.prices.[].[product_price].[seat_based].meter Changed
  • polar.products.update(): response.prices.[].[product_price].[seat_based].meter Changed
  • polar.products.update_benefits(): response.prices.[].[product_price].[seat_based].meter Changed
  • polar.orders.list(): request.subscription_id Added
  • polar.checkouts.list(): response.items.[].products.[].prices.[].[product_price].[seat_based].meter Changed
  • polar.checkouts.create(): response.products.[].prices.[].[product_price].[seat_based].meter Changed
  • polar.checkouts.get(): response.products.[].prices.[].[product_price].[seat_based].meter Changed
  • polar.checkouts.update(): response.products.[].prices.[].[product_price].[seat_based].meter Changed
  • polar.checkouts.client_get(): response.products.[].prices.[].[product_price].[seat_based].meter Changed
  • polar.checkouts.client_update(): response.products.[].prices.[].[product_price].[seat_based].meter Changed
  • polar.checkouts.client_confirm(): response.products.[].prices.[].[product_price].[seat_based].meter Changed
  • polar.checkout-links.list(): response.items.[].products.[].prices.[].[product_price].[seat_based].meter Changed
  • polar.checkout-links.create(): response.products.[].prices.[].[product_price].[seat_based].meter Changed
  • polar.checkout-links.get(): response.products.[].prices.[].[product_price].[seat_based].meter Changed
  • polar.checkout-links.update(): response.products.[].prices.[].[product_price].[seat_based].meter Changed
  • polar.customer_portal.seats.list_claimed_subscriptions(): response.items.[].product.prices.[].[product_price].[seat_based].meter Changed
  • polar.customer_portal.orders.list(): response.items.[].product.prices.[].[product_price].[seat_based].meter Changed
  • polar.customer_portal.orders.get(): response.product.prices.[].[product_price].[seat_based].meter Changed
  • polar.customer_portal.orders.update(): response.product.prices.[].[product_price].[seat_based].meter Changed
  • polar.customer_portal.orders.confirm_retry_payment(): error.status[429] Added
  • polar.customer_portal.organizations.get(): response.products.[].prices.[].[product_price].[seat_based].meter Changed
  • polar.customer_portal.subscriptions.list(): response.items.[].product.prices.[].[product_price].[seat_based].meter Changed
  • polar.customer_portal.subscriptions.get(): response.product.prices.[].[product_price].[seat_based].meter Changed
  • polar.customer_portal.subscriptions.cancel(): response.product.prices.[].[product_price].[seat_based].meter Changed
  • polar.customer_portal.subscriptions.update(): response.product.prices.[].[product_price].[seat_based].meter Changed
  • polar.meters.list(): response.items.[] Changed
  • polar.meters.create():
    • request Changed
    • response Changed
  • polar.meters.get(): response Changed
  • polar.meters.update():
    • request.meter_update Changed
    • response Changed
  • polar.customer_meters.list(): response.items.[].meter Changed
  • polar.customer_meters.get(): response.meter Changed

Generated with Speakeasy CLI 1.648.0

Publishing Completed

python - v0.31.2 - 2026-04-03 08:37:25

Choose a tag to compare

@github-actions github-actions released this 03 Apr 08:37

Generated by Speakeasy CLI

polar-sdk 0.31.2

Python SDK Changes Detected:

  • polar._endpointorganization_updated_post():
    • request.data.feature_settings.reset_proration_behavior_enabled Added
  • polar.organizations.list(): response.items.[].feature_settings.reset_proration_behavior_enabled Added
  • polar.organizations.create():
    • request.feature_settings.reset_proration_behavior_enabled Added
    • response.feature_settings.reset_proration_behavior_enabled Added
  • polar.organizations.get(): response.feature_settings.reset_proration_behavior_enabled Added
  • polar.organizations.update():
    • request.organization_update.feature_settings.reset_proration_behavior_enabled Added
    • response.feature_settings.reset_proration_behavior_enabled Added

Generated with Speakeasy CLI 1.648.0

Publishing Completed

python - v0.31.1 - 2026-04-03 06:28:19

Choose a tag to compare

@github-actions github-actions released this 03 Apr 06:28

Generated by Speakeasy CLI

polar-sdk 0.31.1

Python SDK Changes Detected:

  • polar.events.list(): response.[list_resource_event_].items.[].[system_event] Changed Breaking ⚠️
  • polar.events.get(): response.[system_event] Changed Breaking ⚠️
  • polar.metrics.list_dashboards(): Added
  • polar.metrics.create_dashboard(): Added
  • polar.metrics.get_dashboard(): Added
  • polar.metrics.update_dashboard(): Added
  • polar.metrics.delete_dashboard(): Added
  • polar.subscriptions.list(): request Changed
  • polar.payments.list(): response.items.[] Changed

Generated with Speakeasy CLI 1.648.0

Publishing Completed

python - v0.31.0 - 2026-03-27 09:23:19

Choose a tag to compare

@github-actions github-actions released this 27 Mar 09:23
3edf963

polar-sdk 0.31.0 — Breaking Changes

Customer Type Discrimination

Customer, CustomerCreate, and CustomerState are now discriminated unions based on a type field ("individual" or "team"), instead of single flat models.

Migration Guide

Model replacements

Before After
Customer(...) CustomerIndividual(...) or CustomerTeam(...)
CustomerCreate(...) CustomerIndividualCreate(...) or CustomerTeamCreate(...)
CustomerState(...) CustomerStateIndividual(...) or CustomerStateTeam(...)

Type checking

isinstance(x, Customer) no longer works — Customer is now a Union type alias, not a class. Use the type field to discriminate:

# Before
if isinstance(customer, Customer):
    ...

# After
if customer.type == "individual":
    # customer is CustomerIndividual
    ...
elif customer.type == "team":
    # customer is CustomerTeam
    ...

Field changes

  • email is now optional/nullable on OrderCustomer, SubscriptionCustomer, LicenseKeyCustomer, CustomerPortalCustomer
  • type is now required on OrderCustomer, SubscriptionCustomer, LicenseKeyCustomer

Removed exports (replaced by individual/team variants)

Removed Replaced by
OwnerCreate MemberOwnerCreate
CustomerTaxID CustomerIndividualTaxID / CustomerTeamTaxID
CustomerStateTaxID CustomerStateIndividualTaxID / CustomerStateTeamTaxID
CustomerCreateMetadata CustomerIndividualCreateMetadata / CustomerTeamCreateMetadata
ListResourceCustomer Inline union type

Webhook payloads affected

All customer-related webhook events (customer_created, customer_updated, customer_deleted, customer_state_changed) and any webhook carrying a customer field (orders, subscriptions, benefit grants) now use the discriminated union types.

python - v0.30.2 - 2026-03-26 08:30:46

Choose a tag to compare

@github-actions github-actions released this 26 Mar 08:30

Generated by Speakeasy CLI

polar-sdk 0.30.2

Python SDK Changes Detected:

  • polar._endpointcheckout_created_post():
    • request.data Changed Breaking ⚠️
  • polar._endpointcheckout_updated_post():
    • request.data Changed Breaking ⚠️
  • polar._endpointcheckout_expired_post():
    • request.data Changed Breaking ⚠️
  • polar._endpointsubscription_created_post():
    • request.data Changed Breaking ⚠️
  • polar._endpointsubscription_updated_post():
    • request.data Changed Breaking ⚠️
  • polar._endpointsubscription_active_post():
    • request.data Changed Breaking ⚠️
  • polar._endpointsubscription_canceled_post():
    • request.data Changed Breaking ⚠️
  • polar._endpointsubscription_uncanceled_post():
    • request.data Changed Breaking ⚠️
  • polar._endpointsubscription_revoked_post():
    • request.data Changed Breaking ⚠️
  • polar._endpointsubscription_past_due_post():
    • request.data 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.checkouts.client_confirm(): response Changed Breaking ⚠️
  • polar.organizations.create():
    • request Changed Breaking ⚠️
    • response Changed
  • polar.checkouts.client_update(): response Changed Breaking ⚠️
  • polar.organizations.update():
    • request.organization_update Changed Breaking ⚠️
    • response Changed
  • polar.checkouts.client_get(): response Changed Breaking ⚠️
  • polar.checkouts.update(): response Changed Breaking ⚠️
  • polar.checkouts.get(): response Changed Breaking ⚠️
  • polar.checkouts.create():
    • request.prices.{}.[] Changed
    • response Changed Breaking ⚠️
  • polar.checkouts.list(): response.items.[] Changed Breaking ⚠️
  • polar.products.get(): response.prices.[] Changed
  • polar.checkout-links.create(): response.products.[].prices.[] Changed
  • polar.products.list(): response.items.[].prices.[] Changed
  • polar.products.update():
    • request.product_update.prices.[].[2] Changed
    • response.prices.[] Changed
  • polar.products.update_benefits(): response.prices.[] Changed
  • polar.subscriptions.update():
    • response Changed
    • error.status[402] Added
  • polar.subscriptions.revoke(): response Changed
  • polar.subscriptions.get(): response Changed
  • polar.subscriptions.create(): response Changed
  • polar.subscriptions.list(): response.items.[] Changed
  • polar.organizations.get(): response Changed
  • polar.organizations.list(): response.items.[] Changed
  • polar.checkout-links.list(): response.items.[].products.[].prices.[] Changed
  • polar.products.create():
    • request.[product_create_recurring].prices.[] Changed
    • response.prices.[] Changed
  • polar.checkout-links.get(): response.products.[].prices.[] Changed
  • polar.checkout-links.update(): response.products.[].prices.[] Changed
  • polar.members.list_members(): request.role Added
  • polar.customer_portal.seats.list_claimed_subscriptions(): response.items.[] Changed
  • polar.customer_portal.orders.list(): response.items.[].product.prices.[] Changed
  • polar.customer_portal.orders.get(): response.product.prices.[] Changed
  • polar.customer_portal.orders.update(): response.product.prices.[] Changed
  • polar.customer_portal.organizations.get(): response.products.[].prices.[] Changed
  • polar.customer_portal.subscriptions.list(): response.items.[] Changed
  • polar.customer_portal.subscriptions.get(): response Changed
  • polar.customer_portal.subscriptions.cancel(): response Changed
  • polar.customer_portal.subscriptions.update():
    • response Changed
    • error.status[402] Added

Generated with Speakeasy CLI 1.648.0

Publishing Completed

python - v0.30.1 - 2026-03-11 09:09:37

Choose a tag to compare

@github-actions github-actions released this 11 Mar 09:09
405c853

Generated by Speakeasy CLI

polar-sdk 0.30.1

Python SDK Changes Detected:

  • polar._endpointcheckout_created_post():
    • request.data.discount Changed Breaking ⚠️
  • polar._endpointcheckout_updated_post():
    • request.data.discount Changed Breaking ⚠️
  • polar._endpointcheckout_expired_post():
    • request.data.discount Changed Breaking ⚠️
  • polar._endpointorder_created_post():
    • request.data.discount Changed Breaking ⚠️
  • polar._endpointorder_updated_post():
    • request.data.discount Changed Breaking ⚠️
  • polar._endpointorder_paid_post():
    • request.data.discount Changed Breaking ⚠️
  • polar._endpointorder_refunded_post():
    • request.data.discount Changed Breaking ⚠️
  • polar._endpointsubscription_created_post():
    • request.data.discount Changed Breaking ⚠️
  • polar._endpointsubscription_updated_post():
    • request.data.discount Changed Breaking ⚠️
  • polar._endpointsubscription_active_post():
    • request.data.discount Changed Breaking ⚠️
  • polar._endpointsubscription_canceled_post():
    • request.data.discount Changed Breaking ⚠️
  • polar._endpointsubscription_uncanceled_post():
    • request.data.discount Changed Breaking ⚠️
  • polar._endpointsubscription_revoked_post():
    • request.data.discount Changed Breaking ⚠️
  • polar._endpointsubscription_past_due_post():
    • request.data.discount Changed Breaking ⚠️
  • polar.events.get(): response.[system_event] Changed Breaking ⚠️
  • polar.events.list(): response.[list_resource_event_].items.[].[system_event] Changed Breaking ⚠️
  • polar.customers.update_external():
    • request.customer_update_external_id.tax_id Changed Breaking ⚠️
  • polar.customers.update():
    • request.customer_update.tax_id Changed Breaking ⚠️
  • polar.customers.create():
    • request.tax_id Changed Breaking ⚠️
  • polar.oauth2.token(): response Changed Breaking ⚠️
  • polar.orders.list(): response.items.[].discount Changed
  • polar.checkout-links.create(): response.discount Changed
  • polar.orders.update(): response.discount Changed
  • polar.checkouts.list(): response.items.[].discount Changed
  • polar.checkouts.create(): response.discount Changed
  • polar.checkouts.get(): response.discount Changed
  • polar.checkouts.update(): response.discount Changed
  • polar.checkouts.client_get(): response.discount Changed
  • polar.checkouts.client_update(): response.discount Changed
  • polar.checkouts.client_confirm(): response.discount Changed
  • polar.checkout-links.list(): response.items.[].discount Changed
  • polar.orders.get(): response.discount Changed
  • polar.checkout-links.get(): response.discount Changed
  • polar.checkout-links.update(): response.discount Changed
  • polar.discounts.list():
    • request.sorting Changed
    • response.items.[] Changed
  • polar.discounts.create():
    • request Changed
    • response Changed
  • polar.discounts.get(): response Changed
  • polar.discounts.update():
    • request.discount_update.amounts Added
    • response Changed
  • polar.subscriptions.update(): response.discount Changed
  • polar.subscriptions.revoke(): response.discount Changed
  • polar.subscriptions.get(): response.discount Changed
  • polar.subscriptions.create(): response.discount Changed
  • polar.subscriptions.list(): response.items.[].discount Changed

Generated with Speakeasy CLI 1.648.0

Publishing Completed