checkout-intents 0.13.0__tar.gz → 0.14.0__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.
Files changed (119) hide show
  1. checkout_intents-0.14.0/.release-please-manifest.json +3 -0
  2. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/CHANGELOG.md +26 -0
  3. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/PKG-INFO +1 -1
  4. checkout_intents-0.14.0/api.md +81 -0
  5. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/pyproject.toml +1 -1
  6. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/_client.py +39 -2
  7. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/_version.py +1 -1
  8. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/resources/__init__.py +14 -0
  9. checkout_intents-0.14.0/src/checkout_intents/resources/checkout_intents/__init__.py +33 -0
  10. {checkout_intents-0.13.0/src/checkout_intents/resources → checkout_intents-0.14.0/src/checkout_intents/resources/checkout_intents}/checkout_intents.py +45 -13
  11. checkout_intents-0.14.0/src/checkout_intents/resources/checkout_intents/shipments.py +198 -0
  12. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/resources/products.py +2 -2
  13. checkout_intents-0.14.0/src/checkout_intents/resources/shipments.py +297 -0
  14. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/types/__init__.py +2 -0
  15. checkout_intents-0.14.0/src/checkout_intents/types/checkout_intents/__init__.py +5 -0
  16. checkout_intents-0.14.0/src/checkout_intents/types/checkout_intents/shipment_list_params.py +15 -0
  17. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/types/payment_method.py +14 -2
  18. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/types/payment_method_param.py +14 -2
  19. checkout_intents-0.14.0/src/checkout_intents/types/shipment.py +261 -0
  20. checkout_intents-0.14.0/src/checkout_intents/types/shipment_list_params.py +22 -0
  21. checkout_intents-0.14.0/tests/api_resources/checkout_intents/__init__.py +1 -0
  22. checkout_intents-0.14.0/tests/api_resources/checkout_intents/test_shipments.py +131 -0
  23. checkout_intents-0.14.0/tests/api_resources/test_shipments.py +189 -0
  24. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/uv.lock +1 -1
  25. checkout_intents-0.13.0/.release-please-manifest.json +0 -3
  26. checkout_intents-0.13.0/api.md +0 -62
  27. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/.gitignore +0 -0
  28. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/CONTRIBUTING.md +0 -0
  29. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/LICENSE +0 -0
  30. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/README.md +0 -0
  31. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/SECURITY.md +0 -0
  32. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/bin/check-release-environment +0 -0
  33. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/bin/publish-pypi +0 -0
  34. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/examples/.keep +0 -0
  35. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/examples/complete-checkout-intent.py +0 -0
  36. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/examples/error-handling.py +0 -0
  37. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/noxfile.py +0 -0
  38. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/release-please-config.json +0 -0
  39. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/requirements-dev.lock +0 -0
  40. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/requirements.lock +0 -0
  41. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/__init__.py +0 -0
  42. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/_base_client.py +0 -0
  43. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/_compat.py +0 -0
  44. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/_constants.py +0 -0
  45. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/_exceptions.py +0 -0
  46. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/_files.py +0 -0
  47. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/_models.py +0 -0
  48. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/_qs.py +0 -0
  49. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/_resource.py +0 -0
  50. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/_response.py +0 -0
  51. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/_streaming.py +0 -0
  52. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/_types.py +0 -0
  53. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/_utils/__init__.py +0 -0
  54. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/_utils/_compat.py +0 -0
  55. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/_utils/_datetime_parse.py +0 -0
  56. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/_utils/_json.py +0 -0
  57. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/_utils/_logs.py +0 -0
  58. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/_utils/_proxy.py +0 -0
  59. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/_utils/_reflection.py +0 -0
  60. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/_utils/_resources_proxy.py +0 -0
  61. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/_utils/_streams.py +0 -0
  62. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/_utils/_sync.py +0 -0
  63. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/_utils/_transform.py +0 -0
  64. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/_utils/_typing.py +0 -0
  65. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/_utils/_utils.py +0 -0
  66. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/lib/.keep +0 -0
  67. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/pagination.py +0 -0
  68. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/py.typed +0 -0
  69. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/resources/betas/__init__.py +0 -0
  70. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/resources/betas/betas.py +0 -0
  71. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/resources/betas/checkout_sessions.py +0 -0
  72. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/resources/brands.py +0 -0
  73. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/types/base_checkout_intent.py +0 -0
  74. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/types/betas/__init__.py +0 -0
  75. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/types/betas/checkout_session_create_params.py +0 -0
  76. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/types/brand_retrieve_response.py +0 -0
  77. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/types/buyer.py +0 -0
  78. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/types/buyer_param.py +0 -0
  79. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/types/checkout_intent.py +0 -0
  80. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/types/checkout_intent_add_payment_params.py +0 -0
  81. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/types/checkout_intent_confirm_params.py +0 -0
  82. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/types/checkout_intent_create_params.py +0 -0
  83. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/types/checkout_intent_list_params.py +0 -0
  84. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/types/checkout_intent_purchase_params.py +0 -0
  85. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/types/checkout_session.py +0 -0
  86. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/types/money.py +0 -0
  87. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/types/offer.py +0 -0
  88. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/types/product.py +0 -0
  89. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/types/product_availability.py +0 -0
  90. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/types/product_image.py +0 -0
  91. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/types/product_lookup_params.py +0 -0
  92. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/types/variant_selection.py +0 -0
  93. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/src/checkout_intents/types/variant_selection_param.py +0 -0
  94. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/tests/__init__.py +0 -0
  95. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/tests/api_resources/__init__.py +0 -0
  96. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/tests/api_resources/betas/__init__.py +0 -0
  97. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/tests/api_resources/betas/test_checkout_sessions.py +0 -0
  98. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/tests/api_resources/test_brands.py +0 -0
  99. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/tests/api_resources/test_checkout_intents.py +0 -0
  100. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/tests/api_resources/test_products.py +0 -0
  101. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/tests/conftest.py +0 -0
  102. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/tests/sample_file.txt +0 -0
  103. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/tests/test_client.py +0 -0
  104. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/tests/test_deepcopy.py +0 -0
  105. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/tests/test_environment_inference.py +0 -0
  106. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/tests/test_extract_files.py +0 -0
  107. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/tests/test_files.py +0 -0
  108. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/tests/test_models.py +0 -0
  109. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/tests/test_polling.py +0 -0
  110. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/tests/test_qs.py +0 -0
  111. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/tests/test_required_args.py +0 -0
  112. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/tests/test_response.py +0 -0
  113. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/tests/test_streaming.py +0 -0
  114. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/tests/test_transform.py +0 -0
  115. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/tests/test_utils/test_datetime_parse.py +0 -0
  116. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/tests/test_utils/test_json.py +0 -0
  117. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/tests/test_utils/test_proxy.py +0 -0
  118. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/tests/test_utils/test_typing.py +0 -0
  119. {checkout_intents-0.13.0 → checkout_intents-0.14.0}/tests/utils.py +0 -0
@@ -0,0 +1,3 @@
1
+ {
2
+ ".": "0.14.0"
3
+ }
@@ -1,5 +1,31 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.14.0 (2026-02-05)
4
+
5
+ Full Changelog: [v0.13.1...v0.14.0](https://github.com/rye-com/checkout-intents-python/compare/v0.13.1...v0.14.0)
6
+
7
+ ### Features
8
+
9
+ * Add stainless updates ([381560b](https://github.com/rye-com/checkout-intents-python/commit/381560bb9453bcece48d9bb95342c513a4b9ae43))
10
+ * **api:** add shipments tracking ([0d1e95a](https://github.com/rye-com/checkout-intents-python/commit/0d1e95a13e6c469f9608a3dff4b8a7d46b7862b2))
11
+ * Billing: Envelope payment processing fields ([f8b33da](https://github.com/rye-com/checkout-intents-python/commit/f8b33daa590cc016a9597e9a2d20ad21816d5293))
12
+ * Billing: Integrate drawdown payments in order flow ([252e1fa](https://github.com/rye-com/checkout-intents-python/commit/252e1fa3d916aaa45ba3715bd989dfe8aeaa89a4))
13
+ * integrate promo codes discovery to checkout intent flow ([6ad9468](https://github.com/rye-com/checkout-intents-python/commit/6ad9468f90ec2c5de698eebaeec3a7d4656ac1f2))
14
+ * Phase 3: Strategy Interface + Normalizer ([64987c1](https://github.com/rye-com/checkout-intents-python/commit/64987c13d11807eeb23f6e79baaa0179787d1f06))
15
+
16
+
17
+ ### Bug Fixes
18
+
19
+ * **internal:** `PollTimeoutError` import ([b11f9b2](https://github.com/rye-com/checkout-intents-python/commit/b11f9b25a9c9fc57f13ca6d56d66a5bef141ee14))
20
+
21
+ ## 0.13.1 (2026-01-30)
22
+
23
+ Full Changelog: [v0.13.0...v0.13.1](https://github.com/rye-com/checkout-intents-python/compare/v0.13.0...v0.13.1)
24
+
25
+ ### Chores
26
+
27
+ * **docs:** rename "retrieve product" to "lookup product" ([6f7c761](https://github.com/rye-com/checkout-intents-python/commit/6f7c761b96d79e5971cade53f955dcd90e3c3378))
28
+
3
29
  ## 0.13.0 (2026-01-30)
4
30
 
5
31
  Full Changelog: [v0.12.0...v0.13.0](https://github.com/rye-com/checkout-intents-python/compare/v0.12.0...v0.13.0)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: checkout-intents
3
- Version: 0.13.0
3
+ Version: 0.14.0
4
4
  Summary: The official Python library for the Checkout Intents API
5
5
  Project-URL: Homepage, https://github.com/rye-com/checkout-intents-python
6
6
  Project-URL: Repository, https://github.com/rye-com/checkout-intents-python
@@ -0,0 +1,81 @@
1
+ # CheckoutIntents
2
+
3
+ Types:
4
+
5
+ ```python
6
+ from checkout_intents.types import (
7
+ BaseCheckoutIntent,
8
+ Buyer,
9
+ CheckoutIntent,
10
+ Money,
11
+ Offer,
12
+ PaymentMethod,
13
+ VariantSelection,
14
+ )
15
+ ```
16
+
17
+ Methods:
18
+
19
+ - <code title="post /api/v1/checkout-intents">client.checkout_intents.<a href="./src/checkout_intents/resources/checkout_intents/checkout_intents.py">create</a>(\*\*<a href="src/checkout_intents/types/checkout_intent_create_params.py">params</a>) -> <a href="./src/checkout_intents/types/checkout_intent.py">CheckoutIntent</a></code>
20
+ - <code title="get /api/v1/checkout-intents/{id}">client.checkout_intents.<a href="./src/checkout_intents/resources/checkout_intents/checkout_intents.py">retrieve</a>(id) -> <a href="./src/checkout_intents/types/checkout_intent.py">CheckoutIntent</a></code>
21
+ - <code title="get /api/v1/checkout-intents">client.checkout_intents.<a href="./src/checkout_intents/resources/checkout_intents/checkout_intents.py">list</a>(\*\*<a href="src/checkout_intents/types/checkout_intent_list_params.py">params</a>) -> <a href="./src/checkout_intents/types/checkout_intent.py">SyncCursorPagination[CheckoutIntent]</a></code>
22
+ - <code title="post /api/v1/checkout-intents/{id}/payment">client.checkout_intents.<a href="./src/checkout_intents/resources/checkout_intents/checkout_intents.py">add_payment</a>(id, \*\*<a href="src/checkout_intents/types/checkout_intent_add_payment_params.py">params</a>) -> <a href="./src/checkout_intents/types/checkout_intent.py">CheckoutIntent</a></code>
23
+ - <code title="post /api/v1/checkout-intents/{id}/confirm">client.checkout_intents.<a href="./src/checkout_intents/resources/checkout_intents/checkout_intents.py">confirm</a>(id, \*\*<a href="src/checkout_intents/types/checkout_intent_confirm_params.py">params</a>) -> <a href="./src/checkout_intents/types/checkout_intent.py">CheckoutIntent</a></code>
24
+ - <code title="post /api/v1/checkout-intents/purchase">client.checkout_intents.<a href="./src/checkout_intents/resources/checkout_intents/checkout_intents.py">purchase</a>(\*\*<a href="src/checkout_intents/types/checkout_intent_purchase_params.py">params</a>) -> <a href="./src/checkout_intents/types/checkout_intent.py">CheckoutIntent</a></code>
25
+
26
+ ## Shipments
27
+
28
+ Methods:
29
+
30
+ - <code title="get /api/v1/checkout-intents/{id}/shipments">client.checkout_intents.shipments.<a href="./src/checkout_intents/resources/checkout_intents/shipments.py">list</a>(id, \*\*<a href="src/checkout_intents/types/checkout_intents/shipment_list_params.py">params</a>) -> <a href="./src/checkout_intents/types/shipment.py">SyncCursorPagination[Shipment]</a></code>
31
+
32
+ # Shipments
33
+
34
+ Types:
35
+
36
+ ```python
37
+ from checkout_intents.types import Shipment
38
+ ```
39
+
40
+ Methods:
41
+
42
+ - <code title="get /api/v1/shipments/{id}">client.shipments.<a href="./src/checkout_intents/resources/shipments.py">retrieve</a>(id) -> <a href="./src/checkout_intents/types/shipment.py">Shipment</a></code>
43
+ - <code title="get /api/v1/shipments">client.shipments.<a href="./src/checkout_intents/resources/shipments.py">list</a>(\*\*<a href="src/checkout_intents/types/shipment_list_params.py">params</a>) -> <a href="./src/checkout_intents/types/shipment.py">SyncCursorPagination[Shipment]</a></code>
44
+
45
+ # Betas
46
+
47
+ Types:
48
+
49
+ ```python
50
+ from checkout_intents.types import CheckoutSession
51
+ ```
52
+
53
+ ## CheckoutSessions
54
+
55
+ Methods:
56
+
57
+ - <code title="post /api/v1/betas/checkout-sessions">client.betas.checkout_sessions.<a href="./src/checkout_intents/resources/betas/checkout_sessions.py">create</a>(\*\*<a href="src/checkout_intents/types/betas/checkout_session_create_params.py">params</a>) -> <a href="./src/checkout_intents/types/checkout_session.py">CheckoutSession</a></code>
58
+
59
+ # Brands
60
+
61
+ Types:
62
+
63
+ ```python
64
+ from checkout_intents.types import BrandRetrieveResponse
65
+ ```
66
+
67
+ Methods:
68
+
69
+ - <code title="get /api/v1/brands/domain/{domain}">client.brands.<a href="./src/checkout_intents/resources/brands.py">retrieve</a>(domain) -> <a href="./src/checkout_intents/types/brand_retrieve_response.py">BrandRetrieveResponse</a></code>
70
+
71
+ # Products
72
+
73
+ Types:
74
+
75
+ ```python
76
+ from checkout_intents.types import Product, ProductAvailability, ProductImage
77
+ ```
78
+
79
+ Methods:
80
+
81
+ - <code title="get /api/v1/products/lookup">client.products.<a href="./src/checkout_intents/resources/products.py">lookup</a>(\*\*<a href="src/checkout_intents/types/product_lookup_params.py">params</a>) -> <a href="./src/checkout_intents/types/product.py">Product</a></code>
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "checkout-intents"
3
- version = "0.13.0"
3
+ version = "0.14.0"
4
4
  description = "The official Python library for the Checkout Intents API"
5
5
  dynamic = ["readme"]
6
6
  license = "MIT"
@@ -31,11 +31,12 @@ from ._base_client import (
31
31
  )
32
32
 
33
33
  if TYPE_CHECKING:
34
- from .resources import betas, brands, products, checkout_intents
34
+ from .resources import betas, brands, products, shipments, checkout_intents
35
35
  from .resources.brands import BrandsResource, AsyncBrandsResource
36
36
  from .resources.products import ProductsResource, AsyncProductsResource
37
+ from .resources.shipments import ShipmentsResource, AsyncShipmentsResource
37
38
  from .resources.betas.betas import BetasResource, AsyncBetasResource
38
- from .resources.checkout_intents import CheckoutIntentsResource, AsyncCheckoutIntentsResource
39
+ from .resources.checkout_intents.checkout_intents import CheckoutIntentsResource, AsyncCheckoutIntentsResource
39
40
 
40
41
  __all__ = [
41
42
  "ENVIRONMENTS",
@@ -176,6 +177,12 @@ class CheckoutIntents(SyncAPIClient):
176
177
 
177
178
  return CheckoutIntentsResource(self)
178
179
 
180
+ @cached_property
181
+ def shipments(self) -> ShipmentsResource:
182
+ from .resources.shipments import ShipmentsResource
183
+
184
+ return ShipmentsResource(self)
185
+
179
186
  @cached_property
180
187
  def betas(self) -> BetasResource:
181
188
  from .resources.betas import BetasResource
@@ -413,6 +420,12 @@ class AsyncCheckoutIntents(AsyncAPIClient):
413
420
 
414
421
  return AsyncCheckoutIntentsResource(self)
415
422
 
423
+ @cached_property
424
+ def shipments(self) -> AsyncShipmentsResource:
425
+ from .resources.shipments import AsyncShipmentsResource
426
+
427
+ return AsyncShipmentsResource(self)
428
+
416
429
  @cached_property
417
430
  def betas(self) -> AsyncBetasResource:
418
431
  from .resources.betas import AsyncBetasResource
@@ -558,6 +571,12 @@ class CheckoutIntentsWithRawResponse:
558
571
 
559
572
  return CheckoutIntentsResourceWithRawResponse(self._client.checkout_intents)
560
573
 
574
+ @cached_property
575
+ def shipments(self) -> shipments.ShipmentsResourceWithRawResponse:
576
+ from .resources.shipments import ShipmentsResourceWithRawResponse
577
+
578
+ return ShipmentsResourceWithRawResponse(self._client.shipments)
579
+
561
580
  @cached_property
562
581
  def betas(self) -> betas.BetasResourceWithRawResponse:
563
582
  from .resources.betas import BetasResourceWithRawResponse
@@ -589,6 +608,12 @@ class AsyncCheckoutIntentsWithRawResponse:
589
608
 
590
609
  return AsyncCheckoutIntentsResourceWithRawResponse(self._client.checkout_intents)
591
610
 
611
+ @cached_property
612
+ def shipments(self) -> shipments.AsyncShipmentsResourceWithRawResponse:
613
+ from .resources.shipments import AsyncShipmentsResourceWithRawResponse
614
+
615
+ return AsyncShipmentsResourceWithRawResponse(self._client.shipments)
616
+
592
617
  @cached_property
593
618
  def betas(self) -> betas.AsyncBetasResourceWithRawResponse:
594
619
  from .resources.betas import AsyncBetasResourceWithRawResponse
@@ -620,6 +645,12 @@ class CheckoutIntentsWithStreamedResponse:
620
645
 
621
646
  return CheckoutIntentsResourceWithStreamingResponse(self._client.checkout_intents)
622
647
 
648
+ @cached_property
649
+ def shipments(self) -> shipments.ShipmentsResourceWithStreamingResponse:
650
+ from .resources.shipments import ShipmentsResourceWithStreamingResponse
651
+
652
+ return ShipmentsResourceWithStreamingResponse(self._client.shipments)
653
+
623
654
  @cached_property
624
655
  def betas(self) -> betas.BetasResourceWithStreamingResponse:
625
656
  from .resources.betas import BetasResourceWithStreamingResponse
@@ -651,6 +682,12 @@ class AsyncCheckoutIntentsWithStreamedResponse:
651
682
 
652
683
  return AsyncCheckoutIntentsResourceWithStreamingResponse(self._client.checkout_intents)
653
684
 
685
+ @cached_property
686
+ def shipments(self) -> shipments.AsyncShipmentsResourceWithStreamingResponse:
687
+ from .resources.shipments import AsyncShipmentsResourceWithStreamingResponse
688
+
689
+ return AsyncShipmentsResourceWithStreamingResponse(self._client.shipments)
690
+
654
691
  @cached_property
655
692
  def betas(self) -> betas.AsyncBetasResourceWithStreamingResponse:
656
693
  from .resources.betas import AsyncBetasResourceWithStreamingResponse
@@ -1,4 +1,4 @@
1
1
  # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
3
  __title__ = "checkout_intents"
4
- __version__ = "0.13.0" # x-release-please-version
4
+ __version__ = "0.14.0" # x-release-please-version
@@ -24,6 +24,14 @@ from .products import (
24
24
  ProductsResourceWithStreamingResponse,
25
25
  AsyncProductsResourceWithStreamingResponse,
26
26
  )
27
+ from .shipments import (
28
+ ShipmentsResource,
29
+ AsyncShipmentsResource,
30
+ ShipmentsResourceWithRawResponse,
31
+ AsyncShipmentsResourceWithRawResponse,
32
+ ShipmentsResourceWithStreamingResponse,
33
+ AsyncShipmentsResourceWithStreamingResponse,
34
+ )
27
35
  from .checkout_intents import (
28
36
  CheckoutIntentsResource,
29
37
  AsyncCheckoutIntentsResource,
@@ -40,6 +48,12 @@ __all__ = [
40
48
  "AsyncCheckoutIntentsResourceWithRawResponse",
41
49
  "CheckoutIntentsResourceWithStreamingResponse",
42
50
  "AsyncCheckoutIntentsResourceWithStreamingResponse",
51
+ "ShipmentsResource",
52
+ "AsyncShipmentsResource",
53
+ "ShipmentsResourceWithRawResponse",
54
+ "AsyncShipmentsResourceWithRawResponse",
55
+ "ShipmentsResourceWithStreamingResponse",
56
+ "AsyncShipmentsResourceWithStreamingResponse",
43
57
  "BetasResource",
44
58
  "AsyncBetasResource",
45
59
  "BetasResourceWithRawResponse",
@@ -0,0 +1,33 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from .shipments import (
4
+ ShipmentsResource,
5
+ AsyncShipmentsResource,
6
+ ShipmentsResourceWithRawResponse,
7
+ AsyncShipmentsResourceWithRawResponse,
8
+ ShipmentsResourceWithStreamingResponse,
9
+ AsyncShipmentsResourceWithStreamingResponse,
10
+ )
11
+ from .checkout_intents import (
12
+ CheckoutIntentsResource,
13
+ AsyncCheckoutIntentsResource,
14
+ CheckoutIntentsResourceWithRawResponse,
15
+ AsyncCheckoutIntentsResourceWithRawResponse,
16
+ CheckoutIntentsResourceWithStreamingResponse,
17
+ AsyncCheckoutIntentsResourceWithStreamingResponse,
18
+ )
19
+
20
+ __all__ = [
21
+ "ShipmentsResource",
22
+ "AsyncShipmentsResource",
23
+ "ShipmentsResourceWithRawResponse",
24
+ "AsyncShipmentsResourceWithRawResponse",
25
+ "ShipmentsResourceWithStreamingResponse",
26
+ "AsyncShipmentsResourceWithStreamingResponse",
27
+ "CheckoutIntentsResource",
28
+ "AsyncCheckoutIntentsResource",
29
+ "CheckoutIntentsResourceWithRawResponse",
30
+ "AsyncCheckoutIntentsResourceWithRawResponse",
31
+ "CheckoutIntentsResourceWithStreamingResponse",
32
+ "AsyncCheckoutIntentsResourceWithStreamingResponse",
33
+ ]
@@ -8,35 +8,43 @@ from typing_extensions import Literal, TypeGuard
8
8
 
9
9
  import httpx
10
10
 
11
- from ..types import (
11
+ from ...types import (
12
12
  checkout_intent_list_params,
13
13
  checkout_intent_create_params,
14
14
  checkout_intent_confirm_params,
15
15
  checkout_intent_purchase_params,
16
16
  checkout_intent_add_payment_params,
17
17
  )
18
- from .._types import Body, Omit, Query, Headers, NotGiven, SequenceNotStr, omit, not_given
19
- from .._utils import maybe_transform, async_maybe_transform
20
- from .._compat import cached_property
21
- from .._resource import SyncAPIResource, AsyncAPIResource
22
- from .._response import (
18
+ from ..._types import Body, Omit, Query, Headers, NotGiven, SequenceNotStr, omit, not_given
19
+ from ..._utils import maybe_transform, async_maybe_transform
20
+ from ..._compat import cached_property
21
+ from .shipments import (
22
+ ShipmentsResource,
23
+ AsyncShipmentsResource,
24
+ ShipmentsResourceWithRawResponse,
25
+ AsyncShipmentsResourceWithRawResponse,
26
+ ShipmentsResourceWithStreamingResponse,
27
+ AsyncShipmentsResourceWithStreamingResponse,
28
+ )
29
+ from ..._resource import SyncAPIResource, AsyncAPIResource
30
+ from ..._response import (
23
31
  to_raw_response_wrapper,
24
32
  to_streamed_response_wrapper,
25
33
  async_to_raw_response_wrapper,
26
34
  async_to_streamed_response_wrapper,
27
35
  )
28
- from ..pagination import SyncCursorPagination, AsyncCursorPagination
29
- from .._exceptions import PollTimeoutError
30
- from .._base_client import AsyncPaginator, make_request_options
31
- from ..types.buyer_param import BuyerParam
32
- from ..types.checkout_intent import (
36
+ from ...pagination import SyncCursorPagination, AsyncCursorPagination
37
+ from ..._exceptions import PollTimeoutError
38
+ from ..._base_client import AsyncPaginator, make_request_options
39
+ from ...types.buyer_param import BuyerParam
40
+ from ...types.checkout_intent import (
33
41
  CheckoutIntent,
34
42
  FailedCheckoutIntent,
35
43
  CompletedCheckoutIntent,
36
44
  AwaitingConfirmationCheckoutIntent,
37
45
  )
38
- from ..types.payment_method_param import PaymentMethodParam
39
- from ..types.variant_selection_param import VariantSelectionParam
46
+ from ...types.payment_method_param import PaymentMethodParam
47
+ from ...types.variant_selection_param import VariantSelectionParam
40
48
 
41
49
  __all__ = ["CheckoutIntentsResource", "AsyncCheckoutIntentsResource"]
42
50
 
@@ -46,6 +54,10 @@ logger: logging.Logger = logging.getLogger(__name__)
46
54
 
47
55
 
48
56
  class CheckoutIntentsResource(SyncAPIResource):
57
+ @cached_property
58
+ def shipments(self) -> ShipmentsResource:
59
+ return ShipmentsResource(self._client)
60
+
49
61
  @cached_property
50
62
  def with_raw_response(self) -> CheckoutIntentsResourceWithRawResponse:
51
63
  """
@@ -735,6 +747,10 @@ class CheckoutIntentsResource(SyncAPIResource):
735
747
 
736
748
 
737
749
  class AsyncCheckoutIntentsResource(AsyncAPIResource):
750
+ @cached_property
751
+ def shipments(self) -> AsyncShipmentsResource:
752
+ return AsyncShipmentsResource(self._client)
753
+
738
754
  @cached_property
739
755
  def with_raw_response(self) -> AsyncCheckoutIntentsResourceWithRawResponse:
740
756
  """
@@ -1460,6 +1476,10 @@ class CheckoutIntentsResourceWithRawResponse:
1460
1476
  )
1461
1477
 
1462
1478
 
1479
+ @cached_property
1480
+ def shipments(self) -> ShipmentsResourceWithRawResponse:
1481
+ return ShipmentsResourceWithRawResponse(self._checkout_intents.shipments)
1482
+
1463
1483
 
1464
1484
  class AsyncCheckoutIntentsResourceWithRawResponse:
1465
1485
  def __init__(self, checkout_intents: AsyncCheckoutIntentsResource) -> None:
@@ -1497,6 +1517,10 @@ class AsyncCheckoutIntentsResourceWithRawResponse:
1497
1517
  )
1498
1518
 
1499
1519
 
1520
+ @cached_property
1521
+ def shipments(self) -> AsyncShipmentsResourceWithRawResponse:
1522
+ return AsyncShipmentsResourceWithRawResponse(self._checkout_intents.shipments)
1523
+
1500
1524
 
1501
1525
  class CheckoutIntentsResourceWithStreamingResponse:
1502
1526
  def __init__(self, checkout_intents: CheckoutIntentsResource) -> None:
@@ -1534,6 +1558,10 @@ class CheckoutIntentsResourceWithStreamingResponse:
1534
1558
  )
1535
1559
 
1536
1560
 
1561
+ @cached_property
1562
+ def shipments(self) -> ShipmentsResourceWithStreamingResponse:
1563
+ return ShipmentsResourceWithStreamingResponse(self._checkout_intents.shipments)
1564
+
1537
1565
 
1538
1566
  class AsyncCheckoutIntentsResourceWithStreamingResponse:
1539
1567
  def __init__(self, checkout_intents: AsyncCheckoutIntentsResource) -> None:
@@ -1569,3 +1597,7 @@ class AsyncCheckoutIntentsResourceWithStreamingResponse:
1569
1597
  self.confirm_and_poll = async_to_streamed_response_wrapper(
1570
1598
  checkout_intents.confirm_and_poll,
1571
1599
  )
1600
+
1601
+ @cached_property
1602
+ def shipments(self) -> AsyncShipmentsResourceWithStreamingResponse:
1603
+ return AsyncShipmentsResourceWithStreamingResponse(self._checkout_intents.shipments)
@@ -0,0 +1,198 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import Any, cast
6
+
7
+ import httpx
8
+
9
+ from ..._types import Body, Omit, Query, Headers, NotGiven, omit, not_given
10
+ from ..._utils import maybe_transform
11
+ from ..._compat import cached_property
12
+ from ..._resource import SyncAPIResource, AsyncAPIResource
13
+ from ..._response import (
14
+ to_raw_response_wrapper,
15
+ to_streamed_response_wrapper,
16
+ async_to_raw_response_wrapper,
17
+ async_to_streamed_response_wrapper,
18
+ )
19
+ from ...pagination import SyncCursorPagination, AsyncCursorPagination
20
+ from ..._base_client import AsyncPaginator, make_request_options
21
+ from ...types.shipment import Shipment
22
+ from ...types.checkout_intents import shipment_list_params
23
+
24
+ __all__ = ["ShipmentsResource", "AsyncShipmentsResource"]
25
+
26
+
27
+ class ShipmentsResource(SyncAPIResource):
28
+ @cached_property
29
+ def with_raw_response(self) -> ShipmentsResourceWithRawResponse:
30
+ """
31
+ This property can be used as a prefix for any HTTP method call to return
32
+ the raw response object instead of the parsed content.
33
+
34
+ For more information, see https://www.github.com/rye-com/checkout-intents-python#accessing-raw-response-data-eg-headers
35
+ """
36
+ return ShipmentsResourceWithRawResponse(self)
37
+
38
+ @cached_property
39
+ def with_streaming_response(self) -> ShipmentsResourceWithStreamingResponse:
40
+ """
41
+ An alternative to `.with_raw_response` that doesn't eagerly read the response body.
42
+
43
+ For more information, see https://www.github.com/rye-com/checkout-intents-python#with_streaming_response
44
+ """
45
+ return ShipmentsResourceWithStreamingResponse(self)
46
+
47
+ def list(
48
+ self,
49
+ id: str,
50
+ *,
51
+ after: str | Omit = omit,
52
+ before: str | Omit = omit,
53
+ limit: float | Omit = omit,
54
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
55
+ # The extra values given here take precedence over values defined on the client or passed to this method.
56
+ extra_headers: Headers | None = None,
57
+ extra_query: Query | None = None,
58
+ extra_body: Body | None = None,
59
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
60
+ ) -> SyncCursorPagination[Shipment]:
61
+ """
62
+ List shipments for a checkout intent
63
+
64
+ Args:
65
+ extra_headers: Send extra headers
66
+
67
+ extra_query: Add additional query parameters to the request
68
+
69
+ extra_body: Add additional JSON properties to the request
70
+
71
+ timeout: Override the client-level default timeout for this request, in seconds
72
+ """
73
+ if not id:
74
+ raise ValueError(f"Expected a non-empty value for `id` but received {id!r}")
75
+ return self._get_api_list(
76
+ f"/api/v1/checkout-intents/{id}/shipments",
77
+ page=SyncCursorPagination[Shipment],
78
+ options=make_request_options(
79
+ extra_headers=extra_headers,
80
+ extra_query=extra_query,
81
+ extra_body=extra_body,
82
+ timeout=timeout,
83
+ query=maybe_transform(
84
+ {
85
+ "after": after,
86
+ "before": before,
87
+ "limit": limit,
88
+ },
89
+ shipment_list_params.ShipmentListParams,
90
+ ),
91
+ ),
92
+ model=cast(Any, Shipment), # Union types cannot be passed in as arguments in the type system
93
+ )
94
+
95
+
96
+ class AsyncShipmentsResource(AsyncAPIResource):
97
+ @cached_property
98
+ def with_raw_response(self) -> AsyncShipmentsResourceWithRawResponse:
99
+ """
100
+ This property can be used as a prefix for any HTTP method call to return
101
+ the raw response object instead of the parsed content.
102
+
103
+ For more information, see https://www.github.com/rye-com/checkout-intents-python#accessing-raw-response-data-eg-headers
104
+ """
105
+ return AsyncShipmentsResourceWithRawResponse(self)
106
+
107
+ @cached_property
108
+ def with_streaming_response(self) -> AsyncShipmentsResourceWithStreamingResponse:
109
+ """
110
+ An alternative to `.with_raw_response` that doesn't eagerly read the response body.
111
+
112
+ For more information, see https://www.github.com/rye-com/checkout-intents-python#with_streaming_response
113
+ """
114
+ return AsyncShipmentsResourceWithStreamingResponse(self)
115
+
116
+ def list(
117
+ self,
118
+ id: str,
119
+ *,
120
+ after: str | Omit = omit,
121
+ before: str | Omit = omit,
122
+ limit: float | Omit = omit,
123
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
124
+ # The extra values given here take precedence over values defined on the client or passed to this method.
125
+ extra_headers: Headers | None = None,
126
+ extra_query: Query | None = None,
127
+ extra_body: Body | None = None,
128
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
129
+ ) -> AsyncPaginator[Shipment, AsyncCursorPagination[Shipment]]:
130
+ """
131
+ List shipments for a checkout intent
132
+
133
+ Args:
134
+ extra_headers: Send extra headers
135
+
136
+ extra_query: Add additional query parameters to the request
137
+
138
+ extra_body: Add additional JSON properties to the request
139
+
140
+ timeout: Override the client-level default timeout for this request, in seconds
141
+ """
142
+ if not id:
143
+ raise ValueError(f"Expected a non-empty value for `id` but received {id!r}")
144
+ return self._get_api_list(
145
+ f"/api/v1/checkout-intents/{id}/shipments",
146
+ page=AsyncCursorPagination[Shipment],
147
+ options=make_request_options(
148
+ extra_headers=extra_headers,
149
+ extra_query=extra_query,
150
+ extra_body=extra_body,
151
+ timeout=timeout,
152
+ query=maybe_transform(
153
+ {
154
+ "after": after,
155
+ "before": before,
156
+ "limit": limit,
157
+ },
158
+ shipment_list_params.ShipmentListParams,
159
+ ),
160
+ ),
161
+ model=cast(Any, Shipment), # Union types cannot be passed in as arguments in the type system
162
+ )
163
+
164
+
165
+ class ShipmentsResourceWithRawResponse:
166
+ def __init__(self, shipments: ShipmentsResource) -> None:
167
+ self._shipments = shipments
168
+
169
+ self.list = to_raw_response_wrapper(
170
+ shipments.list,
171
+ )
172
+
173
+
174
+ class AsyncShipmentsResourceWithRawResponse:
175
+ def __init__(self, shipments: AsyncShipmentsResource) -> None:
176
+ self._shipments = shipments
177
+
178
+ self.list = async_to_raw_response_wrapper(
179
+ shipments.list,
180
+ )
181
+
182
+
183
+ class ShipmentsResourceWithStreamingResponse:
184
+ def __init__(self, shipments: ShipmentsResource) -> None:
185
+ self._shipments = shipments
186
+
187
+ self.list = to_streamed_response_wrapper(
188
+ shipments.list,
189
+ )
190
+
191
+
192
+ class AsyncShipmentsResourceWithStreamingResponse:
193
+ def __init__(self, shipments: AsyncShipmentsResource) -> None:
194
+ self._shipments = shipments
195
+
196
+ self.list = async_to_streamed_response_wrapper(
197
+ shipments.list,
198
+ )
@@ -53,7 +53,7 @@ class ProductsResource(SyncAPIResource):
53
53
  timeout: float | httpx.Timeout | None | NotGiven = not_given,
54
54
  ) -> Product:
55
55
  """
56
- Retrieve a product's information by URL.
56
+ Lookup a product's information by URL.
57
57
 
58
58
  Args:
59
59
  extra_headers: Send extra headers
@@ -109,7 +109,7 @@ class AsyncProductsResource(AsyncAPIResource):
109
109
  timeout: float | httpx.Timeout | None | NotGiven = not_given,
110
110
  ) -> Product:
111
111
  """
112
- Retrieve a product's information by URL.
112
+ Lookup a product's information by URL.
113
113
 
114
114
  Args:
115
115
  extra_headers: Send extra headers