telnyx 5.158.0 → 5.159.0

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.
Files changed (771) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +12 -0
  3. data/README.md +1 -1
  4. data/lib/telnyx/client.rb +51 -0
  5. data/lib/telnyx/models/ai/anthropic/v1_messages_params.rb +4 -2
  6. data/lib/telnyx/models/ai/assistant_chat_params.rb +16 -1
  7. data/lib/telnyx/models/ai/chat_completion_request.rb +11 -1
  8. data/lib/telnyx/models/ai/openai_create_response_params.rb +11 -1
  9. data/lib/telnyx/models/ai/transcription_settings.rb +17 -1
  10. data/lib/telnyx/models/attachment_request.rb +52 -0
  11. data/lib/telnyx/models/call_assistant_request.rb +8 -1
  12. data/lib/telnyx/models/call_dial_params.rb +14 -1
  13. data/lib/telnyx/models/call_payment_completed_webhook_event.rb +344 -0
  14. data/lib/telnyx/models/call_payment_progress_webhook_event.rb +338 -0
  15. data/lib/telnyx/models/calls/action_add_ai_assistant_messages_params.rb +11 -1
  16. data/lib/telnyx/models/calls/action_gather_using_ai_params.rb +4 -0
  17. data/lib/telnyx/models/calls/action_gather_using_speak_params.rb +4 -0
  18. data/lib/telnyx/models/calls/action_pay_params.rb +268 -0
  19. data/lib/telnyx/models/calls/action_pay_response.rb +18 -0
  20. data/lib/telnyx/models/calls/action_speak_params.rb +4 -0
  21. data/lib/telnyx/models/calls/action_start_ai_assistant_params.rb +1 -70
  22. data/lib/telnyx/models/calls/action_start_conversation_relay_params.rb +4 -0
  23. data/lib/telnyx/models/calls/action_transfer_params.rb +14 -1
  24. data/lib/telnyx/models/calls/pay_prompt_value.rb +104 -0
  25. data/lib/telnyx/models/calls/transcription_config.rb +17 -1
  26. data/lib/telnyx/models/calls/transcription_start_request.rb +166 -3
  27. data/lib/telnyx/models/conferences/action_speak_params.rb +4 -0
  28. data/lib/telnyx/models/conversation_relay_embedded_config.rb +4 -0
  29. data/lib/telnyx/models/custom_storage_configuration.rb +65 -3
  30. data/lib/telnyx/models/dir/email_verification_status_wrapped.rb +19 -1
  31. data/lib/telnyx/models/dir/reference.rb +5 -3
  32. data/lib/telnyx/models/dir/reference_create_params.rb +8 -2
  33. data/lib/telnyx/models/dns_record.rb +101 -0
  34. data/lib/telnyx/models/domains_tracking_settings.rb +37 -0
  35. data/lib/telnyx/models/email_address_input.rb +16 -0
  36. data/lib/telnyx/models/email_block.rb +174 -0
  37. data/lib/telnyx/models/email_block_create_params.rb +45 -0
  38. data/lib/telnyx/models/email_block_delete_params.rb +20 -0
  39. data/lib/telnyx/models/email_block_list_params.rb +118 -0
  40. data/lib/telnyx/models/email_block_response.rb +21 -0
  41. data/lib/telnyx/models/email_block_retrieve_events_params.rb +37 -0
  42. data/lib/telnyx/models/email_block_retrieve_events_response.rb +112 -0
  43. data/lib/telnyx/models/email_block_retrieve_export_params.rb +100 -0
  44. data/lib/telnyx/models/email_block_retrieve_export_response.rb +7 -0
  45. data/lib/telnyx/models/email_block_retrieve_params.rb +20 -0
  46. data/lib/telnyx/models/email_blocks/email_block_import_response.rb +188 -0
  47. data/lib/telnyx/models/email_blocks/import_create_params.rb +36 -0
  48. data/lib/telnyx/models/email_blocks/import_retrieve_params.rb +22 -0
  49. data/lib/telnyx/models/email_dmarc_policy.rb +77 -0
  50. data/lib/telnyx/models/email_domain.rb +257 -0
  51. data/lib/telnyx/models/email_domain_create_params.rb +51 -0
  52. data/lib/telnyx/models/email_domain_delete_params.rb +29 -0
  53. data/lib/telnyx/models/email_domain_list_params.rb +111 -0
  54. data/lib/telnyx/models/email_domain_response.rb +16 -0
  55. data/lib/telnyx/models/email_domain_retrieve_dns_records_params.rb +20 -0
  56. data/lib/telnyx/models/email_domain_retrieve_dns_records_response.rb +16 -0
  57. data/lib/telnyx/models/email_domain_retrieve_health_params.rb +20 -0
  58. data/lib/telnyx/models/email_domain_retrieve_health_response.rb +104 -0
  59. data/lib/telnyx/models/email_domain_retrieve_params.rb +20 -0
  60. data/lib/telnyx/models/email_domain_status.rb +19 -0
  61. data/lib/telnyx/models/email_domain_type.rb +16 -0
  62. data/lib/telnyx/models/email_domain_update_params.rb +51 -0
  63. data/lib/telnyx/models/email_domain_verification.rb +101 -0
  64. data/lib/telnyx/models/email_domain_verify_params.rb +20 -0
  65. data/lib/telnyx/models/email_domains/email_webhook.rb +76 -0
  66. data/lib/telnyx/models/email_domains/email_webhook_event.rb +37 -0
  67. data/lib/telnyx/models/email_domains/email_webhook_response.rb +18 -0
  68. data/lib/telnyx/models/email_domains/offset_pagination_meta.rb +35 -0
  69. data/lib/telnyx/models/email_domains/webhook_create_params.rb +39 -0
  70. data/lib/telnyx/models/email_domains/webhook_delete_params.rb +28 -0
  71. data/lib/telnyx/models/email_domains/webhook_list_params.rb +58 -0
  72. data/lib/telnyx/models/email_domains/webhook_retrieve_params.rb +28 -0
  73. data/lib/telnyx/models/email_domains/webhook_update_params.rb +40 -0
  74. data/lib/telnyx/models/email_event_list_params.rb +87 -0
  75. data/lib/telnyx/models/email_event_list_response.rb +147 -0
  76. data/lib/telnyx/models/email_event_retrieve_stats_params.rb +34 -0
  77. data/lib/telnyx/models/email_event_retrieve_stats_response.rb +198 -0
  78. data/lib/telnyx/models/email_event_type.rb +29 -0
  79. data/lib/telnyx/models/email_inbox.rb +93 -0
  80. data/lib/telnyx/models/email_inbox_create_params.rb +36 -0
  81. data/lib/telnyx/models/email_inbox_delete_params.rb +20 -0
  82. data/lib/telnyx/models/email_inbox_list_params.rb +30 -0
  83. data/lib/telnyx/models/email_inbox_list_response.rb +41 -0
  84. data/lib/telnyx/models/email_inbox_response.rb +16 -0
  85. data/lib/telnyx/models/email_inbox_retrieve_params.rb +20 -0
  86. data/lib/telnyx/models/email_inboxes/draft_create_params.rb +22 -0
  87. data/lib/telnyx/models/email_inboxes/draft_delete_params.rb +28 -0
  88. data/lib/telnyx/models/email_inboxes/draft_list_params.rb +59 -0
  89. data/lib/telnyx/models/email_inboxes/draft_list_response.rb +24 -0
  90. data/lib/telnyx/models/email_inboxes/draft_patch_params.rb +28 -0
  91. data/lib/telnyx/models/email_inboxes/draft_retrieve_params.rb +28 -0
  92. data/lib/telnyx/models/email_inboxes/draft_send_params.rb +28 -0
  93. data/lib/telnyx/models/email_inboxes/draft_update_params.rb +28 -0
  94. data/lib/telnyx/models/email_inboxes/email_address.rb +23 -0
  95. data/lib/telnyx/models/email_inboxes/email_draft.rb +219 -0
  96. data/lib/telnyx/models/email_inboxes/email_draft_request.rb +128 -0
  97. data/lib/telnyx/models/email_inboxes/email_draft_response.rb +19 -0
  98. data/lib/telnyx/models/email_inboxes/email_message.rb +252 -0
  99. data/lib/telnyx/models/email_inboxes/email_message_response.rb +66 -0
  100. data/lib/telnyx/models/email_inboxes/email_pagination_meta.rb +25 -0
  101. data/lib/telnyx/models/email_inboxes/filter_add_params.rb +22 -0
  102. data/lib/telnyx/models/email_inboxes/filter_add_response.rb +51 -0
  103. data/lib/telnyx/models/email_inboxes/filter_delete_all_params.rb +22 -0
  104. data/lib/telnyx/models/email_inboxes/filter_delete_all_response.rb +52 -0
  105. data/lib/telnyx/models/email_inboxes/filter_list_params.rb +22 -0
  106. data/lib/telnyx/models/email_inboxes/filter_list_response.rb +51 -0
  107. data/lib/telnyx/models/email_inboxes/filter_replace_params.rb +34 -0
  108. data/lib/telnyx/models/email_inboxes/filter_replace_response.rb +51 -0
  109. data/lib/telnyx/models/email_inboxes/inbound_email_address.rb +23 -0
  110. data/lib/telnyx/models/email_inboxes/inbound_thread.rb +112 -0
  111. data/lib/telnyx/models/email_inboxes/inbound_thread_detail.rb +17 -0
  112. data/lib/telnyx/models/email_inboxes/inbound_thread_list_response.rb +24 -0
  113. data/lib/telnyx/models/email_inboxes/message_drafts_params.rb +28 -0
  114. data/lib/telnyx/models/email_inboxes/message_list_params.rb +109 -0
  115. data/lib/telnyx/models/email_inboxes/message_list_response.rb +24 -0
  116. data/lib/telnyx/models/email_inboxes/message_update_params.rb +65 -0
  117. data/lib/telnyx/models/email_inboxes/message_update_response.rb +18 -0
  118. data/lib/telnyx/models/email_inboxes/messages/action_forward_params.rb +117 -0
  119. data/lib/telnyx/models/email_inboxes/messages/action_reply_all_params.rb +30 -0
  120. data/lib/telnyx/models/email_inboxes/messages/action_reply_params.rb +30 -0
  121. data/lib/telnyx/models/email_inboxes/messages/inbox_action_email_address_input.rb +38 -0
  122. data/lib/telnyx/models/email_inboxes/messages/inbox_action_recipient_input.rb +46 -0
  123. data/lib/telnyx/models/email_inboxes/messages/label_create_params.rb +30 -0
  124. data/lib/telnyx/models/email_inboxes/messages/label_create_response.rb +20 -0
  125. data/lib/telnyx/models/email_inboxes/messages/label_delete_all_params.rb +30 -0
  126. data/lib/telnyx/models/email_inboxes/messages/label_delete_all_response.rb +20 -0
  127. data/lib/telnyx/models/email_inboxes/messages/label_mutation_request.rb +28 -0
  128. data/lib/telnyx/models/email_inboxes/messages/reply_email_inbox_message_request.rb +32 -0
  129. data/lib/telnyx/models/email_inboxes/mutate_inbox_filters_request.rb +38 -0
  130. data/lib/telnyx/models/email_inboxes/thread_list_params.rb +51 -0
  131. data/lib/telnyx/models/email_inboxes/thread_message.rb +255 -0
  132. data/lib/telnyx/models/email_inboxes/thread_retrieve_params.rb +46 -0
  133. data/lib/telnyx/models/email_inboxes/thread_retrieve_response.rb +24 -0
  134. data/lib/telnyx/models/email_inboxes/threads/label_create_params.rb +30 -0
  135. data/lib/telnyx/models/email_inboxes/threads/label_create_response.rb +60 -0
  136. data/lib/telnyx/models/email_inboxes/threads/label_delete_all_params.rb +30 -0
  137. data/lib/telnyx/models/email_inboxes/threads/label_delete_all_response.rb +60 -0
  138. data/lib/telnyx/models/email_message_batch_params.rb +239 -0
  139. data/lib/telnyx/models/email_message_batch_response.rb +95 -0
  140. data/lib/telnyx/models/email_message_create_params.rb +257 -0
  141. data/lib/telnyx/models/email_message_delete_all_params.rb +25 -0
  142. data/lib/telnyx/models/email_message_delete_params.rb +20 -0
  143. data/lib/telnyx/models/email_message_delete_schedule_params.rb +20 -0
  144. data/lib/telnyx/models/email_message_list_params.rb +34 -0
  145. data/lib/telnyx/models/email_message_list_response.rb +22 -0
  146. data/lib/telnyx/models/email_message_retrieve_events_params.rb +41 -0
  147. data/lib/telnyx/models/email_message_retrieve_events_response.rb +22 -0
  148. data/lib/telnyx/models/email_message_retrieve_params.rb +20 -0
  149. data/lib/telnyx/models/email_message_retrieve_response.rb +36 -0
  150. data/lib/telnyx/models/email_messages/email_recipient.rb +143 -0
  151. data/lib/telnyx/models/email_messages/recipient_list_params.rb +89 -0
  152. data/lib/telnyx/models/email_messages/recipient_list_response.rb +43 -0
  153. data/lib/telnyx/models/email_messages/recipient_retrieve_params.rb +28 -0
  154. data/lib/telnyx/models/email_messages/recipient_retrieve_response.rb +18 -0
  155. data/lib/telnyx/models/email_template.rb +73 -0
  156. data/lib/telnyx/models/email_template_create_params.rb +61 -0
  157. data/lib/telnyx/models/email_template_delete_params.rb +20 -0
  158. data/lib/telnyx/models/email_template_list_params.rb +34 -0
  159. data/lib/telnyx/models/email_template_list_response.rb +22 -0
  160. data/lib/telnyx/models/email_template_render_params.rb +33 -0
  161. data/lib/telnyx/models/email_template_render_response.rb +30 -0
  162. data/lib/telnyx/models/email_template_replace_params.rb +20 -0
  163. data/lib/telnyx/models/email_template_response.rb +16 -0
  164. data/lib/telnyx/models/email_template_retrieve_params.rb +20 -0
  165. data/lib/telnyx/models/email_template_update_params.rb +20 -0
  166. data/lib/telnyx/models/email_thread_list_params.rb +54 -0
  167. data/lib/telnyx/models/email_thread_retrieve_params.rb +45 -0
  168. data/lib/telnyx/models/email_thread_retrieve_response.rb +22 -0
  169. data/lib/telnyx/models/email_unsubscribe_group_create_params.rb +26 -0
  170. data/lib/telnyx/models/email_unsubscribe_group_delete_params.rb +59 -0
  171. data/lib/telnyx/models/email_unsubscribe_group_list_params.rb +30 -0
  172. data/lib/telnyx/models/email_unsubscribe_group_retrieve_params.rb +20 -0
  173. data/lib/telnyx/models/email_unsubscribe_group_update_params.rb +32 -0
  174. data/lib/telnyx/models/email_unsubscribe_groups/suppression_create_params.rb +28 -0
  175. data/lib/telnyx/models/email_unsubscribe_groups/suppression_delete_params.rb +28 -0
  176. data/lib/telnyx/models/email_unsubscribe_groups/suppression_list_params.rb +39 -0
  177. data/lib/telnyx/models/email_validation_check.rb +23 -0
  178. data/lib/telnyx/models/email_validation_create_params.rb +33 -0
  179. data/lib/telnyx/models/email_validation_create_response.rb +120 -0
  180. data/lib/telnyx/models/email_validations/batch_create_params.rb +42 -0
  181. data/lib/telnyx/models/email_validations/batch_create_response.rb +73 -0
  182. data/lib/telnyx/models/email_validations/batch_retrieve_params.rb +22 -0
  183. data/lib/telnyx/models/email_validations/batch_retrieve_response.rb +173 -0
  184. data/lib/telnyx/models/email_validations/email_validation_batch_status.rb +21 -0
  185. data/lib/telnyx/models/fax.rb +36 -1
  186. data/lib/telnyx/models/fax_failed.rb +15 -17
  187. data/lib/telnyx/models/group_list_meta.rb +35 -0
  188. data/lib/telnyx/models/inbound_message.rb +6 -288
  189. data/lib/telnyx/models/legacy/reporting/usage_reports/number_lookup_list_params.rb +17 -1
  190. data/lib/telnyx/models/legacy/reporting/usage_reports/telco_data_usage_report_response.rb +1 -0
  191. data/lib/telnyx/models/message_event.rb +27 -0
  192. data/lib/telnyx/models/messaging_10dlc/phone_number_campaign.rb +17 -1
  193. data/lib/telnyx/models/model_metadata.rb +22 -1
  194. data/lib/telnyx/models/offset_meta.rb +33 -0
  195. data/lib/telnyx/models/phone_numbers/action_change_bundle_status_params.rb +3 -3
  196. data/lib/telnyx/models/pricing/pricing_pagination_meta.rb +37 -0
  197. data/lib/telnyx/models/pricing/pricing_tier.rb +55 -0
  198. data/lib/telnyx/models/pricing/product_list_params.rb +32 -0
  199. data/lib/telnyx/models/pricing/product_list_response.rb +35 -0
  200. data/lib/telnyx/models/pricing/product_retrieve_params.rb +39 -0
  201. data/lib/telnyx/models/pricing/product_retrieve_response.rb +192 -0
  202. data/lib/telnyx/models/s3_configuration_data.rb +17 -17
  203. data/lib/telnyx/models/short_code.rb +2 -1
  204. data/lib/telnyx/models/short_code_update_params.rb +2 -1
  205. data/lib/telnyx/models/speech_to_text_list_providers_params.rb +2 -0
  206. data/lib/telnyx/models/speech_to_text_retrieve_transcription_params.rb +4 -0
  207. data/lib/telnyx/models/text_to_speech_generate_speech_params.rb +52 -1
  208. data/lib/telnyx/models/text_to_speech_list_voices_params.rb +1 -0
  209. data/lib/telnyx/models/text_to_speech_retrieve_speech_params.rb +1 -0
  210. data/lib/telnyx/models/time_range.rb +21 -0
  211. data/lib/telnyx/models/tracking_settings.rb +27 -0
  212. data/lib/telnyx/models/uac_external_settings.rb +10 -1
  213. data/lib/telnyx/models/unsafe_unwrap_webhook_event.rb +5 -1
  214. data/lib/telnyx/models/unsubscribe_group.rb +65 -0
  215. data/lib/telnyx/models/unsubscribe_group_response.rb +16 -0
  216. data/lib/telnyx/models/unwrap_webhook_event.rb +5 -1
  217. data/lib/telnyx/models/update_email_template_request.rb +46 -0
  218. data/lib/telnyx/models/whatsapp/phone_number_retrieve_conversation_window_response.rb +2 -2
  219. data/lib/telnyx/models/whatsapp/phone_numbers/conversational_component_list_params.rb +24 -0
  220. data/lib/telnyx/models/whatsapp/phone_numbers/conversational_component_list_response.rb +72 -0
  221. data/lib/telnyx/models/whatsapp/phone_numbers/conversational_component_patch_all_params.rb +58 -0
  222. data/lib/telnyx/models/whatsapp/phone_numbers/conversational_component_patch_all_response.rb +73 -0
  223. data/lib/telnyx/models.rb +156 -0
  224. data/lib/telnyx/resources/ai/anthropic/v1.rb +1 -1
  225. data/lib/telnyx/resources/ai/assistants.rb +6 -1
  226. data/lib/telnyx/resources/ai/openai/chat.rb +3 -1
  227. data/lib/telnyx/resources/ai/openai.rb +3 -1
  228. data/lib/telnyx/resources/calls/actions.rb +87 -8
  229. data/lib/telnyx/resources/calls.rb +3 -1
  230. data/lib/telnyx/resources/custom_storage_credentials.rb +2 -2
  231. data/lib/telnyx/resources/dir/references.rb +31 -9
  232. data/lib/telnyx/resources/dir.rb +3 -2
  233. data/lib/telnyx/resources/email_blocks/import.rb +79 -0
  234. data/lib/telnyx/resources/email_blocks.rb +249 -0
  235. data/lib/telnyx/resources/email_domains/webhooks.rb +162 -0
  236. data/lib/telnyx/resources/email_domains.rb +245 -0
  237. data/lib/telnyx/resources/email_events.rb +81 -0
  238. data/lib/telnyx/resources/email_inboxes/drafts.rb +329 -0
  239. data/lib/telnyx/resources/email_inboxes/filters.rb +122 -0
  240. data/lib/telnyx/resources/email_inboxes/messages/actions.rb +149 -0
  241. data/lib/telnyx/resources/email_inboxes/messages/labels.rb +98 -0
  242. data/lib/telnyx/resources/email_inboxes/messages.rb +191 -0
  243. data/lib/telnyx/resources/email_inboxes/threads/labels.rb +93 -0
  244. data/lib/telnyx/resources/email_inboxes/threads.rb +97 -0
  245. data/lib/telnyx/resources/email_inboxes.rb +136 -0
  246. data/lib/telnyx/resources/email_messages/recipients.rb +84 -0
  247. data/lib/telnyx/resources/email_messages.rb +294 -0
  248. data/lib/telnyx/resources/email_templates.rb +213 -0
  249. data/lib/telnyx/resources/email_threads.rb +91 -0
  250. data/lib/telnyx/resources/email_unsubscribe_groups/suppressions.rb +111 -0
  251. data/lib/telnyx/resources/email_unsubscribe_groups.rb +151 -0
  252. data/lib/telnyx/resources/email_validations/batch.rb +69 -0
  253. data/lib/telnyx/resources/email_validations.rb +49 -0
  254. data/lib/telnyx/resources/legacy/reporting/usage_reports/number_lookup.rb +12 -4
  255. data/lib/telnyx/resources/phone_numbers/actions.rb +1 -1
  256. data/lib/telnyx/resources/pricing/products.rb +76 -0
  257. data/lib/telnyx/resources/pricing.rb +19 -0
  258. data/lib/telnyx/resources/short_codes.rb +1 -1
  259. data/lib/telnyx/resources/speech_to_text.rb +1 -1
  260. data/lib/telnyx/resources/text_to_speech.rb +5 -3
  261. data/lib/telnyx/resources/webhooks.rb +2 -2
  262. data/lib/telnyx/resources/whatsapp/phone_numbers/conversational_components.rb +66 -0
  263. data/lib/telnyx/resources/whatsapp/phone_numbers.rb +6 -0
  264. data/lib/telnyx/version.rb +1 -1
  265. data/lib/telnyx.rb +200 -1
  266. data/rbi/telnyx/client.rbi +41 -0
  267. data/rbi/telnyx/models/ai/anthropic/v1_messages_params.rbi +6 -2
  268. data/rbi/telnyx/models/ai/assistant_chat_params.rbi +19 -0
  269. data/rbi/telnyx/models/ai/chat_completion_request.rbi +15 -0
  270. data/rbi/telnyx/models/ai/openai_create_response_params.rbi +15 -0
  271. data/rbi/telnyx/models/ai/transcription_settings.rbi +36 -2
  272. data/rbi/telnyx/models/attachment_request.rbi +83 -0
  273. data/rbi/telnyx/models/call_assistant_request.rbi +12 -3
  274. data/rbi/telnyx/models/call_dial_params.rbi +21 -0
  275. data/rbi/telnyx/models/call_payment_completed_webhook_event.rbi +724 -0
  276. data/rbi/telnyx/models/call_payment_progress_webhook_event.rbi +793 -0
  277. data/rbi/telnyx/models/calls/action_add_ai_assistant_messages_params.rbi +15 -0
  278. data/rbi/telnyx/models/calls/action_gather_using_ai_params.rbi +8 -0
  279. data/rbi/telnyx/models/calls/action_gather_using_speak_params.rbi +8 -0
  280. data/rbi/telnyx/models/calls/action_pay_params.rbi +484 -0
  281. data/rbi/telnyx/models/calls/action_pay_response.rbi +39 -0
  282. data/rbi/telnyx/models/calls/action_speak_params.rbi +8 -0
  283. data/rbi/telnyx/models/calls/action_start_ai_assistant_params.rbi +0 -153
  284. data/rbi/telnyx/models/calls/action_start_conversation_relay_params.rbi +8 -0
  285. data/rbi/telnyx/models/calls/action_transfer_params.rbi +21 -0
  286. data/rbi/telnyx/models/calls/pay_prompt_value.rbi +252 -0
  287. data/rbi/telnyx/models/calls/transcription_config.rbi +36 -2
  288. data/rbi/telnyx/models/calls/transcription_start_request.rbi +469 -0
  289. data/rbi/telnyx/models/conferences/action_speak_params.rbi +8 -0
  290. data/rbi/telnyx/models/conversation_relay_embedded_config.rbi +8 -0
  291. data/rbi/telnyx/models/custom_storage_configuration.rbi +90 -0
  292. data/rbi/telnyx/models/dir/email_verification_status_wrapped.rbi +23 -3
  293. data/rbi/telnyx/models/dir/reference.rbi +8 -4
  294. data/rbi/telnyx/models/dir/reference_create_params.rbi +14 -2
  295. data/rbi/telnyx/models/dns_record.rbi +139 -0
  296. data/rbi/telnyx/models/domains_tracking_settings.rbi +66 -0
  297. data/rbi/telnyx/models/email_address_input.rbi +16 -0
  298. data/rbi/telnyx/models/email_block.rbi +218 -0
  299. data/rbi/telnyx/models/email_block_create_params.rbi +65 -0
  300. data/rbi/telnyx/models/email_block_delete_params.rbi +35 -0
  301. data/rbi/telnyx/models/email_block_list_params.rbi +217 -0
  302. data/rbi/telnyx/models/email_block_response.rbi +32 -0
  303. data/rbi/telnyx/models/email_block_retrieve_events_params.rbi +66 -0
  304. data/rbi/telnyx/models/email_block_retrieve_events_response.rbi +223 -0
  305. data/rbi/telnyx/models/email_block_retrieve_export_params.rbi +216 -0
  306. data/rbi/telnyx/models/email_block_retrieve_export_response.rbi +7 -0
  307. data/rbi/telnyx/models/email_block_retrieve_params.rbi +35 -0
  308. data/rbi/telnyx/models/email_blocks/email_block_import_response.rbi +363 -0
  309. data/rbi/telnyx/models/email_blocks/import_create_params.rbi +61 -0
  310. data/rbi/telnyx/models/email_blocks/import_retrieve_params.rbi +40 -0
  311. data/rbi/telnyx/models/email_dmarc_policy.rbi +113 -0
  312. data/rbi/telnyx/models/email_domain.rbi +376 -0
  313. data/rbi/telnyx/models/email_domain_create_params.rbi +80 -0
  314. data/rbi/telnyx/models/email_domain_delete_params.rbi +52 -0
  315. data/rbi/telnyx/models/email_domain_list_params.rbi +177 -0
  316. data/rbi/telnyx/models/email_domain_response.rbi +28 -0
  317. data/rbi/telnyx/models/email_domain_retrieve_dns_records_params.rbi +38 -0
  318. data/rbi/telnyx/models/email_domain_retrieve_dns_records_response.rbi +30 -0
  319. data/rbi/telnyx/models/email_domain_retrieve_health_params.rbi +38 -0
  320. data/rbi/telnyx/models/email_domain_retrieve_health_response.rbi +224 -0
  321. data/rbi/telnyx/models/email_domain_retrieve_params.rbi +35 -0
  322. data/rbi/telnyx/models/email_domain_status.rbi +25 -0
  323. data/rbi/telnyx/models/email_domain_type.rbi +21 -0
  324. data/rbi/telnyx/models/email_domain_update_params.rbi +80 -0
  325. data/rbi/telnyx/models/email_domain_verification.rbi +195 -0
  326. data/rbi/telnyx/models/email_domain_verify_params.rbi +35 -0
  327. data/rbi/telnyx/models/email_domains/email_webhook.rbi +114 -0
  328. data/rbi/telnyx/models/email_domains/email_webhook_event.rbi +124 -0
  329. data/rbi/telnyx/models/email_domains/email_webhook_response.rbi +35 -0
  330. data/rbi/telnyx/models/email_domains/offset_pagination_meta.rbi +53 -0
  331. data/rbi/telnyx/models/email_domains/webhook_create_params.rbi +65 -0
  332. data/rbi/telnyx/models/email_domains/webhook_delete_params.rbi +48 -0
  333. data/rbi/telnyx/models/email_domains/webhook_list_params.rbi +119 -0
  334. data/rbi/telnyx/models/email_domains/webhook_retrieve_params.rbi +48 -0
  335. data/rbi/telnyx/models/email_domains/webhook_update_params.rbi +81 -0
  336. data/rbi/telnyx/models/email_event_list_params.rbi +140 -0
  337. data/rbi/telnyx/models/email_event_list_response.rbi +272 -0
  338. data/rbi/telnyx/models/email_event_retrieve_stats_params.rbi +58 -0
  339. data/rbi/telnyx/models/email_event_retrieve_stats_response.rbi +339 -0
  340. data/rbi/telnyx/models/email_event_type.rbi +34 -0
  341. data/rbi/telnyx/models/email_inbox.rbi +119 -0
  342. data/rbi/telnyx/models/email_inbox_create_params.rbi +63 -0
  343. data/rbi/telnyx/models/email_inbox_delete_params.rbi +35 -0
  344. data/rbi/telnyx/models/email_inbox_list_params.rbi +57 -0
  345. data/rbi/telnyx/models/email_inbox_list_response.rbi +82 -0
  346. data/rbi/telnyx/models/email_inbox_response.rbi +26 -0
  347. data/rbi/telnyx/models/email_inbox_retrieve_params.rbi +35 -0
  348. data/rbi/telnyx/models/email_inboxes/draft_create_params.rbi +40 -0
  349. data/rbi/telnyx/models/email_inboxes/draft_delete_params.rbi +48 -0
  350. data/rbi/telnyx/models/email_inboxes/draft_list_params.rbi +129 -0
  351. data/rbi/telnyx/models/email_inboxes/draft_list_response.rbi +48 -0
  352. data/rbi/telnyx/models/email_inboxes/draft_patch_params.rbi +48 -0
  353. data/rbi/telnyx/models/email_inboxes/draft_retrieve_params.rbi +48 -0
  354. data/rbi/telnyx/models/email_inboxes/draft_send_params.rbi +48 -0
  355. data/rbi/telnyx/models/email_inboxes/draft_update_params.rbi +48 -0
  356. data/rbi/telnyx/models/email_inboxes/email_address.rbi +31 -0
  357. data/rbi/telnyx/models/email_inboxes/email_draft.rbi +296 -0
  358. data/rbi/telnyx/models/email_inboxes/email_draft_request.rbi +233 -0
  359. data/rbi/telnyx/models/email_inboxes/email_draft_response.rbi +39 -0
  360. data/rbi/telnyx/models/email_inboxes/email_message.rbi +391 -0
  361. data/rbi/telnyx/models/email_inboxes/email_message_response.rbi +132 -0
  362. data/rbi/telnyx/models/email_inboxes/email_pagination_meta.rbi +43 -0
  363. data/rbi/telnyx/models/email_inboxes/filter_add_params.rbi +40 -0
  364. data/rbi/telnyx/models/email_inboxes/filter_add_response.rbi +119 -0
  365. data/rbi/telnyx/models/email_inboxes/filter_delete_all_params.rbi +40 -0
  366. data/rbi/telnyx/models/email_inboxes/filter_delete_all_response.rbi +125 -0
  367. data/rbi/telnyx/models/email_inboxes/filter_list_params.rbi +40 -0
  368. data/rbi/telnyx/models/email_inboxes/filter_list_response.rbi +119 -0
  369. data/rbi/telnyx/models/email_inboxes/filter_replace_params.rbi +64 -0
  370. data/rbi/telnyx/models/email_inboxes/filter_replace_response.rbi +123 -0
  371. data/rbi/telnyx/models/email_inboxes/inbound_email_address.rbi +34 -0
  372. data/rbi/telnyx/models/email_inboxes/inbound_thread.rbi +146 -0
  373. data/rbi/telnyx/models/email_inboxes/inbound_thread_detail.rbi +36 -0
  374. data/rbi/telnyx/models/email_inboxes/inbound_thread_list_response.rbi +48 -0
  375. data/rbi/telnyx/models/email_inboxes/message_drafts_params.rbi +48 -0
  376. data/rbi/telnyx/models/email_inboxes/message_list_params.rbi +162 -0
  377. data/rbi/telnyx/models/email_inboxes/message_list_response.rbi +48 -0
  378. data/rbi/telnyx/models/email_inboxes/message_update_params.rbi +124 -0
  379. data/rbi/telnyx/models/email_inboxes/message_update_response.rbi +33 -0
  380. data/rbi/telnyx/models/email_inboxes/messages/action_forward_params.rbi +312 -0
  381. data/rbi/telnyx/models/email_inboxes/messages/action_reply_all_params.rbi +50 -0
  382. data/rbi/telnyx/models/email_inboxes/messages/action_reply_params.rbi +50 -0
  383. data/rbi/telnyx/models/email_inboxes/messages/inbox_action_email_address_input.rbi +62 -0
  384. data/rbi/telnyx/models/email_inboxes/messages/inbox_action_recipient_input.rbi +74 -0
  385. data/rbi/telnyx/models/email_inboxes/messages/label_create_params.rbi +50 -0
  386. data/rbi/telnyx/models/email_inboxes/messages/label_create_response.rbi +37 -0
  387. data/rbi/telnyx/models/email_inboxes/messages/label_delete_all_params.rbi +50 -0
  388. data/rbi/telnyx/models/email_inboxes/messages/label_delete_all_response.rbi +37 -0
  389. data/rbi/telnyx/models/email_inboxes/messages/label_mutation_request.rbi +40 -0
  390. data/rbi/telnyx/models/email_inboxes/messages/reply_email_inbox_message_request.rbi +49 -0
  391. data/rbi/telnyx/models/email_inboxes/mutate_inbox_filters_request.rbi +89 -0
  392. data/rbi/telnyx/models/email_inboxes/thread_list_params.rbi +81 -0
  393. data/rbi/telnyx/models/email_inboxes/thread_message.rbi +318 -0
  394. data/rbi/telnyx/models/email_inboxes/thread_retrieve_params.rbi +74 -0
  395. data/rbi/telnyx/models/email_inboxes/thread_retrieve_response.rbi +53 -0
  396. data/rbi/telnyx/models/email_inboxes/threads/label_create_params.rbi +50 -0
  397. data/rbi/telnyx/models/email_inboxes/threads/label_create_response.rbi +138 -0
  398. data/rbi/telnyx/models/email_inboxes/threads/label_delete_all_params.rbi +50 -0
  399. data/rbi/telnyx/models/email_inboxes/threads/label_delete_all_response.rbi +138 -0
  400. data/rbi/telnyx/models/email_message_batch_params.rbi +386 -0
  401. data/rbi/telnyx/models/email_message_batch_response.rbi +206 -0
  402. data/rbi/telnyx/models/email_message_create_params.rbi +391 -0
  403. data/rbi/telnyx/models/email_message_delete_all_params.rbi +40 -0
  404. data/rbi/telnyx/models/email_message_delete_params.rbi +35 -0
  405. data/rbi/telnyx/models/email_message_delete_schedule_params.rbi +38 -0
  406. data/rbi/telnyx/models/email_message_list_params.rbi +59 -0
  407. data/rbi/telnyx/models/email_message_list_response.rbi +46 -0
  408. data/rbi/telnyx/models/email_message_retrieve_events_params.rbi +68 -0
  409. data/rbi/telnyx/models/email_message_retrieve_events_response.rbi +46 -0
  410. data/rbi/telnyx/models/email_message_retrieve_params.rbi +35 -0
  411. data/rbi/telnyx/models/email_message_retrieve_response.rbi +81 -0
  412. data/rbi/telnyx/models/email_messages/email_recipient.rbi +260 -0
  413. data/rbi/telnyx/models/email_messages/recipient_list_params.rbi +218 -0
  414. data/rbi/telnyx/models/email_messages/recipient_list_response.rbi +91 -0
  415. data/rbi/telnyx/models/email_messages/recipient_retrieve_params.rbi +48 -0
  416. data/rbi/telnyx/models/email_messages/recipient_retrieve_response.rbi +37 -0
  417. data/rbi/telnyx/models/email_template.rbi +103 -0
  418. data/rbi/telnyx/models/email_template_create_params.rbi +87 -0
  419. data/rbi/telnyx/models/email_template_delete_params.rbi +35 -0
  420. data/rbi/telnyx/models/email_template_list_params.rbi +59 -0
  421. data/rbi/telnyx/models/email_template_list_response.rbi +46 -0
  422. data/rbi/telnyx/models/email_template_render_params.rbi +54 -0
  423. data/rbi/telnyx/models/email_template_render_response.rbi +70 -0
  424. data/rbi/telnyx/models/email_template_replace_params.rbi +35 -0
  425. data/rbi/telnyx/models/email_template_response.rbi +28 -0
  426. data/rbi/telnyx/models/email_template_retrieve_params.rbi +35 -0
  427. data/rbi/telnyx/models/email_template_update_params.rbi +35 -0
  428. data/rbi/telnyx/models/email_thread_list_params.rbi +89 -0
  429. data/rbi/telnyx/models/email_thread_retrieve_params.rbi +71 -0
  430. data/rbi/telnyx/models/email_thread_retrieve_response.rbi +51 -0
  431. data/rbi/telnyx/models/email_unsubscribe_group_create_params.rbi +46 -0
  432. data/rbi/telnyx/models/email_unsubscribe_group_delete_params.rbi +121 -0
  433. data/rbi/telnyx/models/email_unsubscribe_group_list_params.rbi +60 -0
  434. data/rbi/telnyx/models/email_unsubscribe_group_retrieve_params.rbi +38 -0
  435. data/rbi/telnyx/models/email_unsubscribe_group_update_params.rbi +54 -0
  436. data/rbi/telnyx/models/email_unsubscribe_groups/suppression_create_params.rbi +44 -0
  437. data/rbi/telnyx/models/email_unsubscribe_groups/suppression_delete_params.rbi +48 -0
  438. data/rbi/telnyx/models/email_unsubscribe_groups/suppression_list_params.rbi +68 -0
  439. data/rbi/telnyx/models/email_validation_check.rbi +36 -0
  440. data/rbi/telnyx/models/email_validation_create_params.rbi +54 -0
  441. data/rbi/telnyx/models/email_validation_create_response.rbi +261 -0
  442. data/rbi/telnyx/models/email_validations/batch_create_params.rbi +68 -0
  443. data/rbi/telnyx/models/email_validations/batch_create_response.rbi +161 -0
  444. data/rbi/telnyx/models/email_validations/batch_retrieve_params.rbi +40 -0
  445. data/rbi/telnyx/models/email_validations/batch_retrieve_response.rbi +386 -0
  446. data/rbi/telnyx/models/email_validations/email_validation_batch_status.rbi +50 -0
  447. data/rbi/telnyx/models/fax.rbi +54 -0
  448. data/rbi/telnyx/models/fax_failed.rbi +21 -46
  449. data/rbi/telnyx/models/group_list_meta.rbi +47 -0
  450. data/rbi/telnyx/models/inbound_message.rbi +17 -329
  451. data/rbi/telnyx/models/legacy/reporting/usage_reports/number_lookup_list_params.rbi +33 -5
  452. data/rbi/telnyx/models/message_event.rbi +44 -0
  453. data/rbi/telnyx/models/messaging_10dlc/phone_number_campaign.rbi +25 -3
  454. data/rbi/telnyx/models/model_metadata.rbi +46 -0
  455. data/rbi/telnyx/models/offset_meta.rbi +46 -0
  456. data/rbi/telnyx/models/phone_numbers/action_change_bundle_status_params.rbi +3 -3
  457. data/rbi/telnyx/models/pricing/pricing_pagination_meta.rbi +55 -0
  458. data/rbi/telnyx/models/pricing/pricing_tier.rbi +75 -0
  459. data/rbi/telnyx/models/pricing/product_list_params.rbi +59 -0
  460. data/rbi/telnyx/models/pricing/product_list_response.rbi +50 -0
  461. data/rbi/telnyx/models/pricing/product_retrieve_params.rbi +68 -0
  462. data/rbi/telnyx/models/pricing/product_retrieve_response.rbi +312 -0
  463. data/rbi/telnyx/models/s3_configuration_data.rbi +19 -31
  464. data/rbi/telnyx/models/short_code.rbi +2 -0
  465. data/rbi/telnyx/models/short_code_update_params.rbi +2 -0
  466. data/rbi/telnyx/models/speech_to_text_list_providers_params.rbi +10 -0
  467. data/rbi/telnyx/models/speech_to_text_retrieve_transcription_params.rbi +20 -0
  468. data/rbi/telnyx/models/text_to_speech_generate_speech_params.rbi +136 -0
  469. data/rbi/telnyx/models/text_to_speech_list_voices_params.rbi +5 -0
  470. data/rbi/telnyx/models/text_to_speech_retrieve_speech_params.rbi +5 -0
  471. data/rbi/telnyx/models/time_range.rbi +28 -0
  472. data/rbi/telnyx/models/tracking_settings.rbi +49 -0
  473. data/rbi/telnyx/models/uac_external_settings.rbi +10 -0
  474. data/rbi/telnyx/models/unsafe_unwrap_webhook_event.rbi +2 -0
  475. data/rbi/telnyx/models/unsubscribe_group.rbi +92 -0
  476. data/rbi/telnyx/models/unsubscribe_group_response.rbi +28 -0
  477. data/rbi/telnyx/models/unwrap_webhook_event.rbi +2 -0
  478. data/rbi/telnyx/models/update_email_template_request.rbi +71 -0
  479. data/rbi/telnyx/models/whatsapp/phone_number_retrieve_conversation_window_response.rbi +3 -6
  480. data/rbi/telnyx/models/whatsapp/phone_numbers/conversational_component_list_params.rbi +42 -0
  481. data/rbi/telnyx/models/whatsapp/phone_numbers/conversational_component_list_response.rbi +180 -0
  482. data/rbi/telnyx/models/whatsapp/phone_numbers/conversational_component_patch_all_params.rbi +125 -0
  483. data/rbi/telnyx/models/whatsapp/phone_numbers/conversational_component_patch_all_response.rbi +180 -0
  484. data/rbi/telnyx/models.rbi +169 -0
  485. data/rbi/telnyx/resources/ai/anthropic/v1.rbi +3 -1
  486. data/rbi/telnyx/resources/ai/assistants.rbi +7 -0
  487. data/rbi/telnyx/resources/ai/openai/chat.rbi +5 -0
  488. data/rbi/telnyx/resources/ai/openai.rbi +5 -0
  489. data/rbi/telnyx/resources/calls/actions.rbi +124 -44
  490. data/rbi/telnyx/resources/calls.rbi +8 -0
  491. data/rbi/telnyx/resources/conferences/actions.rbi +4 -0
  492. data/rbi/telnyx/resources/custom_storage_credentials.rbi +2 -0
  493. data/rbi/telnyx/resources/dir/references.rbi +41 -10
  494. data/rbi/telnyx/resources/dir.rbi +3 -2
  495. data/rbi/telnyx/resources/email_blocks/import.rbi +61 -0
  496. data/rbi/telnyx/resources/email_blocks.rbi +198 -0
  497. data/rbi/telnyx/resources/email_domains/webhooks.rbi +122 -0
  498. data/rbi/telnyx/resources/email_domains.rbi +180 -0
  499. data/rbi/telnyx/resources/email_events.rbi +67 -0
  500. data/rbi/telnyx/resources/email_inboxes/drafts.rbi +319 -0
  501. data/rbi/telnyx/resources/email_inboxes/filters.rbi +94 -0
  502. data/rbi/telnyx/resources/email_inboxes/messages/actions.rbi +155 -0
  503. data/rbi/telnyx/resources/email_inboxes/messages/labels.rbi +80 -0
  504. data/rbi/telnyx/resources/email_inboxes/messages.rbi +185 -0
  505. data/rbi/telnyx/resources/email_inboxes/threads/labels.rbi +75 -0
  506. data/rbi/telnyx/resources/email_inboxes/threads.rbi +70 -0
  507. data/rbi/telnyx/resources/email_inboxes.rbi +100 -0
  508. data/rbi/telnyx/resources/email_messages/recipients.rbi +66 -0
  509. data/rbi/telnyx/resources/email_messages.rbi +299 -0
  510. data/rbi/telnyx/resources/email_templates.rbi +167 -0
  511. data/rbi/telnyx/resources/email_threads.rbi +74 -0
  512. data/rbi/telnyx/resources/email_unsubscribe_groups/suppressions.rbi +83 -0
  513. data/rbi/telnyx/resources/email_unsubscribe_groups.rbi +110 -0
  514. data/rbi/telnyx/resources/email_validations/batch.rbi +59 -0
  515. data/rbi/telnyx/resources/email_validations.rbi +42 -0
  516. data/rbi/telnyx/resources/legacy/reporting/usage_reports/number_lookup.rbi +15 -3
  517. data/rbi/telnyx/resources/phone_numbers/actions.rbi +1 -1
  518. data/rbi/telnyx/resources/pricing/products.rbi +62 -0
  519. data/rbi/telnyx/resources/pricing.rbi +16 -0
  520. data/rbi/telnyx/resources/short_codes.rbi +1 -0
  521. data/rbi/telnyx/resources/speech_to_text.rbi +1 -1
  522. data/rbi/telnyx/resources/text_to_speech.rbi +7 -2
  523. data/rbi/telnyx/resources/webhooks.rbi +4 -0
  524. data/rbi/telnyx/resources/whatsapp/phone_numbers/conversational_components.rbi +58 -0
  525. data/rbi/telnyx/resources/whatsapp/phone_numbers.rbi +8 -0
  526. data/sig/telnyx/client.rbs +20 -0
  527. data/sig/telnyx/models/ai/assistant_chat_params.rbs +8 -1
  528. data/sig/telnyx/models/ai/chat_completion_request.rbs +7 -0
  529. data/sig/telnyx/models/ai/openai_create_response_params.rbs +7 -0
  530. data/sig/telnyx/models/ai/transcription_settings.rbs +4 -0
  531. data/sig/telnyx/models/attachment_request.rbs +48 -0
  532. data/sig/telnyx/models/call_assistant_request.rbs +12 -3
  533. data/sig/telnyx/models/call_dial_params.rbs +7 -0
  534. data/sig/telnyx/models/call_payment_completed_webhook_event.rbs +337 -0
  535. data/sig/telnyx/models/call_payment_progress_webhook_event.rbs +349 -0
  536. data/sig/telnyx/models/calls/action_add_ai_assistant_messages_params.rbs +8 -1
  537. data/sig/telnyx/models/calls/action_pay_params.rbs +261 -0
  538. data/sig/telnyx/models/calls/action_pay_response.rbs +20 -0
  539. data/sig/telnyx/models/calls/action_start_ai_assistant_params.rbs +1 -32
  540. data/sig/telnyx/models/calls/action_transfer_params.rbs +7 -0
  541. data/sig/telnyx/models/calls/pay_prompt_value.rbs +99 -0
  542. data/sig/telnyx/models/calls/transcription_config.rbs +4 -0
  543. data/sig/telnyx/models/calls/transcription_start_request.rbs +158 -0
  544. data/sig/telnyx/models/custom_storage_configuration.rbs +45 -1
  545. data/sig/telnyx/models/dir/email_verification_status_wrapped.rbs +13 -3
  546. data/sig/telnyx/models/dns_record.rbs +98 -0
  547. data/sig/telnyx/models/domains_tracking_settings.rbs +32 -0
  548. data/sig/telnyx/models/email_address_input.rbs +11 -0
  549. data/sig/telnyx/models/email_block.rbs +142 -0
  550. data/sig/telnyx/models/email_block_create_params.rbs +36 -0
  551. data/sig/telnyx/models/email_block_delete_params.rbs +20 -0
  552. data/sig/telnyx/models/email_block_list_params.rbs +114 -0
  553. data/sig/telnyx/models/email_block_response.rbs +13 -0
  554. data/sig/telnyx/models/email_block_retrieve_events_params.rbs +36 -0
  555. data/sig/telnyx/models/email_block_retrieve_events_response.rbs +100 -0
  556. data/sig/telnyx/models/email_block_retrieve_export_params.rbs +100 -0
  557. data/sig/telnyx/models/email_block_retrieve_export_response.rbs +5 -0
  558. data/sig/telnyx/models/email_block_retrieve_params.rbs +20 -0
  559. data/sig/telnyx/models/email_blocks/email_block_import_response.rbs +165 -0
  560. data/sig/telnyx/models/email_blocks/import_create_params.rbs +32 -0
  561. data/sig/telnyx/models/email_blocks/import_retrieve_params.rbs +22 -0
  562. data/sig/telnyx/models/email_dmarc_policy.rbs +65 -0
  563. data/sig/telnyx/models/email_domain.rbs +216 -0
  564. data/sig/telnyx/models/email_domain_create_params.rbs +47 -0
  565. data/sig/telnyx/models/email_domain_delete_params.rbs +29 -0
  566. data/sig/telnyx/models/email_domain_list_params.rbs +117 -0
  567. data/sig/telnyx/models/email_domain_response.rbs +13 -0
  568. data/sig/telnyx/models/email_domain_retrieve_dns_records_params.rbs +23 -0
  569. data/sig/telnyx/models/email_domain_retrieve_dns_records_response.rbs +14 -0
  570. data/sig/telnyx/models/email_domain_retrieve_health_params.rbs +20 -0
  571. data/sig/telnyx/models/email_domain_retrieve_health_response.rbs +91 -0
  572. data/sig/telnyx/models/email_domain_retrieve_params.rbs +20 -0
  573. data/sig/telnyx/models/email_domain_status.rbs +19 -0
  574. data/sig/telnyx/models/email_domain_type.rbs +15 -0
  575. data/sig/telnyx/models/email_domain_update_params.rbs +47 -0
  576. data/sig/telnyx/models/email_domain_verification.rbs +102 -0
  577. data/sig/telnyx/models/email_domain_verify_params.rbs +23 -0
  578. data/sig/telnyx/models/email_domains/email_webhook.rbs +62 -0
  579. data/sig/telnyx/models/email_domains/email_webhook_event.rbs +52 -0
  580. data/sig/telnyx/models/email_domains/email_webhook_response.rbs +15 -0
  581. data/sig/telnyx/models/email_domains/offset_pagination_meta.rbs +37 -0
  582. data/sig/telnyx/models/email_domains/webhook_create_params.rbs +38 -0
  583. data/sig/telnyx/models/email_domains/webhook_delete_params.rbs +30 -0
  584. data/sig/telnyx/models/email_domains/webhook_list_params.rbs +62 -0
  585. data/sig/telnyx/models/email_domains/webhook_retrieve_params.rbs +30 -0
  586. data/sig/telnyx/models/email_domains/webhook_update_params.rbs +49 -0
  587. data/sig/telnyx/models/email_event_list_params.rbs +75 -0
  588. data/sig/telnyx/models/email_event_list_response.rbs +149 -0
  589. data/sig/telnyx/models/email_event_retrieve_stats_params.rbs +31 -0
  590. data/sig/telnyx/models/email_event_retrieve_stats_response.rbs +164 -0
  591. data/sig/telnyx/models/email_event_type.rbs +44 -0
  592. data/sig/telnyx/models/email_inbox.rbs +81 -0
  593. data/sig/telnyx/models/email_inbox_create_params.rbs +32 -0
  594. data/sig/telnyx/models/email_inbox_delete_params.rbs +20 -0
  595. data/sig/telnyx/models/email_inbox_list_params.rbs +32 -0
  596. data/sig/telnyx/models/email_inbox_list_response.rbs +39 -0
  597. data/sig/telnyx/models/email_inbox_response.rbs +13 -0
  598. data/sig/telnyx/models/email_inbox_retrieve_params.rbs +20 -0
  599. data/sig/telnyx/models/email_inboxes/draft_create_params.rbs +27 -0
  600. data/sig/telnyx/models/email_inboxes/draft_delete_params.rbs +30 -0
  601. data/sig/telnyx/models/email_inboxes/draft_list_params.rbs +63 -0
  602. data/sig/telnyx/models/email_inboxes/draft_list_response.rbs +27 -0
  603. data/sig/telnyx/models/email_inboxes/draft_patch_params.rbs +34 -0
  604. data/sig/telnyx/models/email_inboxes/draft_retrieve_params.rbs +30 -0
  605. data/sig/telnyx/models/email_inboxes/draft_send_params.rbs +30 -0
  606. data/sig/telnyx/models/email_inboxes/draft_update_params.rbs +34 -0
  607. data/sig/telnyx/models/email_inboxes/email_address.rbs +19 -0
  608. data/sig/telnyx/models/email_inboxes/email_draft.rbs +185 -0
  609. data/sig/telnyx/models/email_inboxes/email_draft_request.rbs +135 -0
  610. data/sig/telnyx/models/email_inboxes/email_draft_response.rbs +15 -0
  611. data/sig/telnyx/models/email_inboxes/email_message.rbs +213 -0
  612. data/sig/telnyx/models/email_inboxes/email_message_response.rbs +58 -0
  613. data/sig/telnyx/models/email_inboxes/email_pagination_meta.rbs +19 -0
  614. data/sig/telnyx/models/email_inboxes/filter_add_params.rbs +27 -0
  615. data/sig/telnyx/models/email_inboxes/filter_add_response.rbs +57 -0
  616. data/sig/telnyx/models/email_inboxes/filter_delete_all_params.rbs +27 -0
  617. data/sig/telnyx/models/email_inboxes/filter_delete_all_response.rbs +57 -0
  618. data/sig/telnyx/models/email_inboxes/filter_list_params.rbs +25 -0
  619. data/sig/telnyx/models/email_inboxes/filter_list_response.rbs +57 -0
  620. data/sig/telnyx/models/email_inboxes/filter_replace_params.rbs +42 -0
  621. data/sig/telnyx/models/email_inboxes/filter_replace_response.rbs +57 -0
  622. data/sig/telnyx/models/email_inboxes/inbound_email_address.rbs +19 -0
  623. data/sig/telnyx/models/email_inboxes/inbound_thread.rbs +87 -0
  624. data/sig/telnyx/models/email_inboxes/inbound_thread_detail.rbs +24 -0
  625. data/sig/telnyx/models/email_inboxes/inbound_thread_list_response.rbs +27 -0
  626. data/sig/telnyx/models/email_inboxes/message_drafts_params.rbs +34 -0
  627. data/sig/telnyx/models/email_inboxes/message_list_params.rbs +98 -0
  628. data/sig/telnyx/models/email_inboxes/message_list_response.rbs +27 -0
  629. data/sig/telnyx/models/email_inboxes/message_update_params.rbs +48 -0
  630. data/sig/telnyx/models/email_inboxes/message_update_response.rbs +15 -0
  631. data/sig/telnyx/models/email_inboxes/messages/action_forward_params.rbs +99 -0
  632. data/sig/telnyx/models/email_inboxes/messages/action_reply_all_params.rbs +36 -0
  633. data/sig/telnyx/models/email_inboxes/messages/action_reply_params.rbs +36 -0
  634. data/sig/telnyx/models/email_inboxes/messages/inbox_action_email_address_input.rbs +31 -0
  635. data/sig/telnyx/models/email_inboxes/messages/inbox_action_recipient_input.rbs +34 -0
  636. data/sig/telnyx/models/email_inboxes/messages/label_create_params.rbs +36 -0
  637. data/sig/telnyx/models/email_inboxes/messages/label_create_response.rbs +17 -0
  638. data/sig/telnyx/models/email_inboxes/messages/label_delete_all_params.rbs +36 -0
  639. data/sig/telnyx/models/email_inboxes/messages/label_delete_all_response.rbs +17 -0
  640. data/sig/telnyx/models/email_inboxes/messages/label_mutation_request.rbs +17 -0
  641. data/sig/telnyx/models/email_inboxes/messages/reply_email_inbox_message_request.rbs +23 -0
  642. data/sig/telnyx/models/email_inboxes/mutate_inbox_filters_request.rbs +38 -0
  643. data/sig/telnyx/models/email_inboxes/thread_list_params.rbs +49 -0
  644. data/sig/telnyx/models/email_inboxes/thread_message.rbs +178 -0
  645. data/sig/telnyx/models/email_inboxes/thread_retrieve_params.rbs +47 -0
  646. data/sig/telnyx/models/email_inboxes/thread_retrieve_response.rbs +27 -0
  647. data/sig/telnyx/models/email_inboxes/threads/label_create_params.rbs +36 -0
  648. data/sig/telnyx/models/email_inboxes/threads/label_create_response.rbs +68 -0
  649. data/sig/telnyx/models/email_inboxes/threads/label_delete_all_params.rbs +36 -0
  650. data/sig/telnyx/models/email_inboxes/threads/label_delete_all_response.rbs +68 -0
  651. data/sig/telnyx/models/email_message_batch_params.rbs +208 -0
  652. data/sig/telnyx/models/email_message_batch_response.rbs +98 -0
  653. data/sig/telnyx/models/email_message_create_params.rbs +199 -0
  654. data/sig/telnyx/models/email_message_delete_all_params.rbs +23 -0
  655. data/sig/telnyx/models/email_message_delete_params.rbs +20 -0
  656. data/sig/telnyx/models/email_message_delete_schedule_params.rbs +23 -0
  657. data/sig/telnyx/models/email_message_list_params.rbs +32 -0
  658. data/sig/telnyx/models/email_message_list_response.rbs +25 -0
  659. data/sig/telnyx/models/email_message_retrieve_events_params.rbs +36 -0
  660. data/sig/telnyx/models/email_message_retrieve_events_response.rbs +25 -0
  661. data/sig/telnyx/models/email_message_retrieve_params.rbs +20 -0
  662. data/sig/telnyx/models/email_message_retrieve_response.rbs +34 -0
  663. data/sig/telnyx/models/email_messages/email_recipient.rbs +126 -0
  664. data/sig/telnyx/models/email_messages/recipient_list_params.rbs +99 -0
  665. data/sig/telnyx/models/email_messages/recipient_list_response.rbs +39 -0
  666. data/sig/telnyx/models/email_messages/recipient_retrieve_params.rbs +30 -0
  667. data/sig/telnyx/models/email_messages/recipient_retrieve_response.rbs +16 -0
  668. data/sig/telnyx/models/email_template.rbs +70 -0
  669. data/sig/telnyx/models/email_template_create_params.rbs +55 -0
  670. data/sig/telnyx/models/email_template_delete_params.rbs +20 -0
  671. data/sig/telnyx/models/email_template_list_params.rbs +32 -0
  672. data/sig/telnyx/models/email_template_list_response.rbs +25 -0
  673. data/sig/telnyx/models/email_template_render_params.rbs +30 -0
  674. data/sig/telnyx/models/email_template_render_response.rbs +26 -0
  675. data/sig/telnyx/models/email_template_replace_params.rbs +22 -0
  676. data/sig/telnyx/models/email_template_response.rbs +13 -0
  677. data/sig/telnyx/models/email_template_retrieve_params.rbs +20 -0
  678. data/sig/telnyx/models/email_template_update_params.rbs +22 -0
  679. data/sig/telnyx/models/email_thread_list_params.rbs +49 -0
  680. data/sig/telnyx/models/email_thread_retrieve_params.rbs +45 -0
  681. data/sig/telnyx/models/email_thread_retrieve_response.rbs +25 -0
  682. data/sig/telnyx/models/email_unsubscribe_group_create_params.rbs +28 -0
  683. data/sig/telnyx/models/email_unsubscribe_group_delete_params.rbs +46 -0
  684. data/sig/telnyx/models/email_unsubscribe_group_list_params.rbs +32 -0
  685. data/sig/telnyx/models/email_unsubscribe_group_retrieve_params.rbs +20 -0
  686. data/sig/telnyx/models/email_unsubscribe_group_update_params.rbs +34 -0
  687. data/sig/telnyx/models/email_unsubscribe_groups/suppression_create_params.rbs +29 -0
  688. data/sig/telnyx/models/email_unsubscribe_groups/suppression_delete_params.rbs +30 -0
  689. data/sig/telnyx/models/email_unsubscribe_groups/suppression_list_params.rbs +38 -0
  690. data/sig/telnyx/models/email_validation_check.rbs +17 -0
  691. data/sig/telnyx/models/email_validation_create_params.rbs +30 -0
  692. data/sig/telnyx/models/email_validation_create_response.rbs +121 -0
  693. data/sig/telnyx/models/email_validations/batch_create_params.rbs +42 -0
  694. data/sig/telnyx/models/email_validations/batch_create_response.rbs +74 -0
  695. data/sig/telnyx/models/email_validations/batch_retrieve_params.rbs +22 -0
  696. data/sig/telnyx/models/email_validations/batch_retrieve_response.rbs +173 -0
  697. data/sig/telnyx/models/email_validations/email_validation_batch_status.rbs +21 -0
  698. data/sig/telnyx/models/fax.rbs +10 -0
  699. data/sig/telnyx/models/fax_failed.rbs +12 -17
  700. data/sig/telnyx/models/group_list_meta.rbs +35 -0
  701. data/sig/telnyx/models/inbound_message.rbs +13 -205
  702. data/sig/telnyx/models/legacy/reporting/usage_reports/number_lookup_list_params.rbs +20 -3
  703. data/sig/telnyx/models/message_event.rbs +32 -0
  704. data/sig/telnyx/models/messaging_10dlc/phone_number_campaign.rbs +17 -3
  705. data/sig/telnyx/models/model_metadata.rbs +21 -0
  706. data/sig/telnyx/models/offset_meta.rbs +35 -0
  707. data/sig/telnyx/models/phone_numbers/action_change_bundle_status_params.rbs +4 -4
  708. data/sig/telnyx/models/pricing/pricing_pagination_meta.rbs +39 -0
  709. data/sig/telnyx/models/pricing/pricing_tier.rbs +42 -0
  710. data/sig/telnyx/models/pricing/product_list_params.rbs +34 -0
  711. data/sig/telnyx/models/pricing/product_list_response.rbs +24 -0
  712. data/sig/telnyx/models/pricing/product_retrieve_params.rbs +38 -0
  713. data/sig/telnyx/models/pricing/product_retrieve_response.rbs +164 -0
  714. data/sig/telnyx/models/s3_configuration_data.rbs +11 -19
  715. data/sig/telnyx/models/speech_to_text_list_providers_params.rbs +4 -0
  716. data/sig/telnyx/models/speech_to_text_retrieve_transcription_params.rbs +8 -0
  717. data/sig/telnyx/models/text_to_speech_generate_speech_params.rbs +56 -0
  718. data/sig/telnyx/models/text_to_speech_list_voices_params.rbs +2 -0
  719. data/sig/telnyx/models/text_to_speech_retrieve_speech_params.rbs +2 -0
  720. data/sig/telnyx/models/time_range.rbs +15 -0
  721. data/sig/telnyx/models/tracking_settings.rbs +19 -0
  722. data/sig/telnyx/models/uac_external_settings.rbs +5 -0
  723. data/sig/telnyx/models/unsafe_unwrap_webhook_event.rbs +2 -0
  724. data/sig/telnyx/models/unsubscribe_group.rbs +55 -0
  725. data/sig/telnyx/models/unsubscribe_group_response.rbs +13 -0
  726. data/sig/telnyx/models/unwrap_webhook_event.rbs +2 -0
  727. data/sig/telnyx/models/update_email_template_request.rbs +44 -0
  728. data/sig/telnyx/models/whatsapp/phone_number_retrieve_conversation_window_response.rbs +4 -6
  729. data/sig/telnyx/models/whatsapp/phone_numbers/conversational_component_list_params.rbs +27 -0
  730. data/sig/telnyx/models/whatsapp/phone_numbers/conversational_component_list_response.rbs +86 -0
  731. data/sig/telnyx/models/whatsapp/phone_numbers/conversational_component_patch_all_params.rbs +62 -0
  732. data/sig/telnyx/models/whatsapp/phone_numbers/conversational_component_patch_all_response.rbs +86 -0
  733. data/sig/telnyx/models.rbs +156 -0
  734. data/sig/telnyx/resources/ai/assistants.rbs +1 -0
  735. data/sig/telnyx/resources/ai/openai/chat.rbs +1 -0
  736. data/sig/telnyx/resources/ai/openai.rbs +1 -0
  737. data/sig/telnyx/resources/calls/actions.rbs +25 -2
  738. data/sig/telnyx/resources/calls.rbs +1 -0
  739. data/sig/telnyx/resources/email_blocks/import.rbs +20 -0
  740. data/sig/telnyx/resources/email_blocks.rbs +58 -0
  741. data/sig/telnyx/resources/email_domains/webhooks.rbs +44 -0
  742. data/sig/telnyx/resources/email_domains.rbs +66 -0
  743. data/sig/telnyx/resources/email_events.rbs +23 -0
  744. data/sig/telnyx/resources/email_inboxes/drafts.rbs +100 -0
  745. data/sig/telnyx/resources/email_inboxes/filters.rbs +35 -0
  746. data/sig/telnyx/resources/email_inboxes/messages/actions.rbs +38 -0
  747. data/sig/telnyx/resources/email_inboxes/messages/labels.rbs +25 -0
  748. data/sig/telnyx/resources/email_inboxes/messages.rbs +57 -0
  749. data/sig/telnyx/resources/email_inboxes/threads/labels.rbs +25 -0
  750. data/sig/telnyx/resources/email_inboxes/threads.rbs +27 -0
  751. data/sig/telnyx/resources/email_inboxes.rbs +34 -0
  752. data/sig/telnyx/resources/email_messages/recipients.rbs +24 -0
  753. data/sig/telnyx/resources/email_messages.rbs +76 -0
  754. data/sig/telnyx/resources/email_templates.rbs +56 -0
  755. data/sig/telnyx/resources/email_threads.rbs +23 -0
  756. data/sig/telnyx/resources/email_unsubscribe_groups/suppressions.rbs +28 -0
  757. data/sig/telnyx/resources/email_unsubscribe_groups.rbs +39 -0
  758. data/sig/telnyx/resources/email_validations/batch.rbs +21 -0
  759. data/sig/telnyx/resources/email_validations.rbs +15 -0
  760. data/sig/telnyx/resources/legacy/reporting/usage_reports/number_lookup.rbs +3 -1
  761. data/sig/telnyx/resources/phone_numbers/actions.rbs +1 -1
  762. data/sig/telnyx/resources/pricing/products.rbs +22 -0
  763. data/sig/telnyx/resources/pricing.rbs +9 -0
  764. data/sig/telnyx/resources/text_to_speech.rbs +1 -0
  765. data/sig/telnyx/resources/webhooks.rbs +4 -0
  766. data/sig/telnyx/resources/whatsapp/phone_numbers/conversational_components.rbs +23 -0
  767. data/sig/telnyx/resources/whatsapp/phone_numbers.rbs +2 -0
  768. metadata +602 -5
  769. data/lib/telnyx/models/legacy/reporting/usage_reports/number_lookup_list_response.rb +0 -29
  770. data/rbi/telnyx/models/legacy/reporting/usage_reports/number_lookup_list_response.rbi +0 -87
  771. data/sig/telnyx/models/legacy/reporting/usage_reports/number_lookup_list_response.rbs +0 -39
@@ -10,7 +10,7 @@ module Telnyx
10
10
  #
11
11
  # Add messages to the conversation started by an AI assistant on the call.
12
12
  #
13
- # @overload add_ai_assistant_messages(call_control_id, client_state: nil, command_id: nil, messages: nil, request_options: {})
13
+ # @overload add_ai_assistant_messages(call_control_id, client_state: nil, command_id: nil, messages: nil, trigger_response: nil, request_options: {})
14
14
  #
15
15
  # @param call_control_id [String] Unique identifier and token for controlling the call
16
16
  #
@@ -20,6 +20,8 @@ module Telnyx
20
20
  #
21
21
  # @param messages [Array<Telnyx::Models::Calls::UserMessage, Telnyx::Models::Calls::AssistantMessage, Telnyx::Models::Calls::ToolMessage, Telnyx::Models::Calls::SystemMessage, Telnyx::Models::Calls::DeveloperMessage>] The messages to add to the conversation.
22
22
  #
23
+ # @param trigger_response [Boolean] When `true`, the injected messages immediately trigger an assistant response/tur
24
+ #
23
25
  # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
24
26
  #
25
27
  # @return [Telnyx::Models::Calls::ActionAddAIAssistantMessagesResponse]
@@ -634,6 +636,85 @@ module Telnyx
634
636
  )
635
637
  end
636
638
 
639
+ # Some parameter documentations has been truncated, see
640
+ # {Telnyx::Models::Calls::ActionPayParams} for more details.
641
+ #
642
+ # Collect payment details from the caller using DTMF and either charge or tokenize
643
+ # the payment method through a configured Pay connector. Pay pauses active call
644
+ # recordings while sensitive payment details are collected.
645
+ #
646
+ # When `payment_token` is supplied, the DTMF collection steps are skipped and the
647
+ # existing token is sent to the connector.
648
+ #
649
+ # **Expected Webhooks:**
650
+ #
651
+ # - `call.payment.progress`
652
+ # - `call.payment.completed`
653
+ #
654
+ # **Test mode card numbers:** `4111111111111111` (Visa), `5555555555554444`
655
+ # (Mastercard), `378282246310005` (American Express), `6011111111111117`
656
+ # (Discover), `3065930009020004` (Diners Club), `3566002020360505` (JCB),
657
+ # `6200000000000005` (UnionPay), and `6771798021000008` (Maestro). Test-mode
658
+ # connectors reject other card numbers before contacting the configured processor.
659
+ # The UnionPay and Maestro numbers are accepted for processor testing, but Pay
660
+ # currently does not emit a card type for them.
661
+ #
662
+ # @overload pay(call_control_id, amount: nil, client_state: nil, command_id: nil, connector_name: nil, currency: nil, description: nil, inter_digit_timeout_millis: nil, language: nil, max_attempts: nil, metadata: nil, parameters: nil, payment_method: nil, payment_token: nil, prompts: nil, service_level: nil, timeout_millis: nil, transaction_type: nil, voice: nil, request_options: {})
663
+ #
664
+ # @param call_control_id [String] Unique identifier and token for controlling the call
665
+ #
666
+ # @param amount [Float] Amount to charge. Required when `transaction_type` is `charge`.
667
+ #
668
+ # @param client_state [String] Base64-encoded state included in subsequent webhooks.
669
+ #
670
+ # @param command_id [String] Idempotency key for the command. Telnyx ignores a duplicate command with the sam
671
+ #
672
+ # @param connector_name [String] Name of the Pay connector used to process the transaction.
673
+ #
674
+ # @param currency [Symbol, Telnyx::Models::Calls::ActionPayParams::Currency] Currency used for the transaction. Pay currently supports USD only.
675
+ #
676
+ # @param description [String] Optional description forwarded with the payment transaction.
677
+ #
678
+ # @param inter_digit_timeout_millis [Integer] Time in milliseconds to wait between consecutive DTMF digits.
679
+ #
680
+ # @param language [String] Language used for payment prompts.
681
+ #
682
+ # @param max_attempts [Integer] Maximum number of attempts for each payment collection step.
683
+ #
684
+ # @param metadata [Hash{Symbol=>Object}] Metadata forwarded to the Pay connector.
685
+ #
686
+ # @param parameters [Hash{Symbol=>Object}] Additional parameters forwarded to the Pay connector.
687
+ #
688
+ # @param payment_method [Symbol, Telnyx::Models::Calls::ActionPayParams::PaymentMethod] Payment method to collect.
689
+ #
690
+ # @param payment_token [String] Existing payment token. When supplied, payment-detail collection is skipped.
691
+ #
692
+ # @param prompts [Telnyx::Models::Calls::ActionPayParams::Prompts] Custom text-to-speech prompts keyed by payment collection step.
693
+ #
694
+ # @param service_level [String] Speech synthesis service level used for payment prompts. Pay defaults to `premiu
695
+ #
696
+ # @param timeout_millis [Integer] Time in milliseconds to wait for DTMF input for each collection step.
697
+ #
698
+ # @param transaction_type [Symbol, Telnyx::Models::Calls::ActionPayParams::TransactionType] Transaction to perform. If omitted, Pay infers `tokenize` when `amount` is absen
699
+ #
700
+ # @param voice [String] Voice used for payment prompts. Accepts `male`, `female`, or a provider voice in
701
+ #
702
+ # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
703
+ #
704
+ # @return [Telnyx::Models::Calls::ActionPayResponse]
705
+ #
706
+ # @see Telnyx::Models::Calls::ActionPayParams
707
+ def pay(call_control_id, params = {})
708
+ parsed, options = Telnyx::Calls::ActionPayParams.dump_request(params)
709
+ @client.request(
710
+ method: :post,
711
+ path: ["calls/%1$s/actions/pay", call_control_id],
712
+ body: parsed,
713
+ model: Telnyx::Models::Calls::ActionPayResponse,
714
+ options: options
715
+ )
716
+ end
717
+
637
718
  # Some parameter documentations has been truncated, see
638
719
  # {Telnyx::Models::Calls::ActionReferParams} for more details.
639
720
  #
@@ -890,7 +971,7 @@ module Telnyx
890
971
  # - `call.conversation.ended`
891
972
  # - `call.conversation_insights.generated`
892
973
  #
893
- # @overload start_ai_assistant(call_control_id, assistant: nil, client_state: nil, command_id: nil, greeting: nil, interruption_settings: nil, message_history: nil, participants: nil, send_message_history_updates: nil, transcription: nil, voice: nil, voice_settings: nil, request_options: {})
974
+ # @overload start_ai_assistant(call_control_id, assistant: nil, client_state: nil, command_id: nil, greeting: nil, interruption_settings: nil, message_history: nil, participants: nil, send_message_history_updates: nil, transcription: nil, request_options: {})
894
975
  #
895
976
  # @param call_control_id [String] Unique identifier and token for controlling the call
896
977
  #
@@ -912,10 +993,6 @@ module Telnyx
912
993
  #
913
994
  # @param transcription [Telnyx::Models::Calls::TranscriptionConfig] The settings associated with speech to text for the voice assistant. This is onl
914
995
  #
915
- # @param voice [String] The voice to be used by the voice assistant. Currently we support ElevenLabs, Te
916
- #
917
- # @param voice_settings [Telnyx::Models::Calls::ElevenLabsVoiceSettings, Telnyx::Models::Calls::TelnyxVoiceSettings, Telnyx::Models::Calls::AwsVoiceSettings, Telnyx::Models::AzureVoiceSettings, Telnyx::Models::RimeVoiceSettings, Telnyx::Models::ResembleVoiceSettings, Telnyx::Models::XaiVoiceSettings] The settings associated with the voice selected
918
- #
919
996
  # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
920
997
  #
921
998
  # @return [Telnyx::Models::Calls::ActionStartAIAssistantResponse]
@@ -1339,7 +1416,7 @@ module Telnyx
1339
1416
  #
1340
1417
  # @param transcription_engine [Symbol, Telnyx::Models::Calls::TranscriptionStartRequest::TranscriptionEngine] Engine to use for speech recognition. Legacy values `A` - `Google`, `B` - `Telny
1341
1418
  #
1342
- # @param transcription_engine_config [Telnyx::Models::Calls::TranscriptionEngineGoogleConfig, Telnyx::Models::Calls::TranscriptionEngineTelnyxConfig, Telnyx::Models::Calls::TranscriptionEngineAzureConfig, Telnyx::Models::Calls::TranscriptionEngineXaiConfig, Telnyx::Models::Calls::TranscriptionEngineAssemblyaiConfig, Telnyx::Models::Calls::TranscriptionEngineSpeechmaticsConfig, Telnyx::Models::Calls::TranscriptionEngineSonioxConfig, Telnyx::Models::Calls::TranscriptionEngineParakeetConfig, Telnyx::Models::Calls::TranscriptionEngineAConfig, Telnyx::Models::Calls::TranscriptionEngineBConfig, Telnyx::Models::Calls::DeepgramNova2Config, Telnyx::Models::Calls::DeepgramNova3Config]
1419
+ # @param transcription_engine_config [Telnyx::Models::Calls::TranscriptionEngineGoogleConfig, Telnyx::Models::Calls::TranscriptionEngineTelnyxConfig, Telnyx::Models::Calls::TranscriptionEngineAzureConfig, Telnyx::Models::Calls::TranscriptionEngineXaiConfig, Telnyx::Models::Calls::TranscriptionEngineAssemblyaiConfig, Telnyx::Models::Calls::TranscriptionEngineSpeechmaticsConfig, Telnyx::Models::Calls::TranscriptionEngineSonioxConfig, Telnyx::Models::Calls::TranscriptionEngineParakeetConfig, Telnyx::Models::Calls::TranscriptionStartRequest::TranscriptionEngineConfig::Humain, Telnyx::Models::Calls::TranscriptionStartRequest::TranscriptionEngineConfig::Reson8, Telnyx::Models::Calls::TranscriptionEngineAConfig, Telnyx::Models::Calls::TranscriptionEngineBConfig, Telnyx::Models::Calls::DeepgramNova2Config, Telnyx::Models::Calls::DeepgramNova3Config]
1343
1420
  #
1344
1421
  # @param transcription_tracks [String] Indicates which leg of the call will be transcribed. Use `inbound` for the leg t
1345
1422
  #
@@ -1733,7 +1810,7 @@ module Telnyx
1733
1810
  # - `call.machine.premium.greeting.ended` if `answering_machine_detection=premium`
1734
1811
  # was requested and a beep was detected
1735
1812
  #
1736
- # @overload transfer(call_control_id, to:, answering_machine_detection: nil, answering_machine_detection_config: nil, audio_url: nil, client_state: nil, command_id: nil, custom_headers: nil, early_media: nil, from: nil, from_display_name: nil, media_encryption: nil, media_name: nil, mute_dtmf: nil, park_after_unbridge: nil, preferred_codecs: nil, privacy: nil, record: nil, record_channels: nil, record_custom_file_name: nil, record_format: nil, record_max_length: nil, record_timeout_secs: nil, record_track: nil, record_trim: nil, send_digits_on_answer: nil, sip_auth_password: nil, sip_auth_username: nil, sip_headers: nil, sip_region: nil, sip_transport_protocol: nil, sound_modifications: nil, target_leg_client_state: nil, time_limit_secs: nil, timeout_secs: nil, webhook_retries_policies: nil, webhook_url: nil, webhook_url_method: nil, webhook_urls: nil, webhook_urls_method: nil, request_options: {})
1813
+ # @overload transfer(call_control_id, to:, answering_machine_detection: nil, answering_machine_detection_config: nil, audio_url: nil, client_state: nil, command_id: nil, custom_headers: nil, early_media: nil, from: nil, from_display_name: nil, media_encryption: nil, media_name: nil, mute_dtmf: nil, park_after_unbridge: nil, preferred_codecs: nil, privacy: nil, record: nil, record_channels: nil, record_custom_file_name: nil, record_format: nil, record_max_length: nil, record_timeout_secs: nil, record_track: nil, record_trim: nil, route_to_mobile: nil, send_digits_on_answer: nil, sip_auth_password: nil, sip_auth_username: nil, sip_headers: nil, sip_region: nil, sip_transport_protocol: nil, sound_modifications: nil, target_leg_client_state: nil, time_limit_secs: nil, timeout_secs: nil, webhook_retries_policies: nil, webhook_url: nil, webhook_url_method: nil, webhook_urls: nil, webhook_urls_method: nil, request_options: {})
1737
1814
  #
1738
1815
  # @param call_control_id [String] Unique identifier and token for controlling the call
1739
1816
  #
@@ -1785,6 +1862,8 @@ module Telnyx
1785
1862
  #
1786
1863
  # @param record_trim [Symbol, Telnyx::Models::Calls::ActionTransferParams::RecordTrim] When set to `trim-silence`, silence will be removed from the beginning and end o
1787
1864
  #
1865
+ # @param route_to_mobile [Boolean] When set to true, routes the call directly to the mobile device associated with
1866
+ #
1788
1867
  # @param send_digits_on_answer [String] DTMF digits to send automatically after the transfer destination answers. Useful
1789
1868
  #
1790
1869
  # @param sip_auth_password [String] SIP Authentication password used for SIP challenges.
@@ -35,7 +35,7 @@ module Telnyx
35
35
  # When the `record` parameter is set to `record-from-answer`, the response will
36
36
  # include a `recording_id` field.
37
37
  #
38
- # @overload dial(connection_id:, from:, to:, answering_machine_detection: nil, answering_machine_detection_config: nil, assistant: nil, audio_url: nil, billing_group_id: nil, bridge_intent: nil, bridge_on_answer: nil, client_state: nil, command_id: nil, conference_config: nil, conversation_relay_config: nil, custom_headers: nil, deepfake_detection: nil, dialogflow_config: nil, enable_dialogflow: nil, from_display_name: nil, link_to: nil, media_encryption: nil, media_name: nil, park_after_unbridge: nil, preferred_codecs: nil, prevent_double_bridge: nil, privacy: nil, record: nil, record_channels: nil, record_custom_file_name: nil, record_format: nil, record_max_length: nil, record_timeout_secs: nil, record_track: nil, record_trim: nil, retry_on_timeout: nil, send_digits_on_answer: nil, send_silence_when_idle: nil, sip_auth_password: nil, sip_auth_username: nil, sip_headers: nil, sip_region: nil, sip_transport_protocol: nil, sound_modifications: nil, stream_auth_token: nil, stream_bidirectional_codec: nil, stream_bidirectional_mode: nil, stream_bidirectional_sampling_rate: nil, stream_bidirectional_target_legs: nil, stream_codec: nil, stream_establish_before_call_originate: nil, stream_track: nil, stream_url: nil, supervise_call_control_id: nil, supervisor_role: nil, time_limit_secs: nil, timeout_secs: nil, transcription: nil, transcription_config: nil, webhook_retries_policies: nil, webhook_url: nil, webhook_url_method: nil, webhook_urls: nil, webhook_urls_method: nil, request_options: {})
38
+ # @overload dial(connection_id:, from:, to:, answering_machine_detection: nil, answering_machine_detection_config: nil, assistant: nil, audio_url: nil, billing_group_id: nil, bridge_intent: nil, bridge_on_answer: nil, client_state: nil, command_id: nil, conference_config: nil, conversation_relay_config: nil, custom_headers: nil, deepfake_detection: nil, dialogflow_config: nil, enable_dialogflow: nil, from_display_name: nil, link_to: nil, media_encryption: nil, media_name: nil, park_after_unbridge: nil, preferred_codecs: nil, prevent_double_bridge: nil, privacy: nil, record: nil, record_channels: nil, record_custom_file_name: nil, record_format: nil, record_max_length: nil, record_timeout_secs: nil, record_track: nil, record_trim: nil, retry_on_timeout: nil, route_to_mobile: nil, send_digits_on_answer: nil, send_silence_when_idle: nil, sip_auth_password: nil, sip_auth_username: nil, sip_headers: nil, sip_region: nil, sip_transport_protocol: nil, sound_modifications: nil, stream_auth_token: nil, stream_bidirectional_codec: nil, stream_bidirectional_mode: nil, stream_bidirectional_sampling_rate: nil, stream_bidirectional_target_legs: nil, stream_codec: nil, stream_establish_before_call_originate: nil, stream_track: nil, stream_url: nil, supervise_call_control_id: nil, supervisor_role: nil, time_limit_secs: nil, timeout_secs: nil, transcription: nil, transcription_config: nil, webhook_retries_policies: nil, webhook_url: nil, webhook_url_method: nil, webhook_urls: nil, webhook_urls_method: nil, request_options: {})
39
39
  #
40
40
  # @param connection_id [String] The ID of the Call Control App (formerly ID of the connection) to be used when d
41
41
  #
@@ -107,6 +107,8 @@ module Telnyx
107
107
  #
108
108
  # @param retry_on_timeout [Boolean] Whether to keep trying the remaining routing paths (e.g. alternate providers/gat
109
109
  #
110
+ # @param route_to_mobile [Boolean] When set to true, routes the call directly to the mobile device associated with
111
+ #
110
112
  # @param send_digits_on_answer [String] DTMF digits to send automatically after the called party answers. Useful for rea
111
113
  #
112
114
  # @param send_silence_when_idle [Boolean] Generate silence RTP packets when no transmission available.
@@ -15,7 +15,7 @@ module Telnyx
15
15
  #
16
16
  # @param backend [Symbol, Telnyx::Models::CustomStorageConfiguration::Backend]
17
17
  #
18
- # @param configuration [Telnyx::Models::GcsConfigurationData, Telnyx::Models::S3ConfigurationData, Telnyx::Models::AzureConfigurationData]
18
+ # @param configuration [Telnyx::Models::GcsConfigurationData, Telnyx::Models::S3ConfigurationData, Telnyx::Models::CustomStorageConfiguration::Configuration::S3Generic, Telnyx::Models::AzureConfigurationData]
19
19
  #
20
20
  # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
21
21
  #
@@ -67,7 +67,7 @@ module Telnyx
67
67
  #
68
68
  # @param backend [Symbol, Telnyx::Models::CustomStorageConfiguration::Backend]
69
69
  #
70
- # @param configuration [Telnyx::Models::GcsConfigurationData, Telnyx::Models::S3ConfigurationData, Telnyx::Models::AzureConfigurationData]
70
+ # @param configuration [Telnyx::Models::GcsConfigurationData, Telnyx::Models::S3ConfigurationData, Telnyx::Models::CustomStorageConfiguration::Configuration::S3Generic, Telnyx::Models::AzureConfigurationData]
71
71
  #
72
72
  # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
73
73
  #
@@ -16,15 +16,35 @@ module Telnyx
16
16
  # endpoint). Until it is, this returns `409` and no references are stored.
17
17
  #
18
18
  # The request body carries exactly two business references plus one financial
19
- # reference. On success the references are stored and the response echoes them in
20
- # the same shape as the GET. Submitting again converges on the already-stored
21
- # references rather than erroring.
19
+ # reference. The first submission stores them and returns `201`. Resubmitting
20
+ # returns `200`: identical values are simply confirmed and nothing is written,
21
+ # while changed values replace those references.
22
+ #
23
+ # Replacing a reference is allowed only while the DIR itself is still editable,
24
+ # the same window in which a single reference may be updated; once the DIR has
25
+ # been submitted for vetting this returns `400`. A replaced reference's pending
26
+ # verification call is cancelled and its dial-in code stops working, and the
27
+ # replacement contact is emailed fresh scheduling details. References whose
28
+ # details did not change keep their existing call, code, and the notice already
29
+ # sent to them.
30
+ #
31
+ # The response always echoes the stored references in the same shape as the GET.
32
+ #
33
+ # Who qualifies: the two business references confirm the company's reputation and
34
+ # operations. Each should be a senior contact at an organization the business
35
+ # works with, such as a vendor, partner, or client: a C-suite executive (CEO, CFO,
36
+ # CTO, COO), an owner or founder as reflected in the company's corporate records,
37
+ # or a senior manager, director, or executive. The financial reference confirms
38
+ # the company pays its bills and should be a licensed certified public accountant
39
+ # (CPA) the company uses, a contact at a bank or financial institution that has a
40
+ # relationship with the company, or a reasonable alternative banking or financial
41
+ # reference.
22
42
  #
23
43
  # @overload create(dir_id, business_references:, financial_reference:, request_options: {})
24
44
  #
25
45
  # @param dir_id [String] The DIR id. Lowercase UUID.
26
46
  #
27
- # @param business_references [Array<Telnyx::Models::Dir::ReferenceInput>] Exactly two business references.
47
+ # @param business_references [Array<Telnyx::Models::Dir::ReferenceInput>] Exactly two business references. Array order determines each one's slot: the fir
28
48
  #
29
49
  # @param financial_reference [Telnyx::Models::Dir::ReferenceInput] One reference supplied at submit. The reference type is implied by the field tha
30
50
  #
@@ -58,7 +78,7 @@ module Telnyx
58
78
  #
59
79
  # @overload update(slot, dir_id:, ref_type:, email: nil, full_name: nil, job_title: nil, organization: nil, phone_e164: nil, relationship_to_registrant: nil, timezone: nil, request_options: {})
60
80
  #
61
- # @param slot [Integer] Path param: Reference slot. Business references use slots 0 and 1; the financial
81
+ # @param slot [Integer] Path param: Reference slot, counting from 1. Business references are slots 1 and
62
82
  #
63
83
  # @param dir_id [String] Path param: The DIR id. Lowercase UUID.
64
84
  #
@@ -104,10 +124,12 @@ module Telnyx
104
124
 
105
125
  # List the business and financial references submitted for a DIR.
106
126
  #
107
- # Returns the two business references (slots 0 and 1) followed by the single
108
- # financial reference. Each entry carries only the customer-supplied details
109
- # (name, title, organization, relationship, phone, email, timezone). Returns an
110
- # empty list when no references were submitted.
127
+ # Returns the two business references (slots 1 and 2) followed by the single
128
+ # financial reference. Each entry carries its `ref_type` and `slot`, which
129
+ # together address the reference when updating it, alongside the details supplied
130
+ # when it was submitted (name, title, organization, relationship, phone, email,
131
+ # timezone). No internal identifiers are exposed. Returns an empty list when no
132
+ # references were submitted.
111
133
  #
112
134
  # @overload list(dir_id, request_options: {})
113
135
  #
@@ -288,8 +288,9 @@ module Telnyx
288
288
  # numbers flip back to `submitted`. When re-submitting from `verified`, the
289
289
  # existing registration stays live throughout the new vetting cycle.
290
290
  #
291
- # Returns `400` from `submitted`/`in_review`/`permanently_rejected`. Returns `409`
292
- # if the DIR has an unresolved infringement claim.
291
+ # Returns `400` from `submitted`/`in_review`/`permanently_rejected`. Returns `400`
292
+ # if the DIR's business and financial references have not been submitted. Returns
293
+ # `409` if the DIR has an unresolved infringement claim.
293
294
  #
294
295
  # @overload submit(dir_id, request_options: {})
295
296
  #
@@ -0,0 +1,79 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Telnyx
4
+ module Resources
5
+ class EmailBlocks
6
+ # Async CSV import of competitor suppression lists.
7
+ class Import
8
+ # Some parameter documentations has been truncated, see
9
+ # {Telnyx::Models::EmailBlocks::ImportCreateParams} for more details.
10
+ #
11
+ # Accepts `multipart/form-data` with a `file` field (the CSV) and an optional
12
+ # `block_ttl_days` (integer >0, default 30). Validates:
13
+ #
14
+ # - content ≤ 25 MiB, else `413`
15
+ # - row count ≤ 250 000, else `413`
16
+ # - header-only / all-blank / undetectable provider → `400` Returns `202` with the
17
+ # import record (status `pending`); an Oban worker (`EmailBlockImportWorker`,
18
+ # max_attempts 3) transitions `pending → processing → completed | failed`.
19
+ # `block_ttl_days` applies only to imported `manual_block` rows; other reasons
20
+ # get `expires_at: nil`. Provider is auto-detected from the CSV header
21
+ # (`sendgrid` / `mailgun` / `ses` / `generic`).
22
+ #
23
+ # @overload create(file:, block_ttl_days: nil, request_options: {})
24
+ #
25
+ # @param file [Pathname, StringIO, IO, String, Telnyx::FilePart] The CSV file (Plug.Upload). Missing/non-upload → 400.
26
+ #
27
+ # @param block_ttl_days [Integer] TTL for imported `manual_block` rows; other reasons get `expires_at: null`. Inva
28
+ #
29
+ # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
30
+ #
31
+ # @return [Telnyx::Models::EmailBlocks::EmailBlockImportResponse]
32
+ #
33
+ # @see Telnyx::Models::EmailBlocks::ImportCreateParams
34
+ def create(params)
35
+ parsed, options = Telnyx::EmailBlocks::ImportCreateParams.dump_request(params)
36
+ @client.request(
37
+ method: :post,
38
+ path: "email_blocks/import",
39
+ headers: {"content-type" => "multipart/form-data"},
40
+ body: parsed,
41
+ model: Telnyx::EmailBlocks::EmailBlockImportResponse,
42
+ options: options
43
+ )
44
+ end
45
+
46
+ # Account-scoped fetch (cross-account → 404; malformed UUID → 404). Nullable
47
+ # fields are omitted until terminal: `provider`/`completed_at` when nil;
48
+ # `processed_rows`/`created_count`/`existing_count`/ `skipped_count`/`error_count`
49
+ # only when `status == completed`; `errors` only when non-empty; `failure_reason`
50
+ # only on terminal failure.
51
+ #
52
+ # @overload retrieve(id, request_options: {})
53
+ #
54
+ # @param id [String] Resource UUID. Malformed UUIDs are treated as not-found (not 400).
55
+ #
56
+ # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
57
+ #
58
+ # @return [Telnyx::Models::EmailBlocks::EmailBlockImportResponse]
59
+ #
60
+ # @see Telnyx::Models::EmailBlocks::ImportRetrieveParams
61
+ def retrieve(id, params = {})
62
+ @client.request(
63
+ method: :get,
64
+ path: ["email_blocks/import/%1$s", id],
65
+ model: Telnyx::EmailBlocks::EmailBlockImportResponse,
66
+ options: params[:request_options]
67
+ )
68
+ end
69
+
70
+ # @api private
71
+ #
72
+ # @param client [Telnyx::Client]
73
+ def initialize(client:)
74
+ @client = client
75
+ end
76
+ end
77
+ end
78
+ end
79
+ end
@@ -0,0 +1,249 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Telnyx
4
+ module Resources
5
+ # Recipient suppression records (`/v2/email_blocks`).
6
+ class EmailBlocks
7
+ # Async CSV import of competitor suppression lists.
8
+ # @return [Telnyx::Resources::EmailBlocks::Import]
9
+ attr_reader :import
10
+
11
+ # Creates a suppression with `reason: manual_block` and `source: manual`.
12
+ # Caller-supplied `reason` / `source` are **ignored**; `scope` is **derived**
13
+ # server-side from `domain_id` / `from` and is never trusted. Idempotent: if a
14
+ # matching row already exists (NULL-safe dedupe key: account_id, scope, to,
15
+ # reason, domain_id, from), returns the existing record with `200` (no new audit
16
+ # event).
17
+ #
18
+ # `bounce_category`, `dsn_code`, `meta`, and `group_id` are **not accepted** on
19
+ # the public surface. Use the unsubscribe-group suppression endpoint or the
20
+ # internal create surface for those.
21
+ #
22
+ # @overload create(to:, domain_id: nil, expires_at: nil, from: nil, request_options: {})
23
+ #
24
+ # @param to [String] Recipient address (normalized: trim + lower-case).
25
+ #
26
+ # @param domain_id [String, nil] `null` ⇒ account scope.
27
+ #
28
+ # @param expires_at [Time, nil]
29
+ #
30
+ # @param from [String, nil] Sender address (normalized). `null` ⇒ account/domain scope.
31
+ #
32
+ # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
33
+ #
34
+ # @return [Telnyx::Models::EmailBlockResponse]
35
+ #
36
+ # @see Telnyx::Models::EmailBlockCreateParams
37
+ def create(params)
38
+ parsed, options = Telnyx::EmailBlockCreateParams.dump_request(params)
39
+ @client.request(
40
+ method: :post,
41
+ path: "email_blocks",
42
+ body: parsed,
43
+ model: Telnyx::EmailBlockResponse,
44
+ options: options
45
+ )
46
+ end
47
+
48
+ # Retrieve a suppression
49
+ #
50
+ # @overload retrieve(id, request_options: {})
51
+ #
52
+ # @param id [String] Resource UUID. Malformed UUIDs are treated as not-found (not 400).
53
+ #
54
+ # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
55
+ #
56
+ # @return [Telnyx::Models::EmailBlockResponse]
57
+ #
58
+ # @see Telnyx::Models::EmailBlockRetrieveParams
59
+ def retrieve(id, params = {})
60
+ @client.request(
61
+ method: :get,
62
+ path: ["email_blocks/%1$s", id],
63
+ model: Telnyx::EmailBlockResponse,
64
+ options: params[:request_options]
65
+ )
66
+ end
67
+
68
+ # Some parameter documentations has been truncated, see
69
+ # {Telnyx::Models::EmailBlockListParams} for more details.
70
+ #
71
+ # Account-scoped list. Two mutually exclusive pagination modes:
72
+ #
73
+ # - **Offset**: `page[number]` (default 1) + `page[size]` (default 25, max 100).
74
+ # `meta` contains `total_pages`.
75
+ # - **Cursor**: `page[after]` and/or `page[before]` (opaque `Base.url_encode64` of
76
+ # `{"created_at","id"}`). Cannot combine with `page[number]`; `after`+`before`
77
+ # together is an error. `meta` contains `next_cursor` / `previous_cursor`
78
+ # (omitted when their flag is false).
79
+ #
80
+ # Sort defaults to `-created_at` (desc); only `created_at` is sortable. A `--`
81
+ # prefix is an error. `nil`/empty filter values are silently dropped.
82
+ #
83
+ # @overload list(filter_created_after: nil, filter_created_before: nil, filter_domain_id: nil, filter_reason: nil, page_after: nil, page_before: nil, page_number: nil, page_size: nil, sort: nil, request_options: {})
84
+ #
85
+ # @param filter_created_after [Time] `created_at > value` (ISO 8601).
86
+ #
87
+ # @param filter_created_before [Time] `created_at < value` (ISO 8601).
88
+ #
89
+ # @param filter_domain_id [String] Exact-match filter on domain_id (UUID).
90
+ #
91
+ # @param filter_reason [Symbol, Telnyx::Models::EmailBlockListParams::FilterReason] Exact-match filter on reason.
92
+ #
93
+ # @param page_after [String] Opaque cursor (`Base.url_encode64` of `{"created_at","id"}`). Cursor mode; mutua
94
+ #
95
+ # @param page_before [String] Opaque cursor (see `page[after]`). Mutually exclusive with `page[after]` and `pa
96
+ #
97
+ # @param page_number [Integer] Offset page number (≥1, default 1).
98
+ #
99
+ # @param page_size [Integer] Page size (1–100, default 25).
100
+ #
101
+ # @param sort [Symbol, Telnyx::Models::EmailBlockListParams::Sort] Sort field. Leading `-` = desc; only `created_at` is sortable. Default `-created
102
+ #
103
+ # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
104
+ #
105
+ # @return [Telnyx::Internal::DefaultFlatPagination<Telnyx::Models::EmailBlock>]
106
+ #
107
+ # @see Telnyx::Models::EmailBlockListParams
108
+ def list(params = {})
109
+ parsed, options = Telnyx::EmailBlockListParams.dump_request(params)
110
+ query = Telnyx::Internal::Util.encode_query_params(parsed)
111
+ @client.request(
112
+ method: :get,
113
+ path: "email_blocks",
114
+ query: query.transform_keys(
115
+ filter_created_after: "filter[created_after]",
116
+ filter_created_before: "filter[created_before]",
117
+ filter_domain_id: "filter[domain_id]",
118
+ filter_reason: "filter[reason]",
119
+ page_after: "page[after]",
120
+ page_before: "page[before]",
121
+ page_number: "page[number]",
122
+ page_size: "page[size]"
123
+ ),
124
+ page: Telnyx::Internal::DefaultFlatPagination,
125
+ model: Telnyx::EmailBlock,
126
+ options: options
127
+ )
128
+ end
129
+
130
+ # Soft-deletes (status → `removed`; tombstone retained). A `removed` audit event
131
+ # is appended unless the block was already `removed` (idempotent — returns the
132
+ # existing row with `200` and no new event). Mutates `updated_at`.
133
+ #
134
+ # @overload delete(id, request_options: {})
135
+ #
136
+ # @param id [String] Resource UUID. Malformed UUIDs are treated as not-found (not 400).
137
+ #
138
+ # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
139
+ #
140
+ # @return [Telnyx::Models::EmailBlockResponse]
141
+ #
142
+ # @see Telnyx::Models::EmailBlockDeleteParams
143
+ def delete(id, params = {})
144
+ @client.request(
145
+ method: :delete,
146
+ path: ["email_blocks/%1$s", id],
147
+ model: Telnyx::EmailBlockResponse,
148
+ options: params[:request_options]
149
+ )
150
+ end
151
+
152
+ # Offset pagination only (`page[number]` default 1, `page[size]` default **50**,
153
+ # max 100). No `sort`, no `filter`, no cursor — ordering is fixed
154
+ # `desc occurred_at, desc id`. Verifies the block belongs to the account first
155
+ # (cross-account → 404).
156
+ #
157
+ # @overload retrieve_events(id, page_number: nil, page_size: nil, request_options: {})
158
+ #
159
+ # @param id [String] Resource UUID. Malformed UUIDs are treated as not-found (not 400).
160
+ #
161
+ # @param page_number [Integer] Offset page number (≥1, default 1).
162
+ #
163
+ # @param page_size [Integer] Page size (default 50, max 100).
164
+ #
165
+ # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
166
+ #
167
+ # @return [Telnyx::Models::EmailBlockRetrieveEventsResponse]
168
+ #
169
+ # @see Telnyx::Models::EmailBlockRetrieveEventsParams
170
+ def retrieve_events(id, params = {})
171
+ parsed, options = Telnyx::EmailBlockRetrieveEventsParams.dump_request(params)
172
+ query = Telnyx::Internal::Util.encode_query_params(parsed)
173
+ @client.request(
174
+ method: :get,
175
+ path: ["email_blocks/%1$s/events", id],
176
+ query: query.transform_keys(page_number: "page[number]", page_size: "page[size]"),
177
+ model: Telnyx::Models::EmailBlockRetrieveEventsResponse,
178
+ options: options
179
+ )
180
+ end
181
+
182
+ # Some parameter documentations has been truncated, see
183
+ # {Telnyx::Models::EmailBlockRetrieveExportParams} for more details.
184
+ #
185
+ # Streams the account's suppressions as a chunked CSV (server-side cursor; never
186
+ # materialized). Content-type `text/csv`, header
187
+ # `Content-Disposition: attachment; filename="email_blocks_export.csv"`.
188
+ #
189
+ # Filters (`filter[reason]`, `filter[domain_id]`, `filter[created_after]`,
190
+ # `filter[created_before]`) are the only params that affect output. `sort` and
191
+ # `page[*]` are **parsed** (bad values still produce `400`) but **ignored** — rows
192
+ # stream `ORDER BY created_at ASC, id ASC` with no pagination.
193
+ #
194
+ # CSV columns:
195
+ # `id,to,from,reason,source,scope,status,domain_id, created_at,updated_at,expires_at,group_id`.
196
+ # The CSV carries the `group_id` column so group-scoped suppressions' group link
197
+ # survives the export (empty for account-scope rows).
198
+ #
199
+ # @overload retrieve_export(filter_created_after: nil, filter_created_before: nil, filter_domain_id: nil, filter_reason: nil, page_number: nil, page_size: nil, sort: nil, request_options: {})
200
+ #
201
+ # @param filter_created_after [Time] `created_at > value` (ISO 8601).
202
+ #
203
+ # @param filter_created_before [Time] `created_at < value` (ISO 8601).
204
+ #
205
+ # @param filter_domain_id [String] Exact-match filter on domain_id (UUID).
206
+ #
207
+ # @param filter_reason [Symbol, Telnyx::Models::EmailBlockRetrieveExportParams::FilterReason] Exact-match filter on reason.
208
+ #
209
+ # @param page_number [Integer] Offset page number (≥1, default 1).
210
+ #
211
+ # @param page_size [Integer] Page size (1–100, default 25).
212
+ #
213
+ # @param sort [Symbol, Telnyx::Models::EmailBlockRetrieveExportParams::Sort] Sort field. Leading `-` = desc; only `created_at` is sortable. Default `-created
214
+ #
215
+ # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
216
+ #
217
+ # @return [String]
218
+ #
219
+ # @see Telnyx::Models::EmailBlockRetrieveExportParams
220
+ def retrieve_export(params = {})
221
+ parsed, options = Telnyx::EmailBlockRetrieveExportParams.dump_request(params)
222
+ query = Telnyx::Internal::Util.encode_query_params(parsed)
223
+ @client.request(
224
+ method: :get,
225
+ path: "email_blocks/export",
226
+ query: query.transform_keys(
227
+ filter_created_after: "filter[created_after]",
228
+ filter_created_before: "filter[created_before]",
229
+ filter_domain_id: "filter[domain_id]",
230
+ filter_reason: "filter[reason]",
231
+ page_number: "page[number]",
232
+ page_size: "page[size]"
233
+ ),
234
+ headers: {"accept" => "text/csv"},
235
+ model: String,
236
+ options: options
237
+ )
238
+ end
239
+
240
+ # @api private
241
+ #
242
+ # @param client [Telnyx::Client]
243
+ def initialize(client:)
244
+ @client = client
245
+ @import = Telnyx::Resources::EmailBlocks::Import.new(client: client)
246
+ end
247
+ end
248
+ end
249
+ end