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