@cdot65/prisma-airs-sdk 0.17.0 → 0.19.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -286,6 +286,7 @@ __export(index_exports, {
286
286
  FileScanDataSchema: () => FileScanDataSchema,
287
287
  FileScanResult: () => FileScanResult,
288
288
  FileType: () => FileType,
289
+ GatewayApiKeyRotateResponseSchema: () => GatewayApiKeyRotateResponseSchema,
289
290
  GatewayApiKeySchema: () => GatewayApiKeySchema,
290
291
  GatewayAuditLogRecordSchema: () => GatewayAuditLogRecordSchema,
291
292
  GatewayAuditLogsResponseSchema: () => GatewayAuditLogsResponseSchema,
@@ -293,8 +294,10 @@ __export(index_exports, {
293
294
  GatewayConfigCreateResponseSchema: () => GatewayConfigCreateResponseSchema,
294
295
  GatewayConfigDetailSchema: () => GatewayConfigDetailSchema,
295
296
  GatewayConfigSchema: () => GatewayConfigSchema,
297
+ GatewayConfigVersionSchema: () => GatewayConfigVersionSchema,
296
298
  GatewayDeploymentCreateResponseSchema: () => GatewayDeploymentCreateResponseSchema,
297
299
  GatewayDeploymentDetailSchema: () => GatewayDeploymentDetailSchema,
300
+ GatewayDeploymentPingResponseSchema: () => GatewayDeploymentPingResponseSchema,
298
301
  GatewayDeploymentSchema: () => GatewayDeploymentSchema,
299
302
  GatewayGlobalWorkspaceAccessSchema: () => GatewayGlobalWorkspaceAccessSchema,
300
303
  GatewayGroupRowSchema: () => GatewayGroupRowSchema,
@@ -309,6 +312,7 @@ __export(index_exports, {
309
312
  GatewayLogsResponseSchema: () => GatewayLogsResponseSchema,
310
313
  GatewayPluginSchema: () => GatewayPluginSchema,
311
314
  GatewayProviderCreateResponseSchema: () => GatewayProviderCreateResponseSchema,
315
+ GatewayProviderDetailSchema: () => GatewayProviderDetailSchema,
312
316
  GatewayProviderSchema: () => GatewayProviderSchema,
313
317
  GatewayRateLimitSchema: () => GatewayRateLimitSchema,
314
318
  GatewayUsageLimitSchema: () => GatewayUsageLimitSchema,
@@ -349,6 +353,7 @@ __export(index_exports, {
349
353
  LanguageOptionSchema: () => LanguageOptionSchema,
350
354
  LatencyChartResponseSchema: () => LatencyChartResponseSchema,
351
355
  ListApiKeysResponseSchema: () => ListApiKeysResponseSchema,
356
+ ListConfigVersionsResponseSchema: () => ListConfigVersionsResponseSchema,
352
357
  ListConfigsResponseSchema: () => ListConfigsResponseSchema,
353
358
  ListDeploymentsResponseSchema: () => ListDeploymentsResponseSchema,
354
359
  ListGuardrailsResponseSchema: () => ListGuardrailsResponseSchema,
@@ -417,7 +422,13 @@ __export(index_exports, {
417
422
  MaskedDataSchema: () => MaskedDataSchema,
418
423
  McEntrySchema: () => McEntrySchema,
419
424
  McReportSchema: () => McReportSchema,
425
+ McpIntegrationCapabilitiesResponseSchema: () => McpIntegrationCapabilitiesResponseSchema,
426
+ McpIntegrationCapabilitiesUpdateResponseSchema: () => McpIntegrationCapabilitiesUpdateResponseSchema,
427
+ McpIntegrationCapabilitySchema: () => McpIntegrationCapabilitySchema,
428
+ McpIntegrationDetailSchema: () => McpIntegrationDetailSchema,
429
+ McpIntegrationMetadataSchema: () => McpIntegrationMetadataSchema,
420
430
  McpIntegrationSchema: () => McpIntegrationSchema,
431
+ McpIntegrationWorkspacesUpdateResponseSchema: () => McpIntegrationWorkspacesUpdateResponseSchema,
421
432
  MetadataCriterionSchema: () => MetadataCriterionSchema,
422
433
  MetadataSchema: () => MetadataSchema,
423
434
  ModelConfigurationSchema: () => ModelConfigurationSchema,
@@ -660,10 +671,15 @@ __export(index_exports, {
660
671
  WebSocketConnectionParamsSchema: () => WebSocketConnectionParamsSchema,
661
672
  WeightedRegexSchema: () => WeightedRegexSchema,
662
673
  aiGwOrganisationsAuthSettingsPath: () => aiGwOrganisationsAuthSettingsPath,
674
+ collectAll: () => collectAll,
675
+ collectSkipPages: () => collectSkipPages,
676
+ collectSpringPages: () => collectSpringPages,
663
677
  globalConfiguration: () => globalConfiguration,
664
678
  init: () => init,
665
679
  jsonNullable: () => jsonNullable,
666
- pageSchema: () => pageSchema
680
+ pageSchema: () => pageSchema,
681
+ paginate: () => paginate,
682
+ serializeListing: () => serializeListing
667
683
  });
668
684
  module.exports = __toCommonJS(index_exports);
669
685
 
@@ -2030,6 +2046,60 @@ var Content = class _Content {
2030
2046
  }
2031
2047
  };
2032
2048
 
2049
+ // src/listing.ts
2050
+ async function* paginate(fetchPage, initialCursor) {
2051
+ let cursor = initialCursor;
2052
+ const seen = /* @__PURE__ */ new Set();
2053
+ while (true) {
2054
+ if (seen.has(cursor)) throw new Error("Pagination returned a repeated cursor");
2055
+ seen.add(cursor);
2056
+ const page = await fetchPage(cursor);
2057
+ yield* page.items;
2058
+ if (page.next === void 0) return;
2059
+ cursor = page.next;
2060
+ }
2061
+ }
2062
+ async function collectAll(iterable, opts = {}) {
2063
+ const max = opts.max ?? 1e4;
2064
+ if (!Number.isSafeInteger(max) || max < 0)
2065
+ throw new RangeError("max must be a non-negative integer");
2066
+ const items = [];
2067
+ for await (const item of iterable) {
2068
+ if (max > 0 && items.length >= max) break;
2069
+ items.push(item);
2070
+ }
2071
+ return items;
2072
+ }
2073
+ function collectSkipPages(fetchPage, opts = {}) {
2074
+ const limit = opts.limit ?? 50;
2075
+ return collectAll(
2076
+ paginate(async (skip) => {
2077
+ const page = await fetchPage(skip, limit);
2078
+ const next = skip + page.items.length;
2079
+ const hasMore = page.items.length > 0 && (page.total == null ? page.items.length === limit : next < page.total);
2080
+ return { items: page.items, next: hasMore ? next : void 0 };
2081
+ }, 0),
2082
+ { max: opts.max }
2083
+ );
2084
+ }
2085
+ function collectSpringPages(fetchPage, opts = {}) {
2086
+ const size = opts.size ?? 50;
2087
+ return collectAll(
2088
+ paginate(async (page) => {
2089
+ const result = await fetchPage(page, size);
2090
+ return { items: result.items, next: result.last ? void 0 : page + 1 };
2091
+ }, 0),
2092
+ { max: opts.max }
2093
+ );
2094
+ }
2095
+ function serializeListing(opts) {
2096
+ const params = {};
2097
+ if (opts?.skip !== void 0) params.skip = String(opts.skip);
2098
+ if (opts?.limit !== void 0) params.limit = String(opts.limit);
2099
+ if (opts?.search !== void 0) params.search = opts.search;
2100
+ return params;
2101
+ }
2102
+
2033
2103
  // src/models/enums.ts
2034
2104
  var Verdict = {
2035
2105
  BENIGN: "benign",
@@ -5058,6 +5128,11 @@ var GatewayConfigDetailSchema = GatewayConfigSchema.extend({
5058
5128
  type: import_zod35.z.string(),
5059
5129
  version_id: import_zod35.z.string()
5060
5130
  }).passthrough();
5131
+ var GatewayConfigVersionSchema = GatewayConfigDetailSchema.extend({
5132
+ version_created_at: import_zod35.z.string(),
5133
+ version_owner_id: import_zod35.z.string()
5134
+ }).passthrough();
5135
+ var ListConfigVersionsResponseSchema = aiGatewayList(GatewayConfigVersionSchema);
5061
5136
  var GatewayConfigCreateResponseSchema = import_zod35.z.object({
5062
5137
  id: import_zod35.z.string(),
5063
5138
  version_id: import_zod35.z.string(),
@@ -5095,8 +5170,8 @@ var GatewayGuardrailDetailSchema = GatewayGuardrailSchema.extend({
5095
5170
  async: import_zod35.z.boolean(),
5096
5171
  sequential: import_zod35.z.boolean(),
5097
5172
  /** Absent when the guardrail was created without a pass/fail feedback action. */
5098
- on_success: guardrailFeedbackActionSchema.optional(),
5099
- on_fail: guardrailFeedbackActionSchema.optional()
5173
+ on_success: guardrailFeedbackActionSchema.nullable().optional(),
5174
+ on_fail: guardrailFeedbackActionSchema.nullable().optional()
5100
5175
  }).passthrough(),
5101
5176
  version_id: import_zod35.z.string()
5102
5177
  }).passthrough();
@@ -5113,6 +5188,27 @@ var GatewayProviderSchema = import_zod35.z.object({
5113
5188
  object: import_zod35.z.string().optional()
5114
5189
  }).passthrough();
5115
5190
  var ListProvidersResponseSchema = aiGatewayList(GatewayProviderSchema);
5191
+ var GatewayProviderDetailSchema = import_zod35.z.object({
5192
+ id: import_zod35.z.string(),
5193
+ ai_provider_name: import_zod35.z.string(),
5194
+ model_config: import_zod35.z.record(import_zod35.z.unknown()),
5195
+ /** Potentially secret-bearing. Never log or persist this field. */
5196
+ key: import_zod35.z.string(),
5197
+ masked_api_key: import_zod35.z.string(),
5198
+ slug: import_zod35.z.string(),
5199
+ name: import_zod35.z.string(),
5200
+ usage_limits: import_zod35.z.unknown().nullable(),
5201
+ status: import_zod35.z.string(),
5202
+ note: import_zod35.z.string().nullable(),
5203
+ created_at: import_zod35.z.string(),
5204
+ expires_at: import_zod35.z.string().nullable(),
5205
+ last_reset_at: import_zod35.z.string().nullable(),
5206
+ rate_limits: import_zod35.z.array(import_zod35.z.unknown()),
5207
+ integration_id: import_zod35.z.string(),
5208
+ tags: import_zod35.z.unknown().nullable(),
5209
+ secret_mappings: import_zod35.z.array(import_zod35.z.unknown()).optional(),
5210
+ object: import_zod35.z.string()
5211
+ }).passthrough();
5116
5212
  var GatewayProviderCreateResponseSchema = import_zod35.z.object({
5117
5213
  id: import_zod35.z.string(),
5118
5214
  slug: import_zod35.z.string(),
@@ -5124,6 +5220,11 @@ var GatewayApiKeySchema = import_zod35.z.object({
5124
5220
  object: import_zod35.z.string().optional()
5125
5221
  }).passthrough();
5126
5222
  var ListApiKeysResponseSchema = aiGatewayList(GatewayApiKeySchema);
5223
+ var GatewayApiKeyRotateResponseSchema = import_zod35.z.object({
5224
+ id: import_zod35.z.string(),
5225
+ key: import_zod35.z.string(),
5226
+ key_transition_expires_at: import_zod35.z.string()
5227
+ }).passthrough();
5127
5228
  var GatewayIntegrationSchema = import_zod35.z.object({
5128
5229
  id: import_zod35.z.string(),
5129
5230
  organisation_id: import_zod35.z.string().optional(),
@@ -5154,7 +5255,7 @@ var GatewayIntegrationWorkspaceSchema = import_zod35.z.object({
5154
5255
  enabled: import_zod35.z.boolean(),
5155
5256
  status: import_zod35.z.string(),
5156
5257
  created_at: import_zod35.z.string(),
5157
- last_updated_at: import_zod35.z.string(),
5258
+ last_updated_at: import_zod35.z.string().nullable(),
5158
5259
  last_reset_at: import_zod35.z.string().nullable()
5159
5260
  }).passthrough();
5160
5261
  var GatewayGlobalWorkspaceAccessSchema = import_zod35.z.object({
@@ -5187,6 +5288,70 @@ var McpIntegrationSchema = import_zod35.z.object({
5187
5288
  last_updated_at: import_zod35.z.string()
5188
5289
  }).passthrough();
5189
5290
  var ListMcpIntegrationsResponseSchema = aiGatewayList(McpIntegrationSchema);
5291
+ var McpIntegrationDetailSchema = import_zod35.z.object({
5292
+ id: import_zod35.z.string(),
5293
+ name: import_zod35.z.string(),
5294
+ description: import_zod35.z.string().nullable(),
5295
+ owner_id: import_zod35.z.string(),
5296
+ status: import_zod35.z.string(),
5297
+ created_at: import_zod35.z.string(),
5298
+ last_updated_at: import_zod35.z.string(),
5299
+ configurations: import_zod35.z.record(import_zod35.z.unknown()),
5300
+ global_workspace_access: import_zod35.z.object({ enabled: import_zod35.z.boolean() }).passthrough().nullable(),
5301
+ workspace_id: import_zod35.z.string().nullable(),
5302
+ slug: import_zod35.z.string(),
5303
+ url: import_zod35.z.string(),
5304
+ auth_type: import_zod35.z.string(),
5305
+ transport: import_zod35.z.string(),
5306
+ type: import_zod35.z.string(),
5307
+ secret_mappings: import_zod35.z.array(import_zod35.z.unknown()).nullable(),
5308
+ object: import_zod35.z.string()
5309
+ }).passthrough();
5310
+ var McpCapabilityCountSchema = import_zod35.z.object({ total: import_zod35.z.number(), enabled: import_zod35.z.number() }).passthrough();
5311
+ var McpIntegrationCapabilitySchema = import_zod35.z.object({
5312
+ name: import_zod35.z.string(),
5313
+ type: import_zod35.z.string(),
5314
+ title: import_zod35.z.string().nullable(),
5315
+ description: import_zod35.z.string().nullable(),
5316
+ icons: import_zod35.z.unknown().nullable(),
5317
+ enabled: import_zod35.z.boolean(),
5318
+ created_at: import_zod35.z.string(),
5319
+ last_updated_at: import_zod35.z.string(),
5320
+ input_schema: import_zod35.z.record(import_zod35.z.unknown()).nullable(),
5321
+ output_schema: import_zod35.z.record(import_zod35.z.unknown()).nullable(),
5322
+ execution: import_zod35.z.unknown().nullable(),
5323
+ annotations: import_zod35.z.record(import_zod35.z.unknown()).nullable(),
5324
+ object: import_zod35.z.string()
5325
+ }).passthrough();
5326
+ var McpIntegrationCapabilitiesResponseSchema = import_zod35.z.object({
5327
+ object: import_zod35.z.string(),
5328
+ counts: import_zod35.z.object({
5329
+ tools: McpCapabilityCountSchema.optional(),
5330
+ prompts: McpCapabilityCountSchema.optional(),
5331
+ resources: McpCapabilityCountSchema.optional(),
5332
+ resource_templates: McpCapabilityCountSchema.optional()
5333
+ }).passthrough(),
5334
+ total: import_zod35.z.number(),
5335
+ has_more: import_zod35.z.boolean(),
5336
+ data: import_zod35.z.array(McpIntegrationCapabilitySchema)
5337
+ }).passthrough();
5338
+ var McpIntegrationCapabilitiesUpdateResponseSchema = import_zod35.z.object({ success: import_zod35.z.boolean() }).passthrough();
5339
+ var McpIntegrationWorkspacesUpdateResponseSchema = import_zod35.z.object({}).strict();
5340
+ var McpIntegrationMetadataSchema = import_zod35.z.object({
5341
+ server_name: import_zod35.z.string(),
5342
+ server_version: import_zod35.z.string(),
5343
+ title: import_zod35.z.string().nullable(),
5344
+ description: import_zod35.z.string().nullable(),
5345
+ website_url: import_zod35.z.string().nullable(),
5346
+ icons: import_zod35.z.unknown().nullable(),
5347
+ protocol_version: import_zod35.z.string().nullable(),
5348
+ capability_flags: import_zod35.z.record(import_zod35.z.unknown()),
5349
+ instructions: import_zod35.z.string().nullable(),
5350
+ sync_status: import_zod35.z.string(),
5351
+ last_synced_at: import_zod35.z.string().nullable(),
5352
+ sync_error: import_zod35.z.string().nullable(),
5353
+ object: import_zod35.z.string()
5354
+ }).passthrough();
5190
5355
  var GatewayDeploymentSchema = import_zod35.z.object({
5191
5356
  id: import_zod35.z.string(),
5192
5357
  name: import_zod35.z.string(),
@@ -5222,6 +5387,18 @@ var GatewayDeploymentCreateResponseSchema = import_zod35.z.object({
5222
5387
  organisation_id: import_zod35.z.string(),
5223
5388
  object: import_zod35.z.string()
5224
5389
  }).passthrough();
5390
+ var GatewayDeploymentPingResponseSchema = import_zod35.z.object({
5391
+ status: import_zod35.z.string(),
5392
+ gateway_base_url: import_zod35.z.string(),
5393
+ outbound: import_zod35.z.object({
5394
+ status: import_zod35.z.string(),
5395
+ status_code: import_zod35.z.number().optional(),
5396
+ version: import_zod35.z.string().optional(),
5397
+ error: import_zod35.z.string().optional()
5398
+ }).passthrough(),
5399
+ inbound: import_zod35.z.object({ status: import_zod35.z.string(), error: import_zod35.z.string().optional() }).passthrough(),
5400
+ object: import_zod35.z.string()
5401
+ }).passthrough();
5225
5402
  var ListDeploymentsResponseSchema = aiGatewayList(GatewayDeploymentSchema);
5226
5403
  var GatewayPluginSchema = import_zod35.z.object({
5227
5404
  id: import_zod35.z.string(),
@@ -5591,6 +5768,7 @@ var ProfilesClient = class {
5591
5768
  offset: String(opts?.offset ?? 0),
5592
5769
  limit: String(opts?.limit ?? 100)
5593
5770
  };
5771
+ if (opts?.latest !== void 0) params.latest = String(opts.latest);
5594
5772
  return request({
5595
5773
  method: "GET",
5596
5774
  baseUrl: this.baseUrl,
@@ -5601,6 +5779,23 @@ var ProfilesClient = class {
5601
5779
  numRetries: this.numRetries
5602
5780
  });
5603
5781
  }
5782
+ /**
5783
+ * List security profiles across every response page.
5784
+ * @example
5785
+ * ```ts
5786
+ * const profiles = await mgmt.profiles.listAll({ latest: true });
5787
+ * ```
5788
+ */
5789
+ async listAll(opts = {}) {
5790
+ const limit = opts.limit ?? 100;
5791
+ return collectAll(
5792
+ paginate(async (offset) => {
5793
+ const page = await this.list({ offset, limit, latest: opts.latest });
5794
+ return { items: page.ai_profiles, next: page.next_offset || void 0 };
5795
+ }, 0),
5796
+ { max: opts.max }
5797
+ );
5798
+ }
5604
5799
  /**
5605
5800
  * Get a security profile by UUID.
5606
5801
  * Fetches all profiles and filters — no dedicated API endpoint exists.
@@ -5618,7 +5813,7 @@ var ProfilesClient = class {
5618
5813
  * ```
5619
5814
  */
5620
5815
  async get(profileId) {
5621
- const { ai_profiles } = await this.list();
5816
+ const ai_profiles = await this.listAll();
5622
5817
  const profile = ai_profiles.find((p) => p.profile_id === profileId);
5623
5818
  if (!profile) {
5624
5819
  throw new AISecSDKException(
@@ -5644,7 +5839,7 @@ var ProfilesClient = class {
5644
5839
  * ```
5645
5840
  */
5646
5841
  async getByName(profileName) {
5647
- const { ai_profiles } = await this.list();
5842
+ const ai_profiles = await this.listAll();
5648
5843
  const matches = ai_profiles.filter((p) => p.profile_name === profileName);
5649
5844
  if (matches.length === 0) {
5650
5845
  throw new AISecSDKException(
@@ -5799,6 +5994,22 @@ var TopicsClient = class {
5799
5994
  * ```
5800
5995
  */
5801
5996
  async list(opts) {
5997
+ if (opts?.latestOnly) {
5998
+ const all = await this.listAll({ limit: 200 });
5999
+ const latest = /* @__PURE__ */ new Map();
6000
+ for (const topic of all) {
6001
+ const current = latest.get(topic.topic_name);
6002
+ if (!current || topic.revision > current.revision) latest.set(topic.topic_name, topic);
6003
+ }
6004
+ const custom_topics = [...latest.values()];
6005
+ const offset = opts.offset ?? 0;
6006
+ const limit = opts.limit ?? 100;
6007
+ const nextOffset = offset + limit;
6008
+ return {
6009
+ custom_topics: custom_topics.slice(offset, nextOffset),
6010
+ next_offset: nextOffset < custom_topics.length ? nextOffset : void 0
6011
+ };
6012
+ }
5802
6013
  const params = {
5803
6014
  offset: String(opts?.offset ?? 0),
5804
6015
  limit: String(opts?.limit ?? 100)
@@ -5813,6 +6024,55 @@ var TopicsClient = class {
5813
6024
  numRetries: this.numRetries
5814
6025
  });
5815
6026
  }
6027
+ /**
6028
+ * List custom topics across every response page.
6029
+ * @example
6030
+ * ```ts
6031
+ * const topics = await mgmt.topics.listAll({ limit: 200 });
6032
+ * ```
6033
+ */
6034
+ async listAll(opts = {}) {
6035
+ const limit = opts.limit ?? 100;
6036
+ return collectAll(
6037
+ paginate(async (offset) => {
6038
+ const page = await this.list({ offset, limit });
6039
+ return { items: page.custom_topics, next: page.next_offset || void 0 };
6040
+ }, 0),
6041
+ { max: opts.max }
6042
+ );
6043
+ }
6044
+ /**
6045
+ * Get an exact custom-topic revision by UUID.
6046
+ * @example
6047
+ * ```ts
6048
+ * const topic = await mgmt.topics.get('550e8400-e29b-41d4-a716-446655440000');
6049
+ * ```
6050
+ */
6051
+ async get(topicId) {
6052
+ const topic = (await this.listAll()).find((item) => item.topic_id === topicId);
6053
+ if (!topic)
6054
+ throw new AISecSDKException(
6055
+ `Topic not found: ${topicId}`,
6056
+ "AISEC_USER_REQUEST_PAYLOAD_ERROR" /* USER_REQUEST_PAYLOAD_ERROR */
6057
+ );
6058
+ return topic;
6059
+ }
6060
+ /**
6061
+ * Get the highest revision of a custom topic by name.
6062
+ * @example
6063
+ * ```ts
6064
+ * const topic = await mgmt.topics.getByName('credit-cards');
6065
+ * ```
6066
+ */
6067
+ async getByName(topicName) {
6068
+ const matches = (await this.listAll()).filter((item) => item.topic_name === topicName);
6069
+ if (matches.length === 0)
6070
+ throw new AISecSDKException(
6071
+ `Topic not found: ${topicName}`,
6072
+ "AISEC_USER_REQUEST_PAYLOAD_ERROR" /* USER_REQUEST_PAYLOAD_ERROR */
6073
+ );
6074
+ return matches.reduce((best, topic) => topic.revision > best.revision ? topic : best);
6075
+ }
5816
6076
  /**
5817
6077
  * Update an existing custom topic.
5818
6078
  * @param topicId - UUID of the topic to update.
@@ -5976,6 +6236,17 @@ var ApiKeysClient = class {
5976
6236
  numRetries: this.numRetries
5977
6237
  });
5978
6238
  }
6239
+ /** List all API keys. @example `const keys = await mgmt.apiKeys.listAll();` */
6240
+ async listAll(opts = {}) {
6241
+ const limit = opts.limit ?? 100;
6242
+ return collectAll(
6243
+ paginate(async (offset) => {
6244
+ const page = await this.list({ offset, limit });
6245
+ return { items: page.api_keys ?? [], next: page.next_offset || void 0 };
6246
+ }, 0),
6247
+ { max: opts.max }
6248
+ );
6249
+ }
5979
6250
  /**
5980
6251
  * Delete an API key by name.
5981
6252
  * @param apiKeyName - Name of the API key to delete.
@@ -6100,6 +6371,17 @@ var CustomerAppsClient = class {
6100
6371
  numRetries: this.numRetries
6101
6372
  });
6102
6373
  }
6374
+ /** List all customer applications. @example `const apps = await mgmt.customerApps.listAll();` */
6375
+ async listAll(opts = {}) {
6376
+ const limit = opts.limit ?? 100;
6377
+ return collectAll(
6378
+ paginate(async (offset) => {
6379
+ const page = await this.list({ offset, limit });
6380
+ return { items: page.customer_apps ?? [], next: page.next_offset || void 0 };
6381
+ }, 0),
6382
+ { max: opts.max }
6383
+ );
6384
+ }
6103
6385
  /**
6104
6386
  * Update a customer app.
6105
6387
  * @param customerAppId - UUID of the customer app to update.
@@ -6547,6 +6829,17 @@ var DataFilteringProfilesClient = class {
6547
6829
  numRetries: this.numRetries
6548
6830
  });
6549
6831
  }
6832
+ /** List all filtering profiles. @example `const profiles = await mgmt.dlp.dataFilteringProfiles.listAll();` */
6833
+ async listAll(params = {}) {
6834
+ return collectSpringPages(
6835
+ async (page, size) => {
6836
+ const result = await this.list({ ...params, page, size });
6837
+ const last = result.last ?? (result.totalPages !== void 0 ? page + 1 >= result.totalPages : result.content.length < size);
6838
+ return { items: result.content, last };
6839
+ },
6840
+ { size: params.size, max: params.max }
6841
+ );
6842
+ }
6550
6843
  /**
6551
6844
  * Get a single data filtering profile by resource ID.
6552
6845
  * @example
@@ -6640,6 +6933,17 @@ var DataPatternsClient = class {
6640
6933
  numRetries: this.numRetries
6641
6934
  });
6642
6935
  }
6936
+ /** List all data patterns. @example `const patterns = await mgmt.dlp.dataPatterns.listAll();` */
6937
+ async listAll(params = {}) {
6938
+ return collectSpringPages(
6939
+ async (page, size) => {
6940
+ const result = await this.list({ ...params, page, size });
6941
+ const last = result.last ?? (result.totalPages !== void 0 ? page + 1 >= result.totalPages : result.content.length < size);
6942
+ return { items: result.content, last };
6943
+ },
6944
+ { size: params.size, max: params.max }
6945
+ );
6946
+ }
6643
6947
  /**
6644
6948
  * Create a new custom data pattern.
6645
6949
  * @example
@@ -6813,6 +7117,17 @@ var DataProfilesClient = class {
6813
7117
  numRetries: this.numRetries
6814
7118
  });
6815
7119
  }
7120
+ /** List all data profiles. @example `const profiles = await mgmt.dlp.dataProfiles.listAll();` */
7121
+ async listAll(params = {}) {
7122
+ return collectSpringPages(
7123
+ async (page, size) => {
7124
+ const result = await this.list({ ...params, page, size });
7125
+ const last = result.last ?? (result.totalPages !== void 0 ? page + 1 >= result.totalPages : result.content.length < size);
7126
+ return { items: result.content, last };
7127
+ },
7128
+ { size: params.size, max: params.max }
7129
+ );
7130
+ }
6816
7131
  /**
6817
7132
  * Create a new data profile.
6818
7133
  * @example
@@ -6993,6 +7308,17 @@ var DictionariesClient = class {
6993
7308
  numRetries: this.numRetries
6994
7309
  });
6995
7310
  }
7311
+ /** List all dictionaries. @example `const dictionaries = await mgmt.dlp.dictionaries.listAll();` */
7312
+ async listAll(params = {}) {
7313
+ return collectSpringPages(
7314
+ async (page, size) => {
7315
+ const result = await this.list({ ...params, page, size });
7316
+ const last = result.last ?? (result.totalPages !== void 0 ? page + 1 >= result.totalPages : result.content.length < size);
7317
+ return { items: result.content, last };
7318
+ },
7319
+ { size: params.size, max: params.max }
7320
+ );
7321
+ }
6996
7322
  /**
6997
7323
  * Create a dictionary by uploading a keyword file. Sends a multipart body — the SDK does
6998
7324
  * not set Content-Type so the runtime can write the correct boundary.
@@ -7225,15 +7551,6 @@ var ManagementClient = class {
7225
7551
  }
7226
7552
  };
7227
7553
 
7228
- // src/listing.ts
7229
- function serializeListing(opts) {
7230
- const params = {};
7231
- if (opts?.skip !== void 0) params.skip = String(opts.skip);
7232
- if (opts?.limit !== void 0) params.limit = String(opts.limit);
7233
- if (opts?.search !== void 0) params.search = opts.search;
7234
- return params;
7235
- }
7236
-
7237
7554
  // src/model-security/scans-client.ts
7238
7555
  function buildScanListParams(opts) {
7239
7556
  const params = serializeListing(opts);
@@ -7329,6 +7646,13 @@ var ModelSecurityScansClient = class {
7329
7646
  numRetries: this.numRetries
7330
7647
  });
7331
7648
  }
7649
+ /** List every model-security scan page. @example `const scans = await ms.scans.listAll();` */
7650
+ async listAll(opts = {}) {
7651
+ return collectSkipPages(async (skip, limit) => {
7652
+ const page = await this.list({ ...opts, skip, limit });
7653
+ return { items: page.scans, total: page.pagination.total_items };
7654
+ }, opts);
7655
+ }
7332
7656
  /**
7333
7657
  * Get a single scan by UUID.
7334
7658
  * @param uuid - Scan UUID.
@@ -7707,6 +8031,13 @@ var ModelSecurityGroupsClient = class {
7707
8031
  numRetries: this.numRetries
7708
8032
  });
7709
8033
  }
8034
+ /** List every security-group page. @example `const groups = await ms.securityGroups.listAll();` */
8035
+ async listAll(opts = {}) {
8036
+ return collectSkipPages(async (skip, limit) => {
8037
+ const page = await this.list({ ...opts, skip, limit });
8038
+ return { items: page.security_groups, total: page.pagination.total_items };
8039
+ }, opts);
8040
+ }
7710
8041
  /**
7711
8042
  * Get a single security group by UUID.
7712
8043
  * @param uuid - Security group UUID.
@@ -7922,6 +8253,13 @@ var ModelSecurityRulesClient = class {
7922
8253
  numRetries: this.numRetries
7923
8254
  });
7924
8255
  }
8256
+ /** List every security-rule page. @example `const rules = await ms.securityRules.listAll();` */
8257
+ async listAll(opts = {}) {
8258
+ return collectSkipPages(async (skip, limit) => {
8259
+ const page = await this.list({ ...opts, skip, limit });
8260
+ return { items: page.rules, total: page.pagination.total_items };
8261
+ }, opts);
8262
+ }
7925
8263
  /**
7926
8264
  * Get a single security rule by UUID.
7927
8265
  * @param uuid - Security rule UUID.
@@ -8001,6 +8339,13 @@ var ModelSecurityModelsClient = class {
8001
8339
  numRetries: this.numRetries
8002
8340
  });
8003
8341
  }
8342
+ /** List every model page. @example `const models = await ms.models.listAllModels();` */
8343
+ async listAllModels(opts = {}) {
8344
+ return collectSkipPages(async (skip, limit) => {
8345
+ const page = await this.listModels({ ...opts, skip, limit });
8346
+ return { items: page.models, total: page.pagination.total_items };
8347
+ }, opts);
8348
+ }
8004
8349
  /**
8005
8350
  * Get a single model by UUID.
8006
8351
  * @param uuid - Model UUID.
@@ -8057,6 +8402,13 @@ var ModelSecurityModelsClient = class {
8057
8402
  numRetries: this.numRetries
8058
8403
  });
8059
8404
  }
8405
+ /** List every version of a model. @example `const versions = await ms.models.listAllModelVersions(modelUuid);` */
8406
+ async listAllModelVersions(modelUuid, opts = {}) {
8407
+ return collectSkipPages(async (skip, limit) => {
8408
+ const page = await this.listModelVersions(modelUuid, { ...opts, skip, limit });
8409
+ return { items: page.model_versions, total: page.pagination.total_items };
8410
+ }, opts);
8411
+ }
8060
8412
  /**
8061
8413
  * Get a single model version by UUID.
8062
8414
  * @param uuid - Model version UUID.
@@ -8111,6 +8463,13 @@ var ModelSecurityModelsClient = class {
8111
8463
  numRetries: this.numRetries
8112
8464
  });
8113
8465
  }
8466
+ /** List every file in a model version. @example `const files = await ms.models.listAllModelVersionFiles(versionUuid);` */
8467
+ async listAllModelVersionFiles(modelVersionUuid, opts = {}) {
8468
+ return collectSkipPages(async (skip, limit) => {
8469
+ const page = await this.listModelVersionFiles(modelVersionUuid, { ...opts, skip, limit });
8470
+ return { items: page.files, total: page.pagination.total_items };
8471
+ }, opts);
8472
+ }
8114
8473
  };
8115
8474
 
8116
8475
  // src/model-security/client.ts
@@ -8251,6 +8610,13 @@ var RedTeamScansClient = class {
8251
8610
  numRetries: this.numRetries
8252
8611
  });
8253
8612
  }
8613
+ /** List every scan page. @example `const scans = await rt.scans.listAll({ status: 'COMPLETED' });` */
8614
+ async listAll(opts = {}) {
8615
+ return collectSkipPages(async (skip, limit) => {
8616
+ const page = await this.list({ ...opts, skip, limit });
8617
+ return { items: page.data, total: page.pagination.total_items };
8618
+ }, opts);
8619
+ }
8254
8620
  /**
8255
8621
  * Get a single scan job by ID.
8256
8622
  * @param jobId - The job UUID.
@@ -9028,6 +9394,29 @@ var RedTeamTargetsClient = class {
9028
9394
  numRetries: this.numRetries
9029
9395
  });
9030
9396
  }
9397
+ /**
9398
+ * List targets across every page while preserving the supplied filters.
9399
+ * @example
9400
+ * ```ts
9401
+ * const targets = await rt.targets.listAll({ limit: 100, status: 'READY' });
9402
+ * ```
9403
+ */
9404
+ async listAll(opts = {}) {
9405
+ const limit = opts.limit ?? 50;
9406
+ return collectAll(
9407
+ paginate(async (skip) => {
9408
+ const page = await this.list({ ...opts, skip, limit });
9409
+ const items = page.data ?? [];
9410
+ const next = skip + items.length;
9411
+ const total = page.pagination.total_items;
9412
+ return {
9413
+ items,
9414
+ next: items.length > 0 && (total == null ? items.length === limit : next < total) ? next : void 0
9415
+ };
9416
+ }, 0),
9417
+ { max: opts.max }
9418
+ );
9419
+ }
9031
9420
  /**
9032
9421
  * Get a target by UUID.
9033
9422
  * @param uuid - The target UUID.
@@ -9344,6 +9733,13 @@ var RedTeamCustomAttacksClient = class {
9344
9733
  numRetries: this.numRetries
9345
9734
  });
9346
9735
  }
9736
+ /** List every custom prompt-set page. @example `const sets = await rt.customAttacks.listAllPromptSets();` */
9737
+ async listAllPromptSets(opts = {}) {
9738
+ return collectSkipPages(async (skip, limit) => {
9739
+ const page = await this.listPromptSets({ ...opts, skip, limit });
9740
+ return { items: page.data ?? [], total: page.pagination.total_items };
9741
+ }, opts);
9742
+ }
9347
9743
  /**
9348
9744
  * Get a prompt set by UUID.
9349
9745
  * @param uuid - The prompt set UUID.
@@ -9656,6 +10052,13 @@ var RedTeamCustomAttacksClient = class {
9656
10052
  numRetries: this.numRetries
9657
10053
  });
9658
10054
  }
10055
+ /** List every prompt page for a set. @example `const prompts = await rt.customAttacks.listAllPrompts(promptSetUuid);` */
10056
+ async listAllPrompts(promptSetUuid, opts = {}) {
10057
+ return collectSkipPages(async (skip, limit) => {
10058
+ const page = await this.listPrompts(promptSetUuid, { ...opts, skip, limit });
10059
+ return { items: page.data ?? [], total: page.pagination.total_items };
10060
+ }, opts);
10061
+ }
9659
10062
  /**
9660
10063
  * Get a prompt by UUID.
9661
10064
  * @param promptSetUuid - The prompt set UUID.
@@ -10402,6 +10805,13 @@ var RedTeamAdaptersClient = class {
10402
10805
  numRetries: this.numRetries
10403
10806
  });
10404
10807
  }
10808
+ /** List every adapter page. @example `const adapters = await rt.adapters.listAll();` */
10809
+ async listAll(opts = {}) {
10810
+ return collectSkipPages(async (skip, limit) => {
10811
+ const page = await this.list({ ...opts, skip, limit });
10812
+ return { items: page.data ?? [], total: page.pagination.total_items };
10813
+ }, opts);
10814
+ }
10405
10815
  /**
10406
10816
  * Get a single adapter by UUID.
10407
10817
  * @param uuid - Adapter UUID.
@@ -11531,6 +11941,29 @@ var AIGatewayConfigsClient = class {
11531
11941
  numRetries: this.numRetries
11532
11942
  });
11533
11943
  }
11944
+ /**
11945
+ * List the immutable version history for one config. Verified live 2026-08-29.
11946
+ * @param configId - Config UUID.
11947
+ * @returns Config versions, including version ownership and creation timestamps.
11948
+ * @example
11949
+ * ```ts
11950
+ * import { AIGatewayClient } from '@cdot65/prisma-airs-sdk';
11951
+ * const gw = new AIGatewayClient();
11952
+ * const versions = await gw.configs.listVersions('764cf9cd-4ebf-449e-b669-08149b0fbbbc');
11953
+ * console.log(versions.data[0].version_id);
11954
+ * ```
11955
+ */
11956
+ async listVersions(configId) {
11957
+ assertUuid(configId, "configId");
11958
+ return request({
11959
+ method: "GET",
11960
+ baseUrl: this.baseUrl,
11961
+ path: `${AI_GW_CONFIGS_PATH}/${configId}/versions`,
11962
+ responseSchema: ListConfigVersionsResponseSchema,
11963
+ auth: this.auth,
11964
+ numRetries: this.numRetries
11965
+ });
11966
+ }
11534
11967
  /**
11535
11968
  * Create a config.
11536
11969
  *
@@ -11723,6 +12156,32 @@ var AIGatewayGuardrailsClient = class {
11723
12156
  numRetries: this.numRetries
11724
12157
  });
11725
12158
  }
12159
+ /**
12160
+ * Update a guardrail. Verified live 2026-08-29.
12161
+ * @param guardrailId - Guardrail UUID.
12162
+ * @param body - Fields to update.
12163
+ * @returns The gateway write response.
12164
+ * @example
12165
+ * ```ts
12166
+ * import { AIGatewayClient } from '@cdot65/prisma-airs-sdk';
12167
+ * const gw = new AIGatewayClient();
12168
+ * await gw.guardrails.update('9f6c2a8e-2b3d-4e5f-8a9b-0c1d2e3f4a5b', {
12169
+ * name: 'Updated guardrail',
12170
+ * });
12171
+ * ```
12172
+ */
12173
+ async update(guardrailId, body) {
12174
+ assertUuid(guardrailId, "guardrailId");
12175
+ return request({
12176
+ method: "PUT",
12177
+ baseUrl: this.baseUrl,
12178
+ path: `${AI_GW_GUARDRAILS_PATH}/${guardrailId}`,
12179
+ body,
12180
+ responseSchema: GatewayWriteResponseSchema,
12181
+ auth: this.auth,
12182
+ numRetries: this.numRetries
12183
+ });
12184
+ }
11726
12185
  /**
11727
12186
  * Delete a guardrail.
11728
12187
  *
@@ -11789,6 +12248,32 @@ var AIGatewayProvidersClient = class {
11789
12248
  numRetries: this.numRetries
11790
12249
  });
11791
12250
  }
12251
+ /**
12252
+ * Fetch one provider binding. Verified live 2026-08-29.
12253
+ *
12254
+ * @remarks The response can contain provider credential material. Do not log or persist it,
12255
+ * and do not enable SDK debug logging around this call in production.
12256
+ * @param providerId - Provider UUID.
12257
+ * @returns Provider configuration and lifecycle detail.
12258
+ * @example
12259
+ * ```ts
12260
+ * import { AIGatewayClient } from '@cdot65/prisma-airs-sdk';
12261
+ * const gw = new AIGatewayClient();
12262
+ * const provider = await gw.providers.get('f6692544-3265-49be-9711-bbdcebc079e4');
12263
+ * console.log(provider.name);
12264
+ * ```
12265
+ */
12266
+ async get(providerId) {
12267
+ assertUuid(providerId, "providerId");
12268
+ return request({
12269
+ method: "GET",
12270
+ baseUrl: this.baseUrl,
12271
+ path: `${AI_GW_PROVIDERS_PATH}/${providerId}`,
12272
+ responseSchema: GatewayProviderDetailSchema,
12273
+ auth: this.auth,
12274
+ numRetries: this.numRetries
12275
+ });
12276
+ }
11792
12277
  /**
11793
12278
  * Create a provider.
11794
12279
  *
@@ -11829,6 +12314,33 @@ var AIGatewayProvidersClient = class {
11829
12314
  numRetries: this.numRetries
11830
12315
  });
11831
12316
  }
12317
+ /**
12318
+ * Update a provider binding. Verified live 2026-08-29.
12319
+ * @param providerId - Provider UUID.
12320
+ * @param body - Fields to update.
12321
+ * @returns The gateway write response.
12322
+ * @example
12323
+ * ```ts
12324
+ * import { AIGatewayClient } from '@cdot65/prisma-airs-sdk';
12325
+ * const gw = new AIGatewayClient();
12326
+ * await gw.providers.update('f6692544-3265-49be-9711-bbdcebc079e4', {
12327
+ * name: 'Vertex production',
12328
+ * note: 'Updated by automation',
12329
+ * });
12330
+ * ```
12331
+ */
12332
+ async update(providerId, body) {
12333
+ assertUuid(providerId, "providerId");
12334
+ return request({
12335
+ method: "PUT",
12336
+ baseUrl: this.baseUrl,
12337
+ path: `${AI_GW_PROVIDERS_PATH}/${providerId}`,
12338
+ body,
12339
+ responseSchema: GatewayWriteResponseSchema,
12340
+ auth: this.auth,
12341
+ numRetries: this.numRetries
12342
+ });
12343
+ }
11832
12344
  /**
11833
12345
  * Delete a provider.
11834
12346
  *
@@ -11928,6 +12440,63 @@ var AIGatewayApiKeysClient = class {
11928
12440
  async listUser(opts) {
11929
12441
  return this.listAt(AI_GW_API_KEYS_USER_PATH, opts);
11930
12442
  }
12443
+ getAt(path, keyId) {
12444
+ assertUuid(keyId, "keyId");
12445
+ return request({
12446
+ method: "GET",
12447
+ baseUrl: this.baseUrl,
12448
+ path: `${path}/${keyId}`,
12449
+ responseSchema: GatewayApiKeySchema,
12450
+ auth: this.auth,
12451
+ numRetries: this.numRetries
12452
+ });
12453
+ }
12454
+ async deleteAt(path, keyId) {
12455
+ assertUuid(keyId, "keyId");
12456
+ await request({
12457
+ method: "DELETE",
12458
+ baseUrl: this.baseUrl,
12459
+ path: `${path}/${keyId}`,
12460
+ auth: this.auth,
12461
+ numRetries: this.numRetries
12462
+ });
12463
+ }
12464
+ rotateAt(path, keyId, body = {}) {
12465
+ assertUuid(keyId, "keyId");
12466
+ return request({
12467
+ method: "POST",
12468
+ baseUrl: this.baseUrl,
12469
+ path: `${path}/${keyId}/rotate`,
12470
+ body,
12471
+ responseSchema: GatewayApiKeyRotateResponseSchema,
12472
+ auth: this.auth,
12473
+ numRetries: this.numRetries
12474
+ });
12475
+ }
12476
+ /** Get a service key. @example `await gw.apiKeys.getService(keyId);` */
12477
+ async getService(keyId) {
12478
+ return this.getAt(AI_GW_API_KEYS_SERVICE_PATH, keyId);
12479
+ }
12480
+ /** Get a user key. @example `await gw.apiKeys.getUser(keyId);` */
12481
+ async getUser(keyId) {
12482
+ return this.getAt(AI_GW_API_KEYS_USER_PATH, keyId);
12483
+ }
12484
+ /** Permanently delete a service key. @example `await gw.apiKeys.deleteService(keyId);` */
12485
+ async deleteService(keyId) {
12486
+ return this.deleteAt(AI_GW_API_KEYS_SERVICE_PATH, keyId);
12487
+ }
12488
+ /** Permanently delete a user key. @example `await gw.apiKeys.deleteUser(keyId);` */
12489
+ async deleteUser(keyId) {
12490
+ return this.deleteAt(AI_GW_API_KEYS_USER_PATH, keyId);
12491
+ }
12492
+ /** Rotate a service key; capture the returned secret. @example `const rotated = await gw.apiKeys.rotateService(keyId);` */
12493
+ async rotateService(keyId, body = {}) {
12494
+ return this.rotateAt(AI_GW_API_KEYS_SERVICE_PATH, keyId, body);
12495
+ }
12496
+ /** Rotate a user key; capture the returned secret. @example `const rotated = await gw.apiKeys.rotateUser(keyId);` */
12497
+ async rotateUser(keyId, body = {}) {
12498
+ return this.rotateAt(AI_GW_API_KEYS_USER_PATH, keyId, body);
12499
+ }
11931
12500
  /**
11932
12501
  * Create a service API key.
11933
12502
  * @param body - Name, scopes, TSG, workspace UUID, and type.
@@ -12307,6 +12876,75 @@ var AIGatewayMcpIntegrationsClient = class {
12307
12876
  numRetries: this.numRetries
12308
12877
  });
12309
12878
  }
12879
+ /**
12880
+ * Fetch one MCP integration. Verified live 2026-08-29.
12881
+ * @param mcpIntegrationId - MCP integration UUID.
12882
+ * @returns Integration detail; unlike list rows, `configurations` is an object.
12883
+ * @example
12884
+ * ```ts
12885
+ * import { AIGatewayClient } from '@cdot65/prisma-airs-sdk';
12886
+ * const gw = new AIGatewayClient();
12887
+ * const integration = await gw.mcpIntegrations.get('2a6f4e2e-6f5a-4a1f-9d0e-9b2b6f6c3a11');
12888
+ * console.log(integration.url);
12889
+ * ```
12890
+ */
12891
+ async get(mcpIntegrationId) {
12892
+ assertUuid(mcpIntegrationId, "mcpIntegrationId");
12893
+ return request({
12894
+ method: "GET",
12895
+ baseUrl: this.baseUrl,
12896
+ path: `${AI_GW_MCP_INTEGRATIONS_PATH}/${mcpIntegrationId}`,
12897
+ responseSchema: McpIntegrationDetailSchema,
12898
+ auth: this.auth,
12899
+ numRetries: this.numRetries
12900
+ });
12901
+ }
12902
+ /**
12903
+ * List capabilities discovered from an MCP integration. Verified live 2026-08-29.
12904
+ * @param mcpIntegrationId - MCP integration UUID.
12905
+ * @returns Tools, prompts, resources, and resource templates with enablement counts.
12906
+ * @example
12907
+ * ```ts
12908
+ * import { AIGatewayClient } from '@cdot65/prisma-airs-sdk';
12909
+ * const gw = new AIGatewayClient();
12910
+ * const capabilities = await gw.mcpIntegrations.getCapabilities('2a6f4e2e-6f5a-4a1f-9d0e-9b2b6f6c3a11');
12911
+ * console.log(capabilities.data.map((capability) => capability.name));
12912
+ * ```
12913
+ */
12914
+ async getCapabilities(mcpIntegrationId) {
12915
+ assertUuid(mcpIntegrationId, "mcpIntegrationId");
12916
+ return request({
12917
+ method: "GET",
12918
+ baseUrl: this.baseUrl,
12919
+ path: `${AI_GW_MCP_INTEGRATIONS_PATH}/${mcpIntegrationId}/capabilities`,
12920
+ responseSchema: McpIntegrationCapabilitiesResponseSchema,
12921
+ auth: this.auth,
12922
+ numRetries: this.numRetries
12923
+ });
12924
+ }
12925
+ /**
12926
+ * Fetch metadata discovered from an MCP server. Verified live 2026-08-29.
12927
+ * @param mcpIntegrationId - MCP integration UUID.
12928
+ * @returns Server identity, protocol, capability flags, and sync state.
12929
+ * @example
12930
+ * ```ts
12931
+ * import { AIGatewayClient } from '@cdot65/prisma-airs-sdk';
12932
+ * const gw = new AIGatewayClient();
12933
+ * const metadata = await gw.mcpIntegrations.getMetadata('2a6f4e2e-6f5a-4a1f-9d0e-9b2b6f6c3a11');
12934
+ * console.log(metadata.sync_status);
12935
+ * ```
12936
+ */
12937
+ async getMetadata(mcpIntegrationId) {
12938
+ assertUuid(mcpIntegrationId, "mcpIntegrationId");
12939
+ return request({
12940
+ method: "GET",
12941
+ baseUrl: this.baseUrl,
12942
+ path: `${AI_GW_MCP_INTEGRATIONS_PATH}/${mcpIntegrationId}/metadata`,
12943
+ responseSchema: McpIntegrationMetadataSchema,
12944
+ auth: this.auth,
12945
+ numRetries: this.numRetries
12946
+ });
12947
+ }
12310
12948
  /**
12311
12949
  * Register an MCP server.
12312
12950
  * @param body - Name, server URL, auth type, transport, and provider-specific configuration.
@@ -12337,18 +12975,57 @@ var AIGatewayMcpIntegrationsClient = class {
12337
12975
  numRetries: this.numRetries
12338
12976
  });
12339
12977
  }
12978
+ /** Update an MCP integration. @example `await gw.mcpIntegrations.update(id, { name: 'Docs MCP' });` */
12979
+ async update(mcpIntegrationId, body) {
12980
+ assertUuid(mcpIntegrationId, "mcpIntegrationId");
12981
+ return request({
12982
+ method: "PUT",
12983
+ baseUrl: this.baseUrl,
12984
+ path: `${AI_GW_MCP_INTEGRATIONS_PATH}/${mcpIntegrationId}`,
12985
+ body,
12986
+ responseSchema: GatewayWriteResponseSchema,
12987
+ auth: this.auth,
12988
+ numRetries: this.numRetries
12989
+ });
12990
+ }
12991
+ /** Permanently delete an MCP integration. @example `await gw.mcpIntegrations.delete(id);` */
12992
+ async delete(mcpIntegrationId) {
12993
+ assertUuid(mcpIntegrationId, "mcpIntegrationId");
12994
+ await request({
12995
+ method: "DELETE",
12996
+ baseUrl: this.baseUrl,
12997
+ path: `${AI_GW_MCP_INTEGRATIONS_PATH}/${mcpIntegrationId}`,
12998
+ auth: this.auth,
12999
+ numRetries: this.numRetries
13000
+ });
13001
+ }
13002
+ /** Replace capability enablement values. @example `await gw.mcpIntegrations.setCapabilities(id, { capabilities: [{ name: 'lookup', type: 'tool', enabled: true }] });` */
13003
+ async setCapabilities(mcpIntegrationId, body) {
13004
+ assertUuid(mcpIntegrationId, "mcpIntegrationId");
13005
+ return request({
13006
+ method: "PUT",
13007
+ baseUrl: this.baseUrl,
13008
+ path: `${AI_GW_MCP_INTEGRATIONS_PATH}/${mcpIntegrationId}/capabilities`,
13009
+ body,
13010
+ responseSchema: McpIntegrationCapabilitiesUpdateResponseSchema,
13011
+ auth: this.auth,
13012
+ numRetries: this.numRetries
13013
+ });
13014
+ }
12340
13015
  /**
12341
13016
  * Replace which workspaces may use this MCP integration.
12342
13017
  * @param mcpIntegrationId - MCP integration UUID.
12343
13018
  * @param body - Workspace bindings or a global-access flag; this is a replace, not a merge.
12344
- * @returns The raw response. Shape unverified against a live tenant — see the PRD.
13019
+ * @returns An empty object. Verified live 2026-08-30.
12345
13020
  * @example
12346
13021
  * ```ts
12347
13022
  * import { AIGatewayClient } from '@cdot65/prisma-airs-sdk';
12348
13023
  * const gw = new AIGatewayClient();
12349
13024
  *
12350
13025
  * await gw.mcpIntegrations.setWorkspaces('f6692544-3265-49be-9711-bbdcebc079e4', {
12351
- * global_workspace_access: true,
13026
+ * workspaces: [{ id: 'ws-development', enabled: true }],
13027
+ * global_workspace_access: { enabled: false },
13028
+ * override_existing_workspace_access: true,
12352
13029
  * });
12353
13030
  * ```
12354
13031
  */
@@ -12359,7 +13036,7 @@ var AIGatewayMcpIntegrationsClient = class {
12359
13036
  baseUrl: this.baseUrl,
12360
13037
  path: `${AI_GW_MCP_INTEGRATIONS_PATH}/${mcpIntegrationId}/workspaces`,
12361
13038
  body,
12362
- responseSchema: GatewayWriteResponseSchema,
13039
+ responseSchema: McpIntegrationWorkspacesUpdateResponseSchema,
12363
13040
  auth: this.auth,
12364
13041
  numRetries: this.numRetries
12365
13042
  });
@@ -12468,6 +13145,58 @@ var AIGatewayDeploymentsClient = class {
12468
13145
  numRetries: this.numRetries
12469
13146
  });
12470
13147
  }
13148
+ /**
13149
+ * Update deployment settings, including its externally deployed gateway URL and workspace scope.
13150
+ * @param deploymentId - Deployment UUID.
13151
+ * @param body - Fields to update.
13152
+ * @returns The gateway write response.
13153
+ * @example
13154
+ * ```ts
13155
+ * import { AIGatewayClient } from '@cdot65/prisma-airs-sdk';
13156
+ * const gw = new AIGatewayClient();
13157
+ * await gw.deployments.update('21414819-485e-4ba3-b3d3-3e1815580e43', {
13158
+ * auth_settings: {
13159
+ * gateway_base_url: 'https://gateway.example.com',
13160
+ * workspaces_allowed: ['ws-develo-71f8d8'],
13161
+ * },
13162
+ * });
13163
+ * ```
13164
+ */
13165
+ async update(deploymentId, body) {
13166
+ assertUuid(deploymentId, "deploymentId");
13167
+ return request({
13168
+ method: "PUT",
13169
+ baseUrl: this.baseUrl,
13170
+ path: `${AI_GW_DEPLOYMENTS_PATH}/${deploymentId}`,
13171
+ body,
13172
+ responseSchema: GatewayWriteResponseSchema,
13173
+ auth: this.auth,
13174
+ numRetries: this.numRetries
13175
+ });
13176
+ }
13177
+ /**
13178
+ * Run SCM's outbound and inbound connectivity checks against a configured gateway.
13179
+ * @param deploymentId - Deployment UUID.
13180
+ * @returns Health of both connectivity directions.
13181
+ * @example
13182
+ * ```ts
13183
+ * import { AIGatewayClient } from '@cdot65/prisma-airs-sdk';
13184
+ * const gw = new AIGatewayClient();
13185
+ * const health = await gw.deployments.ping('21414819-485e-4ba3-b3d3-3e1815580e43');
13186
+ * console.log(health.status, health.outbound.status, health.inbound.status);
13187
+ * ```
13188
+ */
13189
+ async ping(deploymentId) {
13190
+ assertUuid(deploymentId, "deploymentId");
13191
+ return request({
13192
+ method: "GET",
13193
+ baseUrl: this.baseUrl,
13194
+ path: `${AI_GW_DEPLOYMENTS_PATH}/${deploymentId}/ping`,
13195
+ responseSchema: GatewayDeploymentPingResponseSchema,
13196
+ auth: this.auth,
13197
+ numRetries: this.numRetries
13198
+ });
13199
+ }
12471
13200
  /**
12472
13201
  * Archive a deployment.
12473
13202
  *
@@ -13065,6 +13794,7 @@ var AIGatewayClient = class {
13065
13794
  FileScanDataSchema,
13066
13795
  FileScanResult,
13067
13796
  FileType,
13797
+ GatewayApiKeyRotateResponseSchema,
13068
13798
  GatewayApiKeySchema,
13069
13799
  GatewayAuditLogRecordSchema,
13070
13800
  GatewayAuditLogsResponseSchema,
@@ -13072,8 +13802,10 @@ var AIGatewayClient = class {
13072
13802
  GatewayConfigCreateResponseSchema,
13073
13803
  GatewayConfigDetailSchema,
13074
13804
  GatewayConfigSchema,
13805
+ GatewayConfigVersionSchema,
13075
13806
  GatewayDeploymentCreateResponseSchema,
13076
13807
  GatewayDeploymentDetailSchema,
13808
+ GatewayDeploymentPingResponseSchema,
13077
13809
  GatewayDeploymentSchema,
13078
13810
  GatewayGlobalWorkspaceAccessSchema,
13079
13811
  GatewayGroupRowSchema,
@@ -13088,6 +13820,7 @@ var AIGatewayClient = class {
13088
13820
  GatewayLogsResponseSchema,
13089
13821
  GatewayPluginSchema,
13090
13822
  GatewayProviderCreateResponseSchema,
13823
+ GatewayProviderDetailSchema,
13091
13824
  GatewayProviderSchema,
13092
13825
  GatewayRateLimitSchema,
13093
13826
  GatewayUsageLimitSchema,
@@ -13128,6 +13861,7 @@ var AIGatewayClient = class {
13128
13861
  LanguageOptionSchema,
13129
13862
  LatencyChartResponseSchema,
13130
13863
  ListApiKeysResponseSchema,
13864
+ ListConfigVersionsResponseSchema,
13131
13865
  ListConfigsResponseSchema,
13132
13866
  ListDeploymentsResponseSchema,
13133
13867
  ListGuardrailsResponseSchema,
@@ -13196,7 +13930,13 @@ var AIGatewayClient = class {
13196
13930
  MaskedDataSchema,
13197
13931
  McEntrySchema,
13198
13932
  McReportSchema,
13933
+ McpIntegrationCapabilitiesResponseSchema,
13934
+ McpIntegrationCapabilitiesUpdateResponseSchema,
13935
+ McpIntegrationCapabilitySchema,
13936
+ McpIntegrationDetailSchema,
13937
+ McpIntegrationMetadataSchema,
13199
13938
  McpIntegrationSchema,
13939
+ McpIntegrationWorkspacesUpdateResponseSchema,
13200
13940
  MetadataCriterionSchema,
13201
13941
  MetadataSchema,
13202
13942
  ModelConfigurationSchema,
@@ -13439,9 +14179,14 @@ var AIGatewayClient = class {
13439
14179
  WebSocketConnectionParamsSchema,
13440
14180
  WeightedRegexSchema,
13441
14181
  aiGwOrganisationsAuthSettingsPath,
14182
+ collectAll,
14183
+ collectSkipPages,
14184
+ collectSpringPages,
13442
14185
  globalConfiguration,
13443
14186
  init,
13444
14187
  jsonNullable,
13445
- pageSchema
14188
+ pageSchema,
14189
+ paginate,
14190
+ serializeListing
13446
14191
  });
13447
14192
  //# sourceMappingURL=index.cjs.map