telnyx 5.156.0 → 5.157.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 (145) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +8 -0
  3. data/README.md +1 -1
  4. data/lib/telnyx/models/ai/anthropic/v1_messages_params.rb +209 -0
  5. data/lib/telnyx/models/ai/anthropic/v1_messages_response.rb +12 -0
  6. data/lib/telnyx/models/ai/assistant_create_params.rb +2 -2
  7. data/lib/telnyx/models/ai/assistant_tool.rb +25 -1
  8. data/lib/telnyx/models/ai/assistant_update_params.rb +2 -2
  9. data/lib/telnyx/models/ai/assistants/update_assistant.rb +2 -2
  10. data/lib/telnyx/models/ai/conversations/conversation_insight_retrieve_aggregates_params.rb +103 -0
  11. data/lib/telnyx/models/ai/conversations/conversation_insight_retrieve_aggregates_response.rb +54 -0
  12. data/lib/telnyx/models/ai/inference_embedding.rb +6 -6
  13. data/lib/telnyx/models/ai/pay_tool_params.rb +46 -0
  14. data/lib/telnyx/models/ai/tool_create_params.rb +7 -1
  15. data/lib/telnyx/models/ai/tool_update_params.rb +7 -1
  16. data/lib/telnyx/models/ai/transcription_settings.rb +3 -3
  17. data/lib/telnyx/models/call_dial_params.rb +13 -1
  18. data/lib/telnyx/models/calls/transcription_config.rb +8 -4
  19. data/lib/telnyx/models/calls/transcription_engine_parakeet_config.rb +1 -1
  20. data/lib/telnyx/models/doc_reqs_requirement.rb +29 -4
  21. data/lib/telnyx/models/inbound_message.rb +278 -28
  22. data/lib/telnyx/models/inbound_message_webhook_event.rb +70 -3
  23. data/lib/telnyx/models/managed_account_list_params.rb +45 -3
  24. data/lib/telnyx/models/requirement_list_params.rb +10 -1
  25. data/lib/telnyx/models/requirement_retrieve_params.rb +14 -1
  26. data/lib/telnyx/models/speech_to_text_retrieve_transcription_params.rb +1 -1
  27. data/lib/telnyx/models/storage/cloudf_create_params.rb +56 -0
  28. data/lib/telnyx/models/storage/cloudf_delete_params.rb +22 -0
  29. data/lib/telnyx/models/storage/cloudf_list_params.rb +109 -0
  30. data/lib/telnyx/models/storage/cloudf_list_response.rb +165 -0
  31. data/lib/telnyx/models/storage/cloudf_retrieve_params.rb +22 -0
  32. data/lib/telnyx/models/storage/cloudf_update_params.rb +36 -0
  33. data/lib/telnyx/models/storage/cloudfs/action_rotate_meta_token_params.rb +30 -0
  34. data/lib/telnyx/models/storage/cloudfs_filesystem_detail_response_wrapper.rb +129 -0
  35. data/lib/telnyx/models/storage/cloudfs_filesystem_response_wrapper.rb +129 -0
  36. data/lib/telnyx/models/storage/cloudfs_filesystem_status.rb +28 -0
  37. data/lib/telnyx/models/verify_profile.rb +2 -2
  38. data/lib/telnyx/models/verify_profile_create_params.rb +2 -2
  39. data/lib/telnyx/models/verify_profile_update_params.rb +2 -2
  40. data/lib/telnyx/resources/ai/anthropic/v1.rb +91 -0
  41. data/lib/telnyx/resources/ai/anthropic.rb +20 -0
  42. data/lib/telnyx/resources/ai/assistants/versions.rb +1 -1
  43. data/lib/telnyx/resources/ai/assistants.rb +2 -2
  44. data/lib/telnyx/resources/ai/conversations/conversation_insights.rb +55 -0
  45. data/lib/telnyx/resources/ai/conversations.rb +5 -0
  46. data/lib/telnyx/resources/ai/tools.rb +5 -2
  47. data/lib/telnyx/resources/ai.rb +4 -0
  48. data/lib/telnyx/resources/calls.rb +3 -1
  49. data/lib/telnyx/resources/requirements.rb +13 -3
  50. data/lib/telnyx/resources/storage/cloudfs/actions.rb +54 -0
  51. data/lib/telnyx/resources/storage/cloudfs.rb +187 -0
  52. data/lib/telnyx/resources/storage.rb +6 -0
  53. data/lib/telnyx/version.rb +1 -1
  54. data/lib/telnyx.rb +20 -0
  55. data/rbi/telnyx/models/ai/anthropic/v1_messages_params.rbi +314 -0
  56. data/rbi/telnyx/models/ai/anthropic/v1_messages_response.rbi +15 -0
  57. data/rbi/telnyx/models/ai/assistant_create_params.rbi +8 -4
  58. data/rbi/telnyx/models/ai/assistant_tool.rbi +37 -1
  59. data/rbi/telnyx/models/ai/assistant_update_params.rbi +8 -4
  60. data/rbi/telnyx/models/ai/assistants/update_assistant.rbi +8 -4
  61. data/rbi/telnyx/models/ai/conversations/conversation_insight_retrieve_aggregates_params.rbi +188 -0
  62. data/rbi/telnyx/models/ai/conversations/conversation_insight_retrieve_aggregates_response.rbi +94 -0
  63. data/rbi/telnyx/models/ai/inference_embedding.rbi +12 -6
  64. data/rbi/telnyx/models/ai/pay_tool_params.rbi +71 -0
  65. data/rbi/telnyx/models/ai/tool_create_params.rbi +9 -0
  66. data/rbi/telnyx/models/ai/tool_update_params.rbi +9 -0
  67. data/rbi/telnyx/models/ai/transcription_settings.rbi +5 -5
  68. data/rbi/telnyx/models/call_dial_params.rbi +19 -0
  69. data/rbi/telnyx/models/calls/transcription_config.rbi +15 -7
  70. data/rbi/telnyx/models/calls/transcription_engine_parakeet_config.rbi +2 -2
  71. data/rbi/telnyx/models/doc_reqs_requirement.rbi +38 -9
  72. data/rbi/telnyx/models/inbound_message.rbi +324 -58
  73. data/rbi/telnyx/models/inbound_message_webhook_event.rbi +173 -4
  74. data/rbi/telnyx/models/managed_account_list_params.rbi +130 -6
  75. data/rbi/telnyx/models/requirement_list_params.rbi +13 -0
  76. data/rbi/telnyx/models/requirement_retrieve_params.rbi +21 -2
  77. data/rbi/telnyx/models/speech_to_text_retrieve_transcription_params.rbi +2 -2
  78. data/rbi/telnyx/models/storage/cloudf_create_params.rbi +103 -0
  79. data/rbi/telnyx/models/storage/cloudf_delete_params.rbi +40 -0
  80. data/rbi/telnyx/models/storage/cloudf_list_params.rbi +232 -0
  81. data/rbi/telnyx/models/storage/cloudf_list_response.rbi +327 -0
  82. data/rbi/telnyx/models/storage/cloudf_retrieve_params.rbi +40 -0
  83. data/rbi/telnyx/models/storage/cloudf_update_params.rbi +61 -0
  84. data/rbi/telnyx/models/storage/cloudfs/action_rotate_meta_token_params.rbi +50 -0
  85. data/rbi/telnyx/models/storage/cloudfs_filesystem_detail_response_wrapper.rbi +229 -0
  86. data/rbi/telnyx/models/storage/cloudfs_filesystem_response_wrapper.rbi +227 -0
  87. data/rbi/telnyx/models/storage/cloudfs_filesystem_status.rbi +57 -0
  88. data/rbi/telnyx/models/verify_profile.rbi +2 -2
  89. data/rbi/telnyx/models/verify_profile_create_params.rbi +2 -2
  90. data/rbi/telnyx/models/verify_profile_update_params.rbi +2 -2
  91. data/rbi/telnyx/resources/ai/anthropic/v1.rbi +106 -0
  92. data/rbi/telnyx/resources/ai/anthropic.rbi +17 -0
  93. data/rbi/telnyx/resources/ai/assistants/versions.rbi +2 -1
  94. data/rbi/telnyx/resources/ai/assistants.rbi +4 -2
  95. data/rbi/telnyx/resources/ai/conversations/conversation_insights.rbi +68 -0
  96. data/rbi/telnyx/resources/ai/conversations.rbi +6 -0
  97. data/rbi/telnyx/resources/ai/tools.rbi +4 -0
  98. data/rbi/telnyx/resources/ai.rbi +3 -0
  99. data/rbi/telnyx/resources/calls.rbi +7 -0
  100. data/rbi/telnyx/resources/managed_accounts.rbi +1 -1
  101. data/rbi/telnyx/resources/requirements.rbi +8 -0
  102. data/rbi/telnyx/resources/storage/cloudfs/actions.rbi +46 -0
  103. data/rbi/telnyx/resources/storage/cloudfs.rbi +152 -0
  104. data/rbi/telnyx/resources/storage.rbi +5 -0
  105. data/sig/telnyx/models/ai/anthropic/v1_messages_params.rbs +175 -0
  106. data/sig/telnyx/models/ai/anthropic/v1_messages_response.rbs +11 -0
  107. data/sig/telnyx/models/ai/assistant_tool.rbs +13 -0
  108. data/sig/telnyx/models/ai/conversations/conversation_insight_retrieve_aggregates_params.rbs +74 -0
  109. data/sig/telnyx/models/ai/conversations/conversation_insight_retrieve_aggregates_response.rbs +34 -0
  110. data/sig/telnyx/models/ai/pay_tool_params.rbs +41 -0
  111. data/sig/telnyx/models/ai/tool_create_params.rbs +7 -0
  112. data/sig/telnyx/models/ai/tool_update_params.rbs +7 -0
  113. data/sig/telnyx/models/ai/transcription_settings.rbs +2 -2
  114. data/sig/telnyx/models/call_dial_params.rbs +7 -0
  115. data/sig/telnyx/models/calls/transcription_config.rbs +2 -2
  116. data/sig/telnyx/models/calls/transcription_engine_parakeet_config.rbs +2 -2
  117. data/sig/telnyx/models/doc_reqs_requirement.rbs +25 -8
  118. data/sig/telnyx/models/inbound_message.rbs +204 -35
  119. data/sig/telnyx/models/inbound_message_webhook_event.rbs +81 -5
  120. data/sig/telnyx/models/managed_account_list_params.rbs +47 -3
  121. data/sig/telnyx/models/requirement_list_params.rbs +8 -1
  122. data/sig/telnyx/models/requirement_retrieve_params.rbs +12 -2
  123. data/sig/telnyx/models/speech_to_text_retrieve_transcription_params.rbs +2 -2
  124. data/sig/telnyx/models/storage/cloudf_create_params.rbs +50 -0
  125. data/sig/telnyx/models/storage/cloudf_delete_params.rbs +22 -0
  126. data/sig/telnyx/models/storage/cloudf_list_params.rbs +112 -0
  127. data/sig/telnyx/models/storage/cloudf_list_response.rbs +163 -0
  128. data/sig/telnyx/models/storage/cloudf_retrieve_params.rbs +22 -0
  129. data/sig/telnyx/models/storage/cloudf_update_params.rbs +32 -0
  130. data/sig/telnyx/models/storage/cloudfs/action_rotate_meta_token_params.rbs +32 -0
  131. data/sig/telnyx/models/storage/cloudfs_filesystem_detail_response_wrapper.rbs +115 -0
  132. data/sig/telnyx/models/storage/cloudfs_filesystem_response_wrapper.rbs +115 -0
  133. data/sig/telnyx/models/storage/cloudfs_filesystem_status.rbs +21 -0
  134. data/sig/telnyx/resources/ai/anthropic/v1.rbs +35 -0
  135. data/sig/telnyx/resources/ai/anthropic.rbs +11 -0
  136. data/sig/telnyx/resources/ai/conversations/conversation_insights.rbs +20 -0
  137. data/sig/telnyx/resources/ai/conversations.rbs +2 -0
  138. data/sig/telnyx/resources/ai/tools.rbs +2 -0
  139. data/sig/telnyx/resources/ai.rbs +2 -0
  140. data/sig/telnyx/resources/calls.rbs +1 -0
  141. data/sig/telnyx/resources/requirements.rbs +2 -0
  142. data/sig/telnyx/resources/storage/cloudfs/actions.rbs +17 -0
  143. data/sig/telnyx/resources/storage/cloudfs.rbs +45 -0
  144. data/sig/telnyx/resources/storage.rbs +2 -0
  145. metadata +62 -2
@@ -8,12 +8,16 @@ module Telnyx
8
8
  sig do
9
9
  params(
10
10
  id: String,
11
+ version: Integer,
11
12
  request_options: Telnyx::RequestOptions::OrHash
12
13
  ).returns(Telnyx::Models::RequirementRetrieveResponse)
13
14
  end
14
15
  def retrieve(
15
16
  # Uniquely identifies the requirement_type record
16
17
  id,
18
+ # Filter by requirement version number. When omitted, returns the currently-active
19
+ # version.
20
+ version: nil,
17
21
  request_options: {}
18
22
  )
19
23
  end
@@ -25,6 +29,7 @@ module Telnyx
25
29
  page_number: Integer,
26
30
  page_size: Integer,
27
31
  sort: T::Array[Telnyx::RequirementListParams::Sort::OrSymbol],
32
+ version: Integer,
28
33
  request_options: Telnyx::RequestOptions::OrHash
29
34
  ).returns(
30
35
  Telnyx::Internal::DefaultFlatPagination[Telnyx::DocReqsRequirement]
@@ -39,6 +44,9 @@ module Telnyx
39
44
  # Consolidated sort parameter for requirements (deepObject style). Originally:
40
45
  # sort[]
41
46
  sort: nil,
47
+ # Filter by requirement version number. When omitted, returns the currently-active
48
+ # version.
49
+ version: nil,
42
50
  request_options: {}
43
51
  )
44
52
  end
@@ -0,0 +1,46 @@
1
+ # typed: strong
2
+
3
+ module Telnyx
4
+ module Resources
5
+ class Storage
6
+ class Cloudfs
7
+ # Manage CloudFS filesystems — JuiceFS-compatible filesystems backed by Telnyx
8
+ # Cloud Storage
9
+ class Actions
10
+ # Issues a new metadata access token for the filesystem and returns the full
11
+ # filesystem, including the new `meta_token` and credential-bearing `meta_url`.
12
+ # The previous token stops authenticating immediately; the metadata database and
13
+ # S3 bucket are unchanged. The request takes no body. Allowed while the filesystem
14
+ # is `ready` or `needs_format`; otherwise returns a `409`. Retrying with the same
15
+ # `Idempotency-Key` within 24 hours replays the original response — including the
16
+ # same token — instead of rotating again.
17
+ sig do
18
+ params(
19
+ id: String,
20
+ idempotency_key: String,
21
+ request_options: Telnyx::RequestOptions::OrHash
22
+ ).returns(Telnyx::Storage::CloudfsFilesystemResponseWrapper)
23
+ end
24
+ def rotate_meta_token(
25
+ # CloudFS filesystem ID
26
+ id,
27
+ # Unique key that makes the request idempotent (1-255 characters: letters,
28
+ # numbers, `_`, and `-`). Retrying with the same key within 24 hours replays the
29
+ # original response (marked with an `Idempotent-Replayed: true` header) instead of
30
+ # repeating the action. Reusing a key with a different request returns a `422`;
31
+ # sending a key while the original request is still being processed returns a
32
+ # `409`.
33
+ idempotency_key:,
34
+ request_options: {}
35
+ )
36
+ end
37
+
38
+ # @api private
39
+ sig { params(client: Telnyx::Client).returns(T.attached_class) }
40
+ def self.new(client:)
41
+ end
42
+ end
43
+ end
44
+ end
45
+ end
46
+ end
@@ -0,0 +1,152 @@
1
+ # typed: strong
2
+
3
+ module Telnyx
4
+ module Resources
5
+ class Storage
6
+ # Manage CloudFS filesystems — JuiceFS-compatible filesystems backed by Telnyx
7
+ # Cloud Storage
8
+ class Cloudfs
9
+ # Manage CloudFS filesystems — JuiceFS-compatible filesystems backed by Telnyx
10
+ # Cloud Storage
11
+ sig { returns(Telnyx::Resources::Storage::Cloudfs::Actions) }
12
+ attr_reader :actions
13
+
14
+ # Creates a CloudFS filesystem. Provisioning is synchronous — typically a few
15
+ # seconds, up to a few minutes — and the filesystem is returned with status
16
+ # `ready`, together with its S3 bucket and metadata connection details. This
17
+ # response is the only time the filesystem's `meta_token` — and the
18
+ # credential-bearing `meta_url` — are returned; store them securely. If the token
19
+ # is lost, issue a new one with the rotate-meta-token action. Names are unique
20
+ # within your organization: creating with an existing name returns a `422`.
21
+ # Requests are idempotent: retrying with the same `Idempotency-Key` within 24
22
+ # hours replays the original response instead of creating another filesystem.
23
+ sig do
24
+ params(
25
+ name: String,
26
+ region: Telnyx::Storage::CloudfCreateParams::Region::OrSymbol,
27
+ idempotency_key: String,
28
+ request_options: Telnyx::RequestOptions::OrHash
29
+ ).returns(Telnyx::Storage::CloudfsFilesystemResponseWrapper)
30
+ end
31
+ def create(
32
+ # Body param: Filesystem name, unique within your organization. Names are trimmed
33
+ # and lowercased; after normalization they may contain lowercase letters, numbers,
34
+ # `.`, `_`, and `-` only.
35
+ name:,
36
+ # Body param: Region where the filesystem's storage and metadata are provisioned.
37
+ region:,
38
+ # Header param: Unique key that makes the request idempotent (1-255 characters:
39
+ # letters, numbers, `_`, and `-`). Retrying with the same key within 24 hours
40
+ # replays the original response (marked with an `Idempotent-Replayed: true`
41
+ # header) instead of repeating the action. Reusing a key with a different request
42
+ # returns a `422`; sending a key while the original request is still being
43
+ # processed returns a `409`.
44
+ idempotency_key:,
45
+ request_options: {}
46
+ )
47
+ end
48
+
49
+ # Retrieves a CloudFS filesystem by its ID. The returned `meta_url` omits the
50
+ # credential — the metadata token is only ever returned by create and
51
+ # rotate-meta-token. A filesystem whose last lifecycle action failed includes a
52
+ # customer-safe `error` message.
53
+ sig do
54
+ params(
55
+ id: String,
56
+ request_options: Telnyx::RequestOptions::OrHash
57
+ ).returns(Telnyx::Storage::CloudfsFilesystemDetailResponseWrapper)
58
+ end
59
+ def retrieve(
60
+ # CloudFS filesystem ID
61
+ id,
62
+ request_options: {}
63
+ )
64
+ end
65
+
66
+ # Updates a CloudFS filesystem. Only `name` can be changed; other fields are
67
+ # immutable and unknown fields are rejected with a `400`. Renaming to a name that
68
+ # already exists in your organization returns a `422`.
69
+ sig do
70
+ params(
71
+ id: String,
72
+ name: String,
73
+ request_options: Telnyx::RequestOptions::OrHash
74
+ ).returns(Telnyx::Storage::CloudfsFilesystemDetailResponseWrapper)
75
+ end
76
+ def update(
77
+ # CloudFS filesystem ID
78
+ id,
79
+ # New filesystem name, unique within your organization. Names are trimmed and
80
+ # lowercased; after normalization they may contain lowercase letters, numbers,
81
+ # `.`, `_`, and `-` only.
82
+ name: nil,
83
+ request_options: {}
84
+ )
85
+ end
86
+
87
+ # Lists the CloudFS filesystems for the authenticated user's organization. Results
88
+ # use cursor-based pagination: fetch the next page by passing `meta.cursors.after`
89
+ # as `page[after]`, or follow the `meta.next` URL.
90
+ sig do
91
+ params(
92
+ filter_name: String,
93
+ filter_region: String,
94
+ filter_status:
95
+ Telnyx::Storage::CloudfListParams::FilterStatus::OrSymbol,
96
+ page_after: String,
97
+ page_before: String,
98
+ page_limit: Integer,
99
+ sort: Telnyx::Storage::CloudfListParams::Sort::OrSymbol,
100
+ request_options: Telnyx::RequestOptions::OrHash
101
+ ).returns(Telnyx::Models::Storage::CloudfListResponse)
102
+ end
103
+ def list(
104
+ # Return only the filesystem whose name matches exactly.
105
+ filter_name: nil,
106
+ # Return only filesystems in this region.
107
+ filter_region: nil,
108
+ # Return only filesystems with this status. Unrecognized values are ignored.
109
+ filter_status: nil,
110
+ # Opaque cursor from a previous response's `meta.cursors.after`; returns the page
111
+ # after it. Mutually exclusive with `page[before]`.
112
+ page_after: nil,
113
+ # Opaque cursor from a previous response's `meta.cursors.before`; returns the page
114
+ # before it. Mutually exclusive with `page[after]`.
115
+ page_before: nil,
116
+ # The number of filesystems to return per page. Values above 250 are treated
117
+ # as 250.
118
+ page_limit: nil,
119
+ # Sort order for the results: a field name for ascending, or the field name
120
+ # prefixed with `-` for descending.
121
+ sort: nil,
122
+ request_options: {}
123
+ )
124
+ end
125
+
126
+ # Permanently deletes a CloudFS filesystem, removing its S3 bucket and its
127
+ # metadata database. Deletion is synchronous: the response returns the
128
+ # filesystem's final state with status `deleted`. There is no restore. A
129
+ # filesystem that is still `provisioning` returns a `409`. If the filesystem still
130
+ # contains data, the request may be rejected with a `409` — drain the bucket and
131
+ # retry.
132
+ sig do
133
+ params(
134
+ id: String,
135
+ request_options: Telnyx::RequestOptions::OrHash
136
+ ).returns(Telnyx::Storage::CloudfsFilesystemDetailResponseWrapper)
137
+ end
138
+ def delete(
139
+ # CloudFS filesystem ID
140
+ id,
141
+ request_options: {}
142
+ )
143
+ end
144
+
145
+ # @api private
146
+ sig { params(client: Telnyx::Client).returns(T.attached_class) }
147
+ def self.new(client:)
148
+ end
149
+ end
150
+ end
151
+ end
152
+ end
@@ -20,6 +20,11 @@ module Telnyx
20
20
  sig { returns(Telnyx::Resources::Storage::Kvs) }
21
21
  attr_reader :kvs
22
22
 
23
+ # Manage CloudFS filesystems — JuiceFS-compatible filesystems backed by Telnyx
24
+ # Cloud Storage
25
+ sig { returns(Telnyx::Resources::Storage::Cloudfs) }
26
+ attr_reader :cloudfs
27
+
23
28
  # List Migration Source coverage
24
29
  sig do
25
30
  params(request_options: Telnyx::RequestOptions::OrHash).returns(
@@ -0,0 +1,175 @@
1
+ module Telnyx
2
+ module Models
3
+ module AI
4
+ module Anthropic
5
+ type v1_messages_params =
6
+ {
7
+ max_tokens: Integer,
8
+ messages: ::Array[::Hash[Symbol, top]],
9
+ model: String,
10
+ api_key_ref: String,
11
+ billing_group_id: String,
12
+ fallback_config: ::Hash[Symbol, top],
13
+ max_retries: Integer,
14
+ mcp_servers: ::Array[::Hash[Symbol, top]],
15
+ metadata: ::Hash[Symbol, top],
16
+ service_tier: String,
17
+ stop_sequences: ::Array[String],
18
+ stream: bool,
19
+ system_: Telnyx::Models::AI::Anthropic::V1MessagesParams::system_,
20
+ temperature: Float,
21
+ thinking: ::Hash[Symbol, top],
22
+ timeout: Float,
23
+ tool_choice: ::Hash[Symbol, top],
24
+ tools: ::Array[::Hash[Symbol, top]],
25
+ top_k: Integer,
26
+ top_p: Float
27
+ }
28
+ & Telnyx::Internal::Type::request_parameters
29
+
30
+ class V1MessagesParams < Telnyx::Internal::Type::BaseModel
31
+ extend Telnyx::Internal::Type::RequestParameters::Converter
32
+ include Telnyx::Internal::Type::RequestParameters
33
+
34
+ attr_accessor max_tokens: Integer
35
+
36
+ attr_accessor messages: ::Array[::Hash[Symbol, top]]
37
+
38
+ attr_accessor model: String
39
+
40
+ attr_reader api_key_ref: String?
41
+
42
+ def api_key_ref=: (String) -> String
43
+
44
+ attr_reader billing_group_id: String?
45
+
46
+ def billing_group_id=: (String) -> String
47
+
48
+ attr_reader fallback_config: ::Hash[Symbol, top]?
49
+
50
+ def fallback_config=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top]
51
+
52
+ attr_reader max_retries: Integer?
53
+
54
+ def max_retries=: (Integer) -> Integer
55
+
56
+ attr_reader mcp_servers: ::Array[::Hash[Symbol, top]]?
57
+
58
+ def mcp_servers=: (
59
+ ::Array[::Hash[Symbol, top]]
60
+ ) -> ::Array[::Hash[Symbol, top]]
61
+
62
+ attr_reader metadata: ::Hash[Symbol, top]?
63
+
64
+ def metadata=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top]
65
+
66
+ attr_reader service_tier: String?
67
+
68
+ def service_tier=: (String) -> String
69
+
70
+ attr_reader stop_sequences: ::Array[String]?
71
+
72
+ def stop_sequences=: (::Array[String]) -> ::Array[String]
73
+
74
+ attr_reader stream: bool?
75
+
76
+ def stream=: (bool) -> bool
77
+
78
+ attr_reader system_: Telnyx::Models::AI::Anthropic::V1MessagesParams::system_?
79
+
80
+ def system_=: (
81
+ Telnyx::Models::AI::Anthropic::V1MessagesParams::system_
82
+ ) -> Telnyx::Models::AI::Anthropic::V1MessagesParams::system_
83
+
84
+ attr_reader temperature: Float?
85
+
86
+ def temperature=: (Float) -> Float
87
+
88
+ attr_reader thinking: ::Hash[Symbol, top]?
89
+
90
+ def thinking=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top]
91
+
92
+ attr_reader timeout: Float?
93
+
94
+ def timeout=: (Float) -> Float
95
+
96
+ attr_reader tool_choice: ::Hash[Symbol, top]?
97
+
98
+ def tool_choice=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top]
99
+
100
+ attr_reader tools: ::Array[::Hash[Symbol, top]]?
101
+
102
+ def tools=: (
103
+ ::Array[::Hash[Symbol, top]]
104
+ ) -> ::Array[::Hash[Symbol, top]]
105
+
106
+ attr_reader top_k: Integer?
107
+
108
+ def top_k=: (Integer) -> Integer
109
+
110
+ attr_reader top_p: Float?
111
+
112
+ def top_p=: (Float) -> Float
113
+
114
+ def initialize: (
115
+ max_tokens: Integer,
116
+ messages: ::Array[::Hash[Symbol, top]],
117
+ model: String,
118
+ ?api_key_ref: String,
119
+ ?billing_group_id: String,
120
+ ?fallback_config: ::Hash[Symbol, top],
121
+ ?max_retries: Integer,
122
+ ?mcp_servers: ::Array[::Hash[Symbol, top]],
123
+ ?metadata: ::Hash[Symbol, top],
124
+ ?service_tier: String,
125
+ ?stop_sequences: ::Array[String],
126
+ ?stream: bool,
127
+ ?system_: Telnyx::Models::AI::Anthropic::V1MessagesParams::system_,
128
+ ?temperature: Float,
129
+ ?thinking: ::Hash[Symbol, top],
130
+ ?timeout: Float,
131
+ ?tool_choice: ::Hash[Symbol, top],
132
+ ?tools: ::Array[::Hash[Symbol, top]],
133
+ ?top_k: Integer,
134
+ ?top_p: Float,
135
+ ?request_options: Telnyx::request_opts
136
+ ) -> void
137
+
138
+ def to_hash: -> {
139
+ max_tokens: Integer,
140
+ messages: ::Array[::Hash[Symbol, top]],
141
+ model: String,
142
+ api_key_ref: String,
143
+ billing_group_id: String,
144
+ fallback_config: ::Hash[Symbol, top],
145
+ max_retries: Integer,
146
+ mcp_servers: ::Array[::Hash[Symbol, top]],
147
+ metadata: ::Hash[Symbol, top],
148
+ service_tier: String,
149
+ stop_sequences: ::Array[String],
150
+ stream: bool,
151
+ system_: Telnyx::Models::AI::Anthropic::V1MessagesParams::system_,
152
+ temperature: Float,
153
+ thinking: ::Hash[Symbol, top],
154
+ timeout: Float,
155
+ tool_choice: ::Hash[Symbol, top],
156
+ tools: ::Array[::Hash[Symbol, top]],
157
+ top_k: Integer,
158
+ top_p: Float,
159
+ request_options: Telnyx::RequestOptions
160
+ }
161
+
162
+ type system_ = String | ::Array[::Hash[Symbol, top]]
163
+
164
+ module System
165
+ extend Telnyx::Internal::Type::Union
166
+
167
+ def self?.variants: -> ::Array[Telnyx::Models::AI::Anthropic::V1MessagesParams::system_]
168
+
169
+ UnionMember1Array: Telnyx::Internal::Type::Converter
170
+ end
171
+ end
172
+ end
173
+ end
174
+ end
175
+ end
@@ -0,0 +1,11 @@
1
+ module Telnyx
2
+ module Models
3
+ module AI
4
+ module Anthropic
5
+ type v1_messages_response = ::Hash[Symbol, top]
6
+
7
+ V1MessagesResponse: Telnyx::Internal::Type::Converter
8
+ end
9
+ end
10
+ end
11
+ end
@@ -13,6 +13,7 @@ module Telnyx
13
13
  | Telnyx::AI::AssistantTool::SendDtmf
14
14
  | Telnyx::AI::AssistantTool::SendMessage
15
15
  | Telnyx::AI::AssistantTool::SkipTurn
16
+ | Telnyx::AI::AssistantTool::Pay
16
17
 
17
18
  module AssistantTool
18
19
  extend Telnyx::Internal::Type::Union
@@ -923,6 +924,18 @@ module Telnyx
923
924
  end
924
925
  end
925
926
 
927
+ type pay = { pay: Telnyx::AI::PayToolParams, type: :pay }
928
+
929
+ class Pay < Telnyx::Internal::Type::BaseModel
930
+ attr_accessor pay: Telnyx::AI::PayToolParams
931
+
932
+ attr_accessor type: :pay
933
+
934
+ def initialize: (pay: Telnyx::AI::PayToolParams, ?type: :pay) -> void
935
+
936
+ def to_hash: -> { pay: Telnyx::AI::PayToolParams, type: :pay }
937
+ end
938
+
926
939
  def self?.variants: -> ::Array[Telnyx::Models::AI::assistant_tool]
927
940
  end
928
941
  end
@@ -0,0 +1,74 @@
1
+ module Telnyx
2
+ module Models
3
+ module AI
4
+ module Conversations
5
+ type conversation_insight_retrieve_aggregates_params =
6
+ {
7
+ created_at: String,
8
+ group_by: ::Array[String],
9
+ insight_id: String,
10
+ metadata: Telnyx::AI::Conversations::ConversationInsightRetrieveAggregatesParams::Metadata,
11
+ show: ::Array[String]
12
+ }
13
+ & Telnyx::Internal::Type::request_parameters
14
+
15
+ class ConversationInsightRetrieveAggregatesParams < Telnyx::Internal::Type::BaseModel
16
+ extend Telnyx::Internal::Type::RequestParameters::Converter
17
+ include Telnyx::Internal::Type::RequestParameters
18
+
19
+ attr_reader created_at: String?
20
+
21
+ def created_at=: (String) -> String
22
+
23
+ attr_reader group_by: ::Array[String]?
24
+
25
+ def group_by=: (::Array[String]) -> ::Array[String]
26
+
27
+ attr_reader insight_id: String?
28
+
29
+ def insight_id=: (String) -> String
30
+
31
+ attr_reader metadata: Telnyx::AI::Conversations::ConversationInsightRetrieveAggregatesParams::Metadata?
32
+
33
+ def metadata=: (
34
+ Telnyx::AI::Conversations::ConversationInsightRetrieveAggregatesParams::Metadata
35
+ ) -> Telnyx::AI::Conversations::ConversationInsightRetrieveAggregatesParams::Metadata
36
+
37
+ attr_reader show: ::Array[String]?
38
+
39
+ def show=: (::Array[String]) -> ::Array[String]
40
+
41
+ def initialize: (
42
+ ?created_at: String,
43
+ ?group_by: ::Array[String],
44
+ ?insight_id: String,
45
+ ?metadata: Telnyx::AI::Conversations::ConversationInsightRetrieveAggregatesParams::Metadata,
46
+ ?show: ::Array[String],
47
+ ?request_options: Telnyx::request_opts
48
+ ) -> void
49
+
50
+ def to_hash: -> {
51
+ created_at: String,
52
+ group_by: ::Array[String],
53
+ insight_id: String,
54
+ metadata: Telnyx::AI::Conversations::ConversationInsightRetrieveAggregatesParams::Metadata,
55
+ show: ::Array[String],
56
+ request_options: Telnyx::RequestOptions
57
+ }
58
+
59
+ type metadata = { assistant_id: String }
60
+
61
+ class Metadata < Telnyx::Internal::Type::BaseModel
62
+ attr_reader assistant_id: String?
63
+
64
+ def assistant_id=: (String) -> String
65
+
66
+ def initialize: (?assistant_id: String) -> void
67
+
68
+ def to_hash: -> { assistant_id: String }
69
+ end
70
+ end
71
+ end
72
+ end
73
+ end
74
+ end
@@ -0,0 +1,34 @@
1
+ module Telnyx
2
+ module Models
3
+ module AI
4
+ module Conversations
5
+ type conversation_insight_retrieve_aggregates_response =
6
+ {
7
+ data: ::Array[Telnyx::Models::AI::Conversations::ConversationInsightRetrieveAggregatesResponse::Data]
8
+ }
9
+
10
+ class ConversationInsightRetrieveAggregatesResponse < Telnyx::Internal::Type::BaseModel
11
+ attr_accessor data: ::Array[Telnyx::Models::AI::Conversations::ConversationInsightRetrieveAggregatesResponse::Data]
12
+
13
+ def initialize: (
14
+ data: ::Array[Telnyx::Models::AI::Conversations::ConversationInsightRetrieveAggregatesResponse::Data]
15
+ ) -> void
16
+
17
+ def to_hash: -> {
18
+ data: ::Array[Telnyx::Models::AI::Conversations::ConversationInsightRetrieveAggregatesResponse::Data]
19
+ }
20
+
21
+ type data = { record_count: Integer }
22
+
23
+ class Data < Telnyx::Internal::Type::BaseModel
24
+ attr_accessor record_count: Integer
25
+
26
+ def initialize: (record_count: Integer) -> void
27
+
28
+ def to_hash: -> { record_count: Integer }
29
+ end
30
+ end
31
+ end
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,41 @@
1
+ module Telnyx
2
+ module Models
3
+ module AI
4
+ type pay_tool_params =
5
+ {
6
+ connector_name: String,
7
+ currency: String,
8
+ description: String?,
9
+ payment_method: String
10
+ }
11
+
12
+ class PayToolParams < Telnyx::Internal::Type::BaseModel
13
+ attr_accessor connector_name: String
14
+
15
+ attr_reader currency: String?
16
+
17
+ def currency=: (String) -> String
18
+
19
+ attr_accessor description: String?
20
+
21
+ attr_reader payment_method: String?
22
+
23
+ def payment_method=: (String) -> String
24
+
25
+ def initialize: (
26
+ connector_name: String,
27
+ ?currency: String,
28
+ ?description: String?,
29
+ ?payment_method: String
30
+ ) -> void
31
+
32
+ def to_hash: -> {
33
+ connector_name: String,
34
+ currency: String,
35
+ description: String?,
36
+ payment_method: String
37
+ }
38
+ end
39
+ end
40
+ end
41
+ end
@@ -9,6 +9,7 @@ module Telnyx
9
9
  function: ::Hash[Symbol, top],
10
10
  handoff: ::Hash[Symbol, top],
11
11
  invite: ::Hash[Symbol, top],
12
+ pay: Telnyx::AI::PayToolParams,
12
13
  retrieval: ::Hash[Symbol, top],
13
14
  timeout_ms: Integer,
14
15
  webhook: ::Hash[Symbol, top]
@@ -39,6 +40,10 @@ module Telnyx
39
40
 
40
41
  def invite=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top]
41
42
 
43
+ attr_reader pay: Telnyx::AI::PayToolParams?
44
+
45
+ def pay=: (Telnyx::AI::PayToolParams) -> Telnyx::AI::PayToolParams
46
+
42
47
  attr_reader retrieval: ::Hash[Symbol, top]?
43
48
 
44
49
  def retrieval=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top]
@@ -58,6 +63,7 @@ module Telnyx
58
63
  ?function: ::Hash[Symbol, top],
59
64
  ?handoff: ::Hash[Symbol, top],
60
65
  ?invite: ::Hash[Symbol, top],
66
+ ?pay: Telnyx::AI::PayToolParams,
61
67
  ?retrieval: ::Hash[Symbol, top],
62
68
  ?timeout_ms: Integer,
63
69
  ?webhook: ::Hash[Symbol, top],
@@ -71,6 +77,7 @@ module Telnyx
71
77
  function: ::Hash[Symbol, top],
72
78
  handoff: ::Hash[Symbol, top],
73
79
  invite: ::Hash[Symbol, top],
80
+ pay: Telnyx::AI::PayToolParams,
74
81
  retrieval: ::Hash[Symbol, top],
75
82
  timeout_ms: Integer,
76
83
  webhook: ::Hash[Symbol, top],
@@ -9,6 +9,7 @@ module Telnyx
9
9
  function: ::Hash[Symbol, top],
10
10
  handoff: ::Hash[Symbol, top],
11
11
  invite: ::Hash[Symbol, top],
12
+ pay: Telnyx::AI::PayToolParams,
12
13
  retrieval: ::Hash[Symbol, top],
13
14
  timeout_ms: Integer,
14
15
  type: String,
@@ -42,6 +43,10 @@ module Telnyx
42
43
 
43
44
  def invite=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top]
44
45
 
46
+ attr_reader pay: Telnyx::AI::PayToolParams?
47
+
48
+ def pay=: (Telnyx::AI::PayToolParams) -> Telnyx::AI::PayToolParams
49
+
45
50
  attr_reader retrieval: ::Hash[Symbol, top]?
46
51
 
47
52
  def retrieval=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top]
@@ -65,6 +70,7 @@ module Telnyx
65
70
  ?function: ::Hash[Symbol, top],
66
71
  ?handoff: ::Hash[Symbol, top],
67
72
  ?invite: ::Hash[Symbol, top],
73
+ ?pay: Telnyx::AI::PayToolParams,
68
74
  ?retrieval: ::Hash[Symbol, top],
69
75
  ?timeout_ms: Integer,
70
76
  ?type: String,
@@ -79,6 +85,7 @@ module Telnyx
79
85
  function: ::Hash[Symbol, top],
80
86
  handoff: ::Hash[Symbol, top],
81
87
  invite: ::Hash[Symbol, top],
88
+ pay: Telnyx::AI::PayToolParams,
82
89
  retrieval: ::Hash[Symbol, top],
83
90
  timeout_ms: Integer,
84
91
  type: String,