telnyx 3.7.0a0__py3-none-any.whl → 3.8.0__py3-none-any.whl

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 telnyx might be problematic. Click here for more details.

Files changed (214) hide show
  1. telnyx/__init__.py +2 -0
  2. telnyx/_client.py +25 -756
  3. telnyx/_exceptions.py +4 -0
  4. telnyx/_version.py +1 -1
  5. telnyx/resources/advanced_orders.py +63 -63
  6. telnyx/resources/ai/assistants/assistants.py +15 -17
  7. telnyx/resources/ai/assistants/versions.py +13 -15
  8. telnyx/resources/brand/brand.py +8 -4
  9. telnyx/resources/calls/actions.py +10 -6
  10. telnyx/resources/calls/calls.py +16 -2
  11. telnyx/resources/documents.py +242 -37
  12. telnyx/resources/legacy/reporting/batch_detail_records/messaging.py +3 -2
  13. telnyx/resources/legacy/reporting/batch_detail_records/voice.py +3 -2
  14. telnyx/resources/messaging_profiles/messaging_profiles.py +16 -0
  15. telnyx/resources/messaging_tollfree/verification/requests.py +203 -1
  16. telnyx/resources/outbound_voice_profiles.py +24 -4
  17. telnyx/resources/sim_cards/actions.py +12 -12
  18. telnyx/resources/texml/accounts/calls/calls.py +11 -0
  19. telnyx/resources/texml/accounts/conferences/participants.py +11 -0
  20. telnyx/resources/verified_numbers/verified_numbers.py +25 -4
  21. telnyx/resources/verify_profiles.py +9 -10
  22. telnyx/resources/webhooks.py +57 -3
  23. telnyx/types/__init__.py +18 -15
  24. telnyx/types/access_ip_address_list_response.py +3 -12
  25. telnyx/types/access_ip_range_list_response.py +3 -12
  26. telnyx/types/addresses/action_validate_response.py +7 -2
  27. telnyx/types/{advanced_order_update_params.py → advanced_order_update_requirement_group_params.py} +2 -2
  28. telnyx/types/ai/__init__.py +1 -3
  29. telnyx/types/ai/assistant_import_params.py +1 -1
  30. telnyx/types/ai/assistants/__init__.py +0 -3
  31. telnyx/types/ai/assistants_list.py +4 -88
  32. telnyx/types/ai/import_metadata.py +1 -1
  33. telnyx/types/ai/{assistant_clone_response.py → inference_embedding.py} +2 -2
  34. telnyx/types/ai/inference_embedding_transfer_tool_params.py +6 -0
  35. telnyx/types/ai/inference_embedding_transfer_tool_params_param.py +6 -0
  36. telnyx/types/ai/voice_settings.py +49 -2
  37. telnyx/types/ai/voice_settings_param.py +49 -2
  38. telnyx/types/brand_create_params.py +2 -1
  39. telnyx/types/brand_update_params.py +2 -1
  40. telnyx/types/call_ai_gather_ended_webhook_event1.py +78 -0
  41. telnyx/types/call_ai_gather_message_history_updated_webhook_event1.py +69 -0
  42. telnyx/types/call_ai_gather_partial_results_webhook_event1.py +75 -0
  43. telnyx/types/call_answered_webhook_event1.py +75 -0
  44. telnyx/types/call_bridged_webhook_event1.py +58 -0
  45. telnyx/types/call_conversation_ended_webhook_event1.py +84 -0
  46. telnyx/types/call_conversation_insights_generated_webhook_event1.py +67 -0
  47. telnyx/types/call_dial_params.py +10 -1
  48. telnyx/types/call_dtmf_received_webhook_event1.py +61 -0
  49. telnyx/types/call_enqueued_webhook_event1.py +59 -0
  50. telnyx/types/call_fork_started_webhook_event1.py +53 -0
  51. telnyx/types/call_fork_stopped_webhook_event1.py +53 -0
  52. telnyx/types/call_gather_ended_webhook_event1.py +64 -0
  53. telnyx/types/call_hangup_webhook_event1.py +150 -0
  54. telnyx/types/call_initiated_webhook_event1.py +96 -0
  55. telnyx/types/call_left_queue_webhook_event1.py +62 -0
  56. telnyx/types/call_machine_detection_ended_webhook_event1.py +61 -0
  57. telnyx/types/call_machine_greeting_ended_webhook_event1.py +61 -0
  58. telnyx/types/call_machine_premium_detection_ended_webhook_event1.py +63 -0
  59. telnyx/types/call_machine_premium_greeting_ended_webhook_event1.py +61 -0
  60. telnyx/types/call_playback_ended_webhook_event1.py +70 -0
  61. telnyx/types/call_playback_started_webhook_event1.py +62 -0
  62. telnyx/types/call_recording_error_webhook_event1.py +60 -0
  63. telnyx/types/call_recording_saved_webhook_event1.py +94 -0
  64. telnyx/types/call_recording_transcription_saved_webhook_event1.py +71 -0
  65. telnyx/types/call_refer_completed_webhook_event1.py +61 -0
  66. telnyx/types/call_refer_failed_webhook_event1.py +61 -0
  67. telnyx/types/call_refer_started_webhook_event1.py +61 -0
  68. telnyx/types/call_siprec_failed_webhook_event1.py +53 -0
  69. telnyx/types/call_siprec_started_webhook_event1.py +50 -0
  70. telnyx/types/call_siprec_stopped_webhook_event1.py +53 -0
  71. telnyx/types/call_speak_ended_webhook_event1.py +53 -0
  72. telnyx/types/call_speak_started_webhook_event1.py +50 -0
  73. telnyx/types/call_streaming_failed_webhook_event1.py +70 -0
  74. telnyx/types/call_streaming_started_webhook_event1.py +53 -0
  75. telnyx/types/call_streaming_stopped_webhook_event1.py +53 -0
  76. telnyx/types/calls/__init__.py +1 -0
  77. telnyx/types/calls/action_start_streaming_params.py +2 -1
  78. telnyx/types/calls/action_start_transcription_params.py +160 -6
  79. telnyx/types/calls/telnyx_transcription_language.py +108 -0
  80. telnyx/types/calls/transcription_engine_b_config_param.py +3 -102
  81. telnyx/types/calls/transcription_start_request_param.py +161 -6
  82. telnyx/types/campaign_status_update_webhook_event1.py +26 -0
  83. telnyx/types/conference_created_webhook_event1.py +53 -0
  84. telnyx/types/conference_ended_webhook_event1.py +56 -0
  85. telnyx/types/conference_floor_changed_webhook_event1.py +45 -0
  86. telnyx/types/conference_participant_joined_webhook_event1.py +53 -0
  87. telnyx/types/conference_participant_left_webhook_event1.py +53 -0
  88. telnyx/types/conference_participant_playback_ended_webhook_event1.py +65 -0
  89. telnyx/types/conference_participant_playback_started_webhook_event1.py +65 -0
  90. telnyx/types/conference_participant_speak_ended_webhook_event1.py +56 -0
  91. telnyx/types/conference_participant_speak_started_webhook_event1.py +56 -0
  92. telnyx/types/conference_playback_ended_webhook_event1.py +49 -0
  93. telnyx/types/conference_playback_started_webhook_event1.py +49 -0
  94. telnyx/types/conference_recording_saved_webhook_event1.py +103 -0
  95. telnyx/types/conference_speak_ended_webhook_event1.py +40 -0
  96. telnyx/types/conference_speak_started_webhook_event1.py +40 -0
  97. telnyx/types/country_coverage_retrieve_country_response.py +7 -0
  98. telnyx/types/country_coverage_retrieve_response.py +7 -0
  99. telnyx/types/customer_service_record_status_changed_webhook_event1.py +55 -0
  100. telnyx/types/delivery_update_webhook_event1.py +40 -0
  101. telnyx/types/document_upload_json_params.py +39 -0
  102. telnyx/types/document_upload_json_response.py +12 -0
  103. telnyx/types/fax_delivered_webhook_event1.py +69 -0
  104. telnyx/types/fax_failed_webhook_event1.py +66 -0
  105. telnyx/types/fax_media_processed_webhook_event1.py +63 -0
  106. telnyx/types/fax_queued_webhook_event1.py +63 -0
  107. telnyx/types/fax_sending_started_webhook_event1.py +63 -0
  108. telnyx/types/inbound_message_webhook_event1.py +227 -0
  109. telnyx/types/legacy/reporting/__init__.py +2 -0
  110. telnyx/types/legacy/reporting/batch_detail_records/__init__.py +4 -0
  111. telnyx/types/legacy/reporting/batch_detail_records/batch_csv_pagination_meta.py +17 -0
  112. telnyx/types/legacy/reporting/batch_detail_records/cdr_detailed_req_response.py +63 -0
  113. telnyx/types/legacy/reporting/batch_detail_records/mdr_detail_report_response.py +42 -0
  114. telnyx/types/legacy/reporting/batch_detail_records/messaging_create_params.py +4 -26
  115. telnyx/types/legacy/reporting/batch_detail_records/messaging_create_response.py +4 -60
  116. telnyx/types/legacy/reporting/batch_detail_records/messaging_delete_response.py +4 -60
  117. telnyx/types/legacy/reporting/batch_detail_records/messaging_list_response.py +5 -70
  118. telnyx/types/legacy/reporting/batch_detail_records/messaging_retrieve_response.py +4 -60
  119. telnyx/types/legacy/reporting/batch_detail_records/speech_to_text_create_response.py +3 -22
  120. telnyx/types/legacy/reporting/batch_detail_records/speech_to_text_delete_response.py +3 -22
  121. telnyx/types/legacy/reporting/batch_detail_records/speech_to_text_list_response.py +3 -22
  122. telnyx/types/legacy/reporting/batch_detail_records/speech_to_text_retrieve_response.py +3 -22
  123. telnyx/types/legacy/reporting/batch_detail_records/stt_detail_report_response.py +27 -0
  124. telnyx/types/legacy/reporting/batch_detail_records/voice_create_params.py +4 -26
  125. telnyx/types/legacy/reporting/batch_detail_records/voice_create_response.py +4 -82
  126. telnyx/types/legacy/reporting/batch_detail_records/voice_delete_response.py +4 -82
  127. telnyx/types/legacy/reporting/batch_detail_records/voice_list_response.py +5 -92
  128. telnyx/types/legacy/reporting/batch_detail_records/voice_retrieve_response.py +4 -82
  129. telnyx/types/legacy/reporting/filter.py +31 -0
  130. telnyx/types/legacy/reporting/filter_param.py +30 -0
  131. telnyx/types/legacy/reporting/usage_reports/__init__.py +3 -0
  132. telnyx/types/legacy/reporting/usage_reports/cdr_usage_report_response_legacy.py +43 -0
  133. telnyx/types/legacy/reporting/usage_reports/mdr_usage_report_response_legacy.py +38 -0
  134. telnyx/types/legacy/reporting/usage_reports/messaging_create_response.py +4 -34
  135. telnyx/types/legacy/reporting/usage_reports/messaging_delete_response.py +4 -34
  136. telnyx/types/legacy/reporting/usage_reports/messaging_list_response.py +5 -44
  137. telnyx/types/legacy/reporting/usage_reports/messaging_retrieve_response.py +4 -34
  138. telnyx/types/legacy/reporting/usage_reports/standard_pagination_meta.py +17 -0
  139. telnyx/types/legacy/reporting/usage_reports/voice_create_response.py +4 -39
  140. telnyx/types/legacy/reporting/usage_reports/voice_delete_response.py +4 -39
  141. telnyx/types/legacy/reporting/usage_reports/voice_list_response.py +5 -49
  142. telnyx/types/legacy/reporting/usage_reports/voice_retrieve_response.py +4 -39
  143. telnyx/types/message_template.py +12 -0
  144. telnyx/types/messaging_profile.py +3 -0
  145. telnyx/types/messaging_profile_create_params.py +3 -0
  146. telnyx/types/messaging_profile_update_params.py +3 -0
  147. telnyx/types/messaging_tollfree/verification/__init__.py +1 -0
  148. telnyx/types/messaging_tollfree/verification/request_create_params.py +51 -1
  149. telnyx/types/messaging_tollfree/verification/request_update_params.py +51 -1
  150. telnyx/types/messaging_tollfree/verification/toll_free_verification_entity_type.py +9 -0
  151. telnyx/types/messaging_tollfree/verification/verification_request_egress.py +24 -0
  152. telnyx/types/messaging_tollfree/verification/verification_request_status.py +24 -0
  153. telnyx/types/number_order_status_update_webhook_event1.py +38 -0
  154. telnyx/types/oauth_client.py +59 -0
  155. telnyx/types/oauth_client_create_response.py +4 -55
  156. telnyx/types/oauth_client_list_response.py +5 -69
  157. telnyx/types/oauth_client_retrieve_response.py +4 -55
  158. telnyx/types/oauth_client_update_response.py +4 -55
  159. telnyx/types/oauth_grant.py +29 -0
  160. telnyx/types/oauth_grant_delete_response.py +4 -25
  161. telnyx/types/oauth_grant_list_response.py +5 -39
  162. telnyx/types/oauth_grant_retrieve_response.py +4 -25
  163. telnyx/types/outbound_voice_profile.py +27 -1
  164. telnyx/types/outbound_voice_profile_create_params.py +27 -1
  165. telnyx/types/outbound_voice_profile_list_params.py +1 -1
  166. telnyx/types/outbound_voice_profile_update_params.py +27 -1
  167. telnyx/types/pagination_meta_cloudflare_ip_list_sync.py +15 -0
  168. telnyx/types/pagination_meta_oauth.py +21 -0
  169. telnyx/types/phone_number_blocks/__init__.py +1 -0
  170. telnyx/types/phone_number_blocks/job.py +3 -34
  171. telnyx/types/phone_number_blocks/job_error.py +32 -0
  172. telnyx/types/phone_numbers/phone_numbers_job.py +3 -36
  173. telnyx/types/replaced_link_click_webhook_event1.py +32 -0
  174. telnyx/types/report_list_mdrs_response.py +3 -12
  175. telnyx/types/reports/__init__.py +1 -0
  176. telnyx/types/reports/mdr_usage_report_list_response.py +3 -12
  177. telnyx/types/reports/pagination_meta_reporting.py +17 -0
  178. telnyx/types/requirement_group.py +2 -2
  179. telnyx/types/requirement_group_list_params.py +1 -1
  180. telnyx/types/shared/__init__.py +1 -0
  181. telnyx/types/{api_error.py → shared/api_error.py} +1 -1
  182. telnyx/types/stream_bidirectional_sampling_rate.py +7 -0
  183. telnyx/types/streaming_failed_webhook_event1.py +70 -0
  184. telnyx/types/streaming_started_webhook_event1.py +53 -0
  185. telnyx/types/streaming_stopped_webhook_event1.py +53 -0
  186. telnyx/types/texml/accounts/call_calls_params.py +16 -1
  187. telnyx/types/texml/accounts/conferences/participant_participants_params.py +16 -1
  188. telnyx/types/transcription_webhook_event1.py +72 -0
  189. telnyx/types/unsafe_unwrap_webhook_event.py +138 -0
  190. telnyx/types/verifications/__init__.py +1 -0
  191. telnyx/types/verifications/by_phone_number_list_response.py +4 -13
  192. telnyx/types/verifications/verify_meta.py +17 -0
  193. telnyx/types/verified_number_create_params.py +10 -0
  194. telnyx/types/verify_profile.py +18 -3
  195. telnyx/types/verify_profile_list_response.py +4 -13
  196. telnyx/types/{verify_profile_create_template_response.py → verify_profile_message_template_response.py} +2 -6
  197. telnyx/types/verify_profile_retrieve_templates_response.py +4 -9
  198. {telnyx-3.7.0a0.dist-info → telnyx-3.8.0.dist-info}/METADATA +6 -4
  199. {telnyx-3.7.0a0.dist-info → telnyx-3.8.0.dist-info}/RECORD +201 -127
  200. telnyx/types/ai/assistant_create_response.py +0 -92
  201. telnyx/types/ai/assistant_retrieve_response.py +0 -92
  202. telnyx/types/ai/assistants/version_promote_response.py +0 -92
  203. telnyx/types/ai/assistants/version_retrieve_response.py +0 -92
  204. telnyx/types/ai/assistants/version_update_response.py +0 -92
  205. telnyx/types/client_create_bucket_params.py +0 -13
  206. telnyx/types/client_delete_objects_params.py +0 -20
  207. telnyx/types/client_get_object_params.py +0 -15
  208. telnyx/types/client_list_objects_params.py +0 -13
  209. telnyx/types/client_put_object_params.py +0 -20
  210. telnyx/types/list_buckets_response.py +0 -20
  211. telnyx/types/list_objects_response.py +0 -24
  212. telnyx/types/verify_profile_update_template_response.py +0 -17
  213. {telnyx-3.7.0a0.dist-info → telnyx-3.8.0.dist-info}/WHEEL +0 -0
  214. {telnyx-3.7.0a0.dist-info → telnyx-3.8.0.dist-info}/licenses/LICENSE +0 -0
@@ -1,102 +1,15 @@
1
1
  # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
3
  from typing import List, Optional
4
- from typing_extensions import Literal
5
4
 
6
5
  from ....._models import BaseModel
6
+ from .batch_csv_pagination_meta import BatchCsvPaginationMeta
7
+ from .cdr_detailed_req_response import CdrDetailedReqResponse
7
8
 
8
- __all__ = ["VoiceListResponse", "Data", "DataFilter", "Meta"]
9
-
10
-
11
- class DataFilter(BaseModel):
12
- billing_group: Optional[str] = None
13
- """Billing group UUID to filter by"""
14
-
15
- cld: Optional[str] = None
16
- """Called line identification (destination number)"""
17
-
18
- cld_filter: Optional[Literal["contains", "starts_with", "ends_with"]] = None
19
- """Filter type for CLD matching"""
20
-
21
- cli: Optional[str] = None
22
- """Calling line identification (caller ID)"""
23
-
24
- cli_filter: Optional[Literal["contains", "starts_with", "ends_with"]] = None
25
- """Filter type for CLI matching"""
26
-
27
- filter_type: Optional[Literal["and", "or"]] = None
28
- """Logical operator for combining filters"""
29
-
30
- tags_list: Optional[str] = None
31
- """Tag name to filter by"""
32
-
33
-
34
- class Data(BaseModel):
35
- id: Optional[str] = None
36
- """Unique identifier for the report"""
37
-
38
- call_types: Optional[List[int]] = None
39
- """List of call types (Inbound = 1, Outbound = 2)"""
40
-
41
- connections: Optional[List[int]] = None
42
- """List of connections"""
43
-
44
- created_at: Optional[str] = None
45
- """Creation date of the report"""
46
-
47
- end_time: Optional[str] = None
48
- """End time in ISO format"""
49
-
50
- filters: Optional[List[DataFilter]] = None
51
- """List of filters"""
52
-
53
- managed_accounts: Optional[List[str]] = None
54
- """List of managed accounts"""
55
-
56
- record_type: Optional[str] = None
57
-
58
- record_types: Optional[List[int]] = None
59
- """List of record types (Complete = 1, Incomplete = 2, Errors = 3)"""
60
-
61
- report_name: Optional[str] = None
62
- """Name of the report"""
63
-
64
- report_url: Optional[str] = None
65
- """URL to download the report"""
66
-
67
- retry: Optional[int] = None
68
- """Number of retries"""
69
-
70
- source: Optional[str] = None
71
- """Source of the report.
72
-
73
- Valid values: calls (default), call-control, fax-api, webrtc
74
- """
75
-
76
- start_time: Optional[str] = None
77
- """Start time in ISO format"""
78
-
79
- status: Optional[int] = None
80
- """Status of the report (Pending = 1, Complete = 2, Failed = 3, Expired = 4)"""
81
-
82
- timezone: Optional[str] = None
83
- """Timezone for the report"""
84
-
85
- updated_at: Optional[str] = None
86
- """Last update date of the report"""
87
-
88
-
89
- class Meta(BaseModel):
90
- page_number: Optional[int] = None
91
-
92
- page_size: Optional[int] = None
93
-
94
- total_pages: Optional[int] = None
95
-
96
- total_results: Optional[int] = None
9
+ __all__ = ["VoiceListResponse"]
97
10
 
98
11
 
99
12
  class VoiceListResponse(BaseModel):
100
- data: Optional[List[Data]] = None
13
+ data: Optional[List[CdrDetailedReqResponse]] = None
101
14
 
102
- meta: Optional[Meta] = None
15
+ meta: Optional[BatchCsvPaginationMeta] = None
@@ -1,91 +1,13 @@
1
1
  # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
- from typing import List, Optional
4
- from typing_extensions import Literal
3
+ from typing import Optional
5
4
 
6
5
  from ....._models import BaseModel
6
+ from .cdr_detailed_req_response import CdrDetailedReqResponse
7
7
 
8
- __all__ = ["VoiceRetrieveResponse", "Data", "DataFilter"]
9
-
10
-
11
- class DataFilter(BaseModel):
12
- billing_group: Optional[str] = None
13
- """Billing group UUID to filter by"""
14
-
15
- cld: Optional[str] = None
16
- """Called line identification (destination number)"""
17
-
18
- cld_filter: Optional[Literal["contains", "starts_with", "ends_with"]] = None
19
- """Filter type for CLD matching"""
20
-
21
- cli: Optional[str] = None
22
- """Calling line identification (caller ID)"""
23
-
24
- cli_filter: Optional[Literal["contains", "starts_with", "ends_with"]] = None
25
- """Filter type for CLI matching"""
26
-
27
- filter_type: Optional[Literal["and", "or"]] = None
28
- """Logical operator for combining filters"""
29
-
30
- tags_list: Optional[str] = None
31
- """Tag name to filter by"""
32
-
33
-
34
- class Data(BaseModel):
35
- id: Optional[str] = None
36
- """Unique identifier for the report"""
37
-
38
- call_types: Optional[List[int]] = None
39
- """List of call types (Inbound = 1, Outbound = 2)"""
40
-
41
- connections: Optional[List[int]] = None
42
- """List of connections"""
43
-
44
- created_at: Optional[str] = None
45
- """Creation date of the report"""
46
-
47
- end_time: Optional[str] = None
48
- """End time in ISO format"""
49
-
50
- filters: Optional[List[DataFilter]] = None
51
- """List of filters"""
52
-
53
- managed_accounts: Optional[List[str]] = None
54
- """List of managed accounts"""
55
-
56
- record_type: Optional[str] = None
57
-
58
- record_types: Optional[List[int]] = None
59
- """List of record types (Complete = 1, Incomplete = 2, Errors = 3)"""
60
-
61
- report_name: Optional[str] = None
62
- """Name of the report"""
63
-
64
- report_url: Optional[str] = None
65
- """URL to download the report"""
66
-
67
- retry: Optional[int] = None
68
- """Number of retries"""
69
-
70
- source: Optional[str] = None
71
- """Source of the report.
72
-
73
- Valid values: calls (default), call-control, fax-api, webrtc
74
- """
75
-
76
- start_time: Optional[str] = None
77
- """Start time in ISO format"""
78
-
79
- status: Optional[int] = None
80
- """Status of the report (Pending = 1, Complete = 2, Failed = 3, Expired = 4)"""
81
-
82
- timezone: Optional[str] = None
83
- """Timezone for the report"""
84
-
85
- updated_at: Optional[str] = None
86
- """Last update date of the report"""
8
+ __all__ = ["VoiceRetrieveResponse"]
87
9
 
88
10
 
89
11
  class VoiceRetrieveResponse(BaseModel):
90
- data: Optional[Data] = None
12
+ data: Optional[CdrDetailedReqResponse] = None
91
13
  """Response object for CDR detailed report"""
@@ -0,0 +1,31 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import Optional
4
+ from typing_extensions import Literal
5
+
6
+ from ...._models import BaseModel
7
+
8
+ __all__ = ["Filter"]
9
+
10
+
11
+ class Filter(BaseModel):
12
+ billing_group: Optional[str] = None
13
+ """Billing group UUID to filter by"""
14
+
15
+ cld: Optional[str] = None
16
+ """Called line identification (destination number)"""
17
+
18
+ cld_filter: Optional[Literal["contains", "starts_with", "ends_with"]] = None
19
+ """Filter type for CLD matching"""
20
+
21
+ cli: Optional[str] = None
22
+ """Calling line identification (caller ID)"""
23
+
24
+ cli_filter: Optional[Literal["contains", "starts_with", "ends_with"]] = None
25
+ """Filter type for CLI matching"""
26
+
27
+ filter_type: Optional[Literal["and", "or"]] = None
28
+ """Logical operator for combining filters"""
29
+
30
+ tags_list: Optional[str] = None
31
+ """Tag name to filter by"""
@@ -0,0 +1,30 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing_extensions import Literal, TypedDict
6
+
7
+ __all__ = ["FilterParam"]
8
+
9
+
10
+ class FilterParam(TypedDict, total=False):
11
+ billing_group: str
12
+ """Billing group UUID to filter by"""
13
+
14
+ cld: str
15
+ """Called line identification (destination number)"""
16
+
17
+ cld_filter: Literal["contains", "starts_with", "ends_with"]
18
+ """Filter type for CLD matching"""
19
+
20
+ cli: str
21
+ """Calling line identification (caller ID)"""
22
+
23
+ cli_filter: Literal["contains", "starts_with", "ends_with"]
24
+ """Filter type for CLI matching"""
25
+
26
+ filter_type: Literal["and", "or"]
27
+ """Logical operator for combining filters"""
28
+
29
+ tags_list: str
30
+ """Tag name to filter by"""
@@ -11,8 +11,11 @@ from .voice_delete_response import VoiceDeleteResponse as VoiceDeleteResponse
11
11
  from .messaging_create_params import MessagingCreateParams as MessagingCreateParams
12
12
  from .messaging_list_response import MessagingListResponse as MessagingListResponse
13
13
  from .voice_retrieve_response import VoiceRetrieveResponse as VoiceRetrieveResponse
14
+ from .standard_pagination_meta import StandardPaginationMeta as StandardPaginationMeta
14
15
  from .messaging_create_response import MessagingCreateResponse as MessagingCreateResponse
15
16
  from .messaging_delete_response import MessagingDeleteResponse as MessagingDeleteResponse
16
17
  from .number_lookup_list_params import NumberLookupListParams as NumberLookupListParams
17
18
  from .messaging_retrieve_response import MessagingRetrieveResponse as MessagingRetrieveResponse
18
19
  from .number_lookup_create_params import NumberLookupCreateParams as NumberLookupCreateParams
20
+ from .cdr_usage_report_response_legacy import CdrUsageReportResponseLegacy as CdrUsageReportResponseLegacy
21
+ from .mdr_usage_report_response_legacy import MdrUsageReportResponseLegacy as MdrUsageReportResponseLegacy
@@ -0,0 +1,43 @@
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 ....._models import BaseModel
7
+
8
+ __all__ = ["CdrUsageReportResponseLegacy"]
9
+
10
+
11
+ class CdrUsageReportResponseLegacy(BaseModel):
12
+ id: Optional[str] = None
13
+ """Identifies the resource"""
14
+
15
+ aggregation_type: Optional[int] = None
16
+ """
17
+ Aggregation type: All = 0, By Connections = 1, By Tags = 2, By Billing Group = 3
18
+ """
19
+
20
+ connections: Optional[List[int]] = None
21
+
22
+ created_at: Optional[datetime] = None
23
+
24
+ end_time: Optional[datetime] = None
25
+
26
+ product_breakdown: Optional[int] = None
27
+ """
28
+ Product breakdown type: No breakdown = 0, DID vs Toll-free = 1, Country = 2, DID
29
+ vs Toll-free per Country = 3
30
+ """
31
+
32
+ record_type: Optional[str] = None
33
+
34
+ report_url: Optional[str] = None
35
+
36
+ result: Optional[object] = None
37
+
38
+ start_time: Optional[datetime] = None
39
+
40
+ status: Optional[int] = None
41
+ """Status of the report: Pending = 1, Complete = 2, Failed = 3, Expired = 4"""
42
+
43
+ updated_at: Optional[datetime] = None
@@ -0,0 +1,38 @@
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 ....._models import BaseModel
7
+
8
+ __all__ = ["MdrUsageReportResponseLegacy"]
9
+
10
+
11
+ class MdrUsageReportResponseLegacy(BaseModel):
12
+ id: Optional[str] = None
13
+ """Identifies the resource"""
14
+
15
+ aggregation_type: Optional[int] = None
16
+ """Aggregation type: No aggregation = 0, By Messaging Profile = 1, By Tags = 2"""
17
+
18
+ connections: Optional[List[int]] = None
19
+
20
+ created_at: Optional[datetime] = None
21
+
22
+ end_time: Optional[datetime] = None
23
+
24
+ profiles: Optional[List[str]] = None
25
+ """List of messaging profile IDs"""
26
+
27
+ record_type: Optional[str] = None
28
+
29
+ report_url: Optional[str] = None
30
+
31
+ result: Optional[object] = None
32
+
33
+ start_time: Optional[datetime] = None
34
+
35
+ status: Optional[int] = None
36
+ """Status of the report (Pending = 1, Complete = 2, Failed = 3, Expired = 4)"""
37
+
38
+ updated_at: Optional[datetime] = None
@@ -1,43 +1,13 @@
1
1
  # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
- from typing import List, Optional
4
- from datetime import datetime
3
+ from typing import Optional
5
4
 
6
5
  from ....._models import BaseModel
6
+ from .mdr_usage_report_response_legacy import MdrUsageReportResponseLegacy
7
7
 
8
- __all__ = ["MessagingCreateResponse", "Data"]
9
-
10
-
11
- class Data(BaseModel):
12
- id: Optional[str] = None
13
- """Identifies the resource"""
14
-
15
- aggregation_type: Optional[int] = None
16
- """Aggregation type: No aggregation = 0, By Messaging Profile = 1, By Tags = 2"""
17
-
18
- connections: Optional[List[int]] = None
19
-
20
- created_at: Optional[datetime] = None
21
-
22
- end_time: Optional[datetime] = None
23
-
24
- profiles: Optional[List[str]] = None
25
- """List of messaging profile IDs"""
26
-
27
- record_type: Optional[str] = None
28
-
29
- report_url: Optional[str] = None
30
-
31
- result: Optional[object] = None
32
-
33
- start_time: Optional[datetime] = None
34
-
35
- status: Optional[int] = None
36
- """Status of the report (Pending = 1, Complete = 2, Failed = 3, Expired = 4)"""
37
-
38
- updated_at: Optional[datetime] = None
8
+ __all__ = ["MessagingCreateResponse"]
39
9
 
40
10
 
41
11
  class MessagingCreateResponse(BaseModel):
42
- data: Optional[Data] = None
12
+ data: Optional[MdrUsageReportResponseLegacy] = None
43
13
  """Legacy V2 MDR usage report response"""
@@ -1,43 +1,13 @@
1
1
  # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
- from typing import List, Optional
4
- from datetime import datetime
3
+ from typing import Optional
5
4
 
6
5
  from ....._models import BaseModel
6
+ from .mdr_usage_report_response_legacy import MdrUsageReportResponseLegacy
7
7
 
8
- __all__ = ["MessagingDeleteResponse", "Data"]
9
-
10
-
11
- class Data(BaseModel):
12
- id: Optional[str] = None
13
- """Identifies the resource"""
14
-
15
- aggregation_type: Optional[int] = None
16
- """Aggregation type: No aggregation = 0, By Messaging Profile = 1, By Tags = 2"""
17
-
18
- connections: Optional[List[int]] = None
19
-
20
- created_at: Optional[datetime] = None
21
-
22
- end_time: Optional[datetime] = None
23
-
24
- profiles: Optional[List[str]] = None
25
- """List of messaging profile IDs"""
26
-
27
- record_type: Optional[str] = None
28
-
29
- report_url: Optional[str] = None
30
-
31
- result: Optional[object] = None
32
-
33
- start_time: Optional[datetime] = None
34
-
35
- status: Optional[int] = None
36
- """Status of the report (Pending = 1, Complete = 2, Failed = 3, Expired = 4)"""
37
-
38
- updated_at: Optional[datetime] = None
8
+ __all__ = ["MessagingDeleteResponse"]
39
9
 
40
10
 
41
11
  class MessagingDeleteResponse(BaseModel):
42
- data: Optional[Data] = None
12
+ data: Optional[MdrUsageReportResponseLegacy] = None
43
13
  """Legacy V2 MDR usage report response"""
@@ -1,54 +1,15 @@
1
1
  # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
3
  from typing import List, Optional
4
- from datetime import datetime
5
4
 
6
5
  from ....._models import BaseModel
6
+ from .standard_pagination_meta import StandardPaginationMeta
7
+ from .mdr_usage_report_response_legacy import MdrUsageReportResponseLegacy
7
8
 
8
- __all__ = ["MessagingListResponse", "Data", "Meta"]
9
-
10
-
11
- class Data(BaseModel):
12
- id: Optional[str] = None
13
- """Identifies the resource"""
14
-
15
- aggregation_type: Optional[int] = None
16
- """Aggregation type: No aggregation = 0, By Messaging Profile = 1, By Tags = 2"""
17
-
18
- connections: Optional[List[int]] = None
19
-
20
- created_at: Optional[datetime] = None
21
-
22
- end_time: Optional[datetime] = None
23
-
24
- profiles: Optional[List[str]] = None
25
- """List of messaging profile IDs"""
26
-
27
- record_type: Optional[str] = None
28
-
29
- report_url: Optional[str] = None
30
-
31
- result: Optional[object] = None
32
-
33
- start_time: Optional[datetime] = None
34
-
35
- status: Optional[int] = None
36
- """Status of the report (Pending = 1, Complete = 2, Failed = 3, Expired = 4)"""
37
-
38
- updated_at: Optional[datetime] = None
39
-
40
-
41
- class Meta(BaseModel):
42
- page_number: Optional[int] = None
43
-
44
- page_size: Optional[int] = None
45
-
46
- total_pages: Optional[int] = None
47
-
48
- total_results: Optional[int] = None
9
+ __all__ = ["MessagingListResponse"]
49
10
 
50
11
 
51
12
  class MessagingListResponse(BaseModel):
52
- data: Optional[List[Data]] = None
13
+ data: Optional[List[MdrUsageReportResponseLegacy]] = None
53
14
 
54
- meta: Optional[Meta] = None
15
+ meta: Optional[StandardPaginationMeta] = None
@@ -1,43 +1,13 @@
1
1
  # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
- from typing import List, Optional
4
- from datetime import datetime
3
+ from typing import Optional
5
4
 
6
5
  from ....._models import BaseModel
6
+ from .mdr_usage_report_response_legacy import MdrUsageReportResponseLegacy
7
7
 
8
- __all__ = ["MessagingRetrieveResponse", "Data"]
9
-
10
-
11
- class Data(BaseModel):
12
- id: Optional[str] = None
13
- """Identifies the resource"""
14
-
15
- aggregation_type: Optional[int] = None
16
- """Aggregation type: No aggregation = 0, By Messaging Profile = 1, By Tags = 2"""
17
-
18
- connections: Optional[List[int]] = None
19
-
20
- created_at: Optional[datetime] = None
21
-
22
- end_time: Optional[datetime] = None
23
-
24
- profiles: Optional[List[str]] = None
25
- """List of messaging profile IDs"""
26
-
27
- record_type: Optional[str] = None
28
-
29
- report_url: Optional[str] = None
30
-
31
- result: Optional[object] = None
32
-
33
- start_time: Optional[datetime] = None
34
-
35
- status: Optional[int] = None
36
- """Status of the report (Pending = 1, Complete = 2, Failed = 3, Expired = 4)"""
37
-
38
- updated_at: Optional[datetime] = None
8
+ __all__ = ["MessagingRetrieveResponse"]
39
9
 
40
10
 
41
11
  class MessagingRetrieveResponse(BaseModel):
42
- data: Optional[Data] = None
12
+ data: Optional[MdrUsageReportResponseLegacy] = None
43
13
  """Legacy V2 MDR usage report response"""
@@ -0,0 +1,17 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import Optional
4
+
5
+ from ....._models import BaseModel
6
+
7
+ __all__ = ["StandardPaginationMeta"]
8
+
9
+
10
+ class StandardPaginationMeta(BaseModel):
11
+ page_number: Optional[int] = None
12
+
13
+ page_size: Optional[int] = None
14
+
15
+ total_pages: Optional[int] = None
16
+
17
+ total_results: Optional[int] = None
@@ -1,48 +1,13 @@
1
1
  # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
- from typing import List, Optional
4
- from datetime import datetime
3
+ from typing import Optional
5
4
 
6
5
  from ....._models import BaseModel
6
+ from .cdr_usage_report_response_legacy import CdrUsageReportResponseLegacy
7
7
 
8
- __all__ = ["VoiceCreateResponse", "Data"]
9
-
10
-
11
- class Data(BaseModel):
12
- id: Optional[str] = None
13
- """Identifies the resource"""
14
-
15
- aggregation_type: Optional[int] = None
16
- """
17
- Aggregation type: All = 0, By Connections = 1, By Tags = 2, By Billing Group = 3
18
- """
19
-
20
- connections: Optional[List[int]] = None
21
-
22
- created_at: Optional[datetime] = None
23
-
24
- end_time: Optional[datetime] = None
25
-
26
- product_breakdown: Optional[int] = None
27
- """
28
- Product breakdown type: No breakdown = 0, DID vs Toll-free = 1, Country = 2, DID
29
- vs Toll-free per Country = 3
30
- """
31
-
32
- record_type: Optional[str] = None
33
-
34
- report_url: Optional[str] = None
35
-
36
- result: Optional[object] = None
37
-
38
- start_time: Optional[datetime] = None
39
-
40
- status: Optional[int] = None
41
- """Status of the report: Pending = 1, Complete = 2, Failed = 3, Expired = 4"""
42
-
43
- updated_at: Optional[datetime] = None
8
+ __all__ = ["VoiceCreateResponse"]
44
9
 
45
10
 
46
11
  class VoiceCreateResponse(BaseModel):
47
- data: Optional[Data] = None
12
+ data: Optional[CdrUsageReportResponseLegacy] = None
48
13
  """Legacy V2 CDR usage report response"""