paddle-python-sdk 0.1.1__tar.gz → 0.1.3__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {paddle_python_sdk-0.1.1/paddle_python_sdk.egg-info → paddle_python_sdk-0.1.3}/PKG-INFO +1 -1
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Client.py +12 -2
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Collections/NotificationSettingCollection.py +2 -2
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Exceptions/ApiError.py +7 -5
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/ResponseParser.py +11 -5
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3/paddle_python_sdk.egg-info}/PKG-INFO +1 -1
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_python_sdk.egg-info/SOURCES.txt +4 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/setup.py +1 -1
- paddle_python_sdk-0.1.3/tests/Functional/Client/test_Client.py +138 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/tests/Functional/Resources/Addresses/test_AddressesClient.py +99 -2
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/tests/Functional/Resources/NotificationSettings/test_NotificationSettingsClient.py +5 -1
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/tests/Utils/TestClient.py +10 -5
- paddle_python_sdk-0.1.3/tests/Utils/TestLogger.py +28 -0
- paddle_python_sdk-0.1.3/tests/__init__.py +0 -0
- paddle_python_sdk-0.1.3/tests/conftest.py +2 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/LICENSE +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/README.md +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/examples/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/examples/catalog_management.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/examples/event_polling.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/examples/get_products.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/examples/logger.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/ConditionallyRemoveImportMeta.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Address.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Adjustment.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Adjustments/AdjustmentCustomerBalance.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Adjustments/AdjustmentItem.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Adjustments/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Business.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Collections/AddressCollection.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Collections/AdjustmentCollection.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Collections/BusinessCollection.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Collections/Collection.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Collections/CreditBalanceCollection.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Collections/CustomerCollection.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Collections/DiscountCollection.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Collections/EventCollection.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Collections/EventTypeCollection.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Collections/NotificationCollection.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Collections/NotificationLogCollection.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Collections/Paginator.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Collections/PriceCollection.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Collections/ProductCollection.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Collections/ReportCollection.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Collections/SubscriptionCollection.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Collections/SubscriptionPreviewCollection.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Collections/TransactionCollection.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Collections/TransactionPreviewCollection.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Collections/TransactionsDataCollection.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Collections/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/CreditBalance.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Customer.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/DateTime.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Discount.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Discounts/DiscountStatus.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Discounts/DiscountType.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Discounts/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Entity.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Event.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/EventType.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Events/EventTypeName.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Events/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Notification.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/NotificationLog.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/NotificationSetting.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/NotificationSettings/NotificationSettingType.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/NotificationSettings/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Notifications/NotificationOrigin.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Notifications/NotificationPayout.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Notifications/NotificationPayoutStatus.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Notifications/NotificationStatus.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Notifications/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Price.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/PricePreview.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/PricingPreviews/PricePreviewDetails.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/PricingPreviews/PricePreviewDiscounts.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/PricingPreviews/PricePreviewItem.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/PricingPreviews/PricePreviewLineItem.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/PricingPreviews/PricePreviewTotalsFormatted.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/PricingPreviews/PricePreviewUnitTotalsFormatted.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/PricingPreviews/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Product.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Report.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/ReportCSV.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Reports/ReportFilter.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Reports/ReportFilterName.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Reports/ReportFilterOperator.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Reports/ReportStatus.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Reports/ReportType.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Reports/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/Action.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/AddressPreview.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/AdjustmentItemTotals.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/AdjustmentProration.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/AdjustmentStatus.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/AdjustmentTimePeriod.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/AdjustmentTotals.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/AdjustmentType.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/AvailablePaymentMethods.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/BillingDetails.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/BillingDetailsUpdate.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/Card.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/CatalogType.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/ChargebackFee.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/Checkout.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/CollectionMode.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/Contacts.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/CountryCode.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/CurrencyCode.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/CurrencyCodeAdjustments.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/CurrencyCodePayouts.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/CustomData.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/Data.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/ErrorCode.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/ImportMeta.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/Interval.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/Meta.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/MetaPaginated.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/MethodDetails.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/Money.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/Original.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/Pagination.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/PaymentAttemptStatus.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/PaymentMethodType.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/PayoutTotalsAdjustment.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/PriceQuantity.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/Status.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/TaxCategory.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/TaxMode.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/TaxRatesUsed.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/TimePeriod.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/Totals.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/TransactionDetailsPreview.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/TransactionLineItemPreview.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/TransactionOrigin.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/TransactionPaymentAttempt.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/TransactionPayoutTotals.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/TransactionPayoutTotalsAdjusted.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/TransactionStatus.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/TransactionTotals.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/TransactionTotalsAdjusted.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/UnitPriceOverride.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/UnitTotals.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Shared/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Subscription.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/SubscriptionPreview.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Subscriptions/SubscriptionAdjustmentItem.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Subscriptions/SubscriptionAdjustmentPreview.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Subscriptions/SubscriptionCharge.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Subscriptions/SubscriptionCredit.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Subscriptions/SubscriptionDetails.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Subscriptions/SubscriptionDiscount.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Subscriptions/SubscriptionEffectiveFrom.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Subscriptions/SubscriptionItem.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Subscriptions/SubscriptionItemStatus.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Subscriptions/SubscriptionItems.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Subscriptions/SubscriptionItemsWithPrice.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Subscriptions/SubscriptionManagementUrls.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Subscriptions/SubscriptionNextTransaction.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Subscriptions/SubscriptionNonCatalogPrice.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Subscriptions/SubscriptionNonCatalogPriceWithProduct.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Subscriptions/SubscriptionNonCatalogProduct.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Subscriptions/SubscriptionOnPaymentFailure.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Subscriptions/SubscriptionPreviewSubscriptionUpdateSummary.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Subscriptions/SubscriptionPrice.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Subscriptions/SubscriptionProration.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Subscriptions/SubscriptionProrationBillingMode.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Subscriptions/SubscriptionResult.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Subscriptions/SubscriptionResultAction.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Subscriptions/SubscriptionResumeEffectiveFrom.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Subscriptions/SubscriptionScheduledChange.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Subscriptions/SubscriptionScheduledChangeAction.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Subscriptions/SubscriptionStatus.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Subscriptions/SubscriptionTimePeriod.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Subscriptions/SubscriptionTransactionItem.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Subscriptions/SubscriptionTransactionLineItem.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Subscriptions/SubscriptionUpdateItem.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Subscriptions/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Transaction.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/TransactionData.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/TransactionPreview.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Transactions/TransactionAdjustmentsTotals.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Transactions/TransactionBreakdown.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Transactions/TransactionCardType.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Transactions/TransactionCreateItem.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Transactions/TransactionCreateItemWithPrice.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Transactions/TransactionDetails.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Transactions/TransactionItem.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Transactions/TransactionItemPreviewWithNonCatalogPrice.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Transactions/TransactionItemPreviewWithPrice.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Transactions/TransactionItemPreviewWithPriceId.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Transactions/TransactionLineItem.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Transactions/TransactionNonCatalogPrice.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Transactions/TransactionNonCatalogPriceWithProduct.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Transactions/TransactionNonCatalogProduct.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Transactions/TransactionProration.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Transactions/TransactionTimePeriod.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Transactions/TransactionUpdateTransactionItem.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Transactions/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/EnumStringify.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Environment.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Exceptions/ApiErrors/AddressApiError.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Exceptions/ApiErrors/AdjustmentApiError.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Exceptions/ApiErrors/BusinessApiError.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Exceptions/ApiErrors/CustomerApiError.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Exceptions/ApiErrors/DiscountApiError.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Exceptions/ApiErrors/PriceApiError.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Exceptions/ApiErrors/ProductApiError.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Exceptions/ApiErrors/SubscriptionApiError.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Exceptions/ApiErrors/TransactionApiError.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Exceptions/ApiErrors/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Exceptions/FieldError.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Exceptions/SdkException.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Exceptions/SdkExceptions/InvalidArgumentException.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Exceptions/SdkExceptions/MalformedResponse.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Exceptions/SdkExceptions/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Exceptions/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/FiltersNone.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/FiltersUndefined.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/HasParameters.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Logger/Formatter.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Logger/NullHandler.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Logger/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Address.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Adjustment.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Adjustments/AdjustmentItem.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Adjustments/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Business.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Businesses/BusinessesContacts.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Businesses/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Customer.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/DateTime.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Discount.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Discounts/DiscountStatus.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Discounts/DiscountType.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Discounts/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Entity.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Payout.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Payouts/PayoutStatus.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Payouts/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Price.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Product.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Report.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Reports/ReportFilter.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Reports/ReportFilterName.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Reports/ReportFilterOperator.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Reports/ReportStatus.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Reports/ReportType.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Reports/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Shared/Action.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Shared/AddressPreview.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Shared/AdjustmentItemTotals.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Shared/AdjustmentProration.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Shared/AdjustmentStatus.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Shared/AdjustmentTimePeriod.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Shared/AdjustmentTotals.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Shared/AdjustmentType.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Shared/AvailablePaymentMethods.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Shared/BillingDetails.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Shared/Card.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Shared/CatalogType.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Shared/ChargebackFee.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Shared/Checkout.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Shared/CollectionMode.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Shared/CountryCode.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Shared/CurrencyCode.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Shared/CurrencyCodeAdjustments.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Shared/CurrencyCodePayouts.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Shared/CustomData.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Shared/Data.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Shared/ErrorCode.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Shared/ImportMeta.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Shared/Interval.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Shared/MethodDetails.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Shared/Money.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Shared/Original.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Shared/PaymentAttemptStatus.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Shared/PaymentMethodType.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Shared/PayoutTotalsAdjustment.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Shared/PriceQuantity.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Shared/Status.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Shared/TaxCategory.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Shared/TaxMode.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Shared/TaxRatesUsed.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Shared/TimePeriod.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Shared/Totals.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Shared/TransactionOrigin.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Shared/TransactionPaymentAttempt.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Shared/TransactionPayoutTotals.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Shared/TransactionPayoutTotalsAdjusted.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Shared/TransactionStatus.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Shared/TransactionTotals.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Shared/TransactionTotalsAdjusted.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Shared/UnitPriceOverride.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Shared/UnitTotals.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Shared/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Subscription.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Subscriptions/SubscriptionAdjustmentItem.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Subscriptions/SubscriptionCharge.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Subscriptions/SubscriptionCredit.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Subscriptions/SubscriptionDiscount.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Subscriptions/SubscriptionEffectiveFrom.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Subscriptions/SubscriptionItem.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Subscriptions/SubscriptionItemStatus.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Subscriptions/SubscriptionOnPaymentFailure.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Subscriptions/SubscriptionPrice.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Subscriptions/SubscriptionScheduledChange.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Subscriptions/SubscriptionScheduledChangeAction.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Subscriptions/SubscriptionStatus.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Subscriptions/SubscriptionTimePeriod.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Subscriptions/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Transaction.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Transactions/TransactionAdjustmentsTotals.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Transactions/TransactionBreakdown.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Transactions/TransactionCardType.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Transactions/TransactionDetails.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Transactions/TransactionItem.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Transactions/TransactionLineItem.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Transactions/TransactionProration.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Transactions/TransactionTimePeriod.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/Transactions/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Entities/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Events/AddressCreated.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Events/AddressUpdated.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Events/AdjustmentCreated.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Events/AdjustmentUpdated.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Events/BusinessCreated.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Events/BusinessUpdated.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Events/CustomerCreated.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Events/CustomerUpdated.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Events/DiscountCreated.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Events/DiscountImported.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Events/DiscountUpdated.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Events/PayoutCreated.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Events/PayoutPaid.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Events/PriceCreated.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Events/PriceUpdated.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Events/ProductCreated.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Events/ProductUpdated.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Events/ReportCreated.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Events/ReportUpdated.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Events/SubscriptionActivated.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Events/SubscriptionCanceled.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Events/SubscriptionCreated.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Events/SubscriptionImported.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Events/SubscriptionPastDue.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Events/SubscriptionPaused.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Events/SubscriptionResumed.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Events/SubscriptionTrialing.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Events/SubscriptionUpdated.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Events/TransactionBilled.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Events/TransactionCanceled.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Events/TransactionCompleted.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Events/TransactionCreated.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Events/TransactionPaid.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Events/TransactionPastDue.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Events/TransactionPaymentFailed.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Events/TransactionReady.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Events/TransactionUpdated.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Events/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/PaddleSignature.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Secret.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/Verifier.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Notifications/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Options.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/PaddleStrEnum.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/RecursivelyRemoveKey.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Addresses/AddressesClient.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Addresses/Operations/CreateAddress.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Addresses/Operations/ListAddresses.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Addresses/Operations/UpdateAddress.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Addresses/Operations/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Addresses/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Adjustments/AdjustmentsClient.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Adjustments/Operations/Create/AdjustmentItem.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Adjustments/Operations/Create/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Adjustments/Operations/CreateAdjustment.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Adjustments/Operations/ListAdjustments.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Adjustments/Operations/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Adjustments/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Businesses/BusinessesClient.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Businesses/Operations/CreateBusiness.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Businesses/Operations/ListBusinesses.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Businesses/Operations/UpdateBusiness.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Businesses/Operations/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Businesses/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Customers/CustomersClient.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Customers/Operations/CreateCustomer.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Customers/Operations/ListCreditBalances.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Customers/Operations/ListCustomers.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Customers/Operations/UpdateCustomer.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Customers/Operations/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Customers/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Discounts/DiscountsClient.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Discounts/Operations/CreateDiscount.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Discounts/Operations/ListDiscounts.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Discounts/Operations/UpdateDiscount.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Discounts/Operations/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Discounts/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/EventTypes/EventTypesClient.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/EventTypes/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Events/EventsClient.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Events/Operations/ListEvents.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Events/Operations/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Events/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/NotificationLogs/NotificationLogsClient.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/NotificationLogs/Operations/ListNotificationLogs.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/NotificationLogs/Operations/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/NotificationLogs/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/NotificationSettings/NotificationSettingsClient.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/NotificationSettings/Operations/CreateNotificationSetting.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/NotificationSettings/Operations/UpdateNotificationSetting.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/NotificationSettings/Operations/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/NotificationSettings/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Notifications/NotificationsClient.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Notifications/Operations/ListNotifications.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Notifications/Operations/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Notifications/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Prices/Operations/CreatePrice.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Prices/Operations/List/Includes.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Prices/Operations/List/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Prices/Operations/ListPrices.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Prices/Operations/UpdatePrice.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Prices/Operations/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Prices/PricesClient.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Prices/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/PricingPreviews/Operations/PreviewPrice.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/PricingPreviews/Operations/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/PricingPreviews/PricingPreviewsClient.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/PricingPreviews/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Products/Operations/CreateProduct.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Products/Operations/List/Includes.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Products/Operations/List/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Products/Operations/ListProducts.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Products/Operations/UpdateProduct.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Products/Operations/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Products/ProductsClient.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Products/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Reports/Operations/CreateReport.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Reports/Operations/ListReports.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Reports/Operations/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Reports/ReportsClient.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Reports/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Shared/Operations/List/Comparator.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Shared/Operations/List/DateComparison.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Shared/Operations/List/OrderBy.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Shared/Operations/List/Pager.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Shared/Operations/List/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Shared/Operations/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Shared/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Subscriptions/Operations/CancelSubscription.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Subscriptions/Operations/CreateOneTimeCharge.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Subscriptions/Operations/Get/Includes.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Subscriptions/Operations/Get/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Subscriptions/Operations/ListSubscriptions.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Subscriptions/Operations/PauseSubscription.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Subscriptions/Operations/PreviewOneTimeCharge.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Subscriptions/Operations/PreviewUpdateSubscription.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Subscriptions/Operations/ResumeSubscription.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Subscriptions/Operations/Update/SubscriptionDiscount.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Subscriptions/Operations/Update/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Subscriptions/Operations/UpdateSubscription.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Subscriptions/Operations/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Subscriptions/SubscriptionsClient.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Subscriptions/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Transactions/Operations/CreateTransaction.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Transactions/Operations/List/Includes.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Transactions/Operations/List/Origin.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Transactions/Operations/List/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Transactions/Operations/ListTransactions.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Transactions/Operations/PreviewTransaction.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Transactions/Operations/UpdateTransaction.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Transactions/Operations/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Transactions/TransactionsClient.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/Transactions/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Resources/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Undefined.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_python_sdk.egg-info/dependency_links.txt +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_python_sdk.egg-info/requires.txt +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_python_sdk.egg-info/top_level.txt +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/setup.cfg +0 -0
- {paddle_python_sdk-0.1.1/tests/Functional/Resources/Addresses → paddle_python_sdk-0.1.3/tests/Functional/Client}/__init__.py +0 -0
- {paddle_python_sdk-0.1.1/tests/Functional/Resources/Adjustments → paddle_python_sdk-0.1.3/tests/Functional/Resources/Addresses}/__init__.py +0 -0
- {paddle_python_sdk-0.1.1/tests/Functional/Resources/Businesses → paddle_python_sdk-0.1.3/tests/Functional/Resources/Adjustments}/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/tests/Functional/Resources/Adjustments/test_AdjustmentsClient.py +0 -0
- {paddle_python_sdk-0.1.1/tests/Functional/Resources/Customers → paddle_python_sdk-0.1.3/tests/Functional/Resources/Businesses}/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/tests/Functional/Resources/Businesses/test_BusinessesClient.py +0 -0
- {paddle_python_sdk-0.1.1/tests/Functional/Resources/Discounts → paddle_python_sdk-0.1.3/tests/Functional/Resources/Customers}/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/tests/Functional/Resources/Customers/test_CustomersClient.py +0 -0
- {paddle_python_sdk-0.1.1/tests/Functional/Resources/EventTypes → paddle_python_sdk-0.1.3/tests/Functional/Resources/Discounts}/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/tests/Functional/Resources/Discounts/test_DiscountsClient.py +0 -0
- {paddle_python_sdk-0.1.1/tests/Functional/Resources/Events → paddle_python_sdk-0.1.3/tests/Functional/Resources/EventTypes}/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/tests/Functional/Resources/EventTypes/test_EventTypesClient.py +0 -0
- {paddle_python_sdk-0.1.1/tests/Functional/Resources/NotificationLogs → paddle_python_sdk-0.1.3/tests/Functional/Resources/Events}/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/tests/Functional/Resources/Events/test_EventsClient.py +0 -0
- {paddle_python_sdk-0.1.1/tests/Functional/Resources/NotificationSettings → paddle_python_sdk-0.1.3/tests/Functional/Resources/NotificationLogs}/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/tests/Functional/Resources/NotificationLogs/test_NotificationLogsClient.py +0 -0
- {paddle_python_sdk-0.1.1/tests/Functional/Resources/Notifications → paddle_python_sdk-0.1.3/tests/Functional/Resources/NotificationSettings}/__init__.py +0 -0
- {paddle_python_sdk-0.1.1/tests/Functional/Resources/Prices → paddle_python_sdk-0.1.3/tests/Functional/Resources/Notifications}/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/tests/Functional/Resources/Notifications/test_NotificationsClient.py +0 -0
- {paddle_python_sdk-0.1.1/tests/Functional/Resources/PricingPreviews → paddle_python_sdk-0.1.3/tests/Functional/Resources/Prices}/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/tests/Functional/Resources/Prices/test_PricesClient.py +0 -0
- {paddle_python_sdk-0.1.1/tests/Functional/Resources/Products → paddle_python_sdk-0.1.3/tests/Functional/Resources/PricingPreviews}/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/tests/Functional/Resources/PricingPreviews/test_PricingPreviewsClient.py +0 -0
- {paddle_python_sdk-0.1.1/tests/Functional/Resources/Reports → paddle_python_sdk-0.1.3/tests/Functional/Resources/Products}/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/tests/Functional/Resources/Products/test_ProductsClient.py +0 -0
- {paddle_python_sdk-0.1.1/tests/Functional/Resources/Subscriptions → paddle_python_sdk-0.1.3/tests/Functional/Resources/Reports}/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/tests/Functional/Resources/Reports/test_ReportsClient.py +0 -0
- {paddle_python_sdk-0.1.1/tests/Functional/Resources/Transactions → paddle_python_sdk-0.1.3/tests/Functional/Resources/Subscriptions}/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/tests/Functional/Resources/Subscriptions/test_SubscriptionsClient.py +0 -0
- {paddle_python_sdk-0.1.1/tests/Functional/Resources → paddle_python_sdk-0.1.3/tests/Functional/Resources/Transactions}/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/tests/Functional/Resources/Transactions/test_TransactionsClient.py +0 -0
- {paddle_python_sdk-0.1.1/tests/Functional → paddle_python_sdk-0.1.3/tests/Functional/Resources}/__init__.py +0 -0
- {paddle_python_sdk-0.1.1/tests/Unit/Logger → paddle_python_sdk-0.1.3/tests/Functional}/__init__.py +0 -0
- {paddle_python_sdk-0.1.1/tests/Unit/Notification → paddle_python_sdk-0.1.3/tests/Unit/Logger}/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/tests/Unit/Logger/test_Logger.py +0 -0
- {paddle_python_sdk-0.1.1/tests/Unit/PaddleStrEnum → paddle_python_sdk-0.1.3/tests/Unit/Notification}/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/tests/Unit/Notification/test_Verifier.py +0 -0
- {paddle_python_sdk-0.1.1/tests/Unit → paddle_python_sdk-0.1.3/tests/Unit/PaddleStrEnum}/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/tests/Unit/PaddleStrEnum/test_PaddleStrEnum.py +0 -0
- {paddle_python_sdk-0.1.1/tests → paddle_python_sdk-0.1.3/tests/Unit}/__init__.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/tests/Utils/FakeResponse.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/tests/Utils/ReadsFixture.py +0 -0
- {paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/tests/Utils/__init__.py +0 -0
|
@@ -9,6 +9,7 @@ from uuid import uuid4
|
|
|
9
9
|
from paddle_billing.FiltersUndefined import FiltersUndefined
|
|
10
10
|
from paddle_billing.HasParameters import HasParameters
|
|
11
11
|
from paddle_billing.Options import Options
|
|
12
|
+
from paddle_billing.ResponseParser import ResponseParser
|
|
12
13
|
|
|
13
14
|
from paddle_billing.Logger.NullHandler import NullHandler
|
|
14
15
|
|
|
@@ -133,8 +134,17 @@ class Client:
|
|
|
133
134
|
except RequestException as e:
|
|
134
135
|
self.status_code = e.response.status_code
|
|
135
136
|
|
|
137
|
+
api_error = None
|
|
138
|
+
if e.response is not None:
|
|
139
|
+
response_parser = ResponseParser(e.response)
|
|
140
|
+
api_error = response_parser.get_error()
|
|
141
|
+
|
|
136
142
|
if self.log:
|
|
137
|
-
self.log.error(f"Request failed: {e}")
|
|
143
|
+
self.log.error(f"Request failed: {e}.{' ' + api_error.detail if api_error is not None else ''}")
|
|
144
|
+
|
|
145
|
+
if api_error is not None:
|
|
146
|
+
raise api_error
|
|
147
|
+
|
|
138
148
|
raise
|
|
139
149
|
|
|
140
150
|
|
|
@@ -187,7 +197,7 @@ class Client:
|
|
|
187
197
|
'Authorization': f"Bearer {self.__api_key}",
|
|
188
198
|
'Content-Type': 'application/json',
|
|
189
199
|
'Paddle-Version': str(self.use_api_version),
|
|
190
|
-
'User-Agent': 'PaddleSDK/python 0.1.
|
|
200
|
+
'User-Agent': 'PaddleSDK/python 0.1.3',
|
|
191
201
|
})
|
|
192
202
|
|
|
193
203
|
# Configure retries
|
|
@@ -7,9 +7,9 @@ from paddle_billing.Entities.Collections.Paginator import Paginator
|
|
|
7
7
|
class NotificationSettingCollection(Collection):
|
|
8
8
|
@classmethod
|
|
9
9
|
def from_list(cls, items_data: list, paginator: Paginator | None = None) -> NotificationSettingCollection:
|
|
10
|
-
from paddle_billing.Entities.
|
|
10
|
+
from paddle_billing.Entities.NotificationSetting import NotificationSetting
|
|
11
11
|
|
|
12
|
-
items: list[
|
|
12
|
+
items: list[NotificationSetting] = [NotificationSetting.from_dict(item) for item in items_data]
|
|
13
13
|
|
|
14
14
|
return NotificationSettingCollection(items, paginator)
|
|
15
15
|
|
|
@@ -1,25 +1,27 @@
|
|
|
1
1
|
from paddle_billing.Exceptions.FieldError import FieldError
|
|
2
2
|
|
|
3
|
+
from requests import HTTPError
|
|
3
4
|
|
|
4
|
-
class ApiError(
|
|
5
|
-
def __init__(self, error_type, error_code, detail, docs_url, *field_errors):
|
|
5
|
+
class ApiError(HTTPError):
|
|
6
|
+
def __init__(self, response, error_type, error_code, detail, docs_url, *field_errors):
|
|
7
|
+
super().__init__(detail, response=response)
|
|
6
8
|
self.error_type = error_type
|
|
7
9
|
self.error_code = error_code
|
|
8
10
|
self.detail = detail
|
|
9
11
|
self.docs_url = docs_url
|
|
10
12
|
self.field_errors = field_errors
|
|
11
|
-
super().__init__(self.detail)
|
|
12
13
|
|
|
13
14
|
|
|
14
15
|
def __repr__(self):
|
|
15
|
-
return (f"ApiError(
|
|
16
|
+
return (f"ApiError(error_type='{self.error_type}', error_code='{self.error_code}', detail='{self.detail}', "
|
|
16
17
|
f"docs_url='{self.docs_url}', field_errors={self.field_errors})")
|
|
17
18
|
|
|
18
19
|
|
|
19
20
|
@classmethod
|
|
20
|
-
def from_error_data(cls, error):
|
|
21
|
+
def from_error_data(cls, response, error):
|
|
21
22
|
field_errors = [FieldError(fe['field'], fe['message']) for fe in error.get('errors', [])]
|
|
22
23
|
return cls(
|
|
24
|
+
response,
|
|
23
25
|
error['type'],
|
|
24
26
|
error['code'],
|
|
25
27
|
error['detail'],
|
|
@@ -9,6 +9,8 @@ from paddle_billing.Exceptions.ApiError import ApiError
|
|
|
9
9
|
class ResponseParser:
|
|
10
10
|
def __init__(self, response: Response):
|
|
11
11
|
self.body = None
|
|
12
|
+
self.error = None
|
|
13
|
+
self.response = response
|
|
12
14
|
|
|
13
15
|
if not hasattr(response, 'text'):
|
|
14
16
|
return
|
|
@@ -19,13 +21,17 @@ class ResponseParser:
|
|
|
19
21
|
self.body = None
|
|
20
22
|
|
|
21
23
|
if self.body and 'error' in self.body:
|
|
22
|
-
self.parse_errors()
|
|
24
|
+
self.error = self.parse_errors()
|
|
23
25
|
|
|
24
26
|
|
|
25
27
|
def get_data(self) -> list | dict:
|
|
26
28
|
return self.body.get('data', []) if self.body else []
|
|
27
29
|
|
|
28
30
|
|
|
31
|
+
def get_error(self) -> ApiError | None:
|
|
32
|
+
return self.error
|
|
33
|
+
|
|
34
|
+
|
|
29
35
|
def get_pagination(self) -> Pagination:
|
|
30
36
|
meta = self.body.get('meta', {}) if self.body else {}
|
|
31
37
|
pagination = meta.get('pagination', {}) if meta else {}
|
|
@@ -38,15 +44,15 @@ class ResponseParser:
|
|
|
38
44
|
)
|
|
39
45
|
|
|
40
46
|
|
|
41
|
-
def parse_errors(self):
|
|
47
|
+
def parse_errors(self) -> ApiError | None:
|
|
42
48
|
if not self.body or 'error' not in self.body:
|
|
43
|
-
return
|
|
49
|
+
return None
|
|
44
50
|
|
|
45
51
|
error = self.body['error']
|
|
46
52
|
code = error.get('code', 'shared_error')
|
|
47
53
|
exception_class = self.find_exception_class_from_code(code)
|
|
48
54
|
|
|
49
|
-
|
|
55
|
+
return exception_class.from_error_data(self.response, error)
|
|
50
56
|
|
|
51
57
|
|
|
52
58
|
@staticmethod
|
|
@@ -57,7 +63,7 @@ class ResponseParser:
|
|
|
57
63
|
if not resource:
|
|
58
64
|
return ApiError
|
|
59
65
|
|
|
60
|
-
class_name = f"
|
|
66
|
+
class_name = f"paddle_billing.Exceptions.ApiErrors.{resource}ApiError"
|
|
61
67
|
try:
|
|
62
68
|
module = __import__(class_name, fromlist=[''])
|
|
63
69
|
return getattr(module, f'{resource}ApiError')
|
|
@@ -473,7 +473,10 @@ paddle_python_sdk.egg-info/dependency_links.txt
|
|
|
473
473
|
paddle_python_sdk.egg-info/requires.txt
|
|
474
474
|
paddle_python_sdk.egg-info/top_level.txt
|
|
475
475
|
tests/__init__.py
|
|
476
|
+
tests/conftest.py
|
|
476
477
|
tests/Functional/__init__.py
|
|
478
|
+
tests/Functional/Client/__init__.py
|
|
479
|
+
tests/Functional/Client/test_Client.py
|
|
477
480
|
tests/Functional/Resources/__init__.py
|
|
478
481
|
tests/Functional/Resources/Addresses/__init__.py
|
|
479
482
|
tests/Functional/Resources/Addresses/test_AddressesClient.py
|
|
@@ -517,4 +520,5 @@ tests/Unit/PaddleStrEnum/test_PaddleStrEnum.py
|
|
|
517
520
|
tests/Utils/FakeResponse.py
|
|
518
521
|
tests/Utils/ReadsFixture.py
|
|
519
522
|
tests/Utils/TestClient.py
|
|
523
|
+
tests/Utils/TestLogger.py
|
|
520
524
|
tests/Utils/__init__.py
|
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
from json import loads, dumps
|
|
2
|
+
from pytest import mark, raises
|
|
3
|
+
from urllib.parse import unquote
|
|
4
|
+
|
|
5
|
+
from paddle_billing.Exceptions.ApiError import ApiError
|
|
6
|
+
from paddle_billing.Exceptions.ApiErrors.AddressApiError import AddressApiError
|
|
7
|
+
|
|
8
|
+
from requests.exceptions import RequestException, HTTPError
|
|
9
|
+
|
|
10
|
+
from tests.Utils.TestLogger import test_log_handler, LogHandler
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
class TestClient:
|
|
14
|
+
@mark.parametrize(
|
|
15
|
+
[
|
|
16
|
+
'expected_response_status',
|
|
17
|
+
'expected_reason',
|
|
18
|
+
'expected_response_body',
|
|
19
|
+
'expected_exception',
|
|
20
|
+
],
|
|
21
|
+
[
|
|
22
|
+
(
|
|
23
|
+
400,
|
|
24
|
+
'Bad Request',
|
|
25
|
+
{
|
|
26
|
+
"error": {
|
|
27
|
+
"type": "request_error",
|
|
28
|
+
"code": "bad_request",
|
|
29
|
+
"detail": "Invalid request",
|
|
30
|
+
"documentation_url": "https://developer.paddle.com/v1/errors/shared/bad_request",
|
|
31
|
+
"errors": [
|
|
32
|
+
{
|
|
33
|
+
"field": "some_field",
|
|
34
|
+
"message": "Some error message"
|
|
35
|
+
}
|
|
36
|
+
]
|
|
37
|
+
},
|
|
38
|
+
"meta": {
|
|
39
|
+
"request_id": "f00bb3ca-399d-4686-889c-50b028f4c912"
|
|
40
|
+
}
|
|
41
|
+
},
|
|
42
|
+
ApiError
|
|
43
|
+
),
|
|
44
|
+
(
|
|
45
|
+
404,
|
|
46
|
+
'Not Found',
|
|
47
|
+
{
|
|
48
|
+
"error": {
|
|
49
|
+
"type": "request_error",
|
|
50
|
+
"code": "not_found",
|
|
51
|
+
"detail": "Entity not found",
|
|
52
|
+
"documentation_url": "https://developer.paddle.com/v1/errors/shared/not_found"
|
|
53
|
+
},
|
|
54
|
+
"meta": {
|
|
55
|
+
"request_id": "f00bb3ca-399d-4686-889c-50b028f4c912"
|
|
56
|
+
}
|
|
57
|
+
},
|
|
58
|
+
ApiError
|
|
59
|
+
),
|
|
60
|
+
(
|
|
61
|
+
400,
|
|
62
|
+
'Bad Request',
|
|
63
|
+
{
|
|
64
|
+
"error": {
|
|
65
|
+
"type": "request_error",
|
|
66
|
+
"code": "address_location_not_allowed",
|
|
67
|
+
"detail": "Cannot create address with an unsupported location",
|
|
68
|
+
"documentation_url": "https://developer.paddle.com/errors/addresses/address_location_not_allowed"
|
|
69
|
+
},
|
|
70
|
+
"meta": {
|
|
71
|
+
"request_id": "f00bb3ca-399d-4686-889c-50b028f4c912"
|
|
72
|
+
}
|
|
73
|
+
},
|
|
74
|
+
AddressApiError
|
|
75
|
+
),
|
|
76
|
+
],
|
|
77
|
+
ids=[
|
|
78
|
+
"Returns bad_request response",
|
|
79
|
+
"Returns not_found response",
|
|
80
|
+
"Returns address_location_not_allowed response",
|
|
81
|
+
],
|
|
82
|
+
)
|
|
83
|
+
def test_post_raw_returns_error_response(
|
|
84
|
+
self,
|
|
85
|
+
test_client,
|
|
86
|
+
test_log_handler: LogHandler,
|
|
87
|
+
mock_requests,
|
|
88
|
+
expected_response_status,
|
|
89
|
+
expected_reason,
|
|
90
|
+
expected_response_body,
|
|
91
|
+
expected_exception
|
|
92
|
+
):
|
|
93
|
+
expected_request_url = f"{test_client.base_url}/some/url"
|
|
94
|
+
expected_request_body = { "some_property": "some value" }
|
|
95
|
+
mock_requests.post(expected_request_url, status_code=expected_response_status, text=dumps(expected_response_body), reason=expected_reason)
|
|
96
|
+
|
|
97
|
+
with raises(expected_exception) as exception_info:
|
|
98
|
+
test_client.client.post_raw(expected_request_url, expected_request_body)
|
|
99
|
+
|
|
100
|
+
request_json = test_client.client.payload
|
|
101
|
+
last_request = mock_requests.last_request
|
|
102
|
+
api_error = exception_info.value
|
|
103
|
+
|
|
104
|
+
assert unquote(last_request.url) == expected_request_url, \
|
|
105
|
+
"The URL does not match the expected URL, verify the query string is correct"
|
|
106
|
+
|
|
107
|
+
assert loads(request_json) == expected_request_body, \
|
|
108
|
+
"The request JSON doesn't match the expected fixture JSON"
|
|
109
|
+
|
|
110
|
+
assert isinstance(api_error, ApiError)
|
|
111
|
+
assert isinstance(api_error, HTTPError)
|
|
112
|
+
assert isinstance(api_error, RequestException)
|
|
113
|
+
assert api_error.response.status_code == expected_response_status, 'Unexpected status code'
|
|
114
|
+
assert api_error.error_type == expected_response_body['error']['type']
|
|
115
|
+
assert api_error.error_code == expected_response_body['error']['code']
|
|
116
|
+
assert api_error.detail == expected_response_body['error']['detail']
|
|
117
|
+
assert api_error.docs_url == expected_response_body['error']['documentation_url']
|
|
118
|
+
|
|
119
|
+
if 'errors' in expected_response_body['error']:
|
|
120
|
+
assert len(api_error.field_errors) == len(expected_response_body['error']['errors'])
|
|
121
|
+
|
|
122
|
+
for i, expected_field_error in enumerate(expected_response_body['error']['errors']):
|
|
123
|
+
assert api_error.field_errors[i].field == expected_field_error['field']
|
|
124
|
+
assert api_error.field_errors[i].error == expected_field_error['message']
|
|
125
|
+
else:
|
|
126
|
+
assert len(api_error.field_errors) == 0
|
|
127
|
+
|
|
128
|
+
assert str(api_error) == expected_response_body['error']['detail']
|
|
129
|
+
assert repr(api_error) == ("ApiError("
|
|
130
|
+
f"error_type='{api_error.error_type}', "
|
|
131
|
+
f"error_code='{api_error.error_code}', "
|
|
132
|
+
f"detail='{api_error.detail}', "
|
|
133
|
+
f"docs_url='{api_error.docs_url}', "
|
|
134
|
+
f"field_errors={api_error.field_errors}"
|
|
135
|
+
")")
|
|
136
|
+
|
|
137
|
+
assert test_log_handler.get_logs()[0].message == \
|
|
138
|
+
f"Request failed: {expected_response_status} Client Error: {expected_reason} for url: {expected_request_url}. {api_error.detail}"
|
|
@@ -1,14 +1,17 @@
|
|
|
1
|
-
from json import loads
|
|
2
|
-
from pytest import mark
|
|
1
|
+
from json import loads, dumps
|
|
2
|
+
from pytest import mark, raises
|
|
3
3
|
from urllib.parse import unquote
|
|
4
4
|
|
|
5
5
|
from paddle_billing.Entities.Address import Address
|
|
6
6
|
from paddle_billing.Entities.Collections import AddressCollection
|
|
7
7
|
from paddle_billing.Entities.Shared import CountryCode, CustomData, Status
|
|
8
|
+
from paddle_billing.Exceptions.ApiError import ApiError
|
|
8
9
|
|
|
9
10
|
from paddle_billing.Resources.Addresses.Operations import CreateAddress, ListAddresses, UpdateAddress
|
|
10
11
|
from paddle_billing.Resources.Shared.Operations import Pager
|
|
11
12
|
|
|
13
|
+
from requests.exceptions import RequestException, HTTPError
|
|
14
|
+
|
|
12
15
|
from tests.Utils.TestClient import mock_requests, test_client
|
|
13
16
|
from tests.Utils.ReadsFixture import ReadsFixtures
|
|
14
17
|
|
|
@@ -78,6 +81,100 @@ class TestAddressesClient:
|
|
|
78
81
|
"The response JSON doesn't match the expected fixture JSON"
|
|
79
82
|
|
|
80
83
|
|
|
84
|
+
@mark.parametrize(
|
|
85
|
+
[
|
|
86
|
+
'customer_id',
|
|
87
|
+
'operation',
|
|
88
|
+
'expected_request_body',
|
|
89
|
+
'expected_response_status',
|
|
90
|
+
'expected_reason',
|
|
91
|
+
'expected_response_body',
|
|
92
|
+
'expected_url_path',
|
|
93
|
+
],
|
|
94
|
+
[
|
|
95
|
+
(
|
|
96
|
+
'ctm_01h844p3h41s12zs5mn4axja51',
|
|
97
|
+
CreateAddress(CountryCode.AG),
|
|
98
|
+
ReadsFixtures.read_raw_json_fixture('request/create_basic'),
|
|
99
|
+
400,
|
|
100
|
+
'Bad Request',
|
|
101
|
+
{
|
|
102
|
+
"error": {
|
|
103
|
+
"type": "request_error",
|
|
104
|
+
"code": "bad_request",
|
|
105
|
+
"detail": "Invalid request",
|
|
106
|
+
"documentation_url": "https://developer.paddle.com/v1/errors/shared/bad_request",
|
|
107
|
+
"errors": [
|
|
108
|
+
{
|
|
109
|
+
"field": "postal_code",
|
|
110
|
+
"message": "US postal_code must be 5 digits only"
|
|
111
|
+
}
|
|
112
|
+
]
|
|
113
|
+
},
|
|
114
|
+
"meta": {
|
|
115
|
+
"request_id": "f00bb3ca-399d-4686-889c-50b028f4c911"
|
|
116
|
+
}
|
|
117
|
+
},
|
|
118
|
+
'/customers/ctm_01h844p3h41s12zs5mn4axja51/addresses'
|
|
119
|
+
),
|
|
120
|
+
],
|
|
121
|
+
ids=[
|
|
122
|
+
"Returns 400 response for postal code",
|
|
123
|
+
],
|
|
124
|
+
)
|
|
125
|
+
def test_create_address_returns_error_response(
|
|
126
|
+
self,
|
|
127
|
+
test_client,
|
|
128
|
+
mock_requests,
|
|
129
|
+
customer_id,
|
|
130
|
+
operation,
|
|
131
|
+
expected_request_body,
|
|
132
|
+
expected_response_status,
|
|
133
|
+
expected_reason,
|
|
134
|
+
expected_response_body,
|
|
135
|
+
expected_url_path,
|
|
136
|
+
):
|
|
137
|
+
expected_url = f"{test_client.base_url}{expected_url_path}"
|
|
138
|
+
mock_requests.post(expected_url, status_code=expected_response_status, text=dumps(expected_response_body), reason=expected_reason)
|
|
139
|
+
|
|
140
|
+
with raises(ApiError) as exception_info:
|
|
141
|
+
test_client.client.addresses.create(customer_id, operation)
|
|
142
|
+
|
|
143
|
+
request_json = test_client.client.payload
|
|
144
|
+
last_request = mock_requests.last_request
|
|
145
|
+
api_error = exception_info.value
|
|
146
|
+
|
|
147
|
+
assert unquote(last_request.url) == expected_url, \
|
|
148
|
+
"The URL does not match the expected URL, verify the query string is correct"
|
|
149
|
+
|
|
150
|
+
assert loads(request_json) == loads(expected_request_body), \
|
|
151
|
+
"The request JSON doesn't match the expected fixture JSON"
|
|
152
|
+
|
|
153
|
+
assert isinstance(api_error, ApiError)
|
|
154
|
+
assert isinstance(api_error, HTTPError)
|
|
155
|
+
assert isinstance(api_error, RequestException)
|
|
156
|
+
assert api_error.response.status_code == expected_response_status, 'Unexpected status code'
|
|
157
|
+
assert api_error.error_type == expected_response_body['error']['type']
|
|
158
|
+
assert api_error.error_code == expected_response_body['error']['code']
|
|
159
|
+
assert api_error.detail == expected_response_body['error']['detail']
|
|
160
|
+
assert api_error.docs_url == expected_response_body['error']['documentation_url']
|
|
161
|
+
|
|
162
|
+
assert len(api_error.field_errors) == len(expected_response_body['error']['errors'])
|
|
163
|
+
|
|
164
|
+
for i, expected_field_error in enumerate(expected_response_body['error']['errors']):
|
|
165
|
+
assert api_error.field_errors[i].field == expected_field_error['field']
|
|
166
|
+
assert api_error.field_errors[i].error == expected_field_error['message']
|
|
167
|
+
|
|
168
|
+
assert str(api_error) == api_error.detail
|
|
169
|
+
assert repr(api_error) == ("ApiError("
|
|
170
|
+
f"error_type='{api_error.error_type}', "
|
|
171
|
+
f"error_code='{api_error.error_code}', "
|
|
172
|
+
f"detail='{api_error.detail}', "
|
|
173
|
+
f"docs_url='{api_error.docs_url}', "
|
|
174
|
+
f"field_errors={api_error.field_errors}"
|
|
175
|
+
")")
|
|
176
|
+
|
|
177
|
+
|
|
81
178
|
@mark.parametrize(
|
|
82
179
|
'customer_id, address_id, operation, expected_request_body, expected_response_status, expected_response_body, expected_url',
|
|
83
180
|
[
|
|
@@ -200,13 +200,17 @@ class TestNotificationSettingsClient:
|
|
|
200
200
|
expected_url,
|
|
201
201
|
):
|
|
202
202
|
expected_url = f"{test_client.base_url}{expected_url}"
|
|
203
|
-
mock_requests.get(expected_url, status_code=expected_response_status)
|
|
203
|
+
mock_requests.get(expected_url, status_code=expected_response_status, text=expected_response_body)
|
|
204
204
|
|
|
205
205
|
response = test_client.client.notification_settings.list()
|
|
206
206
|
last_request = mock_requests.last_request
|
|
207
207
|
|
|
208
208
|
assert isinstance(response, NotificationSettingCollection)
|
|
209
|
+
assert all(
|
|
210
|
+
isinstance(item, NotificationSetting) for item in response.items
|
|
211
|
+
), "Not all items are NotificationSetting"
|
|
209
212
|
assert last_request is not None
|
|
213
|
+
|
|
210
214
|
assert last_request.method == 'GET'
|
|
211
215
|
assert test_client.client.status_code == expected_response_status
|
|
212
216
|
assert unquote(last_request.url) == expected_url, \
|
|
@@ -1,20 +1,24 @@
|
|
|
1
1
|
from os import getenv
|
|
2
2
|
from pytest import fixture
|
|
3
3
|
from requests_mock import Mocker
|
|
4
|
+
from logging import Logger
|
|
4
5
|
|
|
5
6
|
from paddle_billing import Client, Environment, Options
|
|
6
7
|
|
|
8
|
+
from tests.Utils.TestLogger import test_logger
|
|
9
|
+
|
|
7
10
|
|
|
8
11
|
class TestClient:
|
|
9
12
|
def __init__(
|
|
10
13
|
self,
|
|
11
14
|
client: Client | None = None,
|
|
12
15
|
api_secret_key: str | None = None,
|
|
13
|
-
environment: Environment = Environment.SANDBOX
|
|
16
|
+
environment: Environment = Environment.SANDBOX,
|
|
17
|
+
logger: Logger | None = None,
|
|
14
18
|
):
|
|
15
19
|
self._environment = environment
|
|
16
20
|
self._base_url = self._environment.base_url
|
|
17
|
-
self._client = client or self.create_client(api_secret_key)
|
|
21
|
+
self._client = client or self.create_client(api_secret_key, logger)
|
|
18
22
|
|
|
19
23
|
|
|
20
24
|
@property
|
|
@@ -30,16 +34,17 @@ class TestClient:
|
|
|
30
34
|
return self._environment
|
|
31
35
|
|
|
32
36
|
|
|
33
|
-
def create_client(self, api_secret_key: str | None = None):
|
|
37
|
+
def create_client(self, api_secret_key: str | None = None, logger: Logger | None = None):
|
|
34
38
|
return Client(
|
|
35
39
|
getenv('PADDLE_API_SECRET_KEY') if api_secret_key is None else api_secret_key,
|
|
36
40
|
options = Options(self._environment),
|
|
41
|
+
logger=logger
|
|
37
42
|
)
|
|
38
43
|
|
|
39
44
|
|
|
40
45
|
@fixture(autouse=True)
|
|
41
|
-
def test_client():
|
|
42
|
-
return TestClient(environment=Environment.SANDBOX)
|
|
46
|
+
def test_client(test_logger):
|
|
47
|
+
return TestClient(environment=Environment.SANDBOX, logger=test_logger)
|
|
43
48
|
|
|
44
49
|
|
|
45
50
|
@fixture
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
from pytest import fixture
|
|
2
|
+
from logging import getLogger, Logger, Handler, LogRecord
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class LogHandler(Handler):
|
|
6
|
+
def __init__(self):
|
|
7
|
+
super().__init__()
|
|
8
|
+
self._logs = []
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
def emit(self, record):
|
|
12
|
+
self._logs.append(record)
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
def get_logs(self) -> list[LogRecord]:
|
|
16
|
+
return self._logs
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
@fixture
|
|
20
|
+
def test_log_handler() -> LogHandler:
|
|
21
|
+
return LogHandler()
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
@fixture
|
|
25
|
+
def test_logger(test_log_handler) -> Logger:
|
|
26
|
+
logger = getLogger('paddle_test_logger')
|
|
27
|
+
logger.addHandler(test_log_handler)
|
|
28
|
+
return logger
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/ConditionallyRemoveImportMeta.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Adjustments/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Collections/Paginator.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/Collections/__init__.py
RENAMED
|
File without changes
|
{paddle_python_sdk-0.1.1 → paddle_python_sdk-0.1.3}/paddle_billing/Entities/CreditBalance.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|