cadenya 1.7.0 → 1.9.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.
data/lib/cadenya/types.rb CHANGED
@@ -235,33 +235,38 @@ module Cadenya
235
235
  end
236
236
 
237
237
  class APIKeyInfo
238
- attr_reader :created_by
238
+ attr_reader :created_by, :workspaces
239
239
 
240
- def initialize(created_by: nil)
240
+ def initialize(created_by: nil, workspaces: nil)
241
241
  @created_by = created_by
242
+ @workspaces = workspaces
242
243
  end
243
244
 
244
245
  def self.from_json(data)
245
246
  new(
246
247
  created_by: data["createdBy"].nil? ? nil : Types::Profile.from_json(data["createdBy"]),
248
+ workspaces: data["workspaces"].nil? ? nil : (data["workspaces"]).map { |item| Types::AccountResourceMetadata.from_json(item) },
247
249
  )
248
250
  end
249
251
 
250
252
  def to_h
251
253
  {
252
254
  created_by: Util.plain(@created_by),
255
+ workspaces: Util.plain(@workspaces),
253
256
  }.reject { |_k, v| v.nil? }
254
257
  end
255
258
  end
256
259
 
257
260
  class APIKeySpec
258
- attr_reader :token, :description, :permissions, :system
261
+ attr_reader :token, :description, :permissions, :all_workspaces, :workspace_assignments, :default
259
262
 
260
- def initialize(token: nil, description: nil, permissions: nil, system: nil)
263
+ def initialize(token: nil, description: nil, permissions: nil, all_workspaces: nil, workspace_assignments: nil, default: nil)
261
264
  @token = token
262
265
  @description = description
263
266
  @permissions = permissions
264
- @system = system
267
+ @all_workspaces = all_workspaces
268
+ @workspace_assignments = workspace_assignments
269
+ @default = default
265
270
  end
266
271
 
267
272
  def self.from_json(data)
@@ -269,7 +274,9 @@ module Cadenya
269
274
  token: data["token"],
270
275
  description: data["description"],
271
276
  permissions: data["permissions"],
272
- system: data["system"],
277
+ all_workspaces: data["allWorkspaces"],
278
+ workspace_assignments: data["workspaceAssignments"].nil? ? nil : (data["workspaceAssignments"]).map { |item| Types::APIKeyWorkspaceAssignment.from_json(item) },
279
+ default: data["default"],
273
280
  )
274
281
  end
275
282
 
@@ -278,7 +285,29 @@ module Cadenya
278
285
  token: Util.plain(@token),
279
286
  description: Util.plain(@description),
280
287
  permissions: Util.plain(@permissions),
281
- system: Util.plain(@system),
288
+ all_workspaces: Util.plain(@all_workspaces),
289
+ workspace_assignments: Util.plain(@workspace_assignments),
290
+ default: Util.plain(@default),
291
+ }.reject { |_k, v| v.nil? }
292
+ end
293
+ end
294
+
295
+ class APIKeyWorkspaceAssignment
296
+ attr_reader :workspace_id
297
+
298
+ def initialize(workspace_id: nil)
299
+ @workspace_id = workspace_id
300
+ end
301
+
302
+ def self.from_json(data)
303
+ new(
304
+ workspace_id: data["workspaceId"],
305
+ )
306
+ end
307
+
308
+ def to_h
309
+ {
310
+ workspace_id: Util.plain(@workspace_id),
282
311
  }.reject { |_k, v| v.nil? }
283
312
  end
284
313
  end
@@ -422,6 +451,29 @@ module Cadenya
422
451
  end
423
452
  end
424
453
 
454
+ class AddAPIKeyWorkspaceRequest
455
+ attr_reader :id, :workspace_id
456
+
457
+ def initialize(id: nil, workspace_id: nil)
458
+ @id = id
459
+ @workspace_id = workspace_id
460
+ end
461
+
462
+ def self.from_json(data)
463
+ new(
464
+ id: data["id"],
465
+ workspace_id: data["workspaceId"],
466
+ )
467
+ end
468
+
469
+ def to_h
470
+ {
471
+ id: Util.plain(@id),
472
+ workspace_id: Util.plain(@workspace_id),
473
+ }.reject { |_k, v| v.nil? }
474
+ end
475
+ end
476
+
425
477
  def self.decode_AddAgentVariationAssignmentRequest(data)
426
478
  return nil if data.nil? || data["type"].to_s.empty?
427
479
  case data["type"]
@@ -817,9 +869,9 @@ module Cadenya
817
869
  AgentSpecVariationSelectionMode = ["VARIATION_SELECTION_MODE_UNSPECIFIED", "VARIATION_SELECTION_MODE_RANDOM", "VARIATION_SELECTION_MODE_WEIGHTED"].freeze
818
870
 
819
871
  class AgentSpec
820
- attr_reader :description, :webhook_events_url, :variation_selection_mode, :system_prompt_data_schema, :output_definition, :enable_episodic_memory, :episodic_memory_ttl
872
+ attr_reader :description, :webhook_events_url, :variation_selection_mode, :system_prompt_data_schema, :output_definition, :enable_episodic_memory, :episodic_memory_ttl, :always_include_subject_memories
821
873
 
822
- def initialize(description: nil, webhook_events_url: nil, variation_selection_mode: nil, system_prompt_data_schema: nil, output_definition: nil, enable_episodic_memory: nil, episodic_memory_ttl: nil)
874
+ def initialize(description: nil, webhook_events_url: nil, variation_selection_mode: nil, system_prompt_data_schema: nil, output_definition: nil, enable_episodic_memory: nil, episodic_memory_ttl: nil, always_include_subject_memories: nil)
823
875
  @description = description
824
876
  @webhook_events_url = webhook_events_url
825
877
  @variation_selection_mode = variation_selection_mode
@@ -827,6 +879,7 @@ module Cadenya
827
879
  @output_definition = output_definition
828
880
  @enable_episodic_memory = enable_episodic_memory
829
881
  @episodic_memory_ttl = episodic_memory_ttl
882
+ @always_include_subject_memories = always_include_subject_memories
830
883
  end
831
884
 
832
885
  def self.from_json(data)
@@ -838,6 +891,7 @@ module Cadenya
838
891
  output_definition: data["outputDefinition"],
839
892
  enable_episodic_memory: data["enableEpisodicMemory"],
840
893
  episodic_memory_ttl: data["episodicMemoryTtl"],
894
+ always_include_subject_memories: data["alwaysIncludeSubjectMemories"],
841
895
  )
842
896
  end
843
897
 
@@ -850,6 +904,7 @@ module Cadenya
850
904
  output_definition: Util.plain(@output_definition),
851
905
  enable_episodic_memory: Util.plain(@enable_episodic_memory),
852
906
  episodic_memory_ttl: Util.plain(@episodic_memory_ttl),
907
+ always_include_subject_memories: Util.plain(@always_include_subject_memories),
853
908
  }.reject { |_k, v| v.nil? }
854
909
  end
855
910
  end
@@ -1029,9 +1084,9 @@ module Cadenya
1029
1084
  AgentVariationSpecModelConfigReasoningEffort = ["REASONING_EFFORT_UNSPECIFIED", "REASONING_EFFORT_NONE", "REASONING_EFFORT_LOW", "REASONING_EFFORT_MEDIUM", "REASONING_EFFORT_HIGH"].freeze
1030
1085
 
1031
1086
  class AgentVariationSpec_ModelConfig
1032
- attr_reader :model_id, :temperature, :top_p, :top_k, :stop_sequences, :max_output_tokens, :reasoning_effort, :caching_enabled
1087
+ attr_reader :model_id, :temperature, :top_p, :top_k, :stop_sequences, :max_output_tokens, :reasoning_effort, :caching_enabled, :streaming_enabled
1033
1088
 
1034
- def initialize(model_id: nil, temperature: nil, top_p: nil, top_k: nil, stop_sequences: nil, max_output_tokens: nil, reasoning_effort: nil, caching_enabled: nil)
1089
+ def initialize(model_id: nil, temperature: nil, top_p: nil, top_k: nil, stop_sequences: nil, max_output_tokens: nil, reasoning_effort: nil, caching_enabled: nil, streaming_enabled: nil)
1035
1090
  @model_id = model_id
1036
1091
  @temperature = temperature
1037
1092
  @top_p = top_p
@@ -1040,6 +1095,7 @@ module Cadenya
1040
1095
  @max_output_tokens = max_output_tokens
1041
1096
  @reasoning_effort = reasoning_effort
1042
1097
  @caching_enabled = caching_enabled
1098
+ @streaming_enabled = streaming_enabled
1043
1099
  end
1044
1100
 
1045
1101
  def self.from_json(data)
@@ -1052,6 +1108,7 @@ module Cadenya
1052
1108
  max_output_tokens: data["maxOutputTokens"],
1053
1109
  reasoning_effort: data["reasoningEffort"],
1054
1110
  caching_enabled: data["cachingEnabled"],
1111
+ streaming_enabled: data["streamingEnabled"],
1055
1112
  )
1056
1113
  end
1057
1114
 
@@ -1065,6 +1122,7 @@ module Cadenya
1065
1122
  max_output_tokens: Util.plain(@max_output_tokens),
1066
1123
  reasoning_effort: Util.plain(@reasoning_effort),
1067
1124
  caching_enabled: Util.plain(@caching_enabled),
1125
+ streaming_enabled: Util.plain(@streaming_enabled),
1068
1126
  }.reject { |_k, v| v.nil? }
1069
1127
  end
1070
1128
  end
@@ -1237,17 +1295,23 @@ module Cadenya
1237
1295
  end
1238
1296
 
1239
1297
  class AssistantMessage
1240
- attr_reader :content, :tool_calls
1298
+ attr_reader :content, :tool_calls, :usage, :model, :completion_id
1241
1299
 
1242
- def initialize(content: nil, tool_calls: nil)
1300
+ def initialize(content: nil, tool_calls: nil, usage: nil, model: nil, completion_id: nil)
1243
1301
  @content = content
1244
1302
  @tool_calls = tool_calls
1303
+ @usage = usage
1304
+ @model = model
1305
+ @completion_id = completion_id
1245
1306
  end
1246
1307
 
1247
1308
  def self.from_json(data)
1248
1309
  new(
1249
1310
  content: data["content"],
1250
1311
  tool_calls: data["toolCalls"].nil? ? nil : (data["toolCalls"]).map { |item| Types::AssistantToolCall.from_json(item) },
1312
+ usage: data["usage"].nil? ? nil : Types::TokenUsage.from_json(data["usage"]),
1313
+ model: data["model"].nil? ? nil : Types::ResourceMetadata.from_json(data["model"]),
1314
+ completion_id: data["completionId"],
1251
1315
  )
1252
1316
  end
1253
1317
 
@@ -1255,17 +1319,50 @@ module Cadenya
1255
1319
  {
1256
1320
  content: Util.plain(@content),
1257
1321
  tool_calls: Util.plain(@tool_calls),
1322
+ usage: Util.plain(@usage),
1323
+ model: Util.plain(@model),
1324
+ completion_id: Util.plain(@completion_id),
1325
+ }.reject { |_k, v| v.nil? }
1326
+ end
1327
+ end
1328
+
1329
+ class AssistantMessageDelta
1330
+ attr_reader :completion_id, :text, :after_sequence, :offset
1331
+
1332
+ def initialize(completion_id: nil, text: nil, after_sequence: nil, offset: nil)
1333
+ @completion_id = completion_id
1334
+ @text = text
1335
+ @after_sequence = after_sequence
1336
+ @offset = offset
1337
+ end
1338
+
1339
+ def self.from_json(data)
1340
+ new(
1341
+ completion_id: data["completionId"],
1342
+ text: data["text"],
1343
+ after_sequence: data["afterSequence"],
1344
+ offset: data["offset"],
1345
+ )
1346
+ end
1347
+
1348
+ def to_h
1349
+ {
1350
+ completion_id: Util.plain(@completion_id),
1351
+ text: Util.plain(@text),
1352
+ after_sequence: Util.plain(@after_sequence),
1353
+ offset: Util.plain(@offset),
1258
1354
  }.reject { |_k, v| v.nil? }
1259
1355
  end
1260
1356
  end
1261
1357
 
1262
1358
  class AssistantToolCall
1263
- attr_reader :tool, :arguments, :function_name
1359
+ attr_reader :tool, :arguments, :function_name, :tool_call_id
1264
1360
 
1265
- def initialize(tool: nil, arguments: nil, function_name: nil)
1361
+ def initialize(tool: nil, arguments: nil, function_name: nil, tool_call_id: nil)
1266
1362
  @tool = tool
1267
1363
  @arguments = arguments
1268
1364
  @function_name = function_name
1365
+ @tool_call_id = tool_call_id
1269
1366
  end
1270
1367
 
1271
1368
  def self.from_json(data)
@@ -1273,6 +1370,7 @@ module Cadenya
1273
1370
  tool: data["tool"].nil? ? nil : Types.decode_CallableTool(data["tool"]),
1274
1371
  arguments: data["arguments"],
1275
1372
  function_name: data["functionName"],
1373
+ tool_call_id: data["toolCallId"],
1276
1374
  )
1277
1375
  end
1278
1376
 
@@ -1281,6 +1379,58 @@ module Cadenya
1281
1379
  tool: Util.plain(@tool),
1282
1380
  arguments: Util.plain(@arguments),
1283
1381
  function_name: Util.plain(@function_name),
1382
+ tool_call_id: Util.plain(@tool_call_id),
1383
+ }.reject { |_k, v| v.nil? }
1384
+ end
1385
+ end
1386
+
1387
+ AutoModeConfigPassingMode = ["PASSING_MODE_UNSPECIFIED", "PASSING_MODE_ALL", "PASSING_MODE_NONE", "PASSING_MODE_MOST"].freeze
1388
+
1389
+ class AutoModeConfig
1390
+ attr_reader :questions, :passing_mode, :failure_message
1391
+
1392
+ def initialize(questions: nil, passing_mode: nil, failure_message: nil)
1393
+ @questions = questions
1394
+ @passing_mode = passing_mode
1395
+ @failure_message = failure_message
1396
+ end
1397
+
1398
+ def self.from_json(data)
1399
+ new(
1400
+ questions: data["questions"].nil? ? nil : (data["questions"]).map { |item| Types::AutoModeQuestion.from_json(item) },
1401
+ passing_mode: data["passingMode"],
1402
+ failure_message: data["failureMessage"],
1403
+ )
1404
+ end
1405
+
1406
+ def to_h
1407
+ {
1408
+ questions: Util.plain(@questions),
1409
+ passing_mode: Util.plain(@passing_mode),
1410
+ failure_message: Util.plain(@failure_message),
1411
+ }.reject { |_k, v| v.nil? }
1412
+ end
1413
+ end
1414
+
1415
+ class AutoModeQuestion
1416
+ attr_reader :question, :threshold
1417
+
1418
+ def initialize(question: nil, threshold: nil)
1419
+ @question = question
1420
+ @threshold = threshold
1421
+ end
1422
+
1423
+ def self.from_json(data)
1424
+ new(
1425
+ question: data["question"],
1426
+ threshold: data["threshold"],
1427
+ )
1428
+ end
1429
+
1430
+ def to_h
1431
+ {
1432
+ question: Util.plain(@question),
1433
+ threshold: Util.plain(@threshold),
1284
1434
  }.reject { |_k, v| v.nil? }
1285
1435
  end
1286
1436
  end
@@ -1432,6 +1582,16 @@ module Cadenya
1432
1582
  end
1433
1583
  end
1434
1584
 
1585
+ class Capability_Streaming
1586
+ def self.from_json(_data)
1587
+ new
1588
+ end
1589
+
1590
+ def to_h
1591
+ {}
1592
+ end
1593
+ end
1594
+
1435
1595
  class Capability_Temperature
1436
1596
  def self.from_json(_data)
1437
1597
  new
@@ -1462,6 +1622,55 @@ module Cadenya
1462
1622
  end
1463
1623
  end
1464
1624
 
1625
+ class ClientToolDefinition
1626
+ attr_reader :name, :description, :parameters, :requires_approval
1627
+
1628
+ def initialize(name: nil, description: nil, parameters: nil, requires_approval: nil)
1629
+ @name = name
1630
+ @description = description
1631
+ @parameters = parameters
1632
+ @requires_approval = requires_approval
1633
+ end
1634
+
1635
+ def self.from_json(data)
1636
+ new(
1637
+ name: data["name"],
1638
+ description: data["description"],
1639
+ parameters: data["parameters"],
1640
+ requires_approval: data["requiresApproval"],
1641
+ )
1642
+ end
1643
+
1644
+ def to_h
1645
+ {
1646
+ name: Util.plain(@name),
1647
+ description: Util.plain(@description),
1648
+ parameters: Util.plain(@parameters),
1649
+ requires_approval: Util.plain(@requires_approval),
1650
+ }.reject { |_k, v| v.nil? }
1651
+ end
1652
+ end
1653
+
1654
+ class ClientTools
1655
+ attr_reader :definitions
1656
+
1657
+ def initialize(definitions: nil)
1658
+ @definitions = definitions
1659
+ end
1660
+
1661
+ def self.from_json(data)
1662
+ new(
1663
+ definitions: data["definitions"].nil? ? nil : (data["definitions"]).map { |item| Types::ClientToolDefinition.from_json(item) },
1664
+ )
1665
+ end
1666
+
1667
+ def to_h
1668
+ {
1669
+ definitions: Util.plain(@definitions),
1670
+ }.reject { |_k, v| v.nil? }
1671
+ end
1672
+ end
1673
+
1465
1674
  class CompactObjectiveRequest
1466
1675
  attr_reader :workspace_id, :objective_id, :compaction_config
1467
1676
 
@@ -1606,17 +1815,19 @@ module Cadenya
1606
1815
  end
1607
1816
 
1608
1817
  class Config_OpenAPI
1609
- attr_reader :path, :method
1818
+ attr_reader :path, :method, :server_url
1610
1819
 
1611
- def initialize(path: nil, method: nil)
1820
+ def initialize(path: nil, method: nil, server_url: nil)
1612
1821
  @path = path
1613
1822
  @method = method
1823
+ @server_url = server_url
1614
1824
  end
1615
1825
 
1616
1826
  def self.from_json(data)
1617
1827
  new(
1618
1828
  path: data["path"],
1619
1829
  method: data["method"],
1830
+ server_url: data["serverUrl"],
1620
1831
  )
1621
1832
  end
1622
1833
 
@@ -1624,6 +1835,7 @@ module Cadenya
1624
1835
  {
1625
1836
  path: Util.plain(@path),
1626
1837
  method: Util.plain(@method),
1838
+ server_url: Util.plain(@server_url),
1627
1839
  }.reject { |_k, v| v.nil? }
1628
1840
  end
1629
1841
  end
@@ -1766,19 +1978,17 @@ module Cadenya
1766
1978
  end
1767
1979
 
1768
1980
  class CreateAPIKeyRequest
1769
- attr_reader :metadata, :spec, :workspace_id
1981
+ attr_reader :metadata, :spec
1770
1982
 
1771
- def initialize(metadata: nil, spec: nil, workspace_id: nil)
1983
+ def initialize(metadata: nil, spec: nil)
1772
1984
  @metadata = metadata
1773
1985
  @spec = spec
1774
- @workspace_id = workspace_id
1775
1986
  end
1776
1987
 
1777
1988
  def self.from_json(data)
1778
1989
  new(
1779
1990
  metadata: data["metadata"].nil? ? nil : Types::CreateAccountResourceMetadata.from_json(data["metadata"]),
1780
1991
  spec: data["spec"].nil? ? nil : Types::APIKeySpec.from_json(data["spec"]),
1781
- workspace_id: data["workspaceId"],
1782
1992
  )
1783
1993
  end
1784
1994
 
@@ -1786,7 +1996,6 @@ module Cadenya
1786
1996
  {
1787
1997
  metadata: Util.plain(@metadata),
1788
1998
  spec: Util.plain(@spec),
1789
- workspace_id: Util.plain(@workspace_id),
1790
1999
  }.reject { |_k, v| v.nil? }
1791
2000
  end
1792
2001
  end
@@ -1931,9 +2140,9 @@ module Cadenya
1931
2140
  end
1932
2141
 
1933
2142
  class CreateAndStreamObjectiveRequest
1934
- attr_reader :workspace_id, :agent_id, :variation_id, :metadata, :system_prompt_data, :first_user_message, :secrets, :memory_cascade, :first_user_message_data, :episodic_memory, :tenant, :subject, :pinned_parameters
2143
+ attr_reader :workspace_id, :agent_id, :variation_id, :metadata, :system_prompt_data, :first_user_message, :secrets, :memory_cascade, :first_user_message_data, :episodic_memory, :tenant, :subject, :pinned_parameters, :client_tools, :include_deltas
1935
2144
 
1936
- def initialize(workspace_id: nil, agent_id: nil, variation_id: nil, metadata: nil, system_prompt_data: nil, first_user_message: nil, secrets: nil, memory_cascade: nil, first_user_message_data: nil, episodic_memory: nil, tenant: nil, subject: nil, pinned_parameters: nil)
2145
+ def initialize(workspace_id: nil, agent_id: nil, variation_id: nil, metadata: nil, system_prompt_data: nil, first_user_message: nil, secrets: nil, memory_cascade: nil, first_user_message_data: nil, episodic_memory: nil, tenant: nil, subject: nil, pinned_parameters: nil, client_tools: nil, include_deltas: nil)
1937
2146
  @workspace_id = workspace_id
1938
2147
  @agent_id = agent_id
1939
2148
  @variation_id = variation_id
@@ -1947,6 +2156,8 @@ module Cadenya
1947
2156
  @tenant = tenant
1948
2157
  @subject = subject
1949
2158
  @pinned_parameters = pinned_parameters
2159
+ @client_tools = client_tools
2160
+ @include_deltas = include_deltas
1950
2161
  end
1951
2162
 
1952
2163
  def self.from_json(data)
@@ -1964,6 +2175,8 @@ module Cadenya
1964
2175
  tenant: data["tenant"].nil? ? nil : Types::TenantAssertion.from_json(data["tenant"]),
1965
2176
  subject: data["subject"].nil? ? nil : Types::SubjectAssertion.from_json(data["subject"]),
1966
2177
  pinned_parameters: data["pinnedParameters"],
2178
+ client_tools: data["clientTools"].nil? ? nil : Types::ClientTools.from_json(data["clientTools"]),
2179
+ include_deltas: data["includeDeltas"],
1967
2180
  )
1968
2181
  end
1969
2182
 
@@ -1982,6 +2195,8 @@ module Cadenya
1982
2195
  tenant: Util.plain(@tenant),
1983
2196
  subject: Util.plain(@subject),
1984
2197
  pinned_parameters: Util.plain(@pinned_parameters),
2198
+ client_tools: Util.plain(@client_tools),
2199
+ include_deltas: Util.plain(@include_deltas),
1985
2200
  }.reject { |_k, v| v.nil? }
1986
2201
  end
1987
2202
  end
@@ -2051,12 +2266,14 @@ module Cadenya
2051
2266
  end
2052
2267
 
2053
2268
  class CreateMemoryLayerRequest
2054
- attr_reader :workspace_id, :metadata, :spec
2269
+ attr_reader :workspace_id, :metadata, :spec, :tenant, :subject
2055
2270
 
2056
- def initialize(workspace_id: nil, metadata: nil, spec: nil)
2271
+ def initialize(workspace_id: nil, metadata: nil, spec: nil, tenant: nil, subject: nil)
2057
2272
  @workspace_id = workspace_id
2058
2273
  @metadata = metadata
2059
2274
  @spec = spec
2275
+ @tenant = tenant
2276
+ @subject = subject
2060
2277
  end
2061
2278
 
2062
2279
  def self.from_json(data)
@@ -2064,6 +2281,8 @@ module Cadenya
2064
2281
  workspace_id: data["workspaceId"],
2065
2282
  metadata: data["metadata"].nil? ? nil : Types::CreateResourceMetadata.from_json(data["metadata"]),
2066
2283
  spec: data["spec"].nil? ? nil : Types::MemoryLayerSpec.from_json(data["spec"]),
2284
+ tenant: data["tenant"].nil? ? nil : Types::TenantAssertion.from_json(data["tenant"]),
2285
+ subject: data["subject"].nil? ? nil : Types::SubjectAssertion.from_json(data["subject"]),
2067
2286
  )
2068
2287
  end
2069
2288
 
@@ -2072,6 +2291,8 @@ module Cadenya
2072
2291
  workspace_id: Util.plain(@workspace_id),
2073
2292
  metadata: Util.plain(@metadata),
2074
2293
  spec: Util.plain(@spec),
2294
+ tenant: Util.plain(@tenant),
2295
+ subject: Util.plain(@subject),
2075
2296
  }.reject { |_k, v| v.nil? }
2076
2297
  end
2077
2298
  end
@@ -2135,9 +2356,9 @@ module Cadenya
2135
2356
  end
2136
2357
 
2137
2358
  class CreateObjectiveRequest
2138
- attr_reader :workspace_id, :agent_id, :variation_id, :metadata, :system_prompt_data, :first_user_message, :secrets, :memory_cascade, :first_user_message_data, :episodic_memory, :tenant, :subject, :pinned_parameters
2359
+ attr_reader :workspace_id, :agent_id, :variation_id, :metadata, :system_prompt_data, :first_user_message, :secrets, :memory_cascade, :first_user_message_data, :episodic_memory, :tenant, :subject, :pinned_parameters, :client_tools
2139
2360
 
2140
- def initialize(workspace_id: nil, agent_id: nil, variation_id: nil, metadata: nil, system_prompt_data: nil, first_user_message: nil, secrets: nil, memory_cascade: nil, first_user_message_data: nil, episodic_memory: nil, tenant: nil, subject: nil, pinned_parameters: nil)
2361
+ def initialize(workspace_id: nil, agent_id: nil, variation_id: nil, metadata: nil, system_prompt_data: nil, first_user_message: nil, secrets: nil, memory_cascade: nil, first_user_message_data: nil, episodic_memory: nil, tenant: nil, subject: nil, pinned_parameters: nil, client_tools: nil)
2141
2362
  @workspace_id = workspace_id
2142
2363
  @agent_id = agent_id
2143
2364
  @variation_id = variation_id
@@ -2151,6 +2372,7 @@ module Cadenya
2151
2372
  @tenant = tenant
2152
2373
  @subject = subject
2153
2374
  @pinned_parameters = pinned_parameters
2375
+ @client_tools = client_tools
2154
2376
  end
2155
2377
 
2156
2378
  def self.from_json(data)
@@ -2168,6 +2390,7 @@ module Cadenya
2168
2390
  tenant: data["tenant"].nil? ? nil : Types::TenantAssertion.from_json(data["tenant"]),
2169
2391
  subject: data["subject"].nil? ? nil : Types::SubjectAssertion.from_json(data["subject"]),
2170
2392
  pinned_parameters: data["pinnedParameters"],
2393
+ client_tools: data["clientTools"].nil? ? nil : Types::ClientTools.from_json(data["clientTools"]),
2171
2394
  )
2172
2395
  end
2173
2396
 
@@ -2186,6 +2409,7 @@ module Cadenya
2186
2409
  tenant: Util.plain(@tenant),
2187
2410
  subject: Util.plain(@subject),
2188
2411
  pinned_parameters: Util.plain(@pinned_parameters),
2412
+ client_tools: Util.plain(@client_tools),
2189
2413
  }.reject { |_k, v| v.nil? }
2190
2414
  end
2191
2415
  end
@@ -2346,6 +2570,29 @@ module Cadenya
2346
2570
  end
2347
2571
  end
2348
2572
 
2573
+ class CreateTrustedEndpointRequest
2574
+ attr_reader :metadata, :spec
2575
+
2576
+ def initialize(metadata: nil, spec: nil)
2577
+ @metadata = metadata
2578
+ @spec = spec
2579
+ end
2580
+
2581
+ def self.from_json(data)
2582
+ new(
2583
+ metadata: data["metadata"].nil? ? nil : Types::CreateAccountResourceMetadata.from_json(data["metadata"]),
2584
+ spec: data["spec"].nil? ? nil : Types::TrustedEndpointSpec.from_json(data["spec"]),
2585
+ )
2586
+ end
2587
+
2588
+ def to_h
2589
+ {
2590
+ metadata: Util.plain(@metadata),
2591
+ spec: Util.plain(@spec),
2592
+ }.reject { |_k, v| v.nil? }
2593
+ end
2594
+ end
2595
+
2349
2596
  class CreateUploadRequest
2350
2597
  attr_reader :workspace_id, :metadata, :spec
2351
2598
 
@@ -2661,23 +2908,20 @@ module Cadenya
2661
2908
  end
2662
2909
 
2663
2910
  class DisableAPIKeyRequest
2664
- attr_reader :workspace_id, :id
2911
+ attr_reader :id
2665
2912
 
2666
- def initialize(workspace_id: nil, id: nil)
2667
- @workspace_id = workspace_id
2913
+ def initialize(id: nil)
2668
2914
  @id = id
2669
2915
  end
2670
2916
 
2671
2917
  def self.from_json(data)
2672
2918
  new(
2673
- workspace_id: data["workspaceId"],
2674
2919
  id: data["id"],
2675
2920
  )
2676
2921
  end
2677
2922
 
2678
2923
  def to_h
2679
2924
  {
2680
- workspace_id: Util.plain(@workspace_id),
2681
2925
  id: Util.plain(@id),
2682
2926
  }.reject { |_k, v| v.nil? }
2683
2927
  end
@@ -2707,23 +2951,20 @@ module Cadenya
2707
2951
  end
2708
2952
 
2709
2953
  class EnableAPIKeyRequest
2710
- attr_reader :workspace_id, :id
2954
+ attr_reader :id
2711
2955
 
2712
- def initialize(workspace_id: nil, id: nil)
2713
- @workspace_id = workspace_id
2956
+ def initialize(id: nil)
2714
2957
  @id = id
2715
2958
  end
2716
2959
 
2717
2960
  def self.from_json(data)
2718
2961
  new(
2719
- workspace_id: data["workspaceId"],
2720
2962
  id: data["id"],
2721
2963
  )
2722
2964
  end
2723
2965
 
2724
2966
  def to_h
2725
2967
  {
2726
- workspace_id: Util.plain(@workspace_id),
2727
2968
  id: Util.plain(@id),
2728
2969
  }.reject { |_k, v| v.nil? }
2729
2970
  end
@@ -3456,6 +3697,29 @@ module Cadenya
3456
3697
  end
3457
3698
  end
3458
3699
 
3700
+ class ListTrustedEndpointsResponse
3701
+ attr_reader :items, :pagination
3702
+
3703
+ def initialize(items: nil, pagination: nil)
3704
+ @items = items
3705
+ @pagination = pagination
3706
+ end
3707
+
3708
+ def self.from_json(data)
3709
+ new(
3710
+ items: data["items"].nil? ? nil : (data["items"]).map { |item| Types::TrustedEndpoint.from_json(item) },
3711
+ pagination: data["pagination"].nil? ? nil : Types::Page.from_json(data["pagination"]),
3712
+ )
3713
+ end
3714
+
3715
+ def to_h
3716
+ {
3717
+ items: Util.plain(@items),
3718
+ pagination: Util.plain(@pagination),
3719
+ }.reject { |_k, v| v.nil? }
3720
+ end
3721
+ end
3722
+
3459
3723
  class ListWidgetSessionsResponse
3460
3724
  attr_reader :items, :pagination
3461
3725
 
@@ -3772,13 +4036,15 @@ module Cadenya
3772
4036
  end
3773
4037
 
3774
4038
  class MemoryLayerInfo
3775
- attr_reader :entry_count, :created_by, :last_used_at, :agent
4039
+ attr_reader :entry_count, :created_by, :last_used_at, :agent, :tenant, :subject
3776
4040
 
3777
- def initialize(entry_count: nil, created_by: nil, last_used_at: nil, agent: nil)
4041
+ def initialize(entry_count: nil, created_by: nil, last_used_at: nil, agent: nil, tenant: nil, subject: nil)
3778
4042
  @entry_count = entry_count
3779
4043
  @created_by = created_by
3780
4044
  @last_used_at = last_used_at
3781
4045
  @agent = agent
4046
+ @tenant = tenant
4047
+ @subject = subject
3782
4048
  end
3783
4049
 
3784
4050
  def self.from_json(data)
@@ -3787,6 +4053,8 @@ module Cadenya
3787
4053
  created_by: data["createdBy"].nil? ? nil : Types::Profile.from_json(data["createdBy"]),
3788
4054
  last_used_at: data["lastUsedAt"].nil? ? nil : Time.iso8601(data["lastUsedAt"]),
3789
4055
  agent: data["agent"].nil? ? nil : Types::ResourceMetadata.from_json(data["agent"]),
4056
+ tenant: data["tenant"].nil? ? nil : Types::TenantReference.from_json(data["tenant"]),
4057
+ subject: data["subject"].nil? ? nil : Types::SubjectReference.from_json(data["subject"]),
3790
4058
  )
3791
4059
  end
3792
4060
 
@@ -3796,6 +4064,8 @@ module Cadenya
3796
4064
  created_by: Util.plain(@created_by),
3797
4065
  last_used_at: Util.plain(@last_used_at),
3798
4066
  agent: Util.plain(@agent),
4067
+ tenant: Util.plain(@tenant),
4068
+ subject: Util.plain(@subject),
3799
4069
  }.reject { |_k, v| v.nil? }
3800
4070
  end
3801
4071
  end
@@ -3803,15 +4073,17 @@ module Cadenya
3803
4073
  MemoryLayerSpecType = ["MEMORY_LAYER_TYPE_UNSPECIFIED", "MEMORY_LAYER_TYPE_EPISODIC", "MEMORY_LAYER_TYPE_SKILLS"].freeze
3804
4074
 
3805
4075
  class MemoryLayerSpec
3806
- attr_reader :type, :description, :system_managed, :expires_at, :agent_id, :episodic_key
4076
+ attr_reader :type, :description, :system_managed, :expires_at, :agent_id, :episodic_key, :tenant_id, :subject_id
3807
4077
 
3808
- def initialize(type: nil, description: nil, system_managed: nil, expires_at: nil, agent_id: nil, episodic_key: nil)
4078
+ def initialize(type: nil, description: nil, system_managed: nil, expires_at: nil, agent_id: nil, episodic_key: nil, tenant_id: nil, subject_id: nil)
3809
4079
  @type = type
3810
4080
  @description = description
3811
4081
  @system_managed = system_managed
3812
4082
  @expires_at = expires_at
3813
4083
  @agent_id = agent_id
3814
4084
  @episodic_key = episodic_key
4085
+ @tenant_id = tenant_id
4086
+ @subject_id = subject_id
3815
4087
  end
3816
4088
 
3817
4089
  def self.from_json(data)
@@ -3822,6 +4094,8 @@ module Cadenya
3822
4094
  expires_at: data["expiresAt"].nil? ? nil : Time.iso8601(data["expiresAt"]),
3823
4095
  agent_id: data["agentId"],
3824
4096
  episodic_key: data["episodicKey"],
4097
+ tenant_id: data["tenantId"],
4098
+ subject_id: data["subjectId"],
3825
4099
  )
3826
4100
  end
3827
4101
 
@@ -3833,6 +4107,8 @@ module Cadenya
3833
4107
  expires_at: Util.plain(@expires_at),
3834
4108
  agent_id: Util.plain(@agent_id),
3835
4109
  episodic_key: Util.plain(@episodic_key),
4110
+ tenant_id: Util.plain(@tenant_id),
4111
+ subject_id: Util.plain(@subject_id),
3836
4112
  }.reject { |_k, v| v.nil? }
3837
4113
  end
3838
4114
  end
@@ -4067,6 +4343,8 @@ module Cadenya
4067
4343
  Types::ModelSpec_Capability_Reasoning.from_json(data)
4068
4344
  when "caching"
4069
4345
  Types::ModelSpec_Capability_Caching.from_json(data)
4346
+ when "streaming"
4347
+ Types::ModelSpec_Capability_Streaming.from_json(data)
4070
4348
  else
4071
4349
  raise ArgumentError, "ModelSpec_Capability: unknown type #{data["type"].inspect}"
4072
4350
  end
@@ -4318,17 +4596,19 @@ module Cadenya
4318
4596
  end
4319
4597
 
4320
4598
  class ObjectiveEpisodicConfig
4321
- attr_reader :key, :memory_layer_id
4599
+ attr_reader :key, :memory_layer_id, :included_memory_layer_ids
4322
4600
 
4323
- def initialize(key: nil, memory_layer_id: nil)
4601
+ def initialize(key: nil, memory_layer_id: nil, included_memory_layer_ids: nil)
4324
4602
  @key = key
4325
4603
  @memory_layer_id = memory_layer_id
4604
+ @included_memory_layer_ids = included_memory_layer_ids
4326
4605
  end
4327
4606
 
4328
4607
  def self.from_json(data)
4329
4608
  new(
4330
4609
  key: data["key"],
4331
4610
  memory_layer_id: data["memoryLayerId"],
4611
+ included_memory_layer_ids: data["includedMemoryLayerIds"],
4332
4612
  )
4333
4613
  end
4334
4614
 
@@ -4336,6 +4616,7 @@ module Cadenya
4336
4616
  {
4337
4617
  key: Util.plain(@key),
4338
4618
  memory_layer_id: Util.plain(@memory_layer_id),
4619
+ included_memory_layer_ids: Util.plain(@included_memory_layer_ids),
4339
4620
  }.reject { |_k, v| v.nil? }
4340
4621
  end
4341
4622
  end
@@ -4364,15 +4645,16 @@ module Cadenya
4364
4645
  end
4365
4646
 
4366
4647
  class ObjectiveEvent
4367
- attr_reader :metadata, :data, :context_window_id, :info, :duration, :started_at
4648
+ attr_reader :metadata, :data, :context_window_id, :info, :duration, :started_at, :sequence
4368
4649
 
4369
- def initialize(metadata: nil, data: nil, context_window_id: nil, info: nil, duration: nil, started_at: nil)
4650
+ def initialize(metadata: nil, data: nil, context_window_id: nil, info: nil, duration: nil, started_at: nil, sequence: nil)
4370
4651
  @metadata = metadata
4371
4652
  @data = data
4372
4653
  @context_window_id = context_window_id
4373
4654
  @info = info
4374
4655
  @duration = duration
4375
4656
  @started_at = started_at
4657
+ @sequence = sequence
4376
4658
  end
4377
4659
 
4378
4660
  def self.from_json(data)
@@ -4383,6 +4665,7 @@ module Cadenya
4383
4665
  info: data["info"].nil? ? nil : Types::ObjectiveEventInfo.from_json(data["info"]),
4384
4666
  duration: data["duration"],
4385
4667
  started_at: data["startedAt"].nil? ? nil : Time.iso8601(data["startedAt"]),
4668
+ sequence: data["sequence"],
4386
4669
  )
4387
4670
  end
4388
4671
 
@@ -4394,6 +4677,7 @@ module Cadenya
4394
4677
  info: Util.plain(@info),
4395
4678
  duration: Util.plain(@duration),
4396
4679
  started_at: Util.plain(@started_at),
4680
+ sequence: Util.plain(@sequence),
4397
4681
  }.reject { |_k, v| v.nil? }
4398
4682
  end
4399
4683
  end
@@ -4443,6 +4727,10 @@ module Cadenya
4443
4727
  Types::ObjectiveEventData_Heartbeat.from_json(data)
4444
4728
  when "interrupted"
4445
4729
  Types::ObjectiveEventData_Interrupted.from_json(data)
4730
+ when "assistantMessageDelta"
4731
+ Types::ObjectiveEventData_AssistantMessageDelta.from_json(data)
4732
+ when "reasoningDelta"
4733
+ Types::ObjectiveEventData_ReasoningDelta.from_json(data)
4446
4734
  else
4447
4735
  raise ArgumentError, "ObjectiveEventData: unknown type #{data["type"].inspect}"
4448
4736
  end
@@ -4567,12 +4855,22 @@ module Cadenya
4567
4855
  end
4568
4856
 
4569
4857
  class ObjectiveHeartbeat
4570
- def self.from_json(_data)
4571
- new
4858
+ attr_reader :last_sequence
4859
+
4860
+ def initialize(last_sequence: nil)
4861
+ @last_sequence = last_sequence
4862
+ end
4863
+
4864
+ def self.from_json(data)
4865
+ new(
4866
+ last_sequence: data["lastSequence"],
4867
+ )
4572
4868
  end
4573
4869
 
4574
4870
  def to_h
4575
- {}
4871
+ {
4872
+ last_sequence: Util.plain(@last_sequence),
4873
+ }.reject { |_k, v| v.nil? }
4576
4874
  end
4577
4875
  end
4578
4876
 
@@ -4699,6 +4997,8 @@ module Cadenya
4699
4997
  Types::ObjectiveQueuedActionData_UserMessage.from_json(data)
4700
4998
  when "compaction"
4701
4999
  Types::ObjectiveQueuedActionData_Compaction.from_json(data)
5000
+ when "subAgentUpdated"
5001
+ Types::ObjectiveQueuedActionData_SubAgentUpdated.from_json(data)
4702
5002
  else
4703
5003
  raise ArgumentError, "ObjectiveQueuedActionData: unknown type #{data["type"].inspect}"
4704
5004
  end
@@ -4814,14 +5114,15 @@ module Cadenya
4814
5114
  end
4815
5115
 
4816
5116
  class ObjectiveToolCallData
4817
- attr_reader :callable, :arguments, :memo, :status_changed_by, :resolved_secrets
5117
+ attr_reader :callable, :arguments, :memo, :status_changed_by, :resolved_secrets, :decision_scores
4818
5118
 
4819
- def initialize(callable: nil, arguments: nil, memo: nil, status_changed_by: nil, resolved_secrets: nil)
5119
+ def initialize(callable: nil, arguments: nil, memo: nil, status_changed_by: nil, resolved_secrets: nil, decision_scores: nil)
4820
5120
  @callable = callable
4821
5121
  @arguments = arguments
4822
5122
  @memo = memo
4823
5123
  @status_changed_by = status_changed_by
4824
5124
  @resolved_secrets = resolved_secrets
5125
+ @decision_scores = decision_scores
4825
5126
  end
4826
5127
 
4827
5128
  def self.from_json(data)
@@ -4831,6 +5132,7 @@ module Cadenya
4831
5132
  memo: data["memo"],
4832
5133
  status_changed_by: data["statusChangedBy"].nil? ? nil : Types::Profile.from_json(data["statusChangedBy"]),
4833
5134
  resolved_secrets: data["resolvedSecrets"].nil? ? nil : (data["resolvedSecrets"]).map { |item| Types::ResolvedSecret.from_json(item) },
5135
+ decision_scores: data["decisionScores"].nil? ? nil : Types::ToolCallDecisionScores.from_json(data["decisionScores"]),
4834
5136
  )
4835
5137
  end
4836
5138
 
@@ -4841,6 +5143,7 @@ module Cadenya
4841
5143
  memo: Util.plain(@memo),
4842
5144
  status_changed_by: Util.plain(@status_changed_by),
4843
5145
  resolved_secrets: Util.plain(@resolved_secrets),
5146
+ decision_scores: Util.plain(@decision_scores),
4844
5147
  }.reject { |_k, v| v.nil? }
4845
5148
  end
4846
5149
  end
@@ -5410,21 +5713,76 @@ module Cadenya
5410
5713
  end
5411
5714
 
5412
5715
  class Reasoning
5413
- attr_reader :content
5716
+ attr_reader :content, :completion_id
5414
5717
 
5415
- def initialize(content: nil)
5718
+ def initialize(content: nil, completion_id: nil)
5416
5719
  @content = content
5720
+ @completion_id = completion_id
5417
5721
  end
5418
5722
 
5419
5723
  def self.from_json(data)
5420
5724
  new(
5421
5725
  content: data["content"],
5726
+ completion_id: data["completionId"],
5422
5727
  )
5423
5728
  end
5424
5729
 
5425
5730
  def to_h
5426
5731
  {
5427
5732
  content: Util.plain(@content),
5733
+ completion_id: Util.plain(@completion_id),
5734
+ }.reject { |_k, v| v.nil? }
5735
+ end
5736
+ end
5737
+
5738
+ class ReasoningDelta
5739
+ attr_reader :completion_id, :text, :after_sequence, :offset
5740
+
5741
+ def initialize(completion_id: nil, text: nil, after_sequence: nil, offset: nil)
5742
+ @completion_id = completion_id
5743
+ @text = text
5744
+ @after_sequence = after_sequence
5745
+ @offset = offset
5746
+ end
5747
+
5748
+ def self.from_json(data)
5749
+ new(
5750
+ completion_id: data["completionId"],
5751
+ text: data["text"],
5752
+ after_sequence: data["afterSequence"],
5753
+ offset: data["offset"],
5754
+ )
5755
+ end
5756
+
5757
+ def to_h
5758
+ {
5759
+ completion_id: Util.plain(@completion_id),
5760
+ text: Util.plain(@text),
5761
+ after_sequence: Util.plain(@after_sequence),
5762
+ offset: Util.plain(@offset),
5763
+ }.reject { |_k, v| v.nil? }
5764
+ end
5765
+ end
5766
+
5767
+ class RemoveAPIKeyWorkspaceRequest
5768
+ attr_reader :id, :workspace_id
5769
+
5770
+ def initialize(id: nil, workspace_id: nil)
5771
+ @id = id
5772
+ @workspace_id = workspace_id
5773
+ end
5774
+
5775
+ def self.from_json(data)
5776
+ new(
5777
+ id: data["id"],
5778
+ workspace_id: data["workspaceId"],
5779
+ )
5780
+ end
5781
+
5782
+ def to_h
5783
+ {
5784
+ id: Util.plain(@id),
5785
+ workspace_id: Util.plain(@workspace_id),
5428
5786
  }.reject { |_k, v| v.nil? }
5429
5787
  end
5430
5788
  end
@@ -5649,6 +6007,26 @@ module Cadenya
5649
6007
  end
5650
6008
  end
5651
6009
 
6010
+ class RevealAPIKeyRequest
6011
+ attr_reader :id
6012
+
6013
+ def initialize(id: nil)
6014
+ @id = id
6015
+ end
6016
+
6017
+ def self.from_json(data)
6018
+ new(
6019
+ id: data["id"],
6020
+ )
6021
+ end
6022
+
6023
+ def to_h
6024
+ {
6025
+ id: Util.plain(@id),
6026
+ }.reject { |_k, v| v.nil? }
6027
+ end
6028
+ end
6029
+
5652
6030
  class RevokeWidgetSessionRequest
5653
6031
  attr_reader :workspace_id, :id
5654
6032
 
@@ -5673,23 +6051,20 @@ module Cadenya
5673
6051
  end
5674
6052
 
5675
6053
  class RotateAPIKeyRequest
5676
- attr_reader :workspace_id, :id
6054
+ attr_reader :id
5677
6055
 
5678
- def initialize(workspace_id: nil, id: nil)
5679
- @workspace_id = workspace_id
6056
+ def initialize(id: nil)
5680
6057
  @id = id
5681
6058
  end
5682
6059
 
5683
6060
  def self.from_json(data)
5684
6061
  new(
5685
- workspace_id: data["workspaceId"],
5686
6062
  id: data["id"],
5687
6063
  )
5688
6064
  end
5689
6065
 
5690
6066
  def to_h
5691
6067
  {
5692
- workspace_id: Util.plain(@workspace_id),
5693
6068
  id: Util.plain(@id),
5694
6069
  }.reject { |_k, v| v.nil? }
5695
6070
  end
@@ -6049,7 +6424,7 @@ module Cadenya
6049
6424
  end
6050
6425
  end
6051
6426
 
6052
- SubAgentUpdatedStatus = ["STATUS_UNSPECIFIED", "STATUS_PENDING", "STATUS_RUNNING", "STATUS_COMPLETED", "STATUS_FAILED", "STATUS_CANCELLED"].freeze
6427
+ SubAgentUpdatedStatus = ["STATUS_UNSPECIFIED", "STATUS_PENDING", "STATUS_RUNNING", "STATUS_COMPLETED", "STATUS_FAILED", "STATUS_CANCELLED", "STATUS_WAITING", "STATUS_TIMED_OUT"].freeze
6053
6428
 
6054
6429
  class SubAgentUpdated
6055
6430
  attr_reader :agent, :objective, :status, :message
@@ -6406,6 +6781,38 @@ module Cadenya
6406
6781
  end
6407
6782
  end
6408
6783
 
6784
+ class TokenUsage
6785
+ attr_reader :input_tokens, :cache_read_input_tokens, :cache_write_input_tokens, :output_tokens, :reasoning_output_tokens
6786
+
6787
+ def initialize(input_tokens: nil, cache_read_input_tokens: nil, cache_write_input_tokens: nil, output_tokens: nil, reasoning_output_tokens: nil)
6788
+ @input_tokens = input_tokens
6789
+ @cache_read_input_tokens = cache_read_input_tokens
6790
+ @cache_write_input_tokens = cache_write_input_tokens
6791
+ @output_tokens = output_tokens
6792
+ @reasoning_output_tokens = reasoning_output_tokens
6793
+ end
6794
+
6795
+ def self.from_json(data)
6796
+ new(
6797
+ input_tokens: data["inputTokens"],
6798
+ cache_read_input_tokens: data["cacheReadInputTokens"],
6799
+ cache_write_input_tokens: data["cacheWriteInputTokens"],
6800
+ output_tokens: data["outputTokens"],
6801
+ reasoning_output_tokens: data["reasoningOutputTokens"],
6802
+ )
6803
+ end
6804
+
6805
+ def to_h
6806
+ {
6807
+ input_tokens: Util.plain(@input_tokens),
6808
+ cache_read_input_tokens: Util.plain(@cache_read_input_tokens),
6809
+ cache_write_input_tokens: Util.plain(@cache_write_input_tokens),
6810
+ output_tokens: Util.plain(@output_tokens),
6811
+ reasoning_output_tokens: Util.plain(@reasoning_output_tokens),
6812
+ }.reject { |_k, v| v.nil? }
6813
+ end
6814
+ end
6815
+
6409
6816
  ToolState = ["STATE_UNSPECIFIED", "STATE_AVAILABLE", "STATE_OMITTED", "STATE_ARCHIVED"].freeze
6410
6817
 
6411
6818
  class Tool
@@ -6429,63 +6836,128 @@ module Cadenya
6429
6836
 
6430
6837
  def to_h
6431
6838
  {
6432
- metadata: Util.plain(@metadata),
6433
- spec: Util.plain(@spec),
6434
- info: Util.plain(@info),
6435
- state: Util.plain(@state),
6839
+ metadata: Util.plain(@metadata),
6840
+ spec: Util.plain(@spec),
6841
+ info: Util.plain(@info),
6842
+ state: Util.plain(@state),
6843
+ }.reject { |_k, v| v.nil? }
6844
+ end
6845
+ end
6846
+
6847
+ class ToolApprovalRequested
6848
+ attr_reader :tool_call_id, :tool, :llm_tool_name, :arguments
6849
+
6850
+ def initialize(tool_call_id: nil, tool: nil, llm_tool_name: nil, arguments: nil)
6851
+ @tool_call_id = tool_call_id
6852
+ @tool = tool
6853
+ @llm_tool_name = llm_tool_name
6854
+ @arguments = arguments
6855
+ end
6856
+
6857
+ def self.from_json(data)
6858
+ new(
6859
+ tool_call_id: data["toolCallId"],
6860
+ tool: data["tool"].nil? ? nil : Types.decode_CallableTool(data["tool"]),
6861
+ llm_tool_name: data["llmToolName"],
6862
+ arguments: data["arguments"],
6863
+ )
6864
+ end
6865
+
6866
+ def to_h
6867
+ {
6868
+ tool_call_id: Util.plain(@tool_call_id),
6869
+ tool: Util.plain(@tool),
6870
+ llm_tool_name: Util.plain(@llm_tool_name),
6871
+ arguments: Util.plain(@arguments),
6872
+ }.reject { |_k, v| v.nil? }
6873
+ end
6874
+ end
6875
+
6876
+ class ToolApproved
6877
+ attr_reader :tool_call_id, :tool, :llm_tool_name
6878
+
6879
+ def initialize(tool_call_id: nil, tool: nil, llm_tool_name: nil)
6880
+ @tool_call_id = tool_call_id
6881
+ @tool = tool
6882
+ @llm_tool_name = llm_tool_name
6883
+ end
6884
+
6885
+ def self.from_json(data)
6886
+ new(
6887
+ tool_call_id: data["toolCallId"],
6888
+ tool: data["tool"].nil? ? nil : Types.decode_CallableTool(data["tool"]),
6889
+ llm_tool_name: data["llmToolName"],
6890
+ )
6891
+ end
6892
+
6893
+ def to_h
6894
+ {
6895
+ tool_call_id: Util.plain(@tool_call_id),
6896
+ tool: Util.plain(@tool),
6897
+ llm_tool_name: Util.plain(@llm_tool_name),
6436
6898
  }.reject { |_k, v| v.nil? }
6437
6899
  end
6438
6900
  end
6439
6901
 
6440
- class ToolApprovalRequested
6441
- attr_reader :tool_call_id
6902
+ class ToolCallDecisionScore
6903
+ attr_reader :score, :passed
6442
6904
 
6443
- def initialize(tool_call_id: nil)
6444
- @tool_call_id = tool_call_id
6905
+ def initialize(score: nil, passed: nil)
6906
+ @score = score
6907
+ @passed = passed
6445
6908
  end
6446
6909
 
6447
6910
  def self.from_json(data)
6448
6911
  new(
6449
- tool_call_id: data["toolCallId"],
6912
+ score: data["score"],
6913
+ passed: data["passed"],
6450
6914
  )
6451
6915
  end
6452
6916
 
6453
6917
  def to_h
6454
6918
  {
6455
- tool_call_id: Util.plain(@tool_call_id),
6919
+ score: Util.plain(@score),
6920
+ passed: Util.plain(@passed),
6456
6921
  }.reject { |_k, v| v.nil? }
6457
6922
  end
6458
6923
  end
6459
6924
 
6460
- class ToolApproved
6461
- attr_reader :tool_call_id
6925
+ class ToolCallDecisionScores
6926
+ attr_reader :auto_mode, :scores, :approved
6462
6927
 
6463
- def initialize(tool_call_id: nil)
6464
- @tool_call_id = tool_call_id
6928
+ def initialize(auto_mode: nil, scores: nil, approved: nil)
6929
+ @auto_mode = auto_mode
6930
+ @scores = scores
6931
+ @approved = approved
6465
6932
  end
6466
6933
 
6467
6934
  def self.from_json(data)
6468
6935
  new(
6469
- tool_call_id: data["toolCallId"],
6936
+ auto_mode: data["autoMode"].nil? ? nil : Types::AutoModeConfig.from_json(data["autoMode"]),
6937
+ scores: data["scores"].nil? ? nil : (data["scores"]).map { |item| Types::ToolCallDecisionScore.from_json(item) },
6938
+ approved: data["approved"],
6470
6939
  )
6471
6940
  end
6472
6941
 
6473
6942
  def to_h
6474
6943
  {
6475
- tool_call_id: Util.plain(@tool_call_id),
6944
+ auto_mode: Util.plain(@auto_mode),
6945
+ scores: Util.plain(@scores),
6946
+ approved: Util.plain(@approved),
6476
6947
  }.reject { |_k, v| v.nil? }
6477
6948
  end
6478
6949
  end
6479
6950
 
6480
6951
  class ToolCalled
6481
- attr_reader :tool_call_id, :tool, :config, :arguments, :arguments_exposed_in_widgets
6952
+ attr_reader :tool_call_id, :tool, :config, :arguments, :arguments_exposed_in_widgets, :llm_tool_name
6482
6953
 
6483
- def initialize(tool_call_id: nil, tool: nil, config: nil, arguments: nil, arguments_exposed_in_widgets: nil)
6954
+ def initialize(tool_call_id: nil, tool: nil, config: nil, arguments: nil, arguments_exposed_in_widgets: nil, llm_tool_name: nil)
6484
6955
  @tool_call_id = tool_call_id
6485
6956
  @tool = tool
6486
6957
  @config = config
6487
6958
  @arguments = arguments
6488
6959
  @arguments_exposed_in_widgets = arguments_exposed_in_widgets
6960
+ @llm_tool_name = llm_tool_name
6489
6961
  end
6490
6962
 
6491
6963
  def self.from_json(data)
@@ -6495,6 +6967,7 @@ module Cadenya
6495
6967
  config: data["config"].nil? ? nil : Types.decode_ToolSpec_Config(data["config"]),
6496
6968
  arguments: data["arguments"],
6497
6969
  arguments_exposed_in_widgets: data["argumentsExposedInWidgets"],
6970
+ llm_tool_name: data["llmToolName"],
6498
6971
  )
6499
6972
  end
6500
6973
 
@@ -6505,22 +6978,27 @@ module Cadenya
6505
6978
  config: Util.plain(@config),
6506
6979
  arguments: Util.plain(@arguments),
6507
6980
  arguments_exposed_in_widgets: Util.plain(@arguments_exposed_in_widgets),
6981
+ llm_tool_name: Util.plain(@llm_tool_name),
6508
6982
  }.reject { |_k, v| v.nil? }
6509
6983
  end
6510
6984
  end
6511
6985
 
6512
6986
  class ToolDenied
6513
- attr_reader :tool_call_id, :memo
6987
+ attr_reader :tool_call_id, :memo, :tool, :llm_tool_name
6514
6988
 
6515
- def initialize(tool_call_id: nil, memo: nil)
6989
+ def initialize(tool_call_id: nil, memo: nil, tool: nil, llm_tool_name: nil)
6516
6990
  @tool_call_id = tool_call_id
6517
6991
  @memo = memo
6992
+ @tool = tool
6993
+ @llm_tool_name = llm_tool_name
6518
6994
  end
6519
6995
 
6520
6996
  def self.from_json(data)
6521
6997
  new(
6522
6998
  tool_call_id: data["toolCallId"],
6523
6999
  memo: data["memo"],
7000
+ tool: data["tool"].nil? ? nil : Types.decode_CallableTool(data["tool"]),
7001
+ llm_tool_name: data["llmToolName"],
6524
7002
  )
6525
7003
  end
6526
7004
 
@@ -6528,22 +7006,28 @@ module Cadenya
6528
7006
  {
6529
7007
  tool_call_id: Util.plain(@tool_call_id),
6530
7008
  memo: Util.plain(@memo),
7009
+ tool: Util.plain(@tool),
7010
+ llm_tool_name: Util.plain(@llm_tool_name),
6531
7011
  }.reject { |_k, v| v.nil? }
6532
7012
  end
6533
7013
  end
6534
7014
 
6535
7015
  class ToolError
6536
- attr_reader :tool_call_id, :message
7016
+ attr_reader :tool_call_id, :message, :tool, :llm_tool_name
6537
7017
 
6538
- def initialize(tool_call_id: nil, message: nil)
7018
+ def initialize(tool_call_id: nil, message: nil, tool: nil, llm_tool_name: nil)
6539
7019
  @tool_call_id = tool_call_id
6540
7020
  @message = message
7021
+ @tool = tool
7022
+ @llm_tool_name = llm_tool_name
6541
7023
  end
6542
7024
 
6543
7025
  def self.from_json(data)
6544
7026
  new(
6545
7027
  tool_call_id: data["toolCallId"],
6546
7028
  message: data["message"],
7029
+ tool: data["tool"].nil? ? nil : Types.decode_CallableTool(data["tool"]),
7030
+ llm_tool_name: data["llmToolName"],
6547
7031
  )
6548
7032
  end
6549
7033
 
@@ -6551,6 +7035,8 @@ module Cadenya
6551
7035
  {
6552
7036
  tool_call_id: Util.plain(@tool_call_id),
6553
7037
  message: Util.plain(@message),
7038
+ tool: Util.plain(@tool),
7039
+ llm_tool_name: Util.plain(@llm_tool_name),
6554
7040
  }.reject { |_k, v| v.nil? }
6555
7041
  end
6556
7042
  end
@@ -6588,15 +7074,16 @@ module Cadenya
6588
7074
  end
6589
7075
 
6590
7076
  class ToolOverlay
6591
- attr_reader :key, :selector, :parameter_actions, :result_actions, :disabled, :widget_argument_exposure
7077
+ attr_reader :key, :selector, :parameter_actions, :result_actions, :disabled, :widget_argument_exposure, :auto_mode
6592
7078
 
6593
- def initialize(key: nil, selector: nil, parameter_actions: nil, result_actions: nil, disabled: nil, widget_argument_exposure: nil)
7079
+ def initialize(key: nil, selector: nil, parameter_actions: nil, result_actions: nil, disabled: nil, widget_argument_exposure: nil, auto_mode: nil)
6594
7080
  @key = key
6595
7081
  @selector = selector
6596
7082
  @parameter_actions = parameter_actions
6597
7083
  @result_actions = result_actions
6598
7084
  @disabled = disabled
6599
7085
  @widget_argument_exposure = widget_argument_exposure
7086
+ @auto_mode = auto_mode
6600
7087
  end
6601
7088
 
6602
7089
  def self.from_json(data)
@@ -6607,6 +7094,7 @@ module Cadenya
6607
7094
  result_actions: data["resultActions"].nil? ? nil : (data["resultActions"]).map { |item| Types.decode_ToolOverlay_ResultAction(item) },
6608
7095
  disabled: data["disabled"],
6609
7096
  widget_argument_exposure: data["widgetArgumentExposure"].nil? ? nil : Types::ToolOverlay_WidgetArgumentExposure.from_json(data["widgetArgumentExposure"]),
7097
+ auto_mode: data["autoMode"].nil? ? nil : Types::AutoModeConfig.from_json(data["autoMode"]),
6610
7098
  )
6611
7099
  end
6612
7100
 
@@ -6618,6 +7106,7 @@ module Cadenya
6618
7106
  result_actions: Util.plain(@result_actions),
6619
7107
  disabled: Util.plain(@disabled),
6620
7108
  widget_argument_exposure: Util.plain(@widget_argument_exposure),
7109
+ auto_mode: Util.plain(@auto_mode),
6621
7110
  }.reject { |_k, v| v.nil? }
6622
7111
  end
6623
7112
  end
@@ -6712,17 +7201,21 @@ module Cadenya
6712
7201
  end
6713
7202
 
6714
7203
  class ToolResult
6715
- attr_reader :tool_call_id, :result
7204
+ attr_reader :tool_call_id, :result, :tool, :llm_tool_name
6716
7205
 
6717
- def initialize(tool_call_id: nil, result: nil)
7206
+ def initialize(tool_call_id: nil, result: nil, tool: nil, llm_tool_name: nil)
6718
7207
  @tool_call_id = tool_call_id
6719
7208
  @result = result
7209
+ @tool = tool
7210
+ @llm_tool_name = llm_tool_name
6720
7211
  end
6721
7212
 
6722
7213
  def self.from_json(data)
6723
7214
  new(
6724
7215
  tool_call_id: data["toolCallId"],
6725
7216
  result: data["result"].nil? ? nil : Types::ObjectiveToolCallResult.from_json(data["result"]),
7217
+ tool: data["tool"].nil? ? nil : Types.decode_CallableTool(data["tool"]),
7218
+ llm_tool_name: data["llmToolName"],
6726
7219
  )
6727
7220
  end
6728
7221
 
@@ -6730,6 +7223,8 @@ module Cadenya
6730
7223
  {
6731
7224
  tool_call_id: Util.plain(@tool_call_id),
6732
7225
  result: Util.plain(@result),
7226
+ tool: Util.plain(@tool),
7227
+ llm_tool_name: Util.plain(@llm_tool_name),
6733
7228
  }.reject { |_k, v| v.nil? }
6734
7229
  end
6735
7230
  end
@@ -6737,13 +7232,14 @@ module Cadenya
6737
7232
  ToolSetState = ["STATE_UNSPECIFIED", "STATE_ACTIVE", "STATE_ARCHIVED"].freeze
6738
7233
 
6739
7234
  class ToolSet
6740
- attr_reader :metadata, :spec, :info, :state
7235
+ attr_reader :metadata, :spec, :info, :state, :client_tools_agent_id
6741
7236
 
6742
- def initialize(metadata: nil, spec: nil, info: nil, state: nil)
7237
+ def initialize(metadata: nil, spec: nil, info: nil, state: nil, client_tools_agent_id: nil)
6743
7238
  @metadata = metadata
6744
7239
  @spec = spec
6745
7240
  @info = info
6746
7241
  @state = state
7242
+ @client_tools_agent_id = client_tools_agent_id
6747
7243
  end
6748
7244
 
6749
7245
  def self.from_json(data)
@@ -6752,6 +7248,7 @@ module Cadenya
6752
7248
  spec: data["spec"].nil? ? nil : Types::ToolSetSpec.from_json(data["spec"]),
6753
7249
  info: data["info"].nil? ? nil : Types::ToolSetInfo.from_json(data["info"]),
6754
7250
  state: data["state"],
7251
+ client_tools_agent_id: data["clientToolsAgentId"],
6755
7252
  )
6756
7253
  end
6757
7254
 
@@ -6761,6 +7258,7 @@ module Cadenya
6761
7258
  spec: Util.plain(@spec),
6762
7259
  info: Util.plain(@info),
6763
7260
  state: Util.plain(@state),
7261
+ client_tools_agent_id: Util.plain(@client_tools_agent_id),
6764
7262
  }.reject { |_k, v| v.nil? }
6765
7263
  end
6766
7264
  end
@@ -7273,6 +7771,72 @@ module Cadenya
7273
7771
  end
7274
7772
  end
7275
7773
 
7774
+ class TrustedEndpoint
7775
+ attr_reader :metadata, :spec, :info
7776
+
7777
+ def initialize(metadata: nil, spec: nil, info: nil)
7778
+ @metadata = metadata
7779
+ @spec = spec
7780
+ @info = info
7781
+ end
7782
+
7783
+ def self.from_json(data)
7784
+ new(
7785
+ metadata: data["metadata"].nil? ? nil : Types::AccountResourceMetadata.from_json(data["metadata"]),
7786
+ spec: data["spec"].nil? ? nil : Types::TrustedEndpointSpec.from_json(data["spec"]),
7787
+ info: data["info"].nil? ? nil : Types::TrustedEndpointInfo.from_json(data["info"]),
7788
+ )
7789
+ end
7790
+
7791
+ def to_h
7792
+ {
7793
+ metadata: Util.plain(@metadata),
7794
+ spec: Util.plain(@spec),
7795
+ info: Util.plain(@info),
7796
+ }.reject { |_k, v| v.nil? }
7797
+ end
7798
+ end
7799
+
7800
+ class TrustedEndpointInfo
7801
+ attr_reader :created_by
7802
+
7803
+ def initialize(created_by: nil)
7804
+ @created_by = created_by
7805
+ end
7806
+
7807
+ def self.from_json(data)
7808
+ new(
7809
+ created_by: data["createdBy"].nil? ? nil : Types::Profile.from_json(data["createdBy"]),
7810
+ )
7811
+ end
7812
+
7813
+ def to_h
7814
+ {
7815
+ created_by: Util.plain(@created_by),
7816
+ }.reject { |_k, v| v.nil? }
7817
+ end
7818
+ end
7819
+
7820
+ class TrustedEndpointSpec
7821
+ attr_reader :host
7822
+
7823
+ def initialize(host: nil)
7824
+ @host = host
7825
+ end
7826
+
7827
+ def self.from_json(data)
7828
+ new(
7829
+ host: data["host"],
7830
+ )
7831
+ end
7832
+
7833
+ def to_h
7834
+ {
7835
+ host: Util.plain(@host),
7836
+ }.reject { |_k, v| v.nil? }
7837
+ end
7838
+ end
7839
+
7276
7840
  class UnarchiveAgentPoolRequest
7277
7841
  attr_reader :workspace_id, :id
7278
7842
 
@@ -7424,10 +7988,9 @@ module Cadenya
7424
7988
  end
7425
7989
 
7426
7990
  class UpdateAPIKeyRequest
7427
- attr_reader :workspace_id, :id, :metadata, :spec, :update_mask
7991
+ attr_reader :id, :metadata, :spec, :update_mask
7428
7992
 
7429
- def initialize(workspace_id: nil, id: nil, metadata: nil, spec: nil, update_mask: nil)
7430
- @workspace_id = workspace_id
7993
+ def initialize(id: nil, metadata: nil, spec: nil, update_mask: nil)
7431
7994
  @id = id
7432
7995
  @metadata = metadata
7433
7996
  @spec = spec
@@ -7436,7 +7999,6 @@ module Cadenya
7436
7999
 
7437
8000
  def self.from_json(data)
7438
8001
  new(
7439
- workspace_id: data["workspaceId"],
7440
8002
  id: data["id"],
7441
8003
  metadata: data["metadata"].nil? ? nil : Types::UpdateAccountResourceMetadata.from_json(data["metadata"]),
7442
8004
  spec: data["spec"].nil? ? nil : Types::APIKeySpec.from_json(data["spec"]),
@@ -7446,7 +8008,6 @@ module Cadenya
7446
8008
 
7447
8009
  def to_h
7448
8010
  {
7449
- workspace_id: Util.plain(@workspace_id),
7450
8011
  id: Util.plain(@id),
7451
8012
  metadata: Util.plain(@metadata),
7452
8013
  spec: Util.plain(@spec),
@@ -8112,6 +8673,54 @@ module Cadenya
8112
8673
  end
8113
8674
  end
8114
8675
 
8676
+ class VerifyTrustedEndpointRequest
8677
+ attr_reader :url
8678
+
8679
+ def initialize(url: nil)
8680
+ @url = url
8681
+ end
8682
+
8683
+ def self.from_json(data)
8684
+ new(
8685
+ url: data["url"],
8686
+ )
8687
+ end
8688
+
8689
+ def to_h
8690
+ {
8691
+ url: Util.plain(@url),
8692
+ }.reject { |_k, v| v.nil? }
8693
+ end
8694
+ end
8695
+
8696
+ VerifyTrustedEndpointResponseResult = ["RESULT_UNSPECIFIED", "RESULT_TRUSTED", "RESULT_UNTRUSTED", "RESULT_TEMPLATED"].freeze
8697
+
8698
+ class VerifyTrustedEndpointResponse
8699
+ attr_reader :result, :host, :trusted_endpoint
8700
+
8701
+ def initialize(result: nil, host: nil, trusted_endpoint: nil)
8702
+ @result = result
8703
+ @host = host
8704
+ @trusted_endpoint = trusted_endpoint
8705
+ end
8706
+
8707
+ def self.from_json(data)
8708
+ new(
8709
+ result: data["result"],
8710
+ host: data["host"],
8711
+ trusted_endpoint: data["trustedEndpoint"].nil? ? nil : Types::TrustedEndpoint.from_json(data["trustedEndpoint"]),
8712
+ )
8713
+ end
8714
+
8715
+ def to_h
8716
+ {
8717
+ result: Util.plain(@result),
8718
+ host: Util.plain(@host),
8719
+ trusted_endpoint: Util.plain(@trusted_endpoint),
8720
+ }.reject { |_k, v| v.nil? }
8721
+ end
8722
+ end
8723
+
8115
8724
  class VertexConfig
8116
8725
  attr_reader :project_id, :location
8117
8726
 
@@ -8160,7 +8769,7 @@ module Cadenya
8160
8769
 
8161
8770
  WebhookDeliveryDataStatus = ["WEBHOOK_DELIVERY_STATUS_UNSPECIFIED", "WEBHOOK_DELIVERY_STATUS_PENDING", "WEBHOOK_DELIVERY_STATUS_COMPLETED", "WEBHOOK_DELIVERY_STATUS_FAILED", "WEBHOOK_DELIVERY_STATUS_DISABLED"].freeze
8162
8771
 
8163
- WebhookDeliveryDataEventType = ["OBJECTIVE_EVENT_TYPE_UNSPECIFIED", "OBJECTIVE_EVENT_TYPE_USER_MESSAGE", "OBJECTIVE_EVENT_TYPE_TOOL_APPROVAL_REQUESTED", "OBJECTIVE_EVENT_TYPE_TOOL_APPROVED", "OBJECTIVE_EVENT_TYPE_TOOL_DENIED", "OBJECTIVE_EVENT_TYPE_TOOL_CALLED", "OBJECTIVE_EVENT_TYPE_ERROR", "OBJECTIVE_EVENT_TYPE_ASSISTANT_MESSAGE", "OBJECTIVE_EVENT_TYPE_TOOL_RESULT", "OBJECTIVE_EVENT_TYPE_TOOL_ERROR", "OBJECTIVE_EVENT_TYPE_CONTEXT_WINDOW_COMPACTED", "OBJECTIVE_EVENT_TYPE_MEMORY_READ", "OBJECTIVE_EVENT_TYPE_CANCELLED", "OBJECTIVE_EVENT_TYPE_SUB_AGENT_SPAWNED", "OBJECTIVE_EVENT_TYPE_SUB_AGENT_UPDATED", "OBJECTIVE_EVENT_TYPE_FINALIZED", "OBJECTIVE_EVENT_TYPE_NOTICE", "OBJECTIVE_EVENT_TYPE_TIMED_OUT", "OBJECTIVE_EVENT_TYPE_REASONING", "OBJECTIVE_EVENT_TYPE_STATE_CHANGED", "OBJECTIVE_EVENT_TYPE_HEARTBEAT", "OBJECTIVE_EVENT_TYPE_INTERRUPTED"].freeze
8772
+ WebhookDeliveryDataEventType = ["OBJECTIVE_EVENT_TYPE_UNSPECIFIED", "OBJECTIVE_EVENT_TYPE_USER_MESSAGE", "OBJECTIVE_EVENT_TYPE_TOOL_APPROVAL_REQUESTED", "OBJECTIVE_EVENT_TYPE_TOOL_APPROVED", "OBJECTIVE_EVENT_TYPE_TOOL_DENIED", "OBJECTIVE_EVENT_TYPE_TOOL_CALLED", "OBJECTIVE_EVENT_TYPE_ERROR", "OBJECTIVE_EVENT_TYPE_ASSISTANT_MESSAGE", "OBJECTIVE_EVENT_TYPE_TOOL_RESULT", "OBJECTIVE_EVENT_TYPE_TOOL_ERROR", "OBJECTIVE_EVENT_TYPE_CONTEXT_WINDOW_COMPACTED", "OBJECTIVE_EVENT_TYPE_MEMORY_READ", "OBJECTIVE_EVENT_TYPE_CANCELLED", "OBJECTIVE_EVENT_TYPE_SUB_AGENT_SPAWNED", "OBJECTIVE_EVENT_TYPE_SUB_AGENT_UPDATED", "OBJECTIVE_EVENT_TYPE_FINALIZED", "OBJECTIVE_EVENT_TYPE_NOTICE", "OBJECTIVE_EVENT_TYPE_TIMED_OUT", "OBJECTIVE_EVENT_TYPE_REASONING", "OBJECTIVE_EVENT_TYPE_STATE_CHANGED", "OBJECTIVE_EVENT_TYPE_HEARTBEAT", "OBJECTIVE_EVENT_TYPE_INTERRUPTED", "OBJECTIVE_EVENT_TYPE_ASSISTANT_MESSAGE_DELTA", "OBJECTIVE_EVENT_TYPE_REASONING_DELTA"].freeze
8164
8773
 
8165
8774
  class WebhookDeliveryData
8166
8775
  attr_reader :agent_id, :objective_id, :objective_event_id, :webhook_url, :webhook_id, :status, :attempt_count, :last_attempt_at, :http_status_code, :error_message, :latency_ms, :event_type, :response_headers, :response_content_length
@@ -10047,18 +10656,66 @@ module Cadenya
10047
10656
  end
10048
10657
  end
10049
10658
 
10659
+ class ObjectiveEventData_AssistantMessageDelta
10660
+ attr_reader :type, :assistant_message_delta
10661
+
10662
+ def initialize(type: nil, assistant_message_delta: nil)
10663
+ @type = type
10664
+ @assistant_message_delta = assistant_message_delta
10665
+ end
10666
+
10667
+ def self.from_json(data)
10668
+ new(
10669
+ type: data["type"],
10670
+ assistant_message_delta: data["assistantMessageDelta"].nil? ? nil : Types::AssistantMessageDelta.from_json(data["assistantMessageDelta"]),
10671
+ )
10672
+ end
10673
+
10674
+ def to_h
10675
+ {
10676
+ type: Util.plain(@type),
10677
+ assistant_message_delta: Util.plain(@assistant_message_delta),
10678
+ }.reject { |_k, v| v.nil? }
10679
+ end
10680
+ end
10681
+
10682
+ class ObjectiveEventData_ReasoningDelta
10683
+ attr_reader :type, :reasoning_delta
10684
+
10685
+ def initialize(type: nil, reasoning_delta: nil)
10686
+ @type = type
10687
+ @reasoning_delta = reasoning_delta
10688
+ end
10689
+
10690
+ def self.from_json(data)
10691
+ new(
10692
+ type: data["type"],
10693
+ reasoning_delta: data["reasoningDelta"].nil? ? nil : Types::ReasoningDelta.from_json(data["reasoningDelta"]),
10694
+ )
10695
+ end
10696
+
10697
+ def to_h
10698
+ {
10699
+ type: Util.plain(@type),
10700
+ reasoning_delta: Util.plain(@reasoning_delta),
10701
+ }.reject { |_k, v| v.nil? }
10702
+ end
10703
+ end
10704
+
10050
10705
  class CallableTool_Tool
10051
- attr_reader :type, :tool
10706
+ attr_reader :type, :tool, :client_tool
10052
10707
 
10053
- def initialize(type: nil, tool: nil)
10708
+ def initialize(type: nil, tool: nil, client_tool: nil)
10054
10709
  @type = type
10055
10710
  @tool = tool
10711
+ @client_tool = client_tool
10056
10712
  end
10057
10713
 
10058
10714
  def self.from_json(data)
10059
10715
  new(
10060
10716
  type: data["type"],
10061
10717
  tool: data["tool"].nil? ? nil : Types::ResourceMetadata.from_json(data["tool"]),
10718
+ client_tool: data["clientTool"],
10062
10719
  )
10063
10720
  end
10064
10721
 
@@ -10066,22 +10723,25 @@ module Cadenya
10066
10723
  {
10067
10724
  type: Util.plain(@type),
10068
10725
  tool: Util.plain(@tool),
10726
+ client_tool: Util.plain(@client_tool),
10069
10727
  }.reject { |_k, v| v.nil? }
10070
10728
  end
10071
10729
  end
10072
10730
 
10073
10731
  class CallableTool_Agent
10074
- attr_reader :type, :agent
10732
+ attr_reader :type, :agent, :client_tool
10075
10733
 
10076
- def initialize(type: nil, agent: nil)
10734
+ def initialize(type: nil, agent: nil, client_tool: nil)
10077
10735
  @type = type
10078
10736
  @agent = agent
10737
+ @client_tool = client_tool
10079
10738
  end
10080
10739
 
10081
10740
  def self.from_json(data)
10082
10741
  new(
10083
10742
  type: data["type"],
10084
10743
  agent: data["agent"].nil? ? nil : Types::ResourceMetadata.from_json(data["agent"]),
10744
+ client_tool: data["clientTool"],
10085
10745
  )
10086
10746
  end
10087
10747
 
@@ -10089,22 +10749,25 @@ module Cadenya
10089
10749
  {
10090
10750
  type: Util.plain(@type),
10091
10751
  agent: Util.plain(@agent),
10752
+ client_tool: Util.plain(@client_tool),
10092
10753
  }.reject { |_k, v| v.nil? }
10093
10754
  end
10094
10755
  end
10095
10756
 
10096
10757
  class CallableTool_CadenyaProvidedTool
10097
- attr_reader :type, :cadenya_provided_tool
10758
+ attr_reader :type, :cadenya_provided_tool, :client_tool
10098
10759
 
10099
- def initialize(type: nil, cadenya_provided_tool: nil)
10760
+ def initialize(type: nil, cadenya_provided_tool: nil, client_tool: nil)
10100
10761
  @type = type
10101
10762
  @cadenya_provided_tool = cadenya_provided_tool
10763
+ @client_tool = client_tool
10102
10764
  end
10103
10765
 
10104
10766
  def self.from_json(data)
10105
10767
  new(
10106
10768
  type: data["type"],
10107
10769
  cadenya_provided_tool: data["cadenyaProvidedTool"].nil? ? nil : Types::ResourceMetadata.from_json(data["cadenyaProvidedTool"]),
10770
+ client_tool: data["clientTool"],
10108
10771
  )
10109
10772
  end
10110
10773
 
@@ -10112,22 +10775,25 @@ module Cadenya
10112
10775
  {
10113
10776
  type: Util.plain(@type),
10114
10777
  cadenya_provided_tool: Util.plain(@cadenya_provided_tool),
10778
+ client_tool: Util.plain(@client_tool),
10115
10779
  }.reject { |_k, v| v.nil? }
10116
10780
  end
10117
10781
  end
10118
10782
 
10119
10783
  class CallableTool_AgentPool
10120
- attr_reader :type, :agent_pool
10784
+ attr_reader :type, :agent_pool, :client_tool
10121
10785
 
10122
- def initialize(type: nil, agent_pool: nil)
10786
+ def initialize(type: nil, agent_pool: nil, client_tool: nil)
10123
10787
  @type = type
10124
10788
  @agent_pool = agent_pool
10789
+ @client_tool = client_tool
10125
10790
  end
10126
10791
 
10127
10792
  def self.from_json(data)
10128
10793
  new(
10129
10794
  type: data["type"],
10130
10795
  agent_pool: data["agentPool"].nil? ? nil : Types::ResourceMetadata.from_json(data["agentPool"]),
10796
+ client_tool: data["clientTool"],
10131
10797
  )
10132
10798
  end
10133
10799
 
@@ -10135,6 +10801,7 @@ module Cadenya
10135
10801
  {
10136
10802
  type: Util.plain(@type),
10137
10803
  agent_pool: Util.plain(@agent_pool),
10804
+ client_tool: Util.plain(@client_tool),
10138
10805
  }.reject { |_k, v| v.nil? }
10139
10806
  end
10140
10807
  end
@@ -10243,6 +10910,29 @@ module Cadenya
10243
10910
  end
10244
10911
  end
10245
10912
 
10913
+ class ObjectiveQueuedActionData_SubAgentUpdated
10914
+ attr_reader :type, :sub_agent_updated
10915
+
10916
+ def initialize(type: nil, sub_agent_updated: nil)
10917
+ @type = type
10918
+ @sub_agent_updated = sub_agent_updated
10919
+ end
10920
+
10921
+ def self.from_json(data)
10922
+ new(
10923
+ type: data["type"],
10924
+ sub_agent_updated: data["subAgentUpdated"].nil? ? nil : Types::SubAgentUpdated.from_json(data["subAgentUpdated"]),
10925
+ )
10926
+ end
10927
+
10928
+ def to_h
10929
+ {
10930
+ type: Util.plain(@type),
10931
+ sub_agent_updated: Util.plain(@sub_agent_updated),
10932
+ }.reject { |_k, v| v.nil? }
10933
+ end
10934
+ end
10935
+
10246
10936
  class ContinueObjectiveResponse_Event
10247
10937
  attr_reader :type, :event
10248
10938
 
@@ -10982,6 +11672,29 @@ module Cadenya
10982
11672
  end
10983
11673
  end
10984
11674
 
11675
+ class ModelSpec_Capability_Streaming
11676
+ attr_reader :type, :streaming
11677
+
11678
+ def initialize(type: nil, streaming: nil)
11679
+ @type = type
11680
+ @streaming = streaming
11681
+ end
11682
+
11683
+ def self.from_json(data)
11684
+ new(
11685
+ type: data["type"],
11686
+ streaming: data["streaming"].nil? ? nil : Types::Capability_Streaming.from_json(data["streaming"]),
11687
+ )
11688
+ end
11689
+
11690
+ def to_h
11691
+ {
11692
+ type: Util.plain(@type),
11693
+ streaming: Util.plain(@streaming),
11694
+ }.reject { |_k, v| v.nil? }
11695
+ end
11696
+ end
11697
+
10985
11698
  class CreateAndStreamObjectiveResponse_Objective
10986
11699
  attr_reader :type, :objective
10987
11700
 
@@ -11067,7 +11780,7 @@ module Cadenya
11067
11780
 
11068
11781
  AgentServiceListAgentFeedbackSentiment = ["FEEDBACK_SENTIMENT_UNSPECIFIED", "FEEDBACK_SENTIMENT_POSITIVE", "FEEDBACK_SENTIMENT_NEGATIVE"].freeze
11069
11782
 
11070
- AgentServiceListAgentWebhookDeliveriesEventType = ["OBJECTIVE_EVENT_TYPE_UNSPECIFIED", "OBJECTIVE_EVENT_TYPE_USER_MESSAGE", "OBJECTIVE_EVENT_TYPE_TOOL_APPROVAL_REQUESTED", "OBJECTIVE_EVENT_TYPE_TOOL_APPROVED", "OBJECTIVE_EVENT_TYPE_TOOL_DENIED", "OBJECTIVE_EVENT_TYPE_TOOL_CALLED", "OBJECTIVE_EVENT_TYPE_ERROR", "OBJECTIVE_EVENT_TYPE_ASSISTANT_MESSAGE", "OBJECTIVE_EVENT_TYPE_TOOL_RESULT", "OBJECTIVE_EVENT_TYPE_TOOL_ERROR", "OBJECTIVE_EVENT_TYPE_CONTEXT_WINDOW_COMPACTED", "OBJECTIVE_EVENT_TYPE_MEMORY_READ", "OBJECTIVE_EVENT_TYPE_CANCELLED", "OBJECTIVE_EVENT_TYPE_SUB_AGENT_SPAWNED", "OBJECTIVE_EVENT_TYPE_SUB_AGENT_UPDATED", "OBJECTIVE_EVENT_TYPE_FINALIZED", "OBJECTIVE_EVENT_TYPE_NOTICE", "OBJECTIVE_EVENT_TYPE_TIMED_OUT", "OBJECTIVE_EVENT_TYPE_REASONING", "OBJECTIVE_EVENT_TYPE_STATE_CHANGED", "OBJECTIVE_EVENT_TYPE_HEARTBEAT", "OBJECTIVE_EVENT_TYPE_INTERRUPTED"].freeze
11783
+ AgentServiceListAgentWebhookDeliveriesEventType = ["OBJECTIVE_EVENT_TYPE_UNSPECIFIED", "OBJECTIVE_EVENT_TYPE_USER_MESSAGE", "OBJECTIVE_EVENT_TYPE_TOOL_APPROVAL_REQUESTED", "OBJECTIVE_EVENT_TYPE_TOOL_APPROVED", "OBJECTIVE_EVENT_TYPE_TOOL_DENIED", "OBJECTIVE_EVENT_TYPE_TOOL_CALLED", "OBJECTIVE_EVENT_TYPE_ERROR", "OBJECTIVE_EVENT_TYPE_ASSISTANT_MESSAGE", "OBJECTIVE_EVENT_TYPE_TOOL_RESULT", "OBJECTIVE_EVENT_TYPE_TOOL_ERROR", "OBJECTIVE_EVENT_TYPE_CONTEXT_WINDOW_COMPACTED", "OBJECTIVE_EVENT_TYPE_MEMORY_READ", "OBJECTIVE_EVENT_TYPE_CANCELLED", "OBJECTIVE_EVENT_TYPE_SUB_AGENT_SPAWNED", "OBJECTIVE_EVENT_TYPE_SUB_AGENT_UPDATED", "OBJECTIVE_EVENT_TYPE_FINALIZED", "OBJECTIVE_EVENT_TYPE_NOTICE", "OBJECTIVE_EVENT_TYPE_TIMED_OUT", "OBJECTIVE_EVENT_TYPE_REASONING", "OBJECTIVE_EVENT_TYPE_STATE_CHANGED", "OBJECTIVE_EVENT_TYPE_HEARTBEAT", "OBJECTIVE_EVENT_TYPE_INTERRUPTED", "OBJECTIVE_EVENT_TYPE_ASSISTANT_MESSAGE_DELTA", "OBJECTIVE_EVENT_TYPE_REASONING_DELTA"].freeze
11071
11784
 
11072
11785
  MemoryServiceListMemoryLayersType = ["MEMORY_LAYER_TYPE_UNSPECIFIED", "MEMORY_LAYER_TYPE_EPISODIC", "MEMORY_LAYER_TYPE_SKILLS"].freeze
11073
11786
 
@@ -11189,14 +11902,27 @@ module Cadenya
11189
11902
  ENCODE_API_KEY_SPEC = {
11190
11903
  "description" => ["description", nil],
11191
11904
  "permissions" => ["permissions", nil],
11905
+ "all_workspaces" => ["allWorkspaces", nil],
11906
+ "allWorkspaces" => ["allWorkspaces", nil],
11907
+ "workspace_assignments" => ["workspaceAssignments", ->(_v) { _v.is_a?(Array) ? _v.map { |_i| (->(_v) { encode_APIKeyWorkspaceAssignment(_v) }).call(_i) } : _v }],
11908
+ "workspaceAssignments" => ["workspaceAssignments", ->(_v) { _v.is_a?(Array) ? _v.map { |_i| (->(_v) { encode_APIKeyWorkspaceAssignment(_v) }).call(_i) } : _v }],
11192
11909
  }.freeze
11193
11910
 
11194
- DROP_API_KEY_SPEC = ["system", "token"].freeze
11911
+ DROP_API_KEY_SPEC = ["default", "token"].freeze
11195
11912
 
11196
11913
  def self.encode_APIKeySpec(data)
11197
11914
  encode_fields(ENCODE_API_KEY_SPEC, data, drop: DROP_API_KEY_SPEC)
11198
11915
  end
11199
11916
 
11917
+ ENCODE_API_KEY_WORKSPACE_ASSIGNMENT = {
11918
+ "workspace_id" => ["workspaceId", nil],
11919
+ "workspaceId" => ["workspaceId", nil],
11920
+ }.freeze
11921
+
11922
+ def self.encode_APIKeyWorkspaceAssignment(data)
11923
+ encode_fields(ENCODE_API_KEY_WORKSPACE_ASSIGNMENT, data)
11924
+ end
11925
+
11200
11926
  def self.encode_AddAgentVariationAssignmentRequest(data)
11201
11927
  data = data.to_h if !data.is_a?(Hash) && data.class.name.to_s.start_with?(name.split("::").first + "::Types")
11202
11928
  unless data.is_a?(Hash)
@@ -11290,6 +12016,8 @@ module Cadenya
11290
12016
  "enableEpisodicMemory" => ["enableEpisodicMemory", nil],
11291
12017
  "episodic_memory_ttl" => ["episodicMemoryTtl", nil],
11292
12018
  "episodicMemoryTtl" => ["episodicMemoryTtl", nil],
12019
+ "always_include_subject_memories" => ["alwaysIncludeSubjectMemories", nil],
12020
+ "alwaysIncludeSubjectMemories" => ["alwaysIncludeSubjectMemories", nil],
11293
12021
  }.freeze
11294
12022
 
11295
12023
  def self.encode_AgentSpec(data)
@@ -11359,6 +12087,8 @@ module Cadenya
11359
12087
  "reasoningEffort" => ["reasoningEffort", nil],
11360
12088
  "caching_enabled" => ["cachingEnabled", nil],
11361
12089
  "cachingEnabled" => ["cachingEnabled", nil],
12090
+ "streaming_enabled" => ["streamingEnabled", nil],
12091
+ "streamingEnabled" => ["streamingEnabled", nil],
11362
12092
  }.freeze
11363
12093
 
11364
12094
  def self.encode_AgentVariationSpec_ModelConfig(data)
@@ -11375,6 +12105,27 @@ module Cadenya
11375
12105
  encode_fields(ENCODE_AGENT_VARIATION_SPEC_PROGRESSIVE_DISCOVERY, data)
11376
12106
  end
11377
12107
 
12108
+ ENCODE_AUTO_MODE_CONFIG = {
12109
+ "questions" => ["questions", ->(_v) { _v.is_a?(Array) ? _v.map { |_i| (->(_v) { encode_AutoModeQuestion(_v) }).call(_i) } : _v }],
12110
+ "passing_mode" => ["passingMode", nil],
12111
+ "passingMode" => ["passingMode", nil],
12112
+ "failure_message" => ["failureMessage", nil],
12113
+ "failureMessage" => ["failureMessage", nil],
12114
+ }.freeze
12115
+
12116
+ def self.encode_AutoModeConfig(data)
12117
+ encode_fields(ENCODE_AUTO_MODE_CONFIG, data)
12118
+ end
12119
+
12120
+ ENCODE_AUTO_MODE_QUESTION = {
12121
+ "question" => ["question", nil],
12122
+ "threshold" => ["threshold", nil],
12123
+ }.freeze
12124
+
12125
+ def self.encode_AutoModeQuestion(data)
12126
+ encode_fields(ENCODE_AUTO_MODE_QUESTION, data)
12127
+ end
12128
+
11378
12129
  ENCODE_BEDROCK_CONFIG = {
11379
12130
  "region" => ["region", nil],
11380
12131
  }.freeze
@@ -11399,6 +12150,26 @@ module Cadenya
11399
12150
  encode_fields(ENCODE_CAPABILITY_STOP_SEQUENCES, data)
11400
12151
  end
11401
12152
 
12153
+ ENCODE_CLIENT_TOOL_DEFINITION = {
12154
+ "name" => ["name", nil],
12155
+ "description" => ["description", nil],
12156
+ "parameters" => ["parameters", nil],
12157
+ "requires_approval" => ["requiresApproval", nil],
12158
+ "requiresApproval" => ["requiresApproval", nil],
12159
+ }.freeze
12160
+
12161
+ def self.encode_ClientToolDefinition(data)
12162
+ encode_fields(ENCODE_CLIENT_TOOL_DEFINITION, data)
12163
+ end
12164
+
12165
+ ENCODE_CLIENT_TOOLS = {
12166
+ "definitions" => ["definitions", ->(_v) { _v.is_a?(Array) ? _v.map { |_i| (->(_v) { encode_ClientToolDefinition(_v) }).call(_i) } : _v }],
12167
+ }.freeze
12168
+
12169
+ def self.encode_ClientTools(data)
12170
+ encode_fields(ENCODE_CLIENT_TOOLS, data)
12171
+ end
12172
+
11402
12173
  ENCODE_COMPACTION_CONFIG_SUMMARIZATION_STRATEGY = {
11403
12174
  "instructions" => ["instructions", nil],
11404
12175
  }.freeze
@@ -11454,8 +12225,10 @@ module Cadenya
11454
12225
  "method" => ["method", nil],
11455
12226
  }.freeze
11456
12227
 
12228
+ DROP_CONFIG_OPEN_API = ["serverUrl", "server_url"].freeze
12229
+
11457
12230
  def self.encode_Config_OpenAPI(data)
11458
- encode_fields(ENCODE_CONFIG_OPEN_API, data)
12231
+ encode_fields(ENCODE_CONFIG_OPEN_API, data, drop: DROP_CONFIG_OPEN_API)
11459
12232
  end
11460
12233
 
11461
12234
  ENCODE_CREATE_ACCOUNT_RESOURCE_METADATA = {
@@ -11616,7 +12389,7 @@ module Cadenya
11616
12389
  "description" => ["description", nil],
11617
12390
  }.freeze
11618
12391
 
11619
- DROP_MEMORY_LAYER_SPEC = ["agentId", "agent_id", "episodicKey", "episodic_key", "expiresAt", "expires_at", "systemManaged", "system_managed"].freeze
12392
+ DROP_MEMORY_LAYER_SPEC = ["agentId", "agent_id", "episodicKey", "episodic_key", "expiresAt", "expires_at", "subjectId", "subject_id", "systemManaged", "system_managed", "tenantId", "tenant_id"].freeze
11620
12393
 
11621
12394
  def self.encode_MemoryLayerSpec(data)
11622
12395
  encode_fields(ENCODE_MEMORY_LAYER_SPEC, data, drop: DROP_MEMORY_LAYER_SPEC)
@@ -11689,6 +12462,8 @@ module Cadenya
11689
12462
  (->(_v) { encode_ModelSpec_Capability_Reasoning(_v) }).call(data)
11690
12463
  when "caching"
11691
12464
  (->(_v) { encode_ModelSpec_Capability_Caching(_v) }).call(data)
12465
+ when "streaming"
12466
+ (->(_v) { encode_ModelSpec_Capability_Streaming(_v) }).call(data)
11692
12467
  else
11693
12468
  data
11694
12469
  end
@@ -11698,7 +12473,7 @@ module Cadenya
11698
12473
  "key" => ["key", nil],
11699
12474
  }.freeze
11700
12475
 
11701
- DROP_OBJECTIVE_EPISODIC_CONFIG = ["memoryLayerId", "memory_layer_id"].freeze
12476
+ DROP_OBJECTIVE_EPISODIC_CONFIG = ["includedMemoryLayerIds", "included_memory_layer_ids", "memoryLayerId", "memory_layer_id"].freeze
11702
12477
 
11703
12478
  def self.encode_ObjectiveEpisodicConfig(data)
11704
12479
  encode_fields(ENCODE_OBJECTIVE_EPISODIC_CONFIG, data, drop: DROP_OBJECTIVE_EPISODIC_CONFIG)
@@ -11953,6 +12728,8 @@ module Cadenya
11953
12728
  "disabled" => ["disabled", nil],
11954
12729
  "widget_argument_exposure" => ["widgetArgumentExposure", ->(_v) { encode_ToolOverlay_WidgetArgumentExposure(_v) }],
11955
12730
  "widgetArgumentExposure" => ["widgetArgumentExposure", ->(_v) { encode_ToolOverlay_WidgetArgumentExposure(_v) }],
12731
+ "auto_mode" => ["autoMode", ->(_v) { encode_AutoModeConfig(_v) }],
12732
+ "autoMode" => ["autoMode", ->(_v) { encode_AutoModeConfig(_v) }],
11956
12733
  }.freeze
11957
12734
 
11958
12735
  def self.encode_ToolOverlay(data)
@@ -12216,6 +12993,14 @@ module Cadenya
12216
12993
  end
12217
12994
  end
12218
12995
 
12996
+ ENCODE_TRUSTED_ENDPOINT_SPEC = {
12997
+ "host" => ["host", nil],
12998
+ }.freeze
12999
+
13000
+ def self.encode_TrustedEndpointSpec(data)
13001
+ encode_fields(ENCODE_TRUSTED_ENDPOINT_SPEC, data)
13002
+ end
13003
+
12219
13004
  ENCODE_UPDATE_ACCOUNT_RESOURCE_METADATA = {
12220
13005
  "name" => ["name", nil],
12221
13006
  "external_id" => ["externalId", nil],
@@ -12926,5 +13711,14 @@ module Cadenya
12926
13711
  encode_fields(ENCODE_MODEL_SPEC_CAPABILITY_CACHING, data)
12927
13712
  end
12928
13713
 
13714
+ ENCODE_MODEL_SPEC_CAPABILITY_STREAMING = {
13715
+ "type" => ["type", nil],
13716
+ "streaming" => ["streaming", nil],
13717
+ }.freeze
13718
+
13719
+ def self.encode_ModelSpec_Capability_Streaming(data)
13720
+ encode_fields(ENCODE_MODEL_SPEC_CAPABILITY_STREAMING, data)
13721
+ end
13722
+
12929
13723
  end
12930
13724
  end