@labelbox/rl-sdk 0.0.147 → 0.0.148

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.
@@ -44128,6 +44128,110 @@ export const SDK_REFERENCE = {
44128
44128
  ],
44129
44129
  },
44130
44130
  },
44131
+ managedAgentsApplyAgentTag: {
44132
+ operationId: 'managedAgentsApplyAgentTag',
44133
+ tag: 'managed-agents',
44134
+ callPath: ['managedAgents', 'applyAgentTag'],
44135
+ namespace: 'managedAgents',
44136
+ method: 'applyAgentTag',
44137
+ signature: 'rl.managedAgents.applyAgentTag({ agent_id, tag_id })',
44138
+ example: "const result = await rl.managedAgents.applyAgentTag({\n agent_id: '<agent_id>',\n tag_id: '<tag_id>',\n});",
44139
+ cliInvocation: 'rl managed-agents apply-agent-tag',
44140
+ cliExample: 'rl managed-agents apply-agent-tag \\\n --agent_id <agent_id> \\\n --tag_id <tag_id>',
44141
+ curlExample: "curl -X PUT 'https://api.recursion.labelbox.com/managed-agents/v1/agents/<agent_id>/tags/<tag_id>' \\\n -H 'Authorization: Bearer $LABELBOX_API_KEY'",
44142
+ summary: 'Apply one tag to an agent',
44143
+ description: "Idempotently applies one live organization tag and returns the agent's resulting full tag definitions. The classification write does not update the agent or mint a version.",
44144
+ httpMethod: 'put',
44145
+ path: '/managed-agents/v1/agents/{agent_id}/tags/{tag_id}',
44146
+ requiredPermissions: ['managed-agents:update'],
44147
+ params: [
44148
+ {
44149
+ name: 'agent_id',
44150
+ in: 'path',
44151
+ required: true,
44152
+ type: 'string',
44153
+ description: 'Agent id (UUID) as returned by createAgent or listAgents.',
44154
+ format: 'uuid',
44155
+ },
44156
+ {
44157
+ name: 'tag_id',
44158
+ in: 'path',
44159
+ required: true,
44160
+ type: 'string',
44161
+ description: 'Tag id (UUID) as returned by createTag or listTags.',
44162
+ format: 'uuid',
44163
+ },
44164
+ ],
44165
+ response: {
44166
+ type: 'ManagedAgentsTagListResponse',
44167
+ description: "A complete set of organization-scoped tag definitions. GET /v1/tags returns the organization catalog; agent tag PUT routes return the agent's resulting exact set.",
44168
+ fields: [
44169
+ {
44170
+ name: 'tags',
44171
+ required: true,
44172
+ type: 'ManagedAgentsTag[]',
44173
+ description: 'The complete live tag set for this response. Always an array; an empty array means no definitions exist or the agent has no classifications.',
44174
+ items: {
44175
+ type: 'ManagedAgentsTag',
44176
+ description: 'An organization-scoped classification definition. Applying or removing it changes only catalog membership: it does not update the agent, mint an AgentVersion, or affect running sessions.',
44177
+ fields: [
44178
+ {
44179
+ name: 'color',
44180
+ required: false,
44181
+ type: 'string',
44182
+ description: 'Display color in #RRGGBB form.',
44183
+ minLength: 7,
44184
+ maxLength: 7,
44185
+ pattern: '^#[0-9A-Fa-f]{6}$',
44186
+ },
44187
+ {
44188
+ name: 'created_at',
44189
+ required: false,
44190
+ type: 'string',
44191
+ description: 'Server-assigned RFC 3339 timestamp of when the tag was created.',
44192
+ format: 'date-time',
44193
+ },
44194
+ {
44195
+ name: 'description',
44196
+ required: false,
44197
+ type: 'string',
44198
+ description: 'Optional operator-facing explanation of the classification, up to 280 characters.',
44199
+ maxLength: 280,
44200
+ },
44201
+ {
44202
+ name: 'label',
44203
+ required: false,
44204
+ type: 'string',
44205
+ description: 'Display label, trimmed by the service. Unique case-insensitively among live tags in this organization.',
44206
+ minLength: 1,
44207
+ maxLength: 32,
44208
+ },
44209
+ {
44210
+ name: 'organization_id',
44211
+ required: false,
44212
+ type: 'string',
44213
+ description: 'Labelbox organization that owns the tag. Server-assigned from the authenticated principal and never accepted as authority from the request body.',
44214
+ },
44215
+ {
44216
+ name: 'tag_id',
44217
+ required: false,
44218
+ type: 'string',
44219
+ description: 'Server-assigned tag id (UUID).',
44220
+ format: 'uuid',
44221
+ },
44222
+ {
44223
+ name: 'updated_at',
44224
+ required: false,
44225
+ type: 'string',
44226
+ description: 'Server-assigned RFC 3339 timestamp of the most recent definition update.',
44227
+ format: 'date-time',
44228
+ },
44229
+ ],
44230
+ },
44231
+ },
44232
+ ],
44233
+ },
44234
+ },
44131
44235
  managedAgentsArchiveMemoryStore: {
44132
44236
  operationId: 'managedAgentsArchiveMemoryStore',
44133
44237
  tag: 'managed-agents',
@@ -44477,7 +44581,7 @@ export const SDK_REFERENCE = {
44477
44581
  ],
44478
44582
  response: {
44479
44583
  type: 'ManagedAgentsAgent',
44480
- description: 'A configured agent: its model, system prompt, tool and MCP surface, and the vault defaults new sessions inherit. Mutating an agent mints a new immutable AgentVersion; a session records the version it ran.',
44584
+ description: 'A configured agent: its versioned execution definition plus current mutable classification tags. Patching the execution definition mints a new immutable AgentVersion; applying tags does not. A session records the version it ran and never snapshots tags.',
44481
44585
  fields: [
44482
44586
  {
44483
44587
  name: 'agent_id',
@@ -44639,6 +44743,69 @@ export const SDK_REFERENCE = {
44639
44743
  type: 'string',
44640
44744
  description: 'System prompt prepended to every conversation this agent runs.',
44641
44745
  },
44746
+ {
44747
+ name: 'tags',
44748
+ required: true,
44749
+ type: 'ManagedAgentsTag[]',
44750
+ description: 'Current organization-scoped classification tags applied to this agent. Always an array. Tags are mutable catalog metadata and are deliberately absent from AgentVersion and session runtime snapshots.',
44751
+ items: {
44752
+ type: 'ManagedAgentsTag',
44753
+ description: 'An organization-scoped classification definition. Applying or removing it changes only catalog membership: it does not update the agent, mint an AgentVersion, or affect running sessions.',
44754
+ fields: [
44755
+ {
44756
+ name: 'color',
44757
+ required: false,
44758
+ type: 'string',
44759
+ description: 'Display color in #RRGGBB form.',
44760
+ minLength: 7,
44761
+ maxLength: 7,
44762
+ pattern: '^#[0-9A-Fa-f]{6}$',
44763
+ },
44764
+ {
44765
+ name: 'created_at',
44766
+ required: false,
44767
+ type: 'string',
44768
+ description: 'Server-assigned RFC 3339 timestamp of when the tag was created.',
44769
+ format: 'date-time',
44770
+ },
44771
+ {
44772
+ name: 'description',
44773
+ required: false,
44774
+ type: 'string',
44775
+ description: 'Optional operator-facing explanation of the classification, up to 280 characters.',
44776
+ maxLength: 280,
44777
+ },
44778
+ {
44779
+ name: 'label',
44780
+ required: false,
44781
+ type: 'string',
44782
+ description: 'Display label, trimmed by the service. Unique case-insensitively among live tags in this organization.',
44783
+ minLength: 1,
44784
+ maxLength: 32,
44785
+ },
44786
+ {
44787
+ name: 'organization_id',
44788
+ required: false,
44789
+ type: 'string',
44790
+ description: 'Labelbox organization that owns the tag. Server-assigned from the authenticated principal and never accepted as authority from the request body.',
44791
+ },
44792
+ {
44793
+ name: 'tag_id',
44794
+ required: false,
44795
+ type: 'string',
44796
+ description: 'Server-assigned tag id (UUID).',
44797
+ format: 'uuid',
44798
+ },
44799
+ {
44800
+ name: 'updated_at',
44801
+ required: false,
44802
+ type: 'string',
44803
+ description: 'Server-assigned RFC 3339 timestamp of the most recent definition update.',
44804
+ format: 'date-time',
44805
+ },
44806
+ ],
44807
+ },
44808
+ },
44642
44809
  {
44643
44810
  name: 'toolsets',
44644
44811
  required: false,
@@ -46069,6 +46236,110 @@ export const SDK_REFERENCE = {
46069
46236
  ],
46070
46237
  },
46071
46238
  },
46239
+ managedAgentsCreateTag: {
46240
+ operationId: 'managedAgentsCreateTag',
46241
+ tag: 'managed-agents',
46242
+ callPath: ['managedAgents', 'createTag'],
46243
+ namespace: 'managedAgents',
46244
+ method: 'createTag',
46245
+ bodyKey: 'body',
46246
+ signature: 'rl.managedAgents.createTag({ body })',
46247
+ example: 'const result = await rl.managedAgents.createTag({\n body: {\n color: "#14b8a6",\n description: "example",\n label: "example"\n },\n});',
46248
+ cliInvocation: 'rl managed-agents create-tag',
46249
+ cliExample: "rl managed-agents create-tag \\\n --color '#14b8a6' \\\n --label 'example' \\\n --from-json body.json",
46250
+ curlExample: 'curl -X POST \'https://api.recursion.labelbox.com/managed-agents/v1/tags\' \\\n -H \'Authorization: Bearer $LABELBOX_API_KEY\' \\\n -H \'Content-Type: application/json\' \\\n -d \'{\n "color": "#14b8a6",\n "description": "example",\n "label": "example"\n }\'',
46251
+ summary: 'Create an organization tag',
46252
+ description: 'Creates a mutable classification definition in the calling organization. Labels are trimmed and case-insensitively unique among live tags; deleting a tag releases its label.',
46253
+ httpMethod: 'post',
46254
+ path: '/managed-agents/v1/tags',
46255
+ requiredPermissions: ['managed-agents:create'],
46256
+ params: [
46257
+ {
46258
+ name: 'color',
46259
+ in: 'body',
46260
+ required: true,
46261
+ type: 'string',
46262
+ description: 'Display color in #RRGGBB form.',
46263
+ minLength: 7,
46264
+ maxLength: 7,
46265
+ pattern: '^#[0-9A-Fa-f]{6}$',
46266
+ },
46267
+ {
46268
+ name: 'description',
46269
+ in: 'body',
46270
+ required: false,
46271
+ type: 'string',
46272
+ description: 'Optional operator-facing explanation of this classification, up to 280 characters.',
46273
+ maxLength: 280,
46274
+ },
46275
+ {
46276
+ name: 'label',
46277
+ in: 'body',
46278
+ required: true,
46279
+ type: 'string',
46280
+ description: 'Display label. Leading and trailing whitespace is removed; the result must contain 1-32 characters and be unique case-insensitively among live tags in the organization.',
46281
+ minLength: 1,
46282
+ maxLength: 32,
46283
+ },
46284
+ ],
46285
+ response: {
46286
+ type: 'ManagedAgentsTag',
46287
+ description: 'An organization-scoped classification definition. Applying or removing it changes only catalog membership: it does not update the agent, mint an AgentVersion, or affect running sessions.',
46288
+ fields: [
46289
+ {
46290
+ name: 'color',
46291
+ required: false,
46292
+ type: 'string',
46293
+ description: 'Display color in #RRGGBB form.',
46294
+ minLength: 7,
46295
+ maxLength: 7,
46296
+ pattern: '^#[0-9A-Fa-f]{6}$',
46297
+ },
46298
+ {
46299
+ name: 'created_at',
46300
+ required: false,
46301
+ type: 'string',
46302
+ description: 'Server-assigned RFC 3339 timestamp of when the tag was created.',
46303
+ format: 'date-time',
46304
+ },
46305
+ {
46306
+ name: 'description',
46307
+ required: false,
46308
+ type: 'string',
46309
+ description: 'Optional operator-facing explanation of the classification, up to 280 characters.',
46310
+ maxLength: 280,
46311
+ },
46312
+ {
46313
+ name: 'label',
46314
+ required: false,
46315
+ type: 'string',
46316
+ description: 'Display label, trimmed by the service. Unique case-insensitively among live tags in this organization.',
46317
+ minLength: 1,
46318
+ maxLength: 32,
46319
+ },
46320
+ {
46321
+ name: 'organization_id',
46322
+ required: false,
46323
+ type: 'string',
46324
+ description: 'Labelbox organization that owns the tag. Server-assigned from the authenticated principal and never accepted as authority from the request body.',
46325
+ },
46326
+ {
46327
+ name: 'tag_id',
46328
+ required: false,
46329
+ type: 'string',
46330
+ description: 'Server-assigned tag id (UUID).',
46331
+ format: 'uuid',
46332
+ },
46333
+ {
46334
+ name: 'updated_at',
46335
+ required: false,
46336
+ type: 'string',
46337
+ description: 'Server-assigned RFC 3339 timestamp of the most recent definition update.',
46338
+ format: 'date-time',
46339
+ },
46340
+ ],
46341
+ },
46342
+ },
46072
46343
  managedAgentsCreateVault: {
46073
46344
  operationId: 'managedAgentsCreateVault',
46074
46345
  tag: 'managed-agents',
@@ -47236,7 +47507,7 @@ export const SDK_REFERENCE = {
47236
47507
  ],
47237
47508
  response: {
47238
47509
  type: 'ManagedAgentsDeletedResponse',
47239
- description: 'Shared response body of every soft-delete endpoint, on agents, environments, environment worker keys, vaults, vault credentials, webhook bindings, and sessions. Soft delete is a tombstone, not an erase: the row stops appearing in list and get responses but is retained, and there is no undelete endpoint to bring it back. Irreversible erasure is the separate, confirmation-gated purge path.',
47510
+ description: 'Shared response body of every soft-delete endpoint, on agents, environments, environment worker keys, tags, vaults, vault credentials, webhook bindings, and sessions. Soft delete is a tombstone, not an erase: the row stops appearing in list and get responses but is retained, and there is no undelete endpoint to bring it back. Irreversible erasure is the separate, confirmation-gated purge path.',
47240
47511
  fields: [
47241
47512
  {
47242
47513
  name: 'deleted',
@@ -47301,7 +47572,7 @@ export const SDK_REFERENCE = {
47301
47572
  ],
47302
47573
  response: {
47303
47574
  type: 'ManagedAgentsDeletedResponse',
47304
- description: 'Shared response body of every soft-delete endpoint, on agents, environments, environment worker keys, vaults, vault credentials, webhook bindings, and sessions. Soft delete is a tombstone, not an erase: the row stops appearing in list and get responses but is retained, and there is no undelete endpoint to bring it back. Irreversible erasure is the separate, confirmation-gated purge path.',
47575
+ description: 'Shared response body of every soft-delete endpoint, on agents, environments, environment worker keys, tags, vaults, vault credentials, webhook bindings, and sessions. Soft delete is a tombstone, not an erase: the row stops appearing in list and get responses but is retained, and there is no undelete endpoint to bring it back. Irreversible erasure is the separate, confirmation-gated purge path.',
47305
47576
  fields: [
47306
47577
  {
47307
47578
  name: 'deleted',
@@ -47402,7 +47673,7 @@ export const SDK_REFERENCE = {
47402
47673
  ],
47403
47674
  response: {
47404
47675
  type: 'ManagedAgentsDeletedResponse',
47405
- description: 'Shared response body of every soft-delete endpoint, on agents, environments, environment worker keys, vaults, vault credentials, webhook bindings, and sessions. Soft delete is a tombstone, not an erase: the row stops appearing in list and get responses but is retained, and there is no undelete endpoint to bring it back. Irreversible erasure is the separate, confirmation-gated purge path.',
47676
+ description: 'Shared response body of every soft-delete endpoint, on agents, environments, environment worker keys, tags, vaults, vault credentials, webhook bindings, and sessions. Soft delete is a tombstone, not an erase: the row stops appearing in list and get responses but is retained, and there is no undelete endpoint to bring it back. Irreversible erasure is the separate, confirmation-gated purge path.',
47406
47677
  fields: [
47407
47678
  {
47408
47679
  name: 'deleted',
@@ -47441,7 +47712,46 @@ export const SDK_REFERENCE = {
47441
47712
  ],
47442
47713
  response: {
47443
47714
  type: 'ManagedAgentsDeletedResponse',
47444
- description: 'Shared response body of every soft-delete endpoint, on agents, environments, environment worker keys, vaults, vault credentials, webhook bindings, and sessions. Soft delete is a tombstone, not an erase: the row stops appearing in list and get responses but is retained, and there is no undelete endpoint to bring it back. Irreversible erasure is the separate, confirmation-gated purge path.',
47715
+ description: 'Shared response body of every soft-delete endpoint, on agents, environments, environment worker keys, tags, vaults, vault credentials, webhook bindings, and sessions. Soft delete is a tombstone, not an erase: the row stops appearing in list and get responses but is retained, and there is no undelete endpoint to bring it back. Irreversible erasure is the separate, confirmation-gated purge path.',
47716
+ fields: [
47717
+ {
47718
+ name: 'deleted',
47719
+ required: false,
47720
+ type: 'boolean',
47721
+ description: 'Always true. The record was soft deleted and is now excluded from reads; a delete that did not happen is an HTTP error instead, so this field never reports false.',
47722
+ },
47723
+ ],
47724
+ },
47725
+ },
47726
+ managedAgentsDeleteTag: {
47727
+ operationId: 'managedAgentsDeleteTag',
47728
+ tag: 'managed-agents',
47729
+ callPath: ['managedAgents', 'deleteTag'],
47730
+ namespace: 'managedAgents',
47731
+ method: 'deleteTag',
47732
+ signature: 'rl.managedAgents.deleteTag({ tag_id })',
47733
+ example: "const result = await rl.managedAgents.deleteTag({\n tag_id: '<tag_id>',\n});",
47734
+ cliInvocation: 'rl managed-agents delete-tag',
47735
+ cliExample: 'rl managed-agents delete-tag \\\n --tag_id <tag_id>',
47736
+ curlExample: "curl -X DELETE 'https://api.recursion.labelbox.com/managed-agents/v1/tags/<tag_id>' \\\n -H 'Authorization: Bearer $LABELBOX_API_KEY'",
47737
+ summary: 'Soft delete a tag',
47738
+ description: 'Soft deletes the bounded definition row. Live-definition joins immediately hide every application without rewriting them; agents and immutable versions are untouched, and the label may be reused.',
47739
+ httpMethod: 'delete',
47740
+ path: '/managed-agents/v1/tags/{tag_id}',
47741
+ requiredPermissions: ['managed-agents:delete'],
47742
+ params: [
47743
+ {
47744
+ name: 'tag_id',
47745
+ in: 'path',
47746
+ required: true,
47747
+ type: 'string',
47748
+ description: 'Tag id (UUID) as returned by createTag or listTags.',
47749
+ format: 'uuid',
47750
+ },
47751
+ ],
47752
+ response: {
47753
+ type: 'ManagedAgentsDeletedResponse',
47754
+ description: 'Shared response body of every soft-delete endpoint, on agents, environments, environment worker keys, tags, vaults, vault credentials, webhook bindings, and sessions. Soft delete is a tombstone, not an erase: the row stops appearing in list and get responses but is retained, and there is no undelete endpoint to bring it back. Irreversible erasure is the separate, confirmation-gated purge path.',
47445
47755
  fields: [
47446
47756
  {
47447
47757
  name: 'deleted',
@@ -47480,7 +47790,7 @@ export const SDK_REFERENCE = {
47480
47790
  ],
47481
47791
  response: {
47482
47792
  type: 'ManagedAgentsDeletedResponse',
47483
- description: 'Shared response body of every soft-delete endpoint, on agents, environments, environment worker keys, vaults, vault credentials, webhook bindings, and sessions. Soft delete is a tombstone, not an erase: the row stops appearing in list and get responses but is retained, and there is no undelete endpoint to bring it back. Irreversible erasure is the separate, confirmation-gated purge path.',
47793
+ description: 'Shared response body of every soft-delete endpoint, on agents, environments, environment worker keys, tags, vaults, vault credentials, webhook bindings, and sessions. Soft delete is a tombstone, not an erase: the row stops appearing in list and get responses but is retained, and there is no undelete endpoint to bring it back. Irreversible erasure is the separate, confirmation-gated purge path.',
47484
47794
  fields: [
47485
47795
  {
47486
47796
  name: 'deleted',
@@ -47519,7 +47829,7 @@ export const SDK_REFERENCE = {
47519
47829
  ],
47520
47830
  response: {
47521
47831
  type: 'ManagedAgentsDeletedResponse',
47522
- description: 'Shared response body of every soft-delete endpoint, on agents, environments, environment worker keys, vaults, vault credentials, webhook bindings, and sessions. Soft delete is a tombstone, not an erase: the row stops appearing in list and get responses but is retained, and there is no undelete endpoint to bring it back. Irreversible erasure is the separate, confirmation-gated purge path.',
47832
+ description: 'Shared response body of every soft-delete endpoint, on agents, environments, environment worker keys, tags, vaults, vault credentials, webhook bindings, and sessions. Soft delete is a tombstone, not an erase: the row stops appearing in list and get responses but is retained, and there is no undelete endpoint to bring it back. Irreversible erasure is the separate, confirmation-gated purge path.',
47523
47833
  fields: [
47524
47834
  {
47525
47835
  name: 'deleted',
@@ -47566,7 +47876,7 @@ export const SDK_REFERENCE = {
47566
47876
  ],
47567
47877
  response: {
47568
47878
  type: 'ManagedAgentsDeletedResponse',
47569
- description: 'Shared response body of every soft-delete endpoint, on agents, environments, environment worker keys, vaults, vault credentials, webhook bindings, and sessions. Soft delete is a tombstone, not an erase: the row stops appearing in list and get responses but is retained, and there is no undelete endpoint to bring it back. Irreversible erasure is the separate, confirmation-gated purge path.',
47879
+ description: 'Shared response body of every soft-delete endpoint, on agents, environments, environment worker keys, tags, vaults, vault credentials, webhook bindings, and sessions. Soft delete is a tombstone, not an erase: the row stops appearing in list and get responses but is retained, and there is no undelete endpoint to bring it back. Irreversible erasure is the separate, confirmation-gated purge path.',
47570
47880
  fields: [
47571
47881
  {
47572
47882
  name: 'deleted',
@@ -47631,7 +47941,7 @@ export const SDK_REFERENCE = {
47631
47941
  ],
47632
47942
  response: {
47633
47943
  type: 'ManagedAgentsAgent',
47634
- description: 'A configured agent: its model, system prompt, tool and MCP surface, and the vault defaults new sessions inherit. Mutating an agent mints a new immutable AgentVersion; a session records the version it ran.',
47944
+ description: 'A configured agent: its versioned execution definition plus current mutable classification tags. Patching the execution definition mints a new immutable AgentVersion; applying tags does not. A session records the version it ran and never snapshots tags.',
47635
47945
  fields: [
47636
47946
  {
47637
47947
  name: 'agent_id',
@@ -47793,6 +48103,69 @@ export const SDK_REFERENCE = {
47793
48103
  type: 'string',
47794
48104
  description: 'System prompt prepended to every conversation this agent runs.',
47795
48105
  },
48106
+ {
48107
+ name: 'tags',
48108
+ required: true,
48109
+ type: 'ManagedAgentsTag[]',
48110
+ description: 'Current organization-scoped classification tags applied to this agent. Always an array. Tags are mutable catalog metadata and are deliberately absent from AgentVersion and session runtime snapshots.',
48111
+ items: {
48112
+ type: 'ManagedAgentsTag',
48113
+ description: 'An organization-scoped classification definition. Applying or removing it changes only catalog membership: it does not update the agent, mint an AgentVersion, or affect running sessions.',
48114
+ fields: [
48115
+ {
48116
+ name: 'color',
48117
+ required: false,
48118
+ type: 'string',
48119
+ description: 'Display color in #RRGGBB form.',
48120
+ minLength: 7,
48121
+ maxLength: 7,
48122
+ pattern: '^#[0-9A-Fa-f]{6}$',
48123
+ },
48124
+ {
48125
+ name: 'created_at',
48126
+ required: false,
48127
+ type: 'string',
48128
+ description: 'Server-assigned RFC 3339 timestamp of when the tag was created.',
48129
+ format: 'date-time',
48130
+ },
48131
+ {
48132
+ name: 'description',
48133
+ required: false,
48134
+ type: 'string',
48135
+ description: 'Optional operator-facing explanation of the classification, up to 280 characters.',
48136
+ maxLength: 280,
48137
+ },
48138
+ {
48139
+ name: 'label',
48140
+ required: false,
48141
+ type: 'string',
48142
+ description: 'Display label, trimmed by the service. Unique case-insensitively among live tags in this organization.',
48143
+ minLength: 1,
48144
+ maxLength: 32,
48145
+ },
48146
+ {
48147
+ name: 'organization_id',
48148
+ required: false,
48149
+ type: 'string',
48150
+ description: 'Labelbox organization that owns the tag. Server-assigned from the authenticated principal and never accepted as authority from the request body.',
48151
+ },
48152
+ {
48153
+ name: 'tag_id',
48154
+ required: false,
48155
+ type: 'string',
48156
+ description: 'Server-assigned tag id (UUID).',
48157
+ format: 'uuid',
48158
+ },
48159
+ {
48160
+ name: 'updated_at',
48161
+ required: false,
48162
+ type: 'string',
48163
+ description: 'Server-assigned RFC 3339 timestamp of the most recent definition update.',
48164
+ format: 'date-time',
48165
+ },
48166
+ ],
48167
+ },
48168
+ },
47796
48169
  {
47797
48170
  name: 'toolsets',
47798
48171
  required: false,
@@ -51262,25 +51635,109 @@ export const SDK_REFERENCE = {
51262
51635
  ],
51263
51636
  },
51264
51637
  },
51265
- managedAgentsGetVault: {
51266
- operationId: 'managedAgentsGetVault',
51638
+ managedAgentsGetTag: {
51639
+ operationId: 'managedAgentsGetTag',
51267
51640
  tag: 'managed-agents',
51268
- callPath: ['managedAgents', 'getVault'],
51641
+ callPath: ['managedAgents', 'getTag'],
51269
51642
  namespace: 'managedAgents',
51270
- method: 'getVault',
51271
- signature: 'rl.managedAgents.getVault({ vault_id })',
51272
- example: "const result = await rl.managedAgents.getVault({\n vault_id: '<vault_id>',\n});",
51273
- cliInvocation: 'rl managed-agents get-vault',
51274
- cliExample: 'rl managed-agents get-vault \\\n --vault_id <vault_id>',
51275
- curlExample: "curl -X GET 'https://api.recursion.labelbox.com/managed-agents/v1/vaults/<vault_id>' \\\n -H 'Authorization: Bearer $LABELBOX_API_KEY'",
51276
- summary: 'Get a credential vault',
51277
- description: 'Returns one vault with its display name and metadata. Its credential references are listed separately by listVaultCredentials.',
51643
+ method: 'getTag',
51644
+ signature: 'rl.managedAgents.getTag({ tag_id })',
51645
+ example: "const result = await rl.managedAgents.getTag({\n tag_id: '<tag_id>',\n});",
51646
+ cliInvocation: 'rl managed-agents get-tag',
51647
+ cliExample: 'rl managed-agents get-tag \\\n --tag_id <tag_id>',
51648
+ curlExample: "curl -X GET 'https://api.recursion.labelbox.com/managed-agents/v1/tags/<tag_id>' \\\n -H 'Authorization: Bearer $LABELBOX_API_KEY'",
51649
+ summary: 'Get one organization tag',
51650
+ description: 'Returns one live tag definition. Unknown, deleted, and cross-organization ids all return the same 404.',
51278
51651
  httpMethod: 'get',
51279
- path: '/managed-agents/v1/vaults/{vault_id}',
51652
+ path: '/managed-agents/v1/tags/{tag_id}',
51280
51653
  requiredPermissions: ['managed-agents:read'],
51281
51654
  params: [
51282
51655
  {
51283
- name: 'vault_id',
51656
+ name: 'tag_id',
51657
+ in: 'path',
51658
+ required: true,
51659
+ type: 'string',
51660
+ description: 'Tag id (UUID) as returned by createTag or listTags.',
51661
+ format: 'uuid',
51662
+ },
51663
+ ],
51664
+ response: {
51665
+ type: 'ManagedAgentsTag',
51666
+ description: 'An organization-scoped classification definition. Applying or removing it changes only catalog membership: it does not update the agent, mint an AgentVersion, or affect running sessions.',
51667
+ fields: [
51668
+ {
51669
+ name: 'color',
51670
+ required: false,
51671
+ type: 'string',
51672
+ description: 'Display color in #RRGGBB form.',
51673
+ minLength: 7,
51674
+ maxLength: 7,
51675
+ pattern: '^#[0-9A-Fa-f]{6}$',
51676
+ },
51677
+ {
51678
+ name: 'created_at',
51679
+ required: false,
51680
+ type: 'string',
51681
+ description: 'Server-assigned RFC 3339 timestamp of when the tag was created.',
51682
+ format: 'date-time',
51683
+ },
51684
+ {
51685
+ name: 'description',
51686
+ required: false,
51687
+ type: 'string',
51688
+ description: 'Optional operator-facing explanation of the classification, up to 280 characters.',
51689
+ maxLength: 280,
51690
+ },
51691
+ {
51692
+ name: 'label',
51693
+ required: false,
51694
+ type: 'string',
51695
+ description: 'Display label, trimmed by the service. Unique case-insensitively among live tags in this organization.',
51696
+ minLength: 1,
51697
+ maxLength: 32,
51698
+ },
51699
+ {
51700
+ name: 'organization_id',
51701
+ required: false,
51702
+ type: 'string',
51703
+ description: 'Labelbox organization that owns the tag. Server-assigned from the authenticated principal and never accepted as authority from the request body.',
51704
+ },
51705
+ {
51706
+ name: 'tag_id',
51707
+ required: false,
51708
+ type: 'string',
51709
+ description: 'Server-assigned tag id (UUID).',
51710
+ format: 'uuid',
51711
+ },
51712
+ {
51713
+ name: 'updated_at',
51714
+ required: false,
51715
+ type: 'string',
51716
+ description: 'Server-assigned RFC 3339 timestamp of the most recent definition update.',
51717
+ format: 'date-time',
51718
+ },
51719
+ ],
51720
+ },
51721
+ },
51722
+ managedAgentsGetVault: {
51723
+ operationId: 'managedAgentsGetVault',
51724
+ tag: 'managed-agents',
51725
+ callPath: ['managedAgents', 'getVault'],
51726
+ namespace: 'managedAgents',
51727
+ method: 'getVault',
51728
+ signature: 'rl.managedAgents.getVault({ vault_id })',
51729
+ example: "const result = await rl.managedAgents.getVault({\n vault_id: '<vault_id>',\n});",
51730
+ cliInvocation: 'rl managed-agents get-vault',
51731
+ cliExample: 'rl managed-agents get-vault \\\n --vault_id <vault_id>',
51732
+ curlExample: "curl -X GET 'https://api.recursion.labelbox.com/managed-agents/v1/vaults/<vault_id>' \\\n -H 'Authorization: Bearer $LABELBOX_API_KEY'",
51733
+ summary: 'Get a credential vault',
51734
+ description: 'Returns one vault with its display name and metadata. Its credential references are listed separately by listVaultCredentials.',
51735
+ httpMethod: 'get',
51736
+ path: '/managed-agents/v1/vaults/{vault_id}',
51737
+ requiredPermissions: ['managed-agents:read'],
51738
+ params: [
51739
+ {
51740
+ name: 'vault_id',
51284
51741
  in: 'path',
51285
51742
  required: true,
51286
51743
  type: 'string',
@@ -51854,16 +52311,24 @@ export const SDK_REFERENCE = {
51854
52311
  namespace: 'managedAgents',
51855
52312
  method: 'listAgents',
51856
52313
  signature: 'rl.managedAgents.listAgents()',
51857
- example: 'const result = await rl.managedAgents.listAgents();',
52314
+ example: 'const result = await rl.managedAgents.listAgents({\n // optional: tag_ids\n});',
51858
52315
  cliInvocation: 'rl managed-agents list-agents',
51859
52316
  cliExample: 'rl managed-agents list-agents',
51860
52317
  curlExample: "curl -X GET 'https://api.recursion.labelbox.com/managed-agents/v1/agents' \\\n -H 'Authorization: Bearer $LABELBOX_API_KEY'",
51861
52318
  summary: 'List agents',
51862
- description: 'Returns every agent in the calling organization, each resolved to its latest immutable version. Soft-deleted agents are omitted, and the response is not paginated.',
52319
+ description: 'Returns every agent in the calling organization, each resolved to its latest immutable version and hydrated with current tag definitions in one batch. tag_ids is a comma-separated AND filter: every returned agent carries every requested tag. Soft-deleted agents are omitted, and the response is not paginated.',
51863
52320
  httpMethod: 'get',
51864
52321
  path: '/managed-agents/v1/agents',
51865
52322
  requiredPermissions: ['managed-agents:read'],
51866
- params: [],
52323
+ params: [
52324
+ {
52325
+ name: 'tag_ids',
52326
+ in: 'query',
52327
+ required: false,
52328
+ type: 'string',
52329
+ description: 'Comma-separated tag ids, with at most 32 distinct ids. Blank segments are ignored. An agent must carry every requested tag (AND semantics). Unknown or cross-organization ids return 404.',
52330
+ },
52331
+ ],
51867
52332
  response: {
51868
52333
  type: 'ManagedAgentsAgentListResponse',
51869
52334
  description: "Response body of GET /v1/agents. Unpaginated: the whole organization is returned in one document, so callers need no cursor here. Each row is the agent's current mutable definition; its immutable snapshots are listed by GET /v1/agents/{agent_id}/versions.",
@@ -52621,12 +53086,12 @@ export const SDK_REFERENCE = {
52621
53086
  namespace: 'managedAgents',
52622
53087
  method: 'listSessions',
52623
53088
  signature: 'rl.managedAgents.listSessions()',
52624
- example: 'const result = await rl.managedAgents.listSessions({\n // optional: status, kind, agent_id, external_source_type, external_source_id, root_only, limit\n});',
53089
+ example: 'const result = await rl.managedAgents.listSessions({\n // optional: status, kind, agent_id, tag_ids, external_source_type, external_source_id, root_only, limit\n});',
52625
53090
  cliInvocation: 'rl managed-agents list-sessions',
52626
53091
  cliExample: 'rl managed-agents list-sessions',
52627
53092
  curlExample: "curl -X GET 'https://api.recursion.labelbox.com/managed-agents/v1/sessions' \\\n -H 'Authorization: Bearer $LABELBOX_API_KEY'",
52628
53093
  summary: 'List sessions',
52629
- description: 'Returns sessions in the calling organization, most recent first, filtered by any combination of status, kind, agent_id, and external source. kind accepts a comma-separated list, which is how a caller selects agent sessions without RL rollouts. Capped by limit (default 100, max 1000) rather than cursor-paginated.',
53094
+ description: 'Returns sessions in the calling organization, most recent first, filtered by any combination of status, kind, agent_id, current agent tag_ids, and external source. kind accepts a comma-separated list, while tag_ids uses AND semantics. Capped by limit (default 100, max 1000) rather than cursor-paginated.',
52630
53095
  httpMethod: 'get',
52631
53096
  path: '/managed-agents/v1/sessions',
52632
53097
  requiredPermissions: ['managed-agents:read'],
@@ -52652,6 +53117,13 @@ export const SDK_REFERENCE = {
52652
53117
  type: 'string',
52653
53118
  description: 'Filter by agent id.',
52654
53119
  },
53120
+ {
53121
+ name: 'tag_ids',
53122
+ in: 'query',
53123
+ required: false,
53124
+ type: 'string',
53125
+ description: "Comma-separated current agent tag ids, with at most 32 distinct ids. A session row's agent must carry every requested tag (AND semantics). Unknown or cross-organization ids return 404. Tags are resolved at read time, not from the session snapshot.",
53126
+ },
52655
53127
  {
52656
53128
  name: 'external_source_type',
52657
53129
  in: 'query',
@@ -52762,6 +53234,93 @@ export const SDK_REFERENCE = {
52762
53234
  ],
52763
53235
  },
52764
53236
  },
53237
+ managedAgentsListTags: {
53238
+ operationId: 'managedAgentsListTags',
53239
+ tag: 'managed-agents',
53240
+ callPath: ['managedAgents', 'listTags'],
53241
+ namespace: 'managedAgents',
53242
+ method: 'listTags',
53243
+ signature: 'rl.managedAgents.listTags()',
53244
+ example: 'const result = await rl.managedAgents.listTags();',
53245
+ cliInvocation: 'rl managed-agents list-tags',
53246
+ cliExample: 'rl managed-agents list-tags',
53247
+ curlExample: "curl -X GET 'https://api.recursion.labelbox.com/managed-agents/v1/tags' \\\n -H 'Authorization: Bearer $LABELBOX_API_KEY'",
53248
+ summary: 'List organization tags',
53249
+ description: 'Returns every live tag definition in the calling organization. The list is bounded by the 200-tag organization quota and is not paginated.',
53250
+ httpMethod: 'get',
53251
+ path: '/managed-agents/v1/tags',
53252
+ requiredPermissions: ['managed-agents:read'],
53253
+ params: [],
53254
+ response: {
53255
+ type: 'ManagedAgentsTagListResponse',
53256
+ description: "A complete set of organization-scoped tag definitions. GET /v1/tags returns the organization catalog; agent tag PUT routes return the agent's resulting exact set.",
53257
+ fields: [
53258
+ {
53259
+ name: 'tags',
53260
+ required: true,
53261
+ type: 'ManagedAgentsTag[]',
53262
+ description: 'The complete live tag set for this response. Always an array; an empty array means no definitions exist or the agent has no classifications.',
53263
+ items: {
53264
+ type: 'ManagedAgentsTag',
53265
+ description: 'An organization-scoped classification definition. Applying or removing it changes only catalog membership: it does not update the agent, mint an AgentVersion, or affect running sessions.',
53266
+ fields: [
53267
+ {
53268
+ name: 'color',
53269
+ required: false,
53270
+ type: 'string',
53271
+ description: 'Display color in #RRGGBB form.',
53272
+ minLength: 7,
53273
+ maxLength: 7,
53274
+ pattern: '^#[0-9A-Fa-f]{6}$',
53275
+ },
53276
+ {
53277
+ name: 'created_at',
53278
+ required: false,
53279
+ type: 'string',
53280
+ description: 'Server-assigned RFC 3339 timestamp of when the tag was created.',
53281
+ format: 'date-time',
53282
+ },
53283
+ {
53284
+ name: 'description',
53285
+ required: false,
53286
+ type: 'string',
53287
+ description: 'Optional operator-facing explanation of the classification, up to 280 characters.',
53288
+ maxLength: 280,
53289
+ },
53290
+ {
53291
+ name: 'label',
53292
+ required: false,
53293
+ type: 'string',
53294
+ description: 'Display label, trimmed by the service. Unique case-insensitively among live tags in this organization.',
53295
+ minLength: 1,
53296
+ maxLength: 32,
53297
+ },
53298
+ {
53299
+ name: 'organization_id',
53300
+ required: false,
53301
+ type: 'string',
53302
+ description: 'Labelbox organization that owns the tag. Server-assigned from the authenticated principal and never accepted as authority from the request body.',
53303
+ },
53304
+ {
53305
+ name: 'tag_id',
53306
+ required: false,
53307
+ type: 'string',
53308
+ description: 'Server-assigned tag id (UUID).',
53309
+ format: 'uuid',
53310
+ },
53311
+ {
53312
+ name: 'updated_at',
53313
+ required: false,
53314
+ type: 'string',
53315
+ description: 'Server-assigned RFC 3339 timestamp of the most recent definition update.',
53316
+ format: 'date-time',
53317
+ },
53318
+ ],
53319
+ },
53320
+ },
53321
+ ],
53322
+ },
53323
+ },
52765
53324
  managedAgentsListTriggerBindings: {
52766
53325
  operationId: 'managedAgentsListTriggerBindings',
52767
53326
  tag: 'managed-agents',
@@ -53198,6 +53757,145 @@ export const SDK_REFERENCE = {
53198
53757
  },
53199
53758
  ],
53200
53759
  },
53760
+ managedAgentsRemoveAgentTag: {
53761
+ operationId: 'managedAgentsRemoveAgentTag',
53762
+ tag: 'managed-agents',
53763
+ callPath: ['managedAgents', 'removeAgentTag'],
53764
+ namespace: 'managedAgents',
53765
+ method: 'removeAgentTag',
53766
+ signature: 'rl.managedAgents.removeAgentTag({ agent_id, tag_id })',
53767
+ example: "const result = await rl.managedAgents.removeAgentTag({\n agent_id: '<agent_id>',\n tag_id: '<tag_id>',\n});",
53768
+ cliInvocation: 'rl managed-agents remove-agent-tag',
53769
+ cliExample: 'rl managed-agents remove-agent-tag \\\n --agent_id <agent_id> \\\n --tag_id <tag_id>',
53770
+ curlExample: "curl -X DELETE 'https://api.recursion.labelbox.com/managed-agents/v1/agents/<agent_id>/tags/<tag_id>' \\\n -H 'Authorization: Bearer $LABELBOX_API_KEY'",
53771
+ summary: 'Remove one tag from an agent',
53772
+ description: 'Removes the application and returns 204. Retrying after the relationship is already absent also returns 204; the agent and tag must still exist in the calling organization.',
53773
+ httpMethod: 'delete',
53774
+ path: '/managed-agents/v1/agents/{agent_id}/tags/{tag_id}',
53775
+ requiredPermissions: ['managed-agents:update'],
53776
+ params: [
53777
+ {
53778
+ name: 'agent_id',
53779
+ in: 'path',
53780
+ required: true,
53781
+ type: 'string',
53782
+ description: 'Agent id (UUID) as returned by createAgent or listAgents.',
53783
+ format: 'uuid',
53784
+ },
53785
+ {
53786
+ name: 'tag_id',
53787
+ in: 'path',
53788
+ required: true,
53789
+ type: 'string',
53790
+ description: 'Tag id (UUID) as returned by createTag or listTags.',
53791
+ format: 'uuid',
53792
+ },
53793
+ ],
53794
+ },
53795
+ managedAgentsReplaceAgentTags: {
53796
+ operationId: 'managedAgentsReplaceAgentTags',
53797
+ tag: 'managed-agents',
53798
+ callPath: ['managedAgents', 'replaceAgentTags'],
53799
+ namespace: 'managedAgents',
53800
+ method: 'replaceAgentTags',
53801
+ bodyKey: 'body',
53802
+ signature: 'rl.managedAgents.replaceAgentTags({ agent_id, body })',
53803
+ example: 'const result = await rl.managedAgents.replaceAgentTags({\n agent_id: \'<agent_id>\',\n body: {\n tag_ids: [\n "example"\n ]\n },\n});',
53804
+ cliInvocation: 'rl managed-agents replace-agent-tags',
53805
+ cliExample: 'rl managed-agents replace-agent-tags \\\n --agent_id <agent_id> \\\n --from-json body.json',
53806
+ curlExample: "curl -X PUT 'https://api.recursion.labelbox.com/managed-agents/v1/agents/<agent_id>/tags' \\\n -H 'Authorization: Bearer $LABELBOX_API_KEY' \\\n -H 'Content-Type: application/json' \\\n -d '{\n \"tag_ids\": [\n \"example\"\n ]\n }'",
53807
+ summary: "Replace an agent's complete tag set",
53808
+ description: "Atomically replaces the agent's classifications with tag_ids and returns the resulting full definitions. Every id must be live in the calling organization; [] clears the set. This never changes agent.updated_at or mints an AgentVersion.",
53809
+ httpMethod: 'put',
53810
+ path: '/managed-agents/v1/agents/{agent_id}/tags',
53811
+ requiredPermissions: ['managed-agents:update'],
53812
+ params: [
53813
+ {
53814
+ name: 'agent_id',
53815
+ in: 'path',
53816
+ required: true,
53817
+ type: 'string',
53818
+ description: 'Agent id (UUID) whose classifications are replaced.',
53819
+ format: 'uuid',
53820
+ },
53821
+ {
53822
+ name: 'tag_ids',
53823
+ in: 'body',
53824
+ required: true,
53825
+ type: 'string[]',
53826
+ description: "Complete replacement set of tag ids, with at most 32 distinct ids. Every id must be a live tag in the caller's organization. Duplicates are collapsed before enforcing the limit; [] removes every tag.",
53827
+ },
53828
+ ],
53829
+ response: {
53830
+ type: 'ManagedAgentsTagListResponse',
53831
+ description: "A complete set of organization-scoped tag definitions. GET /v1/tags returns the organization catalog; agent tag PUT routes return the agent's resulting exact set.",
53832
+ fields: [
53833
+ {
53834
+ name: 'tags',
53835
+ required: true,
53836
+ type: 'ManagedAgentsTag[]',
53837
+ description: 'The complete live tag set for this response. Always an array; an empty array means no definitions exist or the agent has no classifications.',
53838
+ items: {
53839
+ type: 'ManagedAgentsTag',
53840
+ description: 'An organization-scoped classification definition. Applying or removing it changes only catalog membership: it does not update the agent, mint an AgentVersion, or affect running sessions.',
53841
+ fields: [
53842
+ {
53843
+ name: 'color',
53844
+ required: false,
53845
+ type: 'string',
53846
+ description: 'Display color in #RRGGBB form.',
53847
+ minLength: 7,
53848
+ maxLength: 7,
53849
+ pattern: '^#[0-9A-Fa-f]{6}$',
53850
+ },
53851
+ {
53852
+ name: 'created_at',
53853
+ required: false,
53854
+ type: 'string',
53855
+ description: 'Server-assigned RFC 3339 timestamp of when the tag was created.',
53856
+ format: 'date-time',
53857
+ },
53858
+ {
53859
+ name: 'description',
53860
+ required: false,
53861
+ type: 'string',
53862
+ description: 'Optional operator-facing explanation of the classification, up to 280 characters.',
53863
+ maxLength: 280,
53864
+ },
53865
+ {
53866
+ name: 'label',
53867
+ required: false,
53868
+ type: 'string',
53869
+ description: 'Display label, trimmed by the service. Unique case-insensitively among live tags in this organization.',
53870
+ minLength: 1,
53871
+ maxLength: 32,
53872
+ },
53873
+ {
53874
+ name: 'organization_id',
53875
+ required: false,
53876
+ type: 'string',
53877
+ description: 'Labelbox organization that owns the tag. Server-assigned from the authenticated principal and never accepted as authority from the request body.',
53878
+ },
53879
+ {
53880
+ name: 'tag_id',
53881
+ required: false,
53882
+ type: 'string',
53883
+ description: 'Server-assigned tag id (UUID).',
53884
+ format: 'uuid',
53885
+ },
53886
+ {
53887
+ name: 'updated_at',
53888
+ required: false,
53889
+ type: 'string',
53890
+ description: 'Server-assigned RFC 3339 timestamp of the most recent definition update.',
53891
+ format: 'date-time',
53892
+ },
53893
+ ],
53894
+ },
53895
+ },
53896
+ ],
53897
+ },
53898
+ },
53201
53899
  managedAgentsRestoreMemoryVersion: {
53202
53900
  operationId: 'managedAgentsRestoreMemoryVersion',
53203
53901
  tag: 'managed-agents',
@@ -54066,7 +54764,7 @@ export const SDK_REFERENCE = {
54066
54764
  ],
54067
54765
  response: {
54068
54766
  type: 'ManagedAgentsAgent',
54069
- description: 'A configured agent: its model, system prompt, tool and MCP surface, and the vault defaults new sessions inherit. Mutating an agent mints a new immutable AgentVersion; a session records the version it ran.',
54767
+ description: 'A configured agent: its versioned execution definition plus current mutable classification tags. Patching the execution definition mints a new immutable AgentVersion; applying tags does not. A session records the version it ran and never snapshots tags.',
54070
54768
  fields: [
54071
54769
  {
54072
54770
  name: 'agent_id',
@@ -54228,6 +54926,69 @@ export const SDK_REFERENCE = {
54228
54926
  type: 'string',
54229
54927
  description: 'System prompt prepended to every conversation this agent runs.',
54230
54928
  },
54929
+ {
54930
+ name: 'tags',
54931
+ required: true,
54932
+ type: 'ManagedAgentsTag[]',
54933
+ description: 'Current organization-scoped classification tags applied to this agent. Always an array. Tags are mutable catalog metadata and are deliberately absent from AgentVersion and session runtime snapshots.',
54934
+ items: {
54935
+ type: 'ManagedAgentsTag',
54936
+ description: 'An organization-scoped classification definition. Applying or removing it changes only catalog membership: it does not update the agent, mint an AgentVersion, or affect running sessions.',
54937
+ fields: [
54938
+ {
54939
+ name: 'color',
54940
+ required: false,
54941
+ type: 'string',
54942
+ description: 'Display color in #RRGGBB form.',
54943
+ minLength: 7,
54944
+ maxLength: 7,
54945
+ pattern: '^#[0-9A-Fa-f]{6}$',
54946
+ },
54947
+ {
54948
+ name: 'created_at',
54949
+ required: false,
54950
+ type: 'string',
54951
+ description: 'Server-assigned RFC 3339 timestamp of when the tag was created.',
54952
+ format: 'date-time',
54953
+ },
54954
+ {
54955
+ name: 'description',
54956
+ required: false,
54957
+ type: 'string',
54958
+ description: 'Optional operator-facing explanation of the classification, up to 280 characters.',
54959
+ maxLength: 280,
54960
+ },
54961
+ {
54962
+ name: 'label',
54963
+ required: false,
54964
+ type: 'string',
54965
+ description: 'Display label, trimmed by the service. Unique case-insensitively among live tags in this organization.',
54966
+ minLength: 1,
54967
+ maxLength: 32,
54968
+ },
54969
+ {
54970
+ name: 'organization_id',
54971
+ required: false,
54972
+ type: 'string',
54973
+ description: 'Labelbox organization that owns the tag. Server-assigned from the authenticated principal and never accepted as authority from the request body.',
54974
+ },
54975
+ {
54976
+ name: 'tag_id',
54977
+ required: false,
54978
+ type: 'string',
54979
+ description: 'Server-assigned tag id (UUID).',
54980
+ format: 'uuid',
54981
+ },
54982
+ {
54983
+ name: 'updated_at',
54984
+ required: false,
54985
+ type: 'string',
54986
+ description: 'Server-assigned RFC 3339 timestamp of the most recent definition update.',
54987
+ format: 'date-time',
54988
+ },
54989
+ ],
54990
+ },
54991
+ },
54231
54992
  {
54232
54993
  name: 'toolsets',
54233
54994
  required: false,
@@ -55735,6 +56496,118 @@ export const SDK_REFERENCE = {
55735
56496
  ],
55736
56497
  },
55737
56498
  },
56499
+ managedAgentsUpdateTag: {
56500
+ operationId: 'managedAgentsUpdateTag',
56501
+ tag: 'managed-agents',
56502
+ callPath: ['managedAgents', 'updateTag'],
56503
+ namespace: 'managedAgents',
56504
+ method: 'updateTag',
56505
+ bodyKey: 'body',
56506
+ signature: 'rl.managedAgents.updateTag({ tag_id, body })',
56507
+ example: 'const result = await rl.managedAgents.updateTag({\n tag_id: \'<tag_id>\',\n body: {\n color: "#14b8a6",\n description: "example",\n label: "example"\n },\n});',
56508
+ cliInvocation: 'rl managed-agents update-tag',
56509
+ cliExample: 'rl managed-agents update-tag \\\n --tag_id <tag_id> \\\n --from-json body.json',
56510
+ curlExample: 'curl -X PATCH \'https://api.recursion.labelbox.com/managed-agents/v1/tags/<tag_id>\' \\\n -H \'Authorization: Bearer $LABELBOX_API_KEY\' \\\n -H \'Content-Type: application/json\' \\\n -d \'{\n "color": "#14b8a6",\n "description": "example",\n "label": "example"\n }\'',
56511
+ summary: 'Update a tag definition',
56512
+ description: "Changes a tag's label, color, or description without changing any application. This does not update an agent, mint an AgentVersion, or affect a running session.",
56513
+ httpMethod: 'patch',
56514
+ path: '/managed-agents/v1/tags/{tag_id}',
56515
+ requiredPermissions: ['managed-agents:update'],
56516
+ params: [
56517
+ {
56518
+ name: 'tag_id',
56519
+ in: 'path',
56520
+ required: true,
56521
+ type: 'string',
56522
+ description: 'Tag id (UUID) as returned by createTag or listTags.',
56523
+ format: 'uuid',
56524
+ },
56525
+ {
56526
+ name: 'color',
56527
+ in: 'body',
56528
+ required: false,
56529
+ type: 'string',
56530
+ description: 'Replacement display color in #RRGGBB form. Omit to keep the current color.',
56531
+ minLength: 7,
56532
+ maxLength: 7,
56533
+ pattern: '^#[0-9A-Fa-f]{6}$',
56534
+ },
56535
+ {
56536
+ name: 'description',
56537
+ in: 'body',
56538
+ required: false,
56539
+ type: 'string',
56540
+ description: 'Replacement description. Send an empty string to clear it; omit to keep the current description.',
56541
+ maxLength: 280,
56542
+ },
56543
+ {
56544
+ name: 'label',
56545
+ in: 'body',
56546
+ required: false,
56547
+ type: 'string',
56548
+ description: 'Replacement display label. Leading and trailing whitespace is removed. Omit to keep the current label.',
56549
+ minLength: 1,
56550
+ maxLength: 32,
56551
+ },
56552
+ ],
56553
+ response: {
56554
+ type: 'ManagedAgentsTag',
56555
+ description: 'An organization-scoped classification definition. Applying or removing it changes only catalog membership: it does not update the agent, mint an AgentVersion, or affect running sessions.',
56556
+ fields: [
56557
+ {
56558
+ name: 'color',
56559
+ required: false,
56560
+ type: 'string',
56561
+ description: 'Display color in #RRGGBB form.',
56562
+ minLength: 7,
56563
+ maxLength: 7,
56564
+ pattern: '^#[0-9A-Fa-f]{6}$',
56565
+ },
56566
+ {
56567
+ name: 'created_at',
56568
+ required: false,
56569
+ type: 'string',
56570
+ description: 'Server-assigned RFC 3339 timestamp of when the tag was created.',
56571
+ format: 'date-time',
56572
+ },
56573
+ {
56574
+ name: 'description',
56575
+ required: false,
56576
+ type: 'string',
56577
+ description: 'Optional operator-facing explanation of the classification, up to 280 characters.',
56578
+ maxLength: 280,
56579
+ },
56580
+ {
56581
+ name: 'label',
56582
+ required: false,
56583
+ type: 'string',
56584
+ description: 'Display label, trimmed by the service. Unique case-insensitively among live tags in this organization.',
56585
+ minLength: 1,
56586
+ maxLength: 32,
56587
+ },
56588
+ {
56589
+ name: 'organization_id',
56590
+ required: false,
56591
+ type: 'string',
56592
+ description: 'Labelbox organization that owns the tag. Server-assigned from the authenticated principal and never accepted as authority from the request body.',
56593
+ },
56594
+ {
56595
+ name: 'tag_id',
56596
+ required: false,
56597
+ type: 'string',
56598
+ description: 'Server-assigned tag id (UUID).',
56599
+ format: 'uuid',
56600
+ },
56601
+ {
56602
+ name: 'updated_at',
56603
+ required: false,
56604
+ type: 'string',
56605
+ description: 'Server-assigned RFC 3339 timestamp of the most recent definition update.',
56606
+ format: 'date-time',
56607
+ },
56608
+ ],
56609
+ },
56610
+ },
55738
56611
  managedAgentsUpdateTriggerBinding: {
55739
56612
  operationId: 'managedAgentsUpdateTriggerBinding',
55740
56613
  tag: 'managed-agents',