telnyx 3.5.0a0__py3-none-any.whl → 3.6.0a0__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 (128) hide show
  1. telnyx/_client.py +53 -2
  2. telnyx/_version.py +1 -1
  3. telnyx/resources/__init__.py +70 -0
  4. telnyx/resources/ai/conversations/conversations.py +137 -3
  5. telnyx/resources/ai/conversations/messages.py +1 -134
  6. telnyx/resources/calls/actions.py +146 -146
  7. telnyx/resources/calls/calls.py +4 -10
  8. telnyx/resources/conferences/actions.py +8 -24
  9. telnyx/resources/conferences/conferences.py +2 -6
  10. telnyx/resources/legacy/__init__.py +33 -0
  11. telnyx/resources/legacy/legacy.py +102 -0
  12. telnyx/resources/legacy/reporting/__init__.py +47 -0
  13. telnyx/resources/legacy/reporting/batch_detail_records/__init__.py +61 -0
  14. telnyx/resources/legacy/reporting/batch_detail_records/batch_detail_records.py +166 -0
  15. telnyx/resources/legacy/reporting/batch_detail_records/messaging.py +481 -0
  16. telnyx/resources/legacy/reporting/batch_detail_records/speech_to_text.py +399 -0
  17. telnyx/resources/legacy/reporting/batch_detail_records/voice.py +538 -0
  18. telnyx/resources/legacy/reporting/reporting.py +134 -0
  19. telnyx/resources/legacy/reporting/usage_reports/__init__.py +61 -0
  20. telnyx/resources/legacy/reporting/usage_reports/messaging.py +471 -0
  21. telnyx/resources/legacy/reporting/usage_reports/number_lookup.py +464 -0
  22. telnyx/resources/legacy/reporting/usage_reports/usage_reports.py +288 -0
  23. telnyx/resources/legacy/reporting/usage_reports/voice.py +493 -0
  24. telnyx/resources/oauth.py +855 -0
  25. telnyx/resources/oauth_clients.py +711 -0
  26. telnyx/resources/oauth_grants.py +349 -0
  27. telnyx/resources/phone_numbers/jobs.py +12 -0
  28. telnyx/resources/porting_orders/porting_orders.py +20 -8
  29. telnyx/resources/sim_cards/sim_cards.py +3 -2
  30. telnyx/resources/verifications/verifications.py +10 -0
  31. telnyx/resources/verify_profiles.py +183 -1
  32. telnyx/resources/well_known.py +198 -0
  33. telnyx/types/__init__.py +40 -0
  34. telnyx/types/ai/__init__.py +1 -0
  35. telnyx/types/ai/{conversations/message_create_params.py → conversation_add_message_params.py} +4 -4
  36. telnyx/types/ai/conversations/__init__.py +0 -1
  37. telnyx/types/ai/inference_embedding_webhook_tool_params.py +2 -0
  38. telnyx/types/ai/inference_embedding_webhook_tool_params_param.py +2 -0
  39. telnyx/types/call_dial_params.py +2 -3
  40. telnyx/types/calls/action_answer_params.py +1 -2
  41. telnyx/types/calls/action_gather_using_ai_params.py +5 -8
  42. telnyx/types/calls/action_start_streaming_params.py +4 -2
  43. telnyx/types/calls/action_transfer_params.py +50 -0
  44. telnyx/types/campaign_submit_appeal_response.py +0 -3
  45. telnyx/types/legacy/__init__.py +3 -0
  46. telnyx/types/legacy/reporting/__init__.py +10 -0
  47. telnyx/types/legacy/reporting/batch_detail_records/__init__.py +20 -0
  48. telnyx/types/legacy/reporting/batch_detail_records/messaging_create_params.py +77 -0
  49. telnyx/types/legacy/reporting/batch_detail_records/messaging_create_response.py +68 -0
  50. telnyx/types/legacy/reporting/batch_detail_records/messaging_delete_response.py +68 -0
  51. telnyx/types/legacy/reporting/batch_detail_records/messaging_list_response.py +80 -0
  52. telnyx/types/legacy/reporting/batch_detail_records/messaging_retrieve_response.py +68 -0
  53. telnyx/types/legacy/reporting/batch_detail_records/speech_to_text_create_params.py +19 -0
  54. telnyx/types/legacy/reporting/batch_detail_records/speech_to_text_create_response.py +31 -0
  55. telnyx/types/legacy/reporting/batch_detail_records/speech_to_text_delete_response.py +31 -0
  56. telnyx/types/legacy/reporting/batch_detail_records/speech_to_text_list_response.py +31 -0
  57. telnyx/types/legacy/reporting/batch_detail_records/speech_to_text_retrieve_response.py +31 -0
  58. telnyx/types/legacy/reporting/batch_detail_records/voice_create_params.py +79 -0
  59. telnyx/types/legacy/reporting/batch_detail_records/voice_create_response.py +91 -0
  60. telnyx/types/legacy/reporting/batch_detail_records/voice_delete_response.py +91 -0
  61. telnyx/types/legacy/reporting/batch_detail_records/voice_list_response.py +102 -0
  62. telnyx/types/legacy/reporting/batch_detail_records/voice_retrieve_fields_response.py +23 -0
  63. telnyx/types/legacy/reporting/batch_detail_records/voice_retrieve_response.py +91 -0
  64. telnyx/types/legacy/reporting/usage_report_retrieve_speech_to_text_params.py +17 -0
  65. telnyx/types/legacy/reporting/usage_report_retrieve_speech_to_text_response.py +11 -0
  66. telnyx/types/legacy/reporting/usage_reports/__init__.py +18 -0
  67. telnyx/types/legacy/reporting/usage_reports/messaging_create_params.py +29 -0
  68. telnyx/types/legacy/reporting/usage_reports/messaging_create_response.py +43 -0
  69. telnyx/types/legacy/reporting/usage_reports/messaging_delete_response.py +43 -0
  70. telnyx/types/legacy/reporting/usage_reports/messaging_list_params.py +15 -0
  71. telnyx/types/legacy/reporting/usage_reports/messaging_list_response.py +54 -0
  72. telnyx/types/legacy/reporting/usage_reports/messaging_retrieve_response.py +43 -0
  73. telnyx/types/legacy/reporting/usage_reports/number_lookup_create_params.py +26 -0
  74. telnyx/types/legacy/reporting/usage_reports/number_lookup_list_params.py +13 -0
  75. telnyx/types/legacy/reporting/usage_reports/voice_create_params.py +40 -0
  76. telnyx/types/legacy/reporting/usage_reports/voice_create_response.py +48 -0
  77. telnyx/types/legacy/reporting/usage_reports/voice_delete_response.py +48 -0
  78. telnyx/types/legacy/reporting/usage_reports/voice_list_params.py +15 -0
  79. telnyx/types/legacy/reporting/usage_reports/voice_list_response.py +59 -0
  80. telnyx/types/legacy/reporting/usage_reports/voice_retrieve_response.py +48 -0
  81. telnyx/types/number_order_status_update_webhook_event.py +30 -4
  82. telnyx/types/oauth_client_create_params.py +39 -0
  83. telnyx/types/oauth_client_create_response.py +63 -0
  84. telnyx/types/oauth_client_list_params.py +38 -0
  85. telnyx/types/oauth_client_list_response.py +79 -0
  86. telnyx/types/oauth_client_retrieve_response.py +63 -0
  87. telnyx/types/oauth_client_update_params.py +36 -0
  88. telnyx/types/oauth_client_update_response.py +63 -0
  89. telnyx/types/oauth_grant_delete_response.py +33 -0
  90. telnyx/types/oauth_grant_list_params.py +17 -0
  91. telnyx/types/oauth_grant_list_response.py +49 -0
  92. telnyx/types/oauth_grant_retrieve_response.py +33 -0
  93. telnyx/types/oauth_grants_params.py +15 -0
  94. telnyx/types/oauth_grants_response.py +10 -0
  95. telnyx/types/oauth_introspect_params.py +12 -0
  96. telnyx/types/oauth_introspect_response.py +30 -0
  97. telnyx/types/oauth_register_params.py +39 -0
  98. telnyx/types/oauth_register_response.py +45 -0
  99. telnyx/types/oauth_retrieve_authorize_params.py +30 -0
  100. telnyx/types/oauth_retrieve_jwks_response.py +25 -0
  101. telnyx/types/oauth_retrieve_response.py +47 -0
  102. telnyx/types/oauth_token_params.py +33 -0
  103. telnyx/types/oauth_token_response.py +25 -0
  104. telnyx/types/phone_number_delete_response.py +7 -0
  105. telnyx/types/phone_number_detailed.py +7 -0
  106. telnyx/types/phone_number_list_params.py +6 -0
  107. telnyx/types/phone_numbers/job_update_batch_params.py +7 -0
  108. telnyx/types/porting_order.py +3 -0
  109. telnyx/types/porting_order_create_params.py +3 -0
  110. telnyx/types/porting_order_list_params.py +52 -31
  111. telnyx/types/porting_order_update_params.py +2 -0
  112. telnyx/types/porting_orders/phone_number_configuration_list_params.py +19 -19
  113. telnyx/types/shared/simple_sim_card.py +15 -0
  114. telnyx/types/sim_card.py +12 -0
  115. telnyx/types/sim_card_update_params.py +2 -1
  116. telnyx/types/stream_bidirectional_codec.py +1 -1
  117. telnyx/types/stream_codec.py +1 -1
  118. telnyx/types/verification_trigger_call_params.py +7 -0
  119. telnyx/types/verify_profile_create_template_params.py +12 -0
  120. telnyx/types/verify_profile_create_template_response.py +17 -0
  121. telnyx/types/verify_profile_update_template_params.py +12 -0
  122. telnyx/types/verify_profile_update_template_response.py +17 -0
  123. telnyx/types/well_known_retrieve_authorization_server_metadata_response.py +42 -0
  124. telnyx/types/well_known_retrieve_protected_resource_metadata_response.py +15 -0
  125. {telnyx-3.5.0a0.dist-info → telnyx-3.6.0a0.dist-info}/METADATA +1 -1
  126. {telnyx-3.5.0a0.dist-info → telnyx-3.6.0a0.dist-info}/RECORD +128 -46
  127. {telnyx-3.5.0a0.dist-info → telnyx-3.6.0a0.dist-info}/WHEEL +0 -0
  128. {telnyx-3.5.0a0.dist-info → telnyx-3.6.0a0.dist-info}/licenses/LICENSE +0 -0
@@ -179,9 +179,7 @@ class ActionsResource(SyncAPIResource):
179
179
  You must issue this command before executing subsequent
180
180
  commands on an incoming call.
181
181
 
182
- **Expected Webhooks (see
183
- [callback schema](https://developers.telnyx.com/api/call-control/answer-call#callbacks)
184
- below):**
182
+ **Expected Webhooks:**
185
183
 
186
184
  - `call.answered`
187
185
  - `streaming.started`, `streaming.stopped` or `streaming.failed` if `stream_url`
@@ -248,7 +246,6 @@ class ActionsResource(SyncAPIResource):
248
246
 
249
247
  stream_codec: Specifies the codec to be used for the streamed audio. When set to 'default' or
250
248
  when transcoding is not possible, the codec from the call will be used.
251
- Currently, transcoding is only supported between PCMU and PCMA codecs.
252
249
 
253
250
  stream_track: Specifies which track should be streamed.
254
251
 
@@ -384,9 +381,7 @@ class ActionsResource(SyncAPIResource):
384
381
  """
385
382
  Bridge two call control calls.
386
383
 
387
- **Expected Webhooks (see
388
- [callback schema](https://developers.telnyx.com/api/call-control/bridge-call#callbacks)
389
- below):**
384
+ **Expected Webhooks:**
390
385
 
391
386
  - `call.bridged` for Leg A
392
387
  - `call.bridged` for Leg B
@@ -587,9 +582,7 @@ class ActionsResource(SyncAPIResource):
587
582
  You can pass a list of valid digits. The `Answer` command must be issued before
588
583
  the `gather` command.
589
584
 
590
- **Expected Webhooks (see
591
- [callback schema](https://developers.telnyx.com/api/call-control/gather-call#callbacks)
592
- below):**
585
+ **Expected Webhooks:**
593
586
 
594
587
  - `call.dtmf.received` (you may receive many of these webhooks)
595
588
  - `call.gather.ended`
@@ -684,9 +677,7 @@ class ActionsResource(SyncAPIResource):
684
677
  You can pass parameters described as a JSON Schema object and the voice
685
678
  assistant will attempt to gather these informations.
686
679
 
687
- **Expected Webhooks (see
688
- [callback schema](https://developers.telnyx.com/api/call-control/call-gather-using-ai#callbacks)
689
- below):**
680
+ **Expected Webhooks:**
690
681
 
691
682
  - `call.ai_gather.ended`
692
683
  - `call.conversation.ended`
@@ -721,16 +712,13 @@ class ActionsResource(SyncAPIResource):
721
712
  information to the voice assistant.
722
713
 
723
714
  send_message_history_updates: Default is `false`. If set to `true`, the voice assistant will send updates to
724
- the message history via the `call.ai_gather.message_history_updated`
725
- [callback](https://developers.telnyx.com/api/call-control/call-gather-using-ai#callbacks)
726
- in real time as the message history is updated.
715
+ the message history via the `call.ai_gather.message_history_updated` callback in
716
+ real time as the message history is updated.
727
717
 
728
718
  send_partial_results: Default is `false`. If set to `true`, the voice assistant will send partial
729
- results via the `call.ai_gather.partial_results`
730
- [callback](https://developers.telnyx.com/api/call-control/call-gather-using-ai#callbacks)
731
- in real time as individual fields are gathered. If set to `false`, the voice
732
- assistant will only send the final result via the `call.ai_gather.ended`
733
- callback.
719
+ results via the `call.ai_gather.partial_results` callback in real time as
720
+ individual fields are gathered. If set to `false`, the voice assistant will only
721
+ send the final result via the `call.ai_gather.ended` callback.
734
722
 
735
723
  transcription: The settings associated with speech to text for the voice assistant. This is
736
724
  only relevant if the assistant uses a text-to-text language model. Any assistant
@@ -835,9 +823,7 @@ class ActionsResource(SyncAPIResource):
835
823
  interrupted when a DTMF signal is received. The
836
824
  `Answer command must be issued before the `gather_using_audio` command.
837
825
 
838
- **Expected Webhooks (see
839
- [callback schema](https://developers.telnyx.com/api/call-control/gather-using-audio#callbacks)
840
- below):**
826
+ **Expected Webhooks:**
841
827
 
842
828
  - `call.playback.started`
843
829
  - `call.playback.ended`
@@ -991,9 +977,7 @@ class ActionsResource(SyncAPIResource):
991
977
  a DTMF signal is received. The `Answer` command must be issued before the
992
978
  `gather_using_speak` command.
993
979
 
994
- **Expected Webhooks (see
995
- [callback schema](https://developers.telnyx.com/api/call-control/gather-using-speak#callbacks)
996
- below):**
980
+ **Expected Webhooks:**
997
981
 
998
982
  - `call.dtmf.received` (you may receive many of these webhooks)
999
983
  - `call.gather.ended`
@@ -1124,9 +1108,7 @@ class ActionsResource(SyncAPIResource):
1124
1108
  """
1125
1109
  Hang up the call.
1126
1110
 
1127
- **Expected Webhooks (see
1128
- [callback schema](https://developers.telnyx.com/api/call-control/hangup-call#callbacks)
1129
- below):**
1111
+ **Expected Webhooks:**
1130
1112
 
1131
1113
  - `call.hangup`
1132
1114
  - `call.recording.saved`
@@ -1291,9 +1273,7 @@ class ActionsResource(SyncAPIResource):
1291
1273
  You can initiate a SIP Refer at any
1292
1274
  point in the duration of a call.
1293
1275
 
1294
- **Expected Webhooks (see
1295
- [callback schema](https://developers.telnyx.com/api/call-control/refer-call#callbacks)
1296
- below):**
1276
+ **Expected Webhooks:**
1297
1277
 
1298
1278
  - `call.refer.started`
1299
1279
  - `call.refer.completed`
@@ -1365,9 +1345,7 @@ class ActionsResource(SyncAPIResource):
1365
1345
  """
1366
1346
  Reject an incoming call.
1367
1347
 
1368
- **Expected Webhooks (see
1369
- [callback schema](https://developers.telnyx.com/api/call-control/reject-call#callbacks)
1370
- below):**
1348
+ **Expected Webhooks:**
1371
1349
 
1372
1350
  - `call.hangup`
1373
1351
 
@@ -1644,9 +1622,7 @@ class ActionsResource(SyncAPIResource):
1644
1622
  commands are issued consecutively, the audio files will be placed in a queue
1645
1623
  awaiting playback.
1646
1624
 
1647
- **Expected Webhooks (see
1648
- [callback schema](https://developers.telnyx.com/api/call-control/speak-call#callbacks)
1649
- below):**
1625
+ **Expected Webhooks:**
1650
1626
 
1651
1627
  - `call.speak.started`
1652
1628
  - `call.speak.ended`
@@ -1759,9 +1735,7 @@ class ActionsResource(SyncAPIResource):
1759
1735
  """
1760
1736
  Start an AI assistant on the call.
1761
1737
 
1762
- **Expected Webhooks (see
1763
- [callback schema](https://developers.telnyx.com/api/call-control/call-start-ai-assistant#callbacks)
1764
- below):**
1738
+ **Expected Webhooks:**
1765
1739
 
1766
1740
  - `call.conversation.ended`
1767
1741
  - `call.conversation_insights.generated`
@@ -1865,9 +1839,7 @@ class ActionsResource(SyncAPIResource):
1865
1839
  audio responses. Requests must specify either the `target` attribute or the `rx`
1866
1840
  and `tx` attributes.
1867
1841
 
1868
- **Expected Webhooks (see
1869
- [callback schema](https://developers.telnyx.com/api/call-control/start-call-fork#callbacks)
1870
- below):**
1842
+ **Expected Webhooks:**
1871
1843
 
1872
1844
  - `call.fork.started`
1873
1845
  - `call.fork.stopped`
@@ -2007,9 +1979,7 @@ class ActionsResource(SyncAPIResource):
2007
1979
  - A customer cannot Play Audio with `overlay=true` unless there is a Play Audio
2008
1980
  with `overlay=false` actively playing.
2009
1981
 
2010
- **Expected Webhooks (see
2011
- [callback schema](https://developers.telnyx.com/api/call-control/start-call-playback#callbacks)
2012
- below):**
1982
+ **Expected Webhooks:**
2013
1983
 
2014
1984
  - `call.playback.started`
2015
1985
  - `call.playback.ended`
@@ -2268,9 +2238,7 @@ class ActionsResource(SyncAPIResource):
2268
2238
  Recording will stop on call hang-up, or can be
2269
2239
  initiated via the Stop Recording command.
2270
2240
 
2271
- **Expected Webhooks (see
2272
- [callback schema](https://developers.telnyx.com/api/call-control/start-call-record#callbacks)
2273
- below):**
2241
+ **Expected Webhooks:**
2274
2242
 
2275
2243
  - `call.recording.saved`
2276
2244
  - `call.recording.transcription.saved`
@@ -2453,6 +2421,7 @@ class ActionsResource(SyncAPIResource):
2453
2421
  enable_dialogflow: bool | Omit = omit,
2454
2422
  stream_bidirectional_codec: StreamBidirectionalCodec | Omit = omit,
2455
2423
  stream_bidirectional_mode: StreamBidirectionalMode | Omit = omit,
2424
+ stream_bidirectional_sampling_rate: Literal[8000, 16000, 22050, 24000, 48000] | Omit = omit,
2456
2425
  stream_bidirectional_target_legs: StreamBidirectionalTargetLegs | Omit = omit,
2457
2426
  stream_codec: StreamCodec | Omit = omit,
2458
2427
  stream_track: Literal["inbound_track", "outbound_track", "both_tracks"] | Omit = omit,
@@ -2486,11 +2455,12 @@ class ActionsResource(SyncAPIResource):
2486
2455
 
2487
2456
  stream_bidirectional_mode: Configures method of bidirectional streaming (mp3, rtp).
2488
2457
 
2458
+ stream_bidirectional_sampling_rate: Audio sampling rate.
2459
+
2489
2460
  stream_bidirectional_target_legs: Specifies which call legs should receive the bidirectional stream audio.
2490
2461
 
2491
2462
  stream_codec: Specifies the codec to be used for the streamed audio. When set to 'default' or
2492
2463
  when transcoding is not possible, the codec from the call will be used.
2493
- Currently, transcoding is only supported between PCMU and PCMA codecs.
2494
2464
 
2495
2465
  stream_track: Specifies which track should be streamed.
2496
2466
 
@@ -2516,6 +2486,7 @@ class ActionsResource(SyncAPIResource):
2516
2486
  "enable_dialogflow": enable_dialogflow,
2517
2487
  "stream_bidirectional_codec": stream_bidirectional_codec,
2518
2488
  "stream_bidirectional_mode": stream_bidirectional_mode,
2489
+ "stream_bidirectional_sampling_rate": stream_bidirectional_sampling_rate,
2519
2490
  "stream_bidirectional_target_legs": stream_bidirectional_target_legs,
2520
2491
  "stream_codec": stream_codec,
2521
2492
  "stream_track": stream_track,
@@ -2550,9 +2521,7 @@ class ActionsResource(SyncAPIResource):
2550
2521
  Transcription will stop on call hang-up, or can
2551
2522
  be initiated via the Transcription stop command.
2552
2523
 
2553
- **Expected Webhooks (see
2554
- [callback schema](https://developers.telnyx.com/api/call-control/start-call-transcription#callbacks)
2555
- below):**
2524
+ **Expected Webhooks:**
2556
2525
 
2557
2526
  - `call.transcription`
2558
2527
 
@@ -2662,9 +2631,7 @@ class ActionsResource(SyncAPIResource):
2662
2631
  """
2663
2632
  Stop forking a call.
2664
2633
 
2665
- **Expected Webhooks (see
2666
- [callback schema](https://developers.telnyx.com/api/call-control/stop-call-fork#callbacks)
2667
- below):**
2634
+ **Expected Webhooks:**
2668
2635
 
2669
2636
  - `call.fork.stopped`
2670
2637
 
@@ -2720,9 +2687,7 @@ class ActionsResource(SyncAPIResource):
2720
2687
  """
2721
2688
  Stop current gather.
2722
2689
 
2723
- **Expected Webhooks (see
2724
- [callback schema](https://developers.telnyx.com/api/call-control/stop-call-gather#callbacks)
2725
- below):**
2690
+ **Expected Webhooks:**
2726
2691
 
2727
2692
  - `call.gather.ended`
2728
2693
 
@@ -2824,9 +2789,7 @@ class ActionsResource(SyncAPIResource):
2824
2789
  """
2825
2790
  Stop audio being played on the call.
2826
2791
 
2827
- **Expected Webhooks (see
2828
- [callback schema](https://developers.telnyx.com/api/call-control/stop-call-playback#callbacks)
2829
- below):**
2792
+ **Expected Webhooks:**
2830
2793
 
2831
2794
  - `call.playback.ended` or `call.speak.ended`
2832
2795
 
@@ -2886,9 +2849,7 @@ class ActionsResource(SyncAPIResource):
2886
2849
  """
2887
2850
  Stop recording the call.
2888
2851
 
2889
- **Expected Webhooks (see
2890
- [callback schema](https://developers.telnyx.com/api/call-control/stop-call-recording#callbacks)
2891
- below):**
2852
+ **Expected Webhooks:**
2892
2853
 
2893
2854
  - `call.recording.saved`
2894
2855
 
@@ -2996,9 +2957,7 @@ class ActionsResource(SyncAPIResource):
2996
2957
  """
2997
2958
  Stop streaming a call to a WebSocket.
2998
2959
 
2999
- **Expected Webhooks (see
3000
- [callback schema](https://developers.telnyx.com/api/call-control/stop-call-streaming#callbacks)
3001
- below):**
2960
+ **Expected Webhooks:**
3002
2961
 
3003
2962
  - `streaming.stopped`
3004
2963
 
@@ -3147,6 +3106,14 @@ class ActionsResource(SyncAPIResource):
3147
3106
  media_name: str | Omit = omit,
3148
3107
  mute_dtmf: Literal["none", "both", "self", "opposite"] | Omit = omit,
3149
3108
  park_after_unbridge: str | Omit = omit,
3109
+ record: Literal["record-from-answer"] | Omit = omit,
3110
+ record_channels: Literal["single", "dual"] | Omit = omit,
3111
+ record_custom_file_name: str | Omit = omit,
3112
+ record_format: Literal["wav", "mp3"] | Omit = omit,
3113
+ record_max_length: int | Omit = omit,
3114
+ record_timeout_secs: int | Omit = omit,
3115
+ record_track: Literal["both", "inbound", "outbound"] | Omit = omit,
3116
+ record_trim: Literal["trim-silence"] | Omit = omit,
3150
3117
  sip_auth_password: str | Omit = omit,
3151
3118
  sip_auth_username: str | Omit = omit,
3152
3119
  sip_headers: Iterable[SipHeaderParam] | Omit = omit,
@@ -3172,9 +3139,7 @@ class ActionsResource(SyncAPIResource):
3172
3139
  may be issued additional commands, potentially transfering the call to an
3173
3140
  alternate destination.
3174
3141
 
3175
- **Expected Webhooks (see
3176
- [callback schema](https://developers.telnyx.com/api/call-control/transfer-call#callbacks)
3177
- below):**
3142
+ **Expected Webhooks:**
3178
3143
 
3179
3144
  - `call.initiated`
3180
3145
  - `call.bridged` to Leg B
@@ -3239,6 +3204,33 @@ class ActionsResource(SyncAPIResource):
3239
3204
  or is transferred). If supplied with the value `self`, the current leg will be
3240
3205
  parked after unbridge. If not set, the default behavior is to hang up the leg.
3241
3206
 
3207
+ record: Start recording automatically after an event. Disabled by default.
3208
+
3209
+ record_channels: Defines which channel should be recorded ('single' or 'dual') when `record` is
3210
+ specified.
3211
+
3212
+ record_custom_file_name: The custom recording file name to be used instead of the default `call_leg_id`.
3213
+ Telnyx will still add a Unix timestamp suffix.
3214
+
3215
+ record_format: Defines the format of the recording ('wav' or 'mp3') when `record` is specified.
3216
+
3217
+ record_max_length: Defines the maximum length for the recording in seconds when `record` is
3218
+ specified. The minimum value is 0. The maximum value is 43200. The default value
3219
+ is 0 (infinite).
3220
+
3221
+ record_timeout_secs: The number of seconds that Telnyx will wait for the recording to be stopped if
3222
+ silence is detected when `record` is specified. The timer only starts when the
3223
+ speech is detected. Please note that call transcription is used to detect
3224
+ silence and the related charge will be applied. The minimum value is 0. The
3225
+ default value is 0 (infinite).
3226
+
3227
+ record_track: The audio track to be recorded. Can be either `both`, `inbound` or `outbound`.
3228
+ If only single track is specified (`inbound`, `outbound`), `channels`
3229
+ configuration is ignored and it will be recorded as mono (single channel).
3230
+
3231
+ record_trim: When set to `trim-silence`, silence will be removed from the beginning and end
3232
+ of the recording.
3233
+
3242
3234
  sip_auth_password: SIP Authentication password used for SIP challenges.
3243
3235
 
3244
3236
  sip_auth_username: SIP Authentication username used for SIP challenges.
@@ -3299,6 +3291,14 @@ class ActionsResource(SyncAPIResource):
3299
3291
  "media_name": media_name,
3300
3292
  "mute_dtmf": mute_dtmf,
3301
3293
  "park_after_unbridge": park_after_unbridge,
3294
+ "record": record,
3295
+ "record_channels": record_channels,
3296
+ "record_custom_file_name": record_custom_file_name,
3297
+ "record_format": record_format,
3298
+ "record_max_length": record_max_length,
3299
+ "record_timeout_secs": record_timeout_secs,
3300
+ "record_track": record_track,
3301
+ "record_trim": record_trim,
3302
3302
  "sip_auth_password": sip_auth_password,
3303
3303
  "sip_auth_username": sip_auth_username,
3304
3304
  "sip_headers": sip_headers,
@@ -3421,9 +3421,7 @@ class AsyncActionsResource(AsyncAPIResource):
3421
3421
  You must issue this command before executing subsequent
3422
3422
  commands on an incoming call.
3423
3423
 
3424
- **Expected Webhooks (see
3425
- [callback schema](https://developers.telnyx.com/api/call-control/answer-call#callbacks)
3426
- below):**
3424
+ **Expected Webhooks:**
3427
3425
 
3428
3426
  - `call.answered`
3429
3427
  - `streaming.started`, `streaming.stopped` or `streaming.failed` if `stream_url`
@@ -3490,7 +3488,6 @@ class AsyncActionsResource(AsyncAPIResource):
3490
3488
 
3491
3489
  stream_codec: Specifies the codec to be used for the streamed audio. When set to 'default' or
3492
3490
  when transcoding is not possible, the codec from the call will be used.
3493
- Currently, transcoding is only supported between PCMU and PCMA codecs.
3494
3491
 
3495
3492
  stream_track: Specifies which track should be streamed.
3496
3493
 
@@ -3626,9 +3623,7 @@ class AsyncActionsResource(AsyncAPIResource):
3626
3623
  """
3627
3624
  Bridge two call control calls.
3628
3625
 
3629
- **Expected Webhooks (see
3630
- [callback schema](https://developers.telnyx.com/api/call-control/bridge-call#callbacks)
3631
- below):**
3626
+ **Expected Webhooks:**
3632
3627
 
3633
3628
  - `call.bridged` for Leg A
3634
3629
  - `call.bridged` for Leg B
@@ -3829,9 +3824,7 @@ class AsyncActionsResource(AsyncAPIResource):
3829
3824
  You can pass a list of valid digits. The `Answer` command must be issued before
3830
3825
  the `gather` command.
3831
3826
 
3832
- **Expected Webhooks (see
3833
- [callback schema](https://developers.telnyx.com/api/call-control/gather-call#callbacks)
3834
- below):**
3827
+ **Expected Webhooks:**
3835
3828
 
3836
3829
  - `call.dtmf.received` (you may receive many of these webhooks)
3837
3830
  - `call.gather.ended`
@@ -3926,9 +3919,7 @@ class AsyncActionsResource(AsyncAPIResource):
3926
3919
  You can pass parameters described as a JSON Schema object and the voice
3927
3920
  assistant will attempt to gather these informations.
3928
3921
 
3929
- **Expected Webhooks (see
3930
- [callback schema](https://developers.telnyx.com/api/call-control/call-gather-using-ai#callbacks)
3931
- below):**
3922
+ **Expected Webhooks:**
3932
3923
 
3933
3924
  - `call.ai_gather.ended`
3934
3925
  - `call.conversation.ended`
@@ -3963,16 +3954,13 @@ class AsyncActionsResource(AsyncAPIResource):
3963
3954
  information to the voice assistant.
3964
3955
 
3965
3956
  send_message_history_updates: Default is `false`. If set to `true`, the voice assistant will send updates to
3966
- the message history via the `call.ai_gather.message_history_updated`
3967
- [callback](https://developers.telnyx.com/api/call-control/call-gather-using-ai#callbacks)
3968
- in real time as the message history is updated.
3957
+ the message history via the `call.ai_gather.message_history_updated` callback in
3958
+ real time as the message history is updated.
3969
3959
 
3970
3960
  send_partial_results: Default is `false`. If set to `true`, the voice assistant will send partial
3971
- results via the `call.ai_gather.partial_results`
3972
- [callback](https://developers.telnyx.com/api/call-control/call-gather-using-ai#callbacks)
3973
- in real time as individual fields are gathered. If set to `false`, the voice
3974
- assistant will only send the final result via the `call.ai_gather.ended`
3975
- callback.
3961
+ results via the `call.ai_gather.partial_results` callback in real time as
3962
+ individual fields are gathered. If set to `false`, the voice assistant will only
3963
+ send the final result via the `call.ai_gather.ended` callback.
3976
3964
 
3977
3965
  transcription: The settings associated with speech to text for the voice assistant. This is
3978
3966
  only relevant if the assistant uses a text-to-text language model. Any assistant
@@ -4077,9 +4065,7 @@ class AsyncActionsResource(AsyncAPIResource):
4077
4065
  interrupted when a DTMF signal is received. The
4078
4066
  `Answer command must be issued before the `gather_using_audio` command.
4079
4067
 
4080
- **Expected Webhooks (see
4081
- [callback schema](https://developers.telnyx.com/api/call-control/gather-using-audio#callbacks)
4082
- below):**
4068
+ **Expected Webhooks:**
4083
4069
 
4084
4070
  - `call.playback.started`
4085
4071
  - `call.playback.ended`
@@ -4233,9 +4219,7 @@ class AsyncActionsResource(AsyncAPIResource):
4233
4219
  a DTMF signal is received. The `Answer` command must be issued before the
4234
4220
  `gather_using_speak` command.
4235
4221
 
4236
- **Expected Webhooks (see
4237
- [callback schema](https://developers.telnyx.com/api/call-control/gather-using-speak#callbacks)
4238
- below):**
4222
+ **Expected Webhooks:**
4239
4223
 
4240
4224
  - `call.dtmf.received` (you may receive many of these webhooks)
4241
4225
  - `call.gather.ended`
@@ -4366,9 +4350,7 @@ class AsyncActionsResource(AsyncAPIResource):
4366
4350
  """
4367
4351
  Hang up the call.
4368
4352
 
4369
- **Expected Webhooks (see
4370
- [callback schema](https://developers.telnyx.com/api/call-control/hangup-call#callbacks)
4371
- below):**
4353
+ **Expected Webhooks:**
4372
4354
 
4373
4355
  - `call.hangup`
4374
4356
  - `call.recording.saved`
@@ -4533,9 +4515,7 @@ class AsyncActionsResource(AsyncAPIResource):
4533
4515
  You can initiate a SIP Refer at any
4534
4516
  point in the duration of a call.
4535
4517
 
4536
- **Expected Webhooks (see
4537
- [callback schema](https://developers.telnyx.com/api/call-control/refer-call#callbacks)
4538
- below):**
4518
+ **Expected Webhooks:**
4539
4519
 
4540
4520
  - `call.refer.started`
4541
4521
  - `call.refer.completed`
@@ -4607,9 +4587,7 @@ class AsyncActionsResource(AsyncAPIResource):
4607
4587
  """
4608
4588
  Reject an incoming call.
4609
4589
 
4610
- **Expected Webhooks (see
4611
- [callback schema](https://developers.telnyx.com/api/call-control/reject-call#callbacks)
4612
- below):**
4590
+ **Expected Webhooks:**
4613
4591
 
4614
4592
  - `call.hangup`
4615
4593
 
@@ -4886,9 +4864,7 @@ class AsyncActionsResource(AsyncAPIResource):
4886
4864
  commands are issued consecutively, the audio files will be placed in a queue
4887
4865
  awaiting playback.
4888
4866
 
4889
- **Expected Webhooks (see
4890
- [callback schema](https://developers.telnyx.com/api/call-control/speak-call#callbacks)
4891
- below):**
4867
+ **Expected Webhooks:**
4892
4868
 
4893
4869
  - `call.speak.started`
4894
4870
  - `call.speak.ended`
@@ -5001,9 +4977,7 @@ class AsyncActionsResource(AsyncAPIResource):
5001
4977
  """
5002
4978
  Start an AI assistant on the call.
5003
4979
 
5004
- **Expected Webhooks (see
5005
- [callback schema](https://developers.telnyx.com/api/call-control/call-start-ai-assistant#callbacks)
5006
- below):**
4980
+ **Expected Webhooks:**
5007
4981
 
5008
4982
  - `call.conversation.ended`
5009
4983
  - `call.conversation_insights.generated`
@@ -5107,9 +5081,7 @@ class AsyncActionsResource(AsyncAPIResource):
5107
5081
  audio responses. Requests must specify either the `target` attribute or the `rx`
5108
5082
  and `tx` attributes.
5109
5083
 
5110
- **Expected Webhooks (see
5111
- [callback schema](https://developers.telnyx.com/api/call-control/start-call-fork#callbacks)
5112
- below):**
5084
+ **Expected Webhooks:**
5113
5085
 
5114
5086
  - `call.fork.started`
5115
5087
  - `call.fork.stopped`
@@ -5249,9 +5221,7 @@ class AsyncActionsResource(AsyncAPIResource):
5249
5221
  - A customer cannot Play Audio with `overlay=true` unless there is a Play Audio
5250
5222
  with `overlay=false` actively playing.
5251
5223
 
5252
- **Expected Webhooks (see
5253
- [callback schema](https://developers.telnyx.com/api/call-control/start-call-playback#callbacks)
5254
- below):**
5224
+ **Expected Webhooks:**
5255
5225
 
5256
5226
  - `call.playback.started`
5257
5227
  - `call.playback.ended`
@@ -5510,9 +5480,7 @@ class AsyncActionsResource(AsyncAPIResource):
5510
5480
  Recording will stop on call hang-up, or can be
5511
5481
  initiated via the Stop Recording command.
5512
5482
 
5513
- **Expected Webhooks (see
5514
- [callback schema](https://developers.telnyx.com/api/call-control/start-call-record#callbacks)
5515
- below):**
5483
+ **Expected Webhooks:**
5516
5484
 
5517
5485
  - `call.recording.saved`
5518
5486
  - `call.recording.transcription.saved`
@@ -5695,6 +5663,7 @@ class AsyncActionsResource(AsyncAPIResource):
5695
5663
  enable_dialogflow: bool | Omit = omit,
5696
5664
  stream_bidirectional_codec: StreamBidirectionalCodec | Omit = omit,
5697
5665
  stream_bidirectional_mode: StreamBidirectionalMode | Omit = omit,
5666
+ stream_bidirectional_sampling_rate: Literal[8000, 16000, 22050, 24000, 48000] | Omit = omit,
5698
5667
  stream_bidirectional_target_legs: StreamBidirectionalTargetLegs | Omit = omit,
5699
5668
  stream_codec: StreamCodec | Omit = omit,
5700
5669
  stream_track: Literal["inbound_track", "outbound_track", "both_tracks"] | Omit = omit,
@@ -5728,11 +5697,12 @@ class AsyncActionsResource(AsyncAPIResource):
5728
5697
 
5729
5698
  stream_bidirectional_mode: Configures method of bidirectional streaming (mp3, rtp).
5730
5699
 
5700
+ stream_bidirectional_sampling_rate: Audio sampling rate.
5701
+
5731
5702
  stream_bidirectional_target_legs: Specifies which call legs should receive the bidirectional stream audio.
5732
5703
 
5733
5704
  stream_codec: Specifies the codec to be used for the streamed audio. When set to 'default' or
5734
5705
  when transcoding is not possible, the codec from the call will be used.
5735
- Currently, transcoding is only supported between PCMU and PCMA codecs.
5736
5706
 
5737
5707
  stream_track: Specifies which track should be streamed.
5738
5708
 
@@ -5758,6 +5728,7 @@ class AsyncActionsResource(AsyncAPIResource):
5758
5728
  "enable_dialogflow": enable_dialogflow,
5759
5729
  "stream_bidirectional_codec": stream_bidirectional_codec,
5760
5730
  "stream_bidirectional_mode": stream_bidirectional_mode,
5731
+ "stream_bidirectional_sampling_rate": stream_bidirectional_sampling_rate,
5761
5732
  "stream_bidirectional_target_legs": stream_bidirectional_target_legs,
5762
5733
  "stream_codec": stream_codec,
5763
5734
  "stream_track": stream_track,
@@ -5792,9 +5763,7 @@ class AsyncActionsResource(AsyncAPIResource):
5792
5763
  Transcription will stop on call hang-up, or can
5793
5764
  be initiated via the Transcription stop command.
5794
5765
 
5795
- **Expected Webhooks (see
5796
- [callback schema](https://developers.telnyx.com/api/call-control/start-call-transcription#callbacks)
5797
- below):**
5766
+ **Expected Webhooks:**
5798
5767
 
5799
5768
  - `call.transcription`
5800
5769
 
@@ -5904,9 +5873,7 @@ class AsyncActionsResource(AsyncAPIResource):
5904
5873
  """
5905
5874
  Stop forking a call.
5906
5875
 
5907
- **Expected Webhooks (see
5908
- [callback schema](https://developers.telnyx.com/api/call-control/stop-call-fork#callbacks)
5909
- below):**
5876
+ **Expected Webhooks:**
5910
5877
 
5911
5878
  - `call.fork.stopped`
5912
5879
 
@@ -5962,9 +5929,7 @@ class AsyncActionsResource(AsyncAPIResource):
5962
5929
  """
5963
5930
  Stop current gather.
5964
5931
 
5965
- **Expected Webhooks (see
5966
- [callback schema](https://developers.telnyx.com/api/call-control/stop-call-gather#callbacks)
5967
- below):**
5932
+ **Expected Webhooks:**
5968
5933
 
5969
5934
  - `call.gather.ended`
5970
5935
 
@@ -6066,9 +6031,7 @@ class AsyncActionsResource(AsyncAPIResource):
6066
6031
  """
6067
6032
  Stop audio being played on the call.
6068
6033
 
6069
- **Expected Webhooks (see
6070
- [callback schema](https://developers.telnyx.com/api/call-control/stop-call-playback#callbacks)
6071
- below):**
6034
+ **Expected Webhooks:**
6072
6035
 
6073
6036
  - `call.playback.ended` or `call.speak.ended`
6074
6037
 
@@ -6128,9 +6091,7 @@ class AsyncActionsResource(AsyncAPIResource):
6128
6091
  """
6129
6092
  Stop recording the call.
6130
6093
 
6131
- **Expected Webhooks (see
6132
- [callback schema](https://developers.telnyx.com/api/call-control/stop-call-recording#callbacks)
6133
- below):**
6094
+ **Expected Webhooks:**
6134
6095
 
6135
6096
  - `call.recording.saved`
6136
6097
 
@@ -6238,9 +6199,7 @@ class AsyncActionsResource(AsyncAPIResource):
6238
6199
  """
6239
6200
  Stop streaming a call to a WebSocket.
6240
6201
 
6241
- **Expected Webhooks (see
6242
- [callback schema](https://developers.telnyx.com/api/call-control/stop-call-streaming#callbacks)
6243
- below):**
6202
+ **Expected Webhooks:**
6244
6203
 
6245
6204
  - `streaming.stopped`
6246
6205
 
@@ -6391,6 +6350,14 @@ class AsyncActionsResource(AsyncAPIResource):
6391
6350
  media_name: str | Omit = omit,
6392
6351
  mute_dtmf: Literal["none", "both", "self", "opposite"] | Omit = omit,
6393
6352
  park_after_unbridge: str | Omit = omit,
6353
+ record: Literal["record-from-answer"] | Omit = omit,
6354
+ record_channels: Literal["single", "dual"] | Omit = omit,
6355
+ record_custom_file_name: str | Omit = omit,
6356
+ record_format: Literal["wav", "mp3"] | Omit = omit,
6357
+ record_max_length: int | Omit = omit,
6358
+ record_timeout_secs: int | Omit = omit,
6359
+ record_track: Literal["both", "inbound", "outbound"] | Omit = omit,
6360
+ record_trim: Literal["trim-silence"] | Omit = omit,
6394
6361
  sip_auth_password: str | Omit = omit,
6395
6362
  sip_auth_username: str | Omit = omit,
6396
6363
  sip_headers: Iterable[SipHeaderParam] | Omit = omit,
@@ -6416,9 +6383,7 @@ class AsyncActionsResource(AsyncAPIResource):
6416
6383
  may be issued additional commands, potentially transfering the call to an
6417
6384
  alternate destination.
6418
6385
 
6419
- **Expected Webhooks (see
6420
- [callback schema](https://developers.telnyx.com/api/call-control/transfer-call#callbacks)
6421
- below):**
6386
+ **Expected Webhooks:**
6422
6387
 
6423
6388
  - `call.initiated`
6424
6389
  - `call.bridged` to Leg B
@@ -6483,6 +6448,33 @@ class AsyncActionsResource(AsyncAPIResource):
6483
6448
  or is transferred). If supplied with the value `self`, the current leg will be
6484
6449
  parked after unbridge. If not set, the default behavior is to hang up the leg.
6485
6450
 
6451
+ record: Start recording automatically after an event. Disabled by default.
6452
+
6453
+ record_channels: Defines which channel should be recorded ('single' or 'dual') when `record` is
6454
+ specified.
6455
+
6456
+ record_custom_file_name: The custom recording file name to be used instead of the default `call_leg_id`.
6457
+ Telnyx will still add a Unix timestamp suffix.
6458
+
6459
+ record_format: Defines the format of the recording ('wav' or 'mp3') when `record` is specified.
6460
+
6461
+ record_max_length: Defines the maximum length for the recording in seconds when `record` is
6462
+ specified. The minimum value is 0. The maximum value is 43200. The default value
6463
+ is 0 (infinite).
6464
+
6465
+ record_timeout_secs: The number of seconds that Telnyx will wait for the recording to be stopped if
6466
+ silence is detected when `record` is specified. The timer only starts when the
6467
+ speech is detected. Please note that call transcription is used to detect
6468
+ silence and the related charge will be applied. The minimum value is 0. The
6469
+ default value is 0 (infinite).
6470
+
6471
+ record_track: The audio track to be recorded. Can be either `both`, `inbound` or `outbound`.
6472
+ If only single track is specified (`inbound`, `outbound`), `channels`
6473
+ configuration is ignored and it will be recorded as mono (single channel).
6474
+
6475
+ record_trim: When set to `trim-silence`, silence will be removed from the beginning and end
6476
+ of the recording.
6477
+
6486
6478
  sip_auth_password: SIP Authentication password used for SIP challenges.
6487
6479
 
6488
6480
  sip_auth_username: SIP Authentication username used for SIP challenges.
@@ -6543,6 +6535,14 @@ class AsyncActionsResource(AsyncAPIResource):
6543
6535
  "media_name": media_name,
6544
6536
  "mute_dtmf": mute_dtmf,
6545
6537
  "park_after_unbridge": park_after_unbridge,
6538
+ "record": record,
6539
+ "record_channels": record_channels,
6540
+ "record_custom_file_name": record_custom_file_name,
6541
+ "record_format": record_format,
6542
+ "record_max_length": record_max_length,
6543
+ "record_timeout_secs": record_timeout_secs,
6544
+ "record_track": record_track,
6545
+ "record_trim": record_trim,
6546
6546
  "sip_auth_password": sip_auth_password,
6547
6547
  "sip_auth_username": sip_auth_username,
6548
6548
  "sip_headers": sip_headers,