gmt-python-sdk 0.31.0__tar.gz → 0.32.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 (148) hide show
  1. gmt_python_sdk-0.32.0/.release-please-manifest.json +3 -0
  2. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/CHANGELOG.md +16 -0
  3. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/PKG-INFO +1 -1
  4. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/api.md +33 -0
  5. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/pyproject.toml +1 -1
  6. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/_base_client.py +4 -0
  7. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/_client.py +44 -1
  8. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/_version.py +1 -1
  9. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/resources/__init__.py +14 -0
  10. gmt_python_sdk-0.32.0/src/gmt/resources/telegram/__init__.py +33 -0
  11. gmt_python_sdk-0.32.0/src/gmt/resources/telegram/purchases.py +518 -0
  12. gmt_python_sdk-0.32.0/src/gmt/resources/telegram/telegram.py +308 -0
  13. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/types/__init__.py +4 -0
  14. gmt_python_sdk-0.32.0/src/gmt/types/telegram/__init__.py +12 -0
  15. gmt_python_sdk-0.32.0/src/gmt/types/telegram/purchase_create_premium_params.py +15 -0
  16. gmt_python_sdk-0.32.0/src/gmt/types/telegram/purchase_create_premium_response.py +21 -0
  17. gmt_python_sdk-0.32.0/src/gmt/types/telegram/purchase_create_stars_params.py +15 -0
  18. gmt_python_sdk-0.32.0/src/gmt/types/telegram/purchase_create_stars_response.py +21 -0
  19. gmt_python_sdk-0.32.0/src/gmt/types/telegram/purchase_list_premium_params.py +15 -0
  20. gmt_python_sdk-0.32.0/src/gmt/types/telegram/purchase_list_premium_response.py +22 -0
  21. gmt_python_sdk-0.32.0/src/gmt/types/telegram/purchase_list_stars_params.py +15 -0
  22. gmt_python_sdk-0.32.0/src/gmt/types/telegram/purchase_list_stars_response.py +22 -0
  23. gmt_python_sdk-0.32.0/src/gmt/types/telegram_get_premium_price_params.py +12 -0
  24. gmt_python_sdk-0.32.0/src/gmt/types/telegram_get_premium_price_response.py +13 -0
  25. gmt_python_sdk-0.32.0/src/gmt/types/telegram_get_stars_price_params.py +12 -0
  26. gmt_python_sdk-0.32.0/src/gmt/types/telegram_get_stars_price_response.py +13 -0
  27. gmt_python_sdk-0.32.0/tests/api_resources/telegram/__init__.py +1 -0
  28. gmt_python_sdk-0.32.0/tests/api_resources/telegram/test_purchases.py +326 -0
  29. gmt_python_sdk-0.32.0/tests/api_resources/test_telegram.py +163 -0
  30. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/tests/test_client.py +48 -0
  31. gmt_python_sdk-0.31.0/.release-please-manifest.json +0 -3
  32. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/.gitignore +0 -0
  33. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/CONTRIBUTING.md +0 -0
  34. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/LICENSE +0 -0
  35. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/README.md +0 -0
  36. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/SECURITY.md +0 -0
  37. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/bin/check-release-environment +0 -0
  38. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/bin/publish-pypi +0 -0
  39. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/examples/.keep +0 -0
  40. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/release-please-config.json +0 -0
  41. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/requirements-dev.lock +0 -0
  42. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/__init__.py +0 -0
  43. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/_compat.py +0 -0
  44. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/_constants.py +0 -0
  45. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/_exceptions.py +0 -0
  46. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/_files.py +0 -0
  47. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/_models.py +0 -0
  48. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/_qs.py +0 -0
  49. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/_resource.py +0 -0
  50. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/_response.py +0 -0
  51. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/_streaming.py +0 -0
  52. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/_types.py +0 -0
  53. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/_utils/__init__.py +0 -0
  54. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/_utils/_compat.py +0 -0
  55. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/_utils/_datetime_parse.py +0 -0
  56. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/_utils/_json.py +0 -0
  57. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/_utils/_logs.py +0 -0
  58. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/_utils/_path.py +0 -0
  59. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/_utils/_proxy.py +0 -0
  60. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/_utils/_reflection.py +0 -0
  61. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/_utils/_resources_proxy.py +0 -0
  62. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/_utils/_streams.py +0 -0
  63. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/_utils/_sync.py +0 -0
  64. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/_utils/_transform.py +0 -0
  65. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/_utils/_typing.py +0 -0
  66. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/_utils/_utils.py +0 -0
  67. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/lib/.keep +0 -0
  68. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/pagination.py +0 -0
  69. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/py.typed +0 -0
  70. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/resources/accounts.py +0 -0
  71. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/resources/profile/__init__.py +0 -0
  72. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/resources/profile/discount.py +0 -0
  73. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/resources/profile/profile.py +0 -0
  74. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/resources/profile/referral/__init__.py +0 -0
  75. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/resources/profile/referral/referral.py +0 -0
  76. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/resources/profile/referral/transaction.py +0 -0
  77. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/resources/purchases/__init__.py +0 -0
  78. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/resources/purchases/bulk.py +0 -0
  79. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/resources/purchases/purchases.py +0 -0
  80. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/resources/service.py +0 -0
  81. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/resources/webhooks.py +0 -0
  82. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/types/account_list_countries_params.py +0 -0
  83. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/types/account_list_countries_response.py +0 -0
  84. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/types/account_list_params.py +0 -0
  85. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/types/account_list_response.py +0 -0
  86. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/types/account_retrieve_response.py +0 -0
  87. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/types/profile/__init__.py +0 -0
  88. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/types/profile/discount_retrieve_response.py +0 -0
  89. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/types/profile/referral/__init__.py +0 -0
  90. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/types/profile/referral/transaction_list_params.py +0 -0
  91. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/types/profile/referral/transaction_list_response.py +0 -0
  92. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/types/profile/referral_retrieve_response.py +0 -0
  93. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/types/profile/referral_transfer_balance_params.py +0 -0
  94. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/types/profile/referral_transfer_balance_response.py +0 -0
  95. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/types/profile_change_login_params.py +0 -0
  96. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/types/profile_change_login_response.py +0 -0
  97. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/types/profile_change_password_params.py +0 -0
  98. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/types/profile_change_password_response.py +0 -0
  99. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/types/profile_retrieve_response.py +0 -0
  100. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/types/profile_unbind_telegram_response.py +0 -0
  101. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/types/purchase_create_params.py +0 -0
  102. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/types/purchase_create_response.py +0 -0
  103. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/types/purchase_list_params.py +0 -0
  104. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/types/purchase_list_response.py +0 -0
  105. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/types/purchase_refund_response.py +0 -0
  106. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/types/purchase_request_verification_code_params.py +0 -0
  107. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/types/purchase_request_verification_code_response.py +0 -0
  108. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/types/purchase_retrieve_response.py +0 -0
  109. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/types/purchases/__init__.py +0 -0
  110. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/types/purchases/bulk_create_params.py +0 -0
  111. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/types/purchases/bulk_create_response.py +0 -0
  112. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/types/purchases/bulk_retrieve_response.py +0 -0
  113. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/types/service_get_server_time_response.py +0 -0
  114. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/types/service_health_check_response.py +0 -0
  115. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/types/webhook_test_params.py +0 -0
  116. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/src/gmt/types/webhook_test_response.py +0 -0
  117. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/tests/__init__.py +0 -0
  118. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/tests/api_resources/__init__.py +0 -0
  119. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/tests/api_resources/profile/__init__.py +0 -0
  120. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/tests/api_resources/profile/referral/__init__.py +0 -0
  121. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/tests/api_resources/profile/referral/test_transaction.py +0 -0
  122. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/tests/api_resources/profile/test_discount.py +0 -0
  123. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/tests/api_resources/profile/test_referral.py +0 -0
  124. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/tests/api_resources/purchases/__init__.py +0 -0
  125. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/tests/api_resources/purchases/test_bulk.py +0 -0
  126. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/tests/api_resources/test_accounts.py +0 -0
  127. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/tests/api_resources/test_profile.py +0 -0
  128. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/tests/api_resources/test_purchases.py +0 -0
  129. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/tests/api_resources/test_service.py +0 -0
  130. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/tests/api_resources/test_webhooks.py +0 -0
  131. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/tests/conftest.py +0 -0
  132. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/tests/sample_file.txt +0 -0
  133. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/tests/test_deepcopy.py +0 -0
  134. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/tests/test_extract_files.py +0 -0
  135. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/tests/test_files.py +0 -0
  136. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/tests/test_models.py +0 -0
  137. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/tests/test_qs.py +0 -0
  138. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/tests/test_required_args.py +0 -0
  139. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/tests/test_response.py +0 -0
  140. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/tests/test_streaming.py +0 -0
  141. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/tests/test_transform.py +0 -0
  142. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/tests/test_utils/test_datetime_parse.py +0 -0
  143. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/tests/test_utils/test_json.py +0 -0
  144. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/tests/test_utils/test_path.py +0 -0
  145. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/tests/test_utils/test_proxy.py +0 -0
  146. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/tests/test_utils/test_typing.py +0 -0
  147. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/tests/utils.py +0 -0
  148. {gmt_python_sdk-0.31.0 → gmt_python_sdk-0.32.0}/uv.lock +0 -0
@@ -0,0 +1,3 @@
1
+ {
2
+ ".": "0.32.0"
3
+ }
@@ -1,5 +1,21 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.32.0 (2026-04-08)
4
+
5
+ Full Changelog: [v0.31.1...v0.32.0](https://github.com/cameo6/gmt-python-sdk/compare/v0.31.1...v0.32.0)
6
+
7
+ ### Features
8
+
9
+ * **api:** add telegram ([417ab06](https://github.com/cameo6/gmt-python-sdk/commit/417ab06e9d213911e57247da3ed24820eceed7fa))
10
+
11
+ ## 0.31.1 (2026-04-08)
12
+
13
+ Full Changelog: [v0.31.0...v0.31.1](https://github.com/cameo6/gmt-python-sdk/compare/v0.31.0...v0.31.1)
14
+
15
+ ### Bug Fixes
16
+
17
+ * **client:** preserve hardcoded query params when merging with user params ([415dc38](https://github.com/cameo6/gmt-python-sdk/commit/415dc38641adccd20641ed50500cd22457a0b01f))
18
+
3
19
  ## 0.31.0 (2026-04-03)
4
20
 
5
21
  Full Changelog: [v0.30.0...v0.31.0](https://github.com/cameo6/gmt-python-sdk/compare/v0.30.0...v0.31.0)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: gmt-python-sdk
3
- Version: 0.31.0
3
+ Version: 0.32.0
4
4
  Summary: The official Python library for the gmt API
5
5
  Project-URL: Homepage, https://github.com/cameo6/gmt-python-sdk
6
6
  Project-URL: Repository, https://github.com/cameo6/gmt-python-sdk
@@ -118,6 +118,39 @@ Methods:
118
118
  - <code title="get /v1/purchases/bulk/{purchase_id}">client.purchases.bulk.<a href="./src/gmt/resources/purchases/bulk.py">retrieve</a>(purchase_id) -> <a href="./src/gmt/types/purchases/bulk_retrieve_response.py">BulkRetrieveResponse</a></code>
119
119
  - <code title="get /v1/purchases/bulk/{purchase_id}/download">client.purchases.bulk.<a href="./src/gmt/resources/purchases/bulk.py">download</a>(purchase_id) -> BinaryAPIResponse</code>
120
120
 
121
+ # Telegram
122
+
123
+ Types:
124
+
125
+ ```python
126
+ from gmt.types import TelegramGetPremiumPriceResponse, TelegramGetStarsPriceResponse
127
+ ```
128
+
129
+ Methods:
130
+
131
+ - <code title="get /v1/telegram/premium">client.telegram.<a href="./src/gmt/resources/telegram/telegram.py">get_premium_price</a>(\*\*<a href="src/gmt/types/telegram_get_premium_price_params.py">params</a>) -> <a href="./src/gmt/types/telegram_get_premium_price_response.py">TelegramGetPremiumPriceResponse</a></code>
132
+ - <code title="get /v1/telegram/stars">client.telegram.<a href="./src/gmt/resources/telegram/telegram.py">get_stars_price</a>(\*\*<a href="src/gmt/types/telegram_get_stars_price_params.py">params</a>) -> <a href="./src/gmt/types/telegram_get_stars_price_response.py">TelegramGetStarsPriceResponse</a></code>
133
+
134
+ ## Purchases
135
+
136
+ Types:
137
+
138
+ ```python
139
+ from gmt.types.telegram import (
140
+ PurchaseCreatePremiumResponse,
141
+ PurchaseCreateStarsResponse,
142
+ PurchaseListPremiumResponse,
143
+ PurchaseListStarsResponse,
144
+ )
145
+ ```
146
+
147
+ Methods:
148
+
149
+ - <code title="post /v1/telegram/purchases/premium">client.telegram.purchases.<a href="./src/gmt/resources/telegram/purchases.py">create_premium</a>(\*\*<a href="src/gmt/types/telegram/purchase_create_premium_params.py">params</a>) -> <a href="./src/gmt/types/telegram/purchase_create_premium_response.py">PurchaseCreatePremiumResponse</a></code>
150
+ - <code title="post /v1/telegram/purchases/stars">client.telegram.purchases.<a href="./src/gmt/resources/telegram/purchases.py">create_stars</a>(\*\*<a href="src/gmt/types/telegram/purchase_create_stars_params.py">params</a>) -> <a href="./src/gmt/types/telegram/purchase_create_stars_response.py">PurchaseCreateStarsResponse</a></code>
151
+ - <code title="get /v1/telegram/purchases/premium">client.telegram.purchases.<a href="./src/gmt/resources/telegram/purchases.py">list_premium</a>(\*\*<a href="src/gmt/types/telegram/purchase_list_premium_params.py">params</a>) -> <a href="./src/gmt/types/telegram/purchase_list_premium_response.py">SyncPageNumber[PurchaseListPremiumResponse]</a></code>
152
+ - <code title="get /v1/telegram/purchases/stars">client.telegram.purchases.<a href="./src/gmt/resources/telegram/purchases.py">list_stars</a>(\*\*<a href="src/gmt/types/telegram/purchase_list_stars_params.py">params</a>) -> <a href="./src/gmt/types/telegram/purchase_list_stars_response.py">SyncPageNumber[PurchaseListStarsResponse]</a></code>
153
+
121
154
  # Webhooks
122
155
 
123
156
  Types:
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "gmt-python-sdk"
3
- version = "0.31.0"
3
+ version = "0.32.0"
4
4
  description = "The official Python library for the gmt API"
5
5
  dynamic = ["readme"]
6
6
  license = "Apache-2.0"
@@ -540,6 +540,10 @@ class BaseClient(Generic[_HttpxClientT, _DefaultStreamT]):
540
540
  files = cast(HttpxRequestFiles, ForceMultipartDict())
541
541
 
542
542
  prepared_url = self._prepare_url(options.url)
543
+ # preserve hard-coded query params from the url
544
+ if params and prepared_url.query:
545
+ params = {**dict(prepared_url.params.items()), **params}
546
+ prepared_url = prepared_url.copy_with(raw_path=prepared_url.raw_path.split(b"?", 1)[0])
543
547
  if "_" in prepared_url.host:
544
548
  # work around https://github.com/encode/httpx/discussions/2880
545
549
  kwargs["extensions"] = {"sni_hostname": prepared_url.host.replace("_", "-")}
@@ -31,11 +31,12 @@ from ._base_client import (
31
31
  )
32
32
 
33
33
  if TYPE_CHECKING:
34
- from .resources import profile, service, accounts, webhooks, purchases
34
+ from .resources import profile, service, accounts, telegram, webhooks, purchases
35
35
  from .resources.service import ServiceResource, AsyncServiceResource
36
36
  from .resources.accounts import AccountsResource, AsyncAccountsResource
37
37
  from .resources.webhooks import WebhooksResource, AsyncWebhooksResource
38
38
  from .resources.profile.profile import ProfileResource, AsyncProfileResource
39
+ from .resources.telegram.telegram import TelegramResource, AsyncTelegramResource
39
40
  from .resources.purchases.purchases import PurchasesResource, AsyncPurchasesResource
40
41
 
41
42
  __all__ = ["Timeout", "Transport", "ProxiesTypes", "RequestOptions", "Gmt", "AsyncGmt", "Client", "AsyncClient"]
@@ -128,6 +129,13 @@ class Gmt(SyncAPIClient):
128
129
 
129
130
  return PurchasesResource(self)
130
131
 
132
+ @cached_property
133
+ def telegram(self) -> TelegramResource:
134
+ """Stars and premium subscription for Telegram."""
135
+ from .resources.telegram import TelegramResource
136
+
137
+ return TelegramResource(self)
138
+
131
139
  @cached_property
132
140
  def webhooks(self) -> WebhooksResource:
133
141
  """Webhook testing and documentation.
@@ -361,6 +369,13 @@ class AsyncGmt(AsyncAPIClient):
361
369
 
362
370
  return AsyncPurchasesResource(self)
363
371
 
372
+ @cached_property
373
+ def telegram(self) -> AsyncTelegramResource:
374
+ """Stars and premium subscription for Telegram."""
375
+ from .resources.telegram import AsyncTelegramResource
376
+
377
+ return AsyncTelegramResource(self)
378
+
364
379
  @cached_property
365
380
  def webhooks(self) -> AsyncWebhooksResource:
366
381
  """Webhook testing and documentation.
@@ -549,6 +564,13 @@ class GmtWithRawResponse:
549
564
 
550
565
  return PurchasesResourceWithRawResponse(self._client.purchases)
551
566
 
567
+ @cached_property
568
+ def telegram(self) -> telegram.TelegramResourceWithRawResponse:
569
+ """Stars and premium subscription for Telegram."""
570
+ from .resources.telegram import TelegramResourceWithRawResponse
571
+
572
+ return TelegramResourceWithRawResponse(self._client.telegram)
573
+
552
574
  @cached_property
553
575
  def webhooks(self) -> webhooks.WebhooksResourceWithRawResponse:
554
576
  """Webhook testing and documentation.
@@ -623,6 +645,13 @@ class AsyncGmtWithRawResponse:
623
645
 
624
646
  return AsyncPurchasesResourceWithRawResponse(self._client.purchases)
625
647
 
648
+ @cached_property
649
+ def telegram(self) -> telegram.AsyncTelegramResourceWithRawResponse:
650
+ """Stars and premium subscription for Telegram."""
651
+ from .resources.telegram import AsyncTelegramResourceWithRawResponse
652
+
653
+ return AsyncTelegramResourceWithRawResponse(self._client.telegram)
654
+
626
655
  @cached_property
627
656
  def webhooks(self) -> webhooks.AsyncWebhooksResourceWithRawResponse:
628
657
  """Webhook testing and documentation.
@@ -697,6 +726,13 @@ class GmtWithStreamedResponse:
697
726
 
698
727
  return PurchasesResourceWithStreamingResponse(self._client.purchases)
699
728
 
729
+ @cached_property
730
+ def telegram(self) -> telegram.TelegramResourceWithStreamingResponse:
731
+ """Stars and premium subscription for Telegram."""
732
+ from .resources.telegram import TelegramResourceWithStreamingResponse
733
+
734
+ return TelegramResourceWithStreamingResponse(self._client.telegram)
735
+
700
736
  @cached_property
701
737
  def webhooks(self) -> webhooks.WebhooksResourceWithStreamingResponse:
702
738
  """Webhook testing and documentation.
@@ -771,6 +807,13 @@ class AsyncGmtWithStreamedResponse:
771
807
 
772
808
  return AsyncPurchasesResourceWithStreamingResponse(self._client.purchases)
773
809
 
810
+ @cached_property
811
+ def telegram(self) -> telegram.AsyncTelegramResourceWithStreamingResponse:
812
+ """Stars and premium subscription for Telegram."""
813
+ from .resources.telegram import AsyncTelegramResourceWithStreamingResponse
814
+
815
+ return AsyncTelegramResourceWithStreamingResponse(self._client.telegram)
816
+
774
817
  @cached_property
775
818
  def webhooks(self) -> webhooks.AsyncWebhooksResourceWithStreamingResponse:
776
819
  """Webhook testing and documentation.
@@ -1,4 +1,4 @@
1
1
  # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
3
  __title__ = "gmt"
4
- __version__ = "0.31.0" # x-release-please-version
4
+ __version__ = "0.32.0" # x-release-please-version
@@ -24,6 +24,14 @@ from .accounts import (
24
24
  AccountsResourceWithStreamingResponse,
25
25
  AsyncAccountsResourceWithStreamingResponse,
26
26
  )
27
+ from .telegram import (
28
+ TelegramResource,
29
+ AsyncTelegramResource,
30
+ TelegramResourceWithRawResponse,
31
+ AsyncTelegramResourceWithRawResponse,
32
+ TelegramResourceWithStreamingResponse,
33
+ AsyncTelegramResourceWithStreamingResponse,
34
+ )
27
35
  from .webhooks import (
28
36
  WebhooksResource,
29
37
  AsyncWebhooksResource,
@@ -66,6 +74,12 @@ __all__ = [
66
74
  "AsyncPurchasesResourceWithRawResponse",
67
75
  "PurchasesResourceWithStreamingResponse",
68
76
  "AsyncPurchasesResourceWithStreamingResponse",
77
+ "TelegramResource",
78
+ "AsyncTelegramResource",
79
+ "TelegramResourceWithRawResponse",
80
+ "AsyncTelegramResourceWithRawResponse",
81
+ "TelegramResourceWithStreamingResponse",
82
+ "AsyncTelegramResourceWithStreamingResponse",
69
83
  "WebhooksResource",
70
84
  "AsyncWebhooksResource",
71
85
  "WebhooksResourceWithRawResponse",
@@ -0,0 +1,33 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from .telegram import (
4
+ TelegramResource,
5
+ AsyncTelegramResource,
6
+ TelegramResourceWithRawResponse,
7
+ AsyncTelegramResourceWithRawResponse,
8
+ TelegramResourceWithStreamingResponse,
9
+ AsyncTelegramResourceWithStreamingResponse,
10
+ )
11
+ from .purchases import (
12
+ PurchasesResource,
13
+ AsyncPurchasesResource,
14
+ PurchasesResourceWithRawResponse,
15
+ AsyncPurchasesResourceWithRawResponse,
16
+ PurchasesResourceWithStreamingResponse,
17
+ AsyncPurchasesResourceWithStreamingResponse,
18
+ )
19
+
20
+ __all__ = [
21
+ "PurchasesResource",
22
+ "AsyncPurchasesResource",
23
+ "PurchasesResourceWithRawResponse",
24
+ "AsyncPurchasesResourceWithRawResponse",
25
+ "PurchasesResourceWithStreamingResponse",
26
+ "AsyncPurchasesResourceWithStreamingResponse",
27
+ "TelegramResource",
28
+ "AsyncTelegramResource",
29
+ "TelegramResourceWithRawResponse",
30
+ "AsyncTelegramResourceWithRawResponse",
31
+ "TelegramResourceWithStreamingResponse",
32
+ "AsyncTelegramResourceWithStreamingResponse",
33
+ ]