telnyx 5.169.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 (346) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +7 -0
  3. data/README.md +1 -1
  4. data/lib/telnyx/internal/email_cursor_pagination.rb +2 -2
  5. data/lib/telnyx/internal/type/union.rb +1 -1
  6. data/lib/telnyx/models/ai/assistant_create_params.rb +3 -3
  7. data/lib/telnyx/models/ai/assistant_tool.rb +31 -1
  8. data/lib/telnyx/models/ai/assistant_update_params.rb +3 -3
  9. data/lib/telnyx/models/ai/assistants/update_assistant.rb +3 -3
  10. data/lib/telnyx/models/ai/collection.rb +3 -3
  11. data/lib/telnyx/models/ai/collections/collections_source.rb +64 -0
  12. data/lib/telnyx/models/ai/collections/source.rb +25 -29
  13. data/lib/telnyx/models/ai/collections/source_create_response.rb +3 -3
  14. data/lib/telnyx/models/ai/collections/source_list_response.rb +3 -3
  15. data/lib/telnyx/models/ai/collections/source_replace_response.rb +3 -3
  16. data/lib/telnyx/models/ai/flow_node.rb +3 -3
  17. data/lib/telnyx/models/ai/flow_node_req.rb +3 -3
  18. data/lib/telnyx/models/ai/inference_embedding.rb +3 -3
  19. data/lib/telnyx/models/ai/inference_embedding_voice_settings.rb +334 -0
  20. data/lib/telnyx/models/ai/inference_embedding_webhook_tool_params.rb +13 -11
  21. data/lib/telnyx/models/ai/memory/namespace_retrieve_params.rb +30 -0
  22. data/lib/telnyx/models/ai/memory/namespace_retrieve_response.rb +76 -0
  23. data/lib/telnyx/models/ai/memory/namespaces/namespace_settings_response.rb +63 -0
  24. data/lib/telnyx/models/ai/memory/namespaces/page_meta.rb +58 -0
  25. data/lib/telnyx/models/ai/memory/namespaces/profile_delete_params.rb +35 -0
  26. data/lib/telnyx/models/ai/memory/namespaces/profile_delete_response.rb +47 -0
  27. data/lib/telnyx/models/ai/memory/namespaces/profile_ingest_params.rb +94 -0
  28. data/lib/telnyx/models/ai/memory/namespaces/profile_ingest_response.rb +61 -0
  29. data/lib/telnyx/models/ai/memory/namespaces/profile_list_params.rb +48 -0
  30. data/lib/telnyx/models/ai/memory/namespaces/profile_list_response.rb +34 -0
  31. data/lib/telnyx/models/ai/memory/namespaces/profile_recall_params.rb +44 -0
  32. data/lib/telnyx/models/ai/memory/namespaces/profile_recall_response.rb +60 -0
  33. data/lib/telnyx/models/ai/memory/namespaces/profile_remember_params.rb +38 -0
  34. data/lib/telnyx/models/ai/memory/namespaces/profile_remember_response.rb +54 -0
  35. data/lib/telnyx/models/ai/memory/namespaces/profile_retrieve_summary_params.rb +35 -0
  36. data/lib/telnyx/models/ai/memory/namespaces/profile_retrieve_summary_response.rb +64 -0
  37. data/lib/telnyx/models/ai/memory/namespaces/profiles/memory_list_params.rb +76 -0
  38. data/lib/telnyx/models/ai/memory/namespaces/profiles/memory_list_response.rb +53 -0
  39. data/lib/telnyx/models/ai/memory/namespaces/profiles/memory_retrieve_params.rb +50 -0
  40. data/lib/telnyx/models/ai/memory/namespaces/profiles/memory_retrieve_response.rb +74 -0
  41. data/lib/telnyx/models/ai/memory/namespaces/profiles/source_delete_params.rb +52 -0
  42. data/lib/telnyx/models/ai/memory/namespaces/profiles/source_delete_response.rb +60 -0
  43. data/lib/telnyx/models/ai/memory/namespaces/profiles/source_list_params.rb +67 -0
  44. data/lib/telnyx/models/ai/memory/namespaces/profiles/source_retrieve_params.rb +52 -0
  45. data/lib/telnyx/models/ai/memory/namespaces/profiles/source_retrieve_response.rb +123 -0
  46. data/lib/telnyx/models/ai/memory/namespaces/setting_list_params.rb +28 -0
  47. data/lib/telnyx/models/ai/memory/namespaces/setting_patch_all_params.rb +69 -0
  48. data/lib/telnyx/models/ai/typesafe/v1_systemone_params.rb +29 -1
  49. data/lib/telnyx/models/ai/typesafe/v1_systemone_response.rb +19 -6
  50. data/lib/telnyx/models/ai/webhook_tool.rb +16 -1
  51. data/lib/telnyx/models/artifact_completed_webhook_event.rb +17 -1
  52. data/lib/telnyx/models/artifact_failed_webhook_event.rb +4 -0
  53. data/lib/telnyx/models/calls/action_gather_using_ai_params.rb +11 -3
  54. data/lib/telnyx/models/calls/action_gather_using_speak_params.rb +11 -3
  55. data/lib/telnyx/models/calls/action_speak_params.rb +11 -3
  56. data/lib/telnyx/models/calls/action_start_conversation_relay_params.rb +11 -3
  57. data/lib/telnyx/models/calls/soniox_voice_settings.rb +46 -0
  58. data/lib/telnyx/models/conferences/action_speak_params.rb +11 -3
  59. data/lib/telnyx/models/conversation_relay_embedded_config.rb +11 -3
  60. data/lib/telnyx/models/conversation_relay_language.rb +5 -3
  61. data/lib/telnyx/models/email_block.rb +8 -1
  62. data/lib/telnyx/models/email_blocks/email_block_import.rb +7 -2
  63. data/lib/telnyx/models/email_domain_rotate_dkim_params.rb +20 -0
  64. data/lib/telnyx/models/email_domain_rotate_dkim_response.rb +243 -0
  65. data/lib/telnyx/models/email_domains/email_webhook_event.rb +8 -3
  66. data/lib/telnyx/models/email_event_list_params.rb +33 -10
  67. data/lib/telnyx/models/email_event_list_response.rb +300 -73
  68. data/lib/telnyx/models/email_event_type.rb +16 -0
  69. data/lib/telnyx/models/email_inboxes/email_message.rb +56 -4
  70. data/lib/telnyx/models/email_message_batch_params.rb +32 -15
  71. data/lib/telnyx/models/email_message_create_params.rb +44 -12
  72. data/lib/telnyx/models/{email_message_retrieve_response.rb → email_message_detail_response.rb} +5 -5
  73. data/lib/telnyx/models/email_message_list_params.rb +26 -1
  74. data/lib/telnyx/models/email_message_update_schedule_params.rb +29 -0
  75. data/lib/telnyx/models/email_messages/email_recipient.rb +2 -0
  76. data/lib/telnyx/models/email_messages/recipient_list_params.rb +2 -0
  77. data/lib/telnyx/models/email_template.rb +68 -2
  78. data/lib/telnyx/models/email_template_create_params.rb +71 -1
  79. data/lib/telnyx/models/email_webhook_recipient.rb +39 -0
  80. data/lib/telnyx/models/meeting_session.rb +34 -6
  81. data/lib/telnyx/models/meeting_session_create_params.rb +73 -39
  82. data/lib/telnyx/models/meeting_sessions/artifact_create_params.rb +77 -13
  83. data/lib/telnyx/models/meeting_sessions/meeting_session_artifact.rb +25 -1
  84. data/lib/telnyx/models/message_event.rb +41 -2
  85. data/lib/telnyx/models/numbers_phone_number_detailed.rb +19 -5
  86. data/lib/telnyx/models/private_wireless_gateway.rb +0 -1
  87. data/lib/telnyx/models/private_wireless_gateway_create_params.rb +28 -1
  88. data/lib/telnyx/models/private_wireless_gateway_create_response.rb +3 -3
  89. data/lib/telnyx/models/private_wireless_gateway_delete_response.rb +3 -3
  90. data/lib/telnyx/models/private_wireless_gateway_retrieve_response.rb +3 -3
  91. data/lib/telnyx/models/texml/accounts/call_retrieve_calls_params.rb +17 -17
  92. data/lib/telnyx/models/text_to_speech_generate_speech_params.rb +129 -3
  93. data/lib/telnyx/models/text_to_speech_list_voices_params.rb +1 -0
  94. data/lib/telnyx/models/text_to_speech_retrieve_speech_params.rb +1 -1
  95. data/lib/telnyx/models/update_email_template_request.rb +54 -1
  96. data/lib/telnyx/models/wireless_private_wireless_gateway.rb +120 -0
  97. data/lib/telnyx/models.rb +10 -0
  98. data/lib/telnyx/resources/ai/assistants/versions.rb +1 -1
  99. data/lib/telnyx/resources/ai/assistants.rb +2 -2
  100. data/lib/telnyx/resources/ai/memory/namespaces/profiles/memories.rb +122 -0
  101. data/lib/telnyx/resources/ai/memory/namespaces/profiles/sources.rb +163 -0
  102. data/lib/telnyx/resources/ai/memory/namespaces/profiles.rb +244 -0
  103. data/lib/telnyx/resources/ai/memory/namespaces/settings.rb +76 -0
  104. data/lib/telnyx/resources/ai/memory/namespaces.rb +55 -0
  105. data/lib/telnyx/resources/ai/memory.rb +21 -0
  106. data/lib/telnyx/resources/ai/typesafe/v1.rb +20 -11
  107. data/lib/telnyx/resources/ai/typesafe.rb +1 -1
  108. data/lib/telnyx/resources/ai.rb +4 -0
  109. data/lib/telnyx/resources/calls/actions.rb +4 -4
  110. data/lib/telnyx/resources/conferences/actions.rb +1 -1
  111. data/lib/telnyx/resources/email_blocks/imports.rb +17 -3
  112. data/lib/telnyx/resources/email_blocks.rb +5 -3
  113. data/lib/telnyx/resources/email_domains.rb +28 -0
  114. data/lib/telnyx/resources/email_events.rb +21 -9
  115. data/lib/telnyx/resources/email_messages.rb +57 -13
  116. data/lib/telnyx/resources/email_templates.rb +33 -3
  117. data/lib/telnyx/resources/meeting_sessions/actions.rb +7 -1
  118. data/lib/telnyx/resources/meeting_sessions/artifacts.rb +18 -9
  119. data/lib/telnyx/resources/meeting_sessions.rb +6 -5
  120. data/lib/telnyx/resources/private_wireless_gateways.rb +5 -3
  121. data/lib/telnyx/resources/texml/accounts/calls.rb +9 -9
  122. data/lib/telnyx/resources/text_to_speech.rb +6 -4
  123. data/lib/telnyx/version.rb +1 -1
  124. data/lib/telnyx.rb +42 -1
  125. data/rbi/telnyx/models/ai/assistant_create_params.rbi +8 -4
  126. data/rbi/telnyx/models/ai/assistant_tool.rbi +56 -5
  127. data/rbi/telnyx/models/ai/assistant_update_params.rbi +8 -4
  128. data/rbi/telnyx/models/ai/assistants/update_assistant.rbi +12 -4
  129. data/rbi/telnyx/models/ai/collection.rbi +10 -4
  130. data/rbi/telnyx/models/ai/collections/collections_source.rbi +110 -0
  131. data/rbi/telnyx/models/ai/collections/source.rbi +36 -62
  132. data/rbi/telnyx/models/ai/collections/source_create_response.rbi +14 -6
  133. data/rbi/telnyx/models/ai/collections/source_list_response.rbi +10 -4
  134. data/rbi/telnyx/models/ai/collections/source_replace_response.rbi +11 -4
  135. data/rbi/telnyx/models/ai/flow_node.rbi +8 -4
  136. data/rbi/telnyx/models/ai/flow_node_req.rbi +8 -4
  137. data/rbi/telnyx/models/ai/inference_embedding.rbi +8 -4
  138. data/rbi/telnyx/models/ai/inference_embedding_voice_settings.rbi +803 -0
  139. data/rbi/telnyx/models/ai/inference_embedding_webhook_tool_params.rbi +23 -19
  140. data/rbi/telnyx/models/ai/memory/namespace_retrieve_params.rbi +50 -0
  141. data/rbi/telnyx/models/ai/memory/namespace_retrieve_response.rbi +167 -0
  142. data/rbi/telnyx/models/ai/memory/namespaces/namespace_settings_response.rbi +156 -0
  143. data/rbi/telnyx/models/ai/memory/namespaces/page_meta.rbi +81 -0
  144. data/rbi/telnyx/models/ai/memory/namespaces/profile_delete_params.rbi +58 -0
  145. data/rbi/telnyx/models/ai/memory/namespaces/profile_delete_response.rbi +97 -0
  146. data/rbi/telnyx/models/ai/memory/namespaces/profile_ingest_params.rbi +149 -0
  147. data/rbi/telnyx/models/ai/memory/namespaces/profile_ingest_response.rbi +113 -0
  148. data/rbi/telnyx/models/ai/memory/namespaces/profile_list_params.rbi +74 -0
  149. data/rbi/telnyx/models/ai/memory/namespaces/profile_list_response.rbi +48 -0
  150. data/rbi/telnyx/models/ai/memory/namespaces/profile_recall_params.rbi +68 -0
  151. data/rbi/telnyx/models/ai/memory/namespaces/profile_recall_response.rbi +109 -0
  152. data/rbi/telnyx/models/ai/memory/namespaces/profile_remember_params.rbi +57 -0
  153. data/rbi/telnyx/models/ai/memory/namespaces/profile_remember_response.rbi +107 -0
  154. data/rbi/telnyx/models/ai/memory/namespaces/profile_retrieve_summary_params.rbi +58 -0
  155. data/rbi/telnyx/models/ai/memory/namespaces/profile_retrieve_summary_response.rbi +119 -0
  156. data/rbi/telnyx/models/ai/memory/namespaces/profiles/memory_list_params.rbi +102 -0
  157. data/rbi/telnyx/models/ai/memory/namespaces/profiles/memory_list_response.rbi +72 -0
  158. data/rbi/telnyx/models/ai/memory/namespaces/profiles/memory_retrieve_params.rbi +70 -0
  159. data/rbi/telnyx/models/ai/memory/namespaces/profiles/memory_retrieve_response.rbi +129 -0
  160. data/rbi/telnyx/models/ai/memory/namespaces/profiles/source_delete_params.rbi +74 -0
  161. data/rbi/telnyx/models/ai/memory/namespaces/profiles/source_delete_response.rbi +117 -0
  162. data/rbi/telnyx/models/ai/memory/namespaces/profiles/source_list_params.rbi +92 -0
  163. data/rbi/telnyx/models/ai/memory/namespaces/profiles/source_retrieve_params.rbi +74 -0
  164. data/rbi/telnyx/models/ai/memory/namespaces/profiles/source_retrieve_response.rbi +209 -0
  165. data/rbi/telnyx/models/ai/memory/namespaces/setting_list_params.rbi +49 -0
  166. data/rbi/telnyx/models/ai/memory/namespaces/setting_patch_all_params.rbi +125 -0
  167. data/rbi/telnyx/models/ai/typesafe/v1_systemone_params.rbi +62 -0
  168. data/rbi/telnyx/models/ai/typesafe/v1_systemone_response.rbi +49 -9
  169. data/rbi/telnyx/models/ai/webhook_tool.rbi +23 -3
  170. data/rbi/telnyx/models/artifact_completed_webhook_event.rbi +30 -0
  171. data/rbi/telnyx/models/artifact_failed_webhook_event.rbi +20 -0
  172. data/rbi/telnyx/models/calls/action_gather_using_ai_params.rbi +22 -5
  173. data/rbi/telnyx/models/calls/action_gather_using_speak_params.rbi +22 -5
  174. data/rbi/telnyx/models/calls/action_speak_params.rbi +22 -5
  175. data/rbi/telnyx/models/calls/action_start_conversation_relay_params.rbi +22 -5
  176. data/rbi/telnyx/models/calls/soniox_voice_settings.rbi +86 -0
  177. data/rbi/telnyx/models/conferences/action_speak_params.rbi +22 -5
  178. data/rbi/telnyx/models/conversation_relay_embedded_config.rbi +22 -5
  179. data/rbi/telnyx/models/conversation_relay_language.rbi +10 -5
  180. data/rbi/telnyx/models/email_block.rbi +8 -0
  181. data/rbi/telnyx/models/email_blocks/email_block_import.rbi +6 -2
  182. data/rbi/telnyx/models/email_domain_rotate_dkim_params.rbi +35 -0
  183. data/rbi/telnyx/models/email_domain_rotate_dkim_response.rbi +487 -0
  184. data/rbi/telnyx/models/email_domains/email_webhook_event.rbi +20 -3
  185. data/rbi/telnyx/models/email_event_list_params.rbi +46 -11
  186. data/rbi/telnyx/models/email_event_list_response.rbi +599 -97
  187. data/rbi/telnyx/models/email_event_type.rbi +25 -0
  188. data/rbi/telnyx/models/email_inboxes/email_message.rbi +81 -3
  189. data/rbi/telnyx/models/email_message_batch_params.rbi +54 -20
  190. data/rbi/telnyx/models/email_message_create_params.rbi +80 -16
  191. data/rbi/telnyx/models/{email_message_retrieve_response.rbi → email_message_detail_response.rbi} +9 -16
  192. data/rbi/telnyx/models/email_message_list_params.rbi +40 -0
  193. data/rbi/telnyx/models/email_message_update_schedule_params.rbi +52 -0
  194. data/rbi/telnyx/models/email_messages/email_recipient.rbi +10 -0
  195. data/rbi/telnyx/models/email_messages/recipient_list_params.rbi +10 -0
  196. data/rbi/telnyx/models/email_template.rbi +84 -0
  197. data/rbi/telnyx/models/email_template_create_params.rbi +124 -0
  198. data/rbi/telnyx/models/email_webhook_recipient.rbi +68 -0
  199. data/rbi/telnyx/models/meeting_session.rbi +36 -10
  200. data/rbi/telnyx/models/meeting_session_create_params.rbi +112 -48
  201. data/rbi/telnyx/models/meeting_sessions/artifact_create_params.rbi +161 -24
  202. data/rbi/telnyx/models/meeting_sessions/meeting_session_artifact.rbi +30 -0
  203. data/rbi/telnyx/models/message_event.rbi +48 -1
  204. data/rbi/telnyx/models/numbers_phone_number_detailed.rbi +24 -4
  205. data/rbi/telnyx/models/private_wireless_gateway_create_params.rbi +71 -0
  206. data/rbi/telnyx/models/private_wireless_gateway_create_response.rbi +4 -4
  207. data/rbi/telnyx/models/private_wireless_gateway_delete_response.rbi +4 -4
  208. data/rbi/telnyx/models/private_wireless_gateway_retrieve_response.rbi +4 -4
  209. data/rbi/telnyx/models/texml/accounts/call_retrieve_calls_params.rbi +22 -22
  210. data/rbi/telnyx/models/text_to_speech_generate_speech_params.rbi +311 -2
  211. data/rbi/telnyx/models/text_to_speech_list_voices_params.rbi +5 -0
  212. data/rbi/telnyx/models/text_to_speech_retrieve_speech_params.rbi +5 -5
  213. data/rbi/telnyx/models/update_email_template_request.rbi +90 -0
  214. data/rbi/telnyx/models/wireless_private_wireless_gateway.rbi +211 -0
  215. data/rbi/telnyx/models.rbi +12 -0
  216. data/rbi/telnyx/resources/ai/assistants/versions.rbi +2 -1
  217. data/rbi/telnyx/resources/ai/assistants.rbi +2 -2
  218. data/rbi/telnyx/resources/ai/memory/namespaces/profiles/memories.rbi +94 -0
  219. data/rbi/telnyx/resources/ai/memory/namespaces/profiles/sources.rbi +117 -0
  220. data/rbi/telnyx/resources/ai/memory/namespaces/profiles.rbi +196 -0
  221. data/rbi/telnyx/resources/ai/memory/namespaces/settings.rbi +67 -0
  222. data/rbi/telnyx/resources/ai/memory/namespaces.rbi +37 -0
  223. data/rbi/telnyx/resources/ai/memory.rbi +18 -0
  224. data/rbi/telnyx/resources/ai/typesafe/v1.rbi +20 -10
  225. data/rbi/telnyx/resources/ai/typesafe.rbi +1 -1
  226. data/rbi/telnyx/resources/ai.rbi +3 -0
  227. data/rbi/telnyx/resources/calls/actions.rbi +32 -4
  228. data/rbi/telnyx/resources/conferences/actions.rbi +8 -1
  229. data/rbi/telnyx/resources/email_blocks/imports.rbi +17 -3
  230. data/rbi/telnyx/resources/email_blocks.rbi +5 -3
  231. data/rbi/telnyx/resources/email_domains.rbi +22 -0
  232. data/rbi/telnyx/resources/email_events.rbi +30 -9
  233. data/rbi/telnyx/resources/email_messages.rbi +100 -16
  234. data/rbi/telnyx/resources/email_templates.rbi +71 -0
  235. data/rbi/telnyx/resources/meeting_sessions/actions.rbi +7 -1
  236. data/rbi/telnyx/resources/meeting_sessions/artifacts.rbi +19 -8
  237. data/rbi/telnyx/resources/meeting_sessions.rbi +15 -7
  238. data/rbi/telnyx/resources/private_wireless_gateways.rbi +9 -1
  239. data/rbi/telnyx/resources/texml/accounts/calls.rbi +6 -6
  240. data/rbi/telnyx/resources/text_to_speech.rbi +7 -3
  241. data/sig/telnyx/models/ai/assistant_create_params.rbs +6 -6
  242. data/sig/telnyx/models/ai/assistant_tool.rbs +33 -3
  243. data/sig/telnyx/models/ai/assistant_update_params.rbs +6 -6
  244. data/sig/telnyx/models/ai/assistants/update_assistant.rbs +6 -6
  245. data/sig/telnyx/models/ai/collection.rbs +6 -6
  246. data/sig/telnyx/models/ai/collections/collections_source.rbs +65 -0
  247. data/sig/telnyx/models/ai/collections/source.rbs +18 -37
  248. data/sig/telnyx/models/ai/collections/source_create_response.rbs +9 -6
  249. data/sig/telnyx/models/ai/collections/source_list_response.rbs +8 -6
  250. data/sig/telnyx/models/ai/collections/source_replace_response.rbs +6 -6
  251. data/sig/telnyx/models/ai/flow_node.rbs +6 -6
  252. data/sig/telnyx/models/ai/flow_node_req.rbs +6 -6
  253. data/sig/telnyx/models/ai/inference_embedding.rbs +6 -6
  254. data/sig/telnyx/models/ai/inference_embedding_voice_settings.rbs +308 -0
  255. data/sig/telnyx/models/ai/inference_embedding_webhook_tool_params.rbs +13 -13
  256. data/sig/telnyx/models/ai/memory/namespace_retrieve_params.rbs +32 -0
  257. data/sig/telnyx/models/ai/memory/namespace_retrieve_response.rbs +69 -0
  258. data/sig/telnyx/models/ai/memory/namespaces/namespace_settings_response.rbs +59 -0
  259. data/sig/telnyx/models/ai/memory/namespaces/page_meta.rbs +41 -0
  260. data/sig/telnyx/models/ai/memory/namespaces/profile_delete_params.rbs +34 -0
  261. data/sig/telnyx/models/ai/memory/namespaces/profile_delete_response.rbs +41 -0
  262. data/sig/telnyx/models/ai/memory/namespaces/profile_ingest_params.rbs +69 -0
  263. data/sig/telnyx/models/ai/memory/namespaces/profile_ingest_response.rbs +58 -0
  264. data/sig/telnyx/models/ai/memory/namespaces/profile_list_params.rbs +42 -0
  265. data/sig/telnyx/models/ai/memory/namespaces/profile_list_response.rbs +22 -0
  266. data/sig/telnyx/models/ai/memory/namespaces/profile_recall_params.rbs +47 -0
  267. data/sig/telnyx/models/ai/memory/namespaces/profile_recall_response.rbs +53 -0
  268. data/sig/telnyx/models/ai/memory/namespaces/profile_remember_params.rbs +38 -0
  269. data/sig/telnyx/models/ai/memory/namespaces/profile_remember_response.rbs +49 -0
  270. data/sig/telnyx/models/ai/memory/namespaces/profile_retrieve_summary_params.rbs +34 -0
  271. data/sig/telnyx/models/ai/memory/namespaces/profile_retrieve_summary_response.rbs +58 -0
  272. data/sig/telnyx/models/ai/memory/namespaces/profiles/memory_list_params.rbs +63 -0
  273. data/sig/telnyx/models/ai/memory/namespaces/profiles/memory_list_response.rbs +43 -0
  274. data/sig/telnyx/models/ai/memory/namespaces/profiles/memory_retrieve_params.rbs +40 -0
  275. data/sig/telnyx/models/ai/memory/namespaces/profiles/memory_retrieve_response.rbs +65 -0
  276. data/sig/telnyx/models/ai/memory/namespaces/profiles/source_delete_params.rbs +40 -0
  277. data/sig/telnyx/models/ai/memory/namespaces/profiles/source_delete_response.rbs +55 -0
  278. data/sig/telnyx/models/ai/memory/namespaces/profiles/source_list_params.rbs +58 -0
  279. data/sig/telnyx/models/ai/memory/namespaces/profiles/source_retrieve_params.rbs +40 -0
  280. data/sig/telnyx/models/ai/memory/namespaces/profiles/source_retrieve_response.rbs +92 -0
  281. data/sig/telnyx/models/ai/memory/namespaces/setting_list_params.rbs +29 -0
  282. data/sig/telnyx/models/ai/memory/namespaces/setting_patch_all_params.rbs +47 -0
  283. data/sig/telnyx/models/ai/typesafe/v1_systemone_params.rbs +21 -1
  284. data/sig/telnyx/models/ai/typesafe/v1_systemone_response.rbs +15 -4
  285. data/sig/telnyx/models/ai/webhook_tool.rbs +10 -3
  286. data/sig/telnyx/models/artifact_completed_webhook_event.rbs +16 -1
  287. data/sig/telnyx/models/artifact_failed_webhook_event.rbs +11 -1
  288. data/sig/telnyx/models/calls/action_gather_using_ai_params.rbs +1 -0
  289. data/sig/telnyx/models/calls/action_gather_using_speak_params.rbs +1 -0
  290. data/sig/telnyx/models/calls/action_speak_params.rbs +1 -0
  291. data/sig/telnyx/models/calls/action_start_conversation_relay_params.rbs +1 -0
  292. data/sig/telnyx/models/calls/soniox_voice_settings.rbs +46 -0
  293. data/sig/telnyx/models/conferences/action_speak_params.rbs +1 -0
  294. data/sig/telnyx/models/conversation_relay_embedded_config.rbs +1 -0
  295. data/sig/telnyx/models/conversation_relay_language.rbs +1 -0
  296. data/sig/telnyx/models/email_domain_rotate_dkim_params.rbs +23 -0
  297. data/sig/telnyx/models/email_domain_rotate_dkim_response.rbs +195 -0
  298. data/sig/telnyx/models/email_domains/email_webhook_event.rbs +6 -0
  299. data/sig/telnyx/models/email_event_list_params.rbs +7 -7
  300. data/sig/telnyx/models/email_event_list_response.rbs +235 -59
  301. data/sig/telnyx/models/email_event_type.rbs +20 -0
  302. data/sig/telnyx/models/email_inboxes/email_message.rbs +43 -4
  303. data/sig/telnyx/models/{email_message_retrieve_response.rbs → email_message_detail_response.rbs} +6 -10
  304. data/sig/telnyx/models/email_message_list_params.rbs +18 -1
  305. data/sig/telnyx/models/email_message_update_schedule_params.rbs +28 -0
  306. data/sig/telnyx/models/email_messages/email_recipient.rbs +4 -0
  307. data/sig/telnyx/models/email_messages/recipient_list_params.rbs +4 -0
  308. data/sig/telnyx/models/email_template.rbs +29 -0
  309. data/sig/telnyx/models/email_template_create_params.rbs +33 -0
  310. data/sig/telnyx/models/email_webhook_recipient.rbs +46 -0
  311. data/sig/telnyx/models/meeting_session.rbs +20 -5
  312. data/sig/telnyx/models/meeting_session_create_params.rbs +28 -20
  313. data/sig/telnyx/models/meeting_sessions/artifact_create_params.rbs +53 -10
  314. data/sig/telnyx/models/meeting_sessions/meeting_session_artifact.rbs +16 -1
  315. data/sig/telnyx/models/message_event.rbs +10 -0
  316. data/sig/telnyx/models/numbers_phone_number_detailed.rbs +5 -0
  317. data/sig/telnyx/models/private_wireless_gateway_create_params.rbs +25 -1
  318. data/sig/telnyx/models/private_wireless_gateway_create_response.rbs +6 -6
  319. data/sig/telnyx/models/private_wireless_gateway_delete_response.rbs +6 -6
  320. data/sig/telnyx/models/private_wireless_gateway_retrieve_response.rbs +6 -6
  321. data/sig/telnyx/models/texml/accounts/call_retrieve_calls_params.rbs +14 -14
  322. data/sig/telnyx/models/text_to_speech_generate_speech_params.rbs +114 -0
  323. data/sig/telnyx/models/text_to_speech_list_voices_params.rbs +2 -0
  324. data/sig/telnyx/models/text_to_speech_retrieve_speech_params.rbs +2 -2
  325. data/sig/telnyx/models/update_email_template_request.rbs +33 -0
  326. data/sig/telnyx/models/wireless_private_wireless_gateway.rbs +109 -0
  327. data/sig/telnyx/models.rbs +10 -0
  328. data/sig/telnyx/resources/ai/assistants/versions.rbs +1 -1
  329. data/sig/telnyx/resources/ai/assistants.rbs +2 -2
  330. data/sig/telnyx/resources/ai/memory/namespaces/profiles/memories.rbs +32 -0
  331. data/sig/telnyx/resources/ai/memory/namespaces/profiles/sources.rbs +38 -0
  332. data/sig/telnyx/resources/ai/memory/namespaces/profiles.rbs +59 -0
  333. data/sig/telnyx/resources/ai/memory/namespaces/settings.rbs +24 -0
  334. data/sig/telnyx/resources/ai/memory/namespaces.rbs +21 -0
  335. data/sig/telnyx/resources/ai/memory.rbs +11 -0
  336. data/sig/telnyx/resources/ai/typesafe/v1.rbs +1 -0
  337. data/sig/telnyx/resources/ai.rbs +2 -0
  338. data/sig/telnyx/resources/email_domains.rbs +5 -0
  339. data/sig/telnyx/resources/email_events.rbs +2 -2
  340. data/sig/telnyx/resources/email_messages.rbs +9 -1
  341. data/sig/telnyx/resources/email_templates.rbs +9 -0
  342. data/sig/telnyx/resources/meeting_sessions/artifacts.rbs +1 -1
  343. data/sig/telnyx/resources/meeting_sessions.rbs +1 -0
  344. data/sig/telnyx/resources/private_wireless_gateways.rbs +2 -1
  345. data/sig/telnyx/resources/text_to_speech.rbs +1 -0
  346. metadata +128 -5
@@ -4,101 +4,328 @@ module Telnyx
4
4
  module Models
5
5
  # @see Telnyx::Resources::EmailEvents#list
6
6
  class EmailEventListResponse < Telnyx::Internal::Type::BaseModel
7
- # @!attribute id
7
+ # @!attribute data
8
8
  #
9
- # @return [String]
10
- required :id, String
9
+ # @return [Array<Telnyx::Models::EmailEventListResponse::Data>]
10
+ required :data, -> { Telnyx::Internal::Type::ArrayOf[Telnyx::Models::EmailEventListResponse::Data] }
11
11
 
12
- # @!attribute email_id
12
+ # @!attribute meta
13
13
  #
14
- # @return [String]
15
- required :email_id, String
14
+ # @return [Telnyx::Models::EmailEventListResponse::Meta]
15
+ required :meta, -> { Telnyx::Models::EmailEventListResponse::Meta }
16
16
 
17
- # @!attribute occurred_at
18
- #
19
- # @return [Time]
20
- required :occurred_at, Time
17
+ # @!method initialize(data:, meta:)
18
+ # @param data [Array<Telnyx::Models::EmailEventListResponse::Data>]
19
+ # @param meta [Telnyx::Models::EmailEventListResponse::Meta]
21
20
 
22
- # @!attribute record_type
23
- #
24
- # @return [Symbol, Telnyx::Models::EmailEventListResponse::RecordType]
25
- required :record_type, enum: -> { Telnyx::Models::EmailEventListResponse::RecordType }
21
+ class Data < Telnyx::Internal::Type::BaseModel
22
+ # @!attribute id
23
+ # Event UUID.
24
+ #
25
+ # @return [String]
26
+ required :id, String
26
27
 
27
- # @!attribute type
28
- #
29
- # @return [Symbol, Telnyx::Models::EmailEventType]
30
- required :type, enum: -> { Telnyx::EmailEventType }
28
+ # @!attribute canonical_event_type
29
+ # Additive canonical outcome name, prefixed with `email.`. Gateway rejection is
30
+ # `email.gw_reject`, ambiguous injection timeout is `email.injection_timeout`, and
31
+ # MTA expiration is `email.expired`. Unchanged outcomes retain their names.
32
+ # Existing stored rows are translated only when recorded payload evidence proves
33
+ # the outcome; a legacy failed row is not guessed or sharpened.
34
+ #
35
+ # @return [String]
36
+ required :canonical_event_type, String
31
37
 
32
- # @!attribute email
33
- # Summary of the associated email message. Present when the email_message preload
34
- # is available.
35
- #
36
- # @return [Telnyx::Models::EmailEventListResponse::Email, nil]
37
- optional :email, -> { Telnyx::Models::EmailEventListResponse::Email }
38
+ # @!attribute event_type
39
+ # Legacy customer-visible event name, prefixed with `email.`. Gateway rejections
40
+ # render `email.failed`; MTA expirations render `email.bounced`. Webhook
41
+ # subscription allowlists match the legacy name.
42
+ #
43
+ # @return [String]
44
+ required :event_type, String
38
45
 
39
- # @!attribute payload
40
- #
41
- # @return [Hash{Symbol=>Object}, nil]
42
- optional :payload, Telnyx::Internal::Type::HashOf[Telnyx::Internal::Type::Unknown]
46
+ # @!attribute occurred_at
47
+ #
48
+ # @return [Time]
49
+ required :occurred_at, Time
43
50
 
44
- # @!method initialize(id:, email_id:, occurred_at:, record_type:, type:, email: nil, payload: nil)
45
- # Some parameter documentations has been truncated, see
46
- # {Telnyx::Models::EmailEventListResponse} for more details.
47
- #
48
- # @param id [String]
49
- #
50
- # @param email_id [String]
51
- #
52
- # @param occurred_at [Time]
53
- #
54
- # @param record_type [Symbol, Telnyx::Models::EmailEventListResponse::RecordType]
55
- #
56
- # @param type [Symbol, Telnyx::Models::EmailEventType]
57
- #
58
- # @param email [Telnyx::Models::EmailEventListResponse::Email] Summary of the associated email message. Present when the email_message preload
59
- #
60
- # @param payload [Hash{Symbol=>Object}]
51
+ # @!attribute payload
52
+ # Payload returned by GET /email_events. Every row includes id, status, and
53
+ # occurred_at. Recipient-scoped rows also include recipient_id, from, subject, and
54
+ # exactly one object-valued to, cc, or bcc field. Legacy or message-scoped rows
55
+ # can omit recipient_id and use object-valued or string-valued to/cc fields,
56
+ # including an empty string when no address exists; bcc is redacted. If the
57
+ # related message or recipient cannot be loaded, the minimal fallback can omit
58
+ # from, subject, and recipient fields. Additional persisted public evidence can be
59
+ # present.
60
+ #
61
+ # @return [Telnyx::Models::EmailEventListResponse::Data::Payload]
62
+ required :payload, -> { Telnyx::Models::EmailEventListResponse::Data::Payload }
63
+
64
+ # @!attribute recipient_id
65
+ # Durable email recipient UUID. Present for recipient-scoped events, including
66
+ # each queued, sending, sandbox, cancelled, and daily_limit_exceeded fan-out
67
+ # event.
68
+ #
69
+ # @return [String, nil]
70
+ optional :recipient_id, String
71
+
72
+ # @!method initialize(id:, canonical_event_type:, event_type:, occurred_at:, payload:, recipient_id: nil)
73
+ # Some parameter documentations has been truncated, see
74
+ # {Telnyx::Models::EmailEventListResponse::Data} for more details.
75
+ #
76
+ # An account-polling event. The envelope is webhook-shaped, but polling preserves
77
+ # stored-event cardinality: queued, sending, sandbox, cancelled, and
78
+ # daily_limit_exceeded message events fan out per recipient; scheduled remains one
79
+ # message-scoped row. Payload fields vary among recipient-scoped, message-scoped,
80
+ # and minimal fallback rows.
81
+ #
82
+ # @param id [String] Event UUID.
83
+ #
84
+ # @param canonical_event_type [String] Additive canonical outcome name, prefixed with `email.`. Gateway rejection is `e
85
+ #
86
+ # @param event_type [String] Legacy customer-visible event name, prefixed with `email.`. Gateway rejections r
87
+ #
88
+ # @param occurred_at [Time]
89
+ #
90
+ # @param payload [Telnyx::Models::EmailEventListResponse::Data::Payload] Payload returned by GET /email_events. Every row includes id, status, and occurr
91
+ #
92
+ # @param recipient_id [String] Durable email recipient UUID. Present for recipient-scoped events, including eac
93
+
94
+ # @see Telnyx::Models::EmailEventListResponse::Data#payload
95
+ class Payload < Telnyx::Internal::Type::BaseModel
96
+ # @!attribute id
97
+ # Email message UUID.
98
+ #
99
+ # @return [String]
100
+ required :id, String
61
101
 
62
- # @see Telnyx::Models::EmailEventListResponse#record_type
63
- module RecordType
64
- extend Telnyx::Internal::Type::Enum
102
+ # @!attribute occurred_at
103
+ #
104
+ # @return [Time]
105
+ required :occurred_at, Time
65
106
 
66
- EMAIL_EVENT = :email_event
107
+ # @!attribute status
108
+ # Stored event outcome slug, not the authoritative recipient status. Account
109
+ # polling returns the stored name, including suppression, scan, and quarantine
110
+ # lifecycle names. Webhooks retain legacy payload names: gateway rejections use
111
+ # failed and MTA expirations use bounced. New sharp stored rows can expose
112
+ # gw_reject, injection_timeout, or expired. Use the envelope canonical_event_type
113
+ # to identify the outcome across surfaces.
114
+ #
115
+ # @return [Symbol, Telnyx::Models::EmailEventListResponse::Data::Payload::Status]
116
+ required :status, enum: -> { Telnyx::Models::EmailEventListResponse::Data::Payload::Status }
67
117
 
68
- # @!method self.values
69
- # @return [Array<Symbol>]
118
+ # @!attribute bcc
119
+ #
120
+ # @return [Telnyx::Models::EmailWebhookRecipient, Symbol, Telnyx::Models::EmailEventListResponse::Data::Payload::Bcc, nil]
121
+ optional :bcc, union: -> { Telnyx::Models::EmailEventListResponse::Data::Payload::Bcc }
122
+
123
+ # @!attribute cc
124
+ # Legacy message-scoped address, or an empty string when absent.
125
+ #
126
+ # @return [Telnyx::Models::EmailWebhookRecipient, String, nil]
127
+ optional :cc, union: -> { Telnyx::Models::EmailEventListResponse::Data::Payload::Cc }
128
+
129
+ # @!attribute from
130
+ # Sender projection in account event polling. The display name is explicitly null
131
+ # when the message has no sender name.
132
+ #
133
+ # @return [Telnyx::Models::EmailEventListResponse::Data::Payload::From, nil]
134
+ optional :from, -> { Telnyx::Models::EmailEventListResponse::Data::Payload::From }
135
+
136
+ # @!attribute recipient_id
137
+ # Durable email recipient UUID. Present for recipient-scoped events.
138
+ #
139
+ # @return [String, nil]
140
+ optional :recipient_id, String
141
+
142
+ # @!attribute subject
143
+ #
144
+ # @return [String, nil]
145
+ optional :subject, String
146
+
147
+ # @!attribute to
148
+ # Legacy message-scoped address, or an empty string when absent.
149
+ #
150
+ # @return [Telnyx::Models::EmailWebhookRecipient, String, nil]
151
+ optional :to, union: -> { Telnyx::Models::EmailEventListResponse::Data::Payload::To }
152
+
153
+ # @!method initialize(id:, occurred_at:, status:, bcc: nil, cc: nil, from: nil, recipient_id: nil, subject: nil, to: nil)
154
+ # Some parameter documentations has been truncated, see
155
+ # {Telnyx::Models::EmailEventListResponse::Data::Payload} for more details.
156
+ #
157
+ # Payload returned by GET /email_events. Every row includes id, status, and
158
+ # occurred_at. Recipient-scoped rows also include recipient_id, from, subject, and
159
+ # exactly one object-valued to, cc, or bcc field. Legacy or message-scoped rows
160
+ # can omit recipient_id and use object-valued or string-valued to/cc fields,
161
+ # including an empty string when no address exists; bcc is redacted. If the
162
+ # related message or recipient cannot be loaded, the minimal fallback can omit
163
+ # from, subject, and recipient fields. Additional persisted public evidence can be
164
+ # present.
165
+ #
166
+ # @param id [String] Email message UUID.
167
+ #
168
+ # @param occurred_at [Time]
169
+ #
170
+ # @param status [Symbol, Telnyx::Models::EmailEventListResponse::Data::Payload::Status] Stored event outcome slug, not the authoritative recipient status. Account polli
171
+ #
172
+ # @param bcc [Telnyx::Models::EmailWebhookRecipient, Symbol, Telnyx::Models::EmailEventListResponse::Data::Payload::Bcc]
173
+ #
174
+ # @param cc [Telnyx::Models::EmailWebhookRecipient, String] Legacy message-scoped address, or an empty string when absent.
175
+ #
176
+ # @param from [Telnyx::Models::EmailEventListResponse::Data::Payload::From] Sender projection in account event polling. The display name is explicitly null
177
+ #
178
+ # @param recipient_id [String] Durable email recipient UUID. Present for recipient-scoped events.
179
+ #
180
+ # @param subject [String]
181
+ #
182
+ # @param to [Telnyx::Models::EmailWebhookRecipient, String] Legacy message-scoped address, or an empty string when absent.
183
+
184
+ # Stored event outcome slug, not the authoritative recipient status. Account
185
+ # polling returns the stored name, including suppression, scan, and quarantine
186
+ # lifecycle names. Webhooks retain legacy payload names: gateway rejections use
187
+ # failed and MTA expirations use bounced. New sharp stored rows can expose
188
+ # gw_reject, injection_timeout, or expired. Use the envelope canonical_event_type
189
+ # to identify the outcome across surfaces.
190
+ #
191
+ # @see Telnyx::Models::EmailEventListResponse::Data::Payload#status
192
+ module Status
193
+ extend Telnyx::Internal::Type::Enum
194
+
195
+ QUEUED = :queued
196
+ DEFERRED = :deferred
197
+ SCHEDULED = :scheduled
198
+ CANCELLED = :cancelled
199
+ SANDBOX = :sandbox
200
+ SENDING = :sending
201
+ SENT = :sent
202
+ FAILED = :failed
203
+ DELIVERED = :delivered
204
+ BOUNCED = :bounced
205
+ COMPLAINED = :complained
206
+ SUPPRESSED = :suppressed
207
+ REJECTED = :rejected
208
+ OPENED = :opened
209
+ CLICKED = :clicked
210
+ UNSUBSCRIBED = :unsubscribed
211
+ DAILY_LIMIT_EXCEEDED = :daily_limit_exceeded
212
+ SCAN_DEFERRED = :scan_deferred
213
+ QUARANTINED = :quarantined
214
+ QUARANTINE_RELEASED = :quarantine_released
215
+ QUARANTINE_RELEASE_DISPATCHED = :quarantine_release_dispatched
216
+ QUARANTINE_REJECTED = :quarantine_rejected
217
+ QUARANTINE_EXPIRED = :quarantine_expired
218
+ GW_REJECT = :gw_reject
219
+ INJECTION_TIMEOUT = :injection_timeout
220
+ EXPIRED = :expired
221
+
222
+ # @!method self.values
223
+ # @return [Array<Symbol>]
224
+ end
225
+
226
+ # @see Telnyx::Models::EmailEventListResponse::Data::Payload#bcc
227
+ module Bcc
228
+ extend Telnyx::Internal::Type::Union
229
+
230
+ variant -> { Telnyx::EmailWebhookRecipient }
231
+
232
+ variant const: -> { Telnyx::Models::EmailEventListResponse::Data::Payload::Bcc::REDACTED }
233
+
234
+ # @!method self.variants
235
+ # @return [Array(Telnyx::Models::EmailWebhookRecipient, Symbol)]
236
+
237
+ define_sorbet_constant!(:Variants) do
238
+ T.type_alias do
239
+ T.any(
240
+ Telnyx::EmailWebhookRecipient,
241
+ Telnyx::Models::EmailEventListResponse::Data::Payload::Bcc::TaggedSymbol
242
+ )
243
+ end
244
+ end
245
+
246
+ # @!group
247
+
248
+ REDACTED = :redacted
249
+
250
+ # @!endgroup
251
+ end
252
+
253
+ # Legacy message-scoped address, or an empty string when absent.
254
+ #
255
+ # @see Telnyx::Models::EmailEventListResponse::Data::Payload#cc
256
+ module Cc
257
+ extend Telnyx::Internal::Type::Union
258
+
259
+ variant -> { Telnyx::EmailWebhookRecipient }
260
+
261
+ # Legacy message-scoped address, or an empty string when absent.
262
+ variant String
263
+
264
+ # @!method self.variants
265
+ # @return [Array(Telnyx::Models::EmailWebhookRecipient, String)]
266
+ end
267
+
268
+ # @see Telnyx::Models::EmailEventListResponse::Data::Payload#from
269
+ class From < Telnyx::Internal::Type::BaseModel
270
+ # @!attribute email
271
+ #
272
+ # @return [String]
273
+ required :email, String
274
+
275
+ # @!attribute name
276
+ #
277
+ # @return [String, nil]
278
+ required :name, String, nil?: true
279
+
280
+ # @!method initialize(email:, name:)
281
+ # Sender projection in account event polling. The display name is explicitly null
282
+ # when the message has no sender name.
283
+ #
284
+ # @param email [String]
285
+ # @param name [String, nil]
286
+ end
287
+
288
+ # Legacy message-scoped address, or an empty string when absent.
289
+ #
290
+ # @see Telnyx::Models::EmailEventListResponse::Data::Payload#to
291
+ module To
292
+ extend Telnyx::Internal::Type::Union
293
+
294
+ variant -> { Telnyx::EmailWebhookRecipient }
295
+
296
+ # Legacy message-scoped address, or an empty string when absent.
297
+ variant String
298
+
299
+ # @!method self.variants
300
+ # @return [Array(Telnyx::Models::EmailWebhookRecipient, String)]
301
+ end
302
+ end
70
303
  end
71
304
 
72
- # @see Telnyx::Models::EmailEventListResponse#email
73
- class Email < Telnyx::Internal::Type::BaseModel
74
- # @!attribute cc
305
+ # @see Telnyx::Models::EmailEventListResponse#meta
306
+ class Meta < Telnyx::Internal::Type::BaseModel
307
+ # @!attribute page_size
75
308
  #
76
- # @return [Array<Telnyx::Models::EmailInboxes::EmailAddress>]
77
- required :cc, -> { Telnyx::Internal::Type::ArrayOf[Telnyx::EmailInboxes::EmailAddress] }
309
+ # @return [Integer]
310
+ required :page_size, Integer
78
311
 
79
- # @!attribute from
312
+ # @!attribute time_range
80
313
  #
81
- # @return [Telnyx::Models::EmailInboxes::EmailAddress]
82
- required :from, -> { Telnyx::EmailInboxes::EmailAddress }
314
+ # @return [Telnyx::Models::TimeRange]
315
+ required :time_range, -> { Telnyx::TimeRange }
83
316
 
84
- # @!attribute subject
317
+ # @!attribute page_cursor
318
+ # Cursor for the next page, when more results are available.
85
319
  #
86
- # @return [String]
87
- required :subject, String
320
+ # @return [String, nil]
321
+ optional :page_cursor, String
88
322
 
89
- # @!attribute to
323
+ # @!method initialize(page_size:, time_range:, page_cursor: nil)
324
+ # @param page_size [Integer]
90
325
  #
91
- # @return [Array<Telnyx::Models::EmailInboxes::EmailAddress>]
92
- required :to, -> { Telnyx::Internal::Type::ArrayOf[Telnyx::EmailInboxes::EmailAddress] }
93
-
94
- # @!method initialize(cc:, from:, subject:, to:)
95
- # Summary of the associated email message. Present when the email_message preload
96
- # is available.
326
+ # @param time_range [Telnyx::Models::TimeRange]
97
327
  #
98
- # @param cc [Array<Telnyx::Models::EmailInboxes::EmailAddress>]
99
- # @param from [Telnyx::Models::EmailInboxes::EmailAddress]
100
- # @param subject [String]
101
- # @param to [Array<Telnyx::Models::EmailInboxes::EmailAddress>]
328
+ # @param page_cursor [String] Cursor for the next page, when more results are available.
102
329
  end
103
330
  end
104
331
  end
@@ -2,6 +2,12 @@
2
2
 
3
3
  module Telnyx
4
4
  module Models
5
+ # Bare stored event names returned by message history. In addition to the normal
6
+ # send and delivery lifecycle, polling can expose suppression, scan, and
7
+ # quarantine lifecycle rows. Sharp canonical names gw_reject, injection_timeout,
8
+ # and expired distinguish gateway rejection, ambiguous injection timeout, and MTA
9
+ # expiration. The failed and bounced names remain valid for system/admin failures
10
+ # and hard bounces respectively. Existing stored rows retain their original names.
5
11
  module EmailEventType
6
12
  extend Telnyx::Internal::Type::Enum
7
13
 
@@ -16,11 +22,21 @@ module Telnyx
16
22
  DELIVERED = :delivered
17
23
  BOUNCED = :bounced
18
24
  COMPLAINED = :complained
25
+ SUPPRESSED = :suppressed
19
26
  REJECTED = :rejected
20
27
  OPENED = :opened
21
28
  CLICKED = :clicked
22
29
  UNSUBSCRIBED = :unsubscribed
23
30
  DAILY_LIMIT_EXCEEDED = :daily_limit_exceeded
31
+ SCAN_DEFERRED = :scan_deferred
32
+ QUARANTINED = :quarantined
33
+ QUARANTINE_RELEASED = :quarantine_released
34
+ QUARANTINE_RELEASE_DISPATCHED = :quarantine_release_dispatched
35
+ QUARANTINE_REJECTED = :quarantine_rejected
36
+ QUARANTINE_EXPIRED = :quarantine_expired
37
+ GW_REJECT = :gw_reject
38
+ INJECTION_TIMEOUT = :injection_timeout
39
+ EXPIRED = :expired
24
40
 
25
41
  # @!method self.values
26
42
  # @return [Array<Symbol>]
@@ -32,14 +32,20 @@ module Telnyx
32
32
 
33
33
  # @!attribute events
34
34
  #
35
- # @return [Array<Telnyx::Models::MessageEvent>]
36
- required :events, -> { Telnyx::Internal::Type::ArrayOf[Telnyx::MessageEvent] }
35
+ # @return [Array<Telnyx::Models::EmailInboxes::EmailMessage::Event>]
36
+ required :events, -> { Telnyx::Internal::Type::ArrayOf[Telnyx::EmailInboxes::EmailMessage::Event] }
37
37
 
38
38
  # @!attribute from
39
39
  #
40
40
  # @return [Telnyx::Models::EmailInboxes::EmailAddress]
41
41
  required :from, -> { Telnyx::EmailInboxes::EmailAddress }
42
42
 
43
+ # @!attribute metadata
44
+ # Customer-supplied metadata stored with the message.
45
+ #
46
+ # @return [Hash{Symbol=>Object}]
47
+ required :metadata, Telnyx::Internal::Type::HashOf[Telnyx::Internal::Type::Unknown]
48
+
43
49
  # @!attribute record_type
44
50
  #
45
51
  # @return [Symbol, Telnyx::Models::EmailInboxes::EmailMessage::RecordType]
@@ -63,6 +69,12 @@ module Telnyx
63
69
  # @return [String]
64
70
  required :subject, String
65
71
 
72
+ # @!attribute tags
73
+ # Customer-supplied tags stored with the message.
74
+ #
75
+ # @return [Array<String>]
76
+ required :tags, Telnyx::Internal::Type::ArrayOf[String]
77
+
66
78
  # @!attribute template_id
67
79
  #
68
80
  # @return [String, nil]
@@ -115,7 +127,7 @@ module Telnyx
115
127
  # @return [Array<Telnyx::Models::SuppressedRecipient>, nil]
116
128
  optional :suppressed, -> { Telnyx::Internal::Type::ArrayOf[Telnyx::SuppressedRecipient] }
117
129
 
118
- # @!method initialize(id:, attachments:, bcc:, cc:, created_at:, events:, from:, record_type:, reply_to:, status:, subject:, template_id:, template_variables:, to:, inline_css: nil, recipient_statuses: nil, sandbox: nil, scheduled_at: nil, suppressed: nil)
130
+ # @!method initialize(id:, attachments:, bcc:, cc:, created_at:, events:, from:, metadata:, record_type:, reply_to:, status:, subject:, tags:, template_id:, template_variables:, to:, inline_css: nil, recipient_statuses: nil, sandbox: nil, scheduled_at: nil, suppressed: nil)
119
131
  # Some parameter documentations has been truncated, see
120
132
  # {Telnyx::Models::EmailInboxes::EmailMessage} for more details.
121
133
  #
@@ -129,10 +141,12 @@ module Telnyx
129
141
  #
130
142
  # @param created_at [Time]
131
143
  #
132
- # @param events [Array<Telnyx::Models::MessageEvent>]
144
+ # @param events [Array<Telnyx::Models::EmailInboxes::EmailMessage::Event>]
133
145
  #
134
146
  # @param from [Telnyx::Models::EmailInboxes::EmailAddress]
135
147
  #
148
+ # @param metadata [Hash{Symbol=>Object}] Customer-supplied metadata stored with the message.
149
+ #
136
150
  # @param record_type [Symbol, Telnyx::Models::EmailInboxes::EmailMessage::RecordType]
137
151
  #
138
152
  # @param reply_to [String, nil]
@@ -141,6 +155,8 @@ module Telnyx
141
155
  #
142
156
  # @param subject [String]
143
157
  #
158
+ # @param tags [Array<String>] Customer-supplied tags stored with the message.
159
+ #
144
160
  # @param template_id [String, nil]
145
161
  #
146
162
  # @param template_variables [Hash{Symbol=>Object}]
@@ -220,6 +236,42 @@ module Telnyx
220
236
  # @param url [String, nil] Telnyx-hosted public URL for the attachment content.
221
237
  end
222
238
 
239
+ class Event < Telnyx::Internal::Type::BaseModel
240
+ # @!attribute occurred_at
241
+ #
242
+ # @return [Time]
243
+ required :occurred_at, Time
244
+
245
+ # @!attribute type
246
+ # Bare stored event names returned by message history. In addition to the normal
247
+ # send and delivery lifecycle, polling can expose suppression, scan, and
248
+ # quarantine lifecycle rows. Sharp canonical names gw_reject, injection_timeout,
249
+ # and expired distinguish gateway rejection, ambiguous injection timeout, and MTA
250
+ # expiration. The failed and bounced names remain valid for system/admin failures
251
+ # and hard bounces respectively. Existing stored rows retain their original names.
252
+ #
253
+ # @return [Symbol, Telnyx::Models::EmailEventType]
254
+ required :type, enum: -> { Telnyx::EmailEventType }
255
+
256
+ # @!attribute payload
257
+ #
258
+ # @return [Hash{Symbol=>Object}, nil]
259
+ optional :payload, Telnyx::Internal::Type::HashOf[Telnyx::Internal::Type::Unknown]
260
+
261
+ # @!method initialize(occurred_at:, type:, payload: nil)
262
+ # Some parameter documentations has been truncated, see
263
+ # {Telnyx::Models::EmailInboxes::EmailMessage::Event} for more details.
264
+ #
265
+ # An event embedded in a message response. The dedicated per-message events
266
+ # endpoint additionally returns event_type and canonical_event_type.
267
+ #
268
+ # @param occurred_at [Time]
269
+ #
270
+ # @param type [Symbol, Telnyx::Models::EmailEventType] Bare stored event names returned by message history. In addition to the normal s
271
+ #
272
+ # @param payload [Hash{Symbol=>Object}]
273
+ end
274
+
223
275
  # @see Telnyx::Models::EmailInboxes::EmailMessage#record_type
224
276
  module RecordType
225
277
  extend Telnyx::Internal::Type::Enum
@@ -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
  #