payi 0.1.0a51__tar.gz → 0.1.0a53__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.

Potentially problematic release.


This version of payi might be problematic. Click here for more details.

Files changed (168) hide show
  1. payi-0.1.0a53/.release-please-manifest.json +3 -0
  2. {payi-0.1.0a51 → payi-0.1.0a53}/CHANGELOG.md +184 -0
  3. {payi-0.1.0a51 → payi-0.1.0a53}/PKG-INFO +2 -2
  4. {payi-0.1.0a51 → payi-0.1.0a53}/README.md +1 -1
  5. {payi-0.1.0a51 → payi-0.1.0a53}/SECURITY.md +2 -2
  6. {payi-0.1.0a51 → payi-0.1.0a53}/pyproject.toml +1 -1
  7. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/_base_client.py +8 -2
  8. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/_client.py +2 -2
  9. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/_version.py +1 -1
  10. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/lib/helpers.py +6 -6
  11. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/lib/instrument.py +43 -18
  12. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/resources/ingest.py +2 -2
  13. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/ingest_bulk_params.py +2 -2
  14. {payi-0.1.0a51 → payi-0.1.0a53}/tests/api_resources/test_ingest.py +80 -38
  15. payi-0.1.0a51/.release-please-manifest.json +0 -3
  16. {payi-0.1.0a51 → payi-0.1.0a53}/.gitignore +0 -0
  17. {payi-0.1.0a51 → payi-0.1.0a53}/CONTRIBUTING.md +0 -0
  18. {payi-0.1.0a51 → payi-0.1.0a53}/LICENSE +0 -0
  19. {payi-0.1.0a51 → payi-0.1.0a53}/api.md +0 -0
  20. {payi-0.1.0a51 → payi-0.1.0a53}/bin/check-release-environment +0 -0
  21. {payi-0.1.0a51 → payi-0.1.0a53}/bin/publish-pypi +0 -0
  22. {payi-0.1.0a51 → payi-0.1.0a53}/examples/.keep +0 -0
  23. {payi-0.1.0a51 → payi-0.1.0a53}/mypy.ini +0 -0
  24. {payi-0.1.0a51 → payi-0.1.0a53}/noxfile.py +0 -0
  25. {payi-0.1.0a51 → payi-0.1.0a53}/release-please-config.json +0 -0
  26. {payi-0.1.0a51 → payi-0.1.0a53}/requirements-dev.lock +0 -0
  27. {payi-0.1.0a51 → payi-0.1.0a53}/requirements.lock +0 -0
  28. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/__init__.py +0 -0
  29. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/_compat.py +0 -0
  30. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/_constants.py +0 -0
  31. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/_exceptions.py +0 -0
  32. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/_files.py +0 -0
  33. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/_models.py +0 -0
  34. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/_qs.py +0 -0
  35. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/_resource.py +0 -0
  36. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/_response.py +0 -0
  37. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/_streaming.py +0 -0
  38. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/_types.py +0 -0
  39. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/_utils/__init__.py +0 -0
  40. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/_utils/_logs.py +0 -0
  41. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/_utils/_proxy.py +0 -0
  42. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/_utils/_reflection.py +0 -0
  43. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/_utils/_streams.py +0 -0
  44. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/_utils/_sync.py +0 -0
  45. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/_utils/_transform.py +0 -0
  46. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/_utils/_typing.py +0 -0
  47. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/_utils/_utils.py +0 -0
  48. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/lib/.keep +0 -0
  49. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/lib/AnthropicInstrumentor.py +0 -0
  50. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/lib/BedrockInstrumentor.py +0 -0
  51. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/lib/OpenAIInstrumentor.py +0 -0
  52. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/lib/Stopwatch.py +0 -0
  53. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/py.typed +0 -0
  54. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/resources/__init__.py +0 -0
  55. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/resources/billing_models.py +0 -0
  56. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/resources/categories/__init__.py +0 -0
  57. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/resources/categories/categories.py +0 -0
  58. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/resources/categories/resources.py +0 -0
  59. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/resources/experiences/__init__.py +0 -0
  60. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/resources/experiences/experiences.py +0 -0
  61. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/resources/experiences/properties.py +0 -0
  62. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/resources/experiences/types/__init__.py +0 -0
  63. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/resources/experiences/types/limit_config.py +0 -0
  64. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/resources/experiences/types/types.py +0 -0
  65. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/resources/limits/__init__.py +0 -0
  66. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/resources/limits/limits.py +0 -0
  67. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/resources/limits/tags.py +0 -0
  68. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/resources/price_modifiers.py +0 -0
  69. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/resources/requests/__init__.py +0 -0
  70. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/resources/requests/properties.py +0 -0
  71. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/resources/requests/requests.py +0 -0
  72. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/resources/requests/result.py +0 -0
  73. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/__init__.py +0 -0
  74. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/billing_model.py +0 -0
  75. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/billing_model_create_params.py +0 -0
  76. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/billing_model_list_response.py +0 -0
  77. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/billing_model_update_params.py +0 -0
  78. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/bulk_ingest_response.py +0 -0
  79. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/categories/__init__.py +0 -0
  80. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/categories/resource_create_params.py +0 -0
  81. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/categories/resource_list_response.py +0 -0
  82. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/category_delete_resource_response.py +0 -0
  83. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/category_delete_response.py +0 -0
  84. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/category_list_resources_response.py +0 -0
  85. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/category_list_response.py +0 -0
  86. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/category_resource_response.py +0 -0
  87. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/category_response.py +0 -0
  88. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/cost_data.py +0 -0
  89. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/cost_details.py +0 -0
  90. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/default_response.py +0 -0
  91. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/experience_instance_response.py +0 -0
  92. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/experiences/__init__.py +0 -0
  93. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/experiences/experience_type.py +0 -0
  94. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/experiences/properties_response.py +0 -0
  95. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/experiences/property_create_params.py +0 -0
  96. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/experiences/type_create_params.py +0 -0
  97. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/experiences/type_list_params.py +0 -0
  98. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/experiences/type_list_response.py +0 -0
  99. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/experiences/type_update_params.py +0 -0
  100. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/experiences/types/__init__.py +0 -0
  101. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/experiences/types/limit_config_create_params.py +0 -0
  102. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/ingest_event_param.py +0 -0
  103. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/ingest_response.py +0 -0
  104. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/ingest_units_params.py +0 -0
  105. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/limit_create_params.py +0 -0
  106. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/limit_history_response.py +0 -0
  107. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/limit_list_params.py +0 -0
  108. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/limit_reset_params.py +0 -0
  109. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/limit_response.py +0 -0
  110. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/limit_update_params.py +0 -0
  111. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/limits/__init__.py +0 -0
  112. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/limits/limit_tags.py +0 -0
  113. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/limits/tag_create_params.py +0 -0
  114. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/limits/tag_create_response.py +0 -0
  115. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/limits/tag_delete_response.py +0 -0
  116. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/limits/tag_list_response.py +0 -0
  117. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/limits/tag_remove_params.py +0 -0
  118. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/limits/tag_remove_response.py +0 -0
  119. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/limits/tag_update_params.py +0 -0
  120. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/limits/tag_update_response.py +0 -0
  121. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/paged_limit_list.py +0 -0
  122. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/pay_i_common_models_api_router_header_info_param.py +0 -0
  123. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/price_modifier.py +0 -0
  124. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/price_modifier_create_params.py +0 -0
  125. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/price_modifier_retrieve_response.py +0 -0
  126. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/price_modifier_update_params.py +0 -0
  127. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/requests/__init__.py +0 -0
  128. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/requests/property_create_params.py +0 -0
  129. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/requests/request_result.py +0 -0
  130. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/requests_data.py +0 -0
  131. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/shared/__init__.py +0 -0
  132. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/shared/evaluation_response.py +0 -0
  133. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/shared/pay_i_common_models_budget_management_cost_details_base.py +0 -0
  134. {payi-0.1.0a51 → payi-0.1.0a53}/src/payi/types/total_cost_data.py +0 -0
  135. {payi-0.1.0a51 → payi-0.1.0a53}/tests/__init__.py +0 -0
  136. {payi-0.1.0a51 → payi-0.1.0a53}/tests/api_resources/__init__.py +0 -0
  137. {payi-0.1.0a51 → payi-0.1.0a53}/tests/api_resources/categories/__init__.py +0 -0
  138. {payi-0.1.0a51 → payi-0.1.0a53}/tests/api_resources/categories/test_resources.py +0 -0
  139. {payi-0.1.0a51 → payi-0.1.0a53}/tests/api_resources/experiences/__init__.py +0 -0
  140. {payi-0.1.0a51 → payi-0.1.0a53}/tests/api_resources/experiences/test_properties.py +0 -0
  141. {payi-0.1.0a51 → payi-0.1.0a53}/tests/api_resources/experiences/test_types.py +0 -0
  142. {payi-0.1.0a51 → payi-0.1.0a53}/tests/api_resources/experiences/types/__init__.py +0 -0
  143. {payi-0.1.0a51 → payi-0.1.0a53}/tests/api_resources/experiences/types/test_limit_config.py +0 -0
  144. {payi-0.1.0a51 → payi-0.1.0a53}/tests/api_resources/limits/__init__.py +0 -0
  145. {payi-0.1.0a51 → payi-0.1.0a53}/tests/api_resources/limits/test_tags.py +0 -0
  146. {payi-0.1.0a51 → payi-0.1.0a53}/tests/api_resources/requests/__init__.py +0 -0
  147. {payi-0.1.0a51 → payi-0.1.0a53}/tests/api_resources/requests/test_properties.py +0 -0
  148. {payi-0.1.0a51 → payi-0.1.0a53}/tests/api_resources/requests/test_result.py +0 -0
  149. {payi-0.1.0a51 → payi-0.1.0a53}/tests/api_resources/test_billing_models.py +0 -0
  150. {payi-0.1.0a51 → payi-0.1.0a53}/tests/api_resources/test_categories.py +0 -0
  151. {payi-0.1.0a51 → payi-0.1.0a53}/tests/api_resources/test_experiences.py +0 -0
  152. {payi-0.1.0a51 → payi-0.1.0a53}/tests/api_resources/test_limits.py +0 -0
  153. {payi-0.1.0a51 → payi-0.1.0a53}/tests/api_resources/test_price_modifiers.py +0 -0
  154. {payi-0.1.0a51 → payi-0.1.0a53}/tests/conftest.py +0 -0
  155. {payi-0.1.0a51 → payi-0.1.0a53}/tests/sample_file.txt +0 -0
  156. {payi-0.1.0a51 → payi-0.1.0a53}/tests/test_client.py +0 -0
  157. {payi-0.1.0a51 → payi-0.1.0a53}/tests/test_deepcopy.py +0 -0
  158. {payi-0.1.0a51 → payi-0.1.0a53}/tests/test_extract_files.py +0 -0
  159. {payi-0.1.0a51 → payi-0.1.0a53}/tests/test_files.py +0 -0
  160. {payi-0.1.0a51 → payi-0.1.0a53}/tests/test_models.py +0 -0
  161. {payi-0.1.0a51 → payi-0.1.0a53}/tests/test_qs.py +0 -0
  162. {payi-0.1.0a51 → payi-0.1.0a53}/tests/test_required_args.py +0 -0
  163. {payi-0.1.0a51 → payi-0.1.0a53}/tests/test_response.py +0 -0
  164. {payi-0.1.0a51 → payi-0.1.0a53}/tests/test_streaming.py +0 -0
  165. {payi-0.1.0a51 → payi-0.1.0a53}/tests/test_transform.py +0 -0
  166. {payi-0.1.0a51 → payi-0.1.0a53}/tests/test_utils/test_proxy.py +0 -0
  167. {payi-0.1.0a51 → payi-0.1.0a53}/tests/test_utils/test_typing.py +0 -0
  168. {payi-0.1.0a51 → payi-0.1.0a53}/tests/utils.py +0 -0
@@ -0,0 +1,3 @@
1
+ {
2
+ ".": "0.1.0-alpha.53"
3
+ }
@@ -1,5 +1,189 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.1.0-alpha.53 (2025-03-01)
4
+
5
+ Full Changelog: [v0.1.0-alpha.52...v0.1.0-alpha.53](https://github.com/pay-i/pay-i-python/compare/v0.1.0-alpha.52...v0.1.0-alpha.53)
6
+
7
+ ### Features
8
+
9
+ * **api:** add Evaluations ([#114](https://github.com/pay-i/pay-i-python/issues/114)) ([9a4a952](https://github.com/pay-i/pay-i-python/commit/9a4a952e5ff57dd869d1bfb35203400eb9e39d38))
10
+ * **api:** api update ([#121](https://github.com/pay-i/pay-i-python/issues/121)) ([4bba6ed](https://github.com/pay-i/pay-i-python/commit/4bba6ed2a6ed1f3b1244e6c78b63d5b3b6e1b527))
11
+ * **api:** api update ([#124](https://github.com/pay-i/pay-i-python/issues/124)) ([6024da4](https://github.com/pay-i/pay-i-python/commit/6024da433b9a7632a34b6566a895d0888d6550ea))
12
+ * **api:** api update ([#125](https://github.com/pay-i/pay-i-python/issues/125)) ([3ed2431](https://github.com/pay-i/pay-i-python/commit/3ed24317882624c96d3dceba89c4a2b91109bc05))
13
+ * **api:** api update ([#127](https://github.com/pay-i/pay-i-python/issues/127)) ([f9f8665](https://github.com/pay-i/pay-i-python/commit/f9f8665278eec1f3b4d081076047460004230a97))
14
+ * **api:** azure openai ([#215](https://github.com/pay-i/pay-i-python/issues/215)) ([fb85b22](https://github.com/pay-i/pay-i-python/commit/fb85b22a598b5b7d3b98b60f788436af031a56dc))
15
+ * **api:** manual updates ([#118](https://github.com/pay-i/pay-i-python/issues/118)) ([cf70992](https://github.com/pay-i/pay-i-python/commit/cf70992e8971e555802517035eba64acef38e00e))
16
+ * **api:** update via SDK Studio ([ba34638](https://github.com/pay-i/pay-i-python/commit/ba3463802b7366b450058f6ccdb13419b3bdbfe1))
17
+ * **api:** update via SDK Studio ([d627f6a](https://github.com/pay-i/pay-i-python/commit/d627f6a3394dc096463d6228272a8a81c4c1d4b4))
18
+ * **api:** update via SDK Studio ([d87c30c](https://github.com/pay-i/pay-i-python/commit/d87c30c4d5c3d7dee3a4b96596c8df9e319ca690))
19
+ * **api:** update via SDK Studio ([ea31540](https://github.com/pay-i/pay-i-python/commit/ea315409811b1b3541c93852e22a4dd5f71be7e7))
20
+ * **api:** update via SDK Studio ([96d12c3](https://github.com/pay-i/pay-i-python/commit/96d12c3c114642a13469ece184eaec8feee50b1a))
21
+ * **api:** update via SDK Studio ([4b2a9a7](https://github.com/pay-i/pay-i-python/commit/4b2a9a7dd2652b6f894a6409f1d2fe9fb3baeeb2))
22
+ * **api:** update via SDK Studio ([ba169b1](https://github.com/pay-i/pay-i-python/commit/ba169b1e70894cb2a2f0497e4781121a334716cd))
23
+ * **api:** update via SDK Studio ([4705b16](https://github.com/pay-i/pay-i-python/commit/4705b16b08f5e1ea678c4c36385ca5f1a7f2f42b))
24
+ * **api:** update via SDK Studio ([#100](https://github.com/pay-i/pay-i-python/issues/100)) ([9e0f07b](https://github.com/pay-i/pay-i-python/commit/9e0f07bec54cbefc0fb45bf81cdee8d812363d81))
25
+ * **api:** update via SDK Studio ([#100](https://github.com/pay-i/pay-i-python/issues/100)) ([923fee3](https://github.com/pay-i/pay-i-python/commit/923fee31f30f15341eb78739e745f62d8961ee53))
26
+ * **api:** update via SDK Studio ([#103](https://github.com/pay-i/pay-i-python/issues/103)) ([0087070](https://github.com/pay-i/pay-i-python/commit/0087070a5a3b51c14d396cafef7c7bb0eda034aa))
27
+ * **api:** update via SDK Studio ([#103](https://github.com/pay-i/pay-i-python/issues/103)) ([48d8eb1](https://github.com/pay-i/pay-i-python/commit/48d8eb1c02216e9d170c219225d2f3374afbaa8e))
28
+ * **api:** update via SDK Studio ([#109](https://github.com/pay-i/pay-i-python/issues/109)) ([0f9abb8](https://github.com/pay-i/pay-i-python/commit/0f9abb871884c83310bcb05dd9485b7a285fcfb3))
29
+ * **api:** update via SDK Studio ([#111](https://github.com/pay-i/pay-i-python/issues/111)) ([c5ab397](https://github.com/pay-i/pay-i-python/commit/c5ab3978fc2285d274a7d4053d46a9b7fbaeec6f))
30
+ * **api:** update via SDK Studio ([#13](https://github.com/pay-i/pay-i-python/issues/13)) ([c35a02e](https://github.com/pay-i/pay-i-python/commit/c35a02e163c67c320566bc77fb24bb6cdd8b4bf6))
31
+ * **api:** update via SDK Studio ([#13](https://github.com/pay-i/pay-i-python/issues/13)) ([0728463](https://github.com/pay-i/pay-i-python/commit/0728463f05f5a34803774a377c3bc30c19055bc3))
32
+ * **api:** update via SDK Studio ([#21](https://github.com/pay-i/pay-i-python/issues/21)) ([daa4259](https://github.com/pay-i/pay-i-python/commit/daa4259dc2156dd84843d3264362a6a53ee842c4))
33
+ * **api:** update via SDK Studio ([#21](https://github.com/pay-i/pay-i-python/issues/21)) ([544adf9](https://github.com/pay-i/pay-i-python/commit/544adf927f8c2418355a839976f87e77668a6c28))
34
+ * **api:** update via SDK Studio ([#23](https://github.com/pay-i/pay-i-python/issues/23)) ([5c2aa35](https://github.com/pay-i/pay-i-python/commit/5c2aa35b45c18fb194b4055884d3abded49aad1e))
35
+ * **api:** update via SDK Studio ([#23](https://github.com/pay-i/pay-i-python/issues/23)) ([9f4fe9d](https://github.com/pay-i/pay-i-python/commit/9f4fe9d46059757afe180fbb92046b11433439b8))
36
+ * **api:** update via SDK Studio ([#25](https://github.com/pay-i/pay-i-python/issues/25)) ([9712710](https://github.com/pay-i/pay-i-python/commit/9712710b0ab67462295a3f7531e3b034a91dc094))
37
+ * **api:** update via SDK Studio ([#25](https://github.com/pay-i/pay-i-python/issues/25)) ([18b8e3f](https://github.com/pay-i/pay-i-python/commit/18b8e3f19bcca7bdde1a01d6cd1c4a50c7d6ec7e))
38
+ * **api:** update via SDK Studio ([#26](https://github.com/pay-i/pay-i-python/issues/26)) ([eebd44e](https://github.com/pay-i/pay-i-python/commit/eebd44e55d800da8cf7b9a01108e78a3446d1283))
39
+ * **api:** update via SDK Studio ([#26](https://github.com/pay-i/pay-i-python/issues/26)) ([1fdcbf7](https://github.com/pay-i/pay-i-python/commit/1fdcbf764fdcdd5ab37fc1ba772d6c263e7aafd9))
40
+ * **api:** update via SDK Studio ([#28](https://github.com/pay-i/pay-i-python/issues/28)) ([972e5e3](https://github.com/pay-i/pay-i-python/commit/972e5e3b8c84df6d3b47ba2dba4137151d9e414c))
41
+ * **api:** update via SDK Studio ([#28](https://github.com/pay-i/pay-i-python/issues/28)) ([6809f97](https://github.com/pay-i/pay-i-python/commit/6809f9771faec4ee541dda53854871c8ff1b41db))
42
+ * **api:** update via SDK Studio ([#30](https://github.com/pay-i/pay-i-python/issues/30)) ([3334f89](https://github.com/pay-i/pay-i-python/commit/3334f89029ba31d70aa759d367be32888a77b603))
43
+ * **api:** update via SDK Studio ([#30](https://github.com/pay-i/pay-i-python/issues/30)) ([3e3bbf2](https://github.com/pay-i/pay-i-python/commit/3e3bbf2eac46d39465dbd13768f218ff7b7a3ba9))
44
+ * **api:** update via SDK Studio ([#34](https://github.com/pay-i/pay-i-python/issues/34)) ([f05bc0e](https://github.com/pay-i/pay-i-python/commit/f05bc0ee6357f32724b3199ea92aa8f5c17723e1))
45
+ * **api:** update via SDK Studio ([#34](https://github.com/pay-i/pay-i-python/issues/34)) ([f40cf18](https://github.com/pay-i/pay-i-python/commit/f40cf18b24fa5ea12eba307fb101c02b626814d3))
46
+ * **api:** update via SDK Studio ([#37](https://github.com/pay-i/pay-i-python/issues/37)) ([b794015](https://github.com/pay-i/pay-i-python/commit/b7940155a65297fda08c4022417a2d78ced5ee3f))
47
+ * **api:** update via SDK Studio ([#37](https://github.com/pay-i/pay-i-python/issues/37)) ([123f681](https://github.com/pay-i/pay-i-python/commit/123f681c2a77810f4cbbe208cdb38e6c77138113))
48
+ * **api:** update via SDK Studio ([#39](https://github.com/pay-i/pay-i-python/issues/39)) ([924942e](https://github.com/pay-i/pay-i-python/commit/924942ed83577f9d6d6bc9709d22e5423a2c50b4))
49
+ * **api:** update via SDK Studio ([#39](https://github.com/pay-i/pay-i-python/issues/39)) ([1eae9e4](https://github.com/pay-i/pay-i-python/commit/1eae9e45e1568de115db588000310cf1f531a324))
50
+ * **api:** update via SDK Studio ([#4](https://github.com/pay-i/pay-i-python/issues/4)) ([08bb37c](https://github.com/pay-i/pay-i-python/commit/08bb37c7ab580b1c0d6adf12f3745191e9023455))
51
+ * **api:** update via SDK Studio ([#4](https://github.com/pay-i/pay-i-python/issues/4)) ([20a797a](https://github.com/pay-i/pay-i-python/commit/20a797a8b7f901d95b04db96976752d1804ce8c0))
52
+ * **api:** update via SDK Studio ([#41](https://github.com/pay-i/pay-i-python/issues/41)) ([5fb515c](https://github.com/pay-i/pay-i-python/commit/5fb515c9399354230bda965857e2dfa090db83b7))
53
+ * **api:** update via SDK Studio ([#41](https://github.com/pay-i/pay-i-python/issues/41)) ([1985ab9](https://github.com/pay-i/pay-i-python/commit/1985ab99496621510dfcfd8395acd572ebede0bf))
54
+ * **api:** update via SDK Studio ([#42](https://github.com/pay-i/pay-i-python/issues/42)) ([acfca49](https://github.com/pay-i/pay-i-python/commit/acfca49e245ef237ca1459f3e80c77e883a7fa4a))
55
+ * **api:** update via SDK Studio ([#42](https://github.com/pay-i/pay-i-python/issues/42)) ([b1cfc00](https://github.com/pay-i/pay-i-python/commit/b1cfc00450982df67ad628df833666e47c9cb922))
56
+ * **api:** update via SDK Studio ([#44](https://github.com/pay-i/pay-i-python/issues/44)) ([8623402](https://github.com/pay-i/pay-i-python/commit/86234024530b7a6b26508c65aad280a3a0fc33c3))
57
+ * **api:** update via SDK Studio ([#44](https://github.com/pay-i/pay-i-python/issues/44)) ([4d66c91](https://github.com/pay-i/pay-i-python/commit/4d66c91473c5cf39a0e1fcaf192a7e9239e7551a))
58
+ * **api:** update via SDK Studio ([#45](https://github.com/pay-i/pay-i-python/issues/45)) ([8129c56](https://github.com/pay-i/pay-i-python/commit/8129c56fe00cc676e56e8318533b98be3234cf8f))
59
+ * **api:** update via SDK Studio ([#45](https://github.com/pay-i/pay-i-python/issues/45)) ([120e341](https://github.com/pay-i/pay-i-python/commit/120e341ab6b296ca13ed387b6895da49a1076620))
60
+ * **api:** update via SDK Studio ([#48](https://github.com/pay-i/pay-i-python/issues/48)) ([5b67542](https://github.com/pay-i/pay-i-python/commit/5b6754279d6b6dcb3b65bda1bf59b0d0092b4bec))
61
+ * **api:** update via SDK Studio ([#48](https://github.com/pay-i/pay-i-python/issues/48)) ([aa5c97a](https://github.com/pay-i/pay-i-python/commit/aa5c97a956fb46f8862706923da7b39415f4e578))
62
+ * **api:** update via SDK Studio ([#50](https://github.com/pay-i/pay-i-python/issues/50)) ([91c7d2c](https://github.com/pay-i/pay-i-python/commit/91c7d2c29430835dfee501520d8b247755e1679d))
63
+ * **api:** update via SDK Studio ([#50](https://github.com/pay-i/pay-i-python/issues/50)) ([84867e5](https://github.com/pay-i/pay-i-python/commit/84867e5209e8d03cef6793fd6d1c54818bb67314))
64
+ * **api:** update via SDK Studio ([#57](https://github.com/pay-i/pay-i-python/issues/57)) ([8d6ce22](https://github.com/pay-i/pay-i-python/commit/8d6ce2229764aeaac2b0229cb70266545759cc7d))
65
+ * **api:** update via SDK Studio ([#57](https://github.com/pay-i/pay-i-python/issues/57)) ([d074560](https://github.com/pay-i/pay-i-python/commit/d074560cf02cbdef5e06e3e2163d2d48e4d2286e))
66
+ * **api:** update via SDK Studio ([#58](https://github.com/pay-i/pay-i-python/issues/58)) ([013389a](https://github.com/pay-i/pay-i-python/commit/013389a52fc87312e7173c34c3f27256e52b7ed5))
67
+ * **api:** update via SDK Studio ([#58](https://github.com/pay-i/pay-i-python/issues/58)) ([4d42f05](https://github.com/pay-i/pay-i-python/commit/4d42f05de13c9f91b0c0805b9d279b3da38aa3d4))
68
+ * **api:** update via SDK Studio ([#59](https://github.com/pay-i/pay-i-python/issues/59)) ([9f895e6](https://github.com/pay-i/pay-i-python/commit/9f895e649a06a9000b1da8ab4a0b2fb779b09db9))
69
+ * **api:** update via SDK Studio ([#59](https://github.com/pay-i/pay-i-python/issues/59)) ([04195a2](https://github.com/pay-i/pay-i-python/commit/04195a2776d85d1904b56771fafb7463a930a6ca))
70
+ * **api:** update via SDK Studio ([#63](https://github.com/pay-i/pay-i-python/issues/63)) ([a38f132](https://github.com/pay-i/pay-i-python/commit/a38f132cdbbbcac2c235c71cd758c38631b12a57))
71
+ * **api:** update via SDK Studio ([#63](https://github.com/pay-i/pay-i-python/issues/63)) ([1c0b056](https://github.com/pay-i/pay-i-python/commit/1c0b056f561228c80f27003206f834075e0d096c))
72
+ * **api:** update via SDK Studio ([#65](https://github.com/pay-i/pay-i-python/issues/65)) ([d32f303](https://github.com/pay-i/pay-i-python/commit/d32f3032d3cb5854617e65e9766447d8ea08f41c))
73
+ * **api:** update via SDK Studio ([#65](https://github.com/pay-i/pay-i-python/issues/65)) ([1b2a13c](https://github.com/pay-i/pay-i-python/commit/1b2a13ce216a7f63f13f921df2114e0218fe9d3a))
74
+ * **api:** update via SDK Studio ([#66](https://github.com/pay-i/pay-i-python/issues/66)) ([990a0cb](https://github.com/pay-i/pay-i-python/commit/990a0cbcfb381f6f72530d869a7beaae6f9fed2d))
75
+ * **api:** update via SDK Studio ([#66](https://github.com/pay-i/pay-i-python/issues/66)) ([fc7bbf2](https://github.com/pay-i/pay-i-python/commit/fc7bbf2b6314cffa670bd869b5d5395bbc053021))
76
+ * **api:** update via SDK Studio ([#67](https://github.com/pay-i/pay-i-python/issues/67)) ([b720656](https://github.com/pay-i/pay-i-python/commit/b72065621d50902959a484a5fe4c05051a5e2caa))
77
+ * **api:** update via SDK Studio ([#67](https://github.com/pay-i/pay-i-python/issues/67)) ([a8a76c2](https://github.com/pay-i/pay-i-python/commit/a8a76c2e6c3e377085c6bc73c46518885abd7ea6))
78
+ * **api:** update via SDK Studio ([#79](https://github.com/pay-i/pay-i-python/issues/79)) ([b7a562e](https://github.com/pay-i/pay-i-python/commit/b7a562ed5f6051fd797ac76087ef095e8c73a8bc))
79
+ * **api:** update via SDK Studio ([#79](https://github.com/pay-i/pay-i-python/issues/79)) ([4b7fa83](https://github.com/pay-i/pay-i-python/commit/4b7fa83674ad3057430f63006b847d43fe09ccbd))
80
+ * **api:** update via SDK Studio ([#83](https://github.com/pay-i/pay-i-python/issues/83)) ([c78b273](https://github.com/pay-i/pay-i-python/commit/c78b273d807606abe94212e0092eff80895da96d))
81
+ * **api:** update via SDK Studio ([#83](https://github.com/pay-i/pay-i-python/issues/83)) ([5674b66](https://github.com/pay-i/pay-i-python/commit/5674b66b718995e019245f7814b49abaed0952d8))
82
+ * **api:** update via SDK Studio ([#86](https://github.com/pay-i/pay-i-python/issues/86)) ([ea1bc86](https://github.com/pay-i/pay-i-python/commit/ea1bc86c6a3671b49ba7394841b5534d7e8c0263))
83
+ * **api:** update via SDK Studio ([#86](https://github.com/pay-i/pay-i-python/issues/86)) ([a140791](https://github.com/pay-i/pay-i-python/commit/a140791293fbd15f1c57e2c4f298b3a43e41eb8d))
84
+ * **api:** update via SDK Studio ([#89](https://github.com/pay-i/pay-i-python/issues/89)) ([b031428](https://github.com/pay-i/pay-i-python/commit/b03142879e9d1798d08288578d078eab98e86353))
85
+ * **api:** update via SDK Studio ([#89](https://github.com/pay-i/pay-i-python/issues/89)) ([3f58f9c](https://github.com/pay-i/pay-i-python/commit/3f58f9cbcb3ab3f92020473e8125ba7162a25e8f))
86
+ * **api:** update via SDK Studio ([#94](https://github.com/pay-i/pay-i-python/issues/94)) ([d3cd372](https://github.com/pay-i/pay-i-python/commit/d3cd3729991f4d0a8882f28f7ad42ebff73866eb))
87
+ * **api:** update via SDK Studio ([#94](https://github.com/pay-i/pay-i-python/issues/94)) ([c7b9be6](https://github.com/pay-i/pay-i-python/commit/c7b9be6453a6008295272e2029a97f2efec80c08))
88
+ * change ingest bugdet_ids and request_tags from str -> list[str] ([bb70818](https://github.com/pay-i/pay-i-python/commit/bb7081850e14648db2ad753a0aef461cdd7b1940))
89
+ * **client:** add `retry_count` to raw response class ([#71](https://github.com/pay-i/pay-i-python/issues/71)) ([88fdd1d](https://github.com/pay-i/pay-i-python/commit/88fdd1df022c74e173db8697659dfba937f73be7))
90
+ * **client:** add `retry_count` to raw response class ([#71](https://github.com/pay-i/pay-i-python/issues/71)) ([506c9b8](https://github.com/pay-i/pay-i-python/commit/506c9b8bbcebb06b152d1f387604076e93ad0ae5))
91
+ * **client:** allow passing `NotGiven` for body ([#241](https://github.com/pay-i/pay-i-python/issues/241)) ([aed3b1b](https://github.com/pay-i/pay-i-python/commit/aed3b1b662a84e12f9ada2016c624c2e8ca4e831))
92
+ * fix ([cffc96b](https://github.com/pay-i/pay-i-python/commit/cffc96b700565b99a9d1b171e7aa820a3a41fb0a))
93
+ * ingest support for resource scope ([17c7435](https://github.com/pay-i/pay-i-python/commit/17c74350cc89c685e705a3d98936058f45c9e357))
94
+ * OpenAI embeddings instrumentation ([c43026c](https://github.com/pay-i/pay-i-python/commit/c43026c72c78a60dddc4ba9c886ad03ec32cee0a))
95
+ * test rename of autogenerated parameter name ([53b0e7d](https://github.com/pay-i/pay-i-python/commit/53b0e7dd2f37573d9683c4aa0c3a86de6d0e3dea))
96
+ * update types and tests ([02af29a](https://github.com/pay-i/pay-i-python/commit/02af29aa209c434083c3ea335ccfc80450deda8c))
97
+
98
+
99
+ ### Bug Fixes
100
+
101
+ * **api:** manual update ([#112](https://github.com/pay-i/pay-i-python/issues/112)) ([bbf745c](https://github.com/pay-i/pay-i-python/commit/bbf745cec5425e0220b410f9a56ea7cdae191935))
102
+ * **client:** correctly serialise array body params ([#77](https://github.com/pay-i/pay-i-python/issues/77)) ([e3770e4](https://github.com/pay-i/pay-i-python/commit/e3770e474a9279eb4f13cbd7d87480d4d6a5bc76))
103
+ * **client:** correctly serialise array body params ([#77](https://github.com/pay-i/pay-i-python/issues/77)) ([f3e11ea](https://github.com/pay-i/pay-i-python/commit/f3e11ea320736c5c6cc949bef6cfb2ba9c707f4c))
104
+ * **client:** mark some request bodies as optional ([aed3b1b](https://github.com/pay-i/pay-i-python/commit/aed3b1b662a84e12f9ada2016c624c2e8ca4e831))
105
+ * preserve kwargs ([c02f093](https://github.com/pay-i/pay-i-python/commit/c02f093f0a87d494a6d28e50f8845550002d5723))
106
+
107
+
108
+ ### Chores
109
+
110
+ * **ci:** bump prism mock server version ([#91](https://github.com/pay-i/pay-i-python/issues/91)) ([6cd2937](https://github.com/pay-i/pay-i-python/commit/6cd29379f24f7a7d261ed6beea8e4833e01eacfd))
111
+ * **ci:** bump prism mock server version ([#91](https://github.com/pay-i/pay-i-python/issues/91)) ([32499c0](https://github.com/pay-i/pay-i-python/commit/32499c05903f3e21e23d03f787291602efbc3e5c))
112
+ * **ci:** limit release doctor target branches ([#54](https://github.com/pay-i/pay-i-python/issues/54)) ([926140e](https://github.com/pay-i/pay-i-python/commit/926140e37dacca0b1e4ae481ed6fb839a154ad88))
113
+ * **ci:** limit release doctor target branches ([#54](https://github.com/pay-i/pay-i-python/issues/54)) ([daeb25a](https://github.com/pay-i/pay-i-python/commit/daeb25a27db669eaf4f36446e9f11d77e570048b))
114
+ * **docs:** document how to do per-request http client customization ([#53](https://github.com/pay-i/pay-i-python/issues/53)) ([ea27182](https://github.com/pay-i/pay-i-python/commit/ea271822df7ba59dc1cafc88e610b800a162c991))
115
+ * **docs:** document how to do per-request http client customization ([#53](https://github.com/pay-i/pay-i-python/issues/53)) ([d7f725f](https://github.com/pay-i/pay-i-python/commit/d7f725f8e025cab8cd799b8f2a5a35a0e31ab3d4))
116
+ * **docs:** update client docstring ([#245](https://github.com/pay-i/pay-i-python/issues/245)) ([91f6763](https://github.com/pay-i/pay-i-python/commit/91f6763d2d62f1acc61e1903f4efe52fd5c089e7))
117
+ * **examples:** minor formatting changes ([#98](https://github.com/pay-i/pay-i-python/issues/98)) ([7cd8cba](https://github.com/pay-i/pay-i-python/commit/7cd8cba158668bb057c8bd154a267a9410f721b2))
118
+ * **examples:** minor formatting changes ([#98](https://github.com/pay-i/pay-i-python/issues/98)) ([f6ca4d9](https://github.com/pay-i/pay-i-python/commit/f6ca4d98da4a0116e4ef34ce183192ef97e9c0d5))
119
+ * go live ([#2](https://github.com/pay-i/pay-i-python/issues/2)) ([81ba939](https://github.com/pay-i/pay-i-python/commit/81ba93934fc18d2ac642af4ce1a7772996cb5030))
120
+ * go live ([#2](https://github.com/pay-i/pay-i-python/issues/2)) ([3aa3d93](https://github.com/pay-i/pay-i-python/commit/3aa3d938deef0fc099c7855d460c3b8c2c8de921))
121
+ * **internal:** add type construction helper ([#60](https://github.com/pay-i/pay-i-python/issues/60)) ([65303cf](https://github.com/pay-i/pay-i-python/commit/65303cf704602ece488a31e8a608be100279a1bc))
122
+ * **internal:** add type construction helper ([#60](https://github.com/pay-i/pay-i-python/issues/60)) ([d3d7789](https://github.com/pay-i/pay-i-python/commit/d3d77890e331aecf9810144a270de2654db5f1de))
123
+ * **internal:** bump pyright ([#70](https://github.com/pay-i/pay-i-python/issues/70)) ([28a35f0](https://github.com/pay-i/pay-i-python/commit/28a35f0d6412c3fd2d0b0f696b5b723069ce7b98))
124
+ * **internal:** bump pyright ([#70](https://github.com/pay-i/pay-i-python/issues/70)) ([872a3f2](https://github.com/pay-i/pay-i-python/commit/872a3f2642f32a930c8472f597d64a2f3912f680))
125
+ * **internal:** bump ruff version ([#73](https://github.com/pay-i/pay-i-python/issues/73)) ([f487b64](https://github.com/pay-i/pay-i-python/commit/f487b6409b3d6ac4eb3378e0eace4f68fbd3342f))
126
+ * **internal:** bump ruff version ([#73](https://github.com/pay-i/pay-i-python/issues/73)) ([1eed80d](https://github.com/pay-i/pay-i-python/commit/1eed80d723cab7c94be6c49606e9fae4a5dbc124))
127
+ * **internal:** codegen related update ([#106](https://github.com/pay-i/pay-i-python/issues/106)) ([2d1f2f7](https://github.com/pay-i/pay-i-python/commit/2d1f2f7db30d05b63ed85b7fe41962c6bfda2a9e))
128
+ * **internal:** codegen related update ([#106](https://github.com/pay-i/pay-i-python/issues/106)) ([61152c1](https://github.com/pay-i/pay-i-python/commit/61152c14d52d64cfb9aa24934635a9825d0aa5ea))
129
+ * **internal:** codegen related update ([#115](https://github.com/pay-i/pay-i-python/issues/115)) ([24d0e16](https://github.com/pay-i/pay-i-python/commit/24d0e160609a46b4996cc3a1a5e6d56b64a70f0c))
130
+ * **internal:** codegen related update ([#119](https://github.com/pay-i/pay-i-python/issues/119)) ([e1e24a4](https://github.com/pay-i/pay-i-python/commit/e1e24a454ef05ea4b25cb5e7a710f48c87613fa8))
131
+ * **internal:** codegen related update ([#52](https://github.com/pay-i/pay-i-python/issues/52)) ([4a469a0](https://github.com/pay-i/pay-i-python/commit/4a469a0691431fe21ca111803ca6e256978cd21b))
132
+ * **internal:** codegen related update ([#52](https://github.com/pay-i/pay-i-python/issues/52)) ([889648d](https://github.com/pay-i/pay-i-python/commit/889648dcf15a5c2c7467cd3e83349c15d00b3dce))
133
+ * **internal:** ensure package is importable in lint cmd ([#92](https://github.com/pay-i/pay-i-python/issues/92)) ([5af85e5](https://github.com/pay-i/pay-i-python/commit/5af85e57dac94be4da96b45b406e683701150365))
134
+ * **internal:** ensure package is importable in lint cmd ([#92](https://github.com/pay-i/pay-i-python/issues/92)) ([1d8471d](https://github.com/pay-i/pay-i-python/commit/1d8471de10eaac594109d1ab9753a0a558f53be1))
135
+ * **internal:** fix devcontainers setup ([#242](https://github.com/pay-i/pay-i-python/issues/242)) ([3d40475](https://github.com/pay-i/pay-i-python/commit/3d404756409540afe7446ee1373bfe4ba7fe023b))
136
+ * **internal:** properly set __pydantic_private__ ([#243](https://github.com/pay-i/pay-i-python/issues/243)) ([dc7c47f](https://github.com/pay-i/pay-i-python/commit/dc7c47ff1501c8c6f5b98ce72b8903895a351d08))
137
+ * **internal:** refactor release doctor script ([#55](https://github.com/pay-i/pay-i-python/issues/55)) ([b0a2707](https://github.com/pay-i/pay-i-python/commit/b0a2707b711baa23ee4af9152b7a3f8558ac8d09))
138
+ * **internal:** refactor release doctor script ([#55](https://github.com/pay-i/pay-i-python/issues/55)) ([c443bc0](https://github.com/pay-i/pay-i-python/commit/c443bc0ec90b53ad763b8795173298b72ff08080))
139
+ * **internal:** remove deprecated ruff config ([#85](https://github.com/pay-i/pay-i-python/issues/85)) ([744ae88](https://github.com/pay-i/pay-i-python/commit/744ae888b57aa5a424e4a4729d7c0e85776b6d08))
140
+ * **internal:** remove deprecated ruff config ([#85](https://github.com/pay-i/pay-i-python/issues/85)) ([bdcd6c7](https://github.com/pay-i/pay-i-python/commit/bdcd6c7cb8d83d1686f7b3ff233bb313421bb982))
141
+ * **internal:** test updates ([#72](https://github.com/pay-i/pay-i-python/issues/72)) ([1ded1fe](https://github.com/pay-i/pay-i-python/commit/1ded1feade7fb2ad98e2e9eb3d2a4c957146cfb8))
142
+ * **internal:** test updates ([#72](https://github.com/pay-i/pay-i-python/issues/72)) ([861bf08](https://github.com/pay-i/pay-i-python/commit/861bf08135ab1fa5c625d9caa4d4bbf00f96839c))
143
+ * **internal:** update pydantic compat helper function ([#74](https://github.com/pay-i/pay-i-python/issues/74)) ([16f34b3](https://github.com/pay-i/pay-i-python/commit/16f34b307bd097cbd0ed81328972727c3ccec581))
144
+ * **internal:** update pydantic compat helper function ([#74](https://github.com/pay-i/pay-i-python/issues/74)) ([35b49b8](https://github.com/pay-i/pay-i-python/commit/35b49b821537c39e5bb1177f7ad8a17b843e34e0))
145
+ * **internal:** update pydantic v1 compat helpers ([#117](https://github.com/pay-i/pay-i-python/issues/117)) ([598362c](https://github.com/pay-i/pay-i-python/commit/598362c8cb2c6fb7a012eec1c17ca540b1ee4a3e))
146
+ * **internal:** use `TypeAlias` marker for type assignments ([#69](https://github.com/pay-i/pay-i-python/issues/69)) ([eebb6e9](https://github.com/pay-i/pay-i-python/commit/eebb6e95c4e8ad497dc178099923e036644bfd4a))
147
+ * **internal:** use `TypeAlias` marker for type assignments ([#69](https://github.com/pay-i/pay-i-python/issues/69)) ([99c736c](https://github.com/pay-i/pay-i-python/commit/99c736ceb18de8b95d5fc812ce5eb3734d1f09f7))
148
+ * **internal:** version bump ([#10](https://github.com/pay-i/pay-i-python/issues/10)) ([fecdc06](https://github.com/pay-i/pay-i-python/commit/fecdc060c15567053f9278258c6e029d7ba068e5))
149
+ * **internal:** version bump ([#102](https://github.com/pay-i/pay-i-python/issues/102)) ([5a2e82c](https://github.com/pay-i/pay-i-python/commit/5a2e82cf92d468534b5156d6390472ef23587dc6))
150
+ * **internal:** version bump ([#105](https://github.com/pay-i/pay-i-python/issues/105)) ([4e7499d](https://github.com/pay-i/pay-i-python/commit/4e7499d645cce95ba8907c08a01f75290e7b4c63))
151
+ * **internal:** version bump ([#113](https://github.com/pay-i/pay-i-python/issues/113)) ([c375532](https://github.com/pay-i/pay-i-python/commit/c375532623f63da11631ade66c5d82032e71a279))
152
+ * **internal:** version bump ([#15](https://github.com/pay-i/pay-i-python/issues/15)) ([45fe2bf](https://github.com/pay-i/pay-i-python/commit/45fe2bf5ae17612d6ba292ad5aa4948b76e713bf))
153
+ * **internal:** version bump ([#18](https://github.com/pay-i/pay-i-python/issues/18)) ([8e76fc4](https://github.com/pay-i/pay-i-python/commit/8e76fc4f4a99729ea2d0ffd449179265f19f2413))
154
+ * **internal:** version bump ([#22](https://github.com/pay-i/pay-i-python/issues/22)) ([4b5aec1](https://github.com/pay-i/pay-i-python/commit/4b5aec1116b6a0709e7e91ea71b95fb0cef01175))
155
+ * **internal:** version bump ([#27](https://github.com/pay-i/pay-i-python/issues/27)) ([bc69988](https://github.com/pay-i/pay-i-python/commit/bc6998870779070079f84eb0012cf355a6d16341))
156
+ * **internal:** version bump ([#3](https://github.com/pay-i/pay-i-python/issues/3)) ([b2822ad](https://github.com/pay-i/pay-i-python/commit/b2822ad9b7d64291a708bcdd33bc9573e2d78ba9))
157
+ * **internal:** version bump ([#31](https://github.com/pay-i/pay-i-python/issues/31)) ([c3024fd](https://github.com/pay-i/pay-i-python/commit/c3024fdd6ed72efc749b59332d72bda4adbb3542))
158
+ * **internal:** version bump ([#47](https://github.com/pay-i/pay-i-python/issues/47)) ([70ad20b](https://github.com/pay-i/pay-i-python/commit/70ad20b368f05fe56b3ee5f1ea8c96f366f282df))
159
+ * **internal:** version bump ([#62](https://github.com/pay-i/pay-i-python/issues/62)) ([3c6a8a3](https://github.com/pay-i/pay-i-python/commit/3c6a8a3f12fb8f649dde37cf489496e6db883892))
160
+ * **internal:** version bump ([#7](https://github.com/pay-i/pay-i-python/issues/7)) ([fbe323e](https://github.com/pay-i/pay-i-python/commit/fbe323e2ad1fcc471b8220d68bc82ef3a67a30b3))
161
+ * **internal:** version bump ([#76](https://github.com/pay-i/pay-i-python/issues/76)) ([b657ab0](https://github.com/pay-i/pay-i-python/commit/b657ab0277a0b09afb839ae0ad3057ebc1d23fef))
162
+ * **internal:** version bump ([#82](https://github.com/pay-i/pay-i-python/issues/82)) ([1ad176b](https://github.com/pay-i/pay-i-python/commit/1ad176b16a9f7d6ee0f7ed75a734356721cad0a2))
163
+ * **internal:** version bump ([#88](https://github.com/pay-i/pay-i-python/issues/88)) ([88588d8](https://github.com/pay-i/pay-i-python/commit/88588d810596d4acd0284f190f2939cf3bb49427))
164
+ * **internal:** version bump ([#93](https://github.com/pay-i/pay-i-python/issues/93)) ([a65550e](https://github.com/pay-i/pay-i-python/commit/a65550efd1e1e979bfcd387f06be70c37402fc1d))
165
+ * **internal:** version bump ([#97](https://github.com/pay-i/pay-i-python/issues/97)) ([b2f4af6](https://github.com/pay-i/pay-i-python/commit/b2f4af6feaebfb822f9562a80e7b8ee49e3bb04e))
166
+ * single header names declaration ([c54f793](https://github.com/pay-i/pay-i-python/commit/c54f793abdf138ea5d742d4d8d3e88bde153caf4))
167
+ * **tests:** update prism version ([#56](https://github.com/pay-i/pay-i-python/issues/56)) ([df7370f](https://github.com/pay-i/pay-i-python/commit/df7370f0aa1c8aa77e3091cb0b7c60238fb35ba0))
168
+ * **tests:** update prism version ([#56](https://github.com/pay-i/pay-i-python/issues/56)) ([c8de639](https://github.com/pay-i/pay-i-python/commit/c8de639a51631a212afc5827db5e85a7a3fbfaad))
169
+ * update SDK settings ([8ff0351](https://github.com/pay-i/pay-i-python/commit/8ff0351ba46df46381eb41cf4eadf655ddb82049))
170
+ * update SDK settings ([7499f33](https://github.com/pay-i/pay-i-python/commit/7499f33bafe555ecce0e6da47131135c568826e4))
171
+ * update SDK settings ([441d968](https://github.com/pay-i/pay-i-python/commit/441d9681112eae338ced67f5186a4a2e371cb99c))
172
+ * update SDK settings ([a3ca848](https://github.com/pay-i/pay-i-python/commit/a3ca8488d686df10ce22f53d69a7ec89f4268131))
173
+
174
+
175
+ ### Documentation
176
+
177
+ * update URLs from stainlessapi.com to stainless.com ([#244](https://github.com/pay-i/pay-i-python/issues/244)) ([35a6787](https://github.com/pay-i/pay-i-python/commit/35a67870e10677ee315a15834207fb25125e98b7))
178
+
179
+ ## 0.1.0-alpha.52 (2025-02-20)
180
+
181
+ Full Changelog: [v0.1.0-alpha.51...v0.1.0-alpha.52](https://github.com/Pay-i/pay-i-python/compare/v0.1.0-alpha.51...v0.1.0-alpha.52)
182
+
183
+ ### Features
184
+
185
+ * feat: ingest support for resource scope ([e2b4ce8](https://github.com/Pay-i/pay-i-python/commit/e2b4ce847b3f54df1bc5be7a78cf81dccd80c88c))
186
+
3
187
  ## 0.1.0-alpha.51 (2025-02-20)
4
188
 
5
189
  Full Changelog: [v0.1.0-alpha.50...v0.1.0-alpha.51](https://github.com/Pay-i/pay-i-python/compare/v0.1.0-alpha.50...v0.1.0-alpha.51)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: payi
3
- Version: 0.1.0a51
3
+ Version: 0.1.0a53
4
4
  Summary: The official Python library for the payi API
5
5
  Project-URL: Homepage, https://github.com/Pay-i/pay-i-python
6
6
  Project-URL: Repository, https://github.com/Pay-i/pay-i-python
@@ -41,7 +41,7 @@ The Payi Python library provides convenient access to the Payi REST API from any
41
41
  application. The library includes type definitions for all request params and response fields,
42
42
  and offers both synchronous and asynchronous clients powered by [httpx](https://github.com/encode/httpx).
43
43
 
44
- It is generated with [Stainless](https://www.stainlessapi.com/).
44
+ It is generated with [Stainless](https://www.stainless.com/).
45
45
 
46
46
  ## Documentation
47
47
 
@@ -6,7 +6,7 @@ The Payi Python library provides convenient access to the Payi REST API from any
6
6
  application. The library includes type definitions for all request params and response fields,
7
7
  and offers both synchronous and asynchronous clients powered by [httpx](https://github.com/encode/httpx).
8
8
 
9
- It is generated with [Stainless](https://www.stainlessapi.com/).
9
+ It is generated with [Stainless](https://www.stainless.com/).
10
10
 
11
11
  ## Documentation
12
12
 
@@ -2,9 +2,9 @@
2
2
 
3
3
  ## Reporting Security Issues
4
4
 
5
- This SDK is generated by [Stainless Software Inc](http://stainlessapi.com). Stainless takes security seriously, and encourages you to report any security vulnerability promptly so that appropriate action can be taken.
5
+ This SDK is generated by [Stainless Software Inc](http://stainless.com). Stainless takes security seriously, and encourages you to report any security vulnerability promptly so that appropriate action can be taken.
6
6
 
7
- To report a security issue, please contact the Stainless team at security@stainlessapi.com.
7
+ To report a security issue, please contact the Stainless team at security@stainless.com.
8
8
 
9
9
  ## Responsible Disclosure
10
10
 
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "payi"
3
- version = "0.1.0-alpha.51"
3
+ version = "0.1.0-alpha.53"
4
4
  description = "The official Python library for the payi API"
5
5
  dynamic = ["readme"]
6
6
  license = "Apache-2.0"
@@ -63,7 +63,7 @@ from ._types import (
63
63
  ModelBuilderProtocol,
64
64
  )
65
65
  from ._utils import is_dict, is_list, asyncify, is_given, lru_cache, is_mapping
66
- from ._compat import model_copy, model_dump
66
+ from ._compat import PYDANTIC_V2, model_copy, model_dump
67
67
  from ._models import GenericModel, FinalRequestOptions, validate_type, construct_type
68
68
  from ._response import (
69
69
  APIResponse,
@@ -207,6 +207,9 @@ class BaseSyncPage(BasePage[_T], Generic[_T]):
207
207
  model: Type[_T],
208
208
  options: FinalRequestOptions,
209
209
  ) -> None:
210
+ if PYDANTIC_V2 and getattr(self, "__pydantic_private__", None) is None:
211
+ self.__pydantic_private__ = {}
212
+
210
213
  self._model = model
211
214
  self._client = client
212
215
  self._options = options
@@ -292,6 +295,9 @@ class BaseAsyncPage(BasePage[_T], Generic[_T]):
292
295
  client: AsyncAPIClient,
293
296
  options: FinalRequestOptions,
294
297
  ) -> None:
298
+ if PYDANTIC_V2 and getattr(self, "__pydantic_private__", None) is None:
299
+ self.__pydantic_private__ = {}
300
+
295
301
  self._model = model
296
302
  self._client = client
297
303
  self._options = options
@@ -518,7 +524,7 @@ class BaseClient(Generic[_HttpxClientT, _DefaultStreamT]):
518
524
  # so that passing a `TypedDict` doesn't cause an error.
519
525
  # https://github.com/microsoft/pyright/issues/3526#event-6715453066
520
526
  params=self.qs.stringify(cast(Mapping[str, Any], params)) if params else None,
521
- json=json_data,
527
+ json=json_data if is_given(json_data) else None,
522
528
  files=files,
523
529
  **kwargs,
524
530
  )
@@ -77,7 +77,7 @@ class Payi(SyncAPIClient):
77
77
  # part of our public interface in the future.
78
78
  _strict_response_validation: bool = False,
79
79
  ) -> None:
80
- """Construct a new synchronous payi client instance.
80
+ """Construct a new synchronous Payi client instance.
81
81
 
82
82
  This automatically infers the `api_key` argument from the `PAYI_API_KEY` environment variable if it is not provided.
83
83
  """
@@ -257,7 +257,7 @@ class AsyncPayi(AsyncAPIClient):
257
257
  # part of our public interface in the future.
258
258
  _strict_response_validation: bool = False,
259
259
  ) -> None:
260
- """Construct a new async payi client instance.
260
+ """Construct a new async AsyncPayi client instance.
261
261
 
262
262
  This automatically infers the `api_key` argument from the `PAYI_API_KEY` environment variable if it is not provided.
263
263
  """
@@ -1,4 +1,4 @@
1
1
  # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
3
  __title__ = "payi"
4
- __version__ = "0.1.0-alpha.51" # x-release-please-version
4
+ __version__ = "0.1.0-alpha.53" # x-release-please-version
@@ -1,4 +1,3 @@
1
- from enum import Enum
2
1
  from typing import Dict, List, Union
3
2
 
4
3
  PAYI_BASE_URL = "https://api.pay-i.com"
@@ -11,12 +10,13 @@ class PayiHeaderNames:
11
10
  user_id:str = "xProxy-User-ID"
12
11
  route_as_resource:str = "xProxy-RouteAs-Resource"
13
12
  provider_base_uri = "xProxy-Provider-BaseUri"
13
+ resource_scope:str = "xProxy-Resource-Scope"
14
14
 
15
- class PayiCategories(Enum):
16
- anthropic = "system.anthropic"
17
- openai = "system.openai"
18
- azure_openai = "system.azureopenai"
19
- aws_bedrock = "system.aws.bedrock"
15
+ class PayiCategories:
16
+ anthropic:str = "system.anthropic"
17
+ openai:str = "system.openai"
18
+ azure_openai:str = "system.azureopenai"
19
+ aws_bedrock:str = "system.aws.bedrock"
20
20
 
21
21
  def create_limit_header_from_ids(limit_ids: List[str]) -> Dict[str, str]:
22
22
  if not isinstance(limit_ids, list): # type: ignore
@@ -41,7 +41,7 @@ class PayiInstrumentor:
41
41
  self,
42
42
  payi: Optional[Payi],
43
43
  apayi: Optional[AsyncPayi],
44
- instruments: Union[Set[PayiCategories], None] = None,
44
+ instruments: Union[Set[str], None] = None,
45
45
  log_prompt_and_response: bool = True,
46
46
  prompt_and_response_logger: Optional[
47
47
  Callable[[str, "dict[str, str]"], None]
@@ -56,7 +56,7 @@ class PayiInstrumentor:
56
56
  self._blocked_limits: set[str] = set()
57
57
  self._exceeded_limits: set[str] = set()
58
58
 
59
- if instruments is None:
59
+ if instruments is None or "*" in instruments:
60
60
  self._instrument_all()
61
61
  else:
62
62
  self._instrument_specific(instruments)
@@ -66,7 +66,7 @@ class PayiInstrumentor:
66
66
  self._instrument_anthropic()
67
67
  self._instrument_aws_bedrock()
68
68
 
69
- def _instrument_specific(self, instruments: Set[PayiCategories]) -> None:
69
+ def _instrument_specific(self, instruments: Set[str]) -> None:
70
70
  if PayiCategories.openai in instruments or PayiCategories.azure_openai in instruments:
71
71
  self._instrument_openai()
72
72
  if PayiCategories.anthropic in instruments:
@@ -375,14 +375,18 @@ class PayiInstrumentor:
375
375
  if len(ingest_extra_headers) > 0:
376
376
  ingest["provider_request_headers"] = [PayICommonModelsAPIRouterHeaderInfoParam(name=k, value=v) for k, v in ingest_extra_headers.items()]
377
377
 
378
- provider_prompt = {}
378
+ provider_prompt: "dict[str, Any]" = {}
379
379
  for k, v in kwargs.items():
380
380
  if k == "messages":
381
381
  provider_prompt[k] = [m.model_dump() if hasattr(m, "model_dump") else m for m in v]
382
382
  elif k in ["extra_headers", "extra_query"]:
383
383
  pass
384
384
  else:
385
- provider_prompt[k] = v
385
+ try:
386
+ json.dumps(v)
387
+ provider_prompt[k] = v
388
+ except (TypeError, ValueError):
389
+ pass
386
390
 
387
391
  if self._log_prompt_and_response:
388
392
  ingest["provider_request_json"] = json.dumps(provider_prompt)
@@ -420,18 +424,28 @@ class PayiInstrumentor:
420
424
  ingest: IngestUnitsParams = {"category": category, "units": {}} # type: ignore
421
425
  ingest["resource"] = kwargs.get("model", "")
422
426
 
423
- if category == "system.openai" and instance and hasattr(instance, "_client"):
427
+ if category == PayiCategories.openai and instance and hasattr(instance, "_client"):
424
428
  from .OpenAIInstrumentor import OpenAiInstrumentor # noqa: I001
425
429
 
426
430
  if OpenAiInstrumentor.is_azure(instance):
427
- resource = extra_headers.pop(PayiHeaderNames.route_as_resource, None)
428
- if not resource:
431
+ route_as_resource = extra_headers.pop(PayiHeaderNames.route_as_resource, None)
432
+ resource_scope = extra_headers.pop(PayiHeaderNames.resource_scope, None)
433
+
434
+ if not route_as_resource:
429
435
  logging.error("Azure OpenAI route as resource not found, not ingesting")
430
436
  return await wrapped(*args, **kwargs)
431
437
 
432
- category = "system.azureopenai"
438
+ if resource_scope:
439
+ if not(resource_scope in ["global", "datazone"] or resource_scope.startswith("region")):
440
+ logging.error("Azure OpenAI invalid resource scope, not ingesting")
441
+ return wrapped(*args, **kwargs)
442
+
443
+ ingest["resource_scope"] = resource_scope
444
+
445
+ category = PayiCategories.azure_openai
446
+
433
447
  ingest["category"] = category
434
- ingest["resource"] = resource
448
+ ingest["resource"] = route_as_resource
435
449
 
436
450
  current_frame = inspect.currentframe()
437
451
  # f_back excludes the current frame, strip() cleans up whitespace and newlines
@@ -511,7 +525,7 @@ class PayiInstrumentor:
511
525
  ) -> Any:
512
526
  context = self.get_context()
513
527
 
514
- is_bedrock:bool = category == "system.aws.bedrock"
528
+ is_bedrock:bool = category == PayiCategories.aws_bedrock
515
529
 
516
530
  if not context:
517
531
  if is_bedrock:
@@ -539,17 +553,28 @@ class PayiInstrumentor:
539
553
  else:
540
554
  ingest["resource"] = kwargs.get("model", "")
541
555
 
542
- if category == "system.openai" and instance and hasattr(instance, "_client"):
543
- from .OpenAIInstrumentor import OpenAiInstrumentor
556
+ if category == PayiCategories.openai and instance and hasattr(instance, "_client"):
557
+ from .OpenAIInstrumentor import OpenAiInstrumentor # noqa: I001
558
+
544
559
  if OpenAiInstrumentor.is_azure(instance):
545
- resource = extra_headers.pop(PayiHeaderNames.route_as_resource, None)
546
- if not resource:
560
+ route_as_resource:str = extra_headers.pop(PayiHeaderNames.route_as_resource, None)
561
+ resource_scope:str = extra_headers.pop(PayiHeaderNames.resource_scope, None)
562
+
563
+ if not route_as_resource:
547
564
  logging.error("Azure OpenAI route as resource not found, not ingesting")
548
565
  return wrapped(*args, **kwargs)
549
566
 
550
- category = "system.azureopenai"
567
+ if resource_scope:
568
+ if not(resource_scope in ["global", "datazone"] or resource_scope.startswith("region")):
569
+ logging.error("Azure OpenAI invalid resource scope, not ingesting")
570
+ return wrapped(*args, **kwargs)
571
+
572
+ ingest["resource_scope"] = resource_scope
573
+
574
+ category = PayiCategories.azure_openai
575
+
551
576
  ingest["category"] = category
552
- ingest["resource"] = resource
577
+ ingest["resource"] = route_as_resource
553
578
 
554
579
  current_frame = inspect.currentframe()
555
580
  # f_back excludes the current frame, strip() cleans up whitespace and newlines
@@ -864,7 +889,7 @@ _instrumentor: Optional[PayiInstrumentor] = None
864
889
 
865
890
  def payi_instrument(
866
891
  payi: Optional[Union[Payi, AsyncPayi, 'list[Union[Payi, AsyncPayi]]']] = None,
867
- instruments: Optional[Set[PayiCategories]] = None,
892
+ instruments: Optional[Set[str]] = None,
868
893
  log_prompt_and_response: bool = True,
869
894
  prompt_and_response_logger: Optional[Callable[[str, "dict[str, str]"], None]] = None,
870
895
  ) -> None:
@@ -54,7 +54,7 @@ class IngestResource(SyncAPIResource):
54
54
  def bulk(
55
55
  self,
56
56
  *,
57
- events: Iterable[IngestEventParam],
57
+ events: Iterable[IngestEventParam] | NotGiven = NOT_GIVEN,
58
58
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
59
59
  # The extra values given here take precedence over values defined on the client or passed to this method.
60
60
  extra_headers: Headers | None = None,
@@ -242,7 +242,7 @@ class AsyncIngestResource(AsyncAPIResource):
242
242
  async def bulk(
243
243
  self,
244
244
  *,
245
- events: Iterable[IngestEventParam],
245
+ events: Iterable[IngestEventParam] | NotGiven = NOT_GIVEN,
246
246
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
247
247
  # The extra values given here take precedence over values defined on the client or passed to this method.
248
248
  extra_headers: Headers | None = None,
@@ -3,7 +3,7 @@
3
3
  from __future__ import annotations
4
4
 
5
5
  from typing import Iterable
6
- from typing_extensions import Required, TypedDict
6
+ from typing_extensions import TypedDict
7
7
 
8
8
  from .ingest_event_param import IngestEventParam
9
9
 
@@ -11,4 +11,4 @@ __all__ = ["IngestBulkParams"]
11
11
 
12
12
 
13
13
  class IngestBulkParams(TypedDict, total=False):
14
- events: Required[Iterable[IngestEventParam]]
14
+ events: Iterable[IngestEventParam]