telnyx 5.112.0 → 5.113.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 (261) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +17 -0
  3. data/README.md +1 -1
  4. data/lib/telnyx/models/ai/assistant_create_params.rb +9 -178
  5. data/lib/telnyx/models/ai/assistant_integration.rb +38 -0
  6. data/lib/telnyx/models/ai/assistant_mcp_server.rb +35 -0
  7. data/lib/telnyx/models/ai/assistant_tool.rb +14 -14
  8. data/lib/telnyx/models/ai/assistant_update_params.rb +9 -178
  9. data/lib/telnyx/models/ai/assistants/canary_deploy.rb +3 -123
  10. data/lib/telnyx/models/ai/assistants/canary_deploy_response.rb +3 -125
  11. data/lib/telnyx/models/ai/assistants/clause.rb +54 -0
  12. data/lib/telnyx/models/ai/assistants/rollout_slot.rb +27 -0
  13. data/lib/telnyx/models/ai/assistants/rule_input.rb +40 -0
  14. data/lib/telnyx/models/ai/assistants/rule_output.rb +40 -0
  15. data/lib/telnyx/models/ai/assistants/serve.rb +33 -0
  16. data/lib/telnyx/models/ai/assistants/update_assistant.rb +9 -179
  17. data/lib/telnyx/models/ai/inference_embedding.rb +9 -177
  18. data/lib/telnyx/models/ai/inference_embedding_interruption_settings.rb +47 -0
  19. data/lib/telnyx/models/ai/openai_create_response_params.rb +3 -3
  20. data/lib/telnyx/models/ai/openai_list_models_response.rb +3 -210
  21. data/lib/telnyx/models/ai/start_speaking_plan.rb +37 -0
  22. data/lib/telnyx/models/ai/transcription_endpointing_plan.rb +39 -0
  23. data/lib/telnyx/models/ai/transfer_tool.rb +7 -9
  24. data/lib/telnyx/models/ai_create_response_params.rb +4 -4
  25. data/lib/telnyx/models/ai_retrieve_models_response.rb +3 -210
  26. data/lib/telnyx/models/call_conversation_ended.rb +13 -1
  27. data/lib/telnyx/models/calls/action_gather_using_ai_params.rb +4 -23
  28. data/lib/telnyx/models/calls/action_gather_using_speak_params.rb +4 -23
  29. data/lib/telnyx/models/calls/action_speak_params.rb +4 -23
  30. data/lib/telnyx/models/calls/action_start_ai_assistant_params.rb +4 -23
  31. data/lib/telnyx/models/calls/action_start_conversation_relay_params.rb +169 -118
  32. data/lib/telnyx/models/calls/transcription_engine_assemblyai_config.rb +64 -0
  33. data/lib/telnyx/models/calls/transcription_engine_speechmatics_config.rb +100 -0
  34. data/lib/telnyx/models/calls/transcription_engine_xai_config.rb +108 -0
  35. data/lib/telnyx/models/calls/transcription_start_request.rb +8 -167
  36. data/lib/telnyx/models/conferences/action_speak_params.rb +4 -23
  37. data/lib/telnyx/models/fax.rb +7 -5
  38. data/lib/telnyx/models/fax_create_params.rb +7 -5
  39. data/lib/telnyx/models/fax_delivered.rb +3 -2
  40. data/lib/telnyx/models/fax_failed.rb +3 -2
  41. data/lib/telnyx/models/fax_media_processed.rb +3 -2
  42. data/lib/telnyx/models/fax_queued.rb +3 -2
  43. data/lib/telnyx/models/fax_sending_started.rb +3 -2
  44. data/lib/telnyx/models/model_metadata.rb +212 -0
  45. data/lib/telnyx/models/network_list_interfaces_response.rb +112 -2
  46. data/lib/telnyx/models/public_internet_gateway_create_response.rb +3 -8
  47. data/lib/telnyx/models/public_internet_gateway_delete_response.rb +3 -8
  48. data/lib/telnyx/models/public_internet_gateway_read.rb +83 -0
  49. data/lib/telnyx/models/public_internet_gateway_retrieve_response.rb +3 -8
  50. data/lib/telnyx/models/texml/accounts/call_calls_params.rb +62 -12
  51. data/lib/telnyx/models/texml_initiate_ai_call_params.rb +18 -4
  52. data/lib/telnyx/models/text_to_speech_generate_params.rb +6 -6
  53. data/lib/telnyx/models/uac_connection.rb +412 -0
  54. data/lib/telnyx/models/uac_connection_create_params.rb +9 -255
  55. data/lib/telnyx/models/uac_connection_create_response.rb +3 -878
  56. data/lib/telnyx/models/uac_connection_delete_response.rb +3 -878
  57. data/lib/telnyx/models/uac_connection_retrieve_response.rb +3 -879
  58. data/lib/telnyx/models/uac_connection_update_params.rb +9 -255
  59. data/lib/telnyx/models/uac_connection_update_response.rb +3 -878
  60. data/lib/telnyx/models/uac_external_settings.rb +101 -0
  61. data/lib/telnyx/models/uac_inbound.rb +210 -0
  62. data/lib/telnyx/models/uac_internal_settings.rb +25 -0
  63. data/lib/telnyx/models/uac_outbound.rb +131 -0
  64. data/lib/telnyx/models/virtual_cross_connect_combined.rb +212 -0
  65. data/lib/telnyx/models/virtual_cross_connect_create_response.rb +3 -8
  66. data/lib/telnyx/models/virtual_cross_connect_delete_response.rb +3 -8
  67. data/lib/telnyx/models/virtual_cross_connect_retrieve_response.rb +3 -8
  68. data/lib/telnyx/models/virtual_cross_connect_update_response.rb +3 -8
  69. data/lib/telnyx/models/wireguard_interface_create_response.rb +3 -8
  70. data/lib/telnyx/models/wireguard_interface_delete_response.rb +3 -8
  71. data/lib/telnyx/models/wireguard_interface_read.rb +136 -0
  72. data/lib/telnyx/models/wireguard_interface_retrieve_response.rb +3 -8
  73. data/lib/telnyx/models/xai_voice_settings.rb +36 -0
  74. data/lib/telnyx/models.rb +20 -0
  75. data/lib/telnyx/resources/ai/assistants/canary_deploys.rb +2 -2
  76. data/lib/telnyx/resources/ai/assistants/versions.rb +3 -3
  77. data/lib/telnyx/resources/ai/assistants.rb +6 -6
  78. data/lib/telnyx/resources/ai/openai.rb +1 -1
  79. data/lib/telnyx/resources/ai.rb +3 -3
  80. data/lib/telnyx/resources/calls/actions.rb +15 -17
  81. data/lib/telnyx/resources/conferences/actions.rb +1 -1
  82. data/lib/telnyx/resources/faxes.rb +13 -1
  83. data/lib/telnyx/resources/public_internet_gateways.rb +2 -2
  84. data/lib/telnyx/resources/texml.rb +4 -2
  85. data/lib/telnyx/resources/uac_connections.rb +8 -8
  86. data/lib/telnyx/resources/virtual_cross_connects.rb +2 -2
  87. data/lib/telnyx/resources/wireguard_interfaces.rb +2 -2
  88. data/lib/telnyx/version.rb +1 -1
  89. data/lib/telnyx.rb +23 -4
  90. data/rbi/telnyx/models/ai/assistant_create_params.rbi +12 -352
  91. data/rbi/telnyx/models/ai/assistant_integration.rbi +60 -0
  92. data/rbi/telnyx/models/ai/assistant_mcp_server.rbi +51 -0
  93. data/rbi/telnyx/models/ai/assistant_tool.rbi +10 -10
  94. data/rbi/telnyx/models/ai/assistant_update_params.rbi +12 -352
  95. data/rbi/telnyx/models/ai/assistants/canary_deploy.rbi +4 -290
  96. data/rbi/telnyx/models/ai/assistants/canary_deploy_response.rbi +3 -301
  97. data/rbi/telnyx/models/ai/assistants/clause.rbi +91 -0
  98. data/rbi/telnyx/models/ai/assistants/rollout_slot.rbi +36 -0
  99. data/rbi/telnyx/models/ai/assistants/rule_input.rbi +73 -0
  100. data/rbi/telnyx/models/ai/assistants/rule_output.rbi +73 -0
  101. data/rbi/telnyx/models/ai/assistants/serve.rbi +61 -0
  102. data/rbi/telnyx/models/ai/assistants/update_assistant.rbi +12 -366
  103. data/rbi/telnyx/models/ai/inference_embedding.rbi +12 -351
  104. data/rbi/telnyx/models/ai/inference_embedding_interruption_settings.rbi +83 -0
  105. data/rbi/telnyx/models/ai/openai_create_response_params.rbi +4 -4
  106. data/rbi/telnyx/models/ai/openai_list_models_response.rbi +3 -315
  107. data/rbi/telnyx/models/ai/start_speaking_plan.rbi +70 -0
  108. data/rbi/telnyx/models/ai/transcription_endpointing_plan.rbi +71 -0
  109. data/rbi/telnyx/models/ai/transfer_tool.rbi +5 -5
  110. data/rbi/telnyx/models/ai_create_response_params.rbi +4 -4
  111. data/rbi/telnyx/models/ai_retrieve_models_response.rbi +3 -310
  112. data/rbi/telnyx/models/call_conversation_ended.rbi +10 -0
  113. data/rbi/telnyx/models/calls/action_gather_using_ai_params.rbi +5 -41
  114. data/rbi/telnyx/models/calls/action_gather_using_speak_params.rbi +5 -41
  115. data/rbi/telnyx/models/calls/action_speak_params.rbi +5 -41
  116. data/rbi/telnyx/models/calls/action_start_ai_assistant_params.rbi +5 -41
  117. data/rbi/telnyx/models/calls/action_start_conversation_relay_params.rbi +371 -254
  118. data/rbi/telnyx/models/calls/transcription_engine_assemblyai_config.rbi +155 -0
  119. data/rbi/telnyx/models/calls/transcription_engine_speechmatics_config.rbi +289 -0
  120. data/rbi/telnyx/models/calls/transcription_engine_xai_config.rbi +329 -0
  121. data/rbi/telnyx/models/calls/transcription_start_request.rbi +20 -480
  122. data/rbi/telnyx/models/conferences/action_speak_params.rbi +5 -41
  123. data/rbi/telnyx/models/fax.rbi +12 -8
  124. data/rbi/telnyx/models/fax_create_params.rbi +12 -8
  125. data/rbi/telnyx/models/fax_delivered.rbi +6 -4
  126. data/rbi/telnyx/models/fax_failed.rbi +6 -4
  127. data/rbi/telnyx/models/fax_media_processed.rbi +6 -4
  128. data/rbi/telnyx/models/fax_queued.rbi +6 -4
  129. data/rbi/telnyx/models/fax_sending_started.rbi +6 -4
  130. data/rbi/telnyx/models/model_metadata.rbi +272 -0
  131. data/rbi/telnyx/models/network_list_interfaces_response.rbi +181 -4
  132. data/rbi/telnyx/models/public_internet_gateway_create_response.rbi +6 -38
  133. data/rbi/telnyx/models/public_internet_gateway_delete_response.rbi +6 -38
  134. data/rbi/telnyx/models/public_internet_gateway_read.rbi +128 -0
  135. data/rbi/telnyx/models/public_internet_gateway_retrieve_response.rbi +6 -38
  136. data/rbi/telnyx/models/texml/accounts/call_calls_params.rbi +81 -9
  137. data/rbi/telnyx/models/texml_initiate_ai_call_params.rbi +27 -3
  138. data/rbi/telnyx/models/text_to_speech_generate_params.rbi +6 -6
  139. data/rbi/telnyx/models/uac_connection.rbi +684 -0
  140. data/rbi/telnyx/models/uac_connection_create_params.rbi +12 -516
  141. data/rbi/telnyx/models/uac_connection_create_response.rbi +4 -1756
  142. data/rbi/telnyx/models/uac_connection_delete_response.rbi +4 -1756
  143. data/rbi/telnyx/models/uac_connection_retrieve_response.rbi +4 -1756
  144. data/rbi/telnyx/models/uac_connection_update_params.rbi +12 -516
  145. data/rbi/telnyx/models/uac_connection_update_response.rbi +4 -1756
  146. data/rbi/telnyx/models/uac_external_settings.rbi +146 -0
  147. data/rbi/telnyx/models/uac_inbound.rbi +410 -0
  148. data/rbi/telnyx/models/uac_internal_settings.rbi +39 -0
  149. data/rbi/telnyx/models/uac_outbound.rbi +224 -0
  150. data/rbi/telnyx/models/virtual_cross_connect_combined.rbi +345 -0
  151. data/rbi/telnyx/models/virtual_cross_connect_create_response.rbi +6 -36
  152. data/rbi/telnyx/models/virtual_cross_connect_delete_response.rbi +6 -36
  153. data/rbi/telnyx/models/virtual_cross_connect_retrieve_response.rbi +6 -38
  154. data/rbi/telnyx/models/virtual_cross_connect_update_response.rbi +6 -36
  155. data/rbi/telnyx/models/wireguard_interface_create_response.rbi +6 -36
  156. data/rbi/telnyx/models/wireguard_interface_delete_response.rbi +6 -36
  157. data/rbi/telnyx/models/wireguard_interface_read.rbi +213 -0
  158. data/rbi/telnyx/models/wireguard_interface_retrieve_response.rbi +6 -36
  159. data/rbi/telnyx/models/xai_voice_settings.rbi +64 -0
  160. data/rbi/telnyx/models.rbi +20 -0
  161. data/rbi/telnyx/resources/ai/assistants/canary_deploys.rbi +2 -4
  162. data/rbi/telnyx/resources/ai/assistants/versions.rbi +3 -9
  163. data/rbi/telnyx/resources/ai/assistants.rbi +6 -10
  164. data/rbi/telnyx/resources/ai/openai.rbi +1 -1
  165. data/rbi/telnyx/resources/ai.rbi +2 -2
  166. data/rbi/telnyx/resources/calls/actions.rbi +24 -24
  167. data/rbi/telnyx/resources/conferences/actions.rbi +1 -1
  168. data/rbi/telnyx/resources/faxes.rbi +18 -4
  169. data/rbi/telnyx/resources/public_internet_gateways.rbi +1 -1
  170. data/rbi/telnyx/resources/texml.rbi +7 -1
  171. data/rbi/telnyx/resources/uac_connections.rbi +7 -13
  172. data/rbi/telnyx/resources/virtual_cross_connects.rbi +1 -1
  173. data/rbi/telnyx/resources/wireguard_interfaces.rbi +1 -1
  174. data/sig/telnyx/models/ai/assistant_create_params.rbs +18 -149
  175. data/sig/telnyx/models/ai/assistant_integration.rbs +26 -0
  176. data/sig/telnyx/models/ai/assistant_mcp_server.rbs +19 -0
  177. data/sig/telnyx/models/ai/assistant_tool.rbs +8 -8
  178. data/sig/telnyx/models/ai/assistant_update_params.rbs +18 -149
  179. data/sig/telnyx/models/ai/assistants/canary_deploy.rbs +6 -113
  180. data/sig/telnyx/models/ai/assistants/canary_deploy_response.rbs +4 -109
  181. data/sig/telnyx/models/ai/assistants/clause.rbs +46 -0
  182. data/sig/telnyx/models/ai/assistants/rollout_slot.rbs +19 -0
  183. data/sig/telnyx/models/ai/assistants/rule_input.rbs +33 -0
  184. data/sig/telnyx/models/ai/assistants/rule_output.rbs +33 -0
  185. data/sig/telnyx/models/ai/assistants/serve.rbs +35 -0
  186. data/sig/telnyx/models/ai/assistants/update_assistant.rbs +18 -152
  187. data/sig/telnyx/models/ai/inference_embedding.rbs +18 -149
  188. data/sig/telnyx/models/ai/inference_embedding_interruption_settings.rbs +40 -0
  189. data/sig/telnyx/models/ai/openai_create_response_params.rbs +5 -5
  190. data/sig/telnyx/models/ai/openai_list_models_response.rbs +4 -149
  191. data/sig/telnyx/models/ai/start_speaking_plan.rbs +33 -0
  192. data/sig/telnyx/models/ai/transcription_endpointing_plan.rbs +38 -0
  193. data/sig/telnyx/models/ai/transfer_tool.rbs +4 -4
  194. data/sig/telnyx/models/ai_create_response_params.rbs +5 -4
  195. data/sig/telnyx/models/ai_retrieve_models_response.rbs +4 -149
  196. data/sig/telnyx/models/call_conversation_ended.rbs +5 -0
  197. data/sig/telnyx/models/calls/action_gather_using_ai_params.rbs +1 -15
  198. data/sig/telnyx/models/calls/action_gather_using_speak_params.rbs +1 -15
  199. data/sig/telnyx/models/calls/action_speak_params.rbs +1 -15
  200. data/sig/telnyx/models/calls/action_start_ai_assistant_params.rbs +1 -15
  201. data/sig/telnyx/models/calls/action_start_conversation_relay_params.rbs +141 -102
  202. data/sig/telnyx/models/calls/transcription_engine_assemblyai_config.rbs +62 -0
  203. data/sig/telnyx/models/calls/transcription_engine_speechmatics_config.rbs +114 -0
  204. data/sig/telnyx/models/calls/transcription_engine_xai_config.rbs +130 -0
  205. data/sig/telnyx/models/calls/transcription_start_request.rbs +13 -185
  206. data/sig/telnyx/models/conferences/action_speak_params.rbs +1 -15
  207. data/sig/telnyx/models/model_metadata.rbs +142 -0
  208. data/sig/telnyx/models/network_list_interfaces_response.rbs +106 -4
  209. data/sig/telnyx/models/public_internet_gateway_create_response.rbs +6 -18
  210. data/sig/telnyx/models/public_internet_gateway_delete_response.rbs +6 -18
  211. data/sig/telnyx/models/public_internet_gateway_read.rbs +80 -0
  212. data/sig/telnyx/models/public_internet_gateway_retrieve_response.rbs +6 -18
  213. data/sig/telnyx/models/texml/accounts/call_calls_params.rbs +27 -3
  214. data/sig/telnyx/models/texml_initiate_ai_call_params.rbs +9 -1
  215. data/sig/telnyx/models/text_to_speech_generate_params.rbs +6 -6
  216. data/sig/telnyx/models/uac_connection.rbs +338 -0
  217. data/sig/telnyx/models/uac_connection_create_params.rbs +17 -211
  218. data/sig/telnyx/models/uac_connection_create_response.rbs +5 -731
  219. data/sig/telnyx/models/uac_connection_delete_response.rbs +5 -731
  220. data/sig/telnyx/models/uac_connection_retrieve_response.rbs +5 -731
  221. data/sig/telnyx/models/uac_connection_update_params.rbs +17 -211
  222. data/sig/telnyx/models/uac_connection_update_response.rbs +5 -731
  223. data/sig/telnyx/models/uac_external_settings.rbs +73 -0
  224. data/sig/telnyx/models/uac_inbound.rbs +190 -0
  225. data/sig/telnyx/models/uac_internal_settings.rbs +15 -0
  226. data/sig/telnyx/models/uac_outbound.rbs +113 -0
  227. data/sig/telnyx/models/virtual_cross_connect_combined.rbs +190 -0
  228. data/sig/telnyx/models/virtual_cross_connect_create_response.rbs +6 -18
  229. data/sig/telnyx/models/virtual_cross_connect_delete_response.rbs +6 -18
  230. data/sig/telnyx/models/virtual_cross_connect_retrieve_response.rbs +6 -18
  231. data/sig/telnyx/models/virtual_cross_connect_update_response.rbs +6 -18
  232. data/sig/telnyx/models/wireguard_interface_create_response.rbs +6 -18
  233. data/sig/telnyx/models/wireguard_interface_delete_response.rbs +6 -18
  234. data/sig/telnyx/models/wireguard_interface_read.rbs +127 -0
  235. data/sig/telnyx/models/wireguard_interface_retrieve_response.rbs +6 -18
  236. data/sig/telnyx/models/xai_voice_settings.rbs +34 -0
  237. data/sig/telnyx/models.rbs +20 -0
  238. data/sig/telnyx/resources/ai/assistants/canary_deploys.rbs +2 -2
  239. data/sig/telnyx/resources/ai/assistants/versions.rbs +3 -3
  240. data/sig/telnyx/resources/ai/assistants.rbs +6 -6
  241. data/sig/telnyx/resources/ai/openai.rbs +1 -1
  242. data/sig/telnyx/resources/ai.rbs +1 -1
  243. data/sig/telnyx/resources/calls/actions.rbs +2 -4
  244. data/sig/telnyx/resources/public_internet_gateways.rbs +1 -1
  245. data/sig/telnyx/resources/texml.rbs +1 -0
  246. data/sig/telnyx/resources/uac_connections.rbs +7 -7
  247. data/sig/telnyx/resources/virtual_cross_connects.rbs +1 -1
  248. data/sig/telnyx/resources/wireguard_interfaces.rbs +1 -1
  249. metadata +71 -14
  250. data/lib/telnyx/models/public_internet_gateway_list_response.rb +0 -10
  251. data/lib/telnyx/models/uac_connection_list_response.rb +0 -876
  252. data/lib/telnyx/models/virtual_cross_connect_list_response.rb +0 -10
  253. data/lib/telnyx/models/wireguard_interface_list_response.rb +0 -10
  254. data/rbi/telnyx/models/public_internet_gateway_list_response.rbi +0 -23
  255. data/rbi/telnyx/models/uac_connection_list_response.rbi +0 -1727
  256. data/rbi/telnyx/models/virtual_cross_connect_list_response.rbi +0 -23
  257. data/rbi/telnyx/models/wireguard_interface_list_response.rbi +0 -23
  258. data/sig/telnyx/models/public_internet_gateway_list_response.rbs +0 -11
  259. data/sig/telnyx/models/uac_connection_list_response.rbs +0 -722
  260. data/sig/telnyx/models/virtual_cross_connect_list_response.rbs +0 -11
  261. data/sig/telnyx/models/wireguard_interface_list_response.rbs +0 -11
@@ -51,16 +51,18 @@ module Telnyx
51
51
  attr_writer :from_display_name
52
52
 
53
53
  # The media_name used for the fax's media. Must point to a file previously
54
- # uploaded to api.telnyx.com/v2/media by the same user/organization. media_name
55
- # and media_url/contents can't be submitted together.
54
+ # uploaded to api.telnyx.com/v2/media by the same user/organization. Supported
55
+ # formats: PDF, TIFF, JPEG, PNG, DOC, DOCX, RTF, and TXT. media_name and
56
+ # media_url/contents can't be submitted together.
56
57
  sig { returns(T.nilable(String)) }
57
58
  attr_reader :media_name
58
59
 
59
60
  sig { params(media_name: String).void }
60
61
  attr_writer :media_name
61
62
 
62
- # The URL (or list of URLs) to the PDF used for the fax's media. media_url and
63
- # media_name/contents can't be submitted together.
63
+ # The URL (or list of URLs) to the fax document. Supported formats: PDF, TIFF,
64
+ # JPEG, PNG, DOC, DOCX, RTF, and TXT. media_url and media_name/contents can't be
65
+ # submitted together.
64
66
  sig { returns(T.nilable(String)) }
65
67
  attr_reader :media_url
66
68
 
@@ -166,11 +168,13 @@ module Telnyx
166
168
  # number in the `from` field.
167
169
  from_display_name: nil,
168
170
  # The media_name used for the fax's media. Must point to a file previously
169
- # uploaded to api.telnyx.com/v2/media by the same user/organization. media_name
170
- # and media_url/contents can't be submitted together.
171
+ # uploaded to api.telnyx.com/v2/media by the same user/organization. Supported
172
+ # formats: PDF, TIFF, JPEG, PNG, DOC, DOCX, RTF, and TXT. media_name and
173
+ # media_url/contents can't be submitted together.
171
174
  media_name: nil,
172
- # The URL (or list of URLs) to the PDF used for the fax's media. media_url and
173
- # media_name/contents can't be submitted together.
175
+ # The URL (or list of URLs) to the fax document. Supported formats: PDF, TIFF,
176
+ # JPEG, PNG, DOC, DOCX, RTF, and TXT. media_url and media_name/contents can't be
177
+ # submitted together.
174
178
  media_url: nil,
175
179
  # The flag to enable monochrome, true black and white fax results.
176
180
  monochrome: nil,
@@ -222,8 +222,9 @@ module Telnyx
222
222
  attr_writer :from
223
223
 
224
224
  # The media_name used for the fax's media. Must point to a file previously
225
- # uploaded to api.telnyx.com/v2/media by the same user/organization. media_name
226
- # and media_url/contents can't be submitted together.
225
+ # uploaded to api.telnyx.com/v2/media by the same user/organization. Supported
226
+ # formats: PDF, TIFF, JPEG, PNG, DOC, DOCX, RTF, and TXT. media_name and
227
+ # media_url/contents can't be submitted together.
227
228
  sig { returns(T.nilable(String)) }
228
229
  attr_reader :media_name
229
230
 
@@ -307,8 +308,9 @@ module Telnyx
307
308
  # The phone number, in E.164 format, the fax will be sent from.
308
309
  from: nil,
309
310
  # The media_name used for the fax's media. Must point to a file previously
310
- # uploaded to api.telnyx.com/v2/media by the same user/organization. media_name
311
- # and media_url/contents can't be submitted together.
311
+ # uploaded to api.telnyx.com/v2/media by the same user/organization. Supported
312
+ # formats: PDF, TIFF, JPEG, PNG, DOC, DOCX, RTF, and TXT. media_name and
313
+ # media_url/contents can't be submitted together.
312
314
  media_name: nil,
313
315
  # The original URL to the PDF used for the fax's media. If media_name was
314
316
  # supplied, this is omitted
@@ -219,8 +219,9 @@ module Telnyx
219
219
  attr_writer :from
220
220
 
221
221
  # The media_name used for the fax's media. Must point to a file previously
222
- # uploaded to api.telnyx.com/v2/media by the same user/organization. media_name
223
- # and media_url/contents can't be submitted together.
222
+ # uploaded to api.telnyx.com/v2/media by the same user/organization. Supported
223
+ # formats: PDF, TIFF, JPEG, PNG, DOC, DOCX, RTF, and TXT. media_name and
224
+ # media_url/contents can't be submitted together.
224
225
  sig { returns(T.nilable(String)) }
225
226
  attr_reader :media_name
226
227
 
@@ -294,8 +295,9 @@ module Telnyx
294
295
  # The phone number, in E.164 format, the fax will be sent from.
295
296
  from: nil,
296
297
  # The media_name used for the fax's media. Must point to a file previously
297
- # uploaded to api.telnyx.com/v2/media by the same user/organization. media_name
298
- # and media_url/contents can't be submitted together.
298
+ # uploaded to api.telnyx.com/v2/media by the same user/organization. Supported
299
+ # formats: PDF, TIFF, JPEG, PNG, DOC, DOCX, RTF, and TXT. media_name and
300
+ # media_url/contents can't be submitted together.
299
301
  media_name: nil,
300
302
  # The original URL to the PDF used for the fax's media. If media_name was
301
303
  # supplied, this is omitted
@@ -222,8 +222,9 @@ module Telnyx
222
222
  attr_writer :from
223
223
 
224
224
  # The media_name used for the fax's media. Must point to a file previously
225
- # uploaded to api.telnyx.com/v2/media by the same user/organization. media_name
226
- # and media_url/contents can't be submitted together.
225
+ # uploaded to api.telnyx.com/v2/media by the same user/organization. Supported
226
+ # formats: PDF, TIFF, JPEG, PNG, DOC, DOCX, RTF, and TXT. media_name and
227
+ # media_url/contents can't be submitted together.
227
228
  sig { returns(T.nilable(String)) }
228
229
  attr_reader :media_name
229
230
 
@@ -297,8 +298,9 @@ module Telnyx
297
298
  # The phone number, in E.164 format, the fax will be sent from.
298
299
  from: nil,
299
300
  # The media_name used for the fax's media. Must point to a file previously
300
- # uploaded to api.telnyx.com/v2/media by the same user/organization. media_name
301
- # and media_url/contents can't be submitted together.
301
+ # uploaded to api.telnyx.com/v2/media by the same user/organization. Supported
302
+ # formats: PDF, TIFF, JPEG, PNG, DOC, DOCX, RTF, and TXT. media_name and
303
+ # media_url/contents can't be submitted together.
302
304
  media_name: nil,
303
305
  # The original URL to the PDF used for the fax's media. If media_name was
304
306
  # supplied, this is omitted
@@ -201,8 +201,9 @@ module Telnyx
201
201
  attr_writer :from
202
202
 
203
203
  # The media_name used for the fax's media. Must point to a file previously
204
- # uploaded to api.telnyx.com/v2/media by the same user/organization. media_name
205
- # and media_url/contents can't be submitted together.
204
+ # uploaded to api.telnyx.com/v2/media by the same user/organization. Supported
205
+ # formats: PDF, TIFF, JPEG, PNG, DOC, DOCX, RTF, and TXT. media_name and
206
+ # media_url/contents can't be submitted together.
206
207
  sig { returns(T.nilable(String)) }
207
208
  attr_reader :media_name
208
209
 
@@ -272,8 +273,9 @@ module Telnyx
272
273
  # The phone number, in E.164 format, the fax will be sent from.
273
274
  from: nil,
274
275
  # The media_name used for the fax's media. Must point to a file previously
275
- # uploaded to api.telnyx.com/v2/media by the same user/organization. media_name
276
- # and media_url/contents can't be submitted together.
276
+ # uploaded to api.telnyx.com/v2/media by the same user/organization. Supported
277
+ # formats: PDF, TIFF, JPEG, PNG, DOC, DOCX, RTF, and TXT. media_name and
278
+ # media_url/contents can't be submitted together.
277
279
  media_name: nil,
278
280
  # The original URL to the PDF used for the fax's media. If media_name was
279
281
  # supplied, this is omitted
@@ -222,8 +222,9 @@ module Telnyx
222
222
  attr_writer :from
223
223
 
224
224
  # The media_name used for the fax's media. Must point to a file previously
225
- # uploaded to api.telnyx.com/v2/media by the same user/organization. media_name
226
- # and media_url/contents can't be submitted together.
225
+ # uploaded to api.telnyx.com/v2/media by the same user/organization. Supported
226
+ # formats: PDF, TIFF, JPEG, PNG, DOC, DOCX, RTF, and TXT. media_name and
227
+ # media_url/contents can't be submitted together.
227
228
  sig { returns(T.nilable(String)) }
228
229
  attr_reader :media_name
229
230
 
@@ -297,8 +298,9 @@ module Telnyx
297
298
  # The phone number, in E.164 format, the fax will be sent from.
298
299
  from: nil,
299
300
  # The media_name used for the fax's media. Must point to a file previously
300
- # uploaded to api.telnyx.com/v2/media by the same user/organization. media_name
301
- # and media_url/contents can't be submitted together.
301
+ # uploaded to api.telnyx.com/v2/media by the same user/organization. Supported
302
+ # formats: PDF, TIFF, JPEG, PNG, DOC, DOCX, RTF, and TXT. media_name and
303
+ # media_url/contents can't be submitted together.
302
304
  media_name: nil,
303
305
  # The original URL to the PDF used for the fax's media. If media_name was
304
306
  # supplied, this is omitted
@@ -0,0 +1,272 @@
1
+ # typed: strong
2
+
3
+ module Telnyx
4
+ module Models
5
+ class ModelMetadata < Telnyx::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias { T.any(Telnyx::ModelMetadata, Telnyx::Internal::AnyHash) }
8
+
9
+ # Model identifier. For open-source models, follows the
10
+ # `{organization}/{model_name}` convention from Hugging Face (e.g.
11
+ # `moonshotai/Kimi-K2.6`).
12
+ sig { returns(String) }
13
+ attr_accessor :id
14
+
15
+ # Maximum total tokens (prompt + completion) supported by the model in a single
16
+ # request.
17
+ sig { returns(Integer) }
18
+ attr_accessor :context_length
19
+
20
+ # Timestamp at which the model was registered on Telnyx Inference (ISO 8601).
21
+ sig { returns(Time) }
22
+ attr_accessor :created
23
+
24
+ # ISO language codes the model supports (e.g. `en`, `es`).
25
+ sig { returns(T::Array[String]) }
26
+ attr_accessor :languages
27
+
28
+ # License the model is distributed under, e.g. `Apache 2.0`, `MIT`,
29
+ # `Llama 3 Community License`.
30
+ sig { returns(String) }
31
+ attr_accessor :license
32
+
33
+ # Organization that originally published the model, matching the prefix of `id`
34
+ # for open-source models.
35
+ sig { returns(String) }
36
+ attr_accessor :organization
37
+
38
+ # Owner of the model. `Telnyx` for Telnyx-hosted open-source models, the upstream
39
+ # provider name for proxied models, or the Telnyx organization id for fine-tuned
40
+ # models.
41
+ sig { returns(String) }
42
+ attr_accessor :owned_by
43
+
44
+ # Total parameter count of the model.
45
+ sig { returns(Integer) }
46
+ attr_accessor :parameters
47
+
48
+ # Billing tier the model belongs to. Used together with `pricing` to determine
49
+ # cost per 1M tokens.
50
+ sig { returns(Telnyx::ModelMetadata::Tier::TaggedSymbol) }
51
+ attr_accessor :tier
52
+
53
+ # Base model the fine-tuned model was trained from. Only set for fine-tuned
54
+ # models.
55
+ sig { returns(T.nilable(String)) }
56
+ attr_accessor :base_model
57
+
58
+ # Short, human-readable summary of what the model is best suited for.
59
+ sig { returns(T.nilable(String)) }
60
+ attr_accessor :description
61
+
62
+ # Whether the model can be used as a base for a fine-tuning job via
63
+ # `POST /v2/ai/fine_tuning/jobs`.
64
+ sig { returns(T.nilable(T::Boolean)) }
65
+ attr_reader :is_fine_tunable
66
+
67
+ sig { params(is_fine_tunable: T::Boolean).void }
68
+ attr_writer :is_fine_tunable
69
+
70
+ # Whether the model accepts image inputs in chat completions (multimodal vision
71
+ # support).
72
+ sig { returns(T.nilable(T::Boolean)) }
73
+ attr_reader :is_vision_supported
74
+
75
+ sig { params(is_vision_supported: T::Boolean).void }
76
+ attr_writer :is_vision_supported
77
+
78
+ # Maximum number of completion (output) tokens the model will generate per
79
+ # request. `null` if unconstrained beyond `context_length`.
80
+ sig { returns(T.nilable(Integer)) }
81
+ attr_accessor :max_completion_tokens
82
+
83
+ # Object type. Always `model`.
84
+ sig { returns(T.nilable(String)) }
85
+ attr_reader :object
86
+
87
+ sig { params(object: String).void }
88
+ attr_writer :object
89
+
90
+ # Human-readable parameter count, e.g. `1.0T`, `753.9B`, `8B`.
91
+ sig { returns(T.nilable(String)) }
92
+ attr_accessor :parameters_str
93
+
94
+ # Mapping of token kind to price, as strings to preserve precision. Typical keys
95
+ # are `prompt`, `cached_prompt`, and `completion`. When pricing is available the
96
+ # block also includes `currency` (ISO 4217 code matching the account's configured
97
+ # billing currency) and `unit` (the denomination the prices are quoted in,
98
+ # currently always `1M_tokens` for token-priced models).
99
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
100
+ attr_reader :pricing
101
+
102
+ sig { params(pricing: T::Hash[Symbol, String]).void }
103
+ attr_writer :pricing
104
+
105
+ # Whether Telnyx currently recommends this model as the LLM powering a Telnyx AI
106
+ # Assistant.
107
+ sig { returns(T.nilable(T::Boolean)) }
108
+ attr_reader :recommended_for_assistants
109
+
110
+ sig { params(recommended_for_assistants: T::Boolean).void }
111
+ attr_writer :recommended_for_assistants
112
+
113
+ # Public region names where the model is currently deployed (e.g. `us-central-1`,
114
+ # `eu-central-1`).
115
+ sig { returns(T.nilable(T::Array[String])) }
116
+ attr_reader :regions
117
+
118
+ sig { params(regions: T::Array[String]).void }
119
+ attr_writer :regions
120
+
121
+ # Primary task the model is intended for, e.g. `text-generation`,
122
+ # `audio-text-to-text`, `feature-extraction` (embeddings).
123
+ sig { returns(T.nilable(String)) }
124
+ attr_reader :task
125
+
126
+ sig { params(task: String).void }
127
+ attr_writer :task
128
+
129
+ # Metadata for a model available on Telnyx Inference. Returned by
130
+ # `GET /v2/ai/openai/models` (and the deprecated `GET /v2/ai/models`). Open-source
131
+ # models live under their Hugging Face organization (e.g. `moonshotai/Kimi-K2.6`,
132
+ # `zai-org/GLM-5.1-FP8`, `MiniMaxAI/MiniMax-M2.7`); fine-tuned models are owned by
133
+ # the Telnyx organization that trained them.
134
+ sig do
135
+ params(
136
+ id: String,
137
+ context_length: Integer,
138
+ created: Time,
139
+ languages: T::Array[String],
140
+ license: String,
141
+ organization: String,
142
+ owned_by: String,
143
+ parameters: Integer,
144
+ tier: Telnyx::ModelMetadata::Tier::OrSymbol,
145
+ base_model: T.nilable(String),
146
+ description: T.nilable(String),
147
+ is_fine_tunable: T::Boolean,
148
+ is_vision_supported: T::Boolean,
149
+ max_completion_tokens: T.nilable(Integer),
150
+ object: String,
151
+ parameters_str: T.nilable(String),
152
+ pricing: T::Hash[Symbol, String],
153
+ recommended_for_assistants: T::Boolean,
154
+ regions: T::Array[String],
155
+ task: String
156
+ ).returns(T.attached_class)
157
+ end
158
+ def self.new(
159
+ # Model identifier. For open-source models, follows the
160
+ # `{organization}/{model_name}` convention from Hugging Face (e.g.
161
+ # `moonshotai/Kimi-K2.6`).
162
+ id:,
163
+ # Maximum total tokens (prompt + completion) supported by the model in a single
164
+ # request.
165
+ context_length:,
166
+ # Timestamp at which the model was registered on Telnyx Inference (ISO 8601).
167
+ created:,
168
+ # ISO language codes the model supports (e.g. `en`, `es`).
169
+ languages:,
170
+ # License the model is distributed under, e.g. `Apache 2.0`, `MIT`,
171
+ # `Llama 3 Community License`.
172
+ license:,
173
+ # Organization that originally published the model, matching the prefix of `id`
174
+ # for open-source models.
175
+ organization:,
176
+ # Owner of the model. `Telnyx` for Telnyx-hosted open-source models, the upstream
177
+ # provider name for proxied models, or the Telnyx organization id for fine-tuned
178
+ # models.
179
+ owned_by:,
180
+ # Total parameter count of the model.
181
+ parameters:,
182
+ # Billing tier the model belongs to. Used together with `pricing` to determine
183
+ # cost per 1M tokens.
184
+ tier:,
185
+ # Base model the fine-tuned model was trained from. Only set for fine-tuned
186
+ # models.
187
+ base_model: nil,
188
+ # Short, human-readable summary of what the model is best suited for.
189
+ description: nil,
190
+ # Whether the model can be used as a base for a fine-tuning job via
191
+ # `POST /v2/ai/fine_tuning/jobs`.
192
+ is_fine_tunable: nil,
193
+ # Whether the model accepts image inputs in chat completions (multimodal vision
194
+ # support).
195
+ is_vision_supported: nil,
196
+ # Maximum number of completion (output) tokens the model will generate per
197
+ # request. `null` if unconstrained beyond `context_length`.
198
+ max_completion_tokens: nil,
199
+ # Object type. Always `model`.
200
+ object: nil,
201
+ # Human-readable parameter count, e.g. `1.0T`, `753.9B`, `8B`.
202
+ parameters_str: nil,
203
+ # Mapping of token kind to price, as strings to preserve precision. Typical keys
204
+ # are `prompt`, `cached_prompt`, and `completion`. When pricing is available the
205
+ # block also includes `currency` (ISO 4217 code matching the account's configured
206
+ # billing currency) and `unit` (the denomination the prices are quoted in,
207
+ # currently always `1M_tokens` for token-priced models).
208
+ pricing: nil,
209
+ # Whether Telnyx currently recommends this model as the LLM powering a Telnyx AI
210
+ # Assistant.
211
+ recommended_for_assistants: nil,
212
+ # Public region names where the model is currently deployed (e.g. `us-central-1`,
213
+ # `eu-central-1`).
214
+ regions: nil,
215
+ # Primary task the model is intended for, e.g. `text-generation`,
216
+ # `audio-text-to-text`, `feature-extraction` (embeddings).
217
+ task: nil
218
+ )
219
+ end
220
+
221
+ sig do
222
+ override.returns(
223
+ {
224
+ id: String,
225
+ context_length: Integer,
226
+ created: Time,
227
+ languages: T::Array[String],
228
+ license: String,
229
+ organization: String,
230
+ owned_by: String,
231
+ parameters: Integer,
232
+ tier: Telnyx::ModelMetadata::Tier::TaggedSymbol,
233
+ base_model: T.nilable(String),
234
+ description: T.nilable(String),
235
+ is_fine_tunable: T::Boolean,
236
+ is_vision_supported: T::Boolean,
237
+ max_completion_tokens: T.nilable(Integer),
238
+ object: String,
239
+ parameters_str: T.nilable(String),
240
+ pricing: T::Hash[Symbol, String],
241
+ recommended_for_assistants: T::Boolean,
242
+ regions: T::Array[String],
243
+ task: String
244
+ }
245
+ )
246
+ end
247
+ def to_hash
248
+ end
249
+
250
+ # Billing tier the model belongs to. Used together with `pricing` to determine
251
+ # cost per 1M tokens.
252
+ module Tier
253
+ extend Telnyx::Internal::Type::Enum
254
+
255
+ TaggedSymbol =
256
+ T.type_alias { T.all(Symbol, Telnyx::ModelMetadata::Tier) }
257
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
258
+
259
+ SMALL = T.let(:small, Telnyx::ModelMetadata::Tier::TaggedSymbol)
260
+ MEDIUM = T.let(:medium, Telnyx::ModelMetadata::Tier::TaggedSymbol)
261
+ LARGE = T.let(:large, Telnyx::ModelMetadata::Tier::TaggedSymbol)
262
+ UNLISTED = T.let(:unlisted, Telnyx::ModelMetadata::Tier::TaggedSymbol)
263
+
264
+ sig do
265
+ override.returns(T::Array[Telnyx::ModelMetadata::Tier::TaggedSymbol])
266
+ end
267
+ def self.values
268
+ end
269
+ end
270
+ end
271
+ end
272
+ end
@@ -2,7 +2,7 @@
2
2
 
3
3
  module Telnyx
4
4
  module Models
5
- class NetworkListInterfacesResponse < Telnyx::Models::Record
5
+ class NetworkListInterfacesResponse < Telnyx::Internal::Type::BaseModel
6
6
  OrHash =
7
7
  T.type_alias do
8
8
  T.any(
@@ -11,13 +11,190 @@ module Telnyx
11
11
  )
12
12
  end
13
13
 
14
- sig { returns(T.attached_class) }
15
- def self.new
14
+ # A user specified name for the interface.
15
+ sig { returns(T.nilable(String)) }
16
+ attr_reader :name
17
+
18
+ sig { params(name: String).void }
19
+ attr_writer :name
20
+
21
+ # The id of the network associated with the interface.
22
+ sig { returns(T.nilable(String)) }
23
+ attr_reader :network_id
24
+
25
+ sig { params(network_id: String).void }
26
+ attr_writer :network_id
27
+
28
+ sig do
29
+ returns(
30
+ T.nilable(Telnyx::Models::NetworkListInterfacesResponse::Region)
31
+ )
32
+ end
33
+ attr_reader :region
34
+
35
+ sig do
36
+ params(
37
+ region: Telnyx::Models::NetworkListInterfacesResponse::Region::OrHash
38
+ ).void
16
39
  end
40
+ attr_writer :region
41
+
42
+ # The region interface is deployed to.
43
+ sig { returns(T.nilable(String)) }
44
+ attr_reader :region_code
45
+
46
+ sig { params(region_code: String).void }
47
+ attr_writer :region_code
48
+
49
+ # Identifies the resource.
50
+ sig { returns(T.nilable(String)) }
51
+ attr_reader :id
52
+
53
+ sig { params(id: String).void }
54
+ attr_writer :id
55
+
56
+ # ISO 8601 formatted date-time indicating when the resource was created.
57
+ sig { returns(T.nilable(String)) }
58
+ attr_reader :created_at
59
+
60
+ sig { params(created_at: String).void }
61
+ attr_writer :created_at
62
+
63
+ # Identifies the type of the resource.
64
+ sig { returns(T.nilable(String)) }
65
+ attr_reader :record_type
66
+
67
+ sig { params(record_type: String).void }
68
+ attr_writer :record_type
69
+
70
+ # The current status of the interface deployment.
71
+ sig { returns(T.nilable(Telnyx::InterfaceStatus::TaggedSymbol)) }
72
+ attr_reader :status
73
+
74
+ sig { params(status: Telnyx::InterfaceStatus::OrSymbol).void }
75
+ attr_writer :status
76
+
77
+ # Identifies the type of the interface.
78
+ sig { returns(T.nilable(String)) }
79
+ attr_reader :type
80
+
81
+ sig { params(type: String).void }
82
+ attr_writer :type
83
+
84
+ # ISO 8601 formatted date-time indicating when the resource was updated.
85
+ sig { returns(T.nilable(String)) }
86
+ attr_reader :updated_at
87
+
88
+ sig { params(updated_at: String).void }
89
+ attr_writer :updated_at
17
90
 
18
- sig { override.returns({}) }
91
+ sig do
92
+ params(
93
+ id: String,
94
+ created_at: String,
95
+ name: String,
96
+ network_id: String,
97
+ record_type: String,
98
+ region: Telnyx::Models::NetworkListInterfacesResponse::Region::OrHash,
99
+ region_code: String,
100
+ status: Telnyx::InterfaceStatus::OrSymbol,
101
+ type: String,
102
+ updated_at: String
103
+ ).returns(T.attached_class)
104
+ end
105
+ def self.new(
106
+ # Identifies the resource.
107
+ id: nil,
108
+ # ISO 8601 formatted date-time indicating when the resource was created.
109
+ created_at: nil,
110
+ # A user specified name for the interface.
111
+ name: nil,
112
+ # The id of the network associated with the interface.
113
+ network_id: nil,
114
+ # Identifies the type of the resource.
115
+ record_type: nil,
116
+ region: nil,
117
+ # The region interface is deployed to.
118
+ region_code: nil,
119
+ # The current status of the interface deployment.
120
+ status: nil,
121
+ # Identifies the type of the interface.
122
+ type: nil,
123
+ # ISO 8601 formatted date-time indicating when the resource was updated.
124
+ updated_at: nil
125
+ )
126
+ end
127
+
128
+ sig do
129
+ override.returns(
130
+ {
131
+ id: String,
132
+ created_at: String,
133
+ name: String,
134
+ network_id: String,
135
+ record_type: String,
136
+ region: Telnyx::Models::NetworkListInterfacesResponse::Region,
137
+ region_code: String,
138
+ status: Telnyx::InterfaceStatus::TaggedSymbol,
139
+ type: String,
140
+ updated_at: String
141
+ }
142
+ )
143
+ end
19
144
  def to_hash
20
145
  end
146
+
147
+ class Region < Telnyx::Internal::Type::BaseModel
148
+ OrHash =
149
+ T.type_alias do
150
+ T.any(
151
+ Telnyx::Models::NetworkListInterfacesResponse::Region,
152
+ Telnyx::Internal::AnyHash
153
+ )
154
+ end
155
+
156
+ # Region code of the interface.
157
+ sig { returns(T.nilable(String)) }
158
+ attr_reader :code
159
+
160
+ sig { params(code: String).void }
161
+ attr_writer :code
162
+
163
+ # Region name of the interface.
164
+ sig { returns(T.nilable(String)) }
165
+ attr_reader :name
166
+
167
+ sig { params(name: String).void }
168
+ attr_writer :name
169
+
170
+ # Identifies the type of the resource.
171
+ sig { returns(T.nilable(String)) }
172
+ attr_reader :record_type
173
+
174
+ sig { params(record_type: String).void }
175
+ attr_writer :record_type
176
+
177
+ sig do
178
+ params(code: String, name: String, record_type: String).returns(
179
+ T.attached_class
180
+ )
181
+ end
182
+ def self.new(
183
+ # Region code of the interface.
184
+ code: nil,
185
+ # Region name of the interface.
186
+ name: nil,
187
+ # Identifies the type of the resource.
188
+ record_type: nil
189
+ )
190
+ end
191
+
192
+ sig do
193
+ override.returns({ code: String, name: String, record_type: String })
194
+ end
195
+ def to_hash
196
+ end
197
+ end
21
198
  end
22
199
  end
23
200
  end