telnyx 3.5.0a0__py3-none-any.whl → 3.6.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 (224) hide show
  1. telnyx/_client.py +56 -756
  2. telnyx/_version.py +1 -1
  3. telnyx/resources/__init__.py +70 -0
  4. telnyx/resources/advanced_orders.py +63 -63
  5. telnyx/resources/ai/assistants/assistants.py +15 -17
  6. telnyx/resources/ai/assistants/versions.py +13 -15
  7. telnyx/resources/ai/conversations/conversations.py +137 -3
  8. telnyx/resources/ai/conversations/messages.py +1 -134
  9. telnyx/resources/brand/brand.py +8 -4
  10. telnyx/resources/calls/actions.py +154 -150
  11. telnyx/resources/calls/calls.py +18 -10
  12. telnyx/resources/conferences/actions.py +8 -24
  13. telnyx/resources/conferences/conferences.py +2 -6
  14. telnyx/resources/documents.py +242 -37
  15. telnyx/resources/legacy/__init__.py +33 -0
  16. telnyx/resources/legacy/legacy.py +102 -0
  17. telnyx/resources/legacy/reporting/__init__.py +47 -0
  18. telnyx/resources/legacy/reporting/batch_detail_records/__init__.py +61 -0
  19. telnyx/resources/legacy/reporting/batch_detail_records/batch_detail_records.py +166 -0
  20. telnyx/resources/legacy/reporting/batch_detail_records/messaging.py +482 -0
  21. telnyx/resources/legacy/reporting/batch_detail_records/speech_to_text.py +399 -0
  22. telnyx/resources/legacy/reporting/batch_detail_records/voice.py +539 -0
  23. telnyx/resources/legacy/reporting/reporting.py +134 -0
  24. telnyx/resources/legacy/reporting/usage_reports/__init__.py +61 -0
  25. telnyx/resources/legacy/reporting/usage_reports/messaging.py +471 -0
  26. telnyx/resources/legacy/reporting/usage_reports/number_lookup.py +464 -0
  27. telnyx/resources/legacy/reporting/usage_reports/usage_reports.py +288 -0
  28. telnyx/resources/legacy/reporting/usage_reports/voice.py +493 -0
  29. telnyx/resources/messaging_profiles/messaging_profiles.py +16 -0
  30. telnyx/resources/messaging_tollfree/verification/requests.py +203 -1
  31. telnyx/resources/oauth.py +855 -0
  32. telnyx/resources/oauth_clients.py +711 -0
  33. telnyx/resources/oauth_grants.py +349 -0
  34. telnyx/resources/outbound_voice_profiles.py +24 -4
  35. telnyx/resources/phone_numbers/jobs.py +12 -0
  36. telnyx/resources/porting_orders/porting_orders.py +20 -8
  37. telnyx/resources/sim_cards/actions.py +12 -12
  38. telnyx/resources/sim_cards/sim_cards.py +3 -2
  39. telnyx/resources/texml/accounts/calls/calls.py +11 -0
  40. telnyx/resources/texml/accounts/conferences/participants.py +11 -0
  41. telnyx/resources/verifications/verifications.py +10 -0
  42. telnyx/resources/verified_numbers/verified_numbers.py +25 -4
  43. telnyx/resources/verify_profiles.py +182 -1
  44. telnyx/resources/well_known.py +198 -0
  45. telnyx/types/__init__.py +51 -9
  46. telnyx/types/access_ip_address_list_response.py +3 -12
  47. telnyx/types/access_ip_range_list_response.py +3 -12
  48. telnyx/types/addresses/action_validate_response.py +8 -3
  49. telnyx/types/{advanced_order_update_params.py → advanced_order_update_requirement_group_params.py} +2 -2
  50. telnyx/types/ai/__init__.py +2 -3
  51. telnyx/types/ai/assistant_import_params.py +1 -1
  52. telnyx/types/ai/assistants/__init__.py +0 -3
  53. telnyx/types/ai/assistants_list.py +4 -88
  54. telnyx/types/ai/{conversations/message_create_params.py → conversation_add_message_params.py} +4 -4
  55. telnyx/types/ai/conversations/__init__.py +0 -1
  56. telnyx/types/ai/import_metadata.py +1 -1
  57. telnyx/types/ai/{assistant_clone_response.py → inference_embedding.py} +2 -2
  58. telnyx/types/ai/inference_embedding_transfer_tool_params.py +6 -0
  59. telnyx/types/ai/inference_embedding_transfer_tool_params_param.py +6 -0
  60. telnyx/types/ai/inference_embedding_webhook_tool_params.py +2 -0
  61. telnyx/types/ai/inference_embedding_webhook_tool_params_param.py +2 -0
  62. telnyx/types/ai/voice_settings.py +49 -2
  63. telnyx/types/ai/voice_settings_param.py +49 -2
  64. telnyx/types/brand_create_params.py +2 -1
  65. telnyx/types/brand_update_params.py +2 -1
  66. telnyx/types/call_dial_params.py +11 -3
  67. telnyx/types/calls/__init__.py +1 -0
  68. telnyx/types/calls/action_answer_params.py +1 -2
  69. telnyx/types/calls/action_gather_using_ai_params.py +5 -8
  70. telnyx/types/calls/action_start_streaming_params.py +5 -2
  71. telnyx/types/calls/action_start_transcription_params.py +160 -6
  72. telnyx/types/calls/action_transfer_params.py +50 -0
  73. telnyx/types/calls/telnyx_transcription_language.py +108 -0
  74. telnyx/types/calls/transcription_engine_b_config_param.py +3 -102
  75. telnyx/types/calls/transcription_start_request_param.py +161 -6
  76. telnyx/types/campaign_submit_appeal_response.py +0 -3
  77. telnyx/types/country_coverage_retrieve_country_response.py +7 -0
  78. telnyx/types/country_coverage_retrieve_response.py +7 -0
  79. telnyx/types/document_upload_json_params.py +39 -0
  80. telnyx/types/document_upload_json_response.py +12 -0
  81. telnyx/types/legacy/__init__.py +3 -0
  82. telnyx/types/legacy/reporting/__init__.py +12 -0
  83. telnyx/types/legacy/reporting/batch_detail_records/__init__.py +24 -0
  84. telnyx/types/legacy/reporting/batch_detail_records/batch_csv_pagination_meta.py +17 -0
  85. telnyx/types/legacy/reporting/batch_detail_records/cdr_detailed_req_response.py +63 -0
  86. telnyx/types/legacy/reporting/batch_detail_records/mdr_detail_report_response.py +42 -0
  87. telnyx/types/legacy/reporting/batch_detail_records/messaging_create_params.py +55 -0
  88. telnyx/types/legacy/reporting/batch_detail_records/messaging_create_response.py +12 -0
  89. telnyx/types/legacy/reporting/batch_detail_records/messaging_delete_response.py +12 -0
  90. telnyx/types/legacy/reporting/batch_detail_records/messaging_list_response.py +15 -0
  91. telnyx/types/legacy/reporting/batch_detail_records/messaging_retrieve_response.py +12 -0
  92. telnyx/types/legacy/reporting/batch_detail_records/speech_to_text_create_params.py +19 -0
  93. telnyx/types/legacy/reporting/batch_detail_records/speech_to_text_create_response.py +12 -0
  94. telnyx/types/legacy/reporting/batch_detail_records/speech_to_text_delete_response.py +12 -0
  95. telnyx/types/legacy/reporting/batch_detail_records/speech_to_text_list_response.py +12 -0
  96. telnyx/types/legacy/reporting/batch_detail_records/speech_to_text_retrieve_response.py +12 -0
  97. telnyx/types/legacy/reporting/batch_detail_records/stt_detail_report_response.py +27 -0
  98. telnyx/types/legacy/reporting/batch_detail_records/voice_create_params.py +57 -0
  99. telnyx/types/legacy/reporting/batch_detail_records/voice_create_response.py +13 -0
  100. telnyx/types/legacy/reporting/batch_detail_records/voice_delete_response.py +13 -0
  101. telnyx/types/legacy/reporting/batch_detail_records/voice_list_response.py +15 -0
  102. telnyx/types/legacy/reporting/batch_detail_records/voice_retrieve_fields_response.py +23 -0
  103. telnyx/types/legacy/reporting/batch_detail_records/voice_retrieve_response.py +13 -0
  104. telnyx/types/legacy/reporting/filter.py +31 -0
  105. telnyx/types/legacy/reporting/filter_param.py +30 -0
  106. telnyx/types/legacy/reporting/usage_report_retrieve_speech_to_text_params.py +17 -0
  107. telnyx/types/legacy/reporting/usage_report_retrieve_speech_to_text_response.py +11 -0
  108. telnyx/types/legacy/reporting/usage_reports/__init__.py +21 -0
  109. telnyx/types/legacy/reporting/usage_reports/cdr_usage_report_response_legacy.py +43 -0
  110. telnyx/types/legacy/reporting/usage_reports/mdr_usage_report_response_legacy.py +38 -0
  111. telnyx/types/legacy/reporting/usage_reports/messaging_create_params.py +29 -0
  112. telnyx/types/legacy/reporting/usage_reports/messaging_create_response.py +13 -0
  113. telnyx/types/legacy/reporting/usage_reports/messaging_delete_response.py +13 -0
  114. telnyx/types/legacy/reporting/usage_reports/messaging_list_params.py +15 -0
  115. telnyx/types/legacy/reporting/usage_reports/messaging_list_response.py +15 -0
  116. telnyx/types/legacy/reporting/usage_reports/messaging_retrieve_response.py +13 -0
  117. telnyx/types/legacy/reporting/usage_reports/number_lookup_create_params.py +26 -0
  118. telnyx/types/legacy/reporting/usage_reports/number_lookup_list_params.py +13 -0
  119. telnyx/types/legacy/reporting/usage_reports/standard_pagination_meta.py +17 -0
  120. telnyx/types/legacy/reporting/usage_reports/voice_create_params.py +40 -0
  121. telnyx/types/legacy/reporting/usage_reports/voice_create_response.py +13 -0
  122. telnyx/types/legacy/reporting/usage_reports/voice_delete_response.py +13 -0
  123. telnyx/types/legacy/reporting/usage_reports/voice_list_params.py +15 -0
  124. telnyx/types/legacy/reporting/usage_reports/voice_list_response.py +15 -0
  125. telnyx/types/legacy/reporting/usage_reports/voice_retrieve_response.py +13 -0
  126. telnyx/types/message_template.py +12 -0
  127. telnyx/types/messaging_profile.py +3 -0
  128. telnyx/types/messaging_profile_create_params.py +3 -0
  129. telnyx/types/messaging_profile_update_params.py +3 -0
  130. telnyx/types/messaging_tollfree/verification/__init__.py +1 -0
  131. telnyx/types/messaging_tollfree/verification/request_create_params.py +51 -1
  132. telnyx/types/messaging_tollfree/verification/request_update_params.py +51 -1
  133. telnyx/types/messaging_tollfree/verification/toll_free_verification_entity_type.py +9 -0
  134. telnyx/types/messaging_tollfree/verification/verification_request_egress.py +24 -0
  135. telnyx/types/messaging_tollfree/verification/verification_request_status.py +24 -0
  136. telnyx/types/number_order_status_update_webhook_event.py +30 -4
  137. telnyx/types/oauth_client.py +59 -0
  138. telnyx/types/oauth_client_create_params.py +39 -0
  139. telnyx/types/oauth_client_create_response.py +12 -0
  140. telnyx/types/oauth_client_list_params.py +38 -0
  141. telnyx/types/oauth_client_list_response.py +15 -0
  142. telnyx/types/oauth_client_retrieve_response.py +12 -0
  143. telnyx/types/oauth_client_update_params.py +36 -0
  144. telnyx/types/oauth_client_update_response.py +12 -0
  145. telnyx/types/oauth_grant.py +29 -0
  146. telnyx/types/oauth_grant_delete_response.py +12 -0
  147. telnyx/types/oauth_grant_list_params.py +17 -0
  148. telnyx/types/oauth_grant_list_response.py +15 -0
  149. telnyx/types/oauth_grant_retrieve_response.py +12 -0
  150. telnyx/types/oauth_grants_params.py +15 -0
  151. telnyx/types/oauth_grants_response.py +10 -0
  152. telnyx/types/oauth_introspect_params.py +12 -0
  153. telnyx/types/oauth_introspect_response.py +30 -0
  154. telnyx/types/oauth_register_params.py +39 -0
  155. telnyx/types/oauth_register_response.py +45 -0
  156. telnyx/types/oauth_retrieve_authorize_params.py +30 -0
  157. telnyx/types/oauth_retrieve_jwks_response.py +25 -0
  158. telnyx/types/oauth_retrieve_response.py +47 -0
  159. telnyx/types/oauth_token_params.py +33 -0
  160. telnyx/types/oauth_token_response.py +25 -0
  161. telnyx/types/outbound_voice_profile.py +27 -1
  162. telnyx/types/outbound_voice_profile_create_params.py +27 -1
  163. telnyx/types/outbound_voice_profile_list_params.py +1 -1
  164. telnyx/types/outbound_voice_profile_update_params.py +27 -1
  165. telnyx/types/pagination_meta_cloudflare_ip_list_sync.py +15 -0
  166. telnyx/types/pagination_meta_oauth.py +21 -0
  167. telnyx/types/phone_number_blocks/__init__.py +1 -0
  168. telnyx/types/phone_number_blocks/job.py +3 -34
  169. telnyx/types/phone_number_blocks/job_error.py +32 -0
  170. telnyx/types/phone_number_delete_response.py +7 -0
  171. telnyx/types/phone_number_detailed.py +7 -0
  172. telnyx/types/phone_number_list_params.py +6 -0
  173. telnyx/types/phone_numbers/job_update_batch_params.py +7 -0
  174. telnyx/types/phone_numbers/phone_numbers_job.py +3 -36
  175. telnyx/types/porting_order.py +3 -0
  176. telnyx/types/porting_order_create_params.py +3 -0
  177. telnyx/types/porting_order_list_params.py +52 -31
  178. telnyx/types/porting_order_update_params.py +2 -0
  179. telnyx/types/porting_orders/phone_number_configuration_list_params.py +19 -19
  180. telnyx/types/report_list_mdrs_response.py +3 -12
  181. telnyx/types/reports/__init__.py +1 -0
  182. telnyx/types/reports/mdr_usage_report_list_response.py +3 -12
  183. telnyx/types/reports/pagination_meta_reporting.py +17 -0
  184. telnyx/types/requirement_group.py +2 -2
  185. telnyx/types/requirement_group_list_params.py +1 -1
  186. telnyx/types/shared/__init__.py +1 -0
  187. telnyx/types/{error.py → shared/api_error.py} +3 -3
  188. telnyx/types/shared/simple_sim_card.py +15 -0
  189. telnyx/types/sim_card.py +12 -0
  190. telnyx/types/sim_card_update_params.py +2 -1
  191. telnyx/types/stream_bidirectional_codec.py +1 -1
  192. telnyx/types/stream_bidirectional_sampling_rate.py +7 -0
  193. telnyx/types/stream_codec.py +1 -1
  194. telnyx/types/texml/accounts/call_calls_params.py +16 -1
  195. telnyx/types/texml/accounts/conferences/participant_participants_params.py +16 -1
  196. telnyx/types/verification_trigger_call_params.py +7 -0
  197. telnyx/types/verifications/__init__.py +1 -0
  198. telnyx/types/verifications/by_phone_number_list_response.py +4 -13
  199. telnyx/types/verifications/verify_meta.py +17 -0
  200. telnyx/types/verified_number_create_params.py +10 -0
  201. telnyx/types/verify_profile.py +18 -3
  202. telnyx/types/verify_profile_create_template_params.py +12 -0
  203. telnyx/types/verify_profile_list_response.py +4 -13
  204. telnyx/types/verify_profile_message_template_response.py +13 -0
  205. telnyx/types/verify_profile_retrieve_templates_response.py +4 -9
  206. telnyx/types/verify_profile_update_template_params.py +12 -0
  207. telnyx/types/well_known_retrieve_authorization_server_metadata_response.py +42 -0
  208. telnyx/types/well_known_retrieve_protected_resource_metadata_response.py +15 -0
  209. {telnyx-3.5.0a0.dist-info → telnyx-3.6.0.dist-info}/METADATA +4 -4
  210. {telnyx-3.5.0a0.dist-info → telnyx-3.6.0.dist-info}/RECORD +212 -121
  211. telnyx/types/ai/assistant_create_response.py +0 -92
  212. telnyx/types/ai/assistant_retrieve_response.py +0 -92
  213. telnyx/types/ai/assistants/version_promote_response.py +0 -92
  214. telnyx/types/ai/assistants/version_retrieve_response.py +0 -92
  215. telnyx/types/ai/assistants/version_update_response.py +0 -92
  216. telnyx/types/client_create_bucket_params.py +0 -13
  217. telnyx/types/client_delete_objects_params.py +0 -20
  218. telnyx/types/client_get_object_params.py +0 -15
  219. telnyx/types/client_list_objects_params.py +0 -13
  220. telnyx/types/client_put_object_params.py +0 -20
  221. telnyx/types/list_buckets_response.py +0 -20
  222. telnyx/types/list_objects_response.py +0 -24
  223. {telnyx-3.5.0a0.dist-info → telnyx-3.6.0.dist-info}/WHEEL +0 -0
  224. {telnyx-3.5.0a0.dist-info → telnyx-3.6.0.dist-info}/licenses/LICENSE +0 -0
@@ -8,7 +8,27 @@ from .traffic_type import TrafficType
8
8
  from .usage_payment_method import UsagePaymentMethod
9
9
  from .outbound_call_recording import OutboundCallRecording
10
10
 
11
- __all__ = ["OutboundVoiceProfile"]
11
+ __all__ = ["OutboundVoiceProfile", "CallingWindow"]
12
+
13
+
14
+ class CallingWindow(BaseModel):
15
+ calls_per_cld: Optional[int] = None
16
+ """
17
+ (BETA) The maximum number of calls that can be initiated to a single called
18
+ party (CLD) within the calling window. A null value means no limit.
19
+ """
20
+
21
+ end_time: Optional[str] = None
22
+ """
23
+ (BETA) The UTC time of day (in HH:MM format, 24-hour clock) when calls are no
24
+ longer allowed to start.
25
+ """
26
+
27
+ start_time: Optional[str] = None
28
+ """
29
+ (BETA) The UTC time of day (in HH:MM format, 24-hour clock) when calls are
30
+ allowed to start.
31
+ """
12
32
 
13
33
 
14
34
  class OutboundVoiceProfile(BaseModel):
@@ -26,6 +46,12 @@ class OutboundVoiceProfile(BaseModel):
26
46
 
27
47
  call_recording: Optional[OutboundCallRecording] = None
28
48
 
49
+ calling_window: Optional[CallingWindow] = None
50
+ """
51
+ (BETA) Specifies the time window and call limits for calls made using this
52
+ outbound voice profile. Note that all times are UTC in 24-hour clock time.
53
+ """
54
+
29
55
  concurrent_call_limit: Optional[int] = None
30
56
  """Must be no more than your global concurrent call limit. Null means no limit."""
31
57
 
@@ -11,7 +11,7 @@ from .traffic_type import TrafficType
11
11
  from .usage_payment_method import UsagePaymentMethod
12
12
  from .outbound_call_recording_param import OutboundCallRecordingParam
13
13
 
14
- __all__ = ["OutboundVoiceProfileCreateParams"]
14
+ __all__ = ["OutboundVoiceProfileCreateParams", "CallingWindow"]
15
15
 
16
16
 
17
17
  class OutboundVoiceProfileCreateParams(TypedDict, total=False):
@@ -26,6 +26,12 @@ class OutboundVoiceProfileCreateParams(TypedDict, total=False):
26
26
 
27
27
  call_recording: OutboundCallRecordingParam
28
28
 
29
+ calling_window: CallingWindow
30
+ """
31
+ (BETA) Specifies the time window and call limits for calls made using this
32
+ outbound voice profile. Note that all times are UTC in 24-hour clock time.
33
+ """
34
+
29
35
  concurrent_call_limit: Optional[int]
30
36
  """Must be no more than your global concurrent call limit. Null means no limit."""
31
37
 
@@ -70,3 +76,23 @@ class OutboundVoiceProfileCreateParams(TypedDict, total=False):
70
76
  The list of destinations you want to be able to call using this outbound voice
71
77
  profile formatted in alpha2.
72
78
  """
79
+
80
+
81
+ class CallingWindow(TypedDict, total=False):
82
+ calls_per_cld: int
83
+ """
84
+ (BETA) The maximum number of calls that can be initiated to a single called
85
+ party (CLD) within the calling window. A null value means no limit.
86
+ """
87
+
88
+ end_time: str
89
+ """
90
+ (BETA) The UTC time of day (in HH:MM format, 24-hour clock) when calls are no
91
+ longer allowed to start.
92
+ """
93
+
94
+ start_time: str
95
+ """
96
+ (BETA) The UTC time of day (in HH:MM format, 24-hour clock) when calls are
97
+ allowed to start.
98
+ """
@@ -17,7 +17,7 @@ class OutboundVoiceProfileListParams(TypedDict, total=False):
17
17
  page: Page
18
18
  """Consolidated page parameter (deepObject style).
19
19
 
20
- Originally: page[number], page[size]
20
+ Originally: page[size], page[number]
21
21
  """
22
22
 
23
23
  sort: Literal[
@@ -11,7 +11,7 @@ from .traffic_type import TrafficType
11
11
  from .usage_payment_method import UsagePaymentMethod
12
12
  from .outbound_call_recording_param import OutboundCallRecordingParam
13
13
 
14
- __all__ = ["OutboundVoiceProfileUpdateParams"]
14
+ __all__ = ["OutboundVoiceProfileUpdateParams", "CallingWindow"]
15
15
 
16
16
 
17
17
  class OutboundVoiceProfileUpdateParams(TypedDict, total=False):
@@ -26,6 +26,12 @@ class OutboundVoiceProfileUpdateParams(TypedDict, total=False):
26
26
 
27
27
  call_recording: OutboundCallRecordingParam
28
28
 
29
+ calling_window: CallingWindow
30
+ """
31
+ (BETA) Specifies the time window and call limits for calls made using this
32
+ outbound voice profile.
33
+ """
34
+
29
35
  concurrent_call_limit: Optional[int]
30
36
  """Must be no more than your global concurrent call limit. Null means no limit."""
31
37
 
@@ -70,3 +76,23 @@ class OutboundVoiceProfileUpdateParams(TypedDict, total=False):
70
76
  The list of destinations you want to be able to call using this outbound voice
71
77
  profile formatted in alpha2.
72
78
  """
79
+
80
+
81
+ class CallingWindow(TypedDict, total=False):
82
+ calls_per_cld: int
83
+ """
84
+ (BETA) The maximum number of calls that can be initiated to a single called
85
+ party (CLD) within the calling window. A null value means no limit.
86
+ """
87
+
88
+ end_time: str
89
+ """
90
+ (BETA) The UTC time of day (in HH:MM format, 24-hour clock) when calls are no
91
+ longer allowed to start.
92
+ """
93
+
94
+ start_time: str
95
+ """
96
+ (BETA) The UTC time of day (in HH:MM format, 24-hour clock) when calls are
97
+ allowed to start.
98
+ """
@@ -0,0 +1,15 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from .._models import BaseModel
4
+
5
+ __all__ = ["PaginationMetaCloudflareIPListSync"]
6
+
7
+
8
+ class PaginationMetaCloudflareIPListSync(BaseModel):
9
+ page_number: int
10
+
11
+ page_size: int
12
+
13
+ total_pages: int
14
+
15
+ total_results: int
@@ -0,0 +1,21 @@
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__ = ["PaginationMetaOAuth"]
8
+
9
+
10
+ class PaginationMetaOAuth(BaseModel):
11
+ page_number: Optional[int] = None
12
+ """Current page number"""
13
+
14
+ page_size: Optional[int] = None
15
+ """Number of items per page"""
16
+
17
+ total_pages: Optional[int] = None
18
+ """Total number of pages"""
19
+
20
+ total_results: Optional[int] = None
21
+ """Total number of results"""
@@ -3,6 +3,7 @@
3
3
  from __future__ import annotations
4
4
 
5
5
  from .job import Job as Job
6
+ from .job_error import JobError as JobError
6
7
  from .job_list_params import JobListParams as JobListParams
7
8
  from .job_list_response import JobListResponse as JobListResponse
8
9
  from .job_retrieve_response import JobRetrieveResponse as JobRetrieveResponse
@@ -5,47 +5,16 @@ from datetime import datetime
5
5
  from typing_extensions import Literal
6
6
 
7
7
  from ..._models import BaseModel
8
+ from .job_error import JobError
8
9
 
9
- __all__ = [
10
- "Job",
11
- "FailedOperation",
12
- "FailedOperationError",
13
- "FailedOperationErrorMeta",
14
- "FailedOperationErrorSource",
15
- "SuccessfulOperation",
16
- ]
17
-
18
-
19
- class FailedOperationErrorMeta(BaseModel):
20
- url: Optional[str] = None
21
- """URL with additional information on the error."""
22
-
23
-
24
- class FailedOperationErrorSource(BaseModel):
25
- parameter: Optional[str] = None
26
- """Indicates which query parameter caused the error."""
27
-
28
- pointer: Optional[str] = None
29
- """JSON pointer (RFC6901) to the offending entity."""
30
-
31
-
32
- class FailedOperationError(BaseModel):
33
- code: str
34
-
35
- title: str
36
-
37
- detail: Optional[str] = None
38
-
39
- meta: Optional[FailedOperationErrorMeta] = None
40
-
41
- source: Optional[FailedOperationErrorSource] = None
10
+ __all__ = ["Job", "FailedOperation", "SuccessfulOperation"]
42
11
 
43
12
 
44
13
  class FailedOperation(BaseModel):
45
14
  id: Optional[str] = None
46
15
  """The phone number's ID"""
47
16
 
48
- errors: Optional[List[FailedOperationError]] = None
17
+ errors: Optional[List[JobError]] = None
49
18
 
50
19
  phone_number: Optional[str] = None
51
20
  """The phone number in e164 format."""
@@ -0,0 +1,32 @@
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__ = ["JobError", "Meta", "Source"]
8
+
9
+
10
+ class Meta(BaseModel):
11
+ url: Optional[str] = None
12
+ """URL with additional information on the error."""
13
+
14
+
15
+ class Source(BaseModel):
16
+ parameter: Optional[str] = None
17
+ """Indicates which query parameter caused the error."""
18
+
19
+ pointer: Optional[str] = None
20
+ """JSON pointer (RFC6901) to the offending entity."""
21
+
22
+
23
+ class JobError(BaseModel):
24
+ code: str
25
+
26
+ title: str
27
+
28
+ detail: Optional[str] = None
29
+
30
+ meta: Optional[Meta] = None
31
+
32
+ source: Optional[Source] = None
@@ -49,6 +49,13 @@ class Data(BaseModel):
49
49
  customer_reference: Optional[str] = None
50
50
  """A customer reference string for customer look ups."""
51
51
 
52
+ deletion_lock_enabled: Optional[bool] = None
53
+ """Indicates whether deletion lock is enabled for this number.
54
+
55
+ When enabled, this prevents the phone number from being deleted via the API or
56
+ Telnyx portal.
57
+ """
58
+
52
59
  emergency_address_id: Optional[str] = None
53
60
  """Identifies the emergency address associated with the phone number."""
54
61
 
@@ -49,6 +49,13 @@ class PhoneNumberDetailed(BaseModel):
49
49
  customer_reference: Optional[str] = None
50
50
  """A customer reference string for customer look ups."""
51
51
 
52
+ deletion_lock_enabled: Optional[bool] = None
53
+ """Indicates whether deletion lock is enabled for this number.
54
+
55
+ When enabled, this prevents the phone number from being deleted via the API or
56
+ Telnyx portal.
57
+ """
58
+
52
59
  emergency_address_id: Optional[str] = None
53
60
  """Identifies the emergency address associated with the phone number."""
54
61
 
@@ -122,6 +122,12 @@ class Filter(TypedDict, total=False):
122
122
  ]
123
123
  """Filter by usage_payment_method."""
124
124
 
125
+ without_tags: Literal["true", "false"]
126
+ """When set to 'true', filters for phone numbers that do not have any tags applied.
127
+
128
+ All other values are ignored.
129
+ """
130
+
125
131
 
126
132
  class Page(TypedDict, total=False):
127
133
  number: int
@@ -39,6 +39,13 @@ class JobUpdateBatchParams(TypedDict, total=False):
39
39
  customer_reference: str
40
40
  """A customer reference string for customer look ups."""
41
41
 
42
+ deletion_lock_enabled: bool
43
+ """Indicates whether to enable or disable the deletion lock on each phone number.
44
+
45
+ When enabled, this prevents the phone number from being deleted via the API or
46
+ Telnyx portal.
47
+ """
48
+
42
49
  external_pin: str
43
50
  """
44
51
  If someone attempts to port your phone number away from Telnyx and your phone
@@ -5,49 +5,16 @@ from datetime import datetime
5
5
  from typing_extensions import Literal
6
6
 
7
7
  from ..._models import BaseModel
8
+ from ..phone_number_blocks.job_error import JobError
8
9
 
9
- __all__ = [
10
- "PhoneNumbersJob",
11
- "FailedOperation",
12
- "FailedOperationError",
13
- "FailedOperationErrorMeta",
14
- "FailedOperationErrorSource",
15
- "PendingOperation",
16
- "PhoneNumber",
17
- "SuccessfulOperation",
18
- ]
19
-
20
-
21
- class FailedOperationErrorMeta(BaseModel):
22
- url: Optional[str] = None
23
- """URL with additional information on the error."""
24
-
25
-
26
- class FailedOperationErrorSource(BaseModel):
27
- parameter: Optional[str] = None
28
- """Indicates which query parameter caused the error."""
29
-
30
- pointer: Optional[str] = None
31
- """JSON pointer (RFC6901) to the offending entity."""
32
-
33
-
34
- class FailedOperationError(BaseModel):
35
- code: str
36
-
37
- title: str
38
-
39
- detail: Optional[str] = None
40
-
41
- meta: Optional[FailedOperationErrorMeta] = None
42
-
43
- source: Optional[FailedOperationErrorSource] = None
10
+ __all__ = ["PhoneNumbersJob", "FailedOperation", "PendingOperation", "PhoneNumber", "SuccessfulOperation"]
44
11
 
45
12
 
46
13
  class FailedOperation(BaseModel):
47
14
  id: Optional[str] = None
48
15
  """The phone number's ID"""
49
16
 
50
- errors: Optional[List[FailedOperationError]] = None
17
+ errors: Optional[List[JobError]] = None
51
18
 
52
19
  phone_number: Optional[str] = None
53
20
  """The phone number in e164 format."""
@@ -33,6 +33,9 @@ class PortingOrder(BaseModel):
33
33
  created_at: Optional[datetime] = None
34
34
  """ISO 8601 formatted date indicating when the resource was created."""
35
35
 
36
+ customer_group_reference: Optional[str] = None
37
+ """A customer-specified group reference for customer bookkeeping purposes"""
38
+
36
39
  customer_reference: Optional[str] = None
37
40
  """A customer-specified reference number for customer bookkeeping purposes"""
38
41
 
@@ -13,5 +13,8 @@ class PortingOrderCreateParams(TypedDict, total=False):
13
13
  phone_numbers: Required[SequenceNotStr[str]]
14
14
  """The list of +E.164 formatted phone numbers"""
15
15
 
16
+ customer_group_reference: str
17
+ """A customer-specified group reference for customer bookkeeping purposes"""
18
+
16
19
  customer_reference: str
17
20
  """A customer-specified reference number for customer bookkeeping purposes"""
@@ -2,15 +2,19 @@
2
2
 
3
3
  from __future__ import annotations
4
4
 
5
- from typing_extensions import Literal, Annotated, TypedDict
5
+ from typing_extensions import Literal, TypedDict
6
6
 
7
- from .._utils import PropertyInfo
8
7
  from .porting_order_type import PortingOrderType
9
8
 
10
9
  __all__ = [
11
10
  "PortingOrderListParams",
12
11
  "Filter",
12
+ "FilterActivationSettings",
13
13
  "FilterActivationSettingsFocDatetimeRequested",
14
+ "FilterEndUser",
15
+ "FilterEndUserAdmin",
16
+ "FilterMisc",
17
+ "FilterPhoneNumbers",
14
18
  "FilterPhoneNumbersPhoneNumber",
15
19
  "Page",
16
20
  "Sort",
@@ -21,10 +25,10 @@ class PortingOrderListParams(TypedDict, total=False):
21
25
  filter: Filter
22
26
  """Consolidated filter parameter (deepObject style).
23
27
 
24
- Originally: filter[customer_reference], filter[parent_support_key],
25
- filter[phone_numbers.country_code], filter[phone_numbers.carrier_name],
26
- filter[misc.type], filter[end_user.admin.entity_name],
27
- filter[end_user.admin.auth_person_name],
28
+ Originally: filter[customer_reference], filter[customer_group_reference],
29
+ filter[parent_support_key], filter[phone_numbers.country_code],
30
+ filter[phone_numbers.carrier_name], filter[misc.type],
31
+ filter[end_user.admin.entity_name], filter[end_user.admin.auth_person_name],
28
32
  filter[activation_settings.fast_port_eligible],
29
33
  filter[activation_settings.foc_datetime_requested][gt],
30
34
  filter[activation_settings.foc_datetime_requested][lt],
@@ -52,47 +56,64 @@ class FilterActivationSettingsFocDatetimeRequested(TypedDict, total=False):
52
56
  """Filter results by foc date earlier than this value"""
53
57
 
54
58
 
55
- class FilterPhoneNumbersPhoneNumber(TypedDict, total=False):
56
- contains: str
57
- """Filter results by full or partial phone_number"""
58
-
59
-
60
- class Filter(TypedDict, total=False):
61
- activation_settings_fast_port_eligible: Annotated[
62
- bool, PropertyInfo(alias="activation_settings.fast_port_eligible")
63
- ]
59
+ class FilterActivationSettings(TypedDict, total=False):
60
+ fast_port_eligible: bool
64
61
  """Filter results by fast port eligible"""
65
62
 
66
- activation_settings_foc_datetime_requested: Annotated[
67
- FilterActivationSettingsFocDatetimeRequested, PropertyInfo(alias="activation_settings.foc_datetime_requested")
68
- ]
63
+ foc_datetime_requested: FilterActivationSettingsFocDatetimeRequested
69
64
  """FOC datetime range filtering operations"""
70
65
 
71
- customer_reference: str
72
- """Filter results by customer_reference"""
73
66
 
74
- end_user_admin_auth_person_name: Annotated[str, PropertyInfo(alias="end_user.admin.auth_person_name")]
67
+ class FilterEndUserAdmin(TypedDict, total=False):
68
+ auth_person_name: str
75
69
  """Filter results by authorized person"""
76
70
 
77
- end_user_admin_entity_name: Annotated[str, PropertyInfo(alias="end_user.admin.entity_name")]
71
+ entity_name: str
78
72
  """Filter results by person or company name"""
79
73
 
80
- misc_type: Annotated[PortingOrderType, PropertyInfo(alias="misc.type")]
74
+
75
+ class FilterEndUser(TypedDict, total=False):
76
+ admin: FilterEndUserAdmin
77
+
78
+
79
+ class FilterMisc(TypedDict, total=False):
80
+ type: PortingOrderType
81
81
  """Filter results by porting order type"""
82
82
 
83
- parent_support_key: str
84
- """Filter results by parent_support_key"""
85
83
 
86
- phone_numbers_carrier_name: Annotated[str, PropertyInfo(alias="phone_numbers.carrier_name")]
84
+ class FilterPhoneNumbersPhoneNumber(TypedDict, total=False):
85
+ contains: str
86
+ """Filter results by full or partial phone_number"""
87
+
88
+
89
+ class FilterPhoneNumbers(TypedDict, total=False):
90
+ carrier_name: str
87
91
  """Filter results by old service provider"""
88
92
 
89
- phone_numbers_country_code: Annotated[str, PropertyInfo(alias="phone_numbers.country_code")]
93
+ country_code: str
90
94
  """Filter results by country ISO 3166-1 alpha-2 code"""
91
95
 
92
- phone_numbers_phone_number: Annotated[
93
- FilterPhoneNumbersPhoneNumber, PropertyInfo(alias="phone_numbers.phone_number")
94
- ]
95
- """Phone number filtering operations"""
96
+ phone_number: FilterPhoneNumbersPhoneNumber
97
+ """Phone number pattern filtering operations"""
98
+
99
+
100
+ class Filter(TypedDict, total=False):
101
+ activation_settings: FilterActivationSettings
102
+
103
+ customer_group_reference: str
104
+ """Filter results by customer_group_reference"""
105
+
106
+ customer_reference: str
107
+ """Filter results by customer_reference"""
108
+
109
+ end_user: FilterEndUser
110
+
111
+ misc: FilterMisc
112
+
113
+ parent_support_key: str
114
+ """Filter results by parent_support_key"""
115
+
116
+ phone_numbers: FilterPhoneNumbers
96
117
 
97
118
 
98
119
  class Page(TypedDict, total=False):
@@ -19,6 +19,8 @@ __all__ = ["PortingOrderUpdateParams", "ActivationSettings", "Messaging", "Requi
19
19
  class PortingOrderUpdateParams(TypedDict, total=False):
20
20
  activation_settings: ActivationSettings
21
21
 
22
+ customer_group_reference: str
23
+
22
24
  customer_reference: str
23
25
 
24
26
  documents: PortingOrderDocumentsParam
@@ -3,12 +3,11 @@
3
3
  from __future__ import annotations
4
4
 
5
5
  from typing import List
6
- from typing_extensions import Literal, Annotated, TypedDict
6
+ from typing_extensions import Literal, TypedDict
7
7
 
8
8
  from ..._types import SequenceNotStr
9
- from ..._utils import PropertyInfo
10
9
 
11
- __all__ = ["PhoneNumberConfigurationListParams", "Filter", "Page", "Sort"]
10
+ __all__ = ["PhoneNumberConfigurationListParams", "Filter", "FilterPortingOrder", "Page", "Sort"]
12
11
 
13
12
 
14
13
  class PhoneNumberConfigurationListParams(TypedDict, total=False):
@@ -29,25 +28,26 @@ class PhoneNumberConfigurationListParams(TypedDict, total=False):
29
28
  """Consolidated sort parameter (deepObject style). Originally: sort[value]"""
30
29
 
31
30
 
32
- class Filter(TypedDict, total=False):
33
- porting_order_status: Annotated[
34
- List[
35
- Literal[
36
- "activation-in-progress",
37
- "cancel-pending",
38
- "cancelled",
39
- "draft",
40
- "exception",
41
- "foc-date-confirmed",
42
- "in-process",
43
- "ported",
44
- "submitted",
45
- ]
46
- ],
47
- PropertyInfo(alias="porting_order.status"),
31
+ class FilterPortingOrder(TypedDict, total=False):
32
+ status: List[
33
+ Literal[
34
+ "activation-in-progress",
35
+ "cancel-pending",
36
+ "cancelled",
37
+ "draft",
38
+ "exception",
39
+ "foc-date-confirmed",
40
+ "in-process",
41
+ "ported",
42
+ "submitted",
43
+ ]
48
44
  ]
49
45
  """Filter results by specific porting order statuses"""
50
46
 
47
+
48
+ class Filter(TypedDict, total=False):
49
+ porting_order: FilterPortingOrder
50
+
51
51
  porting_phone_number: SequenceNotStr[str]
52
52
  """Filter results by a list of porting phone number IDs"""
53
53
 
@@ -5,8 +5,9 @@ from datetime import datetime
5
5
  from typing_extensions import Literal
6
6
 
7
7
  from .._models import BaseModel
8
+ from .reports.pagination_meta_reporting import PaginationMetaReporting
8
9
 
9
- __all__ = ["ReportListMdrsResponse", "Data", "Meta"]
10
+ __all__ = ["ReportListMdrsResponse", "Data"]
10
11
 
11
12
 
12
13
  class Data(BaseModel):
@@ -58,17 +59,7 @@ class Data(BaseModel):
58
59
  """Message status"""
59
60
 
60
61
 
61
- class Meta(BaseModel):
62
- page_number: Optional[int] = None
63
-
64
- page_size: Optional[int] = None
65
-
66
- total_pages: Optional[int] = None
67
-
68
- total_results: Optional[int] = None
69
-
70
-
71
62
  class ReportListMdrsResponse(BaseModel):
72
63
  data: Optional[List[Data]] = None
73
64
 
74
- meta: Optional[Meta] = None
65
+ meta: Optional[PaginationMetaReporting] = None
@@ -3,6 +3,7 @@
3
3
  from __future__ import annotations
4
4
 
5
5
  from .mdr_usage_report import MdrUsageReport as MdrUsageReport
6
+ from .pagination_meta_reporting import PaginationMetaReporting as PaginationMetaReporting
6
7
  from .mdr_usage_report_list_params import MdrUsageReportListParams as MdrUsageReportListParams
7
8
  from .mdr_usage_report_create_params import MdrUsageReportCreateParams as MdrUsageReportCreateParams
8
9
  from .mdr_usage_report_list_response import MdrUsageReportListResponse as MdrUsageReportListResponse
@@ -4,21 +4,12 @@ from typing import List, Optional
4
4
 
5
5
  from ..._models import BaseModel
6
6
  from .mdr_usage_report import MdrUsageReport
7
+ from .pagination_meta_reporting import PaginationMetaReporting
7
8
 
8
- __all__ = ["MdrUsageReportListResponse", "Meta"]
9
-
10
-
11
- class Meta(BaseModel):
12
- page_number: Optional[int] = None
13
-
14
- page_size: Optional[int] = None
15
-
16
- total_pages: Optional[int] = None
17
-
18
- total_results: Optional[int] = None
9
+ __all__ = ["MdrUsageReportListResponse"]
19
10
 
20
11
 
21
12
  class MdrUsageReportListResponse(BaseModel):
22
13
  data: Optional[List[MdrUsageReport]] = None
23
14
 
24
- meta: Optional[Meta] = None
15
+ meta: Optional[PaginationMetaReporting] = None