telnyx 5.166.0 → 5.168.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 (205) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +19 -0
  3. data/README.md +1 -1
  4. data/lib/telnyx/client.rb +4 -0
  5. data/lib/telnyx/internal/default_flat_pagination.rb +7 -3
  6. data/lib/telnyx/internal/default_flat_pagination_for_inexplicit_number_orders.rb +7 -3
  7. data/lib/telnyx/internal/default_flat_pagination_top_level_array.rb +10 -8
  8. data/lib/telnyx/internal/default_pagination_for_log_messages.rb +7 -3
  9. data/lib/telnyx/internal/default_pagination_for_messaging_tollfree.rb +12 -3
  10. data/lib/telnyx/internal/default_pagination_for_queues.rb +12 -3
  11. data/lib/telnyx/internal/per_page_pagination.rb +8 -1
  12. data/lib/telnyx/internal/per_page_pagination_v2.rb +8 -1
  13. data/lib/telnyx/internal/type/converter.rb +2 -0
  14. data/lib/telnyx/models/ai/anthropic/v1_messages_params.rb +57 -1
  15. data/lib/telnyx/models/ai/assistant_a2_a_agent.rb +195 -0
  16. data/lib/telnyx/models/ai/assistant_create_params.rb +16 -1
  17. data/lib/telnyx/models/ai/assistant_update_params.rb +17 -1
  18. data/lib/telnyx/models/ai/assistants/update_assistant.rb +17 -1
  19. data/lib/telnyx/models/ai/chat_completion_request.rb +185 -48
  20. data/lib/telnyx/models/ai/inference_embedding.rb +16 -1
  21. data/lib/telnyx/models/ai/openai_create_response_params.rb +57 -1
  22. data/lib/telnyx/models/ai/telephony_settings.rb +15 -1
  23. data/lib/telnyx/models/compute/func_retrieve_logs_params.rb +66 -0
  24. data/lib/telnyx/models/compute/func_retrieve_logs_response.rb +161 -0
  25. data/lib/telnyx/models/compute/func_retrieve_metric_aggregates_params.rb +69 -0
  26. data/lib/telnyx/models/compute/func_retrieve_metric_aggregates_response.rb +137 -0
  27. data/lib/telnyx/models/compute/func_retrieve_revisions_params.rb +34 -0
  28. data/lib/telnyx/models/compute/func_retrieve_revisions_response.rb +101 -0
  29. data/lib/telnyx/models/compute/func_retrieve_ship_inspection_params.rb +22 -0
  30. data/lib/telnyx/models/compute/func_retrieve_ship_inspection_response.rb +94 -0
  31. data/lib/telnyx/models/compute/functions_observability_pagination_meta.rb +35 -0
  32. data/lib/telnyx/models/compute/logs_meta.rb +23 -0
  33. data/lib/telnyx/models/credential_connection.rb +4 -1
  34. data/lib/telnyx/models/email_inboxes/email_message.rb +12 -1
  35. data/lib/telnyx/models/email_message_batch_params.rb +4 -1
  36. data/lib/telnyx/models/email_message_batch_response.rb +1 -0
  37. data/lib/telnyx/models/fqdn_connection.rb +5 -2
  38. data/lib/telnyx/models/fqdn_connections/fqdn_authentication.rb +9 -2
  39. data/lib/telnyx/models/messaging_inbound_message_payload.rb +210 -67
  40. data/lib/telnyx/models/messaging_messaging_profile.rb +284 -0
  41. data/lib/telnyx/models/messaging_profile.rb +0 -1
  42. data/lib/telnyx/models/messaging_profile_create_params.rb +11 -1
  43. data/lib/telnyx/models/messaging_profile_create_response.rb +3 -3
  44. data/lib/telnyx/models/messaging_profile_delete_response.rb +3 -3
  45. data/lib/telnyx/models/messaging_profile_features.rb +26 -0
  46. data/lib/telnyx/models/messaging_profile_retrieve_response.rb +3 -3
  47. data/lib/telnyx/models/messaging_profile_update_params.rb +32 -1
  48. data/lib/telnyx/models/messaging_profile_update_response.rb +3 -3
  49. data/lib/telnyx/models/messaging_profiles/action_regenerate_secret_response.rb +3 -3
  50. data/lib/telnyx/models/uac_connection.rb +4 -1
  51. data/lib/telnyx/models/uac_external_settings.rb +6 -2
  52. data/lib/telnyx/models/unsafe_unwrap_webhook_event.rb +5 -1
  53. data/lib/telnyx/models/unwrap_webhook_event.rb +5 -1
  54. data/lib/telnyx/models/whatsapp/business_accounts/phone_number_list_response.rb +104 -1
  55. data/lib/telnyx/models/whatsapp/phone_number_get_response.rb +103 -1
  56. data/lib/telnyx/models/whatsapp/phone_number_list_response.rb +103 -1
  57. data/lib/telnyx/models/whatsapp/phone_number_retrieve_phone_number_params.rb +22 -0
  58. data/lib/telnyx/models/whatsapp/phone_number_retrieve_phone_number_response.rb +207 -0
  59. data/lib/telnyx/models/whatsapp_account_update.rb +112 -0
  60. data/lib/telnyx/models/whatsapp_message_echo.rb +340 -0
  61. data/lib/telnyx/models/x402/credit_account/payment_list_params.rb +34 -0
  62. data/lib/telnyx/models/x402/credit_account/payment_retrieve_params.rb +24 -0
  63. data/lib/telnyx/models/x402/credit_account/payment_retrieve_response.rb +21 -0
  64. data/lib/telnyx/models/x402/credit_account/x402_transaction_record.rb +113 -0
  65. data/lib/telnyx/models.rb +10 -0
  66. data/lib/telnyx/resources/ai/anthropic/v1.rb +5 -1
  67. data/lib/telnyx/resources/ai/assistants/versions.rb +3 -1
  68. data/lib/telnyx/resources/ai/assistants.rb +6 -2
  69. data/lib/telnyx/resources/ai/openai/chat.rb +6 -8
  70. data/lib/telnyx/resources/ai/openai.rb +5 -1
  71. data/lib/telnyx/resources/compute/funcs.rb +141 -0
  72. data/lib/telnyx/resources/compute.rb +18 -0
  73. data/lib/telnyx/resources/email_messages.rb +4 -2
  74. data/lib/telnyx/resources/messaging_profiles.rb +12 -4
  75. data/lib/telnyx/resources/webhooks.rb +2 -2
  76. data/lib/telnyx/resources/whatsapp/phone_numbers.rb +22 -0
  77. data/lib/telnyx/resources/x402/credit_account/payments.rb +71 -0
  78. data/lib/telnyx/resources/x402/credit_account.rb +8 -2
  79. data/lib/telnyx/version.rb +1 -1
  80. data/lib/telnyx.rb +24 -0
  81. data/rbi/telnyx/client.rbi +3 -0
  82. data/rbi/telnyx/models/ai/anthropic/v1_messages_params.rbi +139 -0
  83. data/rbi/telnyx/models/ai/assistant_a2_a_agent.rbi +345 -0
  84. data/rbi/telnyx/models/ai/assistant_create_params.rbi +29 -0
  85. data/rbi/telnyx/models/ai/assistant_update_params.rbi +31 -0
  86. data/rbi/telnyx/models/ai/assistants/update_assistant.rbi +31 -0
  87. data/rbi/telnyx/models/ai/chat_completion_request.rbi +339 -91
  88. data/rbi/telnyx/models/ai/inference_embedding.rbi +29 -0
  89. data/rbi/telnyx/models/ai/openai_create_response_params.rbi +136 -0
  90. data/rbi/telnyx/models/ai/telephony_settings.rbi +23 -0
  91. data/rbi/telnyx/models/compute/func_retrieve_logs_params.rbi +130 -0
  92. data/rbi/telnyx/models/compute/func_retrieve_logs_response.rbi +410 -0
  93. data/rbi/telnyx/models/compute/func_retrieve_metric_aggregates_params.rbi +102 -0
  94. data/rbi/telnyx/models/compute/func_retrieve_metric_aggregates_response.rbi +231 -0
  95. data/rbi/telnyx/models/compute/func_retrieve_revisions_params.rbi +59 -0
  96. data/rbi/telnyx/models/compute/func_retrieve_revisions_response.rbi +213 -0
  97. data/rbi/telnyx/models/compute/func_retrieve_ship_inspection_params.rbi +40 -0
  98. data/rbi/telnyx/models/compute/func_retrieve_ship_inspection_response.rbi +252 -0
  99. data/rbi/telnyx/models/compute/functions_observability_pagination_meta.rbi +70 -0
  100. data/rbi/telnyx/models/compute/logs_meta.rbi +38 -0
  101. data/rbi/telnyx/models/credential_connection.rbi +8 -2
  102. data/rbi/telnyx/models/email_inboxes/email_message.rbi +22 -3
  103. data/rbi/telnyx/models/email_message_batch_params.rbi +6 -0
  104. data/rbi/telnyx/models/email_message_batch_response.rbi +5 -0
  105. data/rbi/telnyx/models/fqdn_connection.rbi +8 -2
  106. data/rbi/telnyx/models/fqdn_connections/fqdn_authentication.rbi +8 -2
  107. data/rbi/telnyx/models/messaging_inbound_message_payload.rbi +450 -193
  108. data/rbi/telnyx/models/messaging_messaging_profile.rbi +463 -0
  109. data/rbi/telnyx/models/messaging_profile.rbi +4 -6
  110. data/rbi/telnyx/models/messaging_profile_create_params.rbi +19 -0
  111. data/rbi/telnyx/models/messaging_profile_create_response.rbi +6 -4
  112. data/rbi/telnyx/models/messaging_profile_delete_response.rbi +6 -4
  113. data/rbi/telnyx/models/messaging_profile_features.rbi +43 -0
  114. data/rbi/telnyx/models/messaging_profile_retrieve_response.rbi +6 -4
  115. data/rbi/telnyx/models/messaging_profile_update_params.rbi +51 -0
  116. data/rbi/telnyx/models/messaging_profile_update_response.rbi +6 -4
  117. data/rbi/telnyx/models/messaging_profiles/action_regenerate_secret_response.rbi +4 -4
  118. data/rbi/telnyx/models/uac_connection.rbi +8 -2
  119. data/rbi/telnyx/models/uac_external_settings.rbi +10 -2
  120. data/rbi/telnyx/models/unsafe_unwrap_webhook_event.rbi +3 -1
  121. data/rbi/telnyx/models/unwrap_webhook_event.rbi +3 -1
  122. data/rbi/telnyx/models/whatsapp/business_accounts/phone_number_list_response.rbi +213 -0
  123. data/rbi/telnyx/models/whatsapp/phone_number_get_response.rbi +213 -0
  124. data/rbi/telnyx/models/whatsapp/phone_number_list_response.rbi +213 -0
  125. data/rbi/telnyx/models/whatsapp/phone_number_retrieve_phone_number_params.rbi +40 -0
  126. data/rbi/telnyx/models/whatsapp/phone_number_retrieve_phone_number_response.rbi +401 -0
  127. data/rbi/telnyx/models/whatsapp_account_update.rbi +236 -0
  128. data/rbi/telnyx/models/whatsapp_message_echo.rbi +611 -0
  129. data/rbi/telnyx/models/x402/credit_account/payment_list_params.rbi +64 -0
  130. data/rbi/telnyx/models/x402/credit_account/payment_retrieve_params.rbi +42 -0
  131. data/rbi/telnyx/models/x402/credit_account/payment_retrieve_response.rbi +53 -0
  132. data/rbi/telnyx/models/x402/credit_account/x402_transaction_record.rbi +219 -0
  133. data/rbi/telnyx/models.rbi +10 -0
  134. data/rbi/telnyx/resources/ai/anthropic/v1.rbi +14 -0
  135. data/rbi/telnyx/resources/ai/assistants/versions.rbi +12 -0
  136. data/rbi/telnyx/resources/ai/assistants.rbi +21 -0
  137. data/rbi/telnyx/resources/ai/openai/chat.rbi +23 -13
  138. data/rbi/telnyx/resources/ai/openai.rbi +14 -0
  139. data/rbi/telnyx/resources/compute/funcs.rbi +111 -0
  140. data/rbi/telnyx/resources/compute.rbi +15 -0
  141. data/rbi/telnyx/resources/email_messages.rbi +6 -2
  142. data/rbi/telnyx/resources/messaging_profiles.rbi +24 -1
  143. data/rbi/telnyx/resources/webhooks.rbi +6 -2
  144. data/rbi/telnyx/resources/whatsapp/phone_numbers.rbi +18 -0
  145. data/rbi/telnyx/resources/x402/credit_account/payments.rbi +60 -0
  146. data/rbi/telnyx/resources/x402/credit_account.rbi +5 -0
  147. data/sig/telnyx/client.rbs +2 -0
  148. data/sig/telnyx/models/ai/anthropic/v1_messages_params.rbs +42 -0
  149. data/sig/telnyx/models/ai/assistant_a2_a_agent.rbs +140 -0
  150. data/sig/telnyx/models/ai/assistant_create_params.rbs +9 -0
  151. data/sig/telnyx/models/ai/assistant_update_params.rbs +9 -0
  152. data/sig/telnyx/models/ai/assistants/update_assistant.rbs +9 -0
  153. data/sig/telnyx/models/ai/chat_completion_request.rbs +128 -44
  154. data/sig/telnyx/models/ai/inference_embedding.rbs +9 -0
  155. data/sig/telnyx/models/ai/openai_create_response_params.rbs +42 -0
  156. data/sig/telnyx/models/ai/telephony_settings.rbs +7 -0
  157. data/sig/telnyx/models/compute/func_retrieve_logs_params.rbs +69 -0
  158. data/sig/telnyx/models/compute/func_retrieve_logs_response.rbs +210 -0
  159. data/sig/telnyx/models/compute/func_retrieve_metric_aggregates_params.rbs +66 -0
  160. data/sig/telnyx/models/compute/func_retrieve_metric_aggregates_response.rbs +149 -0
  161. data/sig/telnyx/models/compute/func_retrieve_revisions_params.rbs +38 -0
  162. data/sig/telnyx/models/compute/func_retrieve_revisions_response.rbs +131 -0
  163. data/sig/telnyx/models/compute/func_retrieve_ship_inspection_params.rbs +22 -0
  164. data/sig/telnyx/models/compute/func_retrieve_ship_inspection_response.rbs +117 -0
  165. data/sig/telnyx/models/compute/functions_observability_pagination_meta.rbs +45 -0
  166. data/sig/telnyx/models/compute/logs_meta.rbs +21 -0
  167. data/sig/telnyx/models/email_inboxes/email_message.rbs +12 -3
  168. data/sig/telnyx/models/email_message_batch_response.rbs +2 -0
  169. data/sig/telnyx/models/messaging_inbound_message_payload.rbs +207 -95
  170. data/sig/telnyx/models/messaging_messaging_profile.rbs +212 -0
  171. data/sig/telnyx/models/messaging_profile_create_params.rbs +5 -0
  172. data/sig/telnyx/models/messaging_profile_create_response.rbs +8 -5
  173. data/sig/telnyx/models/messaging_profile_delete_response.rbs +8 -5
  174. data/sig/telnyx/models/messaging_profile_features.rbs +15 -0
  175. data/sig/telnyx/models/messaging_profile_retrieve_response.rbs +7 -5
  176. data/sig/telnyx/models/messaging_profile_update_params.rbs +19 -0
  177. data/sig/telnyx/models/messaging_profile_update_response.rbs +8 -5
  178. data/sig/telnyx/models/messaging_profiles/action_regenerate_secret_response.rbs +7 -5
  179. data/sig/telnyx/models/unsafe_unwrap_webhook_event.rbs +2 -0
  180. data/sig/telnyx/models/unwrap_webhook_event.rbs +2 -0
  181. data/sig/telnyx/models/whatsapp/business_accounts/phone_number_list_response.rbs +90 -0
  182. data/sig/telnyx/models/whatsapp/phone_number_get_response.rbs +90 -0
  183. data/sig/telnyx/models/whatsapp/phone_number_list_response.rbs +90 -0
  184. data/sig/telnyx/models/whatsapp/phone_number_retrieve_phone_number_params.rbs +25 -0
  185. data/sig/telnyx/models/whatsapp/phone_number_retrieve_phone_number_response.rbs +201 -0
  186. data/sig/telnyx/models/whatsapp_account_update.rbs +107 -0
  187. data/sig/telnyx/models/whatsapp_message_echo.rbs +291 -0
  188. data/sig/telnyx/models/x402/credit_account/payment_list_params.rbs +36 -0
  189. data/sig/telnyx/models/x402/credit_account/payment_retrieve_params.rbs +27 -0
  190. data/sig/telnyx/models/x402/credit_account/payment_retrieve_response.rbs +26 -0
  191. data/sig/telnyx/models/x402/credit_account/x402_transaction_record.rbs +104 -0
  192. data/sig/telnyx/models.rbs +10 -0
  193. data/sig/telnyx/resources/ai/anthropic/v1.rbs +2 -0
  194. data/sig/telnyx/resources/ai/assistants/versions.rbs +1 -0
  195. data/sig/telnyx/resources/ai/assistants.rbs +2 -0
  196. data/sig/telnyx/resources/ai/openai/chat.rbs +3 -4
  197. data/sig/telnyx/resources/ai/openai.rbs +2 -0
  198. data/sig/telnyx/resources/compute/funcs.rbs +41 -0
  199. data/sig/telnyx/resources/compute.rbs +9 -0
  200. data/sig/telnyx/resources/messaging_profiles.rbs +5 -1
  201. data/sig/telnyx/resources/webhooks.rbs +6 -2
  202. data/sig/telnyx/resources/whatsapp/phone_numbers.rbs +5 -0
  203. data/sig/telnyx/resources/x402/credit_account/payments.rbs +22 -0
  204. data/sig/telnyx/resources/x402/credit_account.rbs +2 -0
  205. metadata +74 -2
@@ -20,7 +20,7 @@ module Telnyx
20
20
  # `content_block_start`, `content_block_delta`, `content_block_stop`,
21
21
  # `message_delta`, `message_stop`).
22
22
  #
23
- # @overload messages(max_tokens:, messages:, model:, api_key_ref: nil, billing_group_id: nil, fallback_config: nil, max_retries: nil, mcp_servers: nil, metadata: nil, service_tier: nil, stop_sequences: nil, stream: nil, system_: nil, temperature: nil, thinking: nil, timeout: nil, tool_choice: nil, tools: nil, top_k: nil, top_p: nil, request_options: {})
23
+ # @overload messages(max_tokens:, messages:, model:, api_key_ref: nil, billing_group_id: nil, fallback_config: nil, max_retries: nil, mcp_servers: nil, metadata: nil, mode: nil, region: nil, service_tier: nil, stop_sequences: nil, stream: nil, system_: nil, temperature: nil, thinking: nil, timeout: nil, tool_choice: nil, tools: nil, top_k: nil, top_p: nil, request_options: {})
24
24
  #
25
25
  # @param max_tokens [Integer] The maximum number of tokens to generate in the response.
26
26
  #
@@ -40,6 +40,10 @@ module Telnyx
40
40
  #
41
41
  # @param metadata [Hash{Symbol=>Object}] An object describing metadata about the request.
42
42
  #
43
+ # @param mode [Symbol, Telnyx::Models::AI::Anthropic::V1MessagesParams::Mode] How strictly `region` is applied. `preferred` (the default when `region` is set)
44
+ #
45
+ # @param region [Symbol, Telnyx::Models::AI::Anthropic::V1MessagesParams::Region] Optional data-residency region the request should be served from, using the same
46
+ #
43
47
  # @param service_tier [String] The service tier to use for this request. Supported values vary by model; use th
44
48
  #
45
49
  # @param stop_sequences [Array<String>] Custom sequences that will cause the model to stop generating.
@@ -43,12 +43,14 @@ module Telnyx
43
43
  # Updates the configuration of a specific assistant version. Can not update main
44
44
  # version
45
45
  #
46
- # @overload update(version_id, assistant_id:, conversation_flow: nil, description: nil, dynamic_variables: nil, dynamic_variables_webhook_timeout_ms: nil, dynamic_variables_webhook_url: nil, enabled_features: nil, external_llm: nil, fallback_config: nil, greeting: nil, insight_settings: nil, instructions: nil, integrations: nil, interruption_settings: nil, llm_api_key_ref: nil, mcp_servers: nil, messaging_settings: nil, model: nil, name: nil, observability_settings: nil, post_conversation_settings: nil, privacy_settings: nil, tags: nil, telephony_settings: nil, tool_ids: nil, tools: nil, transcription: nil, version_name: nil, voice_settings: nil, widget_settings: nil, request_options: {})
46
+ # @overload update(version_id, assistant_id:, a2a_agents: nil, conversation_flow: nil, description: nil, dynamic_variables: nil, dynamic_variables_webhook_timeout_ms: nil, dynamic_variables_webhook_url: nil, enabled_features: nil, external_llm: nil, fallback_config: nil, greeting: nil, insight_settings: nil, instructions: nil, integrations: nil, interruption_settings: nil, llm_api_key_ref: nil, mcp_servers: nil, messaging_settings: nil, model: nil, name: nil, observability_settings: nil, post_conversation_settings: nil, privacy_settings: nil, tags: nil, telephony_settings: nil, tool_ids: nil, tools: nil, transcription: nil, version_name: nil, voice_settings: nil, widget_settings: nil, request_options: {})
47
47
  #
48
48
  # @param version_id [String] Path param: Unique identifier of the version.
49
49
  #
50
50
  # @param assistant_id [String] Path param: Unique identifier of the assistant.
51
51
  #
52
+ # @param a2a_agents [Array<Telnyx::Models::AI::AssistantA2AAgent>] Body param: A2A agents this assistant can delegate to. Tools are not stored here
53
+ #
52
54
  # @param conversation_flow [Telnyx::Models::AI::ConversationFlowReq] Body param: Conversation flow as supplied by API clients (create / update).
53
55
  #
54
56
  # @param description [String] Body param
@@ -39,12 +39,14 @@ module Telnyx
39
39
  # Creates a new AI assistant from the provided configuration, including its model,
40
40
  # instructions, and attached tools, and returns the created assistant.
41
41
  #
42
- # @overload create(instructions:, name:, conversation_flow: nil, description: nil, dynamic_variables: nil, dynamic_variables_webhook_timeout_ms: nil, dynamic_variables_webhook_url: nil, enabled_features: nil, external_llm: nil, fallback_config: nil, greeting: nil, insight_settings: nil, integrations: nil, interruption_settings: nil, llm_api_key_ref: nil, mcp_servers: nil, messaging_settings: nil, model: nil, observability_settings: nil, post_conversation_settings: nil, privacy_settings: nil, tags: nil, telephony_settings: nil, tool_ids: nil, tools: nil, transcription: nil, voice_settings: nil, widget_settings: nil, idempotency_key: nil, request_options: {})
42
+ # @overload create(instructions:, name:, a2a_agents: nil, conversation_flow: nil, description: nil, dynamic_variables: nil, dynamic_variables_webhook_timeout_ms: nil, dynamic_variables_webhook_url: nil, enabled_features: nil, external_llm: nil, fallback_config: nil, greeting: nil, insight_settings: nil, integrations: nil, interruption_settings: nil, llm_api_key_ref: nil, mcp_servers: nil, messaging_settings: nil, model: nil, observability_settings: nil, post_conversation_settings: nil, privacy_settings: nil, tags: nil, telephony_settings: nil, tool_ids: nil, tools: nil, transcription: nil, voice_settings: nil, widget_settings: nil, idempotency_key: nil, request_options: {})
43
43
  #
44
44
  # @param instructions [String] Body param: System instructions for the assistant. These may be templated with [
45
45
  #
46
46
  # @param name [String] Body param
47
47
  #
48
+ # @param a2a_agents [Array<Telnyx::Models::AI::AssistantA2AAgent>] Body param: A2A agents this assistant can delegate to. Tools are not stored here
49
+ #
48
50
  # @param conversation_flow [Telnyx::Models::AI::ConversationFlowReq] Body param: Conversation flow as supplied by API clients (create / update).
49
51
  #
50
52
  # @param description [String] Body param
@@ -155,10 +157,12 @@ module Telnyx
155
157
  # assistant. The request can also control how the change is promoted across
156
158
  # assistant versions.
157
159
  #
158
- # @overload update(assistant_id, conversation_flow: nil, description: nil, dynamic_variables: nil, dynamic_variables_webhook_timeout_ms: nil, dynamic_variables_webhook_url: nil, enabled_features: nil, external_llm: nil, fallback_config: nil, greeting: nil, insight_settings: nil, instructions: nil, integrations: nil, interruption_settings: nil, llm_api_key_ref: nil, mcp_servers: nil, messaging_settings: nil, model: nil, name: nil, observability_settings: nil, post_conversation_settings: nil, privacy_settings: nil, promote_to_main: nil, tags: nil, telephony_settings: nil, tool_ids: nil, tools: nil, transcription: nil, version_name: nil, voice_settings: nil, widget_settings: nil, request_options: {})
160
+ # @overload update(assistant_id, a2a_agents: nil, conversation_flow: nil, description: nil, dynamic_variables: nil, dynamic_variables_webhook_timeout_ms: nil, dynamic_variables_webhook_url: nil, enabled_features: nil, external_llm: nil, fallback_config: nil, greeting: nil, insight_settings: nil, instructions: nil, integrations: nil, interruption_settings: nil, llm_api_key_ref: nil, mcp_servers: nil, messaging_settings: nil, model: nil, name: nil, observability_settings: nil, post_conversation_settings: nil, privacy_settings: nil, promote_to_main: nil, tags: nil, telephony_settings: nil, tool_ids: nil, tools: nil, transcription: nil, version_name: nil, voice_settings: nil, widget_settings: nil, request_options: {})
159
161
  #
160
162
  # @param assistant_id [String] Unique identifier of the assistant.
161
163
  #
164
+ # @param a2a_agents [Array<Telnyx::Models::AI::AssistantA2AAgent>] A2A agents this assistant can delegate to. Tools are not stored here: at the sta
165
+ #
162
166
  # @param conversation_flow [Telnyx::Models::AI::ConversationFlowReq] Conversation flow as supplied by API clients (create / update).
163
167
  #
164
168
  # @param description [String]
@@ -13,7 +13,7 @@ module Telnyx
13
13
  # and may be used with the OpenAI JS or Python SDK by setting the base URL to
14
14
  # `https://api.telnyx.com/v2/ai/openai`.
15
15
  #
16
- # @overload create_completion(messages:, api_key_ref: nil, best_of: nil, early_stopping: nil, enable_thinking: nil, frequency_penalty: nil, guided_choice: nil, guided_json: nil, guided_regex: nil, length_penalty: nil, logprobs: nil, max_tokens: nil, min_p: nil, model: nil, n: nil, presence_penalty: nil, reasoning_effort: nil, response_format: nil, seed: nil, service_tier: nil, stop: nil, stream: nil, temperature: nil, tool_choice: nil, tools: nil, top_logprobs: nil, top_p: nil, use_beam_search: nil, request_options: {})
16
+ # @overload create_completion(messages:, api_key_ref: nil, best_of: nil, early_stopping: nil, enable_thinking: nil, frequency_penalty: nil, length_penalty: nil, logprobs: nil, max_tokens: nil, min_p: nil, mode: nil, model: nil, n: nil, presence_penalty: nil, reasoning_effort: nil, region: nil, response_format: nil, seed: nil, service_tier: nil, stop: nil, stream: nil, temperature: nil, tool_choice: nil, tools: nil, top_logprobs: nil, top_p: nil, use_beam_search: nil, request_options: {})
17
17
  #
18
18
  # @param messages [Array<Telnyx::Models::AI::ChatCompletionRequest::Message>] A list of the previous chat messages for context.
19
19
  #
@@ -27,12 +27,6 @@ module Telnyx
27
27
  #
28
28
  # @param frequency_penalty [Float] Higher values will penalize the model from repeating the same output tokens.
29
29
  #
30
- # @param guided_choice [Array<String>] If specified, the output will be exactly one of the choices.
31
- #
32
- # @param guided_json [Hash{Symbol=>Object}] Must be a valid JSON schema. If specified, the output will follow the JSON schem
33
- #
34
- # @param guided_regex [String] If specified, the output will follow the regex pattern.
35
- #
36
30
  # @param length_penalty [Float] This is used with `use_beam_search` to prefer shorter or longer completions.
37
31
  #
38
32
  # @param logprobs [Boolean] Whether to return log probabilities of the output tokens or not. If true, return
@@ -41,6 +35,8 @@ module Telnyx
41
35
  #
42
36
  # @param min_p [Float] This is an alternative to `top_p` that [many prefer](https://github.com/huggingf
43
37
  #
38
+ # @param mode [Symbol, Telnyx::Models::AI::ChatCompletionRequest::Mode] How strictly `region` is applied. `preferred` (the default when `region` is set)
39
+ #
44
40
  # @param model [String] The language model to chat with.
45
41
  #
46
42
  # @param n [Float] This will return multiple choices for you instead of a single chat completion.
@@ -49,7 +45,9 @@ module Telnyx
49
45
  #
50
46
  # @param reasoning_effort [Symbol, Telnyx::Models::AI::ChatCompletionRequest::ReasoningEffort] Controls the reasoning effort for models that support it. When set, the model sp
51
47
  #
52
- # @param response_format [Telnyx::Models::AI::ChatCompletionRequest::ResponseFormat] Use this is you want to guarantee a JSON output without defining a schema. For c
48
+ # @param region [Symbol, Telnyx::Models::AI::ChatCompletionRequest::Region] Optional data-residency region the request should be served from, using the same
49
+ #
50
+ # @param response_format [Telnyx::Models::AI::ChatCompletionRequest::ResponseFormat::ResponseFormatText, Telnyx::Models::AI::ChatCompletionRequest::ResponseFormat::ResponseFormatJsonObject, Telnyx::Models::AI::ChatCompletionRequest::ResponseFormat::ResponseFormatJsonSchemaParam] Controls the format of the model output. `json_object` guarantees valid JSON out
53
51
  #
54
52
  # @param seed [Integer] If specified, the system will make a best effort to sample deterministically, su
55
53
  #
@@ -43,7 +43,7 @@ module Telnyx
43
43
  # tag the conversation's source, channel, or user) and later filter by it when
44
44
  # listing conversations.
45
45
  #
46
- # @overload create_response(conversation: nil, input: nil, instructions: nil, model: nil, reasoning: nil, service_tier: nil, stream: nil, request_options: {})
46
+ # @overload create_response(conversation: nil, input: nil, instructions: nil, mode: nil, model: nil, reasoning: nil, region: nil, service_tier: nil, stream: nil, request_options: {})
47
47
  #
48
48
  # @param conversation [String] Optional Telnyx Conversation ID from `POST /ai/conversations`. When provided, Te
49
49
  #
@@ -51,10 +51,14 @@ module Telnyx
51
51
  #
52
52
  # @param instructions [String] Optional system/developer instructions for the model. When used with a persisted
53
53
  #
54
+ # @param mode [Symbol, Telnyx::Models::AI::OpenAICreateResponseParams::Mode] How strictly `region` is applied. `preferred` (the default when `region` is set)
55
+ #
54
56
  # @param model [String] Model identifier to use for the response, for example `zai-org/GLM-5.1-FP8` or a
55
57
  #
56
58
  # @param reasoning [Telnyx::Models::AI::OpenAICreateResponseParams::Reasoning]
57
59
  #
60
+ # @param region [Symbol, Telnyx::Models::AI::OpenAICreateResponseParams::Region] Optional data-residency region the request should be served from, using the same
61
+ #
58
62
  # @param service_tier [String] The service tier to use for this request. Supported values vary by model; use `G
59
63
  #
60
64
  # @param stream [Boolean] Set to `true` to stream Server-Sent Events, matching OpenAI's Responses streamin
@@ -0,0 +1,141 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Telnyx
4
+ module Resources
5
+ class Compute
6
+ class Funcs
7
+ # Returns logs oldest first. `type=runtime` (default) returns function
8
+ # stdout/stderr. `type=invocations` returns one platform-generated record per HTTP
9
+ # request served.
10
+ #
11
+ # @overload retrieve_logs(id, end_time: nil, limit: nil, start_time: nil, type: nil, request_options: {})
12
+ #
13
+ # @param id [String] Function ID
14
+ #
15
+ # @param end_time [Time] Return records at or before this RFC 3339 timestamp.
16
+ #
17
+ # @param limit [Integer] Maximum records to return.
18
+ #
19
+ # @param start_time [Time] Return records at or after this RFC 3339 timestamp.
20
+ #
21
+ # @param type [Symbol, Telnyx::Models::Compute::FuncRetrieveLogsParams::Type] Log stream to return.
22
+ #
23
+ # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
24
+ #
25
+ # @return [Telnyx::Models::Compute::FuncRetrieveLogsResponse::FuncRuntimeLogsResponse, Telnyx::Models::Compute::FuncRetrieveLogsResponse::FuncInvocationLogsResponse]
26
+ #
27
+ # @see Telnyx::Models::Compute::FuncRetrieveLogsParams
28
+ def retrieve_logs(id, params = {})
29
+ parsed, options = Telnyx::Compute::FuncRetrieveLogsParams.dump_request(params)
30
+ query = Telnyx::Internal::Util.encode_query_params(parsed)
31
+ @client.request(
32
+ method: :get,
33
+ path: ["compute/funcs/%1$s/logs", id],
34
+ query: query,
35
+ model: Telnyx::Models::Compute::FuncRetrieveLogsResponse,
36
+ options: options
37
+ )
38
+ end
39
+
40
+ # Returns aggregate request, latency, CPU, memory, and resource-limit metrics for
41
+ # a function over the requested window.
42
+ #
43
+ # @overload retrieve_metric_aggregates(id, end_time:, start_time:, filter_edge_site: nil, filter_namespace: nil, page_number: nil, page_size: nil, request_options: {})
44
+ #
45
+ # @param id [String] Function ID
46
+ #
47
+ # @param end_time [Time] Exclusive window end, UTC ISO 8601 with milliseconds
48
+ #
49
+ # @param start_time [Time] Inclusive window start, UTC ISO 8601 with milliseconds
50
+ #
51
+ # @param filter_edge_site [String] Edge site filter
52
+ #
53
+ # @param filter_namespace [String] Kubernetes namespace filter
54
+ #
55
+ # @param page_number [Integer]
56
+ #
57
+ # @param page_size [Integer]
58
+ #
59
+ # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
60
+ #
61
+ # @return [Telnyx::Models::Compute::FuncRetrieveMetricAggregatesResponse]
62
+ #
63
+ # @see Telnyx::Models::Compute::FuncRetrieveMetricAggregatesParams
64
+ def retrieve_metric_aggregates(id, params)
65
+ parsed, options = Telnyx::Compute::FuncRetrieveMetricAggregatesParams.dump_request(params)
66
+ query = Telnyx::Internal::Util.encode_query_params(parsed)
67
+ @client.request(
68
+ method: :get,
69
+ path: ["compute/funcs/%1$s/metric_aggregates", id],
70
+ query: query.transform_keys(
71
+ filter_edge_site: "filter[edge_site]",
72
+ filter_namespace: "filter[namespace]",
73
+ page_number: "page[number]",
74
+ page_size: "page[size]"
75
+ ),
76
+ model: Telnyx::Models::Compute::FuncRetrieveMetricAggregatesResponse,
77
+ options: options
78
+ )
79
+ end
80
+
81
+ # Lists a function's ship history newest first, including per-ship failure stage
82
+ # and reason when recorded.
83
+ #
84
+ # @overload retrieve_revisions(id, page_number: nil, page_size: nil, request_options: {})
85
+ #
86
+ # @param id [String] Function ID
87
+ #
88
+ # @param page_number [Integer]
89
+ #
90
+ # @param page_size [Integer]
91
+ #
92
+ # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
93
+ #
94
+ # @return [Telnyx::Models::Compute::FuncRetrieveRevisionsResponse]
95
+ #
96
+ # @see Telnyx::Models::Compute::FuncRetrieveRevisionsParams
97
+ def retrieve_revisions(id, params = {})
98
+ parsed, options = Telnyx::Compute::FuncRetrieveRevisionsParams.dump_request(params)
99
+ query = Telnyx::Internal::Util.encode_query_params(parsed)
100
+ @client.request(
101
+ method: :get,
102
+ path: ["compute/funcs/%1$s/revisions", id],
103
+ query: query.transform_keys(page_number: "page[number]", page_size: "page[size]"),
104
+ model: Telnyx::Models::Compute::FuncRetrieveRevisionsResponse,
105
+ options: options
106
+ )
107
+ end
108
+
109
+ # Returns the latest ship outcome. The stage is `none` on success, `pending` while
110
+ # building, or a failure stage such as `build`, `platform`, `pre_build`, `deploy`,
111
+ # or `security_review`. This stage-neutral customer-facing path is an alias over
112
+ # the same inspection resource as `build_log_inspection`.
113
+ #
114
+ # @overload retrieve_ship_inspection(id, request_options: {})
115
+ #
116
+ # @param id [String] Function ID
117
+ #
118
+ # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
119
+ #
120
+ # @return [Telnyx::Models::Compute::FuncRetrieveShipInspectionResponse]
121
+ #
122
+ # @see Telnyx::Models::Compute::FuncRetrieveShipInspectionParams
123
+ def retrieve_ship_inspection(id, params = {})
124
+ @client.request(
125
+ method: :get,
126
+ path: ["compute/funcs/%1$s/ship_inspection", id],
127
+ model: Telnyx::Models::Compute::FuncRetrieveShipInspectionResponse,
128
+ options: params[:request_options]
129
+ )
130
+ end
131
+
132
+ # @api private
133
+ #
134
+ # @param client [Telnyx::Client]
135
+ def initialize(client:)
136
+ @client = client
137
+ end
138
+ end
139
+ end
140
+ end
141
+ end
@@ -0,0 +1,18 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Telnyx
4
+ module Resources
5
+ class Compute
6
+ # @return [Telnyx::Resources::Compute::Funcs]
7
+ attr_reader :funcs
8
+
9
+ # @api private
10
+ #
11
+ # @param client [Telnyx::Client]
12
+ def initialize(client:)
13
+ @client = client
14
+ @funcs = Telnyx::Resources::Compute::Funcs.new(client: client)
15
+ end
16
+ end
17
+ end
18
+ end
@@ -172,11 +172,13 @@ module Telnyx
172
172
  # Some parameter documentations has been truncated, see
173
173
  # {Telnyx::Models::EmailMessageBatchParams} for more details.
174
174
  #
175
- # Creates up to 50 email messages in a single request.
175
+ # Creates up to 1,000 email messages in a single request. Each message is
176
+ # validated and sent independently; per-message failures do not affect other
177
+ # messages in the batch. All responses use 207 Multi-Status.
176
178
  #
177
179
  # @overload batch(messages:, sandbox_mode: nil, idempotency_key: nil, request_options: {})
178
180
  #
179
- # @param messages [Array<Telnyx::Models::EmailMessageBatchParams::Message>] Body param
181
+ # @param messages [Array<Telnyx::Models::EmailMessageBatchParams::Message>] Body param: Array of email messages to send. Up to 1,000 messages per batch requ
180
182
  #
181
183
  # @param sandbox_mode [Boolean] Body param: Applies sandbox mode to all messages in the batch. Overrides any per
182
184
  #
@@ -16,7 +16,7 @@ module Telnyx
16
16
  # Creates a messaging profile that controls outbound sender selection, webhook
17
17
  # delivery, and inbound message handling for associated numbers and short codes.
18
18
  #
19
- # @overload create(name:, whitelisted_destinations:, ai_assistant_id: nil, alpha_sender: nil, daily_spend_limit: nil, daily_spend_limit_enabled: nil, enabled: nil, health_webhook_url: nil, mms_fall_back_to_sms: nil, mms_transcoding: nil, mobile_only: nil, number_pool_settings: nil, resource_group_id: nil, smart_encoding: nil, url_shortener_settings: nil, webhook_api_version: nil, webhook_failover_url: nil, webhook_url: nil, request_options: {})
19
+ # @overload create(name:, whitelisted_destinations:, ai_assistant_id: nil, alpha_sender: nil, daily_spend_limit: nil, daily_spend_limit_enabled: nil, enabled: nil, features: nil, health_webhook_url: nil, mms_fall_back_to_sms: nil, mms_transcoding: nil, mobile_only: nil, number_pool_settings: nil, resource_group_id: nil, smart_encoding: nil, url_shortener_settings: nil, webhook_api_version: nil, webhook_failover_url: nil, webhook_url: nil, request_options: {})
20
20
  #
21
21
  # @param name [String] A user friendly name for the messaging profile.
22
22
  #
@@ -32,6 +32,8 @@ module Telnyx
32
32
  #
33
33
  # @param enabled [Boolean] Specifies whether the messaging profile is enabled or not.
34
34
  #
35
+ # @param features [Telnyx::Models::MessagingProfileFeatures, nil] Telnyx product features the messaging customer can enable on the messaging profi
36
+ #
35
37
  # @param health_webhook_url [String, nil] A URL to receive health check webhooks for numbers in this profile.
36
38
  #
37
39
  # @param mms_fall_back_to_sms [Boolean] enables SMS fallback for MMS messages.
@@ -97,7 +99,7 @@ module Telnyx
97
99
  # Updates the supplied settings on the specified messaging profile. Settings
98
100
  # omitted from the request remain unchanged.
99
101
  #
100
- # @overload update(messaging_profile_id, ai_assistant_id: nil, alpha_sender: nil, daily_spend_limit: nil, daily_spend_limit_enabled: nil, enabled: nil, mms_fall_back_to_sms: nil, mms_transcoding: nil, mobile_only: nil, name: nil, number_pool_settings: nil, smart_encoding: nil, url_shortener_settings: nil, v1_secret: nil, webhook_api_version: nil, webhook_failover_url: nil, webhook_url: nil, whitelisted_destinations: nil, request_options: {})
102
+ # @overload update(messaging_profile_id, ai_assistant_id: nil, alpha_sender: nil, daily_spend_limit: nil, daily_spend_limit_enabled: nil, enabled: nil, features: nil, mms_fall_back_to_sms: nil, mms_transcoding: nil, mobile_only: nil, name: nil, number_pool_settings: nil, redaction_enabled: nil, redaction_level: nil, smart_encoding: nil, url_shortener_settings: nil, v1_secret: nil, webhook_api_version: nil, webhook_failover_url: nil, webhook_url: nil, whitelisted_destinations: nil, request_options: {})
101
103
  #
102
104
  # @param messaging_profile_id [String] The id of the messaging profile to retrieve
103
105
  #
@@ -111,6 +113,8 @@ module Telnyx
111
113
  #
112
114
  # @param enabled [Boolean] Specifies whether the messaging profile is enabled or not.
113
115
  #
116
+ # @param features [Telnyx::Models::MessagingProfileFeatures, nil] Telnyx product features the messaging customer can enable on the messaging profi
117
+ #
114
118
  # @param mms_fall_back_to_sms [Boolean] enables SMS fallback for MMS messages.
115
119
  #
116
120
  # @param mms_transcoding [Boolean] enables automated resizing of MMS media.
@@ -121,6 +125,10 @@ module Telnyx
121
125
  #
122
126
  # @param number_pool_settings [Telnyx::Models::NumberPoolSettings, nil] Number Pool allows you to send messages from a pool of numbers of different type
123
127
  #
128
+ # @param redaction_enabled [Boolean] Set to true to enable message content redaction on this profile, or false to dis
129
+ #
130
+ # @param redaction_level [Integer] The redaction level to apply when redaction is enabled. 1: redact message record
131
+ #
124
132
  # @param smart_encoding [Boolean] Enables automatic character encoding optimization for SMS messages. When enabled
125
133
  #
126
134
  # @param url_shortener_settings [Telnyx::Models::URLShortenerSettings, nil] The URL shortener feature allows automatic replacement of URLs that were generat
@@ -168,7 +176,7 @@ module Telnyx
168
176
  #
169
177
  # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
170
178
  #
171
- # @return [Telnyx::Internal::DefaultFlatPagination<Telnyx::Models::MessagingProfile>]
179
+ # @return [Telnyx::Internal::DefaultFlatPagination<Telnyx::Models::MessagingMessagingProfile>]
172
180
  #
173
181
  # @see Telnyx::Models::MessagingProfileListParams
174
182
  def list(params = {})
@@ -184,7 +192,7 @@ module Telnyx
184
192
  page_size: "page[size]"
185
193
  ),
186
194
  page: Telnyx::Internal::DefaultFlatPagination,
187
- model: Telnyx::MessagingProfile,
195
+ model: Telnyx::MessagingMessagingProfile,
188
196
  options: options
189
197
  )
190
198
  end
@@ -5,7 +5,7 @@ module Telnyx
5
5
  class Webhooks
6
6
  # @param payload [String] The raw webhook payload as a string
7
7
  #
8
- # @return [Telnyx::Models::CallAIGatherEndedWebhookEvent, Telnyx::Models::CallAIGatherMessageHistoryUpdatedWebhookEvent, Telnyx::Models::CallAIGatherPartialResultsWebhookEvent, Telnyx::Models::ArtifactCompletedWebhookEvent, Telnyx::Models::ArtifactFailedWebhookEvent, Telnyx::Models::CallAnsweredWebhookEvent, Telnyx::Models::CallBridgedWebhookEvent, Telnyx::Models::CallConversationEndedWebhookEvent, Telnyx::Models::CallConversationInsightsGeneratedWebhookEvent, Telnyx::Models::CallCostWebhookEvent, Telnyx::Models::CallDeepfakeDetectionErrorWebhookEvent, Telnyx::Models::CallDeepfakeDetectionResultWebhookEvent, Telnyx::Models::CallDtmfReceivedWebhookEvent, Telnyx::Models::CallEnqueuedWebhookEvent, Telnyx::Models::CallForkStartedWebhookEvent, Telnyx::Models::CallForkStoppedWebhookEvent, Telnyx::Models::CallGatherEndedWebhookEvent, Telnyx::Models::CallHangupWebhookEvent, Telnyx::Models::CallHoldWebhookEvent, Telnyx::Models::CallInitiatedWebhookEvent, Telnyx::Models::CallLeftQueueWebhookEvent, Telnyx::Models::CallMachineDetectionEndedWebhookEvent, Telnyx::Models::CallMachineGreetingEndedWebhookEvent, Telnyx::Models::CallMachinePremiumDetectionEndedWebhookEvent, Telnyx::Models::CallMachinePremiumGreetingEndedWebhookEvent, Telnyx::Models::CallPaymentCompletedWebhookEvent, Telnyx::Models::CallPaymentProgressWebhookEvent, Telnyx::Models::CallPlaybackEndedWebhookEvent, Telnyx::Models::CallPlaybackStartedWebhookEvent, Telnyx::Models::CallRecordingErrorWebhookEvent, Telnyx::Models::CallRecordingSavedWebhookEvent, Telnyx::Models::CallRecordingTranscriptionSavedWebhookEvent, Telnyx::Models::CallReferCompletedWebhookEvent, Telnyx::Models::CallReferFailedWebhookEvent, Telnyx::Models::CallReferStartedWebhookEvent, Telnyx::Models::CallSiprecFailedWebhookEvent, Telnyx::Models::CallSiprecStartedWebhookEvent, Telnyx::Models::CallSiprecStoppedWebhookEvent, Telnyx::Models::CallSpeakEndedWebhookEvent, Telnyx::Models::CallSpeakStartedWebhookEvent, Telnyx::Models::CallStreamingFailedWebhookEvent, Telnyx::Models::CallStreamingStartedWebhookEvent, Telnyx::Models::CallStreamingStoppedWebhookEvent, Telnyx::Models::CallUnholdWebhookEvent, Telnyx::Models::CampaignStatusUpdate, Telnyx::Models::ConferenceCreatedWebhookEvent, Telnyx::Models::ConferenceEndedWebhookEvent, Telnyx::Models::ConferenceFloorChanged, Telnyx::Models::ConferenceParticipantJoinedWebhookEvent, Telnyx::Models::ConferenceParticipantLeftWebhookEvent, Telnyx::Models::ConferenceParticipantPlaybackEndedWebhookEvent, Telnyx::Models::ConferenceParticipantPlaybackStartedWebhookEvent, Telnyx::Models::ConferenceParticipantSpeakEndedWebhookEvent, Telnyx::Models::ConferenceParticipantSpeakStartedWebhookEvent, Telnyx::Models::ConferencePlaybackEndedWebhookEvent, Telnyx::Models::ConferencePlaybackStartedWebhookEvent, Telnyx::Models::ConferenceRecordingSavedWebhookEvent, Telnyx::Models::ConferenceSpeakEndedWebhookEvent, Telnyx::Models::ConferenceSpeakStartedWebhookEvent, Telnyx::Models::DeliveryUpdateWebhookEvent, Telnyx::Models::FaxDelivered, Telnyx::Models::FaxFailed, Telnyx::Models::FaxMediaProcessed, Telnyx::Models::FaxQueued, Telnyx::Models::FaxSendingStarted, Telnyx::Models::HostedNumberOrderEventWebhookEvent, Telnyx::Models::InboundMessageWebhookEvent, Telnyx::Models::NumberOrderStatusUpdateWebhookEvent, Telnyx::Models::RecordingAvailableWebhookEvent, Telnyx::Models::ReplacedLinkClickWebhookEvent, Telnyx::Models::SessionStatusChangedWebhookEvent, Telnyx::Models::TranscriptCompletedWebhookEvent, Telnyx::Models::TranscriptionWebhookEvent]
8
+ # @return [Telnyx::Models::CallAIGatherEndedWebhookEvent, Telnyx::Models::CallAIGatherMessageHistoryUpdatedWebhookEvent, Telnyx::Models::CallAIGatherPartialResultsWebhookEvent, Telnyx::Models::ArtifactCompletedWebhookEvent, Telnyx::Models::ArtifactFailedWebhookEvent, Telnyx::Models::CallAnsweredWebhookEvent, Telnyx::Models::CallBridgedWebhookEvent, Telnyx::Models::CallConversationEndedWebhookEvent, Telnyx::Models::CallConversationInsightsGeneratedWebhookEvent, Telnyx::Models::CallCostWebhookEvent, Telnyx::Models::CallDeepfakeDetectionErrorWebhookEvent, Telnyx::Models::CallDeepfakeDetectionResultWebhookEvent, Telnyx::Models::CallDtmfReceivedWebhookEvent, Telnyx::Models::CallEnqueuedWebhookEvent, Telnyx::Models::CallForkStartedWebhookEvent, Telnyx::Models::CallForkStoppedWebhookEvent, Telnyx::Models::CallGatherEndedWebhookEvent, Telnyx::Models::CallHangupWebhookEvent, Telnyx::Models::CallHoldWebhookEvent, Telnyx::Models::CallInitiatedWebhookEvent, Telnyx::Models::CallLeftQueueWebhookEvent, Telnyx::Models::CallMachineDetectionEndedWebhookEvent, Telnyx::Models::CallMachineGreetingEndedWebhookEvent, Telnyx::Models::CallMachinePremiumDetectionEndedWebhookEvent, Telnyx::Models::CallMachinePremiumGreetingEndedWebhookEvent, Telnyx::Models::CallPaymentCompletedWebhookEvent, Telnyx::Models::CallPaymentProgressWebhookEvent, Telnyx::Models::CallPlaybackEndedWebhookEvent, Telnyx::Models::CallPlaybackStartedWebhookEvent, Telnyx::Models::CallRecordingErrorWebhookEvent, Telnyx::Models::CallRecordingSavedWebhookEvent, Telnyx::Models::CallRecordingTranscriptionSavedWebhookEvent, Telnyx::Models::CallReferCompletedWebhookEvent, Telnyx::Models::CallReferFailedWebhookEvent, Telnyx::Models::CallReferStartedWebhookEvent, Telnyx::Models::CallSiprecFailedWebhookEvent, Telnyx::Models::CallSiprecStartedWebhookEvent, Telnyx::Models::CallSiprecStoppedWebhookEvent, Telnyx::Models::CallSpeakEndedWebhookEvent, Telnyx::Models::CallSpeakStartedWebhookEvent, Telnyx::Models::CallStreamingFailedWebhookEvent, Telnyx::Models::CallStreamingStartedWebhookEvent, Telnyx::Models::CallStreamingStoppedWebhookEvent, Telnyx::Models::CallUnholdWebhookEvent, Telnyx::Models::CampaignStatusUpdate, Telnyx::Models::ConferenceCreatedWebhookEvent, Telnyx::Models::ConferenceEndedWebhookEvent, Telnyx::Models::ConferenceFloorChanged, Telnyx::Models::ConferenceParticipantJoinedWebhookEvent, Telnyx::Models::ConferenceParticipantLeftWebhookEvent, Telnyx::Models::ConferenceParticipantPlaybackEndedWebhookEvent, Telnyx::Models::ConferenceParticipantPlaybackStartedWebhookEvent, Telnyx::Models::ConferenceParticipantSpeakEndedWebhookEvent, Telnyx::Models::ConferenceParticipantSpeakStartedWebhookEvent, Telnyx::Models::ConferencePlaybackEndedWebhookEvent, Telnyx::Models::ConferencePlaybackStartedWebhookEvent, Telnyx::Models::ConferenceRecordingSavedWebhookEvent, Telnyx::Models::ConferenceSpeakEndedWebhookEvent, Telnyx::Models::ConferenceSpeakStartedWebhookEvent, Telnyx::Models::DeliveryUpdateWebhookEvent, Telnyx::Models::FaxDelivered, Telnyx::Models::FaxFailed, Telnyx::Models::FaxMediaProcessed, Telnyx::Models::FaxQueued, Telnyx::Models::FaxSendingStarted, Telnyx::Models::HostedNumberOrderEventWebhookEvent, Telnyx::Models::InboundMessageWebhookEvent, Telnyx::Models::NumberOrderStatusUpdateWebhookEvent, Telnyx::Models::RecordingAvailableWebhookEvent, Telnyx::Models::ReplacedLinkClickWebhookEvent, Telnyx::Models::SessionStatusChangedWebhookEvent, Telnyx::Models::TranscriptCompletedWebhookEvent, Telnyx::Models::TranscriptionWebhookEvent, Telnyx::Models::WhatsappAccountUpdate, Telnyx::Models::WhatsappMessageEcho]
9
9
  def unsafe_unwrap(payload)
10
10
  parsed = JSON.parse(payload, symbolize_names: true)
11
11
  Telnyx::Internal::Type::Converter.coerce(Telnyx::Models::UnsafeUnwrapWebhookEvent, parsed)
@@ -17,7 +17,7 @@ module Telnyx
17
17
  #
18
18
  # @param key [String, nil] The webhook signing key
19
19
  #
20
- # @return [Telnyx::Models::CallAIGatherEndedWebhookEvent, Telnyx::Models::CallAIGatherMessageHistoryUpdatedWebhookEvent, Telnyx::Models::CallAIGatherPartialResultsWebhookEvent, Telnyx::Models::ArtifactCompletedWebhookEvent, Telnyx::Models::ArtifactFailedWebhookEvent, Telnyx::Models::CallAnsweredWebhookEvent, Telnyx::Models::CallBridgedWebhookEvent, Telnyx::Models::CallConversationEndedWebhookEvent, Telnyx::Models::CallConversationInsightsGeneratedWebhookEvent, Telnyx::Models::CallCostWebhookEvent, Telnyx::Models::CallDeepfakeDetectionErrorWebhookEvent, Telnyx::Models::CallDeepfakeDetectionResultWebhookEvent, Telnyx::Models::CallDtmfReceivedWebhookEvent, Telnyx::Models::CallEnqueuedWebhookEvent, Telnyx::Models::CallForkStartedWebhookEvent, Telnyx::Models::CallForkStoppedWebhookEvent, Telnyx::Models::CallGatherEndedWebhookEvent, Telnyx::Models::CallHangupWebhookEvent, Telnyx::Models::CallHoldWebhookEvent, Telnyx::Models::CallInitiatedWebhookEvent, Telnyx::Models::CallLeftQueueWebhookEvent, Telnyx::Models::CallMachineDetectionEndedWebhookEvent, Telnyx::Models::CallMachineGreetingEndedWebhookEvent, Telnyx::Models::CallMachinePremiumDetectionEndedWebhookEvent, Telnyx::Models::CallMachinePremiumGreetingEndedWebhookEvent, Telnyx::Models::CallPaymentCompletedWebhookEvent, Telnyx::Models::CallPaymentProgressWebhookEvent, Telnyx::Models::CallPlaybackEndedWebhookEvent, Telnyx::Models::CallPlaybackStartedWebhookEvent, Telnyx::Models::CallRecordingErrorWebhookEvent, Telnyx::Models::CallRecordingSavedWebhookEvent, Telnyx::Models::CallRecordingTranscriptionSavedWebhookEvent, Telnyx::Models::CallReferCompletedWebhookEvent, Telnyx::Models::CallReferFailedWebhookEvent, Telnyx::Models::CallReferStartedWebhookEvent, Telnyx::Models::CallSiprecFailedWebhookEvent, Telnyx::Models::CallSiprecStartedWebhookEvent, Telnyx::Models::CallSiprecStoppedWebhookEvent, Telnyx::Models::CallSpeakEndedWebhookEvent, Telnyx::Models::CallSpeakStartedWebhookEvent, Telnyx::Models::CallStreamingFailedWebhookEvent, Telnyx::Models::CallStreamingStartedWebhookEvent, Telnyx::Models::CallStreamingStoppedWebhookEvent, Telnyx::Models::CallUnholdWebhookEvent, Telnyx::Models::CampaignStatusUpdate, Telnyx::Models::ConferenceCreatedWebhookEvent, Telnyx::Models::ConferenceEndedWebhookEvent, Telnyx::Models::ConferenceFloorChanged, Telnyx::Models::ConferenceParticipantJoinedWebhookEvent, Telnyx::Models::ConferenceParticipantLeftWebhookEvent, Telnyx::Models::ConferenceParticipantPlaybackEndedWebhookEvent, Telnyx::Models::ConferenceParticipantPlaybackStartedWebhookEvent, Telnyx::Models::ConferenceParticipantSpeakEndedWebhookEvent, Telnyx::Models::ConferenceParticipantSpeakStartedWebhookEvent, Telnyx::Models::ConferencePlaybackEndedWebhookEvent, Telnyx::Models::ConferencePlaybackStartedWebhookEvent, Telnyx::Models::ConferenceRecordingSavedWebhookEvent, Telnyx::Models::ConferenceSpeakEndedWebhookEvent, Telnyx::Models::ConferenceSpeakStartedWebhookEvent, Telnyx::Models::DeliveryUpdateWebhookEvent, Telnyx::Models::FaxDelivered, Telnyx::Models::FaxFailed, Telnyx::Models::FaxMediaProcessed, Telnyx::Models::FaxQueued, Telnyx::Models::FaxSendingStarted, Telnyx::Models::HostedNumberOrderEventWebhookEvent, Telnyx::Models::InboundMessageWebhookEvent, Telnyx::Models::NumberOrderStatusUpdateWebhookEvent, Telnyx::Models::RecordingAvailableWebhookEvent, Telnyx::Models::ReplacedLinkClickWebhookEvent, Telnyx::Models::SessionStatusChangedWebhookEvent, Telnyx::Models::TranscriptCompletedWebhookEvent, Telnyx::Models::TranscriptionWebhookEvent]
20
+ # @return [Telnyx::Models::CallAIGatherEndedWebhookEvent, Telnyx::Models::CallAIGatherMessageHistoryUpdatedWebhookEvent, Telnyx::Models::CallAIGatherPartialResultsWebhookEvent, Telnyx::Models::ArtifactCompletedWebhookEvent, Telnyx::Models::ArtifactFailedWebhookEvent, Telnyx::Models::CallAnsweredWebhookEvent, Telnyx::Models::CallBridgedWebhookEvent, Telnyx::Models::CallConversationEndedWebhookEvent, Telnyx::Models::CallConversationInsightsGeneratedWebhookEvent, Telnyx::Models::CallCostWebhookEvent, Telnyx::Models::CallDeepfakeDetectionErrorWebhookEvent, Telnyx::Models::CallDeepfakeDetectionResultWebhookEvent, Telnyx::Models::CallDtmfReceivedWebhookEvent, Telnyx::Models::CallEnqueuedWebhookEvent, Telnyx::Models::CallForkStartedWebhookEvent, Telnyx::Models::CallForkStoppedWebhookEvent, Telnyx::Models::CallGatherEndedWebhookEvent, Telnyx::Models::CallHangupWebhookEvent, Telnyx::Models::CallHoldWebhookEvent, Telnyx::Models::CallInitiatedWebhookEvent, Telnyx::Models::CallLeftQueueWebhookEvent, Telnyx::Models::CallMachineDetectionEndedWebhookEvent, Telnyx::Models::CallMachineGreetingEndedWebhookEvent, Telnyx::Models::CallMachinePremiumDetectionEndedWebhookEvent, Telnyx::Models::CallMachinePremiumGreetingEndedWebhookEvent, Telnyx::Models::CallPaymentCompletedWebhookEvent, Telnyx::Models::CallPaymentProgressWebhookEvent, Telnyx::Models::CallPlaybackEndedWebhookEvent, Telnyx::Models::CallPlaybackStartedWebhookEvent, Telnyx::Models::CallRecordingErrorWebhookEvent, Telnyx::Models::CallRecordingSavedWebhookEvent, Telnyx::Models::CallRecordingTranscriptionSavedWebhookEvent, Telnyx::Models::CallReferCompletedWebhookEvent, Telnyx::Models::CallReferFailedWebhookEvent, Telnyx::Models::CallReferStartedWebhookEvent, Telnyx::Models::CallSiprecFailedWebhookEvent, Telnyx::Models::CallSiprecStartedWebhookEvent, Telnyx::Models::CallSiprecStoppedWebhookEvent, Telnyx::Models::CallSpeakEndedWebhookEvent, Telnyx::Models::CallSpeakStartedWebhookEvent, Telnyx::Models::CallStreamingFailedWebhookEvent, Telnyx::Models::CallStreamingStartedWebhookEvent, Telnyx::Models::CallStreamingStoppedWebhookEvent, Telnyx::Models::CallUnholdWebhookEvent, Telnyx::Models::CampaignStatusUpdate, Telnyx::Models::ConferenceCreatedWebhookEvent, Telnyx::Models::ConferenceEndedWebhookEvent, Telnyx::Models::ConferenceFloorChanged, Telnyx::Models::ConferenceParticipantJoinedWebhookEvent, Telnyx::Models::ConferenceParticipantLeftWebhookEvent, Telnyx::Models::ConferenceParticipantPlaybackEndedWebhookEvent, Telnyx::Models::ConferenceParticipantPlaybackStartedWebhookEvent, Telnyx::Models::ConferenceParticipantSpeakEndedWebhookEvent, Telnyx::Models::ConferenceParticipantSpeakStartedWebhookEvent, Telnyx::Models::ConferencePlaybackEndedWebhookEvent, Telnyx::Models::ConferencePlaybackStartedWebhookEvent, Telnyx::Models::ConferenceRecordingSavedWebhookEvent, Telnyx::Models::ConferenceSpeakEndedWebhookEvent, Telnyx::Models::ConferenceSpeakStartedWebhookEvent, Telnyx::Models::DeliveryUpdateWebhookEvent, Telnyx::Models::FaxDelivered, Telnyx::Models::FaxFailed, Telnyx::Models::FaxMediaProcessed, Telnyx::Models::FaxQueued, Telnyx::Models::FaxSendingStarted, Telnyx::Models::HostedNumberOrderEventWebhookEvent, Telnyx::Models::InboundMessageWebhookEvent, Telnyx::Models::NumberOrderStatusUpdateWebhookEvent, Telnyx::Models::RecordingAvailableWebhookEvent, Telnyx::Models::ReplacedLinkClickWebhookEvent, Telnyx::Models::SessionStatusChangedWebhookEvent, Telnyx::Models::TranscriptCompletedWebhookEvent, Telnyx::Models::TranscriptionWebhookEvent, Telnyx::Models::WhatsappAccountUpdate, Telnyx::Models::WhatsappMessageEcho]
21
21
  def unwrap(payload, headers:, key: @client.public_key)
22
22
  if key.nil?
23
23
  raise ArgumentError.new("Cannot verify a webhook without a key on either the client's public_key or passed in as an argument")
@@ -135,6 +135,28 @@ module Telnyx
135
135
  )
136
136
  end
137
137
 
138
+ # Returns one WhatsApp phone number linked to the authenticated Telnyx account.
139
+ # For a coexistence number in the `syncing` state, the response includes
140
+ # `sync_progress`.
141
+ #
142
+ # @overload retrieve_phone_number(phone_number, request_options: {})
143
+ #
144
+ # @param phone_number [String] Phone number (E.164 format)
145
+ #
146
+ # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
147
+ #
148
+ # @return [Telnyx::Models::Whatsapp::PhoneNumberRetrievePhoneNumberResponse]
149
+ #
150
+ # @see Telnyx::Models::Whatsapp::PhoneNumberRetrievePhoneNumberParams
151
+ def retrieve_phone_number(phone_number, params = {})
152
+ @client.request(
153
+ method: :get,
154
+ path: ["whatsapp/phone_numbers/%1$s", phone_number],
155
+ model: Telnyx::Models::Whatsapp::PhoneNumberRetrievePhoneNumberResponse,
156
+ options: params[:request_options]
157
+ )
158
+ end
159
+
138
160
  # Submits the verification code received for the specified WhatsApp phone number.
139
161
  #
140
162
  # @overload verify(phone_number, code:, request_options: {})
@@ -0,0 +1,71 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Telnyx
4
+ module Resources
5
+ class X402
6
+ class CreditAccount
7
+ # Operations for x402 cryptocurrency payment transactions. Fund your Telnyx
8
+ # account using USDC stablecoin payments via the x402 protocol.
9
+ class Payments
10
+ # Returns a single x402 payment transaction by ID. The transaction must belong to
11
+ # the authenticated user; organization sub-users must have read permission on
12
+ # transactions. Returns 404 if the transaction does not exist or belongs to
13
+ # another user.
14
+ #
15
+ # @overload retrieve(id, request_options: {})
16
+ #
17
+ # @param id [String] The x402 payment transaction ID.
18
+ #
19
+ # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
20
+ #
21
+ # @return [Telnyx::Models::X402::CreditAccount::PaymentRetrieveResponse]
22
+ #
23
+ # @see Telnyx::Models::X402::CreditAccount::PaymentRetrieveParams
24
+ def retrieve(id, params = {})
25
+ @client.request(
26
+ method: :get,
27
+ path: ["x402/credit_account/payments/%1$s", id],
28
+ model: Telnyx::Models::X402::CreditAccount::PaymentRetrieveResponse,
29
+ options: params[:request_options]
30
+ )
31
+ end
32
+
33
+ # Returns a paginated list of the authenticated user's x402 payment transactions,
34
+ # newest first. Organization sub-users must have read permission on transactions;
35
+ # without it the list is empty.
36
+ #
37
+ # @overload list(page_number: nil, page_size: nil, request_options: {})
38
+ #
39
+ # @param page_number [Integer] The page number to load.
40
+ #
41
+ # @param page_size [Integer] The size of the page.
42
+ #
43
+ # @param request_options [Telnyx::RequestOptions, Hash{Symbol=>Object}, nil]
44
+ #
45
+ # @return [Telnyx::Internal::DefaultFlatPagination<Telnyx::Models::X402::CreditAccount::X402TransactionRecord>]
46
+ #
47
+ # @see Telnyx::Models::X402::CreditAccount::PaymentListParams
48
+ def list(params = {})
49
+ parsed, options = Telnyx::X402::CreditAccount::PaymentListParams.dump_request(params)
50
+ query = Telnyx::Internal::Util.encode_query_params(parsed)
51
+ @client.request(
52
+ method: :get,
53
+ path: "x402/credit_account/payments",
54
+ query: query.transform_keys(page_number: "page[number]", page_size: "page[size]"),
55
+ page: Telnyx::Internal::DefaultFlatPagination,
56
+ model: Telnyx::X402::CreditAccount::X402TransactionRecord,
57
+ options: options
58
+ )
59
+ end
60
+
61
+ # @api private
62
+ #
63
+ # @param client [Telnyx::Client]
64
+ def initialize(client:)
65
+ @client = client
66
+ end
67
+ end
68
+ end
69
+ end
70
+ end
71
+ end
@@ -6,6 +6,11 @@ module Telnyx
6
6
  # Operations for x402 cryptocurrency payment transactions. Fund your Telnyx
7
7
  # account using USDC stablecoin payments via the x402 protocol.
8
8
  class CreditAccount
9
+ # Operations for x402 cryptocurrency payment transactions. Fund your Telnyx
10
+ # account using USDC stablecoin payments via the x402 protocol.
11
+ # @return [Telnyx::Resources::X402::CreditAccount::Payments]
12
+ attr_reader :payments
13
+
9
14
  # Creates a payment quote for the specified USD amount. Returns payment details
10
15
  # including the x402 payment requirements, network, and expiration time. The quote
11
16
  # must be settled before it expires.
@@ -23,7 +28,7 @@ module Telnyx
23
28
  parsed, options = Telnyx::X402::CreditAccountCreateQuoteParams.dump_request(params)
24
29
  @client.request(
25
30
  method: :post,
26
- path: "v2/x402/credit_account/quote",
31
+ path: "x402/credit_account/quote",
27
32
  body: parsed,
28
33
  model: Telnyx::Models::X402::CreditAccountCreateQuoteResponse,
29
34
  options: options
@@ -56,7 +61,7 @@ module Telnyx
56
61
  header_params = {header_payment_signature: "payment-signature"}
57
62
  @client.request(
58
63
  method: :post,
59
- path: "v2/x402/credit_account",
64
+ path: "x402/credit_account",
60
65
  headers: parsed.slice(*header_params.keys).transform_keys(header_params),
61
66
  body: parsed.except(*header_params.keys),
62
67
  model: Telnyx::Models::X402::CreditAccountSettleResponse,
@@ -69,6 +74,7 @@ module Telnyx
69
74
  # @param client [Telnyx::Client]
70
75
  def initialize(client:)
71
76
  @client = client
77
+ @payments = Telnyx::Resources::X402::CreditAccount::Payments.new(client: client)
72
78
  end
73
79
  end
74
80
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Telnyx
4
- VERSION = "5.166.0"
4
+ VERSION = "5.168.0"
5
5
  end