telnyx 3.4.0a0__py3-none-any.whl → 3.5.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 (419) hide show
  1. telnyx/__init__.py +3 -1
  2. telnyx/_base_client.py +9 -9
  3. telnyx/_client.py +63 -762
  4. telnyx/_models.py +10 -4
  5. telnyx/_qs.py +7 -7
  6. telnyx/_types.py +18 -11
  7. telnyx/_utils/_transform.py +2 -2
  8. telnyx/_utils/_utils.py +4 -4
  9. telnyx/_version.py +1 -1
  10. telnyx/resources/__init__.py +70 -0
  11. telnyx/resources/access_ip_address.py +15 -15
  12. telnyx/resources/access_ip_ranges.py +13 -13
  13. telnyx/resources/actions/purchase.py +13 -13
  14. telnyx/resources/actions/register.py +9 -9
  15. telnyx/resources/addresses/actions.py +13 -13
  16. telnyx/resources/addresses/addresses.py +33 -35
  17. telnyx/resources/advanced_orders.py +102 -106
  18. telnyx/resources/ai/ai.py +7 -7
  19. telnyx/resources/ai/assistants/assistants.py +91 -91
  20. telnyx/resources/ai/assistants/canary_deploys.py +9 -9
  21. telnyx/resources/ai/assistants/scheduled_events.py +21 -21
  22. telnyx/resources/ai/assistants/tests/runs.py +13 -13
  23. telnyx/resources/ai/assistants/tests/test_suites/runs.py +13 -13
  24. telnyx/resources/ai/assistants/tests/test_suites/test_suites.py +3 -3
  25. telnyx/resources/ai/assistants/tests/tests.py +43 -43
  26. telnyx/resources/ai/assistants/tools.py +7 -7
  27. telnyx/resources/ai/assistants/versions.py +45 -45
  28. telnyx/resources/ai/audio.py +11 -11
  29. telnyx/resources/ai/chat.py +47 -47
  30. telnyx/resources/ai/clusters.py +27 -27
  31. telnyx/resources/ai/conversations/conversations.py +179 -45
  32. telnyx/resources/ai/conversations/insight_groups/insight_groups.py +23 -23
  33. telnyx/resources/ai/conversations/insight_groups/insights.py +5 -5
  34. telnyx/resources/ai/conversations/insights.py +25 -25
  35. telnyx/resources/ai/conversations/messages.py +3 -136
  36. telnyx/resources/ai/embeddings/buckets.py +7 -7
  37. telnyx/resources/ai/embeddings/embeddings.py +23 -23
  38. telnyx/resources/ai/fine_tuning/jobs.py +13 -13
  39. telnyx/resources/audit_events.py +9 -9
  40. telnyx/resources/authentication_providers.py +29 -29
  41. telnyx/resources/available_phone_number_blocks.py +5 -5
  42. telnyx/resources/available_phone_numbers.py +5 -5
  43. telnyx/resources/balance.py +3 -3
  44. telnyx/resources/billing_groups.py +17 -17
  45. telnyx/resources/brand/brand.py +121 -117
  46. telnyx/resources/brand/external_vetting.py +9 -9
  47. telnyx/resources/bulk_sim_card_actions.py +11 -11
  48. telnyx/resources/bundle_pricing/billing_bundles.py +13 -13
  49. telnyx/resources/bundle_pricing/user_bundles.py +35 -35
  50. telnyx/resources/call_control_applications.py +63 -67
  51. telnyx/resources/call_events.py +7 -7
  52. telnyx/resources/calls/actions.py +699 -699
  53. telnyx/resources/calls/calls.py +113 -107
  54. telnyx/resources/campaign/campaign.py +47 -47
  55. telnyx/resources/campaign/osr.py +3 -3
  56. telnyx/resources/campaign/usecase.py +3 -3
  57. telnyx/resources/campaign_builder/brand.py +3 -3
  58. telnyx/resources/campaign_builder/campaign_builder.py +67 -67
  59. telnyx/resources/channel_zones.py +7 -7
  60. telnyx/resources/charges_breakdown.py +7 -7
  61. telnyx/resources/charges_summary.py +3 -3
  62. telnyx/resources/comments.py +17 -17
  63. telnyx/resources/conferences/actions.py +121 -137
  64. telnyx/resources/conferences/conferences.py +37 -41
  65. telnyx/resources/connections.py +15 -15
  66. telnyx/resources/country_coverage.py +5 -5
  67. telnyx/resources/credential_connections/actions.py +3 -3
  68. telnyx/resources/credential_connections/credential_connections.py +95 -95
  69. telnyx/resources/custom_storage_credentials.py +9 -9
  70. telnyx/resources/customer_service_records.py +19 -19
  71. telnyx/resources/detail_records.py +9 -9
  72. telnyx/resources/dialogflow_connections.py +25 -25
  73. telnyx/resources/document_links.py +7 -7
  74. telnyx/resources/documents.py +45 -45
  75. telnyx/resources/dynamic_emergency_addresses.py +23 -23
  76. telnyx/resources/dynamic_emergency_endpoints.py +13 -13
  77. telnyx/resources/enum.py +3 -3
  78. telnyx/resources/external_connections/civic_addresses.py +7 -7
  79. telnyx/resources/external_connections/external_connections.py +41 -41
  80. telnyx/resources/external_connections/log_messages.py +11 -11
  81. telnyx/resources/external_connections/phone_numbers.py +13 -13
  82. telnyx/resources/external_connections/releases.py +9 -9
  83. telnyx/resources/external_connections/uploads.py +25 -27
  84. telnyx/resources/fax_applications.py +47 -47
  85. telnyx/resources/faxes/actions.py +5 -5
  86. telnyx/resources/faxes/faxes.py +35 -35
  87. telnyx/resources/fqdn_connections.py +93 -93
  88. telnyx/resources/fqdns.py +25 -25
  89. telnyx/resources/global_ip_allowed_ports.py +3 -3
  90. telnyx/resources/global_ip_assignment_health.py +5 -5
  91. telnyx/resources/global_ip_assignments.py +19 -19
  92. telnyx/resources/global_ip_assignments_usage.py +5 -5
  93. telnyx/resources/global_ip_health_check_types.py +3 -3
  94. telnyx/resources/global_ip_health_checks.py +17 -17
  95. telnyx/resources/global_ip_latency.py +5 -5
  96. telnyx/resources/global_ip_protocols.py +3 -3
  97. telnyx/resources/global_ip_usage.py +5 -5
  98. telnyx/resources/global_ips.py +17 -17
  99. telnyx/resources/inbound_channels.py +5 -5
  100. telnyx/resources/integration_secrets.py +17 -17
  101. telnyx/resources/inventory_coverage.py +5 -5
  102. telnyx/resources/invoices.py +11 -11
  103. telnyx/resources/ip_connections.py +93 -93
  104. telnyx/resources/ips.py +23 -23
  105. telnyx/resources/ledger_billing_group_reports.py +9 -9
  106. telnyx/resources/legacy/__init__.py +33 -0
  107. telnyx/resources/legacy/legacy.py +102 -0
  108. telnyx/resources/legacy/reporting/__init__.py +47 -0
  109. telnyx/resources/legacy/reporting/batch_detail_records/__init__.py +61 -0
  110. telnyx/resources/legacy/reporting/batch_detail_records/batch_detail_records.py +166 -0
  111. telnyx/resources/legacy/reporting/batch_detail_records/messaging.py +482 -0
  112. telnyx/resources/legacy/reporting/batch_detail_records/speech_to_text.py +399 -0
  113. telnyx/resources/legacy/reporting/batch_detail_records/voice.py +539 -0
  114. telnyx/resources/legacy/reporting/reporting.py +134 -0
  115. telnyx/resources/legacy/reporting/usage_reports/__init__.py +61 -0
  116. telnyx/resources/legacy/reporting/usage_reports/messaging.py +471 -0
  117. telnyx/resources/legacy/reporting/usage_reports/number_lookup.py +464 -0
  118. telnyx/resources/legacy/reporting/usage_reports/usage_reports.py +288 -0
  119. telnyx/resources/legacy/reporting/usage_reports/voice.py +493 -0
  120. telnyx/resources/list.py +5 -5
  121. telnyx/resources/managed_accounts/actions.py +7 -7
  122. telnyx/resources/managed_accounts/managed_accounts.py +33 -33
  123. telnyx/resources/media.py +23 -23
  124. telnyx/resources/messages/messages.py +121 -121
  125. telnyx/resources/messages/rcs.py +7 -7
  126. telnyx/resources/messaging/rcs/agents.py +15 -15
  127. telnyx/resources/messaging/rcs/rcs.py +7 -7
  128. telnyx/resources/messaging_hosted_number_orders/actions.py +7 -7
  129. telnyx/resources/messaging_hosted_number_orders/messaging_hosted_number_orders.py +21 -21
  130. telnyx/resources/messaging_hosted_numbers.py +3 -3
  131. telnyx/resources/messaging_numbers_bulk_updates.py +5 -5
  132. telnyx/resources/messaging_optouts.py +11 -11
  133. telnyx/resources/messaging_profiles/autoresp_configs.py +21 -21
  134. telnyx/resources/messaging_profiles/messaging_profiles.py +89 -73
  135. telnyx/resources/messaging_tollfree/verification/requests.py +233 -28
  136. telnyx/resources/messaging_url_domains.py +5 -5
  137. telnyx/resources/messsages.py +11 -11
  138. telnyx/resources/mobile_network_operators.py +7 -7
  139. telnyx/resources/mobile_push_credentials.py +23 -23
  140. telnyx/resources/network_coverage.py +9 -9
  141. telnyx/resources/networks/default_gateway.py +9 -9
  142. telnyx/resources/networks/networks.py +21 -21
  143. telnyx/resources/notification_channels.py +27 -27
  144. telnyx/resources/notification_event_conditions.py +7 -7
  145. telnyx/resources/notification_events.py +5 -5
  146. telnyx/resources/notification_profiles.py +17 -17
  147. telnyx/resources/notification_settings.py +21 -21
  148. telnyx/resources/number_block_orders.py +17 -17
  149. telnyx/resources/number_lookup.py +5 -5
  150. telnyx/resources/number_order_phone_numbers.py +13 -13
  151. telnyx/resources/number_orders.py +27 -27
  152. telnyx/resources/number_reservations/actions.py +3 -3
  153. telnyx/resources/number_reservations/number_reservations.py +15 -15
  154. telnyx/resources/numbers_features.py +3 -3
  155. telnyx/resources/oauth.py +855 -0
  156. telnyx/resources/oauth_clients.py +711 -0
  157. telnyx/resources/oauth_grants.py +349 -0
  158. telnyx/resources/operator_connect/actions.py +3 -3
  159. telnyx/resources/ota_updates.py +9 -9
  160. telnyx/resources/outbound_voice_profiles.py +89 -69
  161. telnyx/resources/partner_campaigns.py +25 -25
  162. telnyx/resources/payment/auto_recharge_prefs.py +15 -15
  163. telnyx/resources/phone_number_assignment_by_profile.py +15 -15
  164. telnyx/resources/phone_number_blocks/jobs.py +13 -13
  165. telnyx/resources/phone_number_campaigns.py +19 -19
  166. telnyx/resources/phone_numbers/actions.py +7 -7
  167. telnyx/resources/phone_numbers/csv_downloads.py +13 -13
  168. telnyx/resources/phone_numbers/jobs.py +47 -35
  169. telnyx/resources/phone_numbers/messaging.py +13 -13
  170. telnyx/resources/phone_numbers/phone_numbers.py +39 -39
  171. telnyx/resources/phone_numbers/voice.py +31 -31
  172. telnyx/resources/phone_numbers/voicemail.py +15 -15
  173. telnyx/resources/phone_numbers_regulatory_requirements.py +5 -5
  174. telnyx/resources/portability_checks.py +5 -5
  175. telnyx/resources/porting/events.py +11 -11
  176. telnyx/resources/porting/loa_configurations.py +17 -17
  177. telnyx/resources/porting/porting.py +3 -3
  178. telnyx/resources/porting/reports.py +11 -11
  179. telnyx/resources/porting_orders/action_requirements.py +11 -11
  180. telnyx/resources/porting_orders/actions.py +13 -13
  181. telnyx/resources/porting_orders/activation_jobs.py +11 -11
  182. telnyx/resources/porting_orders/additional_documents.py +15 -15
  183. telnyx/resources/porting_orders/associated_phone_numbers.py +13 -13
  184. telnyx/resources/porting_orders/comments.py +9 -9
  185. telnyx/resources/porting_orders/phone_number_blocks.py +13 -13
  186. telnyx/resources/porting_orders/phone_number_configurations.py +13 -13
  187. telnyx/resources/porting_orders/phone_number_extensions.py +13 -13
  188. telnyx/resources/porting_orders/porting_orders.py +79 -67
  189. telnyx/resources/porting_orders/verification_codes.py +19 -19
  190. telnyx/resources/porting_phone_numbers.py +7 -7
  191. telnyx/resources/portouts/comments.py +7 -7
  192. telnyx/resources/portouts/events.py +11 -11
  193. telnyx/resources/portouts/portouts.py +17 -17
  194. telnyx/resources/portouts/reports.py +11 -11
  195. telnyx/resources/portouts/supporting_documents.py +7 -7
  196. telnyx/resources/private_wireless_gateways.py +25 -25
  197. telnyx/resources/public_internet_gateways.py +19 -19
  198. telnyx/resources/queues/calls.py +7 -7
  199. telnyx/resources/queues/queues.py +3 -3
  200. telnyx/resources/recording_transcriptions.py +7 -7
  201. telnyx/resources/recordings/actions.py +3 -3
  202. telnyx/resources/recordings/recordings.py +11 -11
  203. telnyx/resources/regions.py +3 -3
  204. telnyx/resources/regulatory_requirements.py +5 -5
  205. telnyx/resources/reports/cdr_usage_reports.py +9 -9
  206. telnyx/resources/reports/mdr_usage_reports.py +21 -21
  207. telnyx/resources/reports/reports.py +47 -47
  208. telnyx/resources/requirement_groups.py +23 -23
  209. telnyx/resources/requirement_types.py +9 -11
  210. telnyx/resources/requirements.py +11 -11
  211. telnyx/resources/room_compositions.py +27 -27
  212. telnyx/resources/room_participants.py +9 -9
  213. telnyx/resources/room_recordings.py +17 -17
  214. telnyx/resources/rooms/actions.py +11 -11
  215. telnyx/resources/rooms/rooms.py +43 -43
  216. telnyx/resources/rooms/sessions/actions.py +21 -21
  217. telnyx/resources/rooms/sessions/sessions.py +27 -27
  218. telnyx/resources/seti.py +5 -5
  219. telnyx/resources/short_codes.py +11 -11
  220. telnyx/resources/sim_card_data_usage_notifications.py +21 -21
  221. telnyx/resources/sim_card_groups/actions.py +23 -23
  222. telnyx/resources/sim_card_groups/sim_card_groups.py +29 -29
  223. telnyx/resources/sim_card_order_preview.py +3 -3
  224. telnyx/resources/sim_card_orders.py +11 -11
  225. telnyx/resources/sim_cards/actions.py +39 -39
  226. telnyx/resources/sim_cards/sim_cards.py +48 -47
  227. telnyx/resources/siprec_connectors.py +13 -13
  228. telnyx/resources/storage/buckets/buckets.py +5 -5
  229. telnyx/resources/storage/buckets/ssl_certificate.py +11 -11
  230. telnyx/resources/storage/buckets/usage.py +5 -5
  231. telnyx/resources/storage/migration_sources.py +11 -11
  232. telnyx/resources/storage/migrations/actions.py +3 -3
  233. telnyx/resources/storage/migrations/migrations.py +9 -9
  234. telnyx/resources/storage/storage.py +3 -3
  235. telnyx/resources/sub_number_orders.py +17 -17
  236. telnyx/resources/sub_number_orders_report.py +19 -19
  237. telnyx/resources/telephony_credentials.py +31 -31
  238. telnyx/resources/texml/accounts/accounts.py +15 -15
  239. telnyx/resources/texml/accounts/calls/calls.py +156 -145
  240. telnyx/resources/texml/accounts/calls/recordings.py +5 -5
  241. telnyx/resources/texml/accounts/calls/recordings_json.py +19 -19
  242. telnyx/resources/texml/accounts/calls/siprec.py +5 -5
  243. telnyx/resources/texml/accounts/calls/streams.py +5 -5
  244. telnyx/resources/texml/accounts/conferences/conferences.py +31 -31
  245. telnyx/resources/texml/accounts/conferences/participants.py +134 -123
  246. telnyx/resources/texml/accounts/recordings/json.py +5 -5
  247. telnyx/resources/texml/accounts/transcriptions/json.py +5 -5
  248. telnyx/resources/texml/calls.py +79 -79
  249. telnyx/resources/texml/texml.py +3 -3
  250. telnyx/resources/texml_applications.py +65 -65
  251. telnyx/resources/text_to_speech.py +9 -9
  252. telnyx/resources/usage_reports.py +27 -27
  253. telnyx/resources/user_addresses.py +29 -31
  254. telnyx/resources/user_tags.py +5 -5
  255. telnyx/resources/verifications/actions.py +7 -7
  256. telnyx/resources/verifications/by_phone_number/actions.py +3 -3
  257. telnyx/resources/verifications/by_phone_number/by_phone_number.py +3 -3
  258. telnyx/resources/verifications/verifications.py +29 -19
  259. telnyx/resources/verified_numbers/actions.py +3 -3
  260. telnyx/resources/verified_numbers/verified_numbers.py +36 -15
  261. telnyx/resources/verify_profiles.py +226 -44
  262. telnyx/resources/virtual_cross_connects.py +45 -45
  263. telnyx/resources/virtual_cross_connects_coverage.py +9 -9
  264. telnyx/resources/webhook_deliveries.py +9 -9
  265. telnyx/resources/well_known.py +198 -0
  266. telnyx/resources/wireguard_interfaces.py +17 -17
  267. telnyx/resources/wireguard_peers.py +21 -21
  268. telnyx/resources/wireless/detail_records_reports.py +17 -17
  269. telnyx/resources/wireless/wireless.py +3 -3
  270. telnyx/resources/wireless_blocklist_values.py +3 -3
  271. telnyx/resources/wireless_blocklists.py +27 -27
  272. telnyx/types/__init__.py +49 -9
  273. telnyx/types/addresses/action_validate_response.py +8 -3
  274. telnyx/types/{advanced_order_update_params.py → advanced_order_update_requirement_group_params.py} +2 -2
  275. telnyx/types/ai/__init__.py +1 -0
  276. telnyx/types/ai/assistant_import_params.py +1 -1
  277. telnyx/types/ai/{conversations/message_create_params.py → conversation_add_message_params.py} +4 -4
  278. telnyx/types/ai/conversations/__init__.py +0 -1
  279. telnyx/types/ai/import_metadata.py +1 -1
  280. telnyx/types/ai/inference_embedding_transfer_tool_params.py +6 -0
  281. telnyx/types/ai/inference_embedding_transfer_tool_params_param.py +6 -0
  282. telnyx/types/ai/inference_embedding_webhook_tool_params.py +2 -0
  283. telnyx/types/ai/inference_embedding_webhook_tool_params_param.py +2 -0
  284. telnyx/types/ai/voice_settings.py +49 -2
  285. telnyx/types/ai/voice_settings_param.py +49 -2
  286. telnyx/types/brand_create_params.py +2 -1
  287. telnyx/types/brand_update_params.py +2 -1
  288. telnyx/types/call_dial_params.py +10 -3
  289. telnyx/types/calls/action_answer_params.py +1 -2
  290. telnyx/types/calls/action_gather_using_ai_params.py +5 -8
  291. telnyx/types/calls/action_start_streaming_params.py +4 -2
  292. telnyx/types/calls/action_start_transcription_params.py +260 -6
  293. telnyx/types/calls/action_transfer_params.py +50 -0
  294. telnyx/types/calls/transcription_start_request_param.py +261 -6
  295. telnyx/types/campaign_submit_appeal_response.py +0 -3
  296. telnyx/types/country_coverage_retrieve_country_response.py +7 -0
  297. telnyx/types/country_coverage_retrieve_response.py +7 -0
  298. telnyx/types/global_ip_latency_retrieve_response.py +7 -7
  299. telnyx/types/legacy/__init__.py +3 -0
  300. telnyx/types/legacy/reporting/__init__.py +12 -0
  301. telnyx/types/legacy/reporting/batch_detail_records/__init__.py +23 -0
  302. telnyx/types/legacy/reporting/batch_detail_records/cdr_detailed_req_response.py +63 -0
  303. telnyx/types/legacy/reporting/batch_detail_records/mdr_detail_report_response.py +42 -0
  304. telnyx/types/legacy/reporting/batch_detail_records/messaging_create_params.py +55 -0
  305. telnyx/types/legacy/reporting/batch_detail_records/messaging_create_response.py +12 -0
  306. telnyx/types/legacy/reporting/batch_detail_records/messaging_delete_response.py +12 -0
  307. telnyx/types/legacy/reporting/batch_detail_records/messaging_list_response.py +24 -0
  308. telnyx/types/legacy/reporting/batch_detail_records/messaging_retrieve_response.py +12 -0
  309. telnyx/types/legacy/reporting/batch_detail_records/speech_to_text_create_params.py +19 -0
  310. telnyx/types/legacy/reporting/batch_detail_records/speech_to_text_create_response.py +12 -0
  311. telnyx/types/legacy/reporting/batch_detail_records/speech_to_text_delete_response.py +12 -0
  312. telnyx/types/legacy/reporting/batch_detail_records/speech_to_text_list_response.py +12 -0
  313. telnyx/types/legacy/reporting/batch_detail_records/speech_to_text_retrieve_response.py +12 -0
  314. telnyx/types/legacy/reporting/batch_detail_records/stt_detail_report_response.py +27 -0
  315. telnyx/types/legacy/reporting/batch_detail_records/voice_create_params.py +57 -0
  316. telnyx/types/legacy/reporting/batch_detail_records/voice_create_response.py +13 -0
  317. telnyx/types/legacy/reporting/batch_detail_records/voice_delete_response.py +13 -0
  318. telnyx/types/legacy/reporting/batch_detail_records/voice_list_response.py +24 -0
  319. telnyx/types/legacy/reporting/batch_detail_records/voice_retrieve_fields_response.py +23 -0
  320. telnyx/types/legacy/reporting/batch_detail_records/voice_retrieve_response.py +13 -0
  321. telnyx/types/legacy/reporting/filter.py +31 -0
  322. telnyx/types/legacy/reporting/filter_param.py +30 -0
  323. telnyx/types/legacy/reporting/usage_report_retrieve_speech_to_text_params.py +17 -0
  324. telnyx/types/legacy/reporting/usage_report_retrieve_speech_to_text_response.py +11 -0
  325. telnyx/types/legacy/reporting/usage_reports/__init__.py +20 -0
  326. telnyx/types/legacy/reporting/usage_reports/cdr_usage_report_response_legacy.py +43 -0
  327. telnyx/types/legacy/reporting/usage_reports/mdr_usage_report_response_legacy.py +38 -0
  328. telnyx/types/legacy/reporting/usage_reports/messaging_create_params.py +29 -0
  329. telnyx/types/legacy/reporting/usage_reports/messaging_create_response.py +13 -0
  330. telnyx/types/legacy/reporting/usage_reports/messaging_delete_response.py +13 -0
  331. telnyx/types/legacy/reporting/usage_reports/messaging_list_params.py +15 -0
  332. telnyx/types/legacy/reporting/usage_reports/messaging_list_response.py +24 -0
  333. telnyx/types/legacy/reporting/usage_reports/messaging_retrieve_response.py +13 -0
  334. telnyx/types/legacy/reporting/usage_reports/number_lookup_create_params.py +26 -0
  335. telnyx/types/legacy/reporting/usage_reports/number_lookup_list_params.py +13 -0
  336. telnyx/types/legacy/reporting/usage_reports/voice_create_params.py +40 -0
  337. telnyx/types/legacy/reporting/usage_reports/voice_create_response.py +13 -0
  338. telnyx/types/legacy/reporting/usage_reports/voice_delete_response.py +13 -0
  339. telnyx/types/legacy/reporting/usage_reports/voice_list_params.py +15 -0
  340. telnyx/types/legacy/reporting/usage_reports/voice_list_response.py +24 -0
  341. telnyx/types/legacy/reporting/usage_reports/voice_retrieve_response.py +13 -0
  342. telnyx/types/messaging_profile.py +3 -0
  343. telnyx/types/messaging_profile_create_params.py +3 -0
  344. telnyx/types/messaging_profile_update_params.py +3 -0
  345. telnyx/types/messaging_tollfree/verification/request_create_params.py +54 -2
  346. telnyx/types/messaging_tollfree/verification/request_update_params.py +54 -2
  347. telnyx/types/messaging_tollfree/verification/verification_request_egress.py +26 -0
  348. telnyx/types/messaging_tollfree/verification/verification_request_status.py +26 -0
  349. telnyx/types/number_order_status_update_webhook_event.py +30 -4
  350. telnyx/types/oauth_client.py +59 -0
  351. telnyx/types/oauth_client_create_params.py +39 -0
  352. telnyx/types/oauth_client_create_response.py +12 -0
  353. telnyx/types/oauth_client_list_params.py +38 -0
  354. telnyx/types/oauth_client_list_response.py +28 -0
  355. telnyx/types/oauth_client_retrieve_response.py +12 -0
  356. telnyx/types/oauth_client_update_params.py +36 -0
  357. telnyx/types/oauth_client_update_response.py +12 -0
  358. telnyx/types/oauth_grant.py +29 -0
  359. telnyx/types/oauth_grant_delete_response.py +12 -0
  360. telnyx/types/oauth_grant_list_params.py +17 -0
  361. telnyx/types/oauth_grant_list_response.py +28 -0
  362. telnyx/types/oauth_grant_retrieve_response.py +12 -0
  363. telnyx/types/oauth_grants_params.py +15 -0
  364. telnyx/types/oauth_grants_response.py +10 -0
  365. telnyx/types/oauth_introspect_params.py +12 -0
  366. telnyx/types/oauth_introspect_response.py +30 -0
  367. telnyx/types/oauth_register_params.py +39 -0
  368. telnyx/types/oauth_register_response.py +45 -0
  369. telnyx/types/oauth_retrieve_authorize_params.py +30 -0
  370. telnyx/types/oauth_retrieve_jwks_response.py +25 -0
  371. telnyx/types/oauth_retrieve_response.py +47 -0
  372. telnyx/types/oauth_token_params.py +33 -0
  373. telnyx/types/oauth_token_response.py +25 -0
  374. telnyx/types/outbound_voice_profile.py +27 -1
  375. telnyx/types/outbound_voice_profile_create_params.py +27 -1
  376. telnyx/types/outbound_voice_profile_list_params.py +1 -1
  377. telnyx/types/outbound_voice_profile_update_params.py +27 -1
  378. telnyx/types/phone_number_delete_response.py +7 -0
  379. telnyx/types/phone_number_detailed.py +7 -0
  380. telnyx/types/phone_number_list_params.py +6 -0
  381. telnyx/types/phone_numbers/job_update_batch_params.py +7 -0
  382. telnyx/types/porting_order.py +3 -0
  383. telnyx/types/porting_order_create_params.py +3 -0
  384. telnyx/types/porting_order_list_params.py +52 -31
  385. telnyx/types/porting_order_update_params.py +2 -0
  386. telnyx/types/porting_orders/phone_number_configuration_list_params.py +19 -19
  387. telnyx/types/requirement_group.py +2 -2
  388. telnyx/types/requirement_group_list_params.py +1 -1
  389. telnyx/types/shared/__init__.py +1 -0
  390. telnyx/types/{error.py → shared/api_error.py} +3 -3
  391. telnyx/types/shared/simple_sim_card.py +15 -0
  392. telnyx/types/sim_card.py +12 -0
  393. telnyx/types/sim_card_update_params.py +2 -1
  394. telnyx/types/stream_bidirectional_codec.py +1 -1
  395. telnyx/types/stream_codec.py +1 -1
  396. telnyx/types/texml/accounts/call_calls_params.py +16 -1
  397. telnyx/types/texml/accounts/conferences/participant_participants_params.py +16 -1
  398. telnyx/types/verification_trigger_call_params.py +7 -0
  399. telnyx/types/verified_number_create_params.py +10 -0
  400. telnyx/types/verify_profile.py +18 -3
  401. telnyx/types/verify_profile_create_template_params.py +12 -0
  402. telnyx/types/verify_profile_create_template_response.py +12 -0
  403. telnyx/types/verify_profile_message_template_response.py +13 -0
  404. telnyx/types/verify_profile_retrieve_templates_response.py +4 -9
  405. telnyx/types/verify_profile_update_template_params.py +12 -0
  406. telnyx/types/verify_profile_update_template_response.py +12 -0
  407. telnyx/types/well_known_retrieve_authorization_server_metadata_response.py +42 -0
  408. telnyx/types/well_known_retrieve_protected_resource_metadata_response.py +15 -0
  409. {telnyx-3.4.0a0.dist-info → telnyx-3.5.0.dist-info}/METADATA +60 -19
  410. {telnyx-3.4.0a0.dist-info → telnyx-3.5.0.dist-info}/RECORD +412 -327
  411. telnyx/types/client_create_bucket_params.py +0 -13
  412. telnyx/types/client_delete_objects_params.py +0 -20
  413. telnyx/types/client_get_object_params.py +0 -15
  414. telnyx/types/client_list_objects_params.py +0 -13
  415. telnyx/types/client_put_object_params.py +0 -20
  416. telnyx/types/list_buckets_response.py +0 -20
  417. telnyx/types/list_objects_response.py +0 -24
  418. {telnyx-3.4.0a0.dist-info → telnyx-3.5.0.dist-info}/WHEEL +0 -0
  419. {telnyx-3.4.0a0.dist-info → telnyx-3.5.0.dist-info}/licenses/LICENSE +0 -0
@@ -0,0 +1,20 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from .voice_list_params import VoiceListParams as VoiceListParams
6
+ from .voice_create_params import VoiceCreateParams as VoiceCreateParams
7
+ from .voice_list_response import VoiceListResponse as VoiceListResponse
8
+ from .messaging_list_params import MessagingListParams as MessagingListParams
9
+ from .voice_create_response import VoiceCreateResponse as VoiceCreateResponse
10
+ from .voice_delete_response import VoiceDeleteResponse as VoiceDeleteResponse
11
+ from .messaging_create_params import MessagingCreateParams as MessagingCreateParams
12
+ from .messaging_list_response import MessagingListResponse as MessagingListResponse
13
+ from .voice_retrieve_response import VoiceRetrieveResponse as VoiceRetrieveResponse
14
+ from .messaging_create_response import MessagingCreateResponse as MessagingCreateResponse
15
+ from .messaging_delete_response import MessagingDeleteResponse as MessagingDeleteResponse
16
+ from .number_lookup_list_params import NumberLookupListParams as NumberLookupListParams
17
+ from .messaging_retrieve_response import MessagingRetrieveResponse as MessagingRetrieveResponse
18
+ from .number_lookup_create_params import NumberLookupCreateParams as NumberLookupCreateParams
19
+ from .cdr_usage_report_response_legacy import CdrUsageReportResponseLegacy as CdrUsageReportResponseLegacy
20
+ from .mdr_usage_report_response_legacy import MdrUsageReportResponseLegacy as MdrUsageReportResponseLegacy
@@ -0,0 +1,43 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import List, Optional
4
+ from datetime import datetime
5
+
6
+ from ....._models import BaseModel
7
+
8
+ __all__ = ["CdrUsageReportResponseLegacy"]
9
+
10
+
11
+ class CdrUsageReportResponseLegacy(BaseModel):
12
+ id: Optional[str] = None
13
+ """Identifies the resource"""
14
+
15
+ aggregation_type: Optional[int] = None
16
+ """
17
+ Aggregation type: All = 0, By Connections = 1, By Tags = 2, By Billing Group = 3
18
+ """
19
+
20
+ connections: Optional[List[int]] = None
21
+
22
+ created_at: Optional[datetime] = None
23
+
24
+ end_time: Optional[datetime] = None
25
+
26
+ product_breakdown: Optional[int] = None
27
+ """
28
+ Product breakdown type: No breakdown = 0, DID vs Toll-free = 1, Country = 2, DID
29
+ vs Toll-free per Country = 3
30
+ """
31
+
32
+ record_type: Optional[str] = None
33
+
34
+ report_url: Optional[str] = None
35
+
36
+ result: Optional[object] = None
37
+
38
+ start_time: Optional[datetime] = None
39
+
40
+ status: Optional[int] = None
41
+ """Status of the report: Pending = 1, Complete = 2, Failed = 3, Expired = 4"""
42
+
43
+ updated_at: Optional[datetime] = None
@@ -0,0 +1,38 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import List, Optional
4
+ from datetime import datetime
5
+
6
+ from ....._models import BaseModel
7
+
8
+ __all__ = ["MdrUsageReportResponseLegacy"]
9
+
10
+
11
+ class MdrUsageReportResponseLegacy(BaseModel):
12
+ id: Optional[str] = None
13
+ """Identifies the resource"""
14
+
15
+ aggregation_type: Optional[int] = None
16
+ """Aggregation type: No aggregation = 0, By Messaging Profile = 1, By Tags = 2"""
17
+
18
+ connections: Optional[List[int]] = None
19
+
20
+ created_at: Optional[datetime] = None
21
+
22
+ end_time: Optional[datetime] = None
23
+
24
+ profiles: Optional[List[str]] = None
25
+ """List of messaging profile IDs"""
26
+
27
+ record_type: Optional[str] = None
28
+
29
+ report_url: Optional[str] = None
30
+
31
+ result: Optional[object] = None
32
+
33
+ start_time: Optional[datetime] = None
34
+
35
+ status: Optional[int] = None
36
+ """Status of the report (Pending = 1, Complete = 2, Failed = 3, Expired = 4)"""
37
+
38
+ updated_at: Optional[datetime] = None
@@ -0,0 +1,29 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import Union
6
+ from datetime import datetime
7
+ from typing_extensions import Required, Annotated, TypedDict
8
+
9
+ from ....._types import SequenceNotStr
10
+ from ....._utils import PropertyInfo
11
+
12
+ __all__ = ["MessagingCreateParams"]
13
+
14
+
15
+ class MessagingCreateParams(TypedDict, total=False):
16
+ aggregation_type: Required[int]
17
+ """Aggregation type: No aggregation = 0, By Messaging Profile = 1, By Tags = 2"""
18
+
19
+ end_time: Annotated[Union[str, datetime], PropertyInfo(format="iso8601")]
20
+
21
+ managed_accounts: SequenceNotStr[str]
22
+ """List of managed accounts to include"""
23
+
24
+ profiles: SequenceNotStr[str]
25
+ """List of messaging profile IDs to filter by"""
26
+
27
+ select_all_managed_accounts: bool
28
+
29
+ start_time: Annotated[Union[str, datetime], PropertyInfo(format="iso8601")]
@@ -0,0 +1,13 @@
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
+ from .mdr_usage_report_response_legacy import MdrUsageReportResponseLegacy
7
+
8
+ __all__ = ["MessagingCreateResponse"]
9
+
10
+
11
+ class MessagingCreateResponse(BaseModel):
12
+ data: Optional[MdrUsageReportResponseLegacy] = None
13
+ """Legacy V2 MDR usage report response"""
@@ -0,0 +1,13 @@
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
+ from .mdr_usage_report_response_legacy import MdrUsageReportResponseLegacy
7
+
8
+ __all__ = ["MessagingDeleteResponse"]
9
+
10
+
11
+ class MessagingDeleteResponse(BaseModel):
12
+ data: Optional[MdrUsageReportResponseLegacy] = None
13
+ """Legacy V2 MDR usage report response"""
@@ -0,0 +1,15 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing_extensions import TypedDict
6
+
7
+ __all__ = ["MessagingListParams"]
8
+
9
+
10
+ class MessagingListParams(TypedDict, total=False):
11
+ page: int
12
+ """Page number"""
13
+
14
+ per_page: int
15
+ """Size of the page"""
@@ -0,0 +1,24 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import List, Optional
4
+
5
+ from ....._models import BaseModel
6
+ from .mdr_usage_report_response_legacy import MdrUsageReportResponseLegacy
7
+
8
+ __all__ = ["MessagingListResponse", "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
19
+
20
+
21
+ class MessagingListResponse(BaseModel):
22
+ data: Optional[List[MdrUsageReportResponseLegacy]] = None
23
+
24
+ meta: Optional[Meta] = None
@@ -0,0 +1,13 @@
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
+ from .mdr_usage_report_response_legacy import MdrUsageReportResponseLegacy
7
+
8
+ __all__ = ["MessagingRetrieveResponse"]
9
+
10
+
11
+ class MessagingRetrieveResponse(BaseModel):
12
+ data: Optional[MdrUsageReportResponseLegacy] = None
13
+ """Legacy V2 MDR usage report response"""
@@ -0,0 +1,26 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import Union
6
+ from datetime import date
7
+ from typing_extensions import Literal, Annotated, TypedDict
8
+
9
+ from ....._types import SequenceNotStr
10
+ from ....._utils import PropertyInfo
11
+
12
+ __all__ = ["NumberLookupCreateParams"]
13
+
14
+
15
+ class NumberLookupCreateParams(TypedDict, total=False):
16
+ aggregation_type: Annotated[Literal["ALL", "BY_ORGANIZATION_MEMBER"], PropertyInfo(alias="aggregationType")]
17
+ """Type of aggregation for the report"""
18
+
19
+ end_date: Annotated[Union[str, date], PropertyInfo(alias="endDate", format="iso8601")]
20
+ """End date for the usage report"""
21
+
22
+ managed_accounts: Annotated[SequenceNotStr[str], PropertyInfo(alias="managedAccounts")]
23
+ """List of managed accounts to include in the report"""
24
+
25
+ start_date: Annotated[Union[str, date], PropertyInfo(alias="startDate", format="iso8601")]
26
+ """Start date for the usage report"""
@@ -0,0 +1,13 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing_extensions import TypedDict
6
+
7
+ __all__ = ["NumberLookupListParams"]
8
+
9
+
10
+ class NumberLookupListParams(TypedDict, total=False):
11
+ page: int
12
+
13
+ per_page: int
@@ -0,0 +1,40 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import Union, Iterable
6
+ from datetime import datetime
7
+ from typing_extensions import Required, Annotated, TypedDict
8
+
9
+ from ....._types import SequenceNotStr
10
+ from ....._utils import PropertyInfo
11
+
12
+ __all__ = ["VoiceCreateParams"]
13
+
14
+
15
+ class VoiceCreateParams(TypedDict, total=False):
16
+ end_time: Required[Annotated[Union[str, datetime], PropertyInfo(format="iso8601")]]
17
+ """End time in ISO format"""
18
+
19
+ start_time: Required[Annotated[Union[str, datetime], PropertyInfo(format="iso8601")]]
20
+ """Start time in ISO format"""
21
+
22
+ aggregation_type: int
23
+ """
24
+ Aggregation type: All = 0, By Connections = 1, By Tags = 2, By Billing Group = 3
25
+ """
26
+
27
+ connections: Iterable[int]
28
+ """List of connections to filter by"""
29
+
30
+ managed_accounts: SequenceNotStr[str]
31
+ """List of managed accounts to include"""
32
+
33
+ product_breakdown: int
34
+ """
35
+ Product breakdown type: No breakdown = 0, DID vs Toll-free = 1, Country = 2, DID
36
+ vs Toll-free per Country = 3
37
+ """
38
+
39
+ select_all_managed_accounts: bool
40
+ """Whether to select all managed accounts"""
@@ -0,0 +1,13 @@
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
+ from .cdr_usage_report_response_legacy import CdrUsageReportResponseLegacy
7
+
8
+ __all__ = ["VoiceCreateResponse"]
9
+
10
+
11
+ class VoiceCreateResponse(BaseModel):
12
+ data: Optional[CdrUsageReportResponseLegacy] = None
13
+ """Legacy V2 CDR usage report response"""
@@ -0,0 +1,13 @@
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
+ from .cdr_usage_report_response_legacy import CdrUsageReportResponseLegacy
7
+
8
+ __all__ = ["VoiceDeleteResponse"]
9
+
10
+
11
+ class VoiceDeleteResponse(BaseModel):
12
+ data: Optional[CdrUsageReportResponseLegacy] = None
13
+ """Legacy V2 CDR usage report response"""
@@ -0,0 +1,15 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing_extensions import TypedDict
6
+
7
+ __all__ = ["VoiceListParams"]
8
+
9
+
10
+ class VoiceListParams(TypedDict, total=False):
11
+ page: int
12
+ """Page number"""
13
+
14
+ per_page: int
15
+ """Size of the page"""
@@ -0,0 +1,24 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import List, Optional
4
+
5
+ from ....._models import BaseModel
6
+ from .cdr_usage_report_response_legacy import CdrUsageReportResponseLegacy
7
+
8
+ __all__ = ["VoiceListResponse", "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
19
+
20
+
21
+ class VoiceListResponse(BaseModel):
22
+ data: Optional[List[CdrUsageReportResponseLegacy]] = None
23
+
24
+ meta: Optional[Meta] = None
@@ -0,0 +1,13 @@
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
+ from .cdr_usage_report_response_legacy import CdrUsageReportResponseLegacy
7
+
8
+ __all__ = ["VoiceRetrieveResponse"]
9
+
10
+
11
+ class VoiceRetrieveResponse(BaseModel):
12
+ data: Optional[CdrUsageReportResponseLegacy] = None
13
+ """Legacy V2 CDR usage report response"""
@@ -42,6 +42,9 @@ class MessagingProfile(BaseModel):
42
42
  mms_transcoding: Optional[bool] = None
43
43
  """enables automated resizing of MMS media."""
44
44
 
45
+ mobile_only: Optional[bool] = None
46
+ """Send messages only to mobile phone numbers."""
47
+
45
48
  name: Optional[str] = None
46
49
  """A user friendly name for the messaging profile."""
47
50
 
@@ -47,6 +47,9 @@ class MessagingProfileCreateParams(TypedDict, total=False):
47
47
  mms_transcoding: bool
48
48
  """enables automated resizing of MMS media."""
49
49
 
50
+ mobile_only: bool
51
+ """Send messages only to mobile phone numbers."""
52
+
50
53
  number_pool_settings: Optional[NumberPoolSettingsParam]
51
54
  """
52
55
  Number Pool allows you to send messages from a pool of numbers of different
@@ -37,6 +37,9 @@ class MessagingProfileUpdateParams(TypedDict, total=False):
37
37
  mms_transcoding: bool
38
38
  """enables automated resizing of MMS media."""
39
39
 
40
+ mobile_only: bool
41
+ """Send messages only to mobile phone numbers."""
42
+
40
43
  name: str
41
44
  """A user friendly name for the messaging profile."""
42
45
 
@@ -2,8 +2,8 @@
2
2
 
3
3
  from __future__ import annotations
4
4
 
5
- from typing import Iterable
6
- from typing_extensions import Required, Annotated, TypedDict
5
+ from typing import Iterable, Optional
6
+ from typing_extensions import Literal, Required, Annotated, TypedDict
7
7
 
8
8
  from .volume import Volume
9
9
  from ...._utils import PropertyInfo
@@ -84,8 +84,60 @@ class RequestCreateParams(TypedDict, total=False):
84
84
  use_case_summary: Required[Annotated[str, PropertyInfo(alias="useCaseSummary")]]
85
85
  """Human-readable summary of the desired use-case"""
86
86
 
87
+ age_gated_content: Annotated[bool, PropertyInfo(alias="ageGatedContent")]
88
+ """Indicates if messaging content requires age gating (e.g., 18+).
89
+
90
+ Defaults to false if not provided.
91
+ """
92
+
87
93
  business_addr2: Annotated[str, PropertyInfo(alias="businessAddr2")]
88
94
  """Line 2 of the business address"""
89
95
 
96
+ business_registration_country: Annotated[Optional[str], PropertyInfo(alias="businessRegistrationCountry")]
97
+ """ISO 3166-1 alpha-2 country code of the issuing business authority.
98
+
99
+ Must be exactly 2 letters. Automatically converted to uppercase. Required from
100
+ January 2026.
101
+ """
102
+
103
+ business_registration_number: Annotated[Optional[str], PropertyInfo(alias="businessRegistrationNumber")]
104
+ """
105
+ Official business registration number (e.g., Employer Identification Number
106
+ (EIN) in the U.S.). Required from January 2026.
107
+ """
108
+
109
+ business_registration_type: Annotated[Optional[str], PropertyInfo(alias="businessRegistrationType")]
110
+ """Type of business registration being provided. Required from January 2026."""
111
+
112
+ doing_business_as: Annotated[Optional[str], PropertyInfo(alias="doingBusinessAs")]
113
+ """Doing Business As (DBA) name if different from legal name"""
114
+
115
+ entity_type: Annotated[
116
+ Optional[Literal["SOLE_PROPRIETOR", "PRIVATE_PROFIT", "PUBLIC_PROFIT", "NON_PROFIT", "GOVERNMENT"]],
117
+ PropertyInfo(alias="entityType"),
118
+ ]
119
+ """Business entity classification"""
120
+
121
+ help_message_response: Annotated[Optional[str], PropertyInfo(alias="helpMessageResponse")]
122
+ """The message returned when users text 'HELP'"""
123
+
124
+ opt_in_confirmation_response: Annotated[Optional[str], PropertyInfo(alias="optInConfirmationResponse")]
125
+ """Message sent to users confirming their opt-in to receive messages"""
126
+
127
+ opt_in_keywords: Annotated[Optional[str], PropertyInfo(alias="optInKeywords")]
128
+ """Keywords used to collect and process consumer opt-ins"""
129
+
130
+ privacy_policy_url: Annotated[Optional[str], PropertyInfo(alias="privacyPolicyURL")]
131
+ """URL pointing to the business's privacy policy.
132
+
133
+ Plain string, no URL format validation.
134
+ """
135
+
136
+ terms_and_condition_url: Annotated[Optional[str], PropertyInfo(alias="termsAndConditionURL")]
137
+ """URL pointing to the business's terms and conditions.
138
+
139
+ Plain string, no URL format validation.
140
+ """
141
+
90
142
  webhook_url: Annotated[str, PropertyInfo(alias="webhookUrl")]
91
143
  """URL that should receive webhooks relating to this verification request"""
@@ -2,8 +2,8 @@
2
2
 
3
3
  from __future__ import annotations
4
4
 
5
- from typing import Iterable
6
- from typing_extensions import Required, Annotated, TypedDict
5
+ from typing import Iterable, Optional
6
+ from typing_extensions import Literal, Required, Annotated, TypedDict
7
7
 
8
8
  from .volume import Volume
9
9
  from ...._utils import PropertyInfo
@@ -84,8 +84,60 @@ class RequestUpdateParams(TypedDict, total=False):
84
84
  use_case_summary: Required[Annotated[str, PropertyInfo(alias="useCaseSummary")]]
85
85
  """Human-readable summary of the desired use-case"""
86
86
 
87
+ age_gated_content: Annotated[bool, PropertyInfo(alias="ageGatedContent")]
88
+ """Indicates if messaging content requires age gating (e.g., 18+).
89
+
90
+ Defaults to false if not provided.
91
+ """
92
+
87
93
  business_addr2: Annotated[str, PropertyInfo(alias="businessAddr2")]
88
94
  """Line 2 of the business address"""
89
95
 
96
+ business_registration_country: Annotated[Optional[str], PropertyInfo(alias="businessRegistrationCountry")]
97
+ """ISO 3166-1 alpha-2 country code of the issuing business authority.
98
+
99
+ Must be exactly 2 letters. Automatically converted to uppercase. Required from
100
+ January 2026.
101
+ """
102
+
103
+ business_registration_number: Annotated[Optional[str], PropertyInfo(alias="businessRegistrationNumber")]
104
+ """
105
+ Official business registration number (e.g., Employer Identification Number
106
+ (EIN) in the U.S.). Required from January 2026.
107
+ """
108
+
109
+ business_registration_type: Annotated[Optional[str], PropertyInfo(alias="businessRegistrationType")]
110
+ """Type of business registration being provided. Required from January 2026."""
111
+
112
+ doing_business_as: Annotated[Optional[str], PropertyInfo(alias="doingBusinessAs")]
113
+ """Doing Business As (DBA) name if different from legal name"""
114
+
115
+ entity_type: Annotated[
116
+ Optional[Literal["SOLE_PROPRIETOR", "PRIVATE_PROFIT", "PUBLIC_PROFIT", "NON_PROFIT", "GOVERNMENT"]],
117
+ PropertyInfo(alias="entityType"),
118
+ ]
119
+ """Business entity classification"""
120
+
121
+ help_message_response: Annotated[Optional[str], PropertyInfo(alias="helpMessageResponse")]
122
+ """The message returned when users text 'HELP'"""
123
+
124
+ opt_in_confirmation_response: Annotated[Optional[str], PropertyInfo(alias="optInConfirmationResponse")]
125
+ """Message sent to users confirming their opt-in to receive messages"""
126
+
127
+ opt_in_keywords: Annotated[Optional[str], PropertyInfo(alias="optInKeywords")]
128
+ """Keywords used to collect and process consumer opt-ins"""
129
+
130
+ privacy_policy_url: Annotated[Optional[str], PropertyInfo(alias="privacyPolicyURL")]
131
+ """URL pointing to the business's privacy policy.
132
+
133
+ Plain string, no URL format validation.
134
+ """
135
+
136
+ terms_and_condition_url: Annotated[Optional[str], PropertyInfo(alias="termsAndConditionURL")]
137
+ """URL pointing to the business's terms and conditions.
138
+
139
+ Plain string, no URL format validation.
140
+ """
141
+
90
142
  webhook_url: Annotated[str, PropertyInfo(alias="webhookUrl")]
91
143
  """URL that should receive webhooks relating to this verification request"""
@@ -1,6 +1,7 @@
1
1
  # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
3
  from typing import List, Optional
4
+ from typing_extensions import Literal
4
5
 
5
6
  from pydantic import Field as FieldInfo
6
7
 
@@ -59,8 +60,33 @@ class VerificationRequestEgress(BaseModel):
59
60
 
60
61
  verification_request_id: str = FieldInfo(alias="verificationRequestId")
61
62
 
63
+ age_gated_content: Optional[bool] = FieldInfo(alias="ageGatedContent", default=None)
64
+
62
65
  business_addr2: Optional[str] = FieldInfo(alias="businessAddr2", default=None)
63
66
 
67
+ business_registration_country: Optional[str] = FieldInfo(alias="businessRegistrationCountry", default=None)
68
+
69
+ business_registration_number: Optional[str] = FieldInfo(alias="businessRegistrationNumber", default=None)
70
+
71
+ business_registration_type: Optional[str] = FieldInfo(alias="businessRegistrationType", default=None)
72
+
73
+ doing_business_as: Optional[str] = FieldInfo(alias="doingBusinessAs", default=None)
74
+
75
+ entity_type: Optional[Literal["SOLE_PROPRIETOR", "PRIVATE_PROFIT", "PUBLIC_PROFIT", "NON_PROFIT", "GOVERNMENT"]] = (
76
+ FieldInfo(alias="entityType", default=None)
77
+ )
78
+ """Business entity classification"""
79
+
80
+ help_message_response: Optional[str] = FieldInfo(alias="helpMessageResponse", default=None)
81
+
82
+ opt_in_confirmation_response: Optional[str] = FieldInfo(alias="optInConfirmationResponse", default=None)
83
+
84
+ opt_in_keywords: Optional[str] = FieldInfo(alias="optInKeywords", default=None)
85
+
86
+ privacy_policy_url: Optional[str] = FieldInfo(alias="privacyPolicyURL", default=None)
87
+
88
+ terms_and_condition_url: Optional[str] = FieldInfo(alias="termsAndConditionURL", default=None)
89
+
64
90
  verification_status: Optional[TfVerificationStatus] = FieldInfo(alias="verificationStatus", default=None)
65
91
  """Tollfree verification status"""
66
92
 
@@ -2,6 +2,7 @@
2
2
 
3
3
  from typing import List, Optional
4
4
  from datetime import datetime
5
+ from typing_extensions import Literal
5
6
 
6
7
  from pydantic import Field as FieldInfo
7
8
 
@@ -61,12 +62,37 @@ class VerificationRequestStatus(BaseModel):
61
62
  verification_status: TfVerificationStatus = FieldInfo(alias="verificationStatus")
62
63
  """Tollfree verification status"""
63
64
 
65
+ age_gated_content: Optional[bool] = FieldInfo(alias="ageGatedContent", default=None)
66
+
64
67
  business_addr2: Optional[str] = FieldInfo(alias="businessAddr2", default=None)
65
68
 
69
+ business_registration_country: Optional[str] = FieldInfo(alias="businessRegistrationCountry", default=None)
70
+
71
+ business_registration_number: Optional[str] = FieldInfo(alias="businessRegistrationNumber", default=None)
72
+
73
+ business_registration_type: Optional[str] = FieldInfo(alias="businessRegistrationType", default=None)
74
+
66
75
  created_at: Optional[datetime] = FieldInfo(alias="createdAt", default=None)
67
76
 
77
+ doing_business_as: Optional[str] = FieldInfo(alias="doingBusinessAs", default=None)
78
+
79
+ entity_type: Optional[Literal["SOLE_PROPRIETOR", "PRIVATE_PROFIT", "PUBLIC_PROFIT", "NON_PROFIT", "GOVERNMENT"]] = (
80
+ FieldInfo(alias="entityType", default=None)
81
+ )
82
+ """Business entity classification"""
83
+
84
+ help_message_response: Optional[str] = FieldInfo(alias="helpMessageResponse", default=None)
85
+
86
+ opt_in_confirmation_response: Optional[str] = FieldInfo(alias="optInConfirmationResponse", default=None)
87
+
88
+ opt_in_keywords: Optional[str] = FieldInfo(alias="optInKeywords", default=None)
89
+
90
+ privacy_policy_url: Optional[str] = FieldInfo(alias="privacyPolicyURL", default=None)
91
+
68
92
  reason: Optional[str] = None
69
93
 
94
+ terms_and_condition_url: Optional[str] = FieldInfo(alias="termsAndConditionURL", default=None)
95
+
70
96
  updated_at: Optional[datetime] = FieldInfo(alias="updatedAt", default=None)
71
97
 
72
98
  webhook_url: Optional[str] = FieldInfo(alias="webhookUrl", default=None)