payi 0.1.0a38__tar.gz → 0.1.0a39__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.0a39/.release-please-manifest.json +3 -0
  2. {payi-0.1.0a38 → payi-0.1.0a39}/CHANGELOG.md +8 -0
  3. {payi-0.1.0a38 → payi-0.1.0a39}/PKG-INFO +1 -1
  4. {payi-0.1.0a38 → payi-0.1.0a39}/api.md +1 -8
  5. {payi-0.1.0a38 → payi-0.1.0a39}/pyproject.toml +1 -1
  6. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/_version.py +1 -1
  7. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/resources/ingest.py +0 -83
  8. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/__init__.py +0 -3
  9. {payi-0.1.0a38 → payi-0.1.0a39}/tests/api_resources/test_ingest.py +1 -99
  10. payi-0.1.0a38/.release-please-manifest.json +0 -3
  11. payi-0.1.0a38/src/payi/types/bulk_ingest_response.py +0 -51
  12. payi-0.1.0a38/src/payi/types/ingest_bulk_params.py +0 -14
  13. payi-0.1.0a38/src/payi/types/ingest_event_param.py +0 -60
  14. {payi-0.1.0a38 → payi-0.1.0a39}/.gitignore +0 -0
  15. {payi-0.1.0a38 → payi-0.1.0a39}/CONTRIBUTING.md +0 -0
  16. {payi-0.1.0a38 → payi-0.1.0a39}/LICENSE +0 -0
  17. {payi-0.1.0a38 → payi-0.1.0a39}/README.md +0 -0
  18. {payi-0.1.0a38 → payi-0.1.0a39}/SECURITY.md +0 -0
  19. {payi-0.1.0a38 → payi-0.1.0a39}/bin/check-release-environment +0 -0
  20. {payi-0.1.0a38 → payi-0.1.0a39}/bin/publish-pypi +0 -0
  21. {payi-0.1.0a38 → payi-0.1.0a39}/examples/.keep +0 -0
  22. {payi-0.1.0a38 → payi-0.1.0a39}/mypy.ini +0 -0
  23. {payi-0.1.0a38 → payi-0.1.0a39}/noxfile.py +0 -0
  24. {payi-0.1.0a38 → payi-0.1.0a39}/release-please-config.json +0 -0
  25. {payi-0.1.0a38 → payi-0.1.0a39}/requirements-dev.lock +0 -0
  26. {payi-0.1.0a38 → payi-0.1.0a39}/requirements.lock +0 -0
  27. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/__init__.py +0 -0
  28. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/_base_client.py +0 -0
  29. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/_client.py +0 -0
  30. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/_compat.py +0 -0
  31. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/_constants.py +0 -0
  32. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/_exceptions.py +0 -0
  33. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/_files.py +0 -0
  34. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/_models.py +0 -0
  35. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/_qs.py +0 -0
  36. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/_resource.py +0 -0
  37. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/_response.py +0 -0
  38. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/_streaming.py +0 -0
  39. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/_types.py +0 -0
  40. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/_utils/__init__.py +0 -0
  41. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/_utils/_logs.py +0 -0
  42. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/_utils/_proxy.py +0 -0
  43. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/_utils/_reflection.py +0 -0
  44. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/_utils/_streams.py +0 -0
  45. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/_utils/_sync.py +0 -0
  46. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/_utils/_transform.py +0 -0
  47. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/_utils/_typing.py +0 -0
  48. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/_utils/_utils.py +0 -0
  49. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/lib/.keep +0 -0
  50. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/lib/AnthropicInstrumentor.py +0 -0
  51. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/lib/Instruments.py +0 -0
  52. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/lib/OpenAIInstrumentor.py +0 -0
  53. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/lib/Stopwatch.py +0 -0
  54. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/lib/helpers.py +0 -0
  55. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/lib/instrument.py +0 -0
  56. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/py.typed +0 -0
  57. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/resources/__init__.py +0 -0
  58. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/resources/billing_models.py +0 -0
  59. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/resources/categories/__init__.py +0 -0
  60. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/resources/categories/categories.py +0 -0
  61. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/resources/categories/resources.py +0 -0
  62. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/resources/experiences/__init__.py +0 -0
  63. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/resources/experiences/experiences.py +0 -0
  64. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/resources/experiences/properties.py +0 -0
  65. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/resources/experiences/types/__init__.py +0 -0
  66. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/resources/experiences/types/limit_config.py +0 -0
  67. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/resources/experiences/types/types.py +0 -0
  68. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/resources/limits/__init__.py +0 -0
  69. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/resources/limits/limits.py +0 -0
  70. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/resources/limits/tags.py +0 -0
  71. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/resources/price_modifiers.py +0 -0
  72. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/resources/requests/__init__.py +0 -0
  73. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/resources/requests/properties.py +0 -0
  74. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/resources/requests/requests.py +0 -0
  75. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/resources/requests/result.py +0 -0
  76. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/billing_model.py +0 -0
  77. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/billing_model_create_params.py +0 -0
  78. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/billing_model_list_response.py +0 -0
  79. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/billing_model_update_params.py +0 -0
  80. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/categories/__init__.py +0 -0
  81. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/categories/resource_create_params.py +0 -0
  82. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/categories/resource_list_response.py +0 -0
  83. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/category_delete_resource_response.py +0 -0
  84. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/category_delete_response.py +0 -0
  85. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/category_list_resources_response.py +0 -0
  86. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/category_list_response.py +0 -0
  87. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/category_resource_response.py +0 -0
  88. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/category_response.py +0 -0
  89. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/cost_data.py +0 -0
  90. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/cost_details.py +0 -0
  91. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/default_response.py +0 -0
  92. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/experience_instance_response.py +0 -0
  93. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/experiences/__init__.py +0 -0
  94. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/experiences/experience_type.py +0 -0
  95. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/experiences/properties_response.py +0 -0
  96. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/experiences/property_create_params.py +0 -0
  97. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/experiences/type_create_params.py +0 -0
  98. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/experiences/type_list_params.py +0 -0
  99. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/experiences/type_list_response.py +0 -0
  100. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/experiences/type_update_params.py +0 -0
  101. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/experiences/types/__init__.py +0 -0
  102. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/experiences/types/limit_config_create_params.py +0 -0
  103. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/ingest_response.py +0 -0
  104. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/ingest_units_params.py +0 -0
  105. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/limit_create_params.py +0 -0
  106. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/limit_history_response.py +0 -0
  107. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/limit_list_params.py +0 -0
  108. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/limit_reset_params.py +0 -0
  109. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/limit_response.py +0 -0
  110. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/limit_update_params.py +0 -0
  111. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/limits/__init__.py +0 -0
  112. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/limits/limit_tags.py +0 -0
  113. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/limits/tag_create_params.py +0 -0
  114. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/limits/tag_create_response.py +0 -0
  115. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/limits/tag_delete_response.py +0 -0
  116. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/limits/tag_list_response.py +0 -0
  117. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/limits/tag_remove_params.py +0 -0
  118. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/limits/tag_remove_response.py +0 -0
  119. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/limits/tag_update_params.py +0 -0
  120. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/limits/tag_update_response.py +0 -0
  121. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/paged_limit_list.py +0 -0
  122. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/pay_i_common_models_api_router_header_info_param.py +0 -0
  123. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/price_modifier.py +0 -0
  124. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/price_modifier_create_params.py +0 -0
  125. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/price_modifier_retrieve_response.py +0 -0
  126. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/price_modifier_update_params.py +0 -0
  127. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/requests/__init__.py +0 -0
  128. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/requests/property_create_params.py +0 -0
  129. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/requests/request_result.py +0 -0
  130. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/requests_data.py +0 -0
  131. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/shared/__init__.py +0 -0
  132. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/shared/evaluation_response.py +0 -0
  133. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/shared/pay_i_common_models_budget_management_cost_details_base.py +0 -0
  134. {payi-0.1.0a38 → payi-0.1.0a39}/src/payi/types/total_cost_data.py +0 -0
  135. {payi-0.1.0a38 → payi-0.1.0a39}/tests/__init__.py +0 -0
  136. {payi-0.1.0a38 → payi-0.1.0a39}/tests/api_resources/__init__.py +0 -0
  137. {payi-0.1.0a38 → payi-0.1.0a39}/tests/api_resources/categories/__init__.py +0 -0
  138. {payi-0.1.0a38 → payi-0.1.0a39}/tests/api_resources/categories/test_resources.py +0 -0
  139. {payi-0.1.0a38 → payi-0.1.0a39}/tests/api_resources/experiences/__init__.py +0 -0
  140. {payi-0.1.0a38 → payi-0.1.0a39}/tests/api_resources/experiences/test_properties.py +0 -0
  141. {payi-0.1.0a38 → payi-0.1.0a39}/tests/api_resources/experiences/test_types.py +0 -0
  142. {payi-0.1.0a38 → payi-0.1.0a39}/tests/api_resources/experiences/types/__init__.py +0 -0
  143. {payi-0.1.0a38 → payi-0.1.0a39}/tests/api_resources/experiences/types/test_limit_config.py +0 -0
  144. {payi-0.1.0a38 → payi-0.1.0a39}/tests/api_resources/limits/__init__.py +0 -0
  145. {payi-0.1.0a38 → payi-0.1.0a39}/tests/api_resources/limits/test_tags.py +0 -0
  146. {payi-0.1.0a38 → payi-0.1.0a39}/tests/api_resources/requests/__init__.py +0 -0
  147. {payi-0.1.0a38 → payi-0.1.0a39}/tests/api_resources/requests/test_properties.py +0 -0
  148. {payi-0.1.0a38 → payi-0.1.0a39}/tests/api_resources/requests/test_result.py +0 -0
  149. {payi-0.1.0a38 → payi-0.1.0a39}/tests/api_resources/test_billing_models.py +0 -0
  150. {payi-0.1.0a38 → payi-0.1.0a39}/tests/api_resources/test_categories.py +0 -0
  151. {payi-0.1.0a38 → payi-0.1.0a39}/tests/api_resources/test_experiences.py +0 -0
  152. {payi-0.1.0a38 → payi-0.1.0a39}/tests/api_resources/test_limits.py +0 -0
  153. {payi-0.1.0a38 → payi-0.1.0a39}/tests/api_resources/test_price_modifiers.py +0 -0
  154. {payi-0.1.0a38 → payi-0.1.0a39}/tests/conftest.py +0 -0
  155. {payi-0.1.0a38 → payi-0.1.0a39}/tests/sample_file.txt +0 -0
  156. {payi-0.1.0a38 → payi-0.1.0a39}/tests/test_client.py +0 -0
  157. {payi-0.1.0a38 → payi-0.1.0a39}/tests/test_deepcopy.py +0 -0
  158. {payi-0.1.0a38 → payi-0.1.0a39}/tests/test_extract_files.py +0 -0
  159. {payi-0.1.0a38 → payi-0.1.0a39}/tests/test_files.py +0 -0
  160. {payi-0.1.0a38 → payi-0.1.0a39}/tests/test_models.py +0 -0
  161. {payi-0.1.0a38 → payi-0.1.0a39}/tests/test_qs.py +0 -0
  162. {payi-0.1.0a38 → payi-0.1.0a39}/tests/test_required_args.py +0 -0
  163. {payi-0.1.0a38 → payi-0.1.0a39}/tests/test_response.py +0 -0
  164. {payi-0.1.0a38 → payi-0.1.0a39}/tests/test_streaming.py +0 -0
  165. {payi-0.1.0a38 → payi-0.1.0a39}/tests/test_transform.py +0 -0
  166. {payi-0.1.0a38 → payi-0.1.0a39}/tests/test_utils/test_proxy.py +0 -0
  167. {payi-0.1.0a38 → payi-0.1.0a39}/tests/test_utils/test_typing.py +0 -0
  168. {payi-0.1.0a38 → payi-0.1.0a39}/tests/utils.py +0 -0
@@ -0,0 +1,3 @@
1
+ {
2
+ ".": "0.1.0-alpha.39"
3
+ }
@@ -1,5 +1,13 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.1.0-alpha.39 (2025-01-31)
4
+
5
+ Full Changelog: [v0.1.0-alpha.38...v0.1.0-alpha.39](https://github.com/Pay-i/pay-i-python/compare/v0.1.0-alpha.38...v0.1.0-alpha.39)
6
+
7
+ ### Features
8
+
9
+ * **api:** manual updates ([#194](https://github.com/Pay-i/pay-i-python/issues/194)) ([d31bb11](https://github.com/Pay-i/pay-i-python/commit/d31bb11b5138e4f23b5d5a7eadd09843b2c9df76))
10
+
3
11
  ## 0.1.0-alpha.38 (2025-01-31)
4
12
 
5
13
  Full Changelog: [v0.1.0-alpha.37...v0.1.0-alpha.38](https://github.com/Pay-i/pay-i-python/compare/v0.1.0-alpha.37...v0.1.0-alpha.38)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: payi
3
- Version: 0.1.0a38
3
+ Version: 0.1.0a39
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
@@ -58,18 +58,11 @@ Methods:
58
58
  Types:
59
59
 
60
60
  ```python
61
- from payi.types import (
62
- BulkIngestResponse,
63
- IngestEvent,
64
- IngestResponse,
65
- IngestUnits,
66
- PayICommonModelsAPIRouterHeaderInfo,
67
- )
61
+ from payi.types import IngestResponse, IngestUnits, PayICommonModelsAPIRouterHeaderInfo
68
62
  ```
69
63
 
70
64
  Methods:
71
65
 
72
- - <code title="post /api/v1/ingest/bulk">client.ingest.<a href="./src/payi/resources/ingest.py">bulk</a>(\*\*<a href="src/payi/types/ingest_bulk_params.py">params</a>) -> <a href="./src/payi/types/bulk_ingest_response.py">BulkIngestResponse</a></code>
73
66
  - <code title="post /api/v1/ingest">client.ingest.<a href="./src/payi/resources/ingest.py">units</a>(\*\*<a href="src/payi/types/ingest_units_params.py">params</a>) -> <a href="./src/payi/types/ingest_response.py">IngestResponse</a></code>
74
67
 
75
68
  # Categories
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "payi"
3
- version = "0.1.0-alpha.38"
3
+ version = "0.1.0-alpha.39"
4
4
  description = "The official Python library for the payi API"
5
5
  dynamic = ["readme"]
6
6
  license = "Apache-2.0"
@@ -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.38" # x-release-please-version
4
+ __version__ = "0.1.0-alpha.39" # x-release-please-version
@@ -24,8 +24,6 @@ from .._response import (
24
24
  )
25
25
  from .._base_client import make_request_options
26
26
  from ..types.ingest_response import IngestResponse
27
- from ..types.ingest_event_param import IngestEventParam
28
- from ..types.bulk_ingest_response import BulkIngestResponse
29
27
  from ..types.pay_i_common_models_api_router_header_info_param import PayICommonModelsAPIRouterHeaderInfoParam
30
28
 
31
29
  __all__ = ["IngestResource", "AsyncIngestResource"]
@@ -51,41 +49,6 @@ class IngestResource(SyncAPIResource):
51
49
  """
52
50
  return IngestResourceWithStreamingResponse(self)
53
51
 
54
- def bulk(
55
- self,
56
- *,
57
- events: Iterable[IngestEventParam],
58
- # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
59
- # The extra values given here take precedence over values defined on the client or passed to this method.
60
- extra_headers: Headers | None = None,
61
- extra_query: Query | None = None,
62
- extra_body: Body | None = None,
63
- timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
64
- ) -> BulkIngestResponse:
65
- """
66
- Bulk Ingest
67
-
68
- Args:
69
-
70
- items (Iterable[IngestUnitsParams]): The items to ingest
71
-
72
- extra_headers: Send extra headers
73
-
74
- extra_query: Add additional query parameters to the request
75
-
76
- extra_body: Add additional JSON properties to the request
77
-
78
- timeout: Override the client-level default timeout for this request, in seconds
79
- """
80
- return self._post(
81
- "/api/v1/ingest/bulk",
82
- body=maybe_transform(events, Iterable[IngestEventParam]),
83
- options=make_request_options(
84
- extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
85
- ),
86
- cast_to=BulkIngestResponse,
87
- )
88
-
89
52
  def units(
90
53
  self,
91
54
  *,
@@ -237,40 +200,6 @@ class AsyncIngestResource(AsyncAPIResource):
237
200
  """
238
201
  return AsyncIngestResourceWithStreamingResponse(self)
239
202
 
240
- async def bulk(
241
- self,
242
- *,
243
- events: Iterable[IngestEventParam],
244
- # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
245
- # The extra values given here take precedence over values defined on the client or passed to this method.
246
- extra_headers: Headers | None = None,
247
- extra_query: Query | None = None,
248
- extra_body: Body | None = None,
249
- timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
250
- ) -> BulkIngestResponse:
251
- """
252
- Bulk Ingest
253
-
254
- Args:
255
- items (Iterable[IngestUnitsParams]): The items to ingest
256
-
257
- extra_headers: Send extra headers
258
-
259
- extra_query: Add additional query parameters to the request
260
-
261
- extra_body: Add additional JSON properties to the request
262
-
263
- timeout: Override the client-level default timeout for this request, in seconds
264
- """
265
- return await self._post(
266
- "/api/v1/ingest/bulk",
267
- body=await async_maybe_transform(events, Iterable[IngestEventParam]),
268
- options=make_request_options(
269
- extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
270
- ),
271
- cast_to=BulkIngestResponse,
272
- )
273
-
274
203
  async def units(
275
204
  self,
276
205
  *,
@@ -405,9 +334,6 @@ class IngestResourceWithRawResponse:
405
334
  def __init__(self, ingest: IngestResource) -> None:
406
335
  self._ingest = ingest
407
336
 
408
- self.bulk = to_raw_response_wrapper(
409
- ingest.bulk,
410
- )
411
337
  self.units = to_raw_response_wrapper(
412
338
  ingest.units,
413
339
  )
@@ -417,9 +343,6 @@ class AsyncIngestResourceWithRawResponse:
417
343
  def __init__(self, ingest: AsyncIngestResource) -> None:
418
344
  self._ingest = ingest
419
345
 
420
- self.bulk = async_to_raw_response_wrapper(
421
- ingest.bulk,
422
- )
423
346
  self.units = async_to_raw_response_wrapper(
424
347
  ingest.units,
425
348
  )
@@ -429,9 +352,6 @@ class IngestResourceWithStreamingResponse:
429
352
  def __init__(self, ingest: IngestResource) -> None:
430
353
  self._ingest = ingest
431
354
 
432
- self.bulk = to_streamed_response_wrapper(
433
- ingest.bulk,
434
- )
435
355
  self.units = to_streamed_response_wrapper(
436
356
  ingest.units,
437
357
  )
@@ -441,9 +361,6 @@ class AsyncIngestResourceWithStreamingResponse:
441
361
  def __init__(self, ingest: AsyncIngestResource) -> None:
442
362
  self._ingest = ingest
443
363
 
444
- self.bulk = async_to_streamed_response_wrapper(
445
- ingest.bulk,
446
- )
447
364
  self.units = async_to_streamed_response_wrapper(
448
365
  ingest.units,
449
366
  )
@@ -15,13 +15,10 @@ from .default_response import DefaultResponse as DefaultResponse
15
15
  from .paged_limit_list import PagedLimitList as PagedLimitList
16
16
  from .category_response import CategoryResponse as CategoryResponse
17
17
  from .limit_list_params import LimitListParams as LimitListParams
18
- from .ingest_bulk_params import IngestBulkParams as IngestBulkParams
19
- from .ingest_event_param import IngestEventParam as IngestEventParam
20
18
  from .limit_reset_params import LimitResetParams as LimitResetParams
21
19
  from .ingest_units_params import IngestUnitsParams as IngestUnitsParams
22
20
  from .limit_create_params import LimitCreateParams as LimitCreateParams
23
21
  from .limit_update_params import LimitUpdateParams as LimitUpdateParams
24
- from .bulk_ingest_response import BulkIngestResponse as BulkIngestResponse
25
22
  from .category_list_response import CategoryListResponse as CategoryListResponse
26
23
  from .limit_history_response import LimitHistoryResponse as LimitHistoryResponse
27
24
  from .category_delete_response import CategoryDeleteResponse as CategoryDeleteResponse
@@ -8,7 +8,7 @@ from typing import Any, cast
8
8
  import pytest
9
9
 
10
10
  from payi import Payi, AsyncPayi
11
- from payi.types import IngestResponse, BulkIngestResponse
11
+ from payi.types import IngestResponse
12
12
  from payi._utils import parse_datetime
13
13
  from tests.utils import assert_matches_type
14
14
 
@@ -18,55 +18,6 @@ base_url = os.environ.get("TEST_API_BASE_URL", "http://127.0.0.1:4010")
18
18
  class TestIngest:
19
19
  parametrize = pytest.mark.parametrize("client", [False, True], indirect=True, ids=["loose", "strict"])
20
20
 
21
- @parametrize
22
- def test_method_bulk(self, client: Payi) -> None:
23
- ingest = client.ingest.bulk(
24
- events=[
25
- {
26
- "category": "x",
27
- "resource": "x",
28
- "units": {"foo": {}},
29
- }
30
- ],
31
- )
32
- assert_matches_type(BulkIngestResponse, ingest, path=["response"])
33
-
34
- @parametrize
35
- def test_raw_response_bulk(self, client: Payi) -> None:
36
- response = client.ingest.with_raw_response.bulk(
37
- events=[
38
- {
39
- "category": "x",
40
- "resource": "x",
41
- "units": {"foo": {}},
42
- }
43
- ],
44
- )
45
-
46
- assert response.is_closed is True
47
- assert response.http_request.headers.get("X-Stainless-Lang") == "python"
48
- ingest = response.parse()
49
- assert_matches_type(BulkIngestResponse, ingest, path=["response"])
50
-
51
- @parametrize
52
- def test_streaming_response_bulk(self, client: Payi) -> None:
53
- with client.ingest.with_streaming_response.bulk(
54
- events=[
55
- {
56
- "category": "x",
57
- "resource": "x",
58
- "units": {"foo": {}},
59
- }
60
- ],
61
- ) as response:
62
- assert not response.is_closed
63
- assert response.http_request.headers.get("X-Stainless-Lang") == "python"
64
-
65
- ingest = response.parse()
66
- assert_matches_type(BulkIngestResponse, ingest, path=["response"])
67
-
68
- assert cast(Any, response.is_closed) is True
69
-
70
21
  @parametrize
71
22
  def test_method_units(self, client: Payi) -> None:
72
23
  ingest = client.ingest.units(
@@ -148,55 +99,6 @@ class TestIngest:
148
99
  class TestAsyncIngest:
149
100
  parametrize = pytest.mark.parametrize("async_client", [False, True], indirect=True, ids=["loose", "strict"])
150
101
 
151
- @parametrize
152
- async def test_method_bulk(self, async_client: AsyncPayi) -> None:
153
- ingest = await async_client.ingest.bulk(
154
- events=[
155
- {
156
- "category": "x",
157
- "resource": "x",
158
- "units": {"foo": {}},
159
- }
160
- ],
161
- )
162
- assert_matches_type(BulkIngestResponse, ingest, path=["response"])
163
-
164
- @parametrize
165
- async def test_raw_response_bulk(self, async_client: AsyncPayi) -> None:
166
- response = await async_client.ingest.with_raw_response.bulk(
167
- events=[
168
- {
169
- "category": "x",
170
- "resource": "x",
171
- "units": {"foo": {}},
172
- }
173
- ],
174
- )
175
-
176
- assert response.is_closed is True
177
- assert response.http_request.headers.get("X-Stainless-Lang") == "python"
178
- ingest = await response.parse()
179
- assert_matches_type(BulkIngestResponse, ingest, path=["response"])
180
-
181
- @parametrize
182
- async def test_streaming_response_bulk(self, async_client: AsyncPayi) -> None:
183
- async with async_client.ingest.with_streaming_response.bulk(
184
- events=[
185
- {
186
- "category": "x",
187
- "resource": "x",
188
- "units": {"foo": {}},
189
- }
190
- ],
191
- ) as response:
192
- assert not response.is_closed
193
- assert response.http_request.headers.get("X-Stainless-Lang") == "python"
194
-
195
- ingest = await response.parse()
196
- assert_matches_type(BulkIngestResponse, ingest, path=["response"])
197
-
198
- assert cast(Any, response.is_closed) is True
199
-
200
102
  @parametrize
201
103
  async def test_method_units(self, async_client: AsyncPayi) -> None:
202
104
  ingest = await async_client.ingest.units(
@@ -1,3 +0,0 @@
1
- {
2
- ".": "0.1.0-alpha.38"
3
- }
@@ -1,51 +0,0 @@
1
- # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
-
3
- from typing import List, Optional
4
- from datetime import datetime
5
-
6
- from pydantic import Field as FieldInfo
7
-
8
- from .._models import BaseModel
9
-
10
- __all__ = ["BulkIngestResponse", "Error", "ErrorXproxyResult", "ErrorXproxyResultXproxyError"]
11
-
12
-
13
- class ErrorXproxyResultXproxyError(BaseModel):
14
- code: Optional[str] = None
15
-
16
- message: Optional[str] = None
17
-
18
-
19
- class ErrorXproxyResult(BaseModel):
20
- message: str
21
-
22
- status_code: int = FieldInfo(alias="statusCode")
23
-
24
- xproxy_error: Optional[ErrorXproxyResultXproxyError] = None
25
-
26
-
27
- class Error(BaseModel):
28
- item_index: Optional[int] = None
29
-
30
- xproxy_result: Optional[ErrorXproxyResult] = None
31
- """
32
- Represents an generic error that occurred as a result of processing a request.
33
- APIM returns an (not customizable) error response body of { "statusCode",
34
- "message" } and this class matches this schema. Derived classes may add
35
- additional required fields if these classes are specified as produced as a
36
- return type specific endpoints.
37
- """
38
-
39
-
40
- class BulkIngestResponse(BaseModel):
41
- ingest_count: int
42
-
43
- ingest_timestamp: datetime
44
-
45
- request_id: str
46
-
47
- error_count: Optional[int] = None
48
-
49
- errors: Optional[List[Error]] = None
50
-
51
- total_count: Optional[int] = None
@@ -1,14 +0,0 @@
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 Iterable
6
- from typing_extensions import Required, TypedDict
7
-
8
- from .ingest_event_param import IngestEventParam
9
-
10
- __all__ = ["IngestBulkParams"]
11
-
12
-
13
- class IngestBulkParams(TypedDict, total=False):
14
- events: Required[Iterable[IngestEventParam]]
@@ -1,60 +0,0 @@
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 Dict, List, Union, Iterable, Optional
6
- from datetime import datetime
7
- from typing_extensions import Required, Annotated, TypedDict
8
-
9
- from .._utils import PropertyInfo
10
- from .pay_i_common_models_api_router_header_info_param import PayICommonModelsAPIRouterHeaderInfoParam
11
-
12
- __all__ = ["IngestEventParam", "Units"]
13
-
14
-
15
- class Units(TypedDict, total=False):
16
- input: int
17
-
18
- output: int
19
-
20
-
21
- class IngestEventParam(TypedDict, total=False):
22
- category: Required[str]
23
-
24
- resource: Required[str]
25
-
26
- units: Required[Dict[str, Units]]
27
-
28
- csat_rating: Optional[int]
29
-
30
- end_to_end_latency_ms: Optional[int]
31
-
32
- event_timestamp: Annotated[Union[str, datetime, None], PropertyInfo(format="iso8601")]
33
-
34
- experience_id: Optional[str]
35
-
36
- experience_name: Optional[str]
37
-
38
- experience_properties: Optional[Dict[str, str]]
39
-
40
- http_status_code: Optional[int]
41
-
42
- limit_ids: Optional[List[str]]
43
-
44
- properties: Optional[Dict[str, str]]
45
-
46
- provider_request_headers: Optional[Iterable[PayICommonModelsAPIRouterHeaderInfoParam]]
47
-
48
- provider_request_json: Optional[str]
49
-
50
- provider_response_headers: Optional[Iterable[PayICommonModelsAPIRouterHeaderInfoParam]]
51
-
52
- provider_response_json: Union[str, List[str], None]
53
-
54
- provider_uri: Optional[str]
55
-
56
- request_tags: Optional[List[str]]
57
-
58
- time_to_first_token_ms: Optional[int]
59
-
60
- user_id: Optional[str]
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes