telnyx 3.2.0a0__py3-none-any.whl → 3.3.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 (565) hide show
  1. telnyx/__init__.py +3 -1
  2. telnyx/_base_client.py +12 -12
  3. telnyx/_client.py +68 -762
  4. telnyx/_compat.py +48 -48
  5. telnyx/_models.py +50 -44
  6. telnyx/_qs.py +7 -7
  7. telnyx/_types.py +53 -12
  8. telnyx/_utils/__init__.py +9 -2
  9. telnyx/_utils/_compat.py +45 -0
  10. telnyx/_utils/_datetime_parse.py +136 -0
  11. telnyx/_utils/_transform.py +13 -3
  12. telnyx/_utils/_typing.py +6 -1
  13. telnyx/_utils/_utils.py +4 -5
  14. telnyx/_version.py +1 -1
  15. telnyx/resources/__init__.py +73 -0
  16. telnyx/resources/access_ip_address.py +15 -15
  17. telnyx/resources/access_ip_ranges.py +13 -13
  18. telnyx/resources/actions/purchase.py +13 -14
  19. telnyx/resources/actions/register.py +11 -12
  20. telnyx/resources/addresses/actions.py +13 -13
  21. telnyx/resources/addresses/addresses.py +33 -35
  22. telnyx/resources/advanced_orders.py +102 -106
  23. telnyx/resources/ai/ai.py +7 -7
  24. telnyx/resources/ai/assistants/assistants.py +89 -89
  25. telnyx/resources/ai/assistants/canary_deploys.py +9 -9
  26. telnyx/resources/ai/assistants/scheduled_events.py +21 -21
  27. telnyx/resources/ai/assistants/tests/runs.py +13 -13
  28. telnyx/resources/ai/assistants/tests/test_suites/runs.py +13 -13
  29. telnyx/resources/ai/assistants/tests/test_suites/test_suites.py +3 -3
  30. telnyx/resources/ai/assistants/tests/tests.py +43 -43
  31. telnyx/resources/ai/assistants/tools.py +7 -7
  32. telnyx/resources/ai/assistants/versions.py +45 -45
  33. telnyx/resources/ai/audio.py +11 -11
  34. telnyx/resources/ai/chat.py +48 -48
  35. telnyx/resources/ai/clusters.py +27 -29
  36. telnyx/resources/ai/conversations/conversations.py +179 -45
  37. telnyx/resources/ai/conversations/insight_groups/insight_groups.py +23 -23
  38. telnyx/resources/ai/conversations/insight_groups/insights.py +5 -5
  39. telnyx/resources/ai/conversations/insights.py +25 -25
  40. telnyx/resources/ai/conversations/messages.py +3 -136
  41. telnyx/resources/ai/embeddings/buckets.py +7 -7
  42. telnyx/resources/ai/embeddings/embeddings.py +23 -24
  43. telnyx/resources/ai/fine_tuning/jobs.py +13 -13
  44. telnyx/resources/audit_events.py +9 -9
  45. telnyx/resources/authentication_providers.py +29 -29
  46. telnyx/resources/available_phone_number_blocks.py +5 -5
  47. telnyx/resources/available_phone_numbers.py +5 -5
  48. telnyx/resources/balance.py +3 -3
  49. telnyx/resources/billing_groups.py +17 -17
  50. telnyx/resources/brand/brand.py +121 -117
  51. telnyx/resources/brand/external_vetting.py +9 -9
  52. telnyx/resources/bulk_sim_card_actions.py +11 -11
  53. telnyx/resources/bundle_pricing/billing_bundles.py +13 -13
  54. telnyx/resources/bundle_pricing/user_bundles.py +35 -35
  55. telnyx/resources/call_control_applications.py +64 -68
  56. telnyx/resources/call_events.py +7 -7
  57. telnyx/resources/calls/actions.py +699 -699
  58. telnyx/resources/calls/calls.py +116 -110
  59. telnyx/resources/campaign/campaign.py +47 -47
  60. telnyx/resources/campaign/osr.py +3 -3
  61. telnyx/resources/campaign/usecase.py +3 -3
  62. telnyx/resources/campaign_builder/brand.py +3 -3
  63. telnyx/resources/campaign_builder/campaign_builder.py +68 -68
  64. telnyx/resources/channel_zones.py +7 -7
  65. telnyx/resources/charges_breakdown.py +7 -7
  66. telnyx/resources/charges_summary.py +3 -3
  67. telnyx/resources/comments.py +17 -17
  68. telnyx/resources/conferences/actions.py +123 -140
  69. telnyx/resources/conferences/conferences.py +37 -41
  70. telnyx/resources/connections.py +15 -15
  71. telnyx/resources/country_coverage.py +5 -5
  72. telnyx/resources/credential_connections/actions.py +3 -3
  73. telnyx/resources/credential_connections/credential_connections.py +96 -96
  74. telnyx/resources/custom_storage_credentials.py +9 -9
  75. telnyx/resources/customer_service_records.py +21 -23
  76. telnyx/resources/detail_records.py +9 -11
  77. telnyx/resources/dialogflow_connections.py +25 -25
  78. telnyx/resources/document_links.py +7 -7
  79. telnyx/resources/documents.py +45 -45
  80. telnyx/resources/dynamic_emergency_addresses.py +23 -23
  81. telnyx/resources/dynamic_emergency_endpoints.py +13 -13
  82. telnyx/resources/enum.py +3 -3
  83. telnyx/resources/external_connections/civic_addresses.py +7 -7
  84. telnyx/resources/external_connections/external_connections.py +42 -42
  85. telnyx/resources/external_connections/log_messages.py +11 -11
  86. telnyx/resources/external_connections/phone_numbers.py +13 -13
  87. telnyx/resources/external_connections/releases.py +9 -9
  88. telnyx/resources/external_connections/uploads.py +27 -29
  89. telnyx/resources/fax_applications.py +48 -48
  90. telnyx/resources/faxes/actions.py +5 -5
  91. telnyx/resources/faxes/faxes.py +35 -35
  92. telnyx/resources/fqdn_connections.py +94 -94
  93. telnyx/resources/fqdns.py +25 -25
  94. telnyx/resources/global_ip_allowed_ports.py +3 -3
  95. telnyx/resources/global_ip_assignment_health.py +5 -5
  96. telnyx/resources/global_ip_assignments.py +19 -19
  97. telnyx/resources/global_ip_assignments_usage.py +5 -5
  98. telnyx/resources/global_ip_health_check_types.py +3 -3
  99. telnyx/resources/global_ip_health_checks.py +17 -17
  100. telnyx/resources/global_ip_latency.py +5 -5
  101. telnyx/resources/global_ip_protocols.py +3 -3
  102. telnyx/resources/global_ip_usage.py +5 -5
  103. telnyx/resources/global_ips.py +17 -17
  104. telnyx/resources/inbound_channels.py +5 -5
  105. telnyx/resources/integration_secrets.py +17 -17
  106. telnyx/resources/inventory_coverage.py +5 -5
  107. telnyx/resources/invoices.py +11 -11
  108. telnyx/resources/ip_connections.py +94 -94
  109. telnyx/resources/ips.py +23 -23
  110. telnyx/resources/ledger_billing_group_reports.py +9 -9
  111. telnyx/resources/legacy/__init__.py +33 -0
  112. telnyx/resources/legacy/legacy.py +102 -0
  113. telnyx/resources/legacy/reporting/__init__.py +47 -0
  114. telnyx/resources/legacy/reporting/batch_detail_records/__init__.py +61 -0
  115. telnyx/resources/legacy/reporting/batch_detail_records/batch_detail_records.py +166 -0
  116. telnyx/resources/legacy/reporting/batch_detail_records/messaging.py +482 -0
  117. telnyx/resources/legacy/reporting/batch_detail_records/speech_to_text.py +399 -0
  118. telnyx/resources/legacy/reporting/batch_detail_records/voice.py +539 -0
  119. telnyx/resources/legacy/reporting/reporting.py +134 -0
  120. telnyx/resources/legacy/reporting/usage_reports/__init__.py +61 -0
  121. telnyx/resources/legacy/reporting/usage_reports/messaging.py +471 -0
  122. telnyx/resources/legacy/reporting/usage_reports/number_lookup.py +464 -0
  123. telnyx/resources/legacy/reporting/usage_reports/usage_reports.py +288 -0
  124. telnyx/resources/legacy/reporting/usage_reports/voice.py +493 -0
  125. telnyx/resources/list.py +5 -5
  126. telnyx/resources/managed_accounts/actions.py +7 -7
  127. telnyx/resources/managed_accounts/managed_accounts.py +33 -33
  128. telnyx/resources/media.py +23 -23
  129. telnyx/resources/messages/messages.py +124 -124
  130. telnyx/resources/messages/rcs.py +7 -7
  131. telnyx/resources/messaging/rcs/agents.py +15 -15
  132. telnyx/resources/messaging/rcs/rcs.py +9 -11
  133. telnyx/resources/messaging_hosted_number_orders/actions.py +7 -7
  134. telnyx/resources/messaging_hosted_number_orders/messaging_hosted_number_orders.py +26 -26
  135. telnyx/resources/messaging_hosted_numbers.py +3 -3
  136. telnyx/resources/messaging_numbers_bulk_updates.py +7 -9
  137. telnyx/resources/messaging_optouts.py +11 -11
  138. telnyx/resources/messaging_profiles/autoresp_configs.py +25 -26
  139. telnyx/resources/messaging_profiles/messaging_profiles.py +76 -76
  140. telnyx/resources/messaging_tollfree/verification/requests.py +27 -27
  141. telnyx/resources/messaging_url_domains.py +5 -5
  142. telnyx/resources/messsages.py +11 -11
  143. telnyx/resources/mobile_network_operators.py +7 -7
  144. telnyx/resources/mobile_push_credentials.py +23 -23
  145. telnyx/resources/network_coverage.py +9 -9
  146. telnyx/resources/networks/default_gateway.py +9 -9
  147. telnyx/resources/networks/networks.py +21 -21
  148. telnyx/resources/notification_channels.py +27 -27
  149. telnyx/resources/notification_event_conditions.py +7 -7
  150. telnyx/resources/notification_events.py +5 -5
  151. telnyx/resources/notification_profiles.py +17 -17
  152. telnyx/resources/notification_settings.py +21 -21
  153. telnyx/resources/number_block_orders.py +17 -17
  154. telnyx/resources/number_lookup.py +5 -5
  155. telnyx/resources/number_order_phone_numbers.py +13 -13
  156. telnyx/resources/number_orders.py +27 -27
  157. telnyx/resources/number_reservations/actions.py +3 -3
  158. telnyx/resources/number_reservations/number_reservations.py +15 -15
  159. telnyx/resources/numbers_features.py +5 -7
  160. telnyx/resources/oauth.py +855 -0
  161. telnyx/resources/oauth_clients.py +711 -0
  162. telnyx/resources/oauth_grants.py +349 -0
  163. telnyx/resources/operator_connect/actions.py +3 -3
  164. telnyx/resources/ota_updates.py +9 -9
  165. telnyx/resources/outbound_voice_profiles.py +66 -66
  166. telnyx/resources/partner_campaigns.py +25 -25
  167. telnyx/resources/payment/auto_recharge_prefs.py +15 -15
  168. telnyx/resources/phone_number_assignment_by_profile.py +15 -15
  169. telnyx/resources/phone_number_blocks/jobs.py +13 -13
  170. telnyx/resources/phone_number_campaigns.py +19 -19
  171. telnyx/resources/phone_numbers/actions.py +9 -11
  172. telnyx/resources/phone_numbers/csv_downloads.py +13 -13
  173. telnyx/resources/phone_numbers/jobs.py +54 -42
  174. telnyx/resources/phone_numbers/messaging.py +13 -13
  175. telnyx/resources/phone_numbers/phone_numbers.py +39 -40
  176. telnyx/resources/phone_numbers/voice.py +31 -31
  177. telnyx/resources/phone_numbers/voicemail.py +15 -15
  178. telnyx/resources/phone_numbers_regulatory_requirements.py +5 -5
  179. telnyx/resources/portability_checks.py +5 -7
  180. telnyx/resources/porting/events.py +11 -11
  181. telnyx/resources/porting/loa_configurations.py +17 -17
  182. telnyx/resources/porting/porting.py +3 -3
  183. telnyx/resources/porting/reports.py +11 -11
  184. telnyx/resources/porting_orders/action_requirements.py +11 -11
  185. telnyx/resources/porting_orders/actions.py +13 -13
  186. telnyx/resources/porting_orders/activation_jobs.py +11 -11
  187. telnyx/resources/porting_orders/additional_documents.py +15 -15
  188. telnyx/resources/porting_orders/associated_phone_numbers.py +13 -13
  189. telnyx/resources/porting_orders/comments.py +9 -9
  190. telnyx/resources/porting_orders/phone_number_blocks.py +13 -13
  191. telnyx/resources/porting_orders/phone_number_configurations.py +13 -13
  192. telnyx/resources/porting_orders/phone_number_extensions.py +13 -13
  193. telnyx/resources/porting_orders/porting_orders.py +82 -70
  194. telnyx/resources/porting_orders/verification_codes.py +20 -20
  195. telnyx/resources/porting_phone_numbers.py +7 -7
  196. telnyx/resources/portouts/comments.py +7 -7
  197. telnyx/resources/portouts/events.py +11 -11
  198. telnyx/resources/portouts/portouts.py +17 -17
  199. telnyx/resources/portouts/reports.py +11 -11
  200. telnyx/resources/portouts/supporting_documents.py +7 -7
  201. telnyx/resources/private_wireless_gateways.py +25 -25
  202. telnyx/resources/public_internet_gateways.py +19 -19
  203. telnyx/resources/queues/calls.py +7 -7
  204. telnyx/resources/queues/queues.py +3 -3
  205. telnyx/resources/recording_transcriptions.py +7 -7
  206. telnyx/resources/recordings/actions.py +5 -7
  207. telnyx/resources/recordings/recordings.py +11 -11
  208. telnyx/resources/regions.py +3 -3
  209. telnyx/resources/regulatory_requirements.py +5 -5
  210. telnyx/resources/reports/cdr_usage_reports.py +9 -9
  211. telnyx/resources/reports/mdr_usage_reports.py +22 -22
  212. telnyx/resources/reports/reports.py +47 -48
  213. telnyx/resources/requirement_groups.py +23 -23
  214. telnyx/resources/requirement_types.py +9 -11
  215. telnyx/resources/requirements.py +11 -11
  216. telnyx/resources/room_compositions.py +27 -27
  217. telnyx/resources/room_participants.py +9 -9
  218. telnyx/resources/room_recordings.py +17 -17
  219. telnyx/resources/rooms/actions.py +11 -11
  220. telnyx/resources/rooms/rooms.py +43 -43
  221. telnyx/resources/rooms/sessions/actions.py +22 -22
  222. telnyx/resources/rooms/sessions/sessions.py +27 -27
  223. telnyx/resources/seti.py +5 -5
  224. telnyx/resources/short_codes.py +11 -11
  225. telnyx/resources/sim_card_data_usage_notifications.py +21 -21
  226. telnyx/resources/sim_card_groups/actions.py +23 -23
  227. telnyx/resources/sim_card_groups/sim_card_groups.py +29 -29
  228. telnyx/resources/sim_card_order_preview.py +3 -3
  229. telnyx/resources/sim_card_orders.py +11 -11
  230. telnyx/resources/sim_cards/actions.py +29 -31
  231. telnyx/resources/sim_cards/sim_cards.py +48 -48
  232. telnyx/resources/siprec_connectors.py +13 -13
  233. telnyx/resources/storage/buckets/buckets.py +5 -5
  234. telnyx/resources/storage/buckets/ssl_certificate.py +11 -11
  235. telnyx/resources/storage/buckets/usage.py +5 -5
  236. telnyx/resources/storage/migration_sources.py +11 -11
  237. telnyx/resources/storage/migrations/actions.py +3 -3
  238. telnyx/resources/storage/migrations/migrations.py +9 -9
  239. telnyx/resources/storage/storage.py +3 -3
  240. telnyx/resources/sub_number_orders.py +17 -17
  241. telnyx/resources/sub_number_orders_report.py +19 -19
  242. telnyx/resources/telephony_credentials.py +31 -31
  243. telnyx/resources/texml/accounts/accounts.py +15 -15
  244. telnyx/resources/texml/accounts/calls/calls.py +145 -145
  245. telnyx/resources/texml/accounts/calls/recordings.py +5 -5
  246. telnyx/resources/texml/accounts/calls/recordings_json.py +19 -19
  247. telnyx/resources/texml/accounts/calls/siprec.py +5 -5
  248. telnyx/resources/texml/accounts/calls/streams.py +5 -5
  249. telnyx/resources/texml/accounts/conferences/conferences.py +31 -31
  250. telnyx/resources/texml/accounts/conferences/participants.py +123 -123
  251. telnyx/resources/texml/accounts/recordings/json.py +5 -5
  252. telnyx/resources/texml/accounts/transcriptions/json.py +5 -5
  253. telnyx/resources/texml/calls.py +79 -79
  254. telnyx/resources/texml/texml.py +3 -3
  255. telnyx/resources/texml_applications.py +65 -66
  256. telnyx/resources/text_to_speech.py +9 -9
  257. telnyx/resources/usage_reports.py +31 -32
  258. telnyx/resources/user_addresses.py +29 -31
  259. telnyx/resources/user_tags.py +5 -5
  260. telnyx/resources/verifications/actions.py +7 -7
  261. telnyx/resources/verifications/by_phone_number/actions.py +3 -3
  262. telnyx/resources/verifications/by_phone_number/by_phone_number.py +3 -3
  263. telnyx/resources/verifications/verifications.py +29 -19
  264. telnyx/resources/verified_numbers/actions.py +3 -3
  265. telnyx/resources/verified_numbers/verified_numbers.py +36 -15
  266. telnyx/resources/verify_profiles.py +226 -44
  267. telnyx/resources/virtual_cross_connects.py +45 -45
  268. telnyx/resources/virtual_cross_connects_coverage.py +9 -9
  269. telnyx/resources/webhook_deliveries.py +9 -9
  270. telnyx/resources/webhooks.py +34 -0
  271. telnyx/resources/well_known.py +198 -0
  272. telnyx/resources/wireguard_interfaces.py +17 -17
  273. telnyx/resources/wireguard_peers.py +21 -21
  274. telnyx/resources/wireless/detail_records_reports.py +17 -17
  275. telnyx/resources/wireless/wireless.py +3 -3
  276. telnyx/resources/wireless_blocklist_values.py +3 -3
  277. telnyx/resources/wireless_blocklists.py +29 -30
  278. telnyx/types/__init__.py +164 -13
  279. telnyx/types/actions/purchase_create_params.py +3 -2
  280. telnyx/types/actions/register_create_params.py +4 -3
  281. telnyx/types/addresses/action_validate_response.py +8 -3
  282. telnyx/types/{advanced_order_update_params.py → advanced_order_update_requirement_group_params.py} +2 -2
  283. telnyx/types/ai/__init__.py +1 -0
  284. telnyx/types/ai/chat_create_completion_params.py +3 -2
  285. telnyx/types/ai/cluster_compute_params.py +3 -2
  286. telnyx/types/ai/{conversations/message_create_params.py → conversation_add_message_params.py} +6 -5
  287. telnyx/types/ai/conversations/__init__.py +0 -1
  288. telnyx/types/ai/embedding_list_params.py +3 -2
  289. telnyx/types/ai/inference_embedding_bucket_ids_param.py +3 -2
  290. telnyx/types/ai/inference_embedding_transfer_tool_params.py +6 -0
  291. telnyx/types/ai/inference_embedding_transfer_tool_params_param.py +6 -0
  292. telnyx/types/ai/inference_embedding_webhook_tool_params.py +2 -0
  293. telnyx/types/ai/inference_embedding_webhook_tool_params_param.py +8 -4
  294. telnyx/types/ai/voice_settings.py +49 -2
  295. telnyx/types/ai/voice_settings_param.py +49 -2
  296. telnyx/types/brand_create_params.py +2 -1
  297. telnyx/types/brand_update_params.py +2 -1
  298. telnyx/types/bundle_pricing/billing_bundle_list_params.py +4 -3
  299. telnyx/types/bundle_pricing/user_bundle_list_params.py +4 -3
  300. telnyx/types/bundle_pricing/user_bundle_list_unused_params.py +4 -3
  301. telnyx/types/call_ai_gather_ended_webhook_event.py +78 -0
  302. telnyx/types/call_ai_gather_message_history_updated_webhook_event.py +69 -0
  303. telnyx/types/call_ai_gather_partial_results_webhook_event.py +75 -0
  304. telnyx/types/call_answered_webhook_event.py +75 -0
  305. telnyx/types/call_bridged_webhook_event.py +58 -0
  306. telnyx/types/call_control_application_update_params.py +3 -2
  307. telnyx/types/call_conversation_ended_webhook_event.py +84 -0
  308. telnyx/types/call_conversation_insights_generated_webhook_event.py +67 -0
  309. telnyx/types/call_dial_params.py +14 -6
  310. telnyx/types/call_dtmf_received_webhook_event.py +61 -0
  311. telnyx/types/call_enqueued_webhook_event.py +59 -0
  312. telnyx/types/call_fork_started_webhook_event.py +53 -0
  313. telnyx/types/call_fork_stopped_webhook_event.py +53 -0
  314. telnyx/types/call_gather_ended_webhook_event.py +64 -0
  315. telnyx/types/call_hangup_webhook_event.py +150 -0
  316. telnyx/types/call_initiated_webhook_event.py +96 -0
  317. telnyx/types/call_left_queue_webhook_event.py +62 -0
  318. telnyx/types/call_machine_detection_ended_webhook_event.py +61 -0
  319. telnyx/types/call_machine_greeting_ended_webhook_event.py +61 -0
  320. telnyx/types/call_machine_premium_detection_ended_webhook_event.py +63 -0
  321. telnyx/types/call_machine_premium_greeting_ended_webhook_event.py +61 -0
  322. telnyx/types/call_playback_ended_webhook_event.py +70 -0
  323. telnyx/types/call_playback_started_webhook_event.py +62 -0
  324. telnyx/types/call_recording_error_webhook_event.py +60 -0
  325. telnyx/types/call_recording_saved_webhook_event.py +94 -0
  326. telnyx/types/call_recording_transcription_saved_webhook_event.py +71 -0
  327. telnyx/types/call_refer_completed_webhook_event.py +61 -0
  328. telnyx/types/call_refer_failed_webhook_event.py +61 -0
  329. telnyx/types/call_refer_started_webhook_event.py +61 -0
  330. telnyx/types/call_siprec_failed_webhook_event.py +53 -0
  331. telnyx/types/call_siprec_started_webhook_event.py +50 -0
  332. telnyx/types/call_siprec_stopped_webhook_event.py +53 -0
  333. telnyx/types/call_speak_ended_webhook_event.py +53 -0
  334. telnyx/types/call_speak_started_webhook_event.py +50 -0
  335. telnyx/types/call_streaming_failed_webhook_event.py +70 -0
  336. telnyx/types/call_streaming_started_webhook_event.py +53 -0
  337. telnyx/types/call_streaming_stopped_webhook_event.py +53 -0
  338. telnyx/types/calls/action_answer_params.py +1 -2
  339. telnyx/types/calls/action_gather_using_ai_params.py +5 -8
  340. telnyx/types/calls/action_start_streaming_params.py +4 -2
  341. telnyx/types/calls/action_start_transcription_params.py +260 -6
  342. telnyx/types/calls/action_transfer_params.py +50 -0
  343. telnyx/types/calls/transcription_engine_a_config_param.py +4 -3
  344. telnyx/types/calls/transcription_start_request_param.py +261 -6
  345. telnyx/types/campaign_builder_create_params.py +4 -3
  346. telnyx/types/campaign_status_update_webhook_event.py +26 -0
  347. telnyx/types/campaign_submit_appeal_response.py +0 -3
  348. telnyx/types/conference_created_webhook_event.py +53 -0
  349. telnyx/types/conference_ended_webhook_event.py +56 -0
  350. telnyx/types/conference_floor_changed_webhook_event.py +45 -0
  351. telnyx/types/conference_participant_joined_webhook_event.py +53 -0
  352. telnyx/types/conference_participant_left_webhook_event.py +53 -0
  353. telnyx/types/conference_participant_playback_ended_webhook_event.py +65 -0
  354. telnyx/types/conference_participant_playback_started_webhook_event.py +65 -0
  355. telnyx/types/conference_participant_speak_ended_webhook_event.py +56 -0
  356. telnyx/types/conference_participant_speak_started_webhook_event.py +56 -0
  357. telnyx/types/conference_playback_ended_webhook_event.py +49 -0
  358. telnyx/types/conference_playback_started_webhook_event.py +49 -0
  359. telnyx/types/conference_recording_saved_webhook_event.py +103 -0
  360. telnyx/types/conference_speak_ended_webhook_event.py +40 -0
  361. telnyx/types/conference_speak_started_webhook_event.py +40 -0
  362. telnyx/types/conferences/action_hold_params.py +3 -2
  363. telnyx/types/conferences/action_join_params.py +3 -2
  364. telnyx/types/conferences/action_mute_params.py +3 -2
  365. telnyx/types/conferences/action_play_params.py +2 -2
  366. telnyx/types/conferences/action_speak_params.py +3 -2
  367. telnyx/types/conferences/action_stop_params.py +3 -2
  368. telnyx/types/conferences/action_unhold_params.py +3 -2
  369. telnyx/types/conferences/action_unmute_params.py +3 -2
  370. telnyx/types/conferences/action_update_params.py +3 -2
  371. telnyx/types/country_coverage_retrieve_country_response.py +7 -0
  372. telnyx/types/country_coverage_retrieve_response.py +7 -0
  373. telnyx/types/credential_connection_create_params.py +3 -2
  374. telnyx/types/credential_connection_update_params.py +3 -2
  375. telnyx/types/credential_inbound_param.py +3 -2
  376. telnyx/types/custom_sip_header.py +13 -0
  377. telnyx/types/customer_service_record_list_params.py +2 -1
  378. telnyx/types/customer_service_record_status_changed_webhook_event.py +55 -0
  379. telnyx/types/customer_service_record_verify_phone_number_coverage_params.py +3 -2
  380. telnyx/types/delivery_update_webhook_event.py +40 -0
  381. telnyx/types/detail_record_list_params.py +4 -2
  382. telnyx/types/document_list_params.py +2 -1
  383. telnyx/types/external_connection_create_params.py +4 -2
  384. telnyx/types/external_connection_update_params.py +4 -2
  385. telnyx/types/external_connections/civic_address_list_params.py +3 -2
  386. telnyx/types/external_connections/upload_create_params.py +3 -1
  387. telnyx/types/fax_application_create_params.py +3 -2
  388. telnyx/types/fax_application_update_params.py +3 -2
  389. telnyx/types/fax_delivered_webhook_event.py +69 -0
  390. telnyx/types/fax_failed_webhook_event.py +66 -0
  391. telnyx/types/fax_media_processed_webhook_event.py +63 -0
  392. telnyx/types/fax_queued_webhook_event.py +63 -0
  393. telnyx/types/fax_sending_started_webhook_event.py +63 -0
  394. telnyx/types/fqdn_connection_create_params.py +3 -2
  395. telnyx/types/fqdn_connection_update_params.py +3 -2
  396. telnyx/types/global_ip_latency_retrieve_response.py +7 -7
  397. telnyx/types/inbound_fqdn_param.py +4 -2
  398. telnyx/types/inbound_ip_param.py +3 -2
  399. telnyx/types/inbound_message_webhook_event.py +227 -0
  400. telnyx/types/ip_connection_create_params.py +4 -3
  401. telnyx/types/ip_connection_update_params.py +3 -2
  402. telnyx/types/legacy/__init__.py +3 -0
  403. telnyx/types/legacy/reporting/__init__.py +12 -0
  404. telnyx/types/legacy/reporting/batch_detail_records/__init__.py +23 -0
  405. telnyx/types/legacy/reporting/batch_detail_records/cdr_detailed_req_response.py +63 -0
  406. telnyx/types/legacy/reporting/batch_detail_records/mdr_detail_report_response.py +42 -0
  407. telnyx/types/legacy/reporting/batch_detail_records/messaging_create_params.py +55 -0
  408. telnyx/types/legacy/reporting/batch_detail_records/messaging_create_response.py +12 -0
  409. telnyx/types/legacy/reporting/batch_detail_records/messaging_delete_response.py +12 -0
  410. telnyx/types/legacy/reporting/batch_detail_records/messaging_list_response.py +24 -0
  411. telnyx/types/legacy/reporting/batch_detail_records/messaging_retrieve_response.py +12 -0
  412. telnyx/types/legacy/reporting/batch_detail_records/speech_to_text_create_params.py +19 -0
  413. telnyx/types/legacy/reporting/batch_detail_records/speech_to_text_create_response.py +12 -0
  414. telnyx/types/legacy/reporting/batch_detail_records/speech_to_text_delete_response.py +12 -0
  415. telnyx/types/legacy/reporting/batch_detail_records/speech_to_text_list_response.py +12 -0
  416. telnyx/types/legacy/reporting/batch_detail_records/speech_to_text_retrieve_response.py +12 -0
  417. telnyx/types/legacy/reporting/batch_detail_records/stt_detail_report_response.py +27 -0
  418. telnyx/types/legacy/reporting/batch_detail_records/voice_create_params.py +57 -0
  419. telnyx/types/legacy/reporting/batch_detail_records/voice_create_response.py +13 -0
  420. telnyx/types/legacy/reporting/batch_detail_records/voice_delete_response.py +13 -0
  421. telnyx/types/legacy/reporting/batch_detail_records/voice_list_response.py +24 -0
  422. telnyx/types/legacy/reporting/batch_detail_records/voice_retrieve_fields_response.py +23 -0
  423. telnyx/types/legacy/reporting/batch_detail_records/voice_retrieve_response.py +13 -0
  424. telnyx/types/legacy/reporting/filter.py +31 -0
  425. telnyx/types/legacy/reporting/filter_param.py +30 -0
  426. telnyx/types/legacy/reporting/usage_report_retrieve_speech_to_text_params.py +17 -0
  427. telnyx/types/legacy/reporting/usage_report_retrieve_speech_to_text_response.py +11 -0
  428. telnyx/types/legacy/reporting/usage_reports/__init__.py +20 -0
  429. telnyx/types/legacy/reporting/usage_reports/cdr_usage_report_response_legacy.py +43 -0
  430. telnyx/types/legacy/reporting/usage_reports/mdr_usage_report_response_legacy.py +38 -0
  431. telnyx/types/legacy/reporting/usage_reports/messaging_create_params.py +29 -0
  432. telnyx/types/legacy/reporting/usage_reports/messaging_create_response.py +13 -0
  433. telnyx/types/legacy/reporting/usage_reports/messaging_delete_response.py +13 -0
  434. telnyx/types/legacy/reporting/usage_reports/messaging_list_params.py +15 -0
  435. telnyx/types/legacy/reporting/usage_reports/messaging_list_response.py +24 -0
  436. telnyx/types/legacy/reporting/usage_reports/messaging_retrieve_response.py +13 -0
  437. telnyx/types/legacy/reporting/usage_reports/number_lookup_create_params.py +26 -0
  438. telnyx/types/legacy/reporting/usage_reports/number_lookup_list_params.py +13 -0
  439. telnyx/types/legacy/reporting/usage_reports/voice_create_params.py +40 -0
  440. telnyx/types/legacy/reporting/usage_reports/voice_create_response.py +13 -0
  441. telnyx/types/legacy/reporting/usage_reports/voice_delete_response.py +13 -0
  442. telnyx/types/legacy/reporting/usage_reports/voice_list_params.py +15 -0
  443. telnyx/types/legacy/reporting/usage_reports/voice_list_response.py +24 -0
  444. telnyx/types/legacy/reporting/usage_reports/voice_retrieve_response.py +13 -0
  445. telnyx/types/media_list_params.py +3 -2
  446. telnyx/types/message_schedule_params.py +3 -2
  447. telnyx/types/message_send_group_mms_params.py +3 -3
  448. telnyx/types/message_send_long_code_params.py +2 -2
  449. telnyx/types/message_send_number_pool_params.py +3 -2
  450. telnyx/types/message_send_params.py +3 -2
  451. telnyx/types/message_send_short_code_params.py +2 -2
  452. telnyx/types/messaging/rc_list_bulk_capabilities_params.py +3 -2
  453. telnyx/types/messaging_hosted_number_order_check_eligibility_params.py +3 -2
  454. telnyx/types/messaging_hosted_number_order_create_params.py +3 -2
  455. telnyx/types/messaging_hosted_number_order_create_verification_codes_params.py +3 -2
  456. telnyx/types/messaging_numbers_bulk_update_create_params.py +3 -2
  457. telnyx/types/messaging_profile_create_params.py +3 -2
  458. telnyx/types/messaging_profile_update_params.py +3 -2
  459. telnyx/types/messaging_profiles/autoresp_config_create_params.py +3 -2
  460. telnyx/types/messaging_profiles/autoresp_config_update_params.py +3 -2
  461. telnyx/types/messsage_rcs_params.py +2 -2
  462. telnyx/types/number_order_status_update_webhook_event.py +38 -0
  463. telnyx/types/numbers_feature_create_params.py +3 -2
  464. telnyx/types/oauth_client.py +59 -0
  465. telnyx/types/oauth_client_create_params.py +39 -0
  466. telnyx/types/oauth_client_create_response.py +12 -0
  467. telnyx/types/oauth_client_list_params.py +38 -0
  468. telnyx/types/oauth_client_list_response.py +28 -0
  469. telnyx/types/oauth_client_retrieve_response.py +12 -0
  470. telnyx/types/oauth_client_update_params.py +36 -0
  471. telnyx/types/oauth_client_update_response.py +12 -0
  472. telnyx/types/oauth_grant.py +29 -0
  473. telnyx/types/oauth_grant_delete_response.py +12 -0
  474. telnyx/types/oauth_grant_list_params.py +17 -0
  475. telnyx/types/oauth_grant_list_response.py +28 -0
  476. telnyx/types/oauth_grant_retrieve_response.py +12 -0
  477. telnyx/types/oauth_grants_params.py +15 -0
  478. telnyx/types/oauth_grants_response.py +10 -0
  479. telnyx/types/oauth_introspect_params.py +12 -0
  480. telnyx/types/oauth_introspect_response.py +30 -0
  481. telnyx/types/oauth_register_params.py +39 -0
  482. telnyx/types/oauth_register_response.py +45 -0
  483. telnyx/types/oauth_retrieve_authorize_params.py +30 -0
  484. telnyx/types/oauth_retrieve_jwks_response.py +25 -0
  485. telnyx/types/oauth_retrieve_response.py +47 -0
  486. telnyx/types/oauth_token_params.py +33 -0
  487. telnyx/types/oauth_token_response.py +25 -0
  488. telnyx/types/outbound_call_recording_param.py +3 -2
  489. telnyx/types/outbound_voice_profile_create_params.py +4 -3
  490. telnyx/types/outbound_voice_profile_update_params.py +4 -3
  491. telnyx/types/phone_number_delete_response.py +7 -0
  492. telnyx/types/phone_number_detailed.py +7 -0
  493. telnyx/types/phone_number_list_params.py +9 -2
  494. telnyx/types/phone_number_slim_list_params.py +3 -2
  495. telnyx/types/phone_number_update_params.py +3 -2
  496. telnyx/types/phone_numbers/action_verify_ownership_params.py +3 -2
  497. telnyx/types/phone_numbers/job_delete_batch_params.py +3 -2
  498. telnyx/types/phone_numbers/job_update_batch_params.py +10 -3
  499. telnyx/types/phone_numbers/job_update_emergency_settings_batch_params.py +4 -2
  500. telnyx/types/portability_check_run_params.py +3 -2
  501. telnyx/types/porting/export_porting_orders_csv_report_param.py +2 -1
  502. telnyx/types/porting_order.py +3 -0
  503. telnyx/types/porting_order_create_params.py +6 -2
  504. telnyx/types/porting_order_list_params.py +52 -31
  505. telnyx/types/porting_order_phone_number_configuration_param.py +3 -2
  506. telnyx/types/porting_order_update_params.py +2 -0
  507. telnyx/types/porting_orders/action_requirement_list_params.py +3 -2
  508. telnyx/types/porting_orders/phone_number_block_list_params.py +5 -3
  509. telnyx/types/porting_orders/phone_number_configuration_list_params.py +22 -21
  510. telnyx/types/porting_orders/verification_code_send_params.py +3 -2
  511. telnyx/types/portout_list_params.py +2 -1
  512. telnyx/types/portouts/export_portouts_csv_report_param.py +3 -2
  513. telnyx/types/recordings/action_delete_params.py +3 -2
  514. telnyx/types/replaced_link_click_webhook_event.py +32 -0
  515. telnyx/types/report_list_wdrs_params.py +3 -2
  516. telnyx/types/reports/mdr_usage_report_fetch_sync_params.py +3 -2
  517. telnyx/types/rooms/sessions/action_kick_params.py +5 -3
  518. telnyx/types/rooms/sessions/action_mute_params.py +5 -3
  519. telnyx/types/rooms/sessions/action_unmute_params.py +5 -3
  520. telnyx/types/shared/__init__.py +1 -0
  521. telnyx/types/{error.py → shared/api_error.py} +3 -3
  522. telnyx/types/shared/simple_sim_card.py +15 -0
  523. telnyx/types/sim_card.py +12 -0
  524. telnyx/types/sim_card_list_params.py +2 -1
  525. telnyx/types/sim_card_update_params.py +4 -3
  526. telnyx/types/sim_cards/action_bulk_set_public_ips_params.py +3 -2
  527. telnyx/types/sim_cards/action_validate_registration_codes_params.py +3 -2
  528. telnyx/types/sip_header.py +15 -0
  529. telnyx/types/stream_bidirectional_codec.py +1 -1
  530. telnyx/types/stream_codec.py +1 -1
  531. telnyx/types/streaming_failed_webhook_event.py +70 -0
  532. telnyx/types/streaming_started_webhook_event.py +53 -0
  533. telnyx/types/streaming_stopped_webhook_event.py +53 -0
  534. telnyx/types/texml_application_create_params.py +2 -2
  535. telnyx/types/texml_application_update_params.py +2 -2
  536. telnyx/types/transcription_webhook_event.py +72 -0
  537. telnyx/types/unwrap_webhook_event.py +138 -0
  538. telnyx/types/usage_report_list_params.py +5 -4
  539. telnyx/types/verification_trigger_call_params.py +7 -0
  540. telnyx/types/verified_number_create_params.py +10 -0
  541. telnyx/types/verify_profile.py +18 -3
  542. telnyx/types/verify_profile_create_params.py +6 -4
  543. telnyx/types/verify_profile_create_template_params.py +12 -0
  544. telnyx/types/verify_profile_create_template_response.py +12 -0
  545. telnyx/types/verify_profile_message_template_response.py +13 -0
  546. telnyx/types/verify_profile_retrieve_templates_response.py +4 -9
  547. telnyx/types/verify_profile_update_params.py +6 -4
  548. telnyx/types/verify_profile_update_template_params.py +12 -0
  549. telnyx/types/verify_profile_update_template_response.py +12 -0
  550. telnyx/types/video_region_param.py +4 -2
  551. telnyx/types/well_known_retrieve_authorization_server_metadata_response.py +42 -0
  552. telnyx/types/well_known_retrieve_protected_resource_metadata_response.py +15 -0
  553. telnyx/types/wireless_blocklist_create_params.py +3 -2
  554. telnyx/types/wireless_blocklist_update_params.py +3 -2
  555. {telnyx-3.2.0a0.dist-info → telnyx-3.3.0.dist-info}/METADATA +60 -19
  556. {telnyx-3.2.0a0.dist-info → telnyx-3.3.0.dist-info}/RECORD +558 -403
  557. telnyx/types/client_create_bucket_params.py +0 -13
  558. telnyx/types/client_delete_objects_params.py +0 -20
  559. telnyx/types/client_get_object_params.py +0 -15
  560. telnyx/types/client_list_objects_params.py +0 -13
  561. telnyx/types/client_put_object_params.py +0 -20
  562. telnyx/types/list_buckets_response.py +0 -20
  563. telnyx/types/list_objects_response.py +0 -24
  564. {telnyx-3.2.0a0.dist-info → telnyx-3.3.0.dist-info}/WHEEL +0 -0
  565. {telnyx-3.2.0a0.dist-info → telnyx-3.3.0.dist-info}/licenses/LICENSE +0 -0
@@ -0,0 +1,53 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import Optional
4
+ from datetime import datetime
5
+ from typing_extensions import Literal
6
+
7
+ from .._models import BaseModel
8
+
9
+ __all__ = ["CallSiprecStoppedWebhookEvent", "Data", "DataPayload"]
10
+
11
+
12
+ class DataPayload(BaseModel):
13
+ call_control_id: Optional[str] = None
14
+ """Call ID used to issue commands via Call Control API."""
15
+
16
+ call_leg_id: Optional[str] = None
17
+ """ID that is unique to the call and can be used to correlate webhook events."""
18
+
19
+ call_session_id: Optional[str] = None
20
+ """
21
+ ID that is unique to the call session and can be used to correlate webhook
22
+ events. Call session is a group of related call legs that logically belong to
23
+ the same phone call, e.g. an inbound and outbound leg of a transferred call.
24
+ """
25
+
26
+ client_state: Optional[str] = None
27
+ """State received from a command."""
28
+
29
+ connection_id: Optional[str] = None
30
+ """Call Control App ID (formerly Telnyx connection ID) used in the call."""
31
+
32
+ hangup_cause: Optional[str] = None
33
+ """Q850 reason why the SIPREC session was stopped."""
34
+
35
+
36
+ class Data(BaseModel):
37
+ id: Optional[str] = None
38
+ """Identifies the type of resource."""
39
+
40
+ event_type: Optional[Literal["siprec.stopped"]] = None
41
+ """The type of event being delivered."""
42
+
43
+ occurred_at: Optional[datetime] = None
44
+ """ISO 8601 datetime of when the event occurred."""
45
+
46
+ payload: Optional[DataPayload] = None
47
+
48
+ record_type: Optional[Literal["event"]] = None
49
+ """Identifies the type of the resource."""
50
+
51
+
52
+ class CallSiprecStoppedWebhookEvent(BaseModel):
53
+ data: Optional[Data] = None
@@ -0,0 +1,53 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import Optional
4
+ from datetime import datetime
5
+ from typing_extensions import Literal
6
+
7
+ from .._models import BaseModel
8
+
9
+ __all__ = ["CallSpeakEndedWebhookEvent", "Data", "DataPayload"]
10
+
11
+
12
+ class DataPayload(BaseModel):
13
+ call_control_id: Optional[str] = None
14
+ """Call ID used to issue commands via Call Control API."""
15
+
16
+ call_leg_id: Optional[str] = None
17
+ """ID that is unique to the call and can be used to correlate webhook events."""
18
+
19
+ call_session_id: Optional[str] = None
20
+ """
21
+ ID that is unique to the call session and can be used to correlate webhook
22
+ events. Call session is a group of related call legs that logically belong to
23
+ the same phone call, e.g. an inbound and outbound leg of a transferred call.
24
+ """
25
+
26
+ client_state: Optional[str] = None
27
+ """State received from a command."""
28
+
29
+ connection_id: Optional[str] = None
30
+ """Call Control App ID (formerly Telnyx connection ID) used in the call."""
31
+
32
+ status: Optional[Literal["completed", "call_hangup", "cancelled_amd"]] = None
33
+ """Reflects how the command ended."""
34
+
35
+
36
+ class Data(BaseModel):
37
+ id: Optional[str] = None
38
+ """Identifies the type of resource."""
39
+
40
+ event_type: Optional[Literal["call.speak.ended"]] = None
41
+ """The type of event being delivered."""
42
+
43
+ occurred_at: Optional[datetime] = None
44
+ """ISO 8601 datetime of when the event occurred."""
45
+
46
+ payload: Optional[DataPayload] = None
47
+
48
+ record_type: Optional[Literal["event"]] = None
49
+ """Identifies the type of the resource."""
50
+
51
+
52
+ class CallSpeakEndedWebhookEvent(BaseModel):
53
+ data: Optional[Data] = None
@@ -0,0 +1,50 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import Optional
4
+ from datetime import datetime
5
+ from typing_extensions import Literal
6
+
7
+ from .._models import BaseModel
8
+
9
+ __all__ = ["CallSpeakStartedWebhookEvent", "Data", "DataPayload"]
10
+
11
+
12
+ class DataPayload(BaseModel):
13
+ call_control_id: Optional[str] = None
14
+ """Call ID used to issue commands via Call Control API."""
15
+
16
+ call_leg_id: Optional[str] = None
17
+ """ID that is unique to the call and can be used to correlate webhook events."""
18
+
19
+ call_session_id: Optional[str] = None
20
+ """
21
+ ID that is unique to the call session and can be used to correlate webhook
22
+ events. Call session is a group of related call legs that logically belong to
23
+ the same phone call, e.g. an inbound and outbound leg of a transferred call.
24
+ """
25
+
26
+ client_state: Optional[str] = None
27
+ """State received from a command."""
28
+
29
+ connection_id: Optional[str] = None
30
+ """Call Control App ID (formerly Telnyx connection ID) used in the call."""
31
+
32
+
33
+ class Data(BaseModel):
34
+ id: Optional[str] = None
35
+ """Identifies the type of resource."""
36
+
37
+ event_type: Optional[Literal["call.speak.started"]] = None
38
+ """The type of event being delivered."""
39
+
40
+ occurred_at: Optional[datetime] = None
41
+ """ISO 8601 datetime of when the event occurred."""
42
+
43
+ payload: Optional[DataPayload] = None
44
+
45
+ record_type: Optional[Literal["event"]] = None
46
+ """Identifies the type of the resource."""
47
+
48
+
49
+ class CallSpeakStartedWebhookEvent(BaseModel):
50
+ data: Optional[Data] = None
@@ -0,0 +1,70 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import Optional
4
+ from datetime import datetime
5
+ from typing_extensions import Literal
6
+
7
+ from .._models import BaseModel
8
+
9
+ __all__ = ["CallStreamingFailedWebhookEvent", "Data", "DataPayload", "DataPayloadStreamParams"]
10
+
11
+
12
+ class DataPayloadStreamParams(BaseModel):
13
+ stream_url: Optional[str] = None
14
+ """The destination WebSocket address where the stream is going to be delivered."""
15
+
16
+ track: Optional[Literal["inbound_track", "outbound_track", "both_tracks"]] = None
17
+ """Specifies which track should be streamed."""
18
+
19
+
20
+ class DataPayload(BaseModel):
21
+ call_control_id: Optional[str] = None
22
+ """Call ID used to issue commands via Call Control API."""
23
+
24
+ call_leg_id: Optional[str] = None
25
+ """ID that is unique to the call and can be used to correlate webhook events."""
26
+
27
+ call_session_id: Optional[str] = None
28
+ """
29
+ ID that is unique to the call session and can be used to correlate webhook
30
+ events. Call session is a group of related call legs that logically belong to
31
+ the same phone call, e.g. an inbound and outbound leg of a transferred call.
32
+ """
33
+
34
+ client_state: Optional[str] = None
35
+ """State received from a command."""
36
+
37
+ connection_id: Optional[str] = None
38
+ """Call Control App ID (formerly Telnyx connection ID) used in the call."""
39
+
40
+ failure_reason: Optional[str] = None
41
+ """A short description explaning why the media streaming failed."""
42
+
43
+ stream_id: Optional[str] = None
44
+ """Identifies the streaming."""
45
+
46
+ stream_params: Optional[DataPayloadStreamParams] = None
47
+ """Streaming parameters as they were originally given to the Call Control API."""
48
+
49
+ stream_type: Optional[Literal["websocket", "dialogflow"]] = None
50
+ """The type of stream connection the stream is performing."""
51
+
52
+
53
+ class Data(BaseModel):
54
+ id: Optional[str] = None
55
+ """Identifies the type of resource."""
56
+
57
+ event_type: Optional[Literal["streaming.failed"]] = None
58
+ """The type of event being delivered."""
59
+
60
+ occurred_at: Optional[datetime] = None
61
+ """ISO 8601 datetime of when the event occurred."""
62
+
63
+ payload: Optional[DataPayload] = None
64
+
65
+ record_type: Optional[Literal["event"]] = None
66
+ """Identifies the resource."""
67
+
68
+
69
+ class CallStreamingFailedWebhookEvent(BaseModel):
70
+ data: Optional[Data] = None
@@ -0,0 +1,53 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import Optional
4
+ from datetime import datetime
5
+ from typing_extensions import Literal
6
+
7
+ from .._models import BaseModel
8
+
9
+ __all__ = ["CallStreamingStartedWebhookEvent", "Data", "DataPayload"]
10
+
11
+
12
+ class DataPayload(BaseModel):
13
+ call_control_id: Optional[str] = None
14
+ """Call ID used to issue commands via Call Control API."""
15
+
16
+ call_leg_id: Optional[str] = None
17
+ """ID that is unique to the call and can be used to correlate webhook events."""
18
+
19
+ call_session_id: Optional[str] = None
20
+ """
21
+ ID that is unique to the call session and can be used to correlate webhook
22
+ events. Call session is a group of related call legs that logically belong to
23
+ the same phone call, e.g. an inbound and outbound leg of a transferred call.
24
+ """
25
+
26
+ client_state: Optional[str] = None
27
+ """State received from a command."""
28
+
29
+ connection_id: Optional[str] = None
30
+ """Call Control App ID (formerly Telnyx connection ID) used in the call."""
31
+
32
+ stream_url: Optional[str] = None
33
+ """Destination WebSocket address where the stream is going to be delivered."""
34
+
35
+
36
+ class Data(BaseModel):
37
+ id: Optional[str] = None
38
+ """Identifies the type of resource."""
39
+
40
+ event_type: Optional[Literal["streaming.started"]] = None
41
+ """The type of event being delivered."""
42
+
43
+ occurred_at: Optional[datetime] = None
44
+ """ISO 8601 datetime of when the event occurred."""
45
+
46
+ payload: Optional[DataPayload] = None
47
+
48
+ record_type: Optional[Literal["event"]] = None
49
+ """Identifies the type of the resource."""
50
+
51
+
52
+ class CallStreamingStartedWebhookEvent(BaseModel):
53
+ data: Optional[Data] = None
@@ -0,0 +1,53 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import Optional
4
+ from datetime import datetime
5
+ from typing_extensions import Literal
6
+
7
+ from .._models import BaseModel
8
+
9
+ __all__ = ["CallStreamingStoppedWebhookEvent", "Data", "DataPayload"]
10
+
11
+
12
+ class DataPayload(BaseModel):
13
+ call_control_id: Optional[str] = None
14
+ """Call ID used to issue commands via Call Control API."""
15
+
16
+ call_leg_id: Optional[str] = None
17
+ """ID that is unique to the call and can be used to correlate webhook events."""
18
+
19
+ call_session_id: Optional[str] = None
20
+ """
21
+ ID that is unique to the call session and can be used to correlate webhook
22
+ events. Call session is a group of related call legs that logically belong to
23
+ the same phone call, e.g. an inbound and outbound leg of a transferred call.
24
+ """
25
+
26
+ client_state: Optional[str] = None
27
+ """State received from a command."""
28
+
29
+ connection_id: Optional[str] = None
30
+ """Call Control App ID (formerly Telnyx connection ID) used in the call."""
31
+
32
+ stream_url: Optional[str] = None
33
+ """Destination WebSocket address where the stream is going to be delivered."""
34
+
35
+
36
+ class Data(BaseModel):
37
+ id: Optional[str] = None
38
+ """Identifies the type of resource."""
39
+
40
+ event_type: Optional[Literal["streaming.stopped"]] = None
41
+ """The type of event being delivered."""
42
+
43
+ occurred_at: Optional[datetime] = None
44
+ """ISO 8601 datetime of when the event occurred."""
45
+
46
+ payload: Optional[DataPayload] = None
47
+
48
+ record_type: Optional[Literal["event"]] = None
49
+ """Identifies the type of the resource."""
50
+
51
+
52
+ class CallStreamingStoppedWebhookEvent(BaseModel):
53
+ data: Optional[Data] = None
@@ -124,8 +124,7 @@ class ActionAnswerParams(TypedDict, total=False):
124
124
  """Specifies the codec to be used for the streamed audio.
125
125
 
126
126
  When set to 'default' or when transcoding is not possible, the codec from the
127
- call will be used. Currently, transcoding is only supported between PCMU and
128
- PCMA codecs.
127
+ call will be used.
129
128
  """
130
129
 
131
130
  stream_track: Literal["inbound_track", "outbound_track", "both_tracks"]
@@ -67,20 +67,17 @@ class ActionGatherUsingAIParams(TypedDict, total=False):
67
67
  """Default is `false`.
68
68
 
69
69
  If set to `true`, the voice assistant will send updates to the message history
70
- via the `call.ai_gather.message_history_updated`
71
- [callback](https://developers.telnyx.com/api/call-control/call-gather-using-ai#callbacks)
72
- in real time as the message history is updated.
70
+ via the `call.ai_gather.message_history_updated` callback in real time as the
71
+ message history is updated.
73
72
  """
74
73
 
75
74
  send_partial_results: bool
76
75
  """Default is `false`.
77
76
 
78
77
  If set to `true`, the voice assistant will send partial results via the
79
- `call.ai_gather.partial_results`
80
- [callback](https://developers.telnyx.com/api/call-control/call-gather-using-ai#callbacks)
81
- in real time as individual fields are gathered. If set to `false`, the voice
82
- assistant will only send the final result via the `call.ai_gather.ended`
83
- callback.
78
+ `call.ai_gather.partial_results` callback in real time as individual fields are
79
+ gathered. If set to `false`, the voice assistant will only send the final result
80
+ via the `call.ai_gather.ended` callback.
84
81
  """
85
82
 
86
83
  transcription: TranscriptionConfigParam
@@ -41,6 +41,9 @@ class ActionStartStreamingParams(TypedDict, total=False):
41
41
  stream_bidirectional_mode: StreamBidirectionalMode
42
42
  """Configures method of bidirectional streaming (mp3, rtp)."""
43
43
 
44
+ stream_bidirectional_sampling_rate: Literal[8000, 16000, 22050, 24000, 48000]
45
+ """Audio sampling rate."""
46
+
44
47
  stream_bidirectional_target_legs: StreamBidirectionalTargetLegs
45
48
  """Specifies which call legs should receive the bidirectional stream audio."""
46
49
 
@@ -48,8 +51,7 @@ class ActionStartStreamingParams(TypedDict, total=False):
48
51
  """Specifies the codec to be used for the streamed audio.
49
52
 
50
53
  When set to 'default' or when transcoding is not possible, the codec from the
51
- call will be used. Currently, transcoding is only supported between PCMU and
52
- PCMA codecs.
54
+ call will be used.
53
55
  """
54
56
 
55
57
  stream_track: Literal["inbound_track", "outbound_track", "both_tracks"]
@@ -2,13 +2,22 @@
2
2
 
3
3
  from __future__ import annotations
4
4
 
5
- from typing import Union
6
- from typing_extensions import Literal, TypeAlias, TypedDict
5
+ from typing import Union, Iterable
6
+ from typing_extensions import Literal, Required, TypeAlias, TypedDict
7
7
 
8
+ from ..._types import SequenceNotStr
9
+ from .google_transcription_language import GoogleTranscriptionLanguage
8
10
  from .transcription_engine_a_config_param import TranscriptionEngineAConfigParam
9
11
  from .transcription_engine_b_config_param import TranscriptionEngineBConfigParam
10
12
 
11
- __all__ = ["ActionStartTranscriptionParams", "TranscriptionEngineConfig"]
13
+ __all__ = [
14
+ "ActionStartTranscriptionParams",
15
+ "TranscriptionEngineConfig",
16
+ "TranscriptionEngineConfigTranscriptionEngineGoogleConfig",
17
+ "TranscriptionEngineConfigTranscriptionEngineGoogleConfigSpeechContext",
18
+ "TranscriptionEngineConfigTranscriptionEngineTelnyxConfig",
19
+ "TranscriptionEngineConfigTranscriptionEngineDeepgramConfig",
20
+ ]
12
21
 
13
22
 
14
23
  class ActionStartTranscriptionParams(TypedDict, total=False):
@@ -25,8 +34,12 @@ class ActionStartTranscriptionParams(TypedDict, total=False):
25
34
  `call_control_id`.
26
35
  """
27
36
 
28
- transcription_engine: Literal["A", "B"]
29
- """Engine to use for speech recognition. `A` - `Google`, `B` - `Telnyx`."""
37
+ transcription_engine: Literal["Google", "Telnyx", "Deepgram", "A", "B"]
38
+ """Engine to use for speech recognition.
39
+
40
+ Legacy values `A` - `Google`, `B` - `Telnyx` are supported for backward
41
+ compatibility.
42
+ """
30
43
 
31
44
  transcription_engine_config: TranscriptionEngineConfig
32
45
 
@@ -38,4 +51,245 @@ class ActionStartTranscriptionParams(TypedDict, total=False):
38
51
  """
39
52
 
40
53
 
41
- TranscriptionEngineConfig: TypeAlias = Union[TranscriptionEngineAConfigParam, TranscriptionEngineBConfigParam]
54
+ class TranscriptionEngineConfigTranscriptionEngineGoogleConfigSpeechContext(TypedDict, total=False):
55
+ boost: float
56
+ """Boost factor for the speech context."""
57
+
58
+ phrases: SequenceNotStr[str]
59
+
60
+
61
+ class TranscriptionEngineConfigTranscriptionEngineGoogleConfig(TypedDict, total=False):
62
+ enable_speaker_diarization: bool
63
+ """Enables speaker diarization."""
64
+
65
+ hints: SequenceNotStr[str]
66
+ """Hints to improve transcription accuracy."""
67
+
68
+ interim_results: bool
69
+ """Whether to send also interim results.
70
+
71
+ If set to false, only final results will be sent.
72
+ """
73
+
74
+ language: GoogleTranscriptionLanguage
75
+ """Language to use for speech recognition"""
76
+
77
+ max_speaker_count: int
78
+ """Defines maximum number of speakers in the conversation."""
79
+
80
+ min_speaker_count: int
81
+ """Defines minimum number of speakers in the conversation."""
82
+
83
+ model: Literal[
84
+ "latest_long",
85
+ "latest_short",
86
+ "command_and_search",
87
+ "phone_call",
88
+ "video",
89
+ "default",
90
+ "medical_conversation",
91
+ "medical_dictation",
92
+ ]
93
+ """The model to use for transcription."""
94
+
95
+ profanity_filter: bool
96
+ """Enables profanity_filter."""
97
+
98
+ speech_context: Iterable[TranscriptionEngineConfigTranscriptionEngineGoogleConfigSpeechContext]
99
+ """Speech context to improve transcription accuracy."""
100
+
101
+ transcription_engine: Literal["Google"]
102
+ """Engine identifier for Google transcription service"""
103
+
104
+ use_enhanced: bool
105
+ """Enables enhanced transcription, this works for models `phone_call` and `video`."""
106
+
107
+
108
+ class TranscriptionEngineConfigTranscriptionEngineTelnyxConfig(TypedDict, total=False):
109
+ language: Literal[
110
+ "en",
111
+ "zh",
112
+ "de",
113
+ "es",
114
+ "ru",
115
+ "ko",
116
+ "fr",
117
+ "ja",
118
+ "pt",
119
+ "tr",
120
+ "pl",
121
+ "ca",
122
+ "nl",
123
+ "ar",
124
+ "sv",
125
+ "it",
126
+ "id",
127
+ "hi",
128
+ "fi",
129
+ "vi",
130
+ "he",
131
+ "uk",
132
+ "el",
133
+ "ms",
134
+ "cs",
135
+ "ro",
136
+ "da",
137
+ "hu",
138
+ "ta",
139
+ "no",
140
+ "th",
141
+ "ur",
142
+ "hr",
143
+ "bg",
144
+ "lt",
145
+ "la",
146
+ "mi",
147
+ "ml",
148
+ "cy",
149
+ "sk",
150
+ "te",
151
+ "fa",
152
+ "lv",
153
+ "bn",
154
+ "sr",
155
+ "az",
156
+ "sl",
157
+ "kn",
158
+ "et",
159
+ "mk",
160
+ "br",
161
+ "eu",
162
+ "is",
163
+ "hy",
164
+ "ne",
165
+ "mn",
166
+ "bs",
167
+ "kk",
168
+ "sq",
169
+ "sw",
170
+ "gl",
171
+ "mr",
172
+ "pa",
173
+ "si",
174
+ "km",
175
+ "sn",
176
+ "yo",
177
+ "so",
178
+ "af",
179
+ "oc",
180
+ "ka",
181
+ "be",
182
+ "tg",
183
+ "sd",
184
+ "gu",
185
+ "am",
186
+ "yi",
187
+ "lo",
188
+ "uz",
189
+ "fo",
190
+ "ht",
191
+ "ps",
192
+ "tk",
193
+ "nn",
194
+ "mt",
195
+ "sa",
196
+ "lb",
197
+ "my",
198
+ "bo",
199
+ "tl",
200
+ "mg",
201
+ "as",
202
+ "tt",
203
+ "haw",
204
+ "ln",
205
+ "ha",
206
+ "ba",
207
+ "jw",
208
+ "su",
209
+ "auto_detect",
210
+ ]
211
+ """Language to use for speech recognition"""
212
+
213
+ transcription_engine: Literal["Telnyx"]
214
+ """Engine identifier for Telnyx transcription service"""
215
+
216
+ transcription_model: Literal["openai/whisper-tiny", "openai/whisper-large-v3-turbo"]
217
+ """The model to use for transcription."""
218
+
219
+
220
+ class TranscriptionEngineConfigTranscriptionEngineDeepgramConfig(TypedDict, total=False):
221
+ transcription_engine: Required[Literal["Deepgram"]]
222
+ """Engine identifier for Deepgram transcription service"""
223
+
224
+ transcription_model: Required[Literal["deepgram/nova-2", "deepgram/nova-3"]]
225
+ """The model to use for transcription."""
226
+
227
+ language: Literal[
228
+ "bg",
229
+ "ca",
230
+ "zh",
231
+ "zh-CN",
232
+ "zh-Hans",
233
+ "zh-TW",
234
+ "zh-Hant",
235
+ "zh-HK",
236
+ "cs",
237
+ "da",
238
+ "da-DK",
239
+ "nl",
240
+ "en",
241
+ "en-US",
242
+ "en-AU",
243
+ "en-GB",
244
+ "en-NZ",
245
+ "en-IN",
246
+ "et",
247
+ "fi",
248
+ "nl-BE",
249
+ "fr",
250
+ "fr-CA",
251
+ "de",
252
+ "de-CH",
253
+ "el",
254
+ "hi",
255
+ "hu",
256
+ "id",
257
+ "it",
258
+ "ja",
259
+ "ko",
260
+ "ko-KR",
261
+ "lv",
262
+ "lt",
263
+ "ms",
264
+ "no",
265
+ "pl",
266
+ "pt",
267
+ "pt-BR",
268
+ "pt-PT",
269
+ "ro",
270
+ "ru",
271
+ "sk",
272
+ "es",
273
+ "es-419",
274
+ "sv",
275
+ "sv-SE",
276
+ "th",
277
+ "th-TH",
278
+ "tr",
279
+ "uk",
280
+ "vi",
281
+ "auto_detect",
282
+ ]
283
+ """Language to use for speech recognition.
284
+
285
+ Available languages depend on the selected model.
286
+ """
287
+
288
+
289
+ TranscriptionEngineConfig: TypeAlias = Union[
290
+ TranscriptionEngineConfigTranscriptionEngineGoogleConfig,
291
+ TranscriptionEngineConfigTranscriptionEngineTelnyxConfig,
292
+ TranscriptionEngineConfigTranscriptionEngineDeepgramConfig,
293
+ TranscriptionEngineAConfigParam,
294
+ TranscriptionEngineBConfigParam,
295
+ ]