telnyx 5.168.0 → 5.170.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 (565) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +14 -0
  3. data/README.md +1 -1
  4. data/lib/telnyx/client.rb +40 -0
  5. data/lib/telnyx/internal/email_cursor_pagination.rb +2 -2
  6. data/lib/telnyx/internal/type/union.rb +6 -6
  7. data/lib/telnyx/models/ai/assistant_create_params.rb +9 -9
  8. data/lib/telnyx/models/ai/assistant_tool.rb +316 -13
  9. data/lib/telnyx/models/ai/assistant_update_params.rb +23 -12
  10. data/lib/telnyx/models/ai/assistants/update_assistant.rb +23 -12
  11. data/lib/telnyx/models/ai/audio_transcribe_params.rb +33 -13
  12. data/lib/telnyx/models/ai/audio_transcribe_response.rb +34 -56
  13. data/lib/telnyx/models/ai/audio_transcription_response_word.rb +74 -0
  14. data/lib/telnyx/models/ai/chat_completion_request.rb +3 -26
  15. data/lib/telnyx/models/ai/collection.rb +3 -3
  16. data/lib/telnyx/models/ai/collections/collections_source.rb +64 -0
  17. data/lib/telnyx/models/ai/collections/source.rb +25 -29
  18. data/lib/telnyx/models/ai/collections/source_create_response.rb +3 -3
  19. data/lib/telnyx/models/ai/collections/source_list_response.rb +3 -3
  20. data/lib/telnyx/models/ai/collections/source_replace_response.rb +3 -3
  21. data/lib/telnyx/models/ai/flow_node.rb +5 -5
  22. data/lib/telnyx/models/ai/flow_node_req.rb +3 -3
  23. data/lib/telnyx/models/ai/inference_embedding.rb +16 -13
  24. data/lib/telnyx/models/ai/inference_embedding_interruption_settings.rb +10 -1
  25. data/lib/telnyx/models/ai/inference_embedding_voice_settings.rb +334 -0
  26. data/lib/telnyx/models/ai/inference_embedding_webhook_tool_params.rb +33 -11
  27. data/lib/telnyx/models/ai/memory/namespace_retrieve_params.rb +30 -0
  28. data/lib/telnyx/models/ai/memory/namespace_retrieve_response.rb +76 -0
  29. data/lib/telnyx/models/ai/memory/namespaces/namespace_settings_response.rb +63 -0
  30. data/lib/telnyx/models/ai/memory/namespaces/page_meta.rb +58 -0
  31. data/lib/telnyx/models/ai/memory/namespaces/profile_delete_params.rb +35 -0
  32. data/lib/telnyx/models/ai/memory/namespaces/profile_delete_response.rb +47 -0
  33. data/lib/telnyx/models/ai/memory/namespaces/profile_ingest_params.rb +94 -0
  34. data/lib/telnyx/models/ai/memory/namespaces/profile_ingest_response.rb +61 -0
  35. data/lib/telnyx/models/ai/memory/namespaces/profile_list_params.rb +48 -0
  36. data/lib/telnyx/models/ai/memory/namespaces/profile_list_response.rb +34 -0
  37. data/lib/telnyx/models/ai/memory/namespaces/profile_recall_params.rb +44 -0
  38. data/lib/telnyx/models/ai/memory/namespaces/profile_recall_response.rb +60 -0
  39. data/lib/telnyx/models/ai/memory/namespaces/profile_remember_params.rb +38 -0
  40. data/lib/telnyx/models/ai/memory/namespaces/profile_remember_response.rb +54 -0
  41. data/lib/telnyx/models/ai/memory/namespaces/profile_retrieve_summary_params.rb +35 -0
  42. data/lib/telnyx/models/ai/memory/namespaces/profile_retrieve_summary_response.rb +64 -0
  43. data/lib/telnyx/models/ai/memory/namespaces/profiles/memory_list_params.rb +76 -0
  44. data/lib/telnyx/models/ai/memory/namespaces/profiles/memory_list_response.rb +53 -0
  45. data/lib/telnyx/models/ai/memory/namespaces/profiles/memory_retrieve_params.rb +50 -0
  46. data/lib/telnyx/models/ai/memory/namespaces/profiles/memory_retrieve_response.rb +74 -0
  47. data/lib/telnyx/models/ai/memory/namespaces/profiles/source_delete_params.rb +52 -0
  48. data/lib/telnyx/models/ai/memory/namespaces/profiles/source_delete_response.rb +60 -0
  49. data/lib/telnyx/models/ai/memory/namespaces/profiles/source_list_params.rb +67 -0
  50. data/lib/telnyx/models/ai/memory/namespaces/profiles/source_retrieve_params.rb +52 -0
  51. data/lib/telnyx/models/ai/memory/namespaces/profiles/source_retrieve_response.rb +123 -0
  52. data/lib/telnyx/models/ai/memory/namespaces/setting_list_params.rb +28 -0
  53. data/lib/telnyx/models/ai/memory/namespaces/setting_patch_all_params.rb +69 -0
  54. data/lib/telnyx/models/ai/openai/function_definition.rb +31 -0
  55. data/lib/telnyx/models/ai/post_conversation_settings.rb +4 -4
  56. data/lib/telnyx/models/ai/post_conversation_settings_req.rb +4 -4
  57. data/lib/telnyx/models/ai/privacy_settings.rb +20 -1
  58. data/lib/telnyx/models/ai/retrieval_tool.rb +21 -1
  59. data/lib/telnyx/models/ai/telephony_settings.rb +86 -16
  60. data/lib/telnyx/models/ai/tool_node.rb +2 -2
  61. data/lib/telnyx/models/ai/transcription_settings.rb +12 -4
  62. data/lib/telnyx/models/ai/transcription_settings_config.rb +12 -11
  63. data/lib/telnyx/models/ai/typesafe/v1_systemone_params.rb +296 -0
  64. data/lib/telnyx/models/ai/typesafe/v1_systemone_response.rb +235 -0
  65. data/lib/telnyx/models/ai/webhook_tool.rb +16 -1
  66. data/lib/telnyx/models/artifact_completed_webhook_event.rb +17 -1
  67. data/lib/telnyx/models/artifact_failed_webhook_event.rb +4 -0
  68. data/lib/telnyx/models/bot_challenge_create_params.rb +38 -0
  69. data/lib/telnyx/models/bot_challenge_create_response.rb +87 -0
  70. data/lib/telnyx/models/bot_session_list_params.rb +34 -0
  71. data/lib/telnyx/models/bot_session_list_response.rb +32 -0
  72. data/lib/telnyx/models/bot_signup_create_params.rb +103 -0
  73. data/lib/telnyx/models/bot_signup_resend_magic_link_params.rb +22 -0
  74. data/lib/telnyx/models/call_dial_params.rb +75 -7
  75. data/lib/telnyx/models/calls/action_gather_using_ai_params.rb +11 -3
  76. data/lib/telnyx/models/calls/action_gather_using_speak_params.rb +11 -3
  77. data/lib/telnyx/models/calls/action_speak_params.rb +11 -3
  78. data/lib/telnyx/models/calls/action_start_conversation_relay_params.rb +11 -3
  79. data/lib/telnyx/models/calls/action_transfer_params.rb +75 -7
  80. data/lib/telnyx/models/calls/soniox_voice_settings.rb +46 -0
  81. data/lib/telnyx/models/calls/transcription_config.rb +14 -3
  82. data/lib/telnyx/models/calls/transcription_engine_assemblyai_config.rb +6 -3
  83. data/lib/telnyx/models/calls/transcription_engine_parakeet_config.rb +1 -0
  84. data/lib/telnyx/models/compute/funcs/export_create_params.rb +62 -0
  85. data/lib/telnyx/models/compute/funcs/export_delete_all_params.rb +24 -0
  86. data/lib/telnyx/models/compute/funcs/export_list_params.rb +24 -0
  87. data/lib/telnyx/models/compute/funcs/func_log_export_config_response.rb +113 -0
  88. data/lib/telnyx/models/conferences/action_speak_params.rb +11 -3
  89. data/lib/telnyx/models/connection_retrieve_count_params.rb +14 -0
  90. data/lib/telnyx/models/connection_retrieve_count_response.rb +215 -0
  91. data/lib/telnyx/models/conversation_relay_embedded_config.rb +11 -3
  92. data/lib/telnyx/models/conversation_relay_language.rb +5 -3
  93. data/lib/telnyx/models/detail_record_list_params.rb +19 -2
  94. data/lib/telnyx/models/email_block.rb +8 -1
  95. data/lib/telnyx/models/email_blocks/email_block_import.rb +7 -2
  96. data/lib/telnyx/models/email_domain_rotate_dkim_params.rb +20 -0
  97. data/lib/telnyx/models/email_domain_rotate_dkim_response.rb +243 -0
  98. data/lib/telnyx/models/email_domains/email_webhook_event.rb +8 -3
  99. data/lib/telnyx/models/email_event_list_params.rb +33 -10
  100. data/lib/telnyx/models/email_event_list_response.rb +300 -73
  101. data/lib/telnyx/models/email_event_type.rb +16 -0
  102. data/lib/telnyx/models/email_inboxes/email_message.rb +56 -4
  103. data/lib/telnyx/models/email_message_batch_params.rb +32 -15
  104. data/lib/telnyx/models/email_message_create_params.rb +44 -12
  105. data/lib/telnyx/models/{email_message_retrieve_response.rb → email_message_detail_response.rb} +5 -5
  106. data/lib/telnyx/models/email_message_list_params.rb +26 -1
  107. data/lib/telnyx/models/email_message_update_schedule_params.rb +29 -0
  108. data/lib/telnyx/models/email_messages/email_recipient.rb +2 -0
  109. data/lib/telnyx/models/email_messages/recipient_list_params.rb +2 -0
  110. data/lib/telnyx/models/email_template.rb +68 -2
  111. data/lib/telnyx/models/email_template_create_params.rb +71 -1
  112. data/lib/telnyx/models/email_webhook_recipient.rb +39 -0
  113. data/lib/telnyx/models/inbound_message_webhook_event.rb +3 -70
  114. data/lib/telnyx/models/machine_payment_account_credit_params.rb +29 -0
  115. data/lib/telnyx/models/machine_payment_account_credit_response.rb +223 -0
  116. data/lib/telnyx/models/meeting_session.rb +34 -6
  117. data/lib/telnyx/models/meeting_session_create_params.rb +73 -39
  118. data/lib/telnyx/models/meeting_sessions/artifact_create_params.rb +77 -13
  119. data/lib/telnyx/models/meeting_sessions/meeting_session_artifact.rb +25 -1
  120. data/lib/telnyx/models/message_event.rb +41 -2
  121. data/lib/telnyx/models/message_retrieve_group_messages_response.rb +3 -3
  122. data/lib/telnyx/models/message_retrieve_response.rb +4 -4
  123. data/lib/telnyx/models/message_schedule_response.rb +3 -3
  124. data/lib/telnyx/models/message_send_group_mms_response.rb +3 -3
  125. data/lib/telnyx/models/message_send_long_code_response.rb +3 -3
  126. data/lib/telnyx/models/message_send_number_pool_response.rb +3 -3
  127. data/lib/telnyx/models/message_send_response.rb +3 -3
  128. data/lib/telnyx/models/message_send_short_code_response.rb +3 -3
  129. data/lib/telnyx/models/messaging_inbound_message.rb +71 -0
  130. data/lib/telnyx/models/messaging_inbound_message_payload.rb +216 -13
  131. data/lib/telnyx/models/messaging_outbound_message_payload.rb +42 -2
  132. data/lib/telnyx/models/noise_suppression_engine_list_params.rb +14 -0
  133. data/lib/telnyx/models/noise_suppression_engine_list_response.rb +50 -0
  134. data/lib/telnyx/models/number_order_status_update.rb +15 -3
  135. data/lib/telnyx/models/number_order_status_update_webhook_event.rb +15 -3
  136. data/lib/telnyx/models/numbers_phone_number_detailed.rb +19 -5
  137. data/lib/telnyx/models/outbound_message.rb +1 -0
  138. data/lib/telnyx/models/outbound_message_payload.rb +45 -5
  139. data/lib/telnyx/models/private_wireless_gateway.rb +0 -1
  140. data/lib/telnyx/models/private_wireless_gateway_create_params.rb +28 -1
  141. data/lib/telnyx/models/private_wireless_gateway_create_response.rb +3 -3
  142. data/lib/telnyx/models/private_wireless_gateway_delete_response.rb +3 -3
  143. data/lib/telnyx/models/private_wireless_gateway_retrieve_response.rb +3 -3
  144. data/lib/telnyx/models/speech_to_text_retrieve_transcription_params.rb +1 -0
  145. data/lib/telnyx/models/success_response.rb +27 -0
  146. data/lib/telnyx/models/texml/accounts/call_calls_params.rb +246 -3
  147. data/lib/telnyx/models/texml/accounts/call_retrieve_calls_params.rb +17 -17
  148. data/lib/telnyx/models/texml/accounts/conferences/participant_participants_params.rb +82 -1
  149. data/lib/telnyx/models/texml/call_create_params.rb +78 -0
  150. data/lib/telnyx/models/texml/call_create_response.rb +55 -0
  151. data/lib/telnyx/models/texml_initiate_ai_call_params.rb +76 -1
  152. data/lib/telnyx/models/text_to_speech_generate_speech_params.rb +129 -3
  153. data/lib/telnyx/models/text_to_speech_list_voices_params.rb +1 -0
  154. data/lib/telnyx/models/text_to_speech_retrieve_speech_params.rb +1 -1
  155. data/lib/telnyx/models/update_email_template_request.rb +54 -1
  156. data/lib/telnyx/models/voice_clone_create_from_upload_params.rb +2 -2
  157. data/lib/telnyx/models/wireless_private_wireless_gateway.rb +120 -0
  158. data/lib/telnyx/models.rb +28 -0
  159. data/lib/telnyx/resources/ai/assistants/versions.rb +2 -2
  160. data/lib/telnyx/resources/ai/assistants.rb +4 -4
  161. data/lib/telnyx/resources/ai/audio.rb +2 -2
  162. data/lib/telnyx/resources/ai/memory/namespaces/profiles/memories.rb +122 -0
  163. data/lib/telnyx/resources/ai/memory/namespaces/profiles/sources.rb +163 -0
  164. data/lib/telnyx/resources/ai/memory/namespaces/profiles.rb +244 -0
  165. data/lib/telnyx/resources/ai/memory/namespaces/settings.rb +76 -0
  166. data/lib/telnyx/resources/ai/memory/namespaces.rb +55 -0
  167. data/lib/telnyx/resources/ai/memory.rb +21 -0
  168. data/lib/telnyx/resources/ai/typesafe/v1.rb +71 -0
  169. data/lib/telnyx/resources/ai/typesafe.rb +22 -0
  170. data/lib/telnyx/resources/ai.rb +8 -0
  171. data/lib/telnyx/resources/bot_challenge.rb +53 -0
  172. data/lib/telnyx/resources/bot_sessions.rb +57 -0
  173. data/lib/telnyx/resources/bot_signup.rb +97 -0
  174. data/lib/telnyx/resources/calls/actions.rb +5 -5
  175. data/lib/telnyx/resources/calls.rb +1 -1
  176. data/lib/telnyx/resources/compute/funcs/export.rb +105 -0
  177. data/lib/telnyx/resources/compute/funcs.rb +4 -0
  178. data/lib/telnyx/resources/conferences/actions.rb +1 -1
  179. data/lib/telnyx/resources/connections.rb +20 -0
  180. data/lib/telnyx/resources/detail_records.rb +1 -1
  181. data/lib/telnyx/resources/email_blocks/imports.rb +17 -3
  182. data/lib/telnyx/resources/email_blocks.rb +5 -3
  183. data/lib/telnyx/resources/email_domains.rb +28 -0
  184. data/lib/telnyx/resources/email_events.rb +21 -9
  185. data/lib/telnyx/resources/email_messages.rb +61 -15
  186. data/lib/telnyx/resources/email_templates.rb +33 -3
  187. data/lib/telnyx/resources/machine_payments.rb +73 -0
  188. data/lib/telnyx/resources/meeting_sessions/actions.rb +7 -1
  189. data/lib/telnyx/resources/meeting_sessions/artifacts.rb +18 -9
  190. data/lib/telnyx/resources/meeting_sessions.rb +6 -5
  191. data/lib/telnyx/resources/noise_suppression_engines.rb +37 -0
  192. data/lib/telnyx/resources/private_wireless_gateways.rb +5 -3
  193. data/lib/telnyx/resources/texml/accounts/calls.rb +9 -9
  194. data/lib/telnyx/resources/texml/accounts/conferences/participants.rb +15 -1
  195. data/lib/telnyx/resources/texml/calls.rb +57 -0
  196. data/lib/telnyx/resources/texml.rb +20 -1
  197. data/lib/telnyx/resources/text_to_speech.rb +6 -4
  198. data/lib/telnyx/resources/voice_clones.rb +4 -2
  199. data/lib/telnyx/version.rb +1 -1
  200. data/lib/telnyx.rb +75 -1
  201. data/rbi/telnyx/client.rbi +35 -0
  202. data/rbi/telnyx/models/ai/assistant_create_params.rbi +24 -16
  203. data/rbi/telnyx/models/ai/assistant_tool.rbi +479 -25
  204. data/rbi/telnyx/models/ai/assistant_update_params.rbi +50 -20
  205. data/rbi/telnyx/models/ai/assistants/update_assistant.rbi +54 -20
  206. data/rbi/telnyx/models/ai/audio_transcribe_params.rbi +71 -20
  207. data/rbi/telnyx/models/ai/audio_transcribe_response.rbi +63 -97
  208. data/rbi/telnyx/models/ai/audio_transcription_response_word.rbi +108 -0
  209. data/rbi/telnyx/models/ai/chat_completion_request.rbi +4 -58
  210. data/rbi/telnyx/models/ai/collection.rbi +10 -4
  211. data/rbi/telnyx/models/ai/collections/collections_source.rbi +110 -0
  212. data/rbi/telnyx/models/ai/collections/source.rbi +36 -62
  213. data/rbi/telnyx/models/ai/collections/source_create_response.rbi +14 -6
  214. data/rbi/telnyx/models/ai/collections/source_list_response.rbi +10 -4
  215. data/rbi/telnyx/models/ai/collections/source_replace_response.rbi +11 -4
  216. data/rbi/telnyx/models/ai/flow_node.rbi +12 -6
  217. data/rbi/telnyx/models/ai/flow_node_req.rbi +8 -4
  218. data/rbi/telnyx/models/ai/inference_embedding.rbi +32 -20
  219. data/rbi/telnyx/models/ai/inference_embedding_interruption_settings.rbi +10 -0
  220. data/rbi/telnyx/models/ai/inference_embedding_voice_settings.rbi +803 -0
  221. data/rbi/telnyx/models/ai/inference_embedding_webhook_tool_params.rbi +49 -19
  222. data/rbi/telnyx/models/ai/memory/namespace_retrieve_params.rbi +50 -0
  223. data/rbi/telnyx/models/ai/memory/namespace_retrieve_response.rbi +167 -0
  224. data/rbi/telnyx/models/ai/memory/namespaces/namespace_settings_response.rbi +156 -0
  225. data/rbi/telnyx/models/ai/memory/namespaces/page_meta.rbi +81 -0
  226. data/rbi/telnyx/models/ai/memory/namespaces/profile_delete_params.rbi +58 -0
  227. data/rbi/telnyx/models/ai/memory/namespaces/profile_delete_response.rbi +97 -0
  228. data/rbi/telnyx/models/ai/memory/namespaces/profile_ingest_params.rbi +149 -0
  229. data/rbi/telnyx/models/ai/memory/namespaces/profile_ingest_response.rbi +113 -0
  230. data/rbi/telnyx/models/ai/memory/namespaces/profile_list_params.rbi +74 -0
  231. data/rbi/telnyx/models/ai/memory/namespaces/profile_list_response.rbi +48 -0
  232. data/rbi/telnyx/models/ai/memory/namespaces/profile_recall_params.rbi +68 -0
  233. data/rbi/telnyx/models/ai/memory/namespaces/profile_recall_response.rbi +109 -0
  234. data/rbi/telnyx/models/ai/memory/namespaces/profile_remember_params.rbi +57 -0
  235. data/rbi/telnyx/models/ai/memory/namespaces/profile_remember_response.rbi +107 -0
  236. data/rbi/telnyx/models/ai/memory/namespaces/profile_retrieve_summary_params.rbi +58 -0
  237. data/rbi/telnyx/models/ai/memory/namespaces/profile_retrieve_summary_response.rbi +119 -0
  238. data/rbi/telnyx/models/ai/memory/namespaces/profiles/memory_list_params.rbi +102 -0
  239. data/rbi/telnyx/models/ai/memory/namespaces/profiles/memory_list_response.rbi +72 -0
  240. data/rbi/telnyx/models/ai/memory/namespaces/profiles/memory_retrieve_params.rbi +70 -0
  241. data/rbi/telnyx/models/ai/memory/namespaces/profiles/memory_retrieve_response.rbi +129 -0
  242. data/rbi/telnyx/models/ai/memory/namespaces/profiles/source_delete_params.rbi +74 -0
  243. data/rbi/telnyx/models/ai/memory/namespaces/profiles/source_delete_response.rbi +117 -0
  244. data/rbi/telnyx/models/ai/memory/namespaces/profiles/source_list_params.rbi +92 -0
  245. data/rbi/telnyx/models/ai/memory/namespaces/profiles/source_retrieve_params.rbi +74 -0
  246. data/rbi/telnyx/models/ai/memory/namespaces/profiles/source_retrieve_response.rbi +209 -0
  247. data/rbi/telnyx/models/ai/memory/namespaces/setting_list_params.rbi +49 -0
  248. data/rbi/telnyx/models/ai/memory/namespaces/setting_patch_all_params.rbi +125 -0
  249. data/rbi/telnyx/models/ai/openai/function_definition.rbi +56 -0
  250. data/rbi/telnyx/models/ai/post_conversation_settings.rbi +4 -4
  251. data/rbi/telnyx/models/ai/post_conversation_settings_req.rbi +4 -4
  252. data/rbi/telnyx/models/ai/privacy_settings.rbi +43 -3
  253. data/rbi/telnyx/models/ai/retrieval_tool.rbi +29 -3
  254. data/rbi/telnyx/models/ai/telephony_settings.rbi +174 -20
  255. data/rbi/telnyx/models/ai/tool_node.rbi +4 -2
  256. data/rbi/telnyx/models/ai/transcription_settings.rbi +25 -6
  257. data/rbi/telnyx/models/ai/transcription_settings_config.rbi +18 -16
  258. data/rbi/telnyx/models/ai/typesafe/v1_systemone_params.rbi +566 -0
  259. data/rbi/telnyx/models/ai/typesafe/v1_systemone_response.rbi +388 -0
  260. data/rbi/telnyx/models/ai/webhook_tool.rbi +23 -3
  261. data/rbi/telnyx/models/artifact_completed_webhook_event.rbi +30 -0
  262. data/rbi/telnyx/models/artifact_failed_webhook_event.rbi +20 -0
  263. data/rbi/telnyx/models/bot_challenge_create_params.rbi +68 -0
  264. data/rbi/telnyx/models/bot_challenge_create_response.rbi +169 -0
  265. data/rbi/telnyx/models/bot_session_list_params.rbi +53 -0
  266. data/rbi/telnyx/models/bot_session_list_response.rbi +64 -0
  267. data/rbi/telnyx/models/bot_signup_create_params.rbi +179 -0
  268. data/rbi/telnyx/models/bot_signup_resend_magic_link_params.rbi +43 -0
  269. data/rbi/telnyx/models/call_dial_params.rbi +111 -10
  270. data/rbi/telnyx/models/calls/action_gather_using_ai_params.rbi +22 -5
  271. data/rbi/telnyx/models/calls/action_gather_using_speak_params.rbi +22 -5
  272. data/rbi/telnyx/models/calls/action_speak_params.rbi +22 -5
  273. data/rbi/telnyx/models/calls/action_start_conversation_relay_params.rbi +22 -5
  274. data/rbi/telnyx/models/calls/action_transfer_params.rbi +111 -10
  275. data/rbi/telnyx/models/calls/soniox_voice_settings.rbi +86 -0
  276. data/rbi/telnyx/models/calls/transcription_config.rbi +29 -5
  277. data/rbi/telnyx/models/calls/transcription_engine_assemblyai_config.rbi +11 -3
  278. data/rbi/telnyx/models/calls/transcription_engine_parakeet_config.rbi +5 -0
  279. data/rbi/telnyx/models/compute/funcs/export_create_params.rbi +84 -0
  280. data/rbi/telnyx/models/compute/funcs/export_delete_all_params.rbi +42 -0
  281. data/rbi/telnyx/models/compute/funcs/export_list_params.rbi +42 -0
  282. data/rbi/telnyx/models/compute/funcs/func_log_export_config_response.rbi +227 -0
  283. data/rbi/telnyx/models/conferences/action_speak_params.rbi +22 -5
  284. data/rbi/telnyx/models/connection_retrieve_count_params.rbi +30 -0
  285. data/rbi/telnyx/models/connection_retrieve_count_response.rbi +353 -0
  286. data/rbi/telnyx/models/conversation_relay_embedded_config.rbi +22 -5
  287. data/rbi/telnyx/models/conversation_relay_language.rbi +10 -5
  288. data/rbi/telnyx/models/detail_record_list_params.rbi +30 -2
  289. data/rbi/telnyx/models/email_block.rbi +8 -0
  290. data/rbi/telnyx/models/email_blocks/email_block_import.rbi +6 -2
  291. data/rbi/telnyx/models/email_domain_rotate_dkim_params.rbi +35 -0
  292. data/rbi/telnyx/models/email_domain_rotate_dkim_response.rbi +487 -0
  293. data/rbi/telnyx/models/email_domains/email_webhook_event.rbi +20 -3
  294. data/rbi/telnyx/models/email_event_list_params.rbi +46 -11
  295. data/rbi/telnyx/models/email_event_list_response.rbi +599 -97
  296. data/rbi/telnyx/models/email_event_type.rbi +25 -0
  297. data/rbi/telnyx/models/email_inboxes/email_message.rbi +81 -3
  298. data/rbi/telnyx/models/email_message_batch_params.rbi +54 -20
  299. data/rbi/telnyx/models/email_message_create_params.rbi +80 -16
  300. data/rbi/telnyx/models/{email_message_retrieve_response.rbi → email_message_detail_response.rbi} +9 -16
  301. data/rbi/telnyx/models/email_message_list_params.rbi +40 -0
  302. data/rbi/telnyx/models/email_message_update_schedule_params.rbi +52 -0
  303. data/rbi/telnyx/models/email_messages/email_recipient.rbi +10 -0
  304. data/rbi/telnyx/models/email_messages/recipient_list_params.rbi +10 -0
  305. data/rbi/telnyx/models/email_template.rbi +84 -0
  306. data/rbi/telnyx/models/email_template_create_params.rbi +124 -0
  307. data/rbi/telnyx/models/email_webhook_recipient.rbi +68 -0
  308. data/rbi/telnyx/models/inbound_message_webhook_event.rbi +4 -173
  309. data/rbi/telnyx/models/machine_payment_account_credit_params.rbi +51 -0
  310. data/rbi/telnyx/models/machine_payment_account_credit_response.rbi +446 -0
  311. data/rbi/telnyx/models/meeting_session.rbi +36 -10
  312. data/rbi/telnyx/models/meeting_session_create_params.rbi +112 -48
  313. data/rbi/telnyx/models/meeting_sessions/artifact_create_params.rbi +161 -24
  314. data/rbi/telnyx/models/meeting_sessions/meeting_session_artifact.rbi +30 -0
  315. data/rbi/telnyx/models/message_event.rbi +48 -1
  316. data/rbi/telnyx/models/message_retrieve_group_messages_response.rbi +6 -12
  317. data/rbi/telnyx/models/message_retrieve_response.rbi +3 -3
  318. data/rbi/telnyx/models/message_schedule_response.rbi +4 -6
  319. data/rbi/telnyx/models/message_send_group_mms_response.rbi +4 -6
  320. data/rbi/telnyx/models/message_send_long_code_response.rbi +4 -6
  321. data/rbi/telnyx/models/message_send_number_pool_response.rbi +4 -6
  322. data/rbi/telnyx/models/message_send_response.rbi +4 -6
  323. data/rbi/telnyx/models/message_send_short_code_response.rbi +4 -6
  324. data/rbi/telnyx/models/messaging_inbound_message.rbi +152 -0
  325. data/rbi/telnyx/models/messaging_inbound_message_payload.rbi +477 -15
  326. data/rbi/telnyx/models/messaging_outbound_message_payload.rbi +90 -16
  327. data/rbi/telnyx/models/noise_suppression_engine_list_params.rbi +30 -0
  328. data/rbi/telnyx/models/noise_suppression_engine_list_response.rbi +94 -0
  329. data/rbi/telnyx/models/number_order_status_update.rbi +34 -3
  330. data/rbi/telnyx/models/number_order_status_update_webhook_event.rbi +39 -3
  331. data/rbi/telnyx/models/numbers_phone_number_detailed.rbi +24 -4
  332. data/rbi/telnyx/models/outbound_message.rbi +5 -0
  333. data/rbi/telnyx/models/outbound_message_payload.rbi +74 -4
  334. data/rbi/telnyx/models/private_wireless_gateway_create_params.rbi +71 -0
  335. data/rbi/telnyx/models/private_wireless_gateway_create_response.rbi +4 -4
  336. data/rbi/telnyx/models/private_wireless_gateway_delete_response.rbi +4 -4
  337. data/rbi/telnyx/models/private_wireless_gateway_retrieve_response.rbi +4 -4
  338. data/rbi/telnyx/models/speech_to_text_retrieve_transcription_params.rbi +5 -0
  339. data/rbi/telnyx/models/success_response.rbi +36 -0
  340. data/rbi/telnyx/models/texml/accounts/call_calls_params.rbi +339 -0
  341. data/rbi/telnyx/models/texml/accounts/call_retrieve_calls_params.rbi +22 -22
  342. data/rbi/telnyx/models/texml/accounts/conferences/participant_participants_params.rbi +111 -0
  343. data/rbi/telnyx/models/texml/call_create_params.rbi +124 -0
  344. data/rbi/telnyx/models/texml/call_create_response.rbi +98 -0
  345. data/rbi/telnyx/models/texml_initiate_ai_call_params.rbi +103 -0
  346. data/rbi/telnyx/models/text_to_speech_generate_speech_params.rbi +311 -2
  347. data/rbi/telnyx/models/text_to_speech_list_voices_params.rbi +5 -0
  348. data/rbi/telnyx/models/text_to_speech_retrieve_speech_params.rbi +5 -5
  349. data/rbi/telnyx/models/update_email_template_request.rbi +90 -0
  350. data/rbi/telnyx/models/voice_clone_create_from_upload_params.rbi +4 -4
  351. data/rbi/telnyx/models/wireless_private_wireless_gateway.rbi +211 -0
  352. data/rbi/telnyx/models.rbi +33 -0
  353. data/rbi/telnyx/resources/ai/assistants/versions.rbi +21 -8
  354. data/rbi/telnyx/resources/ai/assistants.rbi +27 -14
  355. data/rbi/telnyx/resources/ai/audio.rbi +20 -9
  356. data/rbi/telnyx/resources/ai/memory/namespaces/profiles/memories.rbi +94 -0
  357. data/rbi/telnyx/resources/ai/memory/namespaces/profiles/sources.rbi +117 -0
  358. data/rbi/telnyx/resources/ai/memory/namespaces/profiles.rbi +196 -0
  359. data/rbi/telnyx/resources/ai/memory/namespaces/settings.rbi +67 -0
  360. data/rbi/telnyx/resources/ai/memory/namespaces.rbi +37 -0
  361. data/rbi/telnyx/resources/ai/memory.rbi +18 -0
  362. data/rbi/telnyx/resources/ai/typesafe/v1.rbi +71 -0
  363. data/rbi/telnyx/resources/ai/typesafe.rbi +19 -0
  364. data/rbi/telnyx/resources/ai.rbi +6 -0
  365. data/rbi/telnyx/resources/bot_challenge.rbi +45 -0
  366. data/rbi/telnyx/resources/bot_sessions.rbi +45 -0
  367. data/rbi/telnyx/resources/bot_signup.rbi +87 -0
  368. data/rbi/telnyx/resources/calls/actions.rbi +38 -9
  369. data/rbi/telnyx/resources/calls.rbi +6 -5
  370. data/rbi/telnyx/resources/compute/funcs/export.rbi +86 -0
  371. data/rbi/telnyx/resources/compute/funcs.rbi +3 -0
  372. data/rbi/telnyx/resources/conferences/actions.rbi +8 -1
  373. data/rbi/telnyx/resources/connections.rbi +11 -0
  374. data/rbi/telnyx/resources/detail_records.rbi +12 -1
  375. data/rbi/telnyx/resources/email_blocks/imports.rbi +17 -3
  376. data/rbi/telnyx/resources/email_blocks.rbi +5 -3
  377. data/rbi/telnyx/resources/email_domains.rbi +22 -0
  378. data/rbi/telnyx/resources/email_events.rbi +30 -9
  379. data/rbi/telnyx/resources/email_messages.rbi +104 -18
  380. data/rbi/telnyx/resources/email_templates.rbi +71 -0
  381. data/rbi/telnyx/resources/machine_payments.rbi +64 -0
  382. data/rbi/telnyx/resources/meeting_sessions/actions.rbi +7 -1
  383. data/rbi/telnyx/resources/meeting_sessions/artifacts.rbi +19 -8
  384. data/rbi/telnyx/resources/meeting_sessions.rbi +15 -7
  385. data/rbi/telnyx/resources/noise_suppression_engines.rbi +26 -0
  386. data/rbi/telnyx/resources/private_wireless_gateways.rbi +9 -1
  387. data/rbi/telnyx/resources/texml/accounts/calls.rbi +6 -6
  388. data/rbi/telnyx/resources/texml/accounts/conferences/participants.rbi +32 -0
  389. data/rbi/telnyx/resources/texml/calls.rbi +50 -0
  390. data/rbi/telnyx/resources/texml.rbi +36 -0
  391. data/rbi/telnyx/resources/text_to_speech.rbi +7 -3
  392. data/rbi/telnyx/resources/voice_clones.rbi +4 -2
  393. data/sig/telnyx/client.rbs +10 -0
  394. data/sig/telnyx/models/ai/assistant_create_params.rbs +6 -6
  395. data/sig/telnyx/models/ai/assistant_tool.rbs +195 -26
  396. data/sig/telnyx/models/ai/assistant_update_params.rbs +6 -6
  397. data/sig/telnyx/models/ai/assistants/update_assistant.rbs +6 -6
  398. data/sig/telnyx/models/ai/audio_transcribe_params.rbs +10 -0
  399. data/sig/telnyx/models/ai/audio_transcribe_response.rbs +29 -43
  400. data/sig/telnyx/models/ai/audio_transcription_response_word.rbs +60 -0
  401. data/sig/telnyx/models/ai/chat_completion_request.rbs +4 -35
  402. data/sig/telnyx/models/ai/collection.rbs +6 -6
  403. data/sig/telnyx/models/ai/collections/collections_source.rbs +65 -0
  404. data/sig/telnyx/models/ai/collections/source.rbs +18 -37
  405. data/sig/telnyx/models/ai/collections/source_create_response.rbs +9 -6
  406. data/sig/telnyx/models/ai/collections/source_list_response.rbs +8 -6
  407. data/sig/telnyx/models/ai/collections/source_replace_response.rbs +6 -6
  408. data/sig/telnyx/models/ai/flow_node.rbs +6 -6
  409. data/sig/telnyx/models/ai/flow_node_req.rbs +6 -6
  410. data/sig/telnyx/models/ai/inference_embedding.rbs +6 -6
  411. data/sig/telnyx/models/ai/inference_embedding_interruption_settings.rbs +5 -0
  412. data/sig/telnyx/models/ai/inference_embedding_voice_settings.rbs +308 -0
  413. data/sig/telnyx/models/ai/inference_embedding_webhook_tool_params.rbs +20 -13
  414. data/sig/telnyx/models/ai/memory/namespace_retrieve_params.rbs +32 -0
  415. data/sig/telnyx/models/ai/memory/namespace_retrieve_response.rbs +69 -0
  416. data/sig/telnyx/models/ai/memory/namespaces/namespace_settings_response.rbs +59 -0
  417. data/sig/telnyx/models/ai/memory/namespaces/page_meta.rbs +41 -0
  418. data/sig/telnyx/models/ai/memory/namespaces/profile_delete_params.rbs +34 -0
  419. data/sig/telnyx/models/ai/memory/namespaces/profile_delete_response.rbs +41 -0
  420. data/sig/telnyx/models/ai/memory/namespaces/profile_ingest_params.rbs +69 -0
  421. data/sig/telnyx/models/ai/memory/namespaces/profile_ingest_response.rbs +58 -0
  422. data/sig/telnyx/models/ai/memory/namespaces/profile_list_params.rbs +42 -0
  423. data/sig/telnyx/models/ai/memory/namespaces/profile_list_response.rbs +22 -0
  424. data/sig/telnyx/models/ai/memory/namespaces/profile_recall_params.rbs +47 -0
  425. data/sig/telnyx/models/ai/memory/namespaces/profile_recall_response.rbs +53 -0
  426. data/sig/telnyx/models/ai/memory/namespaces/profile_remember_params.rbs +38 -0
  427. data/sig/telnyx/models/ai/memory/namespaces/profile_remember_response.rbs +49 -0
  428. data/sig/telnyx/models/ai/memory/namespaces/profile_retrieve_summary_params.rbs +34 -0
  429. data/sig/telnyx/models/ai/memory/namespaces/profile_retrieve_summary_response.rbs +58 -0
  430. data/sig/telnyx/models/ai/memory/namespaces/profiles/memory_list_params.rbs +63 -0
  431. data/sig/telnyx/models/ai/memory/namespaces/profiles/memory_list_response.rbs +43 -0
  432. data/sig/telnyx/models/ai/memory/namespaces/profiles/memory_retrieve_params.rbs +40 -0
  433. data/sig/telnyx/models/ai/memory/namespaces/profiles/memory_retrieve_response.rbs +65 -0
  434. data/sig/telnyx/models/ai/memory/namespaces/profiles/source_delete_params.rbs +40 -0
  435. data/sig/telnyx/models/ai/memory/namespaces/profiles/source_delete_response.rbs +55 -0
  436. data/sig/telnyx/models/ai/memory/namespaces/profiles/source_list_params.rbs +58 -0
  437. data/sig/telnyx/models/ai/memory/namespaces/profiles/source_retrieve_params.rbs +40 -0
  438. data/sig/telnyx/models/ai/memory/namespaces/profiles/source_retrieve_response.rbs +92 -0
  439. data/sig/telnyx/models/ai/memory/namespaces/setting_list_params.rbs +29 -0
  440. data/sig/telnyx/models/ai/memory/namespaces/setting_patch_all_params.rbs +47 -0
  441. data/sig/telnyx/models/ai/openai/function_definition.rbs +34 -0
  442. data/sig/telnyx/models/ai/privacy_settings.rbs +11 -3
  443. data/sig/telnyx/models/ai/retrieval_tool.rbs +10 -3
  444. data/sig/telnyx/models/ai/telephony_settings.rbs +52 -4
  445. data/sig/telnyx/models/ai/transcription_settings.rbs +4 -0
  446. data/sig/telnyx/models/ai/typesafe/v1_systemone_params.rbs +215 -0
  447. data/sig/telnyx/models/ai/typesafe/v1_systemone_response.rbs +152 -0
  448. data/sig/telnyx/models/ai/webhook_tool.rbs +10 -3
  449. data/sig/telnyx/models/artifact_completed_webhook_event.rbs +16 -1
  450. data/sig/telnyx/models/artifact_failed_webhook_event.rbs +11 -1
  451. data/sig/telnyx/models/bot_challenge_create_params.rbs +42 -0
  452. data/sig/telnyx/models/bot_challenge_create_response.rbs +72 -0
  453. data/sig/telnyx/models/bot_session_list_params.rbs +28 -0
  454. data/sig/telnyx/models/bot_session_list_response.rbs +26 -0
  455. data/sig/telnyx/models/bot_signup_create_params.rbs +89 -0
  456. data/sig/telnyx/models/bot_signup_resend_magic_link_params.rbs +20 -0
  457. data/sig/telnyx/models/call_dial_params.rbs +49 -0
  458. data/sig/telnyx/models/calls/action_gather_using_ai_params.rbs +1 -0
  459. data/sig/telnyx/models/calls/action_gather_using_speak_params.rbs +1 -0
  460. data/sig/telnyx/models/calls/action_speak_params.rbs +1 -0
  461. data/sig/telnyx/models/calls/action_start_conversation_relay_params.rbs +1 -0
  462. data/sig/telnyx/models/calls/action_transfer_params.rbs +49 -0
  463. data/sig/telnyx/models/calls/soniox_voice_settings.rbs +46 -0
  464. data/sig/telnyx/models/calls/transcription_config.rbs +4 -0
  465. data/sig/telnyx/models/calls/transcription_engine_assemblyai_config.rbs +3 -1
  466. data/sig/telnyx/models/calls/transcription_engine_parakeet_config.rbs +3 -1
  467. data/sig/telnyx/models/compute/funcs/export_create_params.rbs +50 -0
  468. data/sig/telnyx/models/compute/funcs/export_delete_all_params.rbs +27 -0
  469. data/sig/telnyx/models/compute/funcs/export_list_params.rbs +27 -0
  470. data/sig/telnyx/models/compute/funcs/func_log_export_config_response.rbs +115 -0
  471. data/sig/telnyx/models/conferences/action_speak_params.rbs +1 -0
  472. data/sig/telnyx/models/connection_retrieve_count_params.rbs +15 -0
  473. data/sig/telnyx/models/connection_retrieve_count_response.rbs +169 -0
  474. data/sig/telnyx/models/conversation_relay_embedded_config.rbs +1 -0
  475. data/sig/telnyx/models/conversation_relay_language.rbs +1 -0
  476. data/sig/telnyx/models/email_domain_rotate_dkim_params.rbs +23 -0
  477. data/sig/telnyx/models/email_domain_rotate_dkim_response.rbs +195 -0
  478. data/sig/telnyx/models/email_domains/email_webhook_event.rbs +6 -0
  479. data/sig/telnyx/models/email_event_list_params.rbs +7 -7
  480. data/sig/telnyx/models/email_event_list_response.rbs +235 -59
  481. data/sig/telnyx/models/email_event_type.rbs +20 -0
  482. data/sig/telnyx/models/email_inboxes/email_message.rbs +43 -4
  483. data/sig/telnyx/models/{email_message_retrieve_response.rbs → email_message_detail_response.rbs} +6 -10
  484. data/sig/telnyx/models/email_message_list_params.rbs +18 -1
  485. data/sig/telnyx/models/email_message_update_schedule_params.rbs +28 -0
  486. data/sig/telnyx/models/email_messages/email_recipient.rbs +4 -0
  487. data/sig/telnyx/models/email_messages/recipient_list_params.rbs +4 -0
  488. data/sig/telnyx/models/email_template.rbs +29 -0
  489. data/sig/telnyx/models/email_template_create_params.rbs +33 -0
  490. data/sig/telnyx/models/email_webhook_recipient.rbs +46 -0
  491. data/sig/telnyx/models/inbound_message_webhook_event.rbs +6 -79
  492. data/sig/telnyx/models/machine_payment_account_credit_params.rbs +23 -0
  493. data/sig/telnyx/models/machine_payment_account_credit_response.rbs +164 -0
  494. data/sig/telnyx/models/meeting_session.rbs +20 -5
  495. data/sig/telnyx/models/meeting_session_create_params.rbs +28 -20
  496. data/sig/telnyx/models/meeting_sessions/artifact_create_params.rbs +53 -10
  497. data/sig/telnyx/models/meeting_sessions/meeting_session_artifact.rbs +16 -1
  498. data/sig/telnyx/models/message_event.rbs +10 -0
  499. data/sig/telnyx/models/message_retrieve_group_messages_response.rbs +6 -8
  500. data/sig/telnyx/models/message_retrieve_response.rbs +1 -2
  501. data/sig/telnyx/models/message_schedule_response.rbs +6 -7
  502. data/sig/telnyx/models/message_send_group_mms_response.rbs +6 -6
  503. data/sig/telnyx/models/message_send_long_code_response.rbs +6 -6
  504. data/sig/telnyx/models/message_send_number_pool_response.rbs +6 -6
  505. data/sig/telnyx/models/message_send_response.rbs +6 -7
  506. data/sig/telnyx/models/message_send_short_code_response.rbs +6 -6
  507. data/sig/telnyx/models/messaging_inbound_message.rbs +76 -0
  508. data/sig/telnyx/models/messaging_inbound_message_payload.rbs +235 -6
  509. data/sig/telnyx/models/messaging_outbound_message_payload.rbs +39 -1
  510. data/sig/telnyx/models/noise_suppression_engine_list_params.rbs +15 -0
  511. data/sig/telnyx/models/noise_suppression_engine_list_response.rbs +43 -0
  512. data/sig/telnyx/models/number_order_status_update.rbs +14 -4
  513. data/sig/telnyx/models/number_order_status_update_webhook_event.rbs +14 -4
  514. data/sig/telnyx/models/numbers_phone_number_detailed.rbs +5 -0
  515. data/sig/telnyx/models/outbound_message.rbs +2 -1
  516. data/sig/telnyx/models/outbound_message_payload.rbs +45 -7
  517. data/sig/telnyx/models/private_wireless_gateway_create_params.rbs +25 -1
  518. data/sig/telnyx/models/private_wireless_gateway_create_response.rbs +6 -6
  519. data/sig/telnyx/models/private_wireless_gateway_delete_response.rbs +6 -6
  520. data/sig/telnyx/models/private_wireless_gateway_retrieve_response.rbs +6 -6
  521. data/sig/telnyx/models/speech_to_text_retrieve_transcription_params.rbs +2 -0
  522. data/sig/telnyx/models/success_response.rbs +15 -0
  523. data/sig/telnyx/models/texml/accounts/call_calls_params.rbs +159 -0
  524. data/sig/telnyx/models/texml/accounts/call_retrieve_calls_params.rbs +14 -14
  525. data/sig/telnyx/models/texml/accounts/conferences/participant_participants_params.rbs +49 -0
  526. data/sig/telnyx/models/texml/call_create_params.rbs +72 -0
  527. data/sig/telnyx/models/texml/call_create_response.rbs +47 -0
  528. data/sig/telnyx/models/texml_initiate_ai_call_params.rbs +49 -0
  529. data/sig/telnyx/models/text_to_speech_generate_speech_params.rbs +114 -0
  530. data/sig/telnyx/models/text_to_speech_list_voices_params.rbs +2 -0
  531. data/sig/telnyx/models/text_to_speech_retrieve_speech_params.rbs +2 -2
  532. data/sig/telnyx/models/update_email_template_request.rbs +33 -0
  533. data/sig/telnyx/models/wireless_private_wireless_gateway.rbs +109 -0
  534. data/sig/telnyx/models.rbs +28 -0
  535. data/sig/telnyx/resources/ai/assistants/versions.rbs +1 -1
  536. data/sig/telnyx/resources/ai/assistants.rbs +2 -2
  537. data/sig/telnyx/resources/ai/memory/namespaces/profiles/memories.rbs +32 -0
  538. data/sig/telnyx/resources/ai/memory/namespaces/profiles/sources.rbs +38 -0
  539. data/sig/telnyx/resources/ai/memory/namespaces/profiles.rbs +59 -0
  540. data/sig/telnyx/resources/ai/memory/namespaces/settings.rbs +24 -0
  541. data/sig/telnyx/resources/ai/memory/namespaces.rbs +21 -0
  542. data/sig/telnyx/resources/ai/memory.rbs +11 -0
  543. data/sig/telnyx/resources/ai/typesafe/v1.rbs +18 -0
  544. data/sig/telnyx/resources/ai/typesafe.rbs +11 -0
  545. data/sig/telnyx/resources/ai.rbs +4 -0
  546. data/sig/telnyx/resources/bot_challenge.rbs +14 -0
  547. data/sig/telnyx/resources/bot_sessions.rbs +13 -0
  548. data/sig/telnyx/resources/bot_signup.rbs +24 -0
  549. data/sig/telnyx/resources/compute/funcs/export.rbs +30 -0
  550. data/sig/telnyx/resources/compute/funcs.rbs +2 -0
  551. data/sig/telnyx/resources/connections.rbs +4 -0
  552. data/sig/telnyx/resources/email_domains.rbs +5 -0
  553. data/sig/telnyx/resources/email_events.rbs +2 -2
  554. data/sig/telnyx/resources/email_messages.rbs +9 -1
  555. data/sig/telnyx/resources/email_templates.rbs +9 -0
  556. data/sig/telnyx/resources/machine_payments.rbs +12 -0
  557. data/sig/telnyx/resources/meeting_sessions/artifacts.rbs +1 -1
  558. data/sig/telnyx/resources/meeting_sessions.rbs +1 -0
  559. data/sig/telnyx/resources/noise_suppression_engines.rbs +11 -0
  560. data/sig/telnyx/resources/private_wireless_gateways.rbs +2 -1
  561. data/sig/telnyx/resources/texml/accounts/conferences/participants.rbs +7 -0
  562. data/sig/telnyx/resources/texml/calls.rbs +19 -0
  563. data/sig/telnyx/resources/texml.rbs +9 -0
  564. data/sig/telnyx/resources/text_to_speech.rbs +1 -0
  565. metadata +227 -5
@@ -16,8 +16,13 @@ module Telnyx
16
16
  required :messages, -> { Telnyx::Internal::Type::ArrayOf[Telnyx::EmailMessageBatchParams::Message] }
17
17
 
18
18
  # @!attribute sandbox_mode
19
- # Applies sandbox mode to all messages in the batch. Overrides any per-message
20
- # sandbox_mode in the messages array.
19
+ # Applies sandbox mode to all messages in the batch and overrides any per-message
20
+ # `sandbox_mode` value — each message's effective `sandbox_mode` is exactly this
21
+ # envelope value. Reserved recipients at `test.telnyx.com` produce the
22
+ # deterministic event chains documented on CreateEmailRequest.sandbox_mode; no
23
+ # batch item is injected into the MTA or outbound Kafka path. Sandbox batch items
24
+ # are non-billable, consume no daily-send-limit quota, and feed no
25
+ # delivery-reputation signals.
21
26
  #
22
27
  # @return [Boolean, nil]
23
28
  optional :sandbox_mode, Telnyx::Internal::Type::Boolean
@@ -33,7 +38,7 @@ module Telnyx
33
38
  #
34
39
  # @param messages [Array<Telnyx::Models::EmailMessageBatchParams::Message>] Array of email messages to send. Up to 1,000 messages per batch request. Each me
35
40
  #
36
- # @param sandbox_mode [Boolean] Applies sandbox mode to all messages in the batch. Overrides any per-message san
41
+ # @param sandbox_mode [Boolean] Applies sandbox mode to all messages in the batch and overrides any per-message
37
42
  #
38
43
  # @param idempotency_key [String]
39
44
  #
@@ -105,7 +110,9 @@ module Telnyx
105
110
  optional :inline_css, Telnyx::Internal::Type::Boolean
106
111
 
107
112
  # @!attribute metadata
108
- # Custom metadata. Write-only; not returned in responses.
113
+ # Custom metadata key/value pairs. Stored on the message, returned on message
114
+ # responses, and propagated to Email Detail Records. Usable in `filter[metadata]`
115
+ # when listing messages.
109
116
  #
110
117
  # @return [Hash{Symbol=>Object}, nil]
111
118
  optional :metadata, Telnyx::Internal::Type::HashOf[Telnyx::Internal::Type::Unknown]
@@ -118,15 +125,21 @@ module Telnyx
118
125
  optional :reply_to, union: -> { Telnyx::EmailAddressInput }
119
126
 
120
127
  # @!attribute sandbox_mode
128
+ # Per-message sandbox flag. The batch-level `sandbox_mode` envelope value is
129
+ # authoritative: it overwrites every message's `sandbox_mode` before processing,
130
+ # including the `false` default when the envelope omits the field. A per-item
131
+ # `sandbox_mode: true` inside a non-sandbox batch is therefore a real send. Set
132
+ # the envelope field to run any batch item in sandbox mode.
121
133
  #
122
134
  # @return [Boolean, nil]
123
135
  optional :sandbox_mode, Telnyx::Internal::Type::Boolean
124
136
 
125
137
  # @!attribute scheduled_at
126
- # Future ISO 8601 time to schedule sending. Invalid or past timestamps are
127
- # silently ignored and the email is sent immediately. The legacy alias `send_at`
128
- # is still accepted for backward compatibility; when both are provided,
129
- # `scheduled_at` wins.
138
+ # Future ISO 8601 delivery time. Invalid or non-future timestamps are rejected.
139
+ # Single sends return HTTP 422; in batch sends the invalid item is reported in the
140
+ # 207 per-item errors while other items continue. `send_at` remains a deprecated
141
+ # request alias. A non-null `scheduled_at` takes precedence over `send_at`; when
142
+ # `scheduled_at` is omitted or null, `send_at` is used.
130
143
  #
131
144
  # @return [Time, nil]
132
145
  optional :scheduled_at, Time, nil?: true
@@ -148,8 +161,9 @@ module Telnyx
148
161
  optional :subject, String
149
162
 
150
163
  # @!attribute tags
151
- # Tags for categorization and reporting. Stored on the message and propagated to
152
- # Email Detail Records. Not returned in API responses.
164
+ # Tags for categorization and filtering. Stored on the message, returned on
165
+ # message responses, and propagated to Email Detail Records. Usable in
166
+ # `filter[tags]` when listing messages.
153
167
  #
154
168
  # @return [Array<String>, nil]
155
169
  optional :tags, Telnyx::Internal::Type::ArrayOf[String]
@@ -162,7 +176,10 @@ module Telnyx
162
176
  # @!attribute template_variables
163
177
  # Variables for Liquid template rendering. Non-object values may cause a 422
164
178
  # validation error on message creation, but are silently treated as an empty
165
- # object for template rendering.
179
+ # object for template rendering. When the template enables `strict_variables`, a
180
+ # missing required variable fails the request with 422 (single send) or a per-item
181
+ # `unprocessable_entity` error (batch) naming the variable; no message is
182
+ # persisted for the failed item.
166
183
  #
167
184
  # @return [Hash{Symbol=>Object}, nil]
168
185
  optional :template_variables, Telnyx::Internal::Type::HashOf[Telnyx::Internal::Type::Unknown]
@@ -215,19 +232,19 @@ module Telnyx
215
232
  #
216
233
  # @param inline_css [Boolean]
217
234
  #
218
- # @param metadata [Hash{Symbol=>Object}] Custom metadata. Write-only; not returned in responses.
235
+ # @param metadata [Hash{Symbol=>Object}] Custom metadata key/value pairs. Stored on the message, returned on message resp
219
236
  #
220
237
  # @param reply_to [String, Telnyx::Models::EmailInboxes::EmailAddress] Reply-to address. If provided as an object with a name, only the email is stored
221
238
  #
222
- # @param sandbox_mode [Boolean]
239
+ # @param sandbox_mode [Boolean] Per-message sandbox flag. The batch-level `sandbox_mode` envelope value is autho
223
240
  #
224
- # @param scheduled_at [Time, nil] Future ISO 8601 time to schedule sending. Invalid or past timestamps
241
+ # @param scheduled_at [Time, nil] Future ISO 8601 delivery time. Invalid or non-future timestamps are rejected. Si
225
242
  #
226
243
  # @param send_at [Time] Deprecated alias for `scheduled_at`.
227
244
  #
228
245
  # @param subject [String] Required unless `template_id` is supplied. When using a template, the template's
229
246
  #
230
- # @param tags [Array<String>] Tags for categorization and reporting. Stored on the message and propagated to E
247
+ # @param tags [Array<String>] Tags for categorization and filtering. Stored on the message, returned on messag
231
248
  #
232
249
  # @param template_id [String]
233
250
  #
@@ -101,7 +101,9 @@ module Telnyx
101
101
  optional :inline_css, Telnyx::Internal::Type::Boolean
102
102
 
103
103
  # @!attribute metadata
104
- # Custom metadata. Write-only; not returned in responses.
104
+ # Custom metadata key/value pairs. Stored on the message, returned on message
105
+ # responses, and propagated to Email Detail Records. Usable in `filter[metadata]`
106
+ # when listing messages.
105
107
  #
106
108
  # @return [Hash{Symbol=>Object}, nil]
107
109
  optional :metadata, Telnyx::Internal::Type::HashOf[Telnyx::Internal::Type::Unknown]
@@ -127,15 +129,41 @@ module Telnyx
127
129
  optional :reply_to_all, Telnyx::Internal::Type::Boolean, nil?: true
128
130
 
129
131
  # @!attribute sandbox_mode
132
+ # Validates and accepts the message without injecting it into the MTA or outbound
133
+ # Kafka path. Nothing is delivered: sandbox records are non-billable, consume no
134
+ # daily-send-limit quota, and feed no delivery-reputation signals.
135
+ #
136
+ # The reserved sandbox test-recipient domain is `test.telnyx.com`. In sandbox
137
+ # mode, these addresses produce deterministic recipient-scoped lifecycle events:
138
+ #
139
+ # - `delivered@test.telnyx.com`: queued -> sending -> sent -> delivered
140
+ # - `hard-bounce@test.telnyx.com`: queued -> sending -> sent -> bounced
141
+ # (permanent)
142
+ # - `soft-bounce@test.telnyx.com`: queued -> sending -> sent -> bounced
143
+ # (transient)
144
+ # - `complaint@test.telnyx.com`: queued -> sending -> sent -> complained
145
+ # - `suppressed@test.telnyx.com`: queued -> suppressed
146
+ # - `invalid@test.telnyx.com`: queued -> sending -> failed (invalid recipient)
147
+ # - `dkim-fail@test.telnyx.com`: queued -> sending -> failed (DKIM unavailable)
148
+ # - `rate-limit@test.telnyx.com`: queued -> sending -> failed (rate limit
149
+ # exceeded)
150
+ #
151
+ # Matching is case-insensitive for both the local part and the domain and requires
152
+ # the exact domain `test.telnyx.com` — subdomains and other domains do not match.
153
+ # Mixed sandbox sends simulate only reserved test recipients; other recipients
154
+ # retain ordinary sandbox behavior (accepted, no delivery attempted). Hard-bounce
155
+ # and complaint outcomes also use the normal automatic-suppression pipeline.
156
+ # Non-sandbox sends to these addresses use the normal delivery path.
130
157
  #
131
158
  # @return [Boolean, nil]
132
159
  optional :sandbox_mode, Telnyx::Internal::Type::Boolean
133
160
 
134
161
  # @!attribute scheduled_at
135
- # Future ISO 8601 time to schedule sending. Invalid or past timestamps are
136
- # silently ignored and the email is sent immediately. The legacy alias `send_at`
137
- # is still accepted for backward compatibility; when both are provided,
138
- # `scheduled_at` wins.
162
+ # Future ISO 8601 delivery time. Invalid or non-future timestamps are rejected.
163
+ # Single sends return HTTP 422; in batch sends the invalid item is reported in the
164
+ # 207 per-item errors while other items continue. `send_at` remains a deprecated
165
+ # request alias. A non-null `scheduled_at` takes precedence over `send_at`; when
166
+ # `scheduled_at` is omitted or null, `send_at` is used.
139
167
  #
140
168
  # @return [Time, nil]
141
169
  optional :scheduled_at, Time, nil?: true
@@ -157,8 +185,9 @@ module Telnyx
157
185
  optional :subject, String
158
186
 
159
187
  # @!attribute tags
160
- # Tags for categorization and reporting. Stored on the message and propagated to
161
- # Email Detail Records. Not returned in API responses.
188
+ # Tags for categorization and filtering. Stored on the message, returned on
189
+ # message responses, and propagated to Email Detail Records. Usable in
190
+ # `filter[tags]` when listing messages.
162
191
  #
163
192
  # @return [Array<String>, nil]
164
193
  optional :tags, Telnyx::Internal::Type::ArrayOf[String]
@@ -171,7 +200,10 @@ module Telnyx
171
200
  # @!attribute template_variables
172
201
  # Variables for Liquid template rendering. Non-object values may cause a 422
173
202
  # validation error on message creation, but are silently treated as an empty
174
- # object for template rendering.
203
+ # object for template rendering. When the template enables `strict_variables`, a
204
+ # missing required variable fails the request with 422 (single send) or a per-item
205
+ # `unprocessable_entity` error (batch) naming the variable; no message is
206
+ # persisted for the failed item.
175
207
  #
176
208
  # @return [Hash{Symbol=>Object}, nil]
177
209
  optional :template_variables, Telnyx::Internal::Type::HashOf[Telnyx::Internal::Type::Unknown]
@@ -225,21 +257,21 @@ module Telnyx
225
257
  #
226
258
  # @param inline_css [Boolean]
227
259
  #
228
- # @param metadata [Hash{Symbol=>Object}] Custom metadata. Write-only; not returned in responses.
260
+ # @param metadata [Hash{Symbol=>Object}] Custom metadata key/value pairs. Stored on the message, returned on message resp
229
261
  #
230
262
  # @param reply_to [String, Telnyx::Models::EmailInboxes::EmailAddress] Reply-to address. If provided as an object with a name, only the email is stored
231
263
  #
232
264
  # @param reply_to_all [Boolean, nil] Indicates a reply-all intent. In Phase 1 (wire-only) this does not
233
265
  #
234
- # @param sandbox_mode [Boolean]
266
+ # @param sandbox_mode [Boolean] Validates and accepts the message without injecting it into the MTA or outbound
235
267
  #
236
- # @param scheduled_at [Time, nil] Future ISO 8601 time to schedule sending. Invalid or past timestamps
268
+ # @param scheduled_at [Time, nil] Future ISO 8601 delivery time. Invalid or non-future timestamps are rejected. Si
237
269
  #
238
270
  # @param send_at [Time] Deprecated alias for `scheduled_at`.
239
271
  #
240
272
  # @param subject [String] Required unless `template_id` is supplied. When using a template, the template's
241
273
  #
242
- # @param tags [Array<String>] Tags for categorization and reporting. Stored on the message and propagated to E
274
+ # @param tags [Array<String>] Tags for categorization and filtering. Stored on the message, returned on messag
243
275
  #
244
276
  # @param template_id [String]
245
277
  #
@@ -3,16 +3,16 @@
3
3
  module Telnyx
4
4
  module Models
5
5
  # @see Telnyx::Resources::EmailMessages#retrieve
6
- class EmailMessageRetrieveResponse < Telnyx::Internal::Type::BaseModel
6
+ class EmailMessageDetailResponse < Telnyx::Internal::Type::BaseModel
7
7
  # @!attribute data
8
8
  #
9
- # @return [Telnyx::Models::EmailMessageRetrieveResponse::Data]
10
- required :data, -> { Telnyx::Models::EmailMessageRetrieveResponse::Data }
9
+ # @return [Telnyx::Models::EmailMessageDetailResponse::Data]
10
+ required :data, -> { Telnyx::EmailMessageDetailResponse::Data }
11
11
 
12
12
  # @!method initialize(data:)
13
- # @param data [Telnyx::Models::EmailMessageRetrieveResponse::Data]
13
+ # @param data [Telnyx::Models::EmailMessageDetailResponse::Data]
14
14
 
15
- # @see Telnyx::Models::EmailMessageRetrieveResponse#data
15
+ # @see Telnyx::Models::EmailMessageDetailResponse#data
16
16
  class Data < Telnyx::Models::EmailInboxes::EmailMessage
17
17
  # @!attribute html_body
18
18
  # HTML body submitted for the message.
@@ -7,6 +7,27 @@ module Telnyx
7
7
  extend Telnyx::Internal::Type::RequestParameters::Converter
8
8
  include Telnyx::Internal::Type::RequestParameters
9
9
 
10
+ # @!attribute filter_metadata
11
+ # Metadata containment filter, supplied as a JSON object or comma-separated
12
+ # `key=value` pairs. All supplied key/value pairs must be contained in the message
13
+ # metadata. An empty value or empty JSON object omits the filter. Malformed
14
+ # values, valid non-object JSON, pairs without `=`, empty keys, and
15
+ # non-string/nested query shapes return HTTP 400.
16
+ #
17
+ # @return [String, nil]
18
+ optional :filter_metadata, String
19
+
20
+ # @!attribute filter_tags
21
+ # Comma-separated tags. Each segment is trimmed, and messages having at least one
22
+ # supplied tag are returned; matching is exact and case-sensitive after trimming.
23
+ # Because commas delimit values and surrounding whitespace is removed, this filter
24
+ # cannot represent stored tags containing literal commas or leading/trailing
25
+ # whitespace. An empty value omits the filter. Empty segments and
26
+ # non-string/nested query shapes return HTTP 400.
27
+ #
28
+ # @return [String, nil]
29
+ optional :filter_tags, String
30
+
10
31
  # @!attribute page_cursor
11
32
  # Opaque URL-safe Base64 cursor returned by a previous list response.
12
33
  #
@@ -20,10 +41,14 @@ module Telnyx
20
41
  # @return [Integer, nil]
21
42
  optional :page_size, Integer
22
43
 
23
- # @!method initialize(page_cursor: nil, page_size: nil, request_options: {})
44
+ # @!method initialize(filter_metadata: nil, filter_tags: nil, page_cursor: nil, page_size: nil, request_options: {})
24
45
  # Some parameter documentations has been truncated, see
25
46
  # {Telnyx::Models::EmailMessageListParams} for more details.
26
47
  #
48
+ # @param filter_metadata [String] Metadata containment filter, supplied as a JSON object or comma-separated `key=v
49
+ #
50
+ # @param filter_tags [String] Comma-separated tags. Each segment is trimmed, and messages having at least one
51
+ #
27
52
  # @param page_cursor [String] Opaque URL-safe Base64 cursor returned by a previous list response.
28
53
  #
29
54
  # @param page_size [Integer] Number of results to return. Defaults to 25; maximum is 100. Invalid values are
@@ -0,0 +1,29 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Telnyx
4
+ module Models
5
+ # @see Telnyx::Resources::EmailMessages#update_schedule
6
+ class EmailMessageUpdateScheduleParams < Telnyx::Internal::Type::BaseModel
7
+ extend Telnyx::Internal::Type::RequestParameters::Converter
8
+ include Telnyx::Internal::Type::RequestParameters
9
+
10
+ # @!attribute email_id
11
+ #
12
+ # @return [String]
13
+ required :email_id, String
14
+
15
+ # @!attribute scheduled_at
16
+ # New ISO 8601 delivery time. Must be strictly in the future.
17
+ #
18
+ # @return [Time]
19
+ required :scheduled_at, Time
20
+
21
+ # @!method initialize(email_id:, scheduled_at:, request_options: {})
22
+ # @param email_id [String]
23
+ #
24
+ # @param scheduled_at [Time] New ISO 8601 delivery time. Must be strictly in the future.
25
+ #
26
+ # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}]
27
+ end
28
+ end
29
+ end
@@ -134,6 +134,8 @@ module Telnyx
134
134
  FAILED = :failed
135
135
  GW_REJECT = :gw_reject
136
136
  CANCELLED = :cancelled
137
+ INJECTION_TIMEOUT = :injection_timeout
138
+ EXPIRED = :expired
137
139
 
138
140
  # @!method self.values
139
141
  # @return [Array<Symbol>]
@@ -79,6 +79,8 @@ module Telnyx
79
79
  FAILED = :failed
80
80
  GW_REJECT = :gw_reject
81
81
  CANCELLED = :cancelled
82
+ INJECTION_TIMEOUT = :injection_timeout
83
+ EXPIRED = :expired
82
84
 
83
85
  # @!method self.values
84
86
  # @return [Array<Symbol>]
@@ -9,6 +9,14 @@ module Telnyx
9
9
  # @return [String]
10
10
  required :id, String
11
11
 
12
+ # @!attribute autoescape
13
+ # Whether HTML autoescaping is enabled for this template. When `true`, only
14
+ # rendered `html_body` expression output is HTML-escaped at the output boundary;
15
+ # `subject` and `text_body` are never autoescaped.
16
+ #
17
+ # @return [Boolean]
18
+ required :autoescape, Telnyx::Internal::Type::Boolean
19
+
12
20
  # @!attribute created_at
13
21
  #
14
22
  # @return [Time]
@@ -29,6 +37,14 @@ module Telnyx
29
37
  # @return [Symbol, Telnyx::Models::EmailTemplate::RecordType]
30
38
  required :record_type, enum: -> { Telnyx::EmailTemplate::RecordType }
31
39
 
40
+ # @!attribute strict_variables
41
+ # Whether strict variable validation is enabled for this template. When `true`,
42
+ # sends and renders that are missing a variable marked `required: true` in
43
+ # `variable_schema` fail with 422 naming the variable.
44
+ #
45
+ # @return [Boolean]
46
+ required :strict_variables, Telnyx::Internal::Type::Boolean
47
+
32
48
  # @!attribute subject
33
49
  #
34
50
  # @return [String, nil]
@@ -44,21 +60,48 @@ module Telnyx
44
60
  # @return [Time]
45
61
  required :updated_at, Time
46
62
 
63
+ # @!attribute variable_schema
64
+ # Structured variable requirements, or `null` when the template uses only the
65
+ # legacy `variables` array.
66
+ #
67
+ # @return [Hash{Symbol=>Telnyx::Models::EmailTemplate::VariableSchema}, nil]
68
+ required :variable_schema,
69
+ -> { Telnyx::Internal::Type::HashOf[Telnyx::EmailTemplate::VariableSchema] },
70
+ nil?: true
71
+
47
72
  # @!attribute variables
73
+ # Legacy unstructured variable names. This path remains supported unchanged.
48
74
  #
49
75
  # @return [Array<String>]
50
76
  required :variables, Telnyx::Internal::Type::ArrayOf[String]
51
77
 
52
- # @!method initialize(id:, created_at:, html_body:, name:, record_type:, subject:, text_body:, updated_at:, variables:)
78
+ # @!method initialize(id:, autoescape:, created_at:, html_body:, name:, record_type:, strict_variables:, subject:, text_body:, updated_at:, variable_schema:, variables:)
79
+ # Some parameter documentations has been truncated, see
80
+ # {Telnyx::Models::EmailTemplate} for more details.
81
+ #
53
82
  # @param id [String]
83
+ #
84
+ # @param autoescape [Boolean] Whether HTML autoescaping is enabled for this template. When `true`, only render
85
+ #
54
86
  # @param created_at [Time]
87
+ #
55
88
  # @param html_body [String, nil]
89
+ #
56
90
  # @param name [String]
91
+ #
57
92
  # @param record_type [Symbol, Telnyx::Models::EmailTemplate::RecordType]
93
+ #
94
+ # @param strict_variables [Boolean] Whether strict variable validation is enabled for this template. When `true`, se
95
+ #
58
96
  # @param subject [String, nil]
97
+ #
59
98
  # @param text_body [String, nil]
99
+ #
60
100
  # @param updated_at [Time]
61
- # @param variables [Array<String>]
101
+ #
102
+ # @param variable_schema [Hash{Symbol=>Telnyx::Models::EmailTemplate::VariableSchema}, nil] Structured variable requirements, or `null` when the template uses only the lega
103
+ #
104
+ # @param variables [Array<String>] Legacy unstructured variable names. This path remains supported unchanged.
62
105
 
63
106
  # @see Telnyx::Models::EmailTemplate#record_type
64
107
  module RecordType
@@ -69,6 +112,29 @@ module Telnyx
69
112
  # @!method self.values
70
113
  # @return [Array<Symbol>]
71
114
  end
115
+
116
+ class VariableSchema < Telnyx::Internal::Type::BaseModel
117
+ # @!attribute required
118
+ # Whether the variable must be supplied when strict variable validation is
119
+ # enabled.
120
+ #
121
+ # @return [Boolean]
122
+ required :required, Telnyx::Internal::Type::Boolean
123
+
124
+ # @!attribute default
125
+ # Default value for an optional variable. Rejected when `required` is `true`.
126
+ #
127
+ # @return [String, nil]
128
+ optional :default, String
129
+
130
+ # @!method initialize(required:, default: nil)
131
+ # Some parameter documentations has been truncated, see
132
+ # {Telnyx::Models::EmailTemplate::VariableSchema} for more details.
133
+ #
134
+ # @param required [Boolean] Whether the variable must be supplied when strict variable validation is enabled
135
+ #
136
+ # @param default [String] Default value for an optional variable. Rejected when `required` is `true`.
137
+ end
72
138
  end
73
139
  end
74
140
  end
@@ -13,12 +13,36 @@ module Telnyx
13
13
  # @return [String]
14
14
  required :name, String
15
15
 
16
+ # @!attribute autoescape
17
+ # Per-template HTML autoescaping setting. Defaults to `false` for backward
18
+ # compatibility. When `true`, the rendered `html_body` HTML-escapes each Liquid
19
+ # expression's output at the output boundary (after its filters run, before
20
+ # concatenation with literal template markup). Input values are never mutated and
21
+ # `subject`/`text_body` are never autoescaped. The boundary escape is idempotent:
22
+ # HTML entities already present in the output (e.g. from an explicit `escape`
23
+ # filter) are preserved, so an explicit `escape`/`escape_once` is never
24
+ # double-escaped, and markup introduced by any later filter in the chain is still
25
+ # escaped.
26
+ #
27
+ # @return [Boolean, nil]
28
+ optional :autoescape, Telnyx::Internal::Type::Boolean
29
+
16
30
  # @!attribute html_body
17
31
  # Liquid template HTML body.
18
32
  #
19
33
  # @return [String, nil]
20
34
  optional :html_body, String, nil?: true
21
35
 
36
+ # @!attribute strict_variables
37
+ # Per-template strict variable-validation setting. Defaults to `false` for
38
+ # backward compatibility. When `true`, a send or render that is missing a variable
39
+ # marked `required: true` in `variable_schema` fails with 422 naming the variable.
40
+ # Missing optional variables never fail; their schema `default` (when set) is
41
+ # applied to the render.
42
+ #
43
+ # @return [Boolean, nil]
44
+ optional :strict_variables, Telnyx::Internal::Type::Boolean
45
+
22
46
  # @!attribute subject
23
47
  # Liquid template subject.
24
48
  #
@@ -31,6 +55,20 @@ module Telnyx
31
55
  # @return [String, nil]
32
56
  optional :text_body, String, nil?: true
33
57
 
58
+ # @!attribute variable_schema
59
+ # Structured variable requirements. Required variables cannot define defaults;
60
+ # invalid combinations return 422. This is independent of the legacy `variables`
61
+ # array. On render with `strict_variables` enabled: `required` variables must be
62
+ # supplied as non-empty values — absent, `null`, empty string, empty object `{}`,
63
+ # and empty array `[]` all fail with 422 naming the variable, while present values
64
+ # such as `false` and `0` pass (they are present, not empty). Optional variables
65
+ # fall back to their `default` when absent.
66
+ #
67
+ # @return [Hash{Symbol=>Telnyx::Models::EmailTemplateCreateParams::VariableSchema}, nil]
68
+ optional :variable_schema,
69
+ -> { Telnyx::Internal::Type::HashOf[Telnyx::EmailTemplateCreateParams::VariableSchema] },
70
+ nil?: true
71
+
34
72
  # @!attribute variables
35
73
  # Template variables. Auto-extracted from subject/body fields when absent.
36
74
  #
@@ -42,20 +80,52 @@ module Telnyx
42
80
  # @return [String, nil]
43
81
  optional :idempotency_key, String
44
82
 
45
- # @!method initialize(name:, html_body: nil, subject: nil, text_body: nil, variables: nil, idempotency_key: nil, request_options: {})
83
+ # @!method initialize(name:, autoescape: nil, html_body: nil, strict_variables: nil, subject: nil, text_body: nil, variable_schema: nil, variables: nil, idempotency_key: nil, request_options: {})
84
+ # Some parameter documentations has been truncated, see
85
+ # {Telnyx::Models::EmailTemplateCreateParams} for more details.
86
+ #
46
87
  # @param name [String] Letters, numbers, spaces, hyphens, and underscores only.
47
88
  #
89
+ # @param autoescape [Boolean] Per-template HTML autoescaping setting. Defaults to `false` for backward compati
90
+ #
48
91
  # @param html_body [String, nil] Liquid template HTML body.
49
92
  #
93
+ # @param strict_variables [Boolean] Per-template strict variable-validation setting. Defaults to `false` for backwar
94
+ #
50
95
  # @param subject [String, nil] Liquid template subject.
51
96
  #
52
97
  # @param text_body [String, nil] Liquid template text body.
53
98
  #
99
+ # @param variable_schema [Hash{Symbol=>Telnyx::Models::EmailTemplateCreateParams::VariableSchema}, nil] Structured variable requirements. Required variables cannot define defaults; inv
100
+ #
54
101
  # @param variables [Array<String>] Template variables. Auto-extracted from subject/body fields when absent.
55
102
  #
56
103
  # @param idempotency_key [String]
57
104
  #
58
105
  # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}]
106
+
107
+ class VariableSchema < Telnyx::Internal::Type::BaseModel
108
+ # @!attribute required
109
+ # Whether the variable must be supplied when strict variable validation is
110
+ # enabled.
111
+ #
112
+ # @return [Boolean]
113
+ required :required, Telnyx::Internal::Type::Boolean
114
+
115
+ # @!attribute default
116
+ # Default value for an optional variable. Rejected when `required` is `true`.
117
+ #
118
+ # @return [String, nil]
119
+ optional :default, String
120
+
121
+ # @!method initialize(required:, default: nil)
122
+ # Some parameter documentations has been truncated, see
123
+ # {Telnyx::Models::EmailTemplateCreateParams::VariableSchema} for more details.
124
+ #
125
+ # @param required [Boolean] Whether the variable must be supplied when strict variable validation is enabled
126
+ #
127
+ # @param default [String] Default value for an optional variable. Rejected when `required` is `true`.
128
+ end
59
129
  end
60
130
  end
61
131
  end
@@ -0,0 +1,39 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Telnyx
4
+ module Models
5
+ class EmailWebhookRecipient < Telnyx::Internal::Type::BaseModel
6
+ # @!attribute email
7
+ #
8
+ # @return [String]
9
+ required :email, String
10
+
11
+ # @!attribute kind
12
+ #
13
+ # @return [Symbol, Telnyx::Models::EmailWebhookRecipient::Kind, nil]
14
+ optional :kind, enum: -> { Telnyx::EmailWebhookRecipient::Kind }
15
+
16
+ # @!attribute name
17
+ #
18
+ # @return [String, nil]
19
+ optional :name, String, nil?: true
20
+
21
+ # @!method initialize(email:, kind: nil, name: nil)
22
+ # @param email [String]
23
+ # @param kind [Symbol, Telnyx::Models::EmailWebhookRecipient::Kind]
24
+ # @param name [String, nil]
25
+
26
+ # @see Telnyx::Models::EmailWebhookRecipient#kind
27
+ module Kind
28
+ extend Telnyx::Internal::Type::Enum
29
+
30
+ TO = :to
31
+ CC = :cc
32
+ BCC = :bcc
33
+
34
+ # @!method self.values
35
+ # @return [Array<Symbol>]
36
+ end
37
+ end
38
+ end
39
+ end