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
@@ -13,9 +13,29 @@ module Telnyx
13
13
  # endpoint). Until it is, this returns `409` and no references are stored.
14
14
  #
15
15
  # The request body carries exactly two business references plus one financial
16
- # reference. On success the references are stored and the response echoes them in
17
- # the same shape as the GET. Submitting again converges on the already-stored
18
- # references rather than erroring.
16
+ # reference. The first submission stores them and returns `201`. Resubmitting
17
+ # returns `200`: identical values are simply confirmed and nothing is written,
18
+ # while changed values replace those references.
19
+ #
20
+ # Replacing a reference is allowed only while the DIR itself is still editable,
21
+ # the same window in which a single reference may be updated; once the DIR has
22
+ # been submitted for vetting this returns `400`. A replaced reference's pending
23
+ # verification call is cancelled and its dial-in code stops working, and the
24
+ # replacement contact is emailed fresh scheduling details. References whose
25
+ # details did not change keep their existing call, code, and the notice already
26
+ # sent to them.
27
+ #
28
+ # The response always echoes the stored references in the same shape as the GET.
29
+ #
30
+ # Who qualifies: the two business references confirm the company's reputation and
31
+ # operations. Each should be a senior contact at an organization the business
32
+ # works with, such as a vendor, partner, or client: a C-suite executive (CEO, CFO,
33
+ # CTO, COO), an owner or founder as reflected in the company's corporate records,
34
+ # or a senior manager, director, or executive. The financial reference confirms
35
+ # the company pays its bills and should be a licensed certified public accountant
36
+ # (CPA) the company uses, a contact at a bank or financial institution that has a
37
+ # relationship with the company, or a reasonable alternative banking or financial
38
+ # reference.
19
39
  sig do
20
40
  params(
21
41
  dir_id: String,
@@ -27,7 +47,13 @@ module Telnyx
27
47
  def create(
28
48
  # The DIR id. Lowercase UUID.
29
49
  dir_id,
30
- # Exactly two business references.
50
+ # Exactly two business references. Array order determines each one's slot: the
51
+ # first entry becomes slot 1 and the second becomes slot 2. Those slots are what
52
+ # you pass when updating a single reference later. Each should be a senior contact
53
+ # who can speak to your company's reputation and operations: a C-suite executive
54
+ # (CEO, CFO, CTO, COO), an owner or founder as reflected in your corporate
55
+ # records, or a senior manager, director, or executive at an organization you work
56
+ # with, such as a vendor, partner, or client.
31
57
  business_references:,
32
58
  # One reference supplied at submit. The reference type is implied by the field
33
59
  # that carries it (business_references vs financial_reference).
@@ -60,8 +86,11 @@ module Telnyx
60
86
  ).returns(Telnyx::Models::Dir::ReferenceUpdateResponse)
61
87
  end
62
88
  def update(
63
- # Path param: Reference slot. Business references use slots 0 and 1; the financial
64
- # reference uses slot 0.
89
+ # Path param: Reference slot, counting from 1. Business references are slots 1 and
90
+ # 2, matching the order they were sent in the `business_references` array; the
91
+ # financial reference is slot 1. Every reference returned by the submit and list
92
+ # endpoints carries its own `ref_type` and `slot`, so you do not need to derive
93
+ # them.
65
94
  slot,
66
95
  # Path param: The DIR id. Lowercase UUID.
67
96
  dir_id:,
@@ -87,10 +116,12 @@ module Telnyx
87
116
 
88
117
  # List the business and financial references submitted for a DIR.
89
118
  #
90
- # Returns the two business references (slots 0 and 1) followed by the single
91
- # financial reference. Each entry carries only the customer-supplied details
92
- # (name, title, organization, relationship, phone, email, timezone). Returns an
93
- # empty list when no references were submitted.
119
+ # Returns the two business references (slots 1 and 2) followed by the single
120
+ # financial reference. Each entry carries its `ref_type` and `slot`, which
121
+ # together address the reference when updating it, alongside the details supplied
122
+ # when it was submitted (name, title, organization, relationship, phone, email,
123
+ # timezone). No internal identifiers are exposed. Returns an empty list when no
124
+ # references were submitted.
94
125
  sig do
95
126
  params(
96
127
  dir_id: String,
@@ -250,8 +250,9 @@ module Telnyx
250
250
  # numbers flip back to `submitted`. When re-submitting from `verified`, the
251
251
  # existing registration stays live throughout the new vetting cycle.
252
252
  #
253
- # Returns `400` from `submitted`/`in_review`/`permanently_rejected`. Returns `409`
254
- # if the DIR has an unresolved infringement claim.
253
+ # Returns `400` from `submitted`/`in_review`/`permanently_rejected`. Returns `400`
254
+ # if the DIR's business and financial references have not been submitted. Returns
255
+ # `409` if the DIR has an unresolved infringement claim.
255
256
  sig do
256
257
  params(
257
258
  dir_id: String,
@@ -0,0 +1,61 @@
1
+ # typed: strong
2
+
3
+ module Telnyx
4
+ module Resources
5
+ class EmailBlocks
6
+ # Async CSV import of competitor suppression lists.
7
+ class Import
8
+ # Accepts `multipart/form-data` with a `file` field (the CSV) and an optional
9
+ # `block_ttl_days` (integer >0, default 30). Validates:
10
+ #
11
+ # - content ≤ 25 MiB, else `413`
12
+ # - row count ≤ 250 000, else `413`
13
+ # - header-only / all-blank / undetectable provider → `400` Returns `202` with the
14
+ # import record (status `pending`); an Oban worker (`EmailBlockImportWorker`,
15
+ # max_attempts 3) transitions `pending → processing → completed | failed`.
16
+ # `block_ttl_days` applies only to imported `manual_block` rows; other reasons
17
+ # get `expires_at: nil`. Provider is auto-detected from the CSV header
18
+ # (`sendgrid` / `mailgun` / `ses` / `generic`).
19
+ sig do
20
+ params(
21
+ file: Telnyx::Internal::FileInput,
22
+ block_ttl_days: Integer,
23
+ request_options: Telnyx::RequestOptions::OrHash
24
+ ).returns(Telnyx::EmailBlocks::EmailBlockImportResponse)
25
+ end
26
+ def create(
27
+ # The CSV file (Plug.Upload). Missing/non-upload → 400.
28
+ file:,
29
+ # TTL for imported `manual_block` rows; other reasons get `expires_at: null`.
30
+ # Invalid/missing → falls back to 30.
31
+ block_ttl_days: nil,
32
+ request_options: {}
33
+ )
34
+ end
35
+
36
+ # Account-scoped fetch (cross-account → 404; malformed UUID → 404). Nullable
37
+ # fields are omitted until terminal: `provider`/`completed_at` when nil;
38
+ # `processed_rows`/`created_count`/`existing_count`/ `skipped_count`/`error_count`
39
+ # only when `status == completed`; `errors` only when non-empty; `failure_reason`
40
+ # only on terminal failure.
41
+ sig do
42
+ params(
43
+ id: String,
44
+ request_options: Telnyx::RequestOptions::OrHash
45
+ ).returns(Telnyx::EmailBlocks::EmailBlockImportResponse)
46
+ end
47
+ def retrieve(
48
+ # Resource UUID. Malformed UUIDs are treated as not-found (not 400).
49
+ id,
50
+ request_options: {}
51
+ )
52
+ end
53
+
54
+ # @api private
55
+ sig { params(client: Telnyx::Client).returns(T.attached_class) }
56
+ def self.new(client:)
57
+ end
58
+ end
59
+ end
60
+ end
61
+ end
@@ -0,0 +1,198 @@
1
+ # typed: strong
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
+ sig { returns(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
+ sig do
22
+ params(
23
+ to: String,
24
+ domain_id: T.nilable(String),
25
+ expires_at: T.nilable(Time),
26
+ from: T.nilable(String),
27
+ request_options: Telnyx::RequestOptions::OrHash
28
+ ).returns(Telnyx::EmailBlockResponse)
29
+ end
30
+ def create(
31
+ # Recipient address (normalized: trim + lower-case).
32
+ to:,
33
+ # `null` ⇒ account scope.
34
+ domain_id: nil,
35
+ expires_at: nil,
36
+ # Sender address (normalized). `null` ⇒ account/domain scope.
37
+ from: nil,
38
+ request_options: {}
39
+ )
40
+ end
41
+
42
+ # Retrieve a suppression
43
+ sig do
44
+ params(
45
+ id: String,
46
+ request_options: Telnyx::RequestOptions::OrHash
47
+ ).returns(Telnyx::EmailBlockResponse)
48
+ end
49
+ def retrieve(
50
+ # Resource UUID. Malformed UUIDs are treated as not-found (not 400).
51
+ id,
52
+ request_options: {}
53
+ )
54
+ end
55
+
56
+ # Account-scoped list. Two mutually exclusive pagination modes:
57
+ #
58
+ # - **Offset**: `page[number]` (default 1) + `page[size]` (default 25, max 100).
59
+ # `meta` contains `total_pages`.
60
+ # - **Cursor**: `page[after]` and/or `page[before]` (opaque `Base.url_encode64` of
61
+ # `{"created_at","id"}`). Cannot combine with `page[number]`; `after`+`before`
62
+ # together is an error. `meta` contains `next_cursor` / `previous_cursor`
63
+ # (omitted when their flag is false).
64
+ #
65
+ # Sort defaults to `-created_at` (desc); only `created_at` is sortable. A `--`
66
+ # prefix is an error. `nil`/empty filter values are silently dropped.
67
+ sig do
68
+ params(
69
+ filter_created_after: Time,
70
+ filter_created_before: Time,
71
+ filter_domain_id: String,
72
+ filter_reason: Telnyx::EmailBlockListParams::FilterReason::OrSymbol,
73
+ page_after: String,
74
+ page_before: String,
75
+ page_number: Integer,
76
+ page_size: Integer,
77
+ sort: Telnyx::EmailBlockListParams::Sort::OrSymbol,
78
+ request_options: Telnyx::RequestOptions::OrHash
79
+ ).returns(Telnyx::Internal::DefaultFlatPagination[Telnyx::EmailBlock])
80
+ end
81
+ def list(
82
+ # `created_at > value` (ISO 8601).
83
+ filter_created_after: nil,
84
+ # `created_at < value` (ISO 8601).
85
+ filter_created_before: nil,
86
+ # Exact-match filter on domain_id (UUID).
87
+ filter_domain_id: nil,
88
+ # Exact-match filter on reason.
89
+ filter_reason: nil,
90
+ # Opaque cursor (`Base.url_encode64` of `{"created_at","id"}`). Cursor mode;
91
+ # mutually exclusive with `page[number]` and `page[before]`.
92
+ page_after: nil,
93
+ # Opaque cursor (see `page[after]`). Mutually exclusive with `page[after]` and
94
+ # `page[number]`.
95
+ page_before: nil,
96
+ # Offset page number (≥1, default 1).
97
+ page_number: nil,
98
+ # Page size (1–100, default 25).
99
+ page_size: nil,
100
+ # Sort field. Leading `-` = desc; only `created_at` is sortable. Default
101
+ # `-created_at`. `--` is an error.
102
+ sort: nil,
103
+ request_options: {}
104
+ )
105
+ end
106
+
107
+ # Soft-deletes (status → `removed`; tombstone retained). A `removed` audit event
108
+ # is appended unless the block was already `removed` (idempotent — returns the
109
+ # existing row with `200` and no new event). Mutates `updated_at`.
110
+ sig do
111
+ params(
112
+ id: String,
113
+ request_options: Telnyx::RequestOptions::OrHash
114
+ ).returns(Telnyx::EmailBlockResponse)
115
+ end
116
+ def delete(
117
+ # Resource UUID. Malformed UUIDs are treated as not-found (not 400).
118
+ id,
119
+ request_options: {}
120
+ )
121
+ end
122
+
123
+ # Offset pagination only (`page[number]` default 1, `page[size]` default **50**,
124
+ # max 100). No `sort`, no `filter`, no cursor — ordering is fixed
125
+ # `desc occurred_at, desc id`. Verifies the block belongs to the account first
126
+ # (cross-account → 404).
127
+ sig do
128
+ params(
129
+ id: String,
130
+ page_number: Integer,
131
+ page_size: Integer,
132
+ request_options: Telnyx::RequestOptions::OrHash
133
+ ).returns(Telnyx::Models::EmailBlockRetrieveEventsResponse)
134
+ end
135
+ def retrieve_events(
136
+ # Resource UUID. Malformed UUIDs are treated as not-found (not 400).
137
+ id,
138
+ # Offset page number (≥1, default 1).
139
+ page_number: nil,
140
+ # Page size (default 50, max 100).
141
+ page_size: nil,
142
+ request_options: {}
143
+ )
144
+ end
145
+
146
+ # Streams the account's suppressions as a chunked CSV (server-side cursor; never
147
+ # materialized). Content-type `text/csv`, header
148
+ # `Content-Disposition: attachment; filename="email_blocks_export.csv"`.
149
+ #
150
+ # Filters (`filter[reason]`, `filter[domain_id]`, `filter[created_after]`,
151
+ # `filter[created_before]`) are the only params that affect output. `sort` and
152
+ # `page[*]` are **parsed** (bad values still produce `400`) but **ignored** — rows
153
+ # stream `ORDER BY created_at ASC, id ASC` with no pagination.
154
+ #
155
+ # CSV columns:
156
+ # `id,to,from,reason,source,scope,status,domain_id, created_at,updated_at,expires_at,group_id`.
157
+ # The CSV carries the `group_id` column so group-scoped suppressions' group link
158
+ # survives the export (empty for account-scope rows).
159
+ sig do
160
+ params(
161
+ filter_created_after: Time,
162
+ filter_created_before: Time,
163
+ filter_domain_id: String,
164
+ filter_reason:
165
+ Telnyx::EmailBlockRetrieveExportParams::FilterReason::OrSymbol,
166
+ page_number: Integer,
167
+ page_size: Integer,
168
+ sort: Telnyx::EmailBlockRetrieveExportParams::Sort::OrSymbol,
169
+ request_options: Telnyx::RequestOptions::OrHash
170
+ ).returns(String)
171
+ end
172
+ def retrieve_export(
173
+ # `created_at > value` (ISO 8601).
174
+ filter_created_after: nil,
175
+ # `created_at < value` (ISO 8601).
176
+ filter_created_before: nil,
177
+ # Exact-match filter on domain_id (UUID).
178
+ filter_domain_id: nil,
179
+ # Exact-match filter on reason.
180
+ filter_reason: nil,
181
+ # Offset page number (≥1, default 1).
182
+ page_number: nil,
183
+ # Page size (1–100, default 25).
184
+ page_size: nil,
185
+ # Sort field. Leading `-` = desc; only `created_at` is sortable. Default
186
+ # `-created_at`. `--` is an error.
187
+ sort: nil,
188
+ request_options: {}
189
+ )
190
+ end
191
+
192
+ # @api private
193
+ sig { params(client: Telnyx::Client).returns(T.attached_class) }
194
+ def self.new(client:)
195
+ end
196
+ end
197
+ end
198
+ end
@@ -0,0 +1,122 @@
1
+ # typed: strong
2
+
3
+ module Telnyx
4
+ module Resources
5
+ class EmailDomains
6
+ # Per-domain webhook endpoints with event subscriptions
7
+ class Webhooks
8
+ # Creates a webhook endpoint subscribed to a specific allowlist of event types.
9
+ # Both `email.*` events (published by email-api) and `email_domain.*` events
10
+ # (published by this service) flow through the same webhooks.
11
+ sig do
12
+ params(
13
+ domain_id: String,
14
+ events: T::Array[Telnyx::EmailDomains::EmailWebhookEvent::OrSymbol],
15
+ url: String,
16
+ request_options: Telnyx::RequestOptions::OrHash
17
+ ).returns(Telnyx::EmailDomains::EmailWebhookResponse)
18
+ end
19
+ def create(
20
+ # Email domain UUID
21
+ domain_id,
22
+ # At least one event type is required.
23
+ events:,
24
+ # HTTPS endpoint to deliver subscribed events to.
25
+ url:,
26
+ request_options: {}
27
+ )
28
+ end
29
+
30
+ # Retrieve a webhook
31
+ sig do
32
+ params(
33
+ id: String,
34
+ domain_id: String,
35
+ request_options: Telnyx::RequestOptions::OrHash
36
+ ).returns(Telnyx::EmailDomains::EmailWebhookResponse)
37
+ end
38
+ def retrieve(
39
+ # Email webhook UUID
40
+ id,
41
+ # Email domain UUID
42
+ domain_id:,
43
+ request_options: {}
44
+ )
45
+ end
46
+
47
+ # Update a webhook's URL and/or event subscription. A webhook is bound to its
48
+ # domain — `domain_id` is not mutable.
49
+ sig do
50
+ params(
51
+ id: String,
52
+ domain_id: String,
53
+ events: T::Array[Telnyx::EmailDomains::EmailWebhookEvent::OrSymbol],
54
+ url: String,
55
+ request_options: Telnyx::RequestOptions::OrHash
56
+ ).returns(Telnyx::EmailDomains::EmailWebhookResponse)
57
+ end
58
+ def update(
59
+ # Path param: Email webhook UUID
60
+ id,
61
+ # Path param: Email domain UUID
62
+ domain_id:,
63
+ # Body param
64
+ events: nil,
65
+ # Body param
66
+ url: nil,
67
+ request_options: {}
68
+ )
69
+ end
70
+
71
+ # List webhooks for an email domain
72
+ sig do
73
+ params(
74
+ domain_id: String,
75
+ page_number: Integer,
76
+ page_size: Integer,
77
+ sort: Telnyx::EmailDomains::WebhookListParams::Sort::OrSymbol,
78
+ request_options: Telnyx::RequestOptions::OrHash
79
+ ).returns(
80
+ Telnyx::Internal::DefaultFlatPagination[
81
+ Telnyx::EmailDomains::EmailWebhook
82
+ ]
83
+ )
84
+ end
85
+ def list(
86
+ # Email domain UUID
87
+ domain_id,
88
+ # Page number to return (offset pagination)
89
+ page_number: nil,
90
+ # Number of records per page
91
+ page_size: nil,
92
+ # Field to sort by. Prefix with `-` for descending order.
93
+ sort: nil,
94
+ request_options: {}
95
+ )
96
+ end
97
+
98
+ # Delete a webhook
99
+ sig do
100
+ params(
101
+ id: String,
102
+ domain_id: String,
103
+ request_options: Telnyx::RequestOptions::OrHash
104
+ ).returns(Telnyx::EmailDomains::EmailWebhookResponse)
105
+ end
106
+ def delete(
107
+ # Email webhook UUID
108
+ id,
109
+ # Email domain UUID
110
+ domain_id:,
111
+ request_options: {}
112
+ )
113
+ end
114
+
115
+ # @api private
116
+ sig { params(client: Telnyx::Client).returns(T.attached_class) }
117
+ def self.new(client:)
118
+ end
119
+ end
120
+ end
121
+ end
122
+ end
@@ -0,0 +1,180 @@
1
+ # typed: strong
2
+
3
+ module Telnyx
4
+ module Resources
5
+ class EmailDomains
6
+ # Per-domain webhook endpoints with event subscriptions
7
+ sig { returns(Telnyx::Resources::EmailDomains::Webhooks) }
8
+ attr_reader :webhooks
9
+
10
+ # Create an email domain
11
+ sig do
12
+ params(
13
+ domain: String,
14
+ dmarc_policy: T.nilable(Telnyx::EmailDmarcPolicy::OrHash),
15
+ inbound_enabled: T::Boolean,
16
+ tracking: Telnyx::DomainsTrackingSettings::OrHash,
17
+ request_options: Telnyx::RequestOptions::OrHash
18
+ ).returns(Telnyx::EmailDomainResponse)
19
+ end
20
+ def create(
21
+ domain:,
22
+ # DMARC policy for a sending domain. Drives the recommended \_dmarc.<domain> TXT
23
+ # record. DMARC is advisory and never blocks sending. When omitted or null, the
24
+ # domain uses the advisory default (v=DMARC1; p=none;
25
+ # rua=mailto:dmarc@telnyx.com).
26
+ dmarc_policy: nil,
27
+ # Enable inbound routing for this domain
28
+ inbound_enabled: nil,
29
+ tracking: nil,
30
+ request_options: {}
31
+ )
32
+ end
33
+
34
+ # Shared (`type: shared`) Telnyx-managed domains are included/readable for every
35
+ # account, in addition to the account's own custom domains.
36
+ sig do
37
+ params(
38
+ id: String,
39
+ request_options: Telnyx::RequestOptions::OrHash
40
+ ).returns(Telnyx::EmailDomainResponse)
41
+ end
42
+ def retrieve(
43
+ # Email domain UUID
44
+ id,
45
+ request_options: {}
46
+ )
47
+ end
48
+
49
+ # Update an email domain
50
+ sig do
51
+ params(
52
+ id: String,
53
+ dmarc_policy: T.nilable(Telnyx::EmailDmarcPolicy::OrHash),
54
+ inbound_enabled: T::Boolean,
55
+ tracking: Telnyx::DomainsTrackingSettings::OrHash,
56
+ request_options: Telnyx::RequestOptions::OrHash
57
+ ).returns(Telnyx::EmailDomainResponse)
58
+ end
59
+ def update(
60
+ # Email domain UUID
61
+ id,
62
+ # DMARC policy for a sending domain. Drives the recommended \_dmarc.<domain> TXT
63
+ # record. DMARC is advisory and never blocks sending. When omitted or null, the
64
+ # domain uses the advisory default (v=DMARC1; p=none;
65
+ # rua=mailto:dmarc@telnyx.com).
66
+ dmarc_policy: nil,
67
+ # Enable or disable inbound routing for this domain
68
+ inbound_enabled: nil,
69
+ tracking: nil,
70
+ request_options: {}
71
+ )
72
+ end
73
+
74
+ # Shared (`type: shared`) Telnyx-managed domains are included/readable for every
75
+ # account, in addition to the account's own custom domains.
76
+ sig do
77
+ params(
78
+ filter_domain: String,
79
+ filter_profile_id: String,
80
+ filter_status: Telnyx::EmailDomainStatus::OrSymbol,
81
+ filter_type: Telnyx::EmailDomainType::OrSymbol,
82
+ filter_usable_for_inbound: T::Boolean,
83
+ filter_usable_for_sending: T::Boolean,
84
+ page_after: String,
85
+ page_before: String,
86
+ page_number: Integer,
87
+ page_size: Integer,
88
+ sort: Telnyx::EmailDomainListParams::Sort::OrSymbol,
89
+ request_options: Telnyx::RequestOptions::OrHash
90
+ ).returns(Telnyx::Internal::DefaultFlatPagination[Telnyx::EmailDomain])
91
+ end
92
+ def list(
93
+ # Partial match on domain name (case-insensitive)
94
+ filter_domain: nil,
95
+ # Filter by profile UUID
96
+ filter_profile_id: nil,
97
+ filter_status: nil,
98
+ filter_type: nil,
99
+ filter_usable_for_inbound: nil,
100
+ filter_usable_for_sending: nil,
101
+ # Cursor for records after the provided value (cursor pagination)
102
+ page_after: nil,
103
+ # Cursor for records before the provided value (cursor pagination)
104
+ page_before: nil,
105
+ # Page number to return (offset pagination)
106
+ page_number: nil,
107
+ # Number of records per page
108
+ page_size: nil,
109
+ # Field to sort by. Prefix with `-` for descending order.
110
+ sort: nil,
111
+ request_options: {}
112
+ )
113
+ end
114
+
115
+ # Delete an email domain
116
+ sig do
117
+ params(
118
+ id: String,
119
+ force: T::Boolean,
120
+ request_options: Telnyx::RequestOptions::OrHash
121
+ ).returns(Telnyx::EmailDomainResponse)
122
+ end
123
+ def delete(
124
+ # Email domain UUID
125
+ id,
126
+ # Required as true when deleting verified domains
127
+ force: nil,
128
+ request_options: {}
129
+ )
130
+ end
131
+
132
+ # List DNS records for an email domain
133
+ sig do
134
+ params(
135
+ domain_id: String,
136
+ request_options: Telnyx::RequestOptions::OrHash
137
+ ).returns(Telnyx::Models::EmailDomainRetrieveDNSRecordsResponse)
138
+ end
139
+ def retrieve_dns_records(
140
+ # Email domain UUID
141
+ domain_id,
142
+ request_options: {}
143
+ )
144
+ end
145
+
146
+ # Returns a summary of domain health including verification status and usability.
147
+ sig do
148
+ params(
149
+ id: String,
150
+ request_options: Telnyx::RequestOptions::OrHash
151
+ ).returns(Telnyx::Models::EmailDomainRetrieveHealthResponse)
152
+ end
153
+ def retrieve_health(
154
+ # Email domain UUID
155
+ id,
156
+ request_options: {}
157
+ )
158
+ end
159
+
160
+ # Verify DNS records for an email domain
161
+ sig do
162
+ params(
163
+ domain_id: String,
164
+ request_options: Telnyx::RequestOptions::OrHash
165
+ ).returns(Telnyx::EmailDomainResponse)
166
+ end
167
+ def verify(
168
+ # Email domain UUID
169
+ domain_id,
170
+ request_options: {}
171
+ )
172
+ end
173
+
174
+ # @api private
175
+ sig { params(client: Telnyx::Client).returns(T.attached_class) }
176
+ def self.new(client:)
177
+ end
178
+ end
179
+ end
180
+ end