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
@@ -0,0 +1,299 @@
1
+ # typed: strong
2
+
3
+ module Telnyx
4
+ module Resources
5
+ # Send and manage email messages. Legacy `/v2/emails` routes are aliases for these
6
+ # endpoints.
7
+ class EmailMessages
8
+ # Send and manage email messages. Legacy `/v2/emails` routes are aliases for these
9
+ # endpoints.
10
+ sig { returns(Telnyx::Resources::EmailMessages::Recipients) }
11
+ attr_reader :recipients
12
+
13
+ # Queues, schedules, or sandbox-sends an email message. The legacy `/v2/emails`
14
+ # POST route is a backward-compatible alias for this operation.
15
+ #
16
+ # `subject` is required unless `template_id` is supplied. When using
17
+ # `template_id`, do not also provide `subject`, `html_body`, or `text_body`; the
18
+ # template is rendered with `template_variables`.
19
+ #
20
+ # Note: template lookup failures (not found, wrong account) return 400, not 404.
21
+ sig do
22
+ params(
23
+ from: T.any(String, Telnyx::EmailInboxes::EmailAddress::OrHash),
24
+ to:
25
+ T::Array[T.any(String, Telnyx::EmailInboxes::EmailAddress::OrHash)],
26
+ attachments: T::Array[Telnyx::AttachmentRequest::OrHash],
27
+ bcc:
28
+ T::Array[T.any(String, Telnyx::EmailInboxes::EmailAddress::OrHash)],
29
+ cc:
30
+ T::Array[T.any(String, Telnyx::EmailInboxes::EmailAddress::OrHash)],
31
+ forward_of_message_id: T.nilable(String),
32
+ from_name: String,
33
+ group_id: T.nilable(String),
34
+ headers: T::Hash[Symbol, String],
35
+ html_body: String,
36
+ ignore_suppression: T::Boolean,
37
+ in_reply_to_message_id: T.nilable(String),
38
+ inline_css: T::Boolean,
39
+ metadata: T::Hash[Symbol, T.anything],
40
+ reply_to: T.any(String, Telnyx::EmailInboxes::EmailAddress::OrHash),
41
+ reply_to_all: T.nilable(T::Boolean),
42
+ sandbox_mode: T::Boolean,
43
+ scheduled_at: T.nilable(Time),
44
+ send_at: Time,
45
+ subject: String,
46
+ tags: T::Array[String],
47
+ template_id: String,
48
+ template_variables: T::Hash[Symbol, T.anything],
49
+ text_body: String,
50
+ tracking_settings: Telnyx::TrackingSettings::OrHash,
51
+ idempotency_key: String,
52
+ request_options: Telnyx::RequestOptions::OrHash
53
+ ).returns(Telnyx::EmailInboxes::EmailMessageResponse)
54
+ end
55
+ def create(
56
+ # Body param
57
+ from:,
58
+ # Body param
59
+ to:,
60
+ # Body param
61
+ attachments: nil,
62
+ # Body param
63
+ bcc: nil,
64
+ # Body param
65
+ cc: nil,
66
+ # Body param: Telnyx message UUID of the message this send forwards. Forwarded
67
+ # messages start a NEW thread per RFC 5322 — NO `In-Reply-To` or `References`
68
+ # headers are set on the outbound MIME. The id is recorded in the message's
69
+ # metadata for EDR provenance only.
70
+ #
71
+ # The id is validated as a UUID but is NOT looked up against the message store —
72
+ # existence is the caller's responsibility (the forward is pure metadata; it does
73
+ # not affect delivery). Cannot be combined with `in_reply_to_message_id` (422).
74
+ forward_of_message_id: nil,
75
+ # Body param: Optional display name for string `from`; overrides `from.name` when
76
+ # provided.
77
+ from_name: nil,
78
+ # Body param: Optional unsubscribe-group UUID used for group-scoped suppression
79
+ # checks and unsubscribe handling.
80
+ group_id: nil,
81
+ # Body param: Custom email headers. Write-only; not returned in responses.
82
+ headers: nil,
83
+ # Body param: HTML email body. Returned only by `GET /email_messages/{id}`;
84
+ # omitted from create and list responses.
85
+ html_body: nil,
86
+ # Body param: When true, allows delivery to recipients whose suppressions
87
+ # explicitly permit an override. Hard bounces, spam complaints, and
88
+ # invalid-address suppressions cannot be overridden. Requires the `email:override`
89
+ # API scope.
90
+ ignore_suppression: nil,
91
+ # Body param: Telnyx message UUID of the message this send replies to. When
92
+ # provided, the API sets RFC 5322 `In-Reply-To` and `References` headers on the
93
+ # outbound MIME so the recipient's mailbox (Gmail/Outlook) threads it correctly.
94
+ # The parent is looked up under the caller's account scope; a UUID belonging to
95
+ # another account yields a non-enumerating 404.
96
+ #
97
+ # Wire-only (Phase 1): the API sets the headers and does NOT resolve or mutate
98
+ # `thread_id` on the server side. Messages sent without this parameter are
99
+ # standalone (no threading headers injected).
100
+ #
101
+ # Cannot be combined with `forward_of_message_id` (422).
102
+ in_reply_to_message_id: nil,
103
+ # Body param
104
+ inline_css: nil,
105
+ # Body param: Custom metadata. Write-only; not returned in responses.
106
+ metadata: nil,
107
+ # Body param: Reply-to address. If provided as an object with a name, only the
108
+ # email is stored; the name is ignored.
109
+ reply_to: nil,
110
+ # Body param: Indicates a reply-all intent. In Phase 1 (wire-only) this does not
111
+ # change the threading headers — recipient selection is customer- controlled
112
+ # (`to`/`cc`), and a thread is not defined by its audience. When the referenced
113
+ # message has no thread context, reply-all degrades to a plain reply (parent ID
114
+ # only in `References`). The resolution engine (separate work) will expand the
115
+ # ancestor chain at a later phase with no API change.
116
+ #
117
+ # Only meaningful alongside `in_reply_to_message_id`.
118
+ reply_to_all: nil,
119
+ # Body param
120
+ sandbox_mode: nil,
121
+ # Body param: Future ISO 8601 time to schedule sending. Invalid or past timestamps
122
+ # are silently ignored and the email is sent immediately. The legacy alias
123
+ # `send_at` is still accepted for backward compatibility; when both are provided,
124
+ # `scheduled_at` wins.
125
+ scheduled_at: nil,
126
+ # Body param: Deprecated alias for `scheduled_at`.
127
+ send_at: nil,
128
+ # Body param: Required unless `template_id` is supplied. When using a template,
129
+ # the template's subject is rendered; if the template has no subject or renders
130
+ # empty, the request returns 400.
131
+ subject: nil,
132
+ # Body param: Tags for categorization and reporting. Stored on the message and
133
+ # propagated to Email Detail Records. Not returned in API responses.
134
+ tags: nil,
135
+ # Body param
136
+ template_id: nil,
137
+ # Body param: Variables for Liquid template rendering. Non-object values may cause
138
+ # a 422 validation error on message creation, but are silently treated as an empty
139
+ # object for template rendering.
140
+ template_variables: nil,
141
+ # Body param: Plain text email body. Returned only by `GET /email_messages/{id}`;
142
+ # omitted from create and list responses.
143
+ text_body: nil,
144
+ # Body param: Per-send open and click tracking overrides. Omitted properties
145
+ # inherit the sender domain's tracking settings.
146
+ tracking_settings: nil,
147
+ # Header param: Optional opaque, unquoted key for safely retrying the same logical
148
+ # request. Keys must contain 1 to 255 letters, numbers, hyphens, or underscores.
149
+ # Generate a unique UUID v4 for each operation and reuse it only when retrying
150
+ # that operation with the same request. Invalid headers—including duplicate,
151
+ # empty, malformed, or overlong values—return 400 with error code 10015. A request
152
+ # already in progress with the same key returns 409; reusing the key with a
153
+ # different request returns 422. Only successful responses are replayed, for up to
154
+ # 24 hours. Do not include sensitive data in the key.
155
+ idempotency_key: nil,
156
+ request_options: {}
157
+ )
158
+ end
159
+
160
+ # The legacy `/v2/emails/{id}` GET route is a backward-compatible alias for this
161
+ # operation.
162
+ sig do
163
+ params(
164
+ id: String,
165
+ request_options: Telnyx::RequestOptions::OrHash
166
+ ).returns(Telnyx::Models::EmailMessageRetrieveResponse)
167
+ end
168
+ def retrieve(
169
+ # Email message UUID.
170
+ id,
171
+ request_options: {}
172
+ )
173
+ end
174
+
175
+ # Lists messages sorted newest first by `created_at desc, id desc`. No filters
176
+ # other than cursor pagination are implemented. The legacy `/v2/emails` GET route
177
+ # is a backward-compatible alias for this operation.
178
+ sig do
179
+ params(
180
+ page_cursor: String,
181
+ page_size: Integer,
182
+ request_options: Telnyx::RequestOptions::OrHash
183
+ ).returns(Telnyx::Models::EmailMessageListResponse)
184
+ end
185
+ def list(
186
+ # Opaque URL-safe Base64 cursor returned by a previous list response.
187
+ page_cursor: nil,
188
+ # Number of results to return. Defaults to 25; maximum is 100. Invalid values are
189
+ # clamped to the valid range.
190
+ page_size: nil,
191
+ request_options: {}
192
+ )
193
+ end
194
+
195
+ # Permanently deletes an account-scoped email message, its events, its durable
196
+ # recipients, and unshared attachment objects. Returns 404 when the message does
197
+ # not exist in the authenticated account. The legacy `/v2/emails/{id}` DELETE
198
+ # route is a backward-compatible alias.
199
+ sig do
200
+ params(id: String, request_options: Telnyx::RequestOptions::OrHash).void
201
+ end
202
+ def delete(
203
+ # Email message UUID.
204
+ id,
205
+ request_options: {}
206
+ )
207
+ end
208
+
209
+ # Creates up to 50 email messages in a single request.
210
+ sig do
211
+ params(
212
+ messages: T::Array[Telnyx::EmailMessageBatchParams::Message::OrHash],
213
+ sandbox_mode: T::Boolean,
214
+ idempotency_key: String,
215
+ request_options: Telnyx::RequestOptions::OrHash
216
+ ).returns(Telnyx::Models::EmailMessageBatchResponse)
217
+ end
218
+ def batch(
219
+ # Body param
220
+ messages:,
221
+ # Body param: Applies sandbox mode to all messages in the batch. Overrides any
222
+ # per-message sandbox_mode in the messages array.
223
+ sandbox_mode: nil,
224
+ # Header param: Optional opaque, unquoted key for safely retrying the same logical
225
+ # request. Keys must contain 1 to 255 letters, numbers, hyphens, or underscores.
226
+ # Generate a unique UUID v4 for each operation and reuse it only when retrying
227
+ # that operation with the same request. Invalid headers—including duplicate,
228
+ # empty, malformed, or overlong values—return 400 with error code 10015. A request
229
+ # already in progress with the same key returns 409; reusing the key with a
230
+ # different request returns 422. Only successful responses are replayed, for up to
231
+ # 24 hours. Do not include sensitive data in the key.
232
+ idempotency_key: nil,
233
+ request_options: {}
234
+ )
235
+ end
236
+
237
+ # Permanently deletes every email in the authenticated account sent from or to the
238
+ # supplied address, including retained events whose parent message has expired.
239
+ # Events and durable recipients are deleted immediately with each message. The
240
+ # operation never searches or reports matches in another account. The legacy
241
+ # `/v2/emails` DELETE route is a backward-compatible alias.
242
+ sig do
243
+ params(
244
+ address: String,
245
+ request_options: Telnyx::RequestOptions::OrHash
246
+ ).void
247
+ end
248
+ def delete_all(
249
+ # Sender or recipient address to delete. Matching is trimmed and case-insensitive.
250
+ address:,
251
+ request_options: {}
252
+ )
253
+ end
254
+
255
+ # Cancels a scheduled email and returns it with status `cancelled`. The legacy
256
+ # `/v2/emails/{id}/schedule` DELETE route is an alias.
257
+ sig do
258
+ params(
259
+ email_id: String,
260
+ request_options: Telnyx::RequestOptions::OrHash
261
+ ).returns(Telnyx::EmailInboxes::EmailMessageResponse)
262
+ end
263
+ def delete_schedule(
264
+ # Email message UUID.
265
+ email_id,
266
+ request_options: {}
267
+ )
268
+ end
269
+
270
+ # Lists events for a single message sorted oldest first by
271
+ # `occurred_at asc, id asc`. The legacy `/v2/emails/{id}/events` GET route is a
272
+ # backward-compatible alias.
273
+ sig do
274
+ params(
275
+ email_id: String,
276
+ page_cursor: String,
277
+ page_size: Integer,
278
+ request_options: Telnyx::RequestOptions::OrHash
279
+ ).returns(Telnyx::Models::EmailMessageRetrieveEventsResponse)
280
+ end
281
+ def retrieve_events(
282
+ # Email message UUID.
283
+ email_id,
284
+ # Opaque URL-safe Base64 cursor returned by a previous list response.
285
+ page_cursor: nil,
286
+ # Number of results to return. Defaults to 25; maximum is 100. Invalid values are
287
+ # clamped to the valid range.
288
+ page_size: nil,
289
+ request_options: {}
290
+ )
291
+ end
292
+
293
+ # @api private
294
+ sig { params(client: Telnyx::Client).returns(T.attached_class) }
295
+ def self.new(client:)
296
+ end
297
+ end
298
+ end
299
+ end
@@ -0,0 +1,167 @@
1
+ # typed: strong
2
+
3
+ module Telnyx
4
+ module Resources
5
+ # Create, list, retrieve, update, delete, and render Liquid email templates.
6
+ class EmailTemplates
7
+ # Creates a Liquid email template. Variables are auto-extracted when omitted.
8
+ sig do
9
+ params(
10
+ name: String,
11
+ html_body: T.nilable(String),
12
+ subject: T.nilable(String),
13
+ text_body: T.nilable(String),
14
+ variables: T::Array[String],
15
+ idempotency_key: String,
16
+ request_options: Telnyx::RequestOptions::OrHash
17
+ ).returns(Telnyx::EmailTemplateResponse)
18
+ end
19
+ def create(
20
+ # Body param: Letters, numbers, spaces, hyphens, and underscores only.
21
+ name:,
22
+ # Body param: Liquid template HTML body.
23
+ html_body: nil,
24
+ # Body param: Liquid template subject.
25
+ subject: nil,
26
+ # Body param: Liquid template text body.
27
+ text_body: nil,
28
+ # Body param: Template variables. Auto-extracted from subject/body fields when
29
+ # absent.
30
+ variables: nil,
31
+ # Header param: Optional opaque, unquoted key for safely retrying the same logical
32
+ # request. Keys must contain 1 to 255 letters, numbers, hyphens, or underscores.
33
+ # Generate a unique UUID v4 for each operation and reuse it only when retrying
34
+ # that operation with the same request. Invalid headers—including duplicate,
35
+ # empty, malformed, or overlong values—return 400 with error code 10015. A request
36
+ # already in progress with the same key returns 409; reusing the key with a
37
+ # different request returns 422. Only successful responses are replayed, for up to
38
+ # 24 hours. Do not include sensitive data in the key.
39
+ idempotency_key: nil,
40
+ request_options: {}
41
+ )
42
+ end
43
+
44
+ # Get an email template
45
+ sig do
46
+ params(
47
+ id: String,
48
+ request_options: Telnyx::RequestOptions::OrHash
49
+ ).returns(Telnyx::EmailTemplateResponse)
50
+ end
51
+ def retrieve(
52
+ # Email template UUID.
53
+ id,
54
+ request_options: {}
55
+ )
56
+ end
57
+
58
+ # Updates one or more template fields.
59
+ sig do
60
+ params(
61
+ id: String,
62
+ html_body: T.nilable(String),
63
+ name: String,
64
+ subject: T.nilable(String),
65
+ text_body: T.nilable(String),
66
+ variables: T::Array[String],
67
+ request_options: Telnyx::RequestOptions::OrHash
68
+ ).returns(Telnyx::EmailTemplateResponse)
69
+ end
70
+ def update(
71
+ # Email template UUID.
72
+ id,
73
+ # Liquid template HTML body.
74
+ html_body: nil,
75
+ name: nil,
76
+ # Liquid template subject.
77
+ subject: nil,
78
+ # Liquid template text body.
79
+ text_body: nil,
80
+ variables: nil,
81
+ request_options: {}
82
+ )
83
+ end
84
+
85
+ # Lists templates sorted newest first by `created_at desc, id desc`.
86
+ sig do
87
+ params(
88
+ page_cursor: String,
89
+ page_size: Integer,
90
+ request_options: Telnyx::RequestOptions::OrHash
91
+ ).returns(Telnyx::Models::EmailTemplateListResponse)
92
+ end
93
+ def list(
94
+ # Opaque URL-safe Base64 cursor returned by a previous list response.
95
+ page_cursor: nil,
96
+ # Number of results to return. Defaults to 25; maximum is 100. Invalid values are
97
+ # clamped to the valid range.
98
+ page_size: nil,
99
+ request_options: {}
100
+ )
101
+ end
102
+
103
+ # Delete an email template
104
+ sig do
105
+ params(id: String, request_options: Telnyx::RequestOptions::OrHash).void
106
+ end
107
+ def delete(
108
+ # Email template UUID.
109
+ id,
110
+ request_options: {}
111
+ )
112
+ end
113
+
114
+ # Renders a template using the provided Liquid variables. Missing
115
+ # `template_variables` defaults to `{}`.
116
+ sig do
117
+ params(
118
+ id: String,
119
+ template_variables: T::Hash[Symbol, T.anything],
120
+ request_options: Telnyx::RequestOptions::OrHash
121
+ ).returns(Telnyx::Models::EmailTemplateRenderResponse)
122
+ end
123
+ def render(
124
+ # Email template UUID.
125
+ id,
126
+ # Variables for Liquid template rendering. Non-object values are silently treated
127
+ # as an empty object.
128
+ template_variables: nil,
129
+ request_options: {}
130
+ )
131
+ end
132
+
133
+ # Replaces template fields. Behaves identically to PATCH; provided for
134
+ # compatibility with Phoenix resource routes.
135
+ sig do
136
+ params(
137
+ id: String,
138
+ html_body: T.nilable(String),
139
+ name: String,
140
+ subject: T.nilable(String),
141
+ text_body: T.nilable(String),
142
+ variables: T::Array[String],
143
+ request_options: Telnyx::RequestOptions::OrHash
144
+ ).returns(Telnyx::EmailTemplateResponse)
145
+ end
146
+ def replace(
147
+ # Email template UUID.
148
+ id,
149
+ # Liquid template HTML body.
150
+ html_body: nil,
151
+ name: nil,
152
+ # Liquid template subject.
153
+ subject: nil,
154
+ # Liquid template text body.
155
+ text_body: nil,
156
+ variables: nil,
157
+ request_options: {}
158
+ )
159
+ end
160
+
161
+ # @api private
162
+ sig { params(client: Telnyx::Client).returns(T.attached_class) }
163
+ def self.new(client:)
164
+ end
165
+ end
166
+ end
167
+ end
@@ -0,0 +1,74 @@
1
+ # typed: strong
2
+
3
+ module Telnyx
4
+ module Resources
5
+ # Account-wide conversation threads across every inbox, for agents operating many
6
+ # inboxes at once.
7
+ class EmailThreads
8
+ # Returns a thread and a bounded page of its inbound and outbound messages,
9
+ # interleaved in chronological order. The `inbox_id` returned by the list endpoint
10
+ # is required because a thread ID can occur in multiple inboxes. Only messages
11
+ # matching that `(inbox_id, thread_id)` pair are returned. Threads outside the
12
+ # account return an opaque 404.
13
+ sig do
14
+ params(
15
+ thread_id: String,
16
+ inbox_id: String,
17
+ page_after: String,
18
+ page_size: Integer,
19
+ request_options: Telnyx::RequestOptions::OrHash
20
+ ).returns(Telnyx::Models::EmailThreadRetrieveResponse)
21
+ end
22
+ def retrieve(
23
+ # Email thread UUID.
24
+ thread_id,
25
+ # Inbox UUID that, together with `thread_id`, identifies the thread.
26
+ inbox_id:,
27
+ # Opaque message cursor returned by the previous thread-detail page.
28
+ page_after: nil,
29
+ # Number of thread messages to return. Defaults to 25; maximum is 100.
30
+ page_size: nil,
31
+ request_options: {}
32
+ )
33
+ end
34
+
35
+ # Lists thread summaries for the whole account, newest first, using stable cursor
36
+ # pagination. An agent operating many inboxes gets every conversation in one call
37
+ # instead of one call per inbox. Each thread carries its own `inbox_id` so a reply
38
+ # can be routed back to the right inbox. Use `filter[inbox_id]` (repeatable) to
39
+ # narrow the result to specific inboxes. Because a thread ID can be delivered to
40
+ # multiple inboxes, each result is identified by its `(inbox_id, id)` pair.
41
+ sig do
42
+ params(
43
+ filter_inbox_id: T::Array[String],
44
+ filter_label: String,
45
+ page_after: String,
46
+ page_size: Integer,
47
+ request_options: Telnyx::RequestOptions::OrHash
48
+ ).returns(Telnyx::EmailInboxes::InboundThreadListResponse)
49
+ end
50
+ def list(
51
+ # Restrict results to one or more inboxes. Repeat the parameter
52
+ # (`filter[inbox_id][]=...&filter[inbox_id][]=...`) or pass a comma-separated
53
+ # list. Omit to list every inbox in the account. Inboxes outside the account are
54
+ # silently excluded. If the filter is present, it must contain at least one
55
+ # non-empty UUID.
56
+ filter_inbox_id: nil,
57
+ # Returns only threads carrying this label. Matching is exact and case-sensitive.
58
+ # Thread labels are independent of the labels on the thread's messages.
59
+ filter_label: nil,
60
+ # Opaque cursor returned by the previous page.
61
+ page_after: nil,
62
+ # Number of results to return. Defaults to 25; maximum is 100.
63
+ page_size: nil,
64
+ request_options: {}
65
+ )
66
+ end
67
+
68
+ # @api private
69
+ sig { params(client: Telnyx::Client).returns(T.attached_class) }
70
+ def self.new(client:)
71
+ end
72
+ end
73
+ end
74
+ end
@@ -0,0 +1,83 @@
1
+ # typed: strong
2
+
3
+ module Telnyx
4
+ module Resources
5
+ class EmailUnsubscribeGroups
6
+ # Named groups and group-scoped suppressions.
7
+ class Suppressions
8
+ # Creates a suppression with `reason: unsubscribe`, `source: manual`,
9
+ # `group_id: <this group>`. All other body fields are ignored; only `to` is read.
10
+ # Idempotent (same dedupe key → `200`, no new event).
11
+ sig do
12
+ params(
13
+ id: String,
14
+ to: String,
15
+ request_options: Telnyx::RequestOptions::OrHash
16
+ ).returns(Telnyx::EmailBlockResponse)
17
+ end
18
+ def create(
19
+ # Resource UUID. Malformed UUIDs are treated as not-found (not 400).
20
+ id,
21
+ to:,
22
+ request_options: {}
23
+ )
24
+ end
25
+
26
+ # Account + group scoped. Offset pagination only (`page[number]` default 1,
27
+ # `page[size]` default 25, max 100). No `sort`/`filter`/ cursor — ordering fixed
28
+ # `desc created_at, desc id`. Uses the shared `QueryParser.parse_offset/1` — a
29
+ # malformed `page` returns `400` (code `10015`), consistent with
30
+ # `GET /v2/email_blocks`. `meta` includes `total_pages`. Rows reuse the standard
31
+ # suppression shape (`group_id` set to this group).
32
+ sig do
33
+ params(
34
+ id: String,
35
+ page_number: Integer,
36
+ page_size: Integer,
37
+ request_options: Telnyx::RequestOptions::OrHash
38
+ ).returns(Telnyx::Internal::DefaultFlatPagination[Telnyx::EmailBlock])
39
+ end
40
+ def list(
41
+ # Resource UUID. Malformed UUIDs are treated as not-found (not 400).
42
+ id,
43
+ # Offset page number (≥1, default 1).
44
+ page_number: nil,
45
+ # Page size (1–100, default 25).
46
+ page_size: nil,
47
+ request_options: {}
48
+ )
49
+ end
50
+
51
+ # Soft-deletes all active blocks for (account, group, normalized email) — one
52
+ # `removed` audit event per block (`actor: manual`). The `email` path segment is
53
+ # normalized (trim + lower-case) before matching. Idempotent on already-removed
54
+ # rows (returns `404` since they're no longer `active`).
55
+ #
56
+ # Two distinct `404` cases: a missing/cross-account **group** returns
57
+ # `10001 "The requested unsubscribe group was not found"`; a group that exists but
58
+ # has **no active suppression** for that email returns
59
+ # `10001 "The requested group suppression was not found"`.
60
+ sig do
61
+ params(
62
+ email: String,
63
+ id: String,
64
+ request_options: Telnyx::RequestOptions::OrHash
65
+ ).void
66
+ end
67
+ def delete(
68
+ # Recipient address (normalized: trim + lower-case before matching).
69
+ email,
70
+ # Resource UUID. Malformed UUIDs are treated as not-found (not 400).
71
+ id:,
72
+ request_options: {}
73
+ )
74
+ end
75
+
76
+ # @api private
77
+ sig { params(client: Telnyx::Client).returns(T.attached_class) }
78
+ def self.new(client:)
79
+ end
80
+ end
81
+ end
82
+ end
83
+ end