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
@@ -2,7 +2,7 @@
2
2
 
3
3
  from __future__ import annotations
4
4
 
5
- from typing import Union, Iterable
5
+ from typing import Union, Iterable, Optional
6
6
  from datetime import datetime
7
7
 
8
8
  import httpx
@@ -22,6 +22,7 @@ from ....types.messaging_tollfree.verification import (
22
22
  Volume,
23
23
  UseCaseCategories,
24
24
  TfVerificationStatus,
25
+ TollFreeVerificationEntityType,
25
26
  request_list_params,
26
27
  request_create_params,
27
28
  request_update_params,
@@ -34,6 +35,7 @@ from ....types.messaging_tollfree.verification.tf_phone_number_param import TfPh
34
35
  from ....types.messaging_tollfree.verification.tf_verification_status import TfVerificationStatus
35
36
  from ....types.messaging_tollfree.verification.verification_request_egress import VerificationRequestEgress
36
37
  from ....types.messaging_tollfree.verification.verification_request_status import VerificationRequestStatus
38
+ from ....types.messaging_tollfree.verification.toll_free_verification_entity_type import TollFreeVerificationEntityType
37
39
 
38
40
  __all__ = ["RequestsResource", "AsyncRequestsResource"]
39
41
 
@@ -80,7 +82,18 @@ class RequestsResource(SyncAPIResource):
80
82
  production_message_content: str,
81
83
  use_case: UseCaseCategories,
82
84
  use_case_summary: str,
85
+ age_gated_content: bool | Omit = omit,
83
86
  business_addr2: str | Omit = omit,
87
+ business_registration_country: Optional[str] | Omit = omit,
88
+ business_registration_number: Optional[str] | Omit = omit,
89
+ business_registration_type: Optional[str] | Omit = omit,
90
+ doing_business_as: Optional[str] | Omit = omit,
91
+ entity_type: Optional[TollFreeVerificationEntityType] | Omit = omit,
92
+ help_message_response: Optional[str] | Omit = omit,
93
+ opt_in_confirmation_response: Optional[str] | Omit = omit,
94
+ opt_in_keywords: Optional[str] | Omit = omit,
95
+ privacy_policy_url: Optional[str] | Omit = omit,
96
+ terms_and_condition_url: Optional[str] | Omit = omit,
84
97
  webhook_url: str | Omit = omit,
85
98
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
86
99
  # The extra values given here take precedence over values defined on the client or passed to this method.
@@ -135,8 +148,36 @@ class RequestsResource(SyncAPIResource):
135
148
 
136
149
  use_case_summary: Human-readable summary of the desired use-case
137
150
 
151
+ age_gated_content: Indicates if messaging content requires age gating (e.g., 18+). Defaults to
152
+ false if not provided.
153
+
138
154
  business_addr2: Line 2 of the business address
139
155
 
156
+ business_registration_country: ISO 3166-1 alpha-2 country code of the issuing business authority. Must be
157
+ exactly 2 letters. Automatically converted to uppercase. Required from
158
+ January 2026.
159
+
160
+ business_registration_number: Official business registration number (e.g., Employer Identification Number
161
+ (EIN) in the U.S.). Required from January 2026.
162
+
163
+ business_registration_type: Type of business registration being provided. Required from January 2026.
164
+
165
+ doing_business_as: Doing Business As (DBA) name if different from legal name
166
+
167
+ entity_type: Business entity classification
168
+
169
+ help_message_response: The message returned when users text 'HELP'
170
+
171
+ opt_in_confirmation_response: Message sent to users confirming their opt-in to receive messages
172
+
173
+ opt_in_keywords: Keywords used to collect and process consumer opt-ins
174
+
175
+ privacy_policy_url: URL pointing to the business's privacy policy. Plain string, no URL format
176
+ validation.
177
+
178
+ terms_and_condition_url: URL pointing to the business's terms and conditions. Plain string, no URL format
179
+ validation.
180
+
140
181
  webhook_url: URL that should receive webhooks relating to this verification request
141
182
 
142
183
  extra_headers: Send extra headers
@@ -170,7 +211,18 @@ class RequestsResource(SyncAPIResource):
170
211
  "production_message_content": production_message_content,
171
212
  "use_case": use_case,
172
213
  "use_case_summary": use_case_summary,
214
+ "age_gated_content": age_gated_content,
173
215
  "business_addr2": business_addr2,
216
+ "business_registration_country": business_registration_country,
217
+ "business_registration_number": business_registration_number,
218
+ "business_registration_type": business_registration_type,
219
+ "doing_business_as": doing_business_as,
220
+ "entity_type": entity_type,
221
+ "help_message_response": help_message_response,
222
+ "opt_in_confirmation_response": opt_in_confirmation_response,
223
+ "opt_in_keywords": opt_in_keywords,
224
+ "privacy_policy_url": privacy_policy_url,
225
+ "terms_and_condition_url": terms_and_condition_url,
174
226
  "webhook_url": webhook_url,
175
227
  },
176
228
  request_create_params.RequestCreateParams,
@@ -237,7 +289,18 @@ class RequestsResource(SyncAPIResource):
237
289
  production_message_content: str,
238
290
  use_case: UseCaseCategories,
239
291
  use_case_summary: str,
292
+ age_gated_content: bool | Omit = omit,
240
293
  business_addr2: str | Omit = omit,
294
+ business_registration_country: Optional[str] | Omit = omit,
295
+ business_registration_number: Optional[str] | Omit = omit,
296
+ business_registration_type: Optional[str] | Omit = omit,
297
+ doing_business_as: Optional[str] | Omit = omit,
298
+ entity_type: Optional[TollFreeVerificationEntityType] | Omit = omit,
299
+ help_message_response: Optional[str] | Omit = omit,
300
+ opt_in_confirmation_response: Optional[str] | Omit = omit,
301
+ opt_in_keywords: Optional[str] | Omit = omit,
302
+ privacy_policy_url: Optional[str] | Omit = omit,
303
+ terms_and_condition_url: Optional[str] | Omit = omit,
241
304
  webhook_url: str | Omit = omit,
242
305
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
243
306
  # The extra values given here take precedence over values defined on the client or passed to this method.
@@ -294,8 +357,36 @@ class RequestsResource(SyncAPIResource):
294
357
 
295
358
  use_case_summary: Human-readable summary of the desired use-case
296
359
 
360
+ age_gated_content: Indicates if messaging content requires age gating (e.g., 18+). Defaults to
361
+ false if not provided.
362
+
297
363
  business_addr2: Line 2 of the business address
298
364
 
365
+ business_registration_country: ISO 3166-1 alpha-2 country code of the issuing business authority. Must be
366
+ exactly 2 letters. Automatically converted to uppercase. Required from
367
+ January 2026.
368
+
369
+ business_registration_number: Official business registration number (e.g., Employer Identification Number
370
+ (EIN) in the U.S.). Required from January 2026.
371
+
372
+ business_registration_type: Type of business registration being provided. Required from January 2026.
373
+
374
+ doing_business_as: Doing Business As (DBA) name if different from legal name
375
+
376
+ entity_type: Business entity classification
377
+
378
+ help_message_response: The message returned when users text 'HELP'
379
+
380
+ opt_in_confirmation_response: Message sent to users confirming their opt-in to receive messages
381
+
382
+ opt_in_keywords: Keywords used to collect and process consumer opt-ins
383
+
384
+ privacy_policy_url: URL pointing to the business's privacy policy. Plain string, no URL format
385
+ validation.
386
+
387
+ terms_and_condition_url: URL pointing to the business's terms and conditions. Plain string, no URL format
388
+ validation.
389
+
299
390
  webhook_url: URL that should receive webhooks relating to this verification request
300
391
 
301
392
  extra_headers: Send extra headers
@@ -331,7 +422,18 @@ class RequestsResource(SyncAPIResource):
331
422
  "production_message_content": production_message_content,
332
423
  "use_case": use_case,
333
424
  "use_case_summary": use_case_summary,
425
+ "age_gated_content": age_gated_content,
334
426
  "business_addr2": business_addr2,
427
+ "business_registration_country": business_registration_country,
428
+ "business_registration_number": business_registration_number,
429
+ "business_registration_type": business_registration_type,
430
+ "doing_business_as": doing_business_as,
431
+ "entity_type": entity_type,
432
+ "help_message_response": help_message_response,
433
+ "opt_in_confirmation_response": opt_in_confirmation_response,
434
+ "opt_in_keywords": opt_in_keywords,
435
+ "privacy_policy_url": privacy_policy_url,
436
+ "terms_and_condition_url": terms_and_condition_url,
335
437
  "webhook_url": webhook_url,
336
438
  },
337
439
  request_update_params.RequestUpdateParams,
@@ -480,7 +582,18 @@ class AsyncRequestsResource(AsyncAPIResource):
480
582
  production_message_content: str,
481
583
  use_case: UseCaseCategories,
482
584
  use_case_summary: str,
585
+ age_gated_content: bool | Omit = omit,
483
586
  business_addr2: str | Omit = omit,
587
+ business_registration_country: Optional[str] | Omit = omit,
588
+ business_registration_number: Optional[str] | Omit = omit,
589
+ business_registration_type: Optional[str] | Omit = omit,
590
+ doing_business_as: Optional[str] | Omit = omit,
591
+ entity_type: Optional[TollFreeVerificationEntityType] | Omit = omit,
592
+ help_message_response: Optional[str] | Omit = omit,
593
+ opt_in_confirmation_response: Optional[str] | Omit = omit,
594
+ opt_in_keywords: Optional[str] | Omit = omit,
595
+ privacy_policy_url: Optional[str] | Omit = omit,
596
+ terms_and_condition_url: Optional[str] | Omit = omit,
484
597
  webhook_url: str | Omit = omit,
485
598
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
486
599
  # The extra values given here take precedence over values defined on the client or passed to this method.
@@ -535,8 +648,36 @@ class AsyncRequestsResource(AsyncAPIResource):
535
648
 
536
649
  use_case_summary: Human-readable summary of the desired use-case
537
650
 
651
+ age_gated_content: Indicates if messaging content requires age gating (e.g., 18+). Defaults to
652
+ false if not provided.
653
+
538
654
  business_addr2: Line 2 of the business address
539
655
 
656
+ business_registration_country: ISO 3166-1 alpha-2 country code of the issuing business authority. Must be
657
+ exactly 2 letters. Automatically converted to uppercase. Required from
658
+ January 2026.
659
+
660
+ business_registration_number: Official business registration number (e.g., Employer Identification Number
661
+ (EIN) in the U.S.). Required from January 2026.
662
+
663
+ business_registration_type: Type of business registration being provided. Required from January 2026.
664
+
665
+ doing_business_as: Doing Business As (DBA) name if different from legal name
666
+
667
+ entity_type: Business entity classification
668
+
669
+ help_message_response: The message returned when users text 'HELP'
670
+
671
+ opt_in_confirmation_response: Message sent to users confirming their opt-in to receive messages
672
+
673
+ opt_in_keywords: Keywords used to collect and process consumer opt-ins
674
+
675
+ privacy_policy_url: URL pointing to the business's privacy policy. Plain string, no URL format
676
+ validation.
677
+
678
+ terms_and_condition_url: URL pointing to the business's terms and conditions. Plain string, no URL format
679
+ validation.
680
+
540
681
  webhook_url: URL that should receive webhooks relating to this verification request
541
682
 
542
683
  extra_headers: Send extra headers
@@ -570,7 +711,18 @@ class AsyncRequestsResource(AsyncAPIResource):
570
711
  "production_message_content": production_message_content,
571
712
  "use_case": use_case,
572
713
  "use_case_summary": use_case_summary,
714
+ "age_gated_content": age_gated_content,
573
715
  "business_addr2": business_addr2,
716
+ "business_registration_country": business_registration_country,
717
+ "business_registration_number": business_registration_number,
718
+ "business_registration_type": business_registration_type,
719
+ "doing_business_as": doing_business_as,
720
+ "entity_type": entity_type,
721
+ "help_message_response": help_message_response,
722
+ "opt_in_confirmation_response": opt_in_confirmation_response,
723
+ "opt_in_keywords": opt_in_keywords,
724
+ "privacy_policy_url": privacy_policy_url,
725
+ "terms_and_condition_url": terms_and_condition_url,
574
726
  "webhook_url": webhook_url,
575
727
  },
576
728
  request_create_params.RequestCreateParams,
@@ -637,7 +789,18 @@ class AsyncRequestsResource(AsyncAPIResource):
637
789
  production_message_content: str,
638
790
  use_case: UseCaseCategories,
639
791
  use_case_summary: str,
792
+ age_gated_content: bool | Omit = omit,
640
793
  business_addr2: str | Omit = omit,
794
+ business_registration_country: Optional[str] | Omit = omit,
795
+ business_registration_number: Optional[str] | Omit = omit,
796
+ business_registration_type: Optional[str] | Omit = omit,
797
+ doing_business_as: Optional[str] | Omit = omit,
798
+ entity_type: Optional[TollFreeVerificationEntityType] | Omit = omit,
799
+ help_message_response: Optional[str] | Omit = omit,
800
+ opt_in_confirmation_response: Optional[str] | Omit = omit,
801
+ opt_in_keywords: Optional[str] | Omit = omit,
802
+ privacy_policy_url: Optional[str] | Omit = omit,
803
+ terms_and_condition_url: Optional[str] | Omit = omit,
641
804
  webhook_url: str | Omit = omit,
642
805
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
643
806
  # The extra values given here take precedence over values defined on the client or passed to this method.
@@ -694,8 +857,36 @@ class AsyncRequestsResource(AsyncAPIResource):
694
857
 
695
858
  use_case_summary: Human-readable summary of the desired use-case
696
859
 
860
+ age_gated_content: Indicates if messaging content requires age gating (e.g., 18+). Defaults to
861
+ false if not provided.
862
+
697
863
  business_addr2: Line 2 of the business address
698
864
 
865
+ business_registration_country: ISO 3166-1 alpha-2 country code of the issuing business authority. Must be
866
+ exactly 2 letters. Automatically converted to uppercase. Required from
867
+ January 2026.
868
+
869
+ business_registration_number: Official business registration number (e.g., Employer Identification Number
870
+ (EIN) in the U.S.). Required from January 2026.
871
+
872
+ business_registration_type: Type of business registration being provided. Required from January 2026.
873
+
874
+ doing_business_as: Doing Business As (DBA) name if different from legal name
875
+
876
+ entity_type: Business entity classification
877
+
878
+ help_message_response: The message returned when users text 'HELP'
879
+
880
+ opt_in_confirmation_response: Message sent to users confirming their opt-in to receive messages
881
+
882
+ opt_in_keywords: Keywords used to collect and process consumer opt-ins
883
+
884
+ privacy_policy_url: URL pointing to the business's privacy policy. Plain string, no URL format
885
+ validation.
886
+
887
+ terms_and_condition_url: URL pointing to the business's terms and conditions. Plain string, no URL format
888
+ validation.
889
+
699
890
  webhook_url: URL that should receive webhooks relating to this verification request
700
891
 
701
892
  extra_headers: Send extra headers
@@ -731,7 +922,18 @@ class AsyncRequestsResource(AsyncAPIResource):
731
922
  "production_message_content": production_message_content,
732
923
  "use_case": use_case,
733
924
  "use_case_summary": use_case_summary,
925
+ "age_gated_content": age_gated_content,
734
926
  "business_addr2": business_addr2,
927
+ "business_registration_country": business_registration_country,
928
+ "business_registration_number": business_registration_number,
929
+ "business_registration_type": business_registration_type,
930
+ "doing_business_as": doing_business_as,
931
+ "entity_type": entity_type,
932
+ "help_message_response": help_message_response,
933
+ "opt_in_confirmation_response": opt_in_confirmation_response,
934
+ "opt_in_keywords": opt_in_keywords,
935
+ "privacy_policy_url": privacy_policy_url,
936
+ "terms_and_condition_url": terms_and_condition_url,
735
937
  "webhook_url": webhook_url,
736
938
  },
737
939
  request_update_params.RequestUpdateParams,
@@ -65,6 +65,7 @@ class OutboundVoiceProfilesResource(SyncAPIResource):
65
65
  name: str,
66
66
  billing_group_id: Optional[str] | Omit = omit,
67
67
  call_recording: OutboundCallRecordingParam | Omit = omit,
68
+ calling_window: outbound_voice_profile_create_params.CallingWindow | Omit = omit,
68
69
  concurrent_call_limit: Optional[int] | Omit = omit,
69
70
  daily_spend_limit: str | Omit = omit,
70
71
  daily_spend_limit_enabled: bool | Omit = omit,
@@ -91,6 +92,9 @@ class OutboundVoiceProfilesResource(SyncAPIResource):
91
92
  billing_group_id: The ID of the billing group associated with the outbound proflile. Defaults to
92
93
  null (for no group assigned).
93
94
 
95
+ calling_window: (BETA) Specifies the time window and call limits for calls made using this
96
+ outbound voice profile. Note that all times are UTC in 24-hour clock time.
97
+
94
98
  concurrent_call_limit: Must be no more than your global concurrent call limit. Null means no limit.
95
99
 
96
100
  daily_spend_limit: The maximum amount of usage charges, in USD, you want Telnyx to allow on this
@@ -129,6 +133,7 @@ class OutboundVoiceProfilesResource(SyncAPIResource):
129
133
  "name": name,
130
134
  "billing_group_id": billing_group_id,
131
135
  "call_recording": call_recording,
136
+ "calling_window": calling_window,
132
137
  "concurrent_call_limit": concurrent_call_limit,
133
138
  "daily_spend_limit": daily_spend_limit,
134
139
  "daily_spend_limit_enabled": daily_spend_limit_enabled,
@@ -188,6 +193,7 @@ class OutboundVoiceProfilesResource(SyncAPIResource):
188
193
  name: str,
189
194
  billing_group_id: Optional[str] | Omit = omit,
190
195
  call_recording: OutboundCallRecordingParam | Omit = omit,
196
+ calling_window: outbound_voice_profile_update_params.CallingWindow | Omit = omit,
191
197
  concurrent_call_limit: Optional[int] | Omit = omit,
192
198
  daily_spend_limit: str | Omit = omit,
193
199
  daily_spend_limit_enabled: bool | Omit = omit,
@@ -214,6 +220,9 @@ class OutboundVoiceProfilesResource(SyncAPIResource):
214
220
  billing_group_id: The ID of the billing group associated with the outbound proflile. Defaults to
215
221
  null (for no group assigned).
216
222
 
223
+ calling_window: (BETA) Specifies the time window and call limits for calls made using this
224
+ outbound voice profile.
225
+
217
226
  concurrent_call_limit: Must be no more than your global concurrent call limit. Null means no limit.
218
227
 
219
228
  daily_spend_limit: The maximum amount of usage charges, in USD, you want Telnyx to allow on this
@@ -254,6 +263,7 @@ class OutboundVoiceProfilesResource(SyncAPIResource):
254
263
  "name": name,
255
264
  "billing_group_id": billing_group_id,
256
265
  "call_recording": call_recording,
266
+ "calling_window": calling_window,
257
267
  "concurrent_call_limit": concurrent_call_limit,
258
268
  "daily_spend_limit": daily_spend_limit,
259
269
  "daily_spend_limit_enabled": daily_spend_limit_enabled,
@@ -309,8 +319,8 @@ class OutboundVoiceProfilesResource(SyncAPIResource):
309
319
  Consolidated filter parameter (deepObject style). Originally:
310
320
  filter[name][contains]
311
321
 
312
- page: Consolidated page parameter (deepObject style). Originally: page[number],
313
- page[size]
322
+ page: Consolidated page parameter (deepObject style). Originally: page[size],
323
+ page[number]
314
324
 
315
325
  sort: Specifies the sort order for results. By default sorting direction is ascending.
316
326
  To have the results sorted in descending order add the <code>-</code>
@@ -414,6 +424,7 @@ class AsyncOutboundVoiceProfilesResource(AsyncAPIResource):
414
424
  name: str,
415
425
  billing_group_id: Optional[str] | Omit = omit,
416
426
  call_recording: OutboundCallRecordingParam | Omit = omit,
427
+ calling_window: outbound_voice_profile_create_params.CallingWindow | Omit = omit,
417
428
  concurrent_call_limit: Optional[int] | Omit = omit,
418
429
  daily_spend_limit: str | Omit = omit,
419
430
  daily_spend_limit_enabled: bool | Omit = omit,
@@ -440,6 +451,9 @@ class AsyncOutboundVoiceProfilesResource(AsyncAPIResource):
440
451
  billing_group_id: The ID of the billing group associated with the outbound proflile. Defaults to
441
452
  null (for no group assigned).
442
453
 
454
+ calling_window: (BETA) Specifies the time window and call limits for calls made using this
455
+ outbound voice profile. Note that all times are UTC in 24-hour clock time.
456
+
443
457
  concurrent_call_limit: Must be no more than your global concurrent call limit. Null means no limit.
444
458
 
445
459
  daily_spend_limit: The maximum amount of usage charges, in USD, you want Telnyx to allow on this
@@ -478,6 +492,7 @@ class AsyncOutboundVoiceProfilesResource(AsyncAPIResource):
478
492
  "name": name,
479
493
  "billing_group_id": billing_group_id,
480
494
  "call_recording": call_recording,
495
+ "calling_window": calling_window,
481
496
  "concurrent_call_limit": concurrent_call_limit,
482
497
  "daily_spend_limit": daily_spend_limit,
483
498
  "daily_spend_limit_enabled": daily_spend_limit_enabled,
@@ -537,6 +552,7 @@ class AsyncOutboundVoiceProfilesResource(AsyncAPIResource):
537
552
  name: str,
538
553
  billing_group_id: Optional[str] | Omit = omit,
539
554
  call_recording: OutboundCallRecordingParam | Omit = omit,
555
+ calling_window: outbound_voice_profile_update_params.CallingWindow | Omit = omit,
540
556
  concurrent_call_limit: Optional[int] | Omit = omit,
541
557
  daily_spend_limit: str | Omit = omit,
542
558
  daily_spend_limit_enabled: bool | Omit = omit,
@@ -563,6 +579,9 @@ class AsyncOutboundVoiceProfilesResource(AsyncAPIResource):
563
579
  billing_group_id: The ID of the billing group associated with the outbound proflile. Defaults to
564
580
  null (for no group assigned).
565
581
 
582
+ calling_window: (BETA) Specifies the time window and call limits for calls made using this
583
+ outbound voice profile.
584
+
566
585
  concurrent_call_limit: Must be no more than your global concurrent call limit. Null means no limit.
567
586
 
568
587
  daily_spend_limit: The maximum amount of usage charges, in USD, you want Telnyx to allow on this
@@ -603,6 +622,7 @@ class AsyncOutboundVoiceProfilesResource(AsyncAPIResource):
603
622
  "name": name,
604
623
  "billing_group_id": billing_group_id,
605
624
  "call_recording": call_recording,
625
+ "calling_window": calling_window,
606
626
  "concurrent_call_limit": concurrent_call_limit,
607
627
  "daily_spend_limit": daily_spend_limit,
608
628
  "daily_spend_limit_enabled": daily_spend_limit_enabled,
@@ -658,8 +678,8 @@ class AsyncOutboundVoiceProfilesResource(AsyncAPIResource):
658
678
  Consolidated filter parameter (deepObject style). Originally:
659
679
  filter[name][contains]
660
680
 
661
- page: Consolidated page parameter (deepObject style). Originally: page[number],
662
- page[size]
681
+ page: Consolidated page parameter (deepObject style). Originally: page[size],
682
+ page[number]
663
683
 
664
684
  sort: Specifies the sort order for results. By default sorting direction is ascending.
665
685
  To have the results sorted in descending order add the <code>-</code>
@@ -154,7 +154,7 @@ class ActionsResource(SyncAPIResource):
154
154
  This API triggers an asynchronous operation to set a public IP for each of the
155
155
  specified SIM cards.<br/> For each SIM Card a SIM Card Action will be generated.
156
156
  The status of the SIM Card Action can be followed through the
157
- [List SIM Card Action](https://developersdev.telnyx.com/docs/api/v2/wireless/SIM-Card-Actions#ListSIMCardActions)
157
+ [List SIM Card Action](https://developers.telnyx.com/api/wireless/list-sim-card-actions)
158
158
  API.
159
159
 
160
160
  Args:
@@ -193,7 +193,7 @@ class ActionsResource(SyncAPIResource):
193
193
  impossible to consume data.<br/> The API will trigger an asynchronous operation
194
194
  called a SIM Card Action. Transitioning to the disabled state may take a period
195
195
  of time. The status of the SIM Card Action can be followed through the
196
- [List SIM Card Action](https://developersdev.telnyx.com/docs/api/v2/wireless/SIM-Card-Actions#ListSIMCardActions)
196
+ [List SIM Card Action](https://developers.telnyx.com/api/wireless/list-sim-card-actions)
197
197
  API.
198
198
 
199
199
  Args:
@@ -232,7 +232,7 @@ class ActionsResource(SyncAPIResource):
232
232
  card group.<br/> The API will trigger an asynchronous operation called a SIM
233
233
  Card Action. Transitioning to the enabled state may take a period of time. The
234
234
  status of the SIM Card Action can be followed through the
235
- [List SIM Card Action](https://developersdev.telnyx.com/docs/api/v2/wireless/SIM-Card-Actions#ListSIMCardActions)
235
+ [List SIM Card Action](https://developers.telnyx.com/api/wireless/list-sim-card-actions)
236
236
  API.
237
237
 
238
238
  Args:
@@ -270,7 +270,7 @@ class ActionsResource(SyncAPIResource):
270
270
  <br/><br/> The API will
271
271
  trigger an asynchronous operation called a SIM Card Action. The status of the
272
272
  SIM Card Action can be followed through the
273
- [List SIM Card Action](https://developersdev.telnyx.com/docs/api/v2/wireless/SIM-Card-Actions#ListSIMCardActions)
273
+ [List SIM Card Action](https://developers.telnyx.com/api/wireless/list-sim-card-actions)
274
274
  API.
275
275
 
276
276
  Args:
@@ -309,7 +309,7 @@ class ActionsResource(SyncAPIResource):
309
309
  public IP to the SIM card. <br/><br/> The API will trigger an asynchronous
310
310
  operation called a SIM Card Action. The status of the SIM Card Action can be
311
311
  followed through the
312
- [List SIM Card Action](https://developersdev.telnyx.com/docs/api/v2/wireless/SIM-Card-Actions#ListSIMCardActions)
312
+ [List SIM Card Action](https://developers.telnyx.com/api/wireless/list-sim-card-actions)
313
313
  API. <br/><br/> Setting a Public IP to a SIM Card incurs a charge and will only
314
314
  succeed if the account has sufficient funds.
315
315
 
@@ -359,7 +359,7 @@ class ActionsResource(SyncAPIResource):
359
359
  API will trigger an asynchronous operation called a SIM Card Action.
360
360
  Transitioning to the standby state may take a period of time. The status of the
361
361
  SIM Card Action can be followed through the
362
- [List SIM Card Action](https://developersdev.telnyx.com/docs/api/v2/wireless/SIM-Card-Actions#ListSIMCardActions)
362
+ [List SIM Card Action](https://developers.telnyx.com/api/wireless/list-sim-card-actions)
363
363
  API.
364
364
 
365
365
  Args:
@@ -537,7 +537,7 @@ class AsyncActionsResource(AsyncAPIResource):
537
537
  This API triggers an asynchronous operation to set a public IP for each of the
538
538
  specified SIM cards.<br/> For each SIM Card a SIM Card Action will be generated.
539
539
  The status of the SIM Card Action can be followed through the
540
- [List SIM Card Action](https://developersdev.telnyx.com/docs/api/v2/wireless/SIM-Card-Actions#ListSIMCardActions)
540
+ [List SIM Card Action](https://developers.telnyx.com/api/wireless/list-sim-card-actions)
541
541
  API.
542
542
 
543
543
  Args:
@@ -576,7 +576,7 @@ class AsyncActionsResource(AsyncAPIResource):
576
576
  impossible to consume data.<br/> The API will trigger an asynchronous operation
577
577
  called a SIM Card Action. Transitioning to the disabled state may take a period
578
578
  of time. The status of the SIM Card Action can be followed through the
579
- [List SIM Card Action](https://developersdev.telnyx.com/docs/api/v2/wireless/SIM-Card-Actions#ListSIMCardActions)
579
+ [List SIM Card Action](https://developers.telnyx.com/api/wireless/list-sim-card-actions)
580
580
  API.
581
581
 
582
582
  Args:
@@ -615,7 +615,7 @@ class AsyncActionsResource(AsyncAPIResource):
615
615
  card group.<br/> The API will trigger an asynchronous operation called a SIM
616
616
  Card Action. Transitioning to the enabled state may take a period of time. The
617
617
  status of the SIM Card Action can be followed through the
618
- [List SIM Card Action](https://developersdev.telnyx.com/docs/api/v2/wireless/SIM-Card-Actions#ListSIMCardActions)
618
+ [List SIM Card Action](https://developers.telnyx.com/api/wireless/list-sim-card-actions)
619
619
  API.
620
620
 
621
621
  Args:
@@ -653,7 +653,7 @@ class AsyncActionsResource(AsyncAPIResource):
653
653
  <br/><br/> The API will
654
654
  trigger an asynchronous operation called a SIM Card Action. The status of the
655
655
  SIM Card Action can be followed through the
656
- [List SIM Card Action](https://developersdev.telnyx.com/docs/api/v2/wireless/SIM-Card-Actions#ListSIMCardActions)
656
+ [List SIM Card Action](https://developers.telnyx.com/api/wireless/list-sim-card-actions)
657
657
  API.
658
658
 
659
659
  Args:
@@ -692,7 +692,7 @@ class AsyncActionsResource(AsyncAPIResource):
692
692
  public IP to the SIM card. <br/><br/> The API will trigger an asynchronous
693
693
  operation called a SIM Card Action. The status of the SIM Card Action can be
694
694
  followed through the
695
- [List SIM Card Action](https://developersdev.telnyx.com/docs/api/v2/wireless/SIM-Card-Actions#ListSIMCardActions)
695
+ [List SIM Card Action](https://developers.telnyx.com/api/wireless/list-sim-card-actions)
696
696
  API. <br/><br/> Setting a Public IP to a SIM Card incurs a charge and will only
697
697
  succeed if the account has sufficient funds.
698
698
 
@@ -742,7 +742,7 @@ class AsyncActionsResource(AsyncAPIResource):
742
742
  API will trigger an asynchronous operation called a SIM Card Action.
743
743
  Transitioning to the standby state may take a period of time. The status of the
744
744
  SIM Card Action can be followed through the
745
- [List SIM Card Action](https://developersdev.telnyx.com/docs/api/v2/wireless/SIM-Card-Actions#ListSIMCardActions)
745
+ [List SIM Card Action](https://developers.telnyx.com/api/wireless/list-sim-card-actions)
746
746
  API.
747
747
 
748
748
  Args:
@@ -2,6 +2,7 @@
2
2
 
3
3
  from __future__ import annotations
4
4
 
5
+ from typing import Iterable
5
6
  from typing_extensions import Literal
6
7
 
7
8
  import httpx
@@ -231,6 +232,7 @@ class CallsResource(SyncAPIResource):
231
232
  caller_id: str | Omit = omit,
232
233
  cancel_playback_on_detect_message_end: bool | Omit = omit,
233
234
  cancel_playback_on_machine_detection: bool | Omit = omit,
235
+ custom_headers: Iterable[call_calls_params.CustomHeader] | Omit = omit,
234
236
  detection_mode: Literal["Premium", "Regular"] | Omit = omit,
235
237
  fallback_url: str | Omit = omit,
236
238
  machine_detection: Literal["Enable", "Disable", "DetectMessageEnd"] | Omit = omit,
@@ -294,6 +296,9 @@ class CallsResource(SyncAPIResource):
294
296
 
295
297
  cancel_playback_on_machine_detection: Whether to cancel ongoing playback on `machine` detection. Defaults to `true`.
296
298
 
299
+ custom_headers: Custom HTTP headers to be sent with the call. Each header should be an object
300
+ with 'name' and 'value' properties.
301
+
297
302
  detection_mode: Allows you to chose between Premium and Standard detections.
298
303
 
299
304
  fallback_url: A failover URL for which Telnyx will retrieve the TeXML call instructions if the
@@ -377,6 +382,7 @@ class CallsResource(SyncAPIResource):
377
382
  "caller_id": caller_id,
378
383
  "cancel_playback_on_detect_message_end": cancel_playback_on_detect_message_end,
379
384
  "cancel_playback_on_machine_detection": cancel_playback_on_machine_detection,
385
+ "custom_headers": custom_headers,
380
386
  "detection_mode": detection_mode,
381
387
  "fallback_url": fallback_url,
382
388
  "machine_detection": machine_detection,
@@ -824,6 +830,7 @@ class AsyncCallsResource(AsyncAPIResource):
824
830
  caller_id: str | Omit = omit,
825
831
  cancel_playback_on_detect_message_end: bool | Omit = omit,
826
832
  cancel_playback_on_machine_detection: bool | Omit = omit,
833
+ custom_headers: Iterable[call_calls_params.CustomHeader] | Omit = omit,
827
834
  detection_mode: Literal["Premium", "Regular"] | Omit = omit,
828
835
  fallback_url: str | Omit = omit,
829
836
  machine_detection: Literal["Enable", "Disable", "DetectMessageEnd"] | Omit = omit,
@@ -887,6 +894,9 @@ class AsyncCallsResource(AsyncAPIResource):
887
894
 
888
895
  cancel_playback_on_machine_detection: Whether to cancel ongoing playback on `machine` detection. Defaults to `true`.
889
896
 
897
+ custom_headers: Custom HTTP headers to be sent with the call. Each header should be an object
898
+ with 'name' and 'value' properties.
899
+
890
900
  detection_mode: Allows you to chose between Premium and Standard detections.
891
901
 
892
902
  fallback_url: A failover URL for which Telnyx will retrieve the TeXML call instructions if the
@@ -970,6 +980,7 @@ class AsyncCallsResource(AsyncAPIResource):
970
980
  "caller_id": caller_id,
971
981
  "cancel_playback_on_detect_message_end": cancel_playback_on_detect_message_end,
972
982
  "cancel_playback_on_machine_detection": cancel_playback_on_machine_detection,
983
+ "custom_headers": custom_headers,
973
984
  "detection_mode": detection_mode,
974
985
  "fallback_url": fallback_url,
975
986
  "machine_detection": machine_detection,