@vertesia/common 1.6.0-dev.20261014.015055Z → 1.6.0-dev.20261019.172735Z

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (116) hide show
  1. package/lib/api-contract/components.generated.json +1203 -24
  2. package/lib/api-schemas/agent-runs.d.ts +50 -0
  3. package/lib/api-schemas/agent-runs.d.ts.map +1 -1
  4. package/lib/api-schemas/agent-runs.js +3 -3
  5. package/lib/api-schemas/agent-runs.js.map +1 -1
  6. package/lib/api-schemas/app-lifecycle.d.ts +126 -0
  7. package/lib/api-schemas/app-lifecycle.d.ts.map +1 -1
  8. package/lib/api-schemas/app-lifecycle.js +134 -1
  9. package/lib/api-schemas/app-lifecycle.js.map +1 -1
  10. package/lib/api-schemas/app-runtime.d.ts +466 -0
  11. package/lib/api-schemas/app-runtime.d.ts.map +1 -1
  12. package/lib/api-schemas/app-runtime.js +50 -1
  13. package/lib/api-schemas/app-runtime.js.map +1 -1
  14. package/lib/api-schemas/apps.d.ts +73 -0
  15. package/lib/api-schemas/apps.d.ts.map +1 -1
  16. package/lib/api-schemas/apps.js +41 -0
  17. package/lib/api-schemas/apps.js.map +1 -1
  18. package/lib/api-schemas/audit-trail.d.ts.map +1 -1
  19. package/lib/api-schemas/audit-trail.js +5 -5
  20. package/lib/api-schemas/audit-trail.js.map +1 -1
  21. package/lib/api-schemas/content.d.ts +25 -0
  22. package/lib/api-schemas/content.d.ts.map +1 -1
  23. package/lib/api-schemas/content.js +5 -5
  24. package/lib/api-schemas/content.js.map +1 -1
  25. package/lib/api-schemas/document-processing.d.ts +15 -0
  26. package/lib/api-schemas/document-processing.d.ts.map +1 -1
  27. package/lib/api-schemas/events.d.ts +45 -0
  28. package/lib/api-schemas/events.d.ts.map +1 -1
  29. package/lib/api-schemas/inference-profile.d.ts +30 -0
  30. package/lib/api-schemas/inference-profile.d.ts.map +1 -1
  31. package/lib/api-schemas/interaction.d.ts +395 -0
  32. package/lib/api-schemas/interaction.d.ts.map +1 -1
  33. package/lib/api-schemas/interaction.js +9 -7
  34. package/lib/api-schemas/interaction.js.map +1 -1
  35. package/lib/api-schemas/oauth-server.d.ts +128 -0
  36. package/lib/api-schemas/oauth-server.d.ts.map +1 -1
  37. package/lib/api-schemas/oauth-server.js +95 -2
  38. package/lib/api-schemas/oauth-server.js.map +1 -1
  39. package/lib/api-schemas/process.d.ts +11 -0
  40. package/lib/api-schemas/process.d.ts.map +1 -1
  41. package/lib/api-schemas/process.js +12 -0
  42. package/lib/api-schemas/process.js.map +1 -1
  43. package/lib/api-schemas/project-configuration.d.ts +50 -0
  44. package/lib/api-schemas/project-configuration.d.ts.map +1 -1
  45. package/lib/api-schemas/project.d.ts +75 -0
  46. package/lib/api-schemas/project.d.ts.map +1 -1
  47. package/lib/api-schemas/prompt.d.ts.map +1 -1
  48. package/lib/api-schemas/prompt.js +5 -2
  49. package/lib/api-schemas/prompt.js.map +1 -1
  50. package/lib/api-schemas/registry.d.ts +1266 -0
  51. package/lib/api-schemas/registry.d.ts.map +1 -1
  52. package/lib/api-schemas/registry.js +33 -3
  53. package/lib/api-schemas/registry.js.map +1 -1
  54. package/lib/api-schemas/schema-primitives.d.ts +8 -0
  55. package/lib/api-schemas/schema-primitives.d.ts.map +1 -1
  56. package/lib/api-schemas/schema-primitives.js +8 -0
  57. package/lib/api-schemas/schema-primitives.js.map +1 -1
  58. package/lib/api-schemas/store.d.ts +250 -0
  59. package/lib/api-schemas/store.d.ts.map +1 -1
  60. package/lib/api-schemas/store.js +3 -3
  61. package/lib/api-schemas/store.js.map +1 -1
  62. package/lib/api-schemas/task.d.ts.map +1 -1
  63. package/lib/api-schemas/task.js +3 -2
  64. package/lib/api-schemas/task.js.map +1 -1
  65. package/lib/api-schemas/workflow-runs.d.ts +10 -0
  66. package/lib/api-schemas/workflow-runs.d.ts.map +1 -1
  67. package/lib/apikey.d.ts +7 -0
  68. package/lib/apikey.d.ts.map +1 -1
  69. package/lib/apikey.js.map +1 -1
  70. package/lib/apps.d.ts +37 -1
  71. package/lib/apps.d.ts.map +1 -1
  72. package/lib/apps.js +74 -3
  73. package/lib/apps.js.map +1 -1
  74. package/lib/interaction.d.ts.map +1 -1
  75. package/lib/interaction.js.map +1 -1
  76. package/lib/oauth-server.d.ts +5 -0
  77. package/lib/oauth-server.d.ts.map +1 -1
  78. package/lib/store/index.d.ts +1 -0
  79. package/lib/store/index.d.ts.map +1 -1
  80. package/lib/store/index.js +1 -0
  81. package/lib/store/index.js.map +1 -1
  82. package/lib/store/intake-policy-schema.generated.d.ts.map +1 -1
  83. package/lib/store/intake-policy-schema.generated.js +1 -2
  84. package/lib/store/intake-policy-schema.generated.js.map +1 -1
  85. package/lib/store/text-limits.d.ts +18 -0
  86. package/lib/store/text-limits.d.ts.map +1 -0
  87. package/lib/store/text-limits.js +56 -0
  88. package/lib/store/text-limits.js.map +1 -0
  89. package/lib/vertesia-common.js +4 -2
  90. package/lib/vertesia-common.js.map +1 -1
  91. package/lib/wire-types.generated.d.ts +246 -2
  92. package/lib/wire-types.generated.d.ts.map +1 -1
  93. package/package.json +3 -3
  94. package/src/api-contract/components.generated.json +1203 -24
  95. package/src/api-schemas/agent-runs.ts +3 -3
  96. package/src/api-schemas/app-lifecycle.ts +163 -1
  97. package/src/api-schemas/app-runtime.ts +54 -0
  98. package/src/api-schemas/apps.ts +46 -0
  99. package/src/api-schemas/audit-trail.ts +5 -5
  100. package/src/api-schemas/content.ts +5 -5
  101. package/src/api-schemas/interaction.ts +9 -7
  102. package/src/api-schemas/oauth-server.ts +103 -2
  103. package/src/api-schemas/process.ts +13 -0
  104. package/src/api-schemas/prompt.ts +5 -2
  105. package/src/api-schemas/registry.ts +52 -0
  106. package/src/api-schemas/schema-primitives.ts +9 -0
  107. package/src/api-schemas/store.ts +3 -3
  108. package/src/api-schemas/task.ts +3 -2
  109. package/src/apikey.ts +8 -0
  110. package/src/apps.ts +116 -3
  111. package/src/interaction.ts +1 -0
  112. package/src/oauth-server.ts +10 -0
  113. package/src/store/index.ts +1 -0
  114. package/src/store/intake-policy-schema.generated.ts +1 -2
  115. package/src/store/text-limits.ts +64 -0
  116. package/src/wire-types.generated.ts +266 -2
@@ -4547,11 +4547,7 @@
4547
4547
  }
4548
4548
  },
4549
4549
  "effort": {
4550
- "type": "string",
4551
- "enum": [
4552
- "none",
4553
- "high"
4554
- ]
4550
+ "$ref": "#/components/schemas/ReasoningEffort"
4555
4551
  },
4556
4552
  "random_seed": {
4557
4553
  "type": "integer",
@@ -5852,6 +5848,23 @@
5852
5848
  "type": "string",
5853
5849
  "const": "mcp"
5854
5850
  },
5851
+ "parameters": {
5852
+ "type": "object",
5853
+ "propertyNames": {
5854
+ "type": "string",
5855
+ "pattern": "^[a-z][a-z0-9_]*$"
5856
+ },
5857
+ "additionalProperties": {
5858
+ "$ref": "#/components/schemas/McpConnectionParameter"
5859
+ }
5860
+ },
5861
+ "headers": {
5862
+ "type": "object",
5863
+ "additionalProperties": {
5864
+ "type": "string"
5865
+ },
5866
+ "description": "HTTP header templates. Reference declared installation parameters with {{name}}. Never embed secrets."
5867
+ },
5855
5868
  "id": {
5856
5869
  "type": "string",
5857
5870
  "description": "Stable identifier for this collection. Used to key oauth_bindings on AppInstallation — protects against collection renames. Required for new manifests."
@@ -5913,6 +5926,50 @@
5913
5926
  ],
5914
5927
  "description": "Authentication type for tool collections.\n- 'none': connect directly without credentials for MCP collections; does not disable authentication for Vertesia SDK collections\n- 'oauth': the runtime resolves a per-user or per-project OAuth access token\n- 'api_key': a static key held in the project's secret store is sent as the RFC 6750 bearer token (`Authorization: Bearer <key>`)\n- 'other' or omitted: use the legacy provider connection-details flow for MCP collections"
5915
5928
  },
5929
+ "McpPublicParameter": {
5930
+ "type": "object",
5931
+ "properties": {
5932
+ "title": {
5933
+ "type": "string"
5934
+ },
5935
+ "description": {
5936
+ "type": "string"
5937
+ },
5938
+ "required": {
5939
+ "type": "boolean"
5940
+ },
5941
+ "type": {
5942
+ "type": "string",
5943
+ "const": "string"
5944
+ },
5945
+ "default": {
5946
+ "type": "string"
5947
+ }
5948
+ },
5949
+ "additionalProperties": false
5950
+ },
5951
+ "McpSecretParameter": {
5952
+ "type": "object",
5953
+ "properties": {
5954
+ "title": {
5955
+ "type": "string"
5956
+ },
5957
+ "description": {
5958
+ "type": "string"
5959
+ },
5960
+ "required": {
5961
+ "type": "boolean"
5962
+ },
5963
+ "type": {
5964
+ "type": "string",
5965
+ "const": "secret"
5966
+ }
5967
+ },
5968
+ "required": [
5969
+ "type"
5970
+ ],
5971
+ "additionalProperties": false
5972
+ },
5916
5973
  "MCPOAuthConfig": {
5917
5974
  "type": "object",
5918
5975
  "properties": {
@@ -6019,6 +6076,16 @@
6019
6076
  "additionalProperties": false,
6020
6077
  "description": "Vertesia SDK tool collection configuration"
6021
6078
  },
6079
+ "McpConnectionParameter": {
6080
+ "anyOf": [
6081
+ {
6082
+ "$ref": "#/components/schemas/McpPublicParameter"
6083
+ },
6084
+ {
6085
+ "$ref": "#/components/schemas/McpSecretParameter"
6086
+ }
6087
+ ]
6088
+ },
6022
6089
  "ToolCollectionObject": {
6023
6090
  "oneOf": [
6024
6091
  {
@@ -6160,9 +6227,21 @@
6160
6227
  "AppGitSourceConfig": {
6161
6228
  "type": "object",
6162
6229
  "properties": {
6230
+ "provider": {
6231
+ "$ref": "#/components/schemas/AppGitSourceProvider",
6232
+ "description": "Repository provider. Missing values are treated as `vertesia` for apps created before provider support."
6233
+ },
6163
6234
  "url": {
6164
6235
  "type": "string"
6165
6236
  },
6237
+ "installation_id": {
6238
+ "type": "string",
6239
+ "description": "Verified GitHub App installation id. Required when provider is `github`."
6240
+ },
6241
+ "repository": {
6242
+ "type": "string",
6243
+ "description": "GitHub repository in `owner/name` form. Required when provider is `github`."
6244
+ },
6166
6245
  "default_branch": {
6167
6246
  "type": "string"
6168
6247
  },
@@ -6175,6 +6254,13 @@
6175
6254
  },
6176
6255
  "additionalProperties": false
6177
6256
  },
6257
+ "AppGitSourceProvider": {
6258
+ "type": "string",
6259
+ "enum": [
6260
+ "vertesia",
6261
+ "github"
6262
+ ]
6263
+ },
6178
6264
  "AppSourceConfig": {
6179
6265
  "type": "object",
6180
6266
  "properties": {
@@ -6201,9 +6287,18 @@
6201
6287
  "git": {
6202
6288
  "type": "object",
6203
6289
  "properties": {
6290
+ "provider": {
6291
+ "$ref": "#/components/schemas/AppGitSourceProvider"
6292
+ },
6204
6293
  "url": {
6205
6294
  "type": "string"
6206
6295
  },
6296
+ "installation_id": {
6297
+ "type": "string"
6298
+ },
6299
+ "repository": {
6300
+ "type": "string"
6301
+ },
6207
6302
  "default_branch": {
6208
6303
  "type": "string"
6209
6304
  },
@@ -6520,7 +6615,8 @@
6520
6615
  "enum": [
6521
6616
  "none",
6522
6617
  "client_secret_post",
6523
- "client_secret_basic"
6618
+ "client_secret_basic",
6619
+ "private_key_jwt"
6524
6620
  ]
6525
6621
  },
6526
6622
  "OAuthGrantType": {
@@ -6528,7 +6624,8 @@
6528
6624
  "enum": [
6529
6625
  "authorization_code",
6530
6626
  "refresh_token",
6531
- "urn:ietf:params:oauth:grant-type:device_code"
6627
+ "urn:ietf:params:oauth:grant-type:device_code",
6628
+ "urn:ietf:params:oauth:grant-type:token-exchange"
6532
6629
  ]
6533
6630
  },
6534
6631
  "OAuthResponseType": {
@@ -6622,6 +6719,12 @@
6622
6719
  "type": "string"
6623
6720
  }
6624
6721
  },
6722
+ "token_endpoint_auth_signing_alg_values_supported": {
6723
+ "type": "array",
6724
+ "items": {
6725
+ "type": "string"
6726
+ }
6727
+ },
6625
6728
  "scopes_supported": {
6626
6729
  "type": "array",
6627
6730
  "items": {
@@ -6791,6 +6894,9 @@
6791
6894
  "client_name": {
6792
6895
  "type": "string"
6793
6896
  },
6897
+ "app_id": {
6898
+ "type": "string"
6899
+ },
6794
6900
  "client_metadata": {
6795
6901
  "$ref": "#/components/schemas/OAuthClientDisplayMetadata"
6796
6902
  },
@@ -7064,9 +7170,372 @@
7064
7170
  "expires_in"
7065
7171
  ]
7066
7172
  },
7173
+ "OidcFederationConnectionPayload": {
7174
+ "type": "object",
7175
+ "properties": {
7176
+ "name": {
7177
+ "type": "string",
7178
+ "minLength": 1,
7179
+ "maxLength": 200
7180
+ },
7181
+ "issuer": {
7182
+ "type": "string",
7183
+ "format": "uri"
7184
+ },
7185
+ "jwks_uri": {
7186
+ "type": "string",
7187
+ "format": "uri"
7188
+ },
7189
+ "external_id_claim": {
7190
+ "type": "string",
7191
+ "minLength": 1,
7192
+ "maxLength": 256,
7193
+ "pattern": "\\S",
7194
+ "description": "Exact top-level verified token claim matched to SCIM externalId within the owning provisioning account."
7195
+ },
7196
+ "allowed_audiences": {
7197
+ "minItems": 1,
7198
+ "maxItems": 20,
7199
+ "type": "array",
7200
+ "items": {
7201
+ "type": "string",
7202
+ "minLength": 1
7203
+ }
7204
+ },
7205
+ "allowed_algorithms": {
7206
+ "minItems": 1,
7207
+ "maxItems": 2,
7208
+ "type": "array",
7209
+ "items": {
7210
+ "type": "string",
7211
+ "enum": [
7212
+ "RS256",
7213
+ "ES256"
7214
+ ]
7215
+ }
7216
+ },
7217
+ "subject_token_type": {
7218
+ "type": "string",
7219
+ "enum": [
7220
+ "urn:ietf:params:oauth:token-type:jwt",
7221
+ "urn:ietf:params:oauth:token-type:id_token",
7222
+ "urn:ietf:params:oauth:token-type:access_token"
7223
+ ]
7224
+ },
7225
+ "required_claims": {
7226
+ "type": "object",
7227
+ "additionalProperties": {
7228
+ "type": "string"
7229
+ },
7230
+ "description": "Exact string matches against verified top-level IdP claims, such as tenant or azp."
7231
+ },
7232
+ "all_projects": {
7233
+ "type": "boolean",
7234
+ "description": "Explicitly allow all current and future projects in the owning organization, subject to the user’s current access. Defaults to false for existing allowlists. When true, allowed_project_ids must be empty."
7235
+ },
7236
+ "allowed_project_ids": {
7237
+ "maxItems": 100,
7238
+ "type": "array",
7239
+ "items": {
7240
+ "type": "string",
7241
+ "pattern": "^[a-fA-F0-9]{24}$"
7242
+ },
7243
+ "description": "Explicit project allowlist. Must contain 1–100 projects unless all_projects is true."
7244
+ },
7245
+ "allowed_client_ids": {
7246
+ "minItems": 1,
7247
+ "maxItems": 20,
7248
+ "type": "array",
7249
+ "items": {
7250
+ "type": "string",
7251
+ "minLength": 1,
7252
+ "maxLength": 256
7253
+ },
7254
+ "description": "When set, require authentication by one of these account-owned confidential OAuth clients. Omit to allow exchanges without separate client authentication."
7255
+ },
7256
+ "allowed_scopes": {
7257
+ "minItems": 1,
7258
+ "maxItems": 100,
7259
+ "type": "array",
7260
+ "items": {
7261
+ "type": "string",
7262
+ "minLength": 1
7263
+ },
7264
+ "description": "Optional restriction on delegable Vertesia permissions, excluding account:admin. Omit to use the user’s current permissions. An explicit list further restricts the grant."
7265
+ },
7266
+ "max_token_ttl_seconds": {
7267
+ "type": "integer",
7268
+ "minimum": 30,
7269
+ "maximum": 300
7270
+ },
7271
+ "max_subject_token_age_seconds": {
7272
+ "type": "integer",
7273
+ "minimum": 30,
7274
+ "maximum": 86400,
7275
+ "description": "Maximum age since the signed iat claim. Defaults to 3600 seconds; 60 seconds of clock tolerance applies."
7276
+ },
7277
+ "enabled": {
7278
+ "type": "boolean"
7279
+ }
7280
+ },
7281
+ "required": [
7282
+ "name",
7283
+ "issuer",
7284
+ "external_id_claim",
7285
+ "allowed_audiences",
7286
+ "allowed_algorithms",
7287
+ "subject_token_type",
7288
+ "allowed_project_ids",
7289
+ "max_token_ttl_seconds",
7290
+ "enabled"
7291
+ ],
7292
+ "additionalProperties": false
7293
+ },
7294
+ "OidcFederationConnection": {
7295
+ "type": "object",
7296
+ "properties": {
7297
+ "name": {
7298
+ "type": "string",
7299
+ "minLength": 1,
7300
+ "maxLength": 200
7301
+ },
7302
+ "issuer": {
7303
+ "type": "string",
7304
+ "format": "uri"
7305
+ },
7306
+ "jwks_uri": {
7307
+ "type": "string",
7308
+ "format": "uri"
7309
+ },
7310
+ "external_id_claim": {
7311
+ "type": "string",
7312
+ "minLength": 1,
7313
+ "maxLength": 256,
7314
+ "pattern": "\\S",
7315
+ "description": "Exact top-level verified token claim matched to SCIM externalId within the owning provisioning account."
7316
+ },
7317
+ "allowed_audiences": {
7318
+ "minItems": 1,
7319
+ "maxItems": 20,
7320
+ "type": "array",
7321
+ "items": {
7322
+ "type": "string",
7323
+ "minLength": 1
7324
+ }
7325
+ },
7326
+ "allowed_algorithms": {
7327
+ "minItems": 1,
7328
+ "maxItems": 2,
7329
+ "type": "array",
7330
+ "items": {
7331
+ "type": "string",
7332
+ "enum": [
7333
+ "RS256",
7334
+ "ES256"
7335
+ ]
7336
+ }
7337
+ },
7338
+ "subject_token_type": {
7339
+ "type": "string",
7340
+ "enum": [
7341
+ "urn:ietf:params:oauth:token-type:jwt",
7342
+ "urn:ietf:params:oauth:token-type:id_token",
7343
+ "urn:ietf:params:oauth:token-type:access_token"
7344
+ ]
7345
+ },
7346
+ "required_claims": {
7347
+ "type": "object",
7348
+ "additionalProperties": {
7349
+ "type": "string"
7350
+ },
7351
+ "description": "Exact string matches against verified top-level IdP claims, such as tenant or azp."
7352
+ },
7353
+ "all_projects": {
7354
+ "type": "boolean",
7355
+ "description": "Explicitly allow all current and future projects in the owning organization, subject to the user’s current access. Defaults to false for existing allowlists. When true, allowed_project_ids must be empty."
7356
+ },
7357
+ "allowed_project_ids": {
7358
+ "maxItems": 100,
7359
+ "type": "array",
7360
+ "items": {
7361
+ "type": "string",
7362
+ "pattern": "^[a-fA-F0-9]{24}$"
7363
+ },
7364
+ "description": "Explicit project allowlist. Must contain 1–100 projects unless all_projects is true."
7365
+ },
7366
+ "allowed_client_ids": {
7367
+ "minItems": 1,
7368
+ "maxItems": 20,
7369
+ "type": "array",
7370
+ "items": {
7371
+ "type": "string",
7372
+ "minLength": 1,
7373
+ "maxLength": 256
7374
+ },
7375
+ "description": "When set, require authentication by one of these account-owned confidential OAuth clients. Omit to allow exchanges without separate client authentication."
7376
+ },
7377
+ "allowed_scopes": {
7378
+ "minItems": 1,
7379
+ "maxItems": 100,
7380
+ "type": "array",
7381
+ "items": {
7382
+ "type": "string",
7383
+ "minLength": 1
7384
+ },
7385
+ "description": "Optional restriction on delegable Vertesia permissions, excluding account:admin. Omit to use the user’s current permissions. An explicit list further restricts the grant."
7386
+ },
7387
+ "max_token_ttl_seconds": {
7388
+ "type": "integer",
7389
+ "minimum": 30,
7390
+ "maximum": 300
7391
+ },
7392
+ "max_subject_token_age_seconds": {
7393
+ "type": "integer",
7394
+ "minimum": 30,
7395
+ "maximum": 86400
7396
+ },
7397
+ "enabled": {
7398
+ "type": "boolean"
7399
+ },
7400
+ "id": {
7401
+ "type": "string",
7402
+ "pattern": "^[a-fA-F0-9]{24}$"
7403
+ },
7404
+ "account_id": {
7405
+ "type": "string",
7406
+ "pattern": "^[a-fA-F0-9]{24}$"
7407
+ }
7408
+ },
7409
+ "required": [
7410
+ "name",
7411
+ "issuer",
7412
+ "external_id_claim",
7413
+ "allowed_audiences",
7414
+ "allowed_algorithms",
7415
+ "subject_token_type",
7416
+ "allowed_project_ids",
7417
+ "max_token_ttl_seconds",
7418
+ "max_subject_token_age_seconds",
7419
+ "enabled",
7420
+ "id",
7421
+ "account_id"
7422
+ ],
7423
+ "additionalProperties": false
7424
+ },
7425
+ "OidcFederationConnectionArray": {
7426
+ "type": "array",
7427
+ "items": {
7428
+ "$ref": "#/components/schemas/OidcFederationConnection"
7429
+ }
7430
+ },
7431
+ "OAuthTokenExchangeRequest": {
7432
+ "type": "object",
7433
+ "properties": {
7434
+ "grant_type": {
7435
+ "type": "string",
7436
+ "const": "urn:ietf:params:oauth:grant-type:token-exchange"
7437
+ },
7438
+ "subject_token": {
7439
+ "type": "string",
7440
+ "minLength": 1,
7441
+ "maxLength": 65536
7442
+ },
7443
+ "subject_token_type": {
7444
+ "type": "string",
7445
+ "enum": [
7446
+ "urn:ietf:params:oauth:token-type:jwt",
7447
+ "urn:ietf:params:oauth:token-type:id_token",
7448
+ "urn:ietf:params:oauth:token-type:access_token"
7449
+ ]
7450
+ },
7451
+ "requested_token_type": {
7452
+ "type": "string",
7453
+ "const": "urn:ietf:params:oauth:token-type:access_token"
7454
+ },
7455
+ "federation_connection_id": {
7456
+ "type": "string",
7457
+ "pattern": "^[a-fA-F0-9]{24}$"
7458
+ },
7459
+ "client_id": {
7460
+ "type": "string",
7461
+ "minLength": 1,
7462
+ "maxLength": 256
7463
+ },
7464
+ "client_secret": {
7465
+ "type": "string",
7466
+ "minLength": 1,
7467
+ "maxLength": 4096
7468
+ },
7469
+ "client_assertion": {
7470
+ "type": "string",
7471
+ "minLength": 1,
7472
+ "maxLength": 16384
7473
+ },
7474
+ "client_assertion_type": {
7475
+ "type": "string",
7476
+ "const": "urn:ietf:params:oauth:client-assertion-type:jwt-bearer"
7477
+ },
7478
+ "project_id": {
7479
+ "type": "string",
7480
+ "pattern": "^[a-fA-F0-9]{24}$"
7481
+ },
7482
+ "resource": {
7483
+ "type": "string",
7484
+ "minLength": 1
7485
+ },
7486
+ "scope": {
7487
+ "type": "string",
7488
+ "minLength": 1,
7489
+ "maxLength": 4096,
7490
+ "description": "Optional space-separated permission subset. Omit to use current user permissions within the connection policy."
7491
+ }
7492
+ },
7493
+ "required": [
7494
+ "grant_type",
7495
+ "subject_token",
7496
+ "subject_token_type",
7497
+ "federation_connection_id",
7498
+ "project_id",
7499
+ "resource"
7500
+ ],
7501
+ "additionalProperties": false
7502
+ },
7503
+ "OAuthTokenExchangeResponse": {
7504
+ "type": "object",
7505
+ "properties": {
7506
+ "access_token": {
7507
+ "type": "string"
7508
+ },
7509
+ "token_type": {
7510
+ "type": "string",
7511
+ "const": "Bearer"
7512
+ },
7513
+ "expires_in": {
7514
+ "type": "number"
7515
+ },
7516
+ "scope": {
7517
+ "type": "string"
7518
+ },
7519
+ "issued_token_type": {
7520
+ "type": "string",
7521
+ "const": "urn:ietf:params:oauth:token-type:access_token"
7522
+ }
7523
+ },
7524
+ "required": [
7525
+ "access_token",
7526
+ "token_type",
7527
+ "expires_in",
7528
+ "issued_token_type"
7529
+ ],
7530
+ "additionalProperties": false
7531
+ },
7067
7532
  "OAuthClient": {
7068
7533
  "type": "object",
7069
7534
  "properties": {
7535
+ "app_id": {
7536
+ "type": "string",
7537
+ "description": "App associated with this client. Authorization requires an installation explicitly enabling this client and current user app access."
7538
+ },
7070
7539
  "client_name": {
7071
7540
  "type": "string"
7072
7541
  },
@@ -7094,6 +7563,10 @@
7094
7563
  "token_endpoint_auth_method": {
7095
7564
  "$ref": "#/components/schemas/OAuthTokenEndpointAuthMethod"
7096
7565
  },
7566
+ "jwks_uri": {
7567
+ "type": "string",
7568
+ "format": "uri"
7569
+ },
7097
7570
  "allowed_scopes": {
7098
7571
  "type": "array",
7099
7572
  "items": {
@@ -7168,6 +7641,10 @@
7168
7641
  "OAuthClientCreateResponse": {
7169
7642
  "type": "object",
7170
7643
  "properties": {
7644
+ "app_id": {
7645
+ "type": "string",
7646
+ "description": "App associated with this client. Authorization requires an installation explicitly enabling this client and current user app access."
7647
+ },
7171
7648
  "client_name": {
7172
7649
  "type": "string"
7173
7650
  },
@@ -7195,6 +7672,10 @@
7195
7672
  "token_endpoint_auth_method": {
7196
7673
  "$ref": "#/components/schemas/OAuthTokenEndpointAuthMethod"
7197
7674
  },
7675
+ "jwks_uri": {
7676
+ "type": "string",
7677
+ "format": "uri"
7678
+ },
7198
7679
  "allowed_scopes": {
7199
7680
  "type": "array",
7200
7681
  "items": {
@@ -7308,6 +7789,10 @@
7308
7789
  "token_endpoint_auth_method": {
7309
7790
  "$ref": "#/components/schemas/OAuthTokenEndpointAuthMethod"
7310
7791
  },
7792
+ "jwks_uri": {
7793
+ "type": "string",
7794
+ "format": "uri"
7795
+ },
7311
7796
  "allowed_scopes": {
7312
7797
  "type": "array",
7313
7798
  "items": {
@@ -7370,6 +7855,10 @@
7370
7855
  "token_endpoint_auth_method": {
7371
7856
  "$ref": "#/components/schemas/OAuthTokenEndpointAuthMethod"
7372
7857
  },
7858
+ "jwks_uri": {
7859
+ "type": "string",
7860
+ "format": "uri"
7861
+ },
7373
7862
  "allowed_scopes": {
7374
7863
  "type": "array",
7375
7864
  "items": {
@@ -7385,6 +7874,10 @@
7385
7874
  "status": {
7386
7875
  "$ref": "#/components/schemas/OAuthClientStatus"
7387
7876
  },
7877
+ "revoke_previous_client_secret": {
7878
+ "type": "boolean",
7879
+ "description": "Immediately revoke the previous rotation secret while retaining the current secret."
7880
+ },
7388
7881
  "project_binding_mode": {
7389
7882
  "$ref": "#/components/schemas/OAuthProjectBindingMode"
7390
7883
  },
@@ -10475,10 +10968,14 @@
10475
10968
  "type": "object",
10476
10969
  "properties": {
10477
10970
  "limit": {
10478
- "type": "number"
10971
+ "type": "number",
10972
+ "minimum": 0,
10973
+ "multipleOf": 1
10479
10974
  },
10480
10975
  "offset": {
10481
- "type": "number"
10976
+ "type": "number",
10977
+ "minimum": 0,
10978
+ "multipleOf": 1
10482
10979
  },
10483
10980
  "status": {
10484
10981
  "$ref": "#/components/schemas/InteractionStatus"
@@ -12582,7 +13079,8 @@
12582
13079
  "fallback_coordination_unavailable",
12583
13080
  "fallback_wait_timeout",
12584
13081
  "minimum_token_rejection",
12585
- "unusable_resource_recreated"
13082
+ "unusable_resource_recreated",
13083
+ "unsupported_model"
12586
13084
  ]
12587
13085
  },
12588
13086
  "InteractionExecutionError": {
@@ -13292,13 +13790,13 @@
13292
13790
  "properties": {
13293
13791
  "limit": {
13294
13792
  "type": "integer",
13295
- "minimum": -9007199254740991,
13793
+ "minimum": 0,
13296
13794
  "maximum": 9007199254740991,
13297
13795
  "description": "Maximum number of runs to return."
13298
13796
  },
13299
13797
  "offset": {
13300
13798
  "type": "integer",
13301
- "minimum": -9007199254740991,
13799
+ "minimum": 0,
13302
13800
  "maximum": 9007199254740991,
13303
13801
  "description": "Number of runs to skip."
13304
13802
  },
@@ -13382,10 +13880,14 @@
13382
13880
  "$ref": "#/components/schemas/RunSearchQuery"
13383
13881
  },
13384
13882
  "limit": {
13385
- "type": "number"
13883
+ "type": "number",
13884
+ "minimum": 0,
13885
+ "multipleOf": 1
13386
13886
  },
13387
13887
  "offset": {
13388
- "type": "number"
13888
+ "type": "number",
13889
+ "minimum": 0,
13890
+ "multipleOf": 1
13389
13891
  },
13390
13892
  "select": {
13391
13893
  "type": "string"
@@ -15554,10 +16056,14 @@
15554
16056
  },
15555
16057
  "limit": {
15556
16058
  "type": "number",
16059
+ "minimum": 0,
16060
+ "multipleOf": 1,
15557
16061
  "description": "Maximum number of prompts to return. Defaults to 100."
15558
16062
  },
15559
16063
  "offset": {
15560
16064
  "type": "number",
16065
+ "minimum": 0,
16066
+ "multipleOf": 1,
15561
16067
  "description": "Number of prompts to skip."
15562
16068
  },
15563
16069
  "role": {
@@ -17387,10 +17893,14 @@
17387
17893
  },
17388
17894
  "limit": {
17389
17895
  "type": "number",
17896
+ "minimum": 0,
17897
+ "multipleOf": 1,
17390
17898
  "description": "Pagination: number of items to return (default 50, max 200)"
17391
17899
  },
17392
17900
  "offset": {
17393
17901
  "type": "number",
17902
+ "minimum": 0,
17903
+ "multipleOf": 1,
17394
17904
  "description": "Pagination: offset"
17395
17905
  }
17396
17906
  },
@@ -19657,6 +20167,275 @@
19657
20167
  },
19658
20168
  "additionalProperties": false
19659
20169
  },
20170
+ "AppGithubConfiguration": {
20171
+ "type": "object",
20172
+ "properties": {
20173
+ "enabled": {
20174
+ "type": "boolean"
20175
+ },
20176
+ "app_slug": {
20177
+ "type": "string"
20178
+ },
20179
+ "install_url": {
20180
+ "type": "string"
20181
+ },
20182
+ "relay_url": {
20183
+ "type": "string"
20184
+ }
20185
+ },
20186
+ "required": [
20187
+ "enabled"
20188
+ ]
20189
+ },
20190
+ "StartAppGithubAuthorizationResponse": {
20191
+ "type": "object",
20192
+ "properties": {
20193
+ "authorization_url": {
20194
+ "type": "string"
20195
+ }
20196
+ },
20197
+ "required": [
20198
+ "authorization_url"
20199
+ ]
20200
+ },
20201
+ "ExchangeAppGithubAuthorizationRequest": {
20202
+ "type": "object",
20203
+ "properties": {
20204
+ "code": {
20205
+ "type": "string"
20206
+ },
20207
+ "state": {
20208
+ "type": "string"
20209
+ }
20210
+ },
20211
+ "required": [
20212
+ "code",
20213
+ "state"
20214
+ ]
20215
+ },
20216
+ "AppGithubRepositoriesQuery": {
20217
+ "type": "object",
20218
+ "properties": {
20219
+ "connection_id": {
20220
+ "type": "string",
20221
+ "minLength": 1
20222
+ },
20223
+ "installation_id": {
20224
+ "type": "string",
20225
+ "minLength": 1
20226
+ }
20227
+ },
20228
+ "required": [
20229
+ "connection_id",
20230
+ "installation_id"
20231
+ ]
20232
+ },
20233
+ "AppGithubInstallation": {
20234
+ "type": "object",
20235
+ "properties": {
20236
+ "id": {
20237
+ "type": "string"
20238
+ },
20239
+ "account_login": {
20240
+ "type": "string"
20241
+ },
20242
+ "account_type": {
20243
+ "type": "string"
20244
+ },
20245
+ "repository_selection": {
20246
+ "type": "string",
20247
+ "enum": [
20248
+ "all",
20249
+ "selected"
20250
+ ]
20251
+ }
20252
+ },
20253
+ "required": [
20254
+ "id",
20255
+ "account_login",
20256
+ "repository_selection"
20257
+ ]
20258
+ },
20259
+ "AppGithubAccount": {
20260
+ "type": "object",
20261
+ "properties": {
20262
+ "login": {
20263
+ "type": "string"
20264
+ },
20265
+ "account_type": {
20266
+ "type": "string"
20267
+ },
20268
+ "avatar_url": {
20269
+ "type": "string"
20270
+ }
20271
+ },
20272
+ "required": [
20273
+ "login",
20274
+ "account_type"
20275
+ ]
20276
+ },
20277
+ "ExchangeAppGithubAuthorizationResponse": {
20278
+ "type": "object",
20279
+ "properties": {
20280
+ "connection_id": {
20281
+ "type": "string"
20282
+ },
20283
+ "installations": {
20284
+ "type": "array",
20285
+ "items": {
20286
+ "$ref": "#/components/schemas/AppGithubInstallation"
20287
+ }
20288
+ },
20289
+ "accounts": {
20290
+ "type": "array",
20291
+ "items": {
20292
+ "$ref": "#/components/schemas/AppGithubAccount"
20293
+ }
20294
+ }
20295
+ },
20296
+ "required": [
20297
+ "connection_id",
20298
+ "installations",
20299
+ "accounts"
20300
+ ]
20301
+ },
20302
+ "AppGithubRepository": {
20303
+ "type": "object",
20304
+ "properties": {
20305
+ "name": {
20306
+ "type": "string"
20307
+ },
20308
+ "full_name": {
20309
+ "type": "string"
20310
+ },
20311
+ "private": {
20312
+ "type": "boolean"
20313
+ },
20314
+ "default_branch": {
20315
+ "type": "string"
20316
+ },
20317
+ "html_url": {
20318
+ "type": "string"
20319
+ }
20320
+ },
20321
+ "required": [
20322
+ "name",
20323
+ "full_name",
20324
+ "private",
20325
+ "default_branch",
20326
+ "html_url"
20327
+ ]
20328
+ },
20329
+ "AppGithubRepositoryCreation": {
20330
+ "type": "object",
20331
+ "properties": {
20332
+ "name": {
20333
+ "type": "string",
20334
+ "minLength": 1,
20335
+ "maxLength": 100,
20336
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]*$",
20337
+ "description": "Name of the empty GitHub repository to create in the verified installation."
20338
+ },
20339
+ "private": {
20340
+ "type": "boolean",
20341
+ "description": "Create a private repository. Defaults to true when omitted."
20342
+ }
20343
+ },
20344
+ "required": [
20345
+ "name"
20346
+ ]
20347
+ },
20348
+ "AppGithubRepositoryList": {
20349
+ "type": "object",
20350
+ "properties": {
20351
+ "repositories": {
20352
+ "type": "array",
20353
+ "items": {
20354
+ "$ref": "#/components/schemas/AppGithubRepository"
20355
+ }
20356
+ }
20357
+ },
20358
+ "required": [
20359
+ "repositories"
20360
+ ]
20361
+ },
20362
+ "AppGithubRepositorySetupQuery": {
20363
+ "type": "object",
20364
+ "properties": {
20365
+ "connection_id": {
20366
+ "type": "string",
20367
+ "minLength": 1
20368
+ },
20369
+ "installation_id": {
20370
+ "type": "string",
20371
+ "minLength": 1
20372
+ },
20373
+ "repository": {
20374
+ "type": "string",
20375
+ "minLength": 1
20376
+ },
20377
+ "branch": {
20378
+ "type": "string",
20379
+ "minLength": 1
20380
+ }
20381
+ },
20382
+ "required": [
20383
+ "connection_id",
20384
+ "installation_id",
20385
+ "repository",
20386
+ "branch"
20387
+ ]
20388
+ },
20389
+ "AppGithubBranchState": {
20390
+ "type": "object",
20391
+ "properties": {
20392
+ "name": {
20393
+ "type": "string"
20394
+ },
20395
+ "exists": {
20396
+ "type": "boolean"
20397
+ },
20398
+ "empty": {
20399
+ "type": "boolean"
20400
+ }
20401
+ },
20402
+ "required": [
20403
+ "name",
20404
+ "exists",
20405
+ "empty"
20406
+ ]
20407
+ },
20408
+ "AppGithubRepositorySetup": {
20409
+ "type": "object",
20410
+ "properties": {
20411
+ "default_branch": {
20412
+ "type": "string"
20413
+ },
20414
+ "branches": {
20415
+ "type": "array",
20416
+ "items": {
20417
+ "type": "string"
20418
+ }
20419
+ },
20420
+ "selected_branch": {
20421
+ "$ref": "#/components/schemas/AppGithubBranchState"
20422
+ }
20423
+ },
20424
+ "required": [
20425
+ "default_branch",
20426
+ "branches",
20427
+ "selected_branch"
20428
+ ],
20429
+ "description": "Branch choices and write-safety state for a verified GitHub repository."
20430
+ },
20431
+ "AppScaffoldSourceMode": {
20432
+ "type": "string",
20433
+ "enum": [
20434
+ "generate",
20435
+ "existing"
20436
+ ],
20437
+ "description": "How App Builder should use a connected source repository. `generate` writes a starter app to an empty branch; `existing` only binds the repository."
20438
+ },
19660
20439
  "StartAppScaffoldRequest": {
19661
20440
  "type": "object",
19662
20441
  "properties": {
@@ -19691,6 +20470,22 @@
19691
20470
  "create_version": {
19692
20471
  "type": "boolean",
19693
20472
  "description": "Start an initial app version build after the source has been pushed. Defaults to true."
20473
+ },
20474
+ "source_mode": {
20475
+ "$ref": "#/components/schemas/AppScaffoldSourceMode",
20476
+ "description": "Explicit source setup behavior for external repositories. Omit to retain the legacy automatic behavior."
20477
+ },
20478
+ "source": {
20479
+ "$ref": "#/components/schemas/AppSourceConfig",
20480
+ "description": "Source repository to bind to the app. Omit to create and scaffold a Vertesia-managed repository."
20481
+ },
20482
+ "github_connection_id": {
20483
+ "type": "string",
20484
+ "description": "Short-lived proof that the current user verified the selected GitHub installation."
20485
+ },
20486
+ "github_repository_creation": {
20487
+ "$ref": "#/components/schemas/AppGithubRepositoryCreation",
20488
+ "description": "Create an empty repository in the verified GitHub installation before generating the app source."
19694
20489
  }
19695
20490
  },
19696
20491
  "required": [
@@ -20123,6 +20918,9 @@
20123
20918
  "type": "string",
20124
20919
  "description": "The collection name"
20125
20920
  },
20921
+ "collection_id": {
20922
+ "type": "string"
20923
+ },
20126
20924
  "description": {
20127
20925
  "type": "string",
20128
20926
  "description": "Optional collection description"
@@ -20585,6 +21383,54 @@
20585
21383
  "app_id": {
20586
21384
  "type": "string"
20587
21385
  },
21386
+ "instance_key": {
21387
+ "type": "string",
21388
+ "pattern": "^[a-z][a-z0-9_-]{0,31}$"
21389
+ },
21390
+ "display_name": {
21391
+ "type": "string",
21392
+ "maxLength": 120,
21393
+ "description": "Optional instance label. Send an empty string to clear the saved label; omit to preserve it."
21394
+ },
21395
+ "namespace_overrides": {
21396
+ "type": "object",
21397
+ "additionalProperties": {
21398
+ "type": "string",
21399
+ "maxLength": 24,
21400
+ "pattern": "^[a-z]([a-z0-9]|_[a-z0-9])*_?$"
21401
+ }
21402
+ },
21403
+ "mcp_shared_parameters": {
21404
+ "type": "object",
21405
+ "additionalProperties": {
21406
+ "anyOf": [
21407
+ {
21408
+ "type": "string"
21409
+ },
21410
+ {
21411
+ "type": "null"
21412
+ }
21413
+ ]
21414
+ },
21415
+ "description": "Shared MCP parameter overrides. Omitted values are retained; null clears an override or restores its default."
21416
+ },
21417
+ "mcp_parameters": {
21418
+ "type": "object",
21419
+ "additionalProperties": {
21420
+ "type": "object",
21421
+ "additionalProperties": {
21422
+ "anyOf": [
21423
+ {
21424
+ "type": "string"
21425
+ },
21426
+ {
21427
+ "type": "null"
21428
+ }
21429
+ ]
21430
+ }
21431
+ },
21432
+ "description": "Installation parameter overrides by MCP collection id. Omit to preserve; null clears an override. Secret inputs are write-only."
21433
+ },
20588
21434
  "settings": {
20589
21435
  "type": "object",
20590
21436
  "additionalProperties": true
@@ -20628,6 +21474,18 @@
20628
21474
  ],
20629
21475
  "additionalProperties": false
20630
21476
  },
21477
+ "AppInstanceAvailability": {
21478
+ "type": "object",
21479
+ "properties": {
21480
+ "enabled": {
21481
+ "type": "boolean"
21482
+ }
21483
+ },
21484
+ "required": [
21485
+ "enabled"
21486
+ ],
21487
+ "additionalProperties": false
21488
+ },
20631
21489
  "AppDevelopmentTaskDetails": {
20632
21490
  "type": "object",
20633
21491
  "properties": {
@@ -23013,15 +23871,47 @@
23013
23871
  "additionalProperties": false,
23014
23872
  "description": "Dashboard definition contributed by an app package.\n\nApp dashboard IDs are local to the app. The platform exposes them as `app:<app_name>:<id>` when listing or retrieving dashboards."
23015
23873
  },
23874
+ "AppOAuthClientConfig": {
23875
+ "type": "object",
23876
+ "properties": {
23877
+ "redirect_uris": {
23878
+ "minItems": 1,
23879
+ "type": "array",
23880
+ "items": {
23881
+ "type": "string",
23882
+ "format": "uri"
23883
+ }
23884
+ }
23885
+ },
23886
+ "required": [
23887
+ "redirect_uris"
23888
+ ],
23889
+ "additionalProperties": false,
23890
+ "description": "Standalone public PKCE OAuth. Installation automatically provisions an app client with these exact callback URLs."
23891
+ },
23016
23892
  "AppManifestData": {
23017
23893
  "type": "object",
23018
23894
  "properties": {
23895
+ "parameters": {
23896
+ "type": "object",
23897
+ "propertyNames": {
23898
+ "type": "string",
23899
+ "pattern": "^[a-z][a-z0-9_]*$"
23900
+ },
23901
+ "additionalProperties": {
23902
+ "$ref": "#/components/schemas/McpConnectionParameter"
23903
+ },
23904
+ "description": "Shared MCP installation parameters available to every collection. Collection-local names must not overlap."
23905
+ },
23019
23906
  "oauth_scopes": {
23020
23907
  "type": "array",
23021
23908
  "items": {
23022
23909
  "type": "string"
23023
23910
  }
23024
23911
  },
23912
+ "oauth_client": {
23913
+ "$ref": "#/components/schemas/AppOAuthClientConfig"
23914
+ },
23025
23915
  "name": {
23026
23916
  "type": "string",
23027
23917
  "description": "The name of the app, used as the id in the system. Must be in kebab case (e.g. my-app)."
@@ -23152,12 +24042,26 @@
23152
24042
  "UpdateAppPayload": {
23153
24043
  "type": "object",
23154
24044
  "properties": {
24045
+ "parameters": {
24046
+ "type": "object",
24047
+ "propertyNames": {
24048
+ "type": "string",
24049
+ "pattern": "^[a-z][a-z0-9_]*$"
24050
+ },
24051
+ "additionalProperties": {
24052
+ "$ref": "#/components/schemas/McpConnectionParameter"
24053
+ },
24054
+ "description": "Shared MCP installation parameters available to every collection. Collection-local names must not overlap."
24055
+ },
23155
24056
  "oauth_scopes": {
23156
24057
  "type": "array",
23157
24058
  "items": {
23158
24059
  "type": "string"
23159
24060
  }
23160
24061
  },
24062
+ "oauth_client": {
24063
+ "$ref": "#/components/schemas/AppOAuthClientConfig"
24064
+ },
23161
24065
  "name": {
23162
24066
  "type": "string",
23163
24067
  "description": "The name of the app, used as the id in the system. Must be in kebab case (e.g. my-app)."
@@ -23294,12 +24198,26 @@
23294
24198
  "AppManifest": {
23295
24199
  "type": "object",
23296
24200
  "properties": {
24201
+ "parameters": {
24202
+ "type": "object",
24203
+ "propertyNames": {
24204
+ "type": "string",
24205
+ "pattern": "^[a-z][a-z0-9_]*$"
24206
+ },
24207
+ "additionalProperties": {
24208
+ "$ref": "#/components/schemas/McpConnectionParameter"
24209
+ },
24210
+ "description": "Shared MCP installation parameters available to every collection. Collection-local names must not overlap."
24211
+ },
23297
24212
  "oauth_scopes": {
23298
24213
  "type": "array",
23299
24214
  "items": {
23300
24215
  "type": "string"
23301
24216
  }
23302
24217
  },
24218
+ "oauth_client": {
24219
+ "$ref": "#/components/schemas/AppOAuthClientConfig"
24220
+ },
23303
24221
  "edit_revision": {
23304
24222
  "type": "integer",
23305
24223
  "minimum": 1,
@@ -24501,6 +25419,9 @@
24501
25419
  "AppPackage": {
24502
25420
  "type": "object",
24503
25421
  "properties": {
25422
+ "oauth_client": {
25423
+ "$ref": "#/components/schemas/AppOAuthClientConfig"
25424
+ },
24504
25425
  "oauth_scopes": {
24505
25426
  "type": "array",
24506
25427
  "items": {
@@ -24623,9 +25544,82 @@
24623
25544
  "project": {
24624
25545
  "type": "string"
24625
25546
  },
25547
+ "instance_key": {
25548
+ "type": "string"
25549
+ },
25550
+ "display_name": {
25551
+ "type": "string"
25552
+ },
25553
+ "installation_version": {
25554
+ "type": "number",
25555
+ "const": 1
25556
+ },
25557
+ "namespace_overrides": {
25558
+ "type": "object",
25559
+ "additionalProperties": {
25560
+ "type": "string"
25561
+ }
25562
+ },
25563
+ "reserved_namespaces": {
25564
+ "minItems": 1,
25565
+ "type": "array",
25566
+ "items": {
25567
+ "type": "string"
25568
+ }
25569
+ },
25570
+ "namespace_conflicts": {
25571
+ "type": "array",
25572
+ "items": {
25573
+ "type": "string"
25574
+ }
25575
+ },
24626
25576
  "manifest": {
24627
25577
  "type": "string"
24628
25578
  },
25579
+ "mcp_configuration": {
25580
+ "type": "object",
25581
+ "properties": {
25582
+ "revision": {
25583
+ "type": "string"
25584
+ },
25585
+ "values": {
25586
+ "type": "object",
25587
+ "additionalProperties": {
25588
+ "type": "object",
25589
+ "additionalProperties": {
25590
+ "type": "string"
25591
+ }
25592
+ }
25593
+ },
25594
+ "configured_secrets": {
25595
+ "type": "object",
25596
+ "additionalProperties": {
25597
+ "type": "array",
25598
+ "items": {
25599
+ "type": "string"
25600
+ }
25601
+ }
25602
+ },
25603
+ "shared_values": {
25604
+ "type": "object",
25605
+ "additionalProperties": {
25606
+ "type": "string"
25607
+ }
25608
+ },
25609
+ "configured_shared_secrets": {
25610
+ "type": "array",
25611
+ "items": {
25612
+ "type": "string"
25613
+ }
25614
+ }
25615
+ },
25616
+ "required": [
25617
+ "revision",
25618
+ "values",
25619
+ "configured_secrets"
25620
+ ],
25621
+ "additionalProperties": false
25622
+ },
24629
25623
  "oauth_approval": {
24630
25624
  "type": "object",
24631
25625
  "properties": {
@@ -24649,6 +25643,9 @@
24649
25643
  ],
24650
25644
  "additionalProperties": false
24651
25645
  },
25646
+ "oauth_client_id": {
25647
+ "type": "string"
25648
+ },
24652
25649
  "settings": {
24653
25650
  "type": "object",
24654
25651
  "additionalProperties": true
@@ -24715,6 +25712,79 @@
24715
25712
  "project": {
24716
25713
  "type": "string"
24717
25714
  },
25715
+ "instance_key": {
25716
+ "type": "string"
25717
+ },
25718
+ "display_name": {
25719
+ "type": "string"
25720
+ },
25721
+ "installation_version": {
25722
+ "type": "number",
25723
+ "const": 1
25724
+ },
25725
+ "namespace_overrides": {
25726
+ "type": "object",
25727
+ "additionalProperties": {
25728
+ "type": "string"
25729
+ }
25730
+ },
25731
+ "reserved_namespaces": {
25732
+ "minItems": 1,
25733
+ "type": "array",
25734
+ "items": {
25735
+ "type": "string"
25736
+ }
25737
+ },
25738
+ "namespace_conflicts": {
25739
+ "type": "array",
25740
+ "items": {
25741
+ "type": "string"
25742
+ }
25743
+ },
25744
+ "mcp_configuration": {
25745
+ "type": "object",
25746
+ "properties": {
25747
+ "revision": {
25748
+ "type": "string"
25749
+ },
25750
+ "values": {
25751
+ "type": "object",
25752
+ "additionalProperties": {
25753
+ "type": "object",
25754
+ "additionalProperties": {
25755
+ "type": "string"
25756
+ }
25757
+ }
25758
+ },
25759
+ "configured_secrets": {
25760
+ "type": "object",
25761
+ "additionalProperties": {
25762
+ "type": "array",
25763
+ "items": {
25764
+ "type": "string"
25765
+ }
25766
+ }
25767
+ },
25768
+ "shared_values": {
25769
+ "type": "object",
25770
+ "additionalProperties": {
25771
+ "type": "string"
25772
+ }
25773
+ },
25774
+ "configured_shared_secrets": {
25775
+ "type": "array",
25776
+ "items": {
25777
+ "type": "string"
25778
+ }
25779
+ }
25780
+ },
25781
+ "required": [
25782
+ "revision",
25783
+ "values",
25784
+ "configured_secrets"
25785
+ ],
25786
+ "additionalProperties": false
25787
+ },
24718
25788
  "oauth_approval": {
24719
25789
  "type": "object",
24720
25790
  "properties": {
@@ -24738,6 +25808,9 @@
24738
25808
  ],
24739
25809
  "additionalProperties": false
24740
25810
  },
25811
+ "oauth_client_id": {
25812
+ "type": "string"
25813
+ },
24741
25814
  "settings": {
24742
25815
  "type": "object",
24743
25816
  "additionalProperties": true
@@ -24808,6 +25881,79 @@
24808
25881
  "project": {
24809
25882
  "type": "string"
24810
25883
  },
25884
+ "instance_key": {
25885
+ "type": "string"
25886
+ },
25887
+ "display_name": {
25888
+ "type": "string"
25889
+ },
25890
+ "installation_version": {
25891
+ "type": "number",
25892
+ "const": 1
25893
+ },
25894
+ "namespace_overrides": {
25895
+ "type": "object",
25896
+ "additionalProperties": {
25897
+ "type": "string"
25898
+ }
25899
+ },
25900
+ "reserved_namespaces": {
25901
+ "minItems": 1,
25902
+ "type": "array",
25903
+ "items": {
25904
+ "type": "string"
25905
+ }
25906
+ },
25907
+ "namespace_conflicts": {
25908
+ "type": "array",
25909
+ "items": {
25910
+ "type": "string"
25911
+ }
25912
+ },
25913
+ "mcp_configuration": {
25914
+ "type": "object",
25915
+ "properties": {
25916
+ "revision": {
25917
+ "type": "string"
25918
+ },
25919
+ "values": {
25920
+ "type": "object",
25921
+ "additionalProperties": {
25922
+ "type": "object",
25923
+ "additionalProperties": {
25924
+ "type": "string"
25925
+ }
25926
+ }
25927
+ },
25928
+ "configured_secrets": {
25929
+ "type": "object",
25930
+ "additionalProperties": {
25931
+ "type": "array",
25932
+ "items": {
25933
+ "type": "string"
25934
+ }
25935
+ }
25936
+ },
25937
+ "shared_values": {
25938
+ "type": "object",
25939
+ "additionalProperties": {
25940
+ "type": "string"
25941
+ }
25942
+ },
25943
+ "configured_shared_secrets": {
25944
+ "type": "array",
25945
+ "items": {
25946
+ "type": "string"
25947
+ }
25948
+ }
25949
+ },
25950
+ "required": [
25951
+ "revision",
25952
+ "values",
25953
+ "configured_secrets"
25954
+ ],
25955
+ "additionalProperties": false
25956
+ },
24811
25957
  "oauth_approval": {
24812
25958
  "type": "object",
24813
25959
  "properties": {
@@ -24831,6 +25977,9 @@
24831
25977
  ],
24832
25978
  "additionalProperties": false
24833
25979
  },
25980
+ "oauth_client_id": {
25981
+ "type": "string"
25982
+ },
24834
25983
  "settings": {
24835
25984
  "type": "object",
24836
25985
  "additionalProperties": true
@@ -26550,10 +27699,14 @@
26550
27699
  ]
26551
27700
  },
26552
27701
  "limit": {
26553
- "type": "number"
27702
+ "type": "number",
27703
+ "minimum": 0,
27704
+ "multipleOf": 1
26554
27705
  },
26555
27706
  "offset": {
26556
- "type": "number"
27707
+ "type": "number",
27708
+ "minimum": 0,
27709
+ "multipleOf": 1
26557
27710
  }
26558
27711
  },
26559
27712
  "additionalProperties": false
@@ -26943,10 +28096,14 @@
26943
28096
  "type": "boolean"
26944
28097
  },
26945
28098
  "limit": {
26946
- "type": "number"
28099
+ "type": "number",
28100
+ "minimum": 0,
28101
+ "multipleOf": 1
26947
28102
  },
26948
28103
  "offset": {
26949
- "type": "number"
28104
+ "type": "number",
28105
+ "minimum": 0,
28106
+ "multipleOf": 1
26950
28107
  }
26951
28108
  },
26952
28109
  "additionalProperties": false
@@ -26967,10 +28124,14 @@
26967
28124
  "type": "boolean"
26968
28125
  },
26969
28126
  "limit": {
26970
- "type": "number"
28127
+ "type": "number",
28128
+ "minimum": 0,
28129
+ "multipleOf": 1
26971
28130
  },
26972
28131
  "offset": {
26973
- "type": "number"
28132
+ "type": "number",
28133
+ "minimum": 0,
28134
+ "multipleOf": 1
26974
28135
  }
26975
28136
  },
26976
28137
  "additionalProperties": false
@@ -28314,6 +29475,12 @@
28314
29475
  "comment": {
28315
29476
  "type": "string",
28316
29477
  "description": "Optional publish note."
29478
+ },
29479
+ "idempotency_key": {
29480
+ "type": "string",
29481
+ "minLength": 1,
29482
+ "maxLength": 256,
29483
+ "description": "Client-chosen key that makes this request safe to retry. Publishing is otherwise not idempotent: a repeat of a publish that already succeeded is rejected because the revision is no longer a draft. When the revision was published by a request with the same key and the same body, the repeat returns that revision instead. Reusing the key with a different body is rejected with 409. The key is bound to the revision it published."
28317
29484
  }
28318
29485
  },
28319
29486
  "required": [
@@ -34174,10 +35341,14 @@
34174
35341
  "$ref": "#/components/schemas/CollectionStatus"
34175
35342
  },
34176
35343
  "limit": {
34177
- "type": "number"
35344
+ "type": "number",
35345
+ "minimum": 0,
35346
+ "multipleOf": 1
34178
35347
  },
34179
35348
  "offset": {
34180
- "type": "number"
35349
+ "type": "number",
35350
+ "minimum": 0,
35351
+ "multipleOf": 1
34181
35352
  },
34182
35353
  "name": {
34183
35354
  "type": "string"
@@ -34363,10 +35534,14 @@
34363
35534
  "type": "string"
34364
35535
  },
34365
35536
  "limit": {
34366
- "type": "number"
35537
+ "type": "number",
35538
+ "minimum": 0,
35539
+ "multipleOf": 1
34367
35540
  },
34368
35541
  "offset": {
34369
- "type": "number"
35542
+ "type": "number",
35543
+ "minimum": 0,
35544
+ "multipleOf": 1
34370
35545
  }
34371
35546
  }
34372
35547
  },
@@ -36458,10 +37633,14 @@
36458
37633
  },
36459
37634
  "limit": {
36460
37635
  "type": "number",
37636
+ "minimum": 0,
37637
+ "multipleOf": 1,
36461
37638
  "description": "Maximum number of results (default: 50)"
36462
37639
  },
36463
37640
  "offset": {
36464
37641
  "type": "number",
37642
+ "minimum": 0,
37643
+ "multipleOf": 1,
36465
37644
  "description": "Offset for pagination"
36466
37645
  },
36467
37646
  "cursor": {