@terrantula/sdk 0.5.2 → 0.6.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.js CHANGED
@@ -158,7 +158,7 @@ function createOrgsClient(cloud, baseUrl, hcOpts) {
158
158
  id: import_zod.z.string().describe("Organization ID")
159
159
  }),
160
160
  async (params) => callPersonalTokens(
161
- await personalTokensRequest(baseUrl, hcOpts, `/orgs/${params.id}/personal-tokens`)
161
+ await personalTokensRequest(baseUrl, hcOpts, `/api/orgs/${params.id}/personal-tokens`)
162
162
  )
163
163
  ),
164
164
  createPersonalToken: withSchema(
@@ -170,7 +170,7 @@ function createOrgsClient(cloud, baseUrl, hcOpts) {
170
170
  async (params) => {
171
171
  const { id, ...body } = params;
172
172
  return callPersonalTokens(
173
- await personalTokensRequest(baseUrl, hcOpts, `/orgs/${id}/personal-tokens`, {
173
+ await personalTokensRequest(baseUrl, hcOpts, `/api/orgs/${id}/personal-tokens`, {
174
174
  method: "POST",
175
175
  headers: { "Content-Type": "application/json" },
176
176
  body: JSON.stringify(body)
@@ -187,7 +187,7 @@ function createOrgsClient(cloud, baseUrl, hcOpts) {
187
187
  await personalTokensRequest(
188
188
  baseUrl,
189
189
  hcOpts,
190
- `/orgs/${params.id}/personal-tokens/${params.tokenId}`,
190
+ `/api/orgs/${params.id}/personal-tokens/${params.tokenId}`,
191
191
  { method: "DELETE" }
192
192
  )
193
193
  )
@@ -197,7 +197,7 @@ function createOrgsClient(cloud, baseUrl, hcOpts) {
197
197
  id: import_zod.z.string().describe("Organization ID")
198
198
  }),
199
199
  async (params) => callPersonalTokens(
200
- await personalTokensRequest(baseUrl, hcOpts, `/orgs/${params.id}/sso-extras`)
200
+ await personalTokensRequest(baseUrl, hcOpts, `/api/orgs/${params.id}/sso-extras`)
201
201
  )
202
202
  ),
203
203
  setSsoForce: withSchema(
@@ -210,7 +210,7 @@ function createOrgsClient(cloud, baseUrl, hcOpts) {
210
210
  await personalTokensRequest(
211
211
  baseUrl,
212
212
  hcOpts,
213
- `/orgs/${params.id}/sso-extras/${params.providerId}`,
213
+ `/api/orgs/${params.id}/sso-extras/${params.providerId}`,
214
214
  {
215
215
  method: "PATCH",
216
216
  headers: { "Content-Type": "application/json" },
@@ -336,7 +336,7 @@ function createProjectsClient(cloud, baseUrl, hcOpts) {
336
336
  }),
337
337
  (params) => call(
338
338
  (0, import_client.hc)(
339
- `${baseUrl}/orgs/${params.orgId}/projects/${params.projectId}/tokens`,
339
+ `${baseUrl}/api/orgs/${params.orgId}/projects/${params.projectId}/tokens`,
340
340
  hcOpts
341
341
  ).index.$get()
342
342
  )
@@ -357,7 +357,7 @@ function createProjectsClient(cloud, baseUrl, hcOpts) {
357
357
  const { orgId, projectId, ...body } = params;
358
358
  return call(
359
359
  (0, import_client.hc)(
360
- `${baseUrl}/orgs/${orgId}/projects/${projectId}/tokens`,
360
+ `${baseUrl}/api/orgs/${orgId}/projects/${projectId}/tokens`,
361
361
  hcOpts
362
362
  ).index.$post({ json: body })
363
363
  );
@@ -371,10 +371,42 @@ function createProjectsClient(cloud, baseUrl, hcOpts) {
371
371
  }),
372
372
  (params) => call(
373
373
  (0, import_client.hc)(
374
- `${baseUrl}/orgs/${params.orgId}/projects/${params.projectId}/tokens`,
374
+ `${baseUrl}/api/orgs/${params.orgId}/projects/${params.projectId}/tokens`,
375
375
  hcOpts
376
376
  )[":tokenId"].$delete({ param: { tokenId: params.tokenId } })
377
377
  )
378
+ ),
379
+ /**
380
+ * DELETE /projects/:projectId/nuke
381
+ * Wipe all project-scoped runtime + catalog rows. Callable with a project
382
+ * API token (terr_*) at admin or owner role. Preserves the project row,
383
+ * members, GitHub repo links, API tokens, and environments. Idempotent.
384
+ */
385
+ nuke: withSchema(
386
+ import_zod2.z.object({
387
+ orgId: import_zod2.z.string().describe("Organization slug"),
388
+ projectId: import_zod2.z.string().describe("Project ID to nuke")
389
+ }),
390
+ async (params) => {
391
+ const url = `${baseUrl}/api/${encodeURIComponent(params.orgId)}/${encodeURIComponent(params.projectId)}/nuke`;
392
+ const fetchImpl = hcOpts?.fetch ?? fetch;
393
+ const rawHeaders = hcOpts?.headers;
394
+ const resolvedHeaders = typeof rawHeaders === "function" ? await rawHeaders() : rawHeaders ?? {};
395
+ const res = await fetchImpl(url, {
396
+ method: "DELETE",
397
+ headers: resolvedHeaders
398
+ });
399
+ if (!res.ok) {
400
+ let message = fallbackMessage(res.status);
401
+ try {
402
+ const body = await res.json();
403
+ if (body.error) message = body.error;
404
+ } catch {
405
+ }
406
+ throw new TerrantulaError(res.status, { error: message });
407
+ }
408
+ return res.json();
409
+ }
378
410
  )
379
411
  };
380
412
  }
@@ -386,40 +418,49 @@ function createEntityTypesClient(proj) {
386
418
  return {
387
419
  list: withSchema(
388
420
  import_zod3.z.object({
421
+ orgId: import_zod3.z.string().describe("Organization slug"),
389
422
  projectId: import_zod3.z.string().describe("Project ID")
390
423
  }),
391
- (params) => call(proj(params.projectId)["entity-types"].$get())
424
+ (params) => call(proj(params.orgId, params.projectId)["entity-types"].$get())
392
425
  ),
393
426
  get: withSchema(
394
427
  import_zod3.z.object({
428
+ orgId: import_zod3.z.string().describe("Organization slug"),
395
429
  projectId: import_zod3.z.string().describe("Project ID"),
396
430
  name: import_zod3.z.string().describe("Entity type name")
397
431
  }),
398
- (params) => call(proj(params.projectId)["entity-types"][":name"].$get({ param: { name: params.name } }))
432
+ (params) => call(proj(params.orgId, params.projectId)["entity-types"][":name"].$get({ param: { name: params.name } }))
399
433
  ),
400
434
  create: withSchema(
401
- import_types.EntityTypeSchema.extend({ projectId: import_zod3.z.string().describe("Project ID") }),
435
+ import_types.EntityTypeSchema.extend({
436
+ orgId: import_zod3.z.string().describe("Organization slug"),
437
+ projectId: import_zod3.z.string().describe("Project ID")
438
+ }),
402
439
  (params) => {
403
- const { projectId, ...body } = params;
404
- return call(proj(projectId)["entity-types"].$post({ json: body }));
440
+ const { orgId, projectId, ...body } = params;
441
+ return call(proj(orgId, projectId)["entity-types"].$post({ json: body }));
405
442
  }
406
443
  ),
407
444
  update: withSchema(
408
- import_types.EntityTypeSchema.extend({ projectId: import_zod3.z.string().describe("Project ID") }),
445
+ import_types.EntityTypeSchema.extend({
446
+ orgId: import_zod3.z.string().describe("Organization slug"),
447
+ projectId: import_zod3.z.string().describe("Project ID")
448
+ }),
409
449
  (params) => {
410
- const { projectId, ...body } = params;
450
+ const { orgId, projectId, ...body } = params;
411
451
  return call(
412
- proj(projectId)["entity-types"][":name"].$put({ param: { name: params.name }, json: body })
452
+ proj(orgId, projectId)["entity-types"][":name"].$put({ param: { name: params.name }, json: body })
413
453
  );
414
454
  }
415
455
  ),
416
456
  delete: withSchema(
417
457
  import_zod3.z.object({
458
+ orgId: import_zod3.z.string().describe("Organization slug"),
418
459
  projectId: import_zod3.z.string().describe("Project ID"),
419
460
  name: import_zod3.z.string().describe("Entity type name")
420
461
  }),
421
462
  (params) => call(
422
- proj(params.projectId)["entity-types"][":name"].$delete({ param: { name: params.name } })
463
+ proj(params.orgId, params.projectId)["entity-types"][":name"].$delete({ param: { name: params.name } })
423
464
  )
424
465
  )
425
466
  };
@@ -428,6 +469,7 @@ function createEntitiesClient(projEnv) {
428
469
  return {
429
470
  list: withSchema(
430
471
  import_zod3.z.object({
472
+ orgId: import_zod3.z.string().describe("Organization slug"),
431
473
  projectId: import_zod3.z.string().describe("Project ID"),
432
474
  envName: import_zod3.z.string().describe("Environment name"),
433
475
  entityType: import_zod3.z.string().optional().describe("Filter by entity type"),
@@ -437,42 +479,46 @@ function createEntitiesClient(projEnv) {
437
479
  cursor: import_zod3.z.string().optional().describe("Pagination cursor")
438
480
  }),
439
481
  (params) => {
440
- const { projectId, envName, ...query } = params;
482
+ const { orgId, projectId, envName, ...query } = params;
441
483
  return call(
442
- projEnv(projectId, envName)["entities"].$get({ query: stringifyQuery(query) })
484
+ projEnv(orgId, projectId, envName)["entities"].$get({ query: stringifyQuery(query) })
443
485
  );
444
486
  }
445
487
  ),
446
488
  get: withSchema(
447
489
  import_zod3.z.object({
490
+ orgId: import_zod3.z.string().describe("Organization slug"),
448
491
  projectId: import_zod3.z.string().describe("Project ID"),
449
492
  envName: import_zod3.z.string().describe("Environment name"),
450
493
  id: import_zod3.z.string().uuid().describe("Entity ID")
451
494
  }),
452
- (params) => call(projEnv(params.projectId, params.envName)["entities"][":id"].$get({ param: { id: params.id } }))
495
+ (params) => call(projEnv(params.orgId, params.projectId, params.envName)["entities"][":id"].$get({ param: { id: params.id } }))
453
496
  ),
454
497
  create: withSchema(
455
498
  import_types.EntitySchema.extend({
499
+ orgId: import_zod3.z.string().describe("Organization slug"),
456
500
  projectId: import_zod3.z.string().describe("Project ID"),
457
501
  envName: import_zod3.z.string().describe("Environment name")
458
502
  }),
459
503
  (params) => {
460
- const { projectId, envName, ...body } = params;
461
- return call(projEnv(projectId, envName)["entities"].$post({ json: body }));
504
+ const { orgId, projectId, envName, ...body } = params;
505
+ return call(projEnv(orgId, projectId, envName)["entities"].$post({ json: body }));
462
506
  }
463
507
  ),
464
508
  delete: withSchema(
465
509
  import_zod3.z.object({
510
+ orgId: import_zod3.z.string().describe("Organization slug"),
466
511
  projectId: import_zod3.z.string().describe("Project ID"),
467
512
  envName: import_zod3.z.string().describe("Environment name"),
468
513
  id: import_zod3.z.string().uuid().describe("Entity ID")
469
514
  }),
470
515
  (params) => call(
471
- projEnv(params.projectId, params.envName)["entities"][":id"].$delete({ param: { id: params.id } })
516
+ projEnv(params.orgId, params.projectId, params.envName)["entities"][":id"].$delete({ param: { id: params.id } })
472
517
  )
473
518
  ),
474
519
  setMetric: withSchema(
475
520
  import_zod3.z.object({
521
+ orgId: import_zod3.z.string().describe("Organization slug"),
476
522
  projectId: import_zod3.z.string().describe("Project ID"),
477
523
  envName: import_zod3.z.string().describe("Environment name"),
478
524
  id: import_zod3.z.string().uuid().describe("Entity ID"),
@@ -480,9 +526,9 @@ function createEntitiesClient(projEnv) {
480
526
  value: import_zod3.z.number().describe("Metric value")
481
527
  }),
482
528
  (params) => {
483
- const { projectId, envName, id, metricName, value } = params;
529
+ const { orgId, projectId, envName, id, metricName, value } = params;
484
530
  return call(
485
- projEnv(projectId, envName)["entities"][":id"]["metrics"][":metricName"].$put({
531
+ projEnv(orgId, projectId, envName)["entities"][":id"]["metrics"][":metricName"].$put({
486
532
  param: { id, metricName },
487
533
  json: { value }
488
534
  })
@@ -491,6 +537,7 @@ function createEntitiesClient(projEnv) {
491
537
  ),
492
538
  trigger: withSchema(
493
539
  import_zod3.z.object({
540
+ orgId: import_zod3.z.string().describe("Organization slug"),
494
541
  projectId: import_zod3.z.string().describe("Project ID"),
495
542
  envName: import_zod3.z.string().describe("Environment name"),
496
543
  id: import_zod3.z.string().uuid().describe("Entity ID"),
@@ -499,9 +546,9 @@ function createEntitiesClient(projEnv) {
499
546
  recommendations: import_zod3.z.record(import_zod3.z.string()).optional().describe("Recommendation selections as JSON")
500
547
  }).describe("Trigger an instance-scope action on a single entity"),
501
548
  (params) => {
502
- const { projectId, envName, id, actionName, parameters, recommendations } = params;
549
+ const { orgId, projectId, envName, id, actionName, parameters, recommendations } = params;
503
550
  return call(
504
- projEnv(projectId, envName)["entities"][":id"]["actions"][":actionName"].$post({
551
+ projEnv(orgId, projectId, envName)["entities"][":id"]["actions"][":actionName"].$post({
505
552
  param: { id, actionName },
506
553
  json: { parameters, recommendations }
507
554
  })
@@ -510,22 +557,24 @@ function createEntitiesClient(projEnv) {
510
557
  ),
511
558
  getMetrics: withSchema(
512
559
  import_zod3.z.object({
560
+ orgId: import_zod3.z.string().describe("Organization slug"),
513
561
  projectId: import_zod3.z.string().describe("Project ID"),
514
562
  envName: import_zod3.z.string().describe("Environment name"),
515
563
  entityId: import_zod3.z.string().describe("Entity ID")
516
564
  }),
517
- (params) => call(projEnv(params.projectId, params.envName).entities[":id"].metrics.$get({ param: { id: params.entityId } }))
565
+ (params) => call(projEnv(params.orgId, params.projectId, params.envName).entities[":id"].metrics.$get({ param: { id: params.entityId } }))
518
566
  ),
519
567
  getMetricsBatch: withSchema(
520
568
  import_zod3.z.object({
569
+ orgId: import_zod3.z.string().describe("Organization slug"),
521
570
  projectId: import_zod3.z.string().describe("Project ID"),
522
571
  envName: import_zod3.z.string().describe("Environment name"),
523
572
  entityIds: import_zod3.z.array(import_zod3.z.string().uuid()).min(1).max(500).describe("Entity IDs to fetch metrics for (max 500)")
524
573
  }),
525
574
  (params) => {
526
- const { projectId, envName, entityIds } = params;
575
+ const { orgId, projectId, envName, entityIds } = params;
527
576
  return call(
528
- projEnv(projectId, envName).entities.metrics.$get({
577
+ projEnv(orgId, projectId, envName).entities.metrics.$get({
529
578
  query: { ids: entityIds.join(",") }
530
579
  })
531
580
  );
@@ -533,14 +582,16 @@ function createEntitiesClient(projEnv) {
533
582
  ),
534
583
  getRelationships: withSchema(
535
584
  import_zod3.z.object({
585
+ orgId: import_zod3.z.string().describe("Organization slug"),
536
586
  projectId: import_zod3.z.string().describe("Project ID"),
537
587
  envName: import_zod3.z.string().describe("Environment name"),
538
588
  entityId: import_zod3.z.string().describe("Entity ID")
539
589
  }),
540
- (params) => call(projEnv(params.projectId, params.envName).entities[":id"].relationships.$get({ param: { id: params.entityId } }))
590
+ (params) => call(projEnv(params.orgId, params.projectId, params.envName).entities[":id"].relationships.$get({ param: { id: params.entityId } }))
541
591
  ),
542
592
  syncStamp: withSchema(
543
593
  import_zod3.z.object({
594
+ orgId: import_zod3.z.string().describe("Organization slug"),
544
595
  projectId: import_zod3.z.string().describe("Project ID"),
545
596
  envName: import_zod3.z.string().describe("Environment name"),
546
597
  id: import_zod3.z.string().uuid().describe("Entity ID"),
@@ -548,9 +599,9 @@ function createEntitiesClient(projEnv) {
548
599
  observedAt: import_zod3.z.string().datetime().optional().describe("ISO-8601 observation timestamp; defaults to server time")
549
600
  }),
550
601
  (params) => {
551
- const { projectId, envName, id, source, observedAt } = params;
602
+ const { orgId, projectId, envName, id, source, observedAt } = params;
552
603
  return call(
553
- projEnv(projectId, envName)["entities"][":id"]["sync-stamp"].$post({
604
+ projEnv(orgId, projectId, envName)["entities"][":id"]["sync-stamp"].$post({
554
605
  param: { id },
555
606
  json: { source, observedAt }
556
607
  })
@@ -567,76 +618,103 @@ function createCellsClient(proj) {
567
618
  return {
568
619
  list: withSchema(
569
620
  import_zod4.z.object({
621
+ orgId: import_zod4.z.string().describe("Organization slug"),
570
622
  projectId: import_zod4.z.string().describe("Project ID")
571
623
  }),
572
- (params) => call(proj(params.projectId)["cells"].$get())
624
+ (params) => call(proj(params.orgId, params.projectId)["cells"].$get())
573
625
  ),
574
626
  get: withSchema(
575
627
  import_zod4.z.object({
628
+ orgId: import_zod4.z.string().describe("Organization slug"),
576
629
  projectId: import_zod4.z.string().describe("Project ID"),
577
630
  name: import_zod4.z.string().describe("Cell name")
578
631
  }),
579
- (params) => call(proj(params.projectId)["cells"][":name"].$get({ param: { name: params.name } }))
632
+ (params) => call(proj(params.orgId, params.projectId)["cells"][":name"].$get({ param: { name: params.name } }))
580
633
  ),
581
634
  create: withSchema(
582
- import_types2.CellSchema.extend({ projectId: import_zod4.z.string().describe("Project ID") }),
635
+ import_types2.CellSchema.extend({
636
+ orgId: import_zod4.z.string().describe("Organization slug"),
637
+ projectId: import_zod4.z.string().describe("Project ID")
638
+ }),
583
639
  (params) => {
584
- const { projectId, ...body } = params;
585
- return call(proj(projectId)["cells"].$post({ json: body }));
640
+ const { orgId, projectId, ...body } = params;
641
+ return call(proj(orgId, projectId)["cells"].$post({ json: body }));
586
642
  }
587
643
  ),
588
644
  update: withSchema(
589
- import_types2.CellSchema.extend({ projectId: import_zod4.z.string().describe("Project ID") }),
645
+ import_types2.CellSchema.extend({
646
+ orgId: import_zod4.z.string().describe("Organization slug"),
647
+ projectId: import_zod4.z.string().describe("Project ID")
648
+ }),
590
649
  (params) => {
591
- const { projectId, ...body } = params;
650
+ const { orgId, projectId, ...body } = params;
592
651
  return call(
593
- proj(projectId)["cells"][":name"].$put({ param: { name: params.name }, json: body })
652
+ proj(orgId, projectId)["cells"][":name"].$put({ param: { name: params.name }, json: body })
594
653
  );
595
654
  }
596
655
  ),
597
656
  delete: withSchema(
598
657
  import_zod4.z.object({
658
+ orgId: import_zod4.z.string().describe("Organization slug"),
599
659
  projectId: import_zod4.z.string().describe("Project ID"),
600
660
  name: import_zod4.z.string().describe("Cell name")
601
661
  }),
602
- (params) => call(proj(params.projectId)["cells"][":name"].$delete({ param: { name: params.name } }))
662
+ (params) => call(proj(params.orgId, params.projectId)["cells"][":name"].$delete({ param: { name: params.name } }))
603
663
  ),
604
664
  listMembers: withSchema(
605
665
  import_zod4.z.object({
666
+ orgId: import_zod4.z.string().describe("Organization slug"),
606
667
  projectId: import_zod4.z.string().describe("Project ID"),
607
- name: import_zod4.z.string().describe("Cell name")
668
+ name: import_zod4.z.string().describe("Cell name"),
669
+ envName: import_zod4.z.string().describe("Environment name").default("default")
608
670
  }),
609
- (params) => call(
610
- proj(params.projectId)["cells"][":name"]["members"].$get({ param: { name: params.name } })
611
- )
671
+ (params) => {
672
+ const envName = params.envName ?? "default";
673
+ return call(
674
+ proj(params.orgId, params.projectId)["cells"][":name"]["members"].$get({
675
+ param: { name: params.name },
676
+ query: { envName }
677
+ })
678
+ );
679
+ }
612
680
  ),
613
681
  addMember: withSchema(
614
682
  import_zod4.z.object({
683
+ orgId: import_zod4.z.string().describe("Organization slug"),
615
684
  projectId: import_zod4.z.string().describe("Project ID"),
616
685
  name: import_zod4.z.string().describe("Cell name"),
617
- entityId: import_zod4.z.string().uuid().describe("Entity ID")
686
+ entityName: import_zod4.z.string().describe("Entity name (M5-rework natural key)"),
687
+ entityTypeName: import_zod4.z.string().describe("Entity type name (M5-rework natural key)"),
688
+ envName: import_zod4.z.string().describe("Environment name").default("default")
618
689
  }),
619
690
  (params) => {
620
- const { projectId, name, entityId } = params;
691
+ const { orgId, projectId, name, entityName, entityTypeName } = params;
692
+ const envName = params.envName ?? "default";
621
693
  return call(
622
- proj(projectId)["cells"][":name"]["members"].$post({
694
+ proj(orgId, projectId)["cells"][":name"]["members"].$post({
623
695
  param: { name },
624
- json: { entityId }
696
+ json: { entityName, entityTypeName, envName }
625
697
  })
626
698
  );
627
699
  }
628
700
  ),
629
701
  removeMember: withSchema(
630
702
  import_zod4.z.object({
703
+ orgId: import_zod4.z.string().describe("Organization slug"),
631
704
  projectId: import_zod4.z.string().describe("Project ID"),
632
705
  name: import_zod4.z.string().describe("Cell name"),
633
- entityId: import_zod4.z.string().uuid().describe("Entity ID")
706
+ entityName: import_zod4.z.string().describe("Entity name (M5-rework natural key)"),
707
+ envName: import_zod4.z.string().describe("Environment name").default("default")
634
708
  }),
635
- (params) => call(
636
- proj(params.projectId)["cells"][":name"]["members"][":entityId"].$delete({
637
- param: { name: params.name, entityId: params.entityId }
638
- })
639
- )
709
+ (params) => {
710
+ const envName = params.envName ?? "default";
711
+ return call(
712
+ proj(params.orgId, params.projectId)["cells"][":name"]["members"][":entityName"].$delete({
713
+ param: { name: params.name, entityName: params.entityName },
714
+ query: { envName }
715
+ })
716
+ );
717
+ }
640
718
  )
641
719
  };
642
720
  }
@@ -648,34 +726,42 @@ function createRelationshipTypesClient(proj) {
648
726
  return {
649
727
  list: withSchema(
650
728
  import_zod5.z.object({
729
+ orgId: import_zod5.z.string().describe("Organization slug"),
651
730
  projectId: import_zod5.z.string().describe("Project ID")
652
731
  }),
653
- (params) => call(proj(params.projectId)["relationship-types"].$get())
732
+ (params) => call(proj(params.orgId, params.projectId)["relationship-types"].$get())
654
733
  ),
655
734
  get: withSchema(
656
735
  import_zod5.z.object({
736
+ orgId: import_zod5.z.string().describe("Organization slug"),
657
737
  projectId: import_zod5.z.string().describe("Project ID"),
658
738
  name: import_zod5.z.string().describe("Relationship type name")
659
739
  }),
660
740
  (params) => call(
661
- proj(params.projectId)["relationship-types"][":name"].$get({
741
+ proj(params.orgId, params.projectId)["relationship-types"][":name"].$get({
662
742
  param: { name: params.name }
663
743
  })
664
744
  )
665
745
  ),
666
746
  create: withSchema(
667
- import_types3.RelationshipTypeSchema.extend({ projectId: import_zod5.z.string().describe("Project ID") }),
747
+ import_types3.RelationshipTypeSchema.extend({
748
+ orgId: import_zod5.z.string().describe("Organization slug"),
749
+ projectId: import_zod5.z.string().describe("Project ID")
750
+ }),
668
751
  (params) => {
669
- const { projectId, ...body } = params;
670
- return call(proj(projectId)["relationship-types"].$post({ json: body }));
752
+ const { orgId, projectId, ...body } = params;
753
+ return call(proj(orgId, projectId)["relationship-types"].$post({ json: body }));
671
754
  }
672
755
  ),
673
756
  update: withSchema(
674
- import_types3.RelationshipTypeSchema.extend({ projectId: import_zod5.z.string().describe("Project ID") }),
757
+ import_types3.RelationshipTypeSchema.extend({
758
+ orgId: import_zod5.z.string().describe("Organization slug"),
759
+ projectId: import_zod5.z.string().describe("Project ID")
760
+ }),
675
761
  (params) => {
676
- const { projectId, ...body } = params;
762
+ const { orgId, projectId, ...body } = params;
677
763
  return call(
678
- proj(projectId)["relationship-types"][":name"].$put({
764
+ proj(orgId, projectId)["relationship-types"][":name"].$put({
679
765
  param: { name: params.name },
680
766
  json: body
681
767
  })
@@ -684,11 +770,12 @@ function createRelationshipTypesClient(proj) {
684
770
  ),
685
771
  delete: withSchema(
686
772
  import_zod5.z.object({
773
+ orgId: import_zod5.z.string().describe("Organization slug"),
687
774
  projectId: import_zod5.z.string().describe("Project ID"),
688
775
  name: import_zod5.z.string().describe("Relationship type name")
689
776
  }),
690
777
  (params) => call(
691
- proj(params.projectId)["relationship-types"][":name"].$delete({
778
+ proj(params.orgId, params.projectId)["relationship-types"][":name"].$delete({
692
779
  param: { name: params.name }
693
780
  })
694
781
  )
@@ -699,6 +786,7 @@ function createRelationshipsClient(projEnv) {
699
786
  return {
700
787
  list: withSchema(
701
788
  import_zod5.z.object({
789
+ orgId: import_zod5.z.string().describe("Organization slug"),
702
790
  projectId: import_zod5.z.string().describe("Project ID"),
703
791
  envName: import_zod5.z.string().describe("Environment name"),
704
792
  relationshipType: import_zod5.z.string().optional().describe("Filter by relationship type"),
@@ -710,40 +798,43 @@ function createRelationshipsClient(projEnv) {
710
798
  limit: import_zod5.z.coerce.number().int().min(1).max(100).optional().describe("Max results (1-100)")
711
799
  }),
712
800
  (params) => {
713
- const { projectId, envName, ...query } = params;
801
+ const { orgId, projectId, envName, ...query } = params;
714
802
  return call(
715
- projEnv(projectId, envName)["relationships"].$get({ query: stringifyQuery(query) })
803
+ projEnv(orgId, projectId, envName)["relationships"].$get({ query: stringifyQuery(query) })
716
804
  );
717
805
  }
718
806
  ),
719
807
  get: withSchema(
720
808
  import_zod5.z.object({
809
+ orgId: import_zod5.z.string().describe("Organization slug"),
721
810
  projectId: import_zod5.z.string().describe("Project ID"),
722
811
  envName: import_zod5.z.string().describe("Environment name"),
723
812
  id: import_zod5.z.string().uuid().describe("Relationship ID")
724
813
  }),
725
814
  (params) => call(
726
- projEnv(params.projectId, params.envName)["relationships"][":id"].$get({ param: { id: params.id } })
815
+ projEnv(params.orgId, params.projectId, params.envName)["relationships"][":id"].$get({ param: { id: params.id } })
727
816
  )
728
817
  ),
729
818
  create: withSchema(
730
819
  import_types3.RelationshipSchema.extend({
820
+ orgId: import_zod5.z.string().describe("Organization slug"),
731
821
  projectId: import_zod5.z.string().describe("Project ID"),
732
822
  envName: import_zod5.z.string().describe("Environment name")
733
823
  }),
734
824
  (params) => {
735
- const { projectId, envName, ...body } = params;
736
- return call(projEnv(projectId, envName)["relationships"].$post({ json: body }));
825
+ const { orgId, projectId, envName, ...body } = params;
826
+ return call(projEnv(orgId, projectId, envName)["relationships"].$post({ json: body }));
737
827
  }
738
828
  ),
739
829
  delete: withSchema(
740
830
  import_zod5.z.object({
831
+ orgId: import_zod5.z.string().describe("Organization slug"),
741
832
  projectId: import_zod5.z.string().describe("Project ID"),
742
833
  envName: import_zod5.z.string().describe("Environment name"),
743
834
  id: import_zod5.z.string().uuid().describe("Relationship ID")
744
835
  }),
745
836
  (params) => call(
746
- projEnv(params.projectId, params.envName)["relationships"][":id"].$delete({ param: { id: params.id } })
837
+ projEnv(params.orgId, params.projectId, params.envName)["relationships"][":id"].$delete({ param: { id: params.id } })
747
838
  )
748
839
  )
749
840
  };
@@ -756,44 +847,54 @@ function createActionsClient(proj, projEnv) {
756
847
  return {
757
848
  list: withSchema(
758
849
  import_zod6.z.object({
850
+ orgId: import_zod6.z.string().describe("Organization slug"),
759
851
  projectId: import_zod6.z.string().describe("Project ID")
760
852
  }),
761
- (params) => call(proj(params.projectId)["actions"].$get())
853
+ (params) => call(proj(params.orgId, params.projectId)["actions"].$get())
762
854
  ),
763
855
  get: withSchema(
764
856
  import_zod6.z.object({
857
+ orgId: import_zod6.z.string().describe("Organization slug"),
765
858
  projectId: import_zod6.z.string().describe("Project ID"),
766
859
  name: import_zod6.z.string().describe("Action name")
767
860
  }),
768
- (params) => call(proj(params.projectId)["actions"][":name"].$get({ param: { name: params.name } }))
861
+ (params) => call(proj(params.orgId, params.projectId)["actions"][":name"].$get({ param: { name: params.name } }))
769
862
  ),
770
863
  create: withSchema(
771
- import_types4.ActionSchema.extend({ projectId: import_zod6.z.string().describe("Project ID") }),
864
+ import_types4.ActionSchema.extend({
865
+ orgId: import_zod6.z.string().describe("Organization slug"),
866
+ projectId: import_zod6.z.string().describe("Project ID")
867
+ }),
772
868
  (params) => {
773
- const { projectId, ...body } = params;
774
- return call(proj(projectId)["actions"].$post({ json: body }));
869
+ const { orgId, projectId, ...body } = params;
870
+ return call(proj(orgId, projectId)["actions"].$post({ json: body }));
775
871
  }
776
872
  ),
777
873
  update: withSchema(
778
- import_types4.ActionSchema.extend({ projectId: import_zod6.z.string().describe("Project ID") }),
874
+ import_types4.ActionSchema.extend({
875
+ orgId: import_zod6.z.string().describe("Organization slug"),
876
+ projectId: import_zod6.z.string().describe("Project ID")
877
+ }),
779
878
  (params) => {
780
- const { projectId, ...body } = params;
879
+ const { orgId, projectId, ...body } = params;
781
880
  return call(
782
- proj(projectId)["actions"][":name"].$put({ param: { name: params.name }, json: body })
881
+ proj(orgId, projectId)["actions"][":name"].$put({ param: { name: params.name }, json: body })
783
882
  );
784
883
  }
785
884
  ),
786
885
  delete: withSchema(
787
886
  import_zod6.z.object({
887
+ orgId: import_zod6.z.string().describe("Organization slug"),
788
888
  projectId: import_zod6.z.string().describe("Project ID"),
789
889
  name: import_zod6.z.string().describe("Action name")
790
890
  }),
791
891
  (params) => call(
792
- proj(params.projectId)["actions"][":name"].$delete({ param: { name: params.name } })
892
+ proj(params.orgId, params.projectId)["actions"][":name"].$delete({ param: { name: params.name } })
793
893
  )
794
894
  ),
795
895
  run: withSchema(
796
896
  import_zod6.z.object({
897
+ orgId: import_zod6.z.string().describe("Organization slug"),
797
898
  projectId: import_zod6.z.string().describe("Project ID"),
798
899
  envName: import_zod6.z.string().describe("Environment name"),
799
900
  actionName: import_zod6.z.string().describe("Action name"),
@@ -801,9 +902,9 @@ function createActionsClient(proj, projEnv) {
801
902
  recommendations: import_zod6.z.record(import_zod6.z.string()).optional().describe("Recommendation selections as JSON")
802
903
  }),
803
904
  (params) => {
804
- const { projectId, envName, actionName, parameters, recommendations } = params;
905
+ const { orgId, projectId, envName, actionName, parameters, recommendations } = params;
805
906
  return call(
806
- projEnv(projectId, envName)["actions"][":name"]["run"].$post({
907
+ projEnv(orgId, projectId, envName)["actions"][":name"]["run"].$post({
807
908
  param: { name: actionName },
808
909
  json: { parameters, recommendations }
809
910
  })
@@ -816,6 +917,7 @@ function createActionRunsClient(projEnv) {
816
917
  return {
817
918
  list: withSchema(
818
919
  import_zod6.z.object({
920
+ orgId: import_zod6.z.string().describe("Organization slug"),
819
921
  projectId: import_zod6.z.string().describe("Project ID"),
820
922
  envName: import_zod6.z.string().describe("Environment name"),
821
923
  actionName: import_zod6.z.string().optional().describe("Filter by action name"),
@@ -824,30 +926,32 @@ function createActionRunsClient(projEnv) {
824
926
  limit: import_zod6.z.coerce.number().int().min(1).max(100).optional().describe("Max results (1-100)")
825
927
  }),
826
928
  (params) => {
827
- const { projectId, envName, ...query } = params;
929
+ const { orgId, projectId, envName, ...query } = params;
828
930
  return call(
829
- projEnv(projectId, envName)["action-runs"].$get({ query: stringifyQuery(query) })
931
+ projEnv(orgId, projectId, envName)["action-runs"].$get({ query: stringifyQuery(query) })
830
932
  );
831
933
  }
832
934
  ),
833
935
  get: withSchema(
834
936
  import_zod6.z.object({
937
+ orgId: import_zod6.z.string().describe("Organization slug"),
835
938
  projectId: import_zod6.z.string().describe("Project ID"),
836
939
  envName: import_zod6.z.string().describe("Environment name"),
837
940
  id: import_zod6.z.string().uuid().describe("Action run ID")
838
941
  }),
839
942
  (params) => call(
840
- projEnv(params.projectId, params.envName)["action-runs"][":id"].$get({ param: { id: params.id } })
943
+ projEnv(params.orgId, params.projectId, params.envName)["action-runs"][":id"].$get({ param: { id: params.id } })
841
944
  )
842
945
  ),
843
946
  cancel: withSchema(
844
947
  import_zod6.z.object({
948
+ orgId: import_zod6.z.string().describe("Organization slug"),
845
949
  projectId: import_zod6.z.string().describe("Project ID"),
846
950
  envName: import_zod6.z.string().describe("Environment name"),
847
951
  id: import_zod6.z.string().uuid().describe("Action run ID")
848
952
  }),
849
953
  (params) => call(
850
- projEnv(params.projectId, params.envName)["action-runs"][":id"].$delete({ param: { id: params.id } })
954
+ projEnv(params.orgId, params.projectId, params.envName)["action-runs"][":id"].$delete({ param: { id: params.id } })
851
955
  )
852
956
  )
853
957
  };
@@ -860,56 +964,61 @@ function createSecretsClient(projEnv) {
860
964
  return {
861
965
  list: withSchema(
862
966
  import_zod7.z.object({
967
+ orgId: import_zod7.z.string().describe("Organization slug"),
863
968
  projectId: import_zod7.z.string().describe("Project ID"),
864
969
  envName: import_zod7.z.string().describe("Environment name")
865
970
  }),
866
- (params) => call(projEnv(params.projectId, params.envName)["secrets"].$get())
971
+ (params) => call(projEnv(params.orgId, params.projectId, params.envName)["secrets"].$get())
867
972
  ),
868
973
  get: withSchema(
869
974
  import_zod7.z.object({
975
+ orgId: import_zod7.z.string().describe("Organization slug"),
870
976
  projectId: import_zod7.z.string().describe("Project ID"),
871
977
  envName: import_zod7.z.string().describe("Environment name"),
872
978
  name: import_zod7.z.string().describe("Secret name")
873
979
  }),
874
980
  (params) => call(
875
- projEnv(params.projectId, params.envName)["secrets"][":name"].$get({ param: { name: params.name } })
981
+ projEnv(params.orgId, params.projectId, params.envName)["secrets"][":name"].$get({ param: { name: params.name } })
876
982
  )
877
983
  ),
878
984
  create: withSchema(
879
985
  import_zod7.z.object({
986
+ orgId: import_zod7.z.string().describe("Organization slug"),
880
987
  projectId: import_zod7.z.string().describe("Project ID"),
881
988
  envName: import_zod7.z.string().describe("Environment name"),
882
989
  name: import_zod7.z.string().describe("Secret name"),
883
990
  description: import_zod7.z.string().optional().describe("Description")
884
991
  }),
885
992
  (params) => {
886
- const { projectId, envName, name, description } = params;
993
+ const { orgId, projectId, envName, name, description } = params;
887
994
  return call(
888
- projEnv(projectId, envName)["secrets"].$post({ json: { kind: "Secret", name, description } })
995
+ projEnv(orgId, projectId, envName)["secrets"].$post({ json: { kind: "Secret", name, description } })
889
996
  );
890
997
  }
891
998
  ),
892
999
  delete: withSchema(
893
1000
  import_zod7.z.object({
1001
+ orgId: import_zod7.z.string().describe("Organization slug"),
894
1002
  projectId: import_zod7.z.string().describe("Project ID"),
895
1003
  envName: import_zod7.z.string().describe("Environment name"),
896
1004
  name: import_zod7.z.string().describe("Secret name")
897
1005
  }),
898
1006
  (params) => call(
899
- projEnv(params.projectId, params.envName)["secrets"][":name"].$delete({ param: { name: params.name } })
1007
+ projEnv(params.orgId, params.projectId, params.envName)["secrets"][":name"].$delete({ param: { name: params.name } })
900
1008
  )
901
1009
  ),
902
1010
  setValue: withSchema(
903
1011
  import_zod7.z.object({
1012
+ orgId: import_zod7.z.string().describe("Organization slug"),
904
1013
  projectId: import_zod7.z.string().describe("Project ID"),
905
1014
  envName: import_zod7.z.string().describe("Environment name"),
906
1015
  name: import_zod7.z.string().describe("Secret name"),
907
1016
  value: import_zod7.z.string().min(1).describe("Secret value")
908
1017
  }),
909
1018
  (params) => {
910
- const { projectId, envName, name, value } = params;
1019
+ const { orgId, projectId, envName, name, value } = params;
911
1020
  return call(
912
- projEnv(projectId, envName)["secrets"][":name"]["value"].$put({
1021
+ projEnv(orgId, projectId, envName)["secrets"][":name"]["value"].$put({
913
1022
  param: { name },
914
1023
  json: { value }
915
1024
  })
@@ -921,12 +1030,13 @@ function createSecretsClient(projEnv) {
921
1030
  function createApplyClient(projEnv) {
922
1031
  return withSchema(
923
1032
  import_types5.ApplyRequestSchema.extend({
1033
+ orgId: import_zod7.z.string().describe("Organization slug"),
924
1034
  projectId: import_zod7.z.string().describe("Project ID"),
925
1035
  envName: import_zod7.z.string().describe("Environment name")
926
1036
  }),
927
1037
  (params) => {
928
- const { projectId, envName, ...body } = params;
929
- return call(projEnv(projectId, envName)["apply"].$post({ json: body }));
1038
+ const { orgId, projectId, envName, ...body } = params;
1039
+ return call(projEnv(orgId, projectId, envName)["apply"].$post({ json: body }));
930
1040
  }
931
1041
  );
932
1042
  }
@@ -939,21 +1049,21 @@ function createGithubClient(cloud, _baseUrl, _hcOpts) {
939
1049
  import_zod8.z.object({
940
1050
  projectId: import_zod8.z.string().describe("Project ID")
941
1051
  }),
942
- (params) => call(cloud.api.github["install-url"].$post({ json: params }))
1052
+ (params) => call(cloud.github["install-url"].$post({ json: params }))
943
1053
  ),
944
1054
  installations: {
945
1055
  list: withSchema(
946
1056
  import_zod8.z.object({
947
1057
  orgId: import_zod8.z.string().describe("Organization ID")
948
1058
  }),
949
- (params) => call(cloud.api.github.installations.$get({ query: params }))
1059
+ (params) => call(cloud.github.installations.$get({ query: params }))
950
1060
  ),
951
1061
  repos: withSchema(
952
1062
  import_zod8.z.object({
953
1063
  installationId: import_zod8.z.string().describe("Installation row ID")
954
1064
  }),
955
1065
  (params) => call(
956
- cloud.api.github.installations[":installationId"].repos.$get({
1066
+ cloud.github.installations[":installationId"].repos.$get({
957
1067
  param: params
958
1068
  })
959
1069
  )
@@ -963,7 +1073,7 @@ function createGithubClient(cloud, _baseUrl, _hcOpts) {
963
1073
  installationId: import_zod8.z.string().describe("Installation row ID")
964
1074
  }),
965
1075
  (params) => call(
966
- cloud.api.github.installations[":installationId"].$delete({
1076
+ cloud.github.installations[":installationId"].$delete({
967
1077
  param: params
968
1078
  })
969
1079
  )
@@ -973,7 +1083,7 @@ function createGithubClient(cloud, _baseUrl, _hcOpts) {
973
1083
  orgId: import_zod8.z.string().describe("Organization ID"),
974
1084
  installationId: import_zod8.z.number().int().positive().describe("GitHub installation ID (from the GitHub install URL)")
975
1085
  }),
976
- (params) => call(cloud.api.github.installations.recover.$post({ json: params }))
1086
+ (params) => call(cloud.github.installations.recover.$post({ json: params }))
977
1087
  )
978
1088
  },
979
1089
  projects: {
@@ -1034,12 +1144,13 @@ function stripServerFields(row) {
1034
1144
  function createExportCatalogFn(proj, projEnv) {
1035
1145
  return withSchema(
1036
1146
  import_zod9.z.object({
1147
+ orgId: import_zod9.z.string().describe("Organization slug"),
1037
1148
  projectId: import_zod9.z.string().describe("Project ID"),
1038
1149
  envName: import_zod9.z.string().describe("Environment name to export secret declarations from")
1039
1150
  }).describe("Export every catalog kind as a single apply-shaped payload"),
1040
1151
  async (params) => {
1041
- const projClient = proj(params.projectId);
1042
- const envClient = projEnv(params.projectId, params.envName);
1152
+ const projClient = proj(params.orgId, params.projectId);
1153
+ const envClient = projEnv(params.orgId, params.projectId, params.envName);
1043
1154
  const [entityTypes, cells, relationshipTypes, actions, secrets] = await Promise.all([
1044
1155
  call(projClient["entity-types"].$get()),
1045
1156
  call(projClient["cells"].$get()),
@@ -1079,32 +1190,35 @@ function createCatalogRevisionsClient(proj) {
1079
1190
  return {
1080
1191
  list: withSchema(
1081
1192
  import_zod10.z.object({
1193
+ orgId: import_zod10.z.string().describe("Organization slug"),
1082
1194
  projectId: import_zod10.z.string().describe("Project ID"),
1083
1195
  limit: import_zod10.z.coerce.number().int().min(1).max(200).optional().describe("Max revisions to return (1-200)")
1084
1196
  }),
1085
1197
  (params) => {
1086
- const { projectId, ...query } = params;
1198
+ const { orgId, projectId, ...query } = params;
1087
1199
  return call(
1088
- proj(projectId)["catalog-revisions"].$get({ query: stringifyQuery(query) })
1200
+ proj(orgId, projectId)["catalog-revisions"].$get({ query: stringifyQuery(query) })
1089
1201
  );
1090
1202
  }
1091
1203
  ),
1092
1204
  get: withSchema(
1093
1205
  import_zod10.z.object({
1206
+ orgId: import_zod10.z.string().describe("Organization slug"),
1094
1207
  projectId: import_zod10.z.string().describe("Project ID"),
1095
1208
  id: import_zod10.z.string().uuid().describe("Revision ID")
1096
1209
  }),
1097
1210
  (params) => call(
1098
- proj(params.projectId)["catalog-revisions"][":id"].$get({ param: { id: params.id } })
1211
+ proj(params.orgId, params.projectId)["catalog-revisions"][":id"].$get({ param: { id: params.id } })
1099
1212
  )
1100
1213
  ),
1101
1214
  snapshots: withSchema(
1102
1215
  import_zod10.z.object({
1216
+ orgId: import_zod10.z.string().describe("Organization slug"),
1103
1217
  projectId: import_zod10.z.string().describe("Project ID"),
1104
1218
  id: import_zod10.z.string().uuid().describe("Revision ID to read snapshots for")
1105
1219
  }),
1106
1220
  (params) => call(
1107
- proj(params.projectId)["catalog-revisions"][":id"]["snapshots"].$get({
1221
+ proj(params.orgId, params.projectId)["catalog-revisions"][":id"]["snapshots"].$get({
1108
1222
  param: { id: params.id }
1109
1223
  })
1110
1224
  )
@@ -1116,15 +1230,16 @@ function createCatalogRevisionsClient(proj) {
1116
1230
  */
1117
1231
  rollback: withSchema(
1118
1232
  import_zod10.z.object({
1233
+ orgId: import_zod10.z.string().describe("Organization slug"),
1119
1234
  projectId: import_zod10.z.string().describe("Project ID"),
1120
1235
  id: import_zod10.z.string().uuid().describe("Revision ID to roll back to"),
1121
1236
  hunkId: import_zod10.z.string().uuid().optional().describe("Single-hunk filter"),
1122
1237
  force: import_zod10.z.boolean().optional().describe("Required if the inverse diff is destructive")
1123
1238
  }),
1124
1239
  (params) => {
1125
- const { projectId, id, hunkId, force } = params;
1240
+ const { orgId, projectId, id, hunkId, force } = params;
1126
1241
  return call(
1127
- proj(projectId)["catalog-revisions"][":id"]["rollback"].$post({
1242
+ proj(orgId, projectId)["catalog-revisions"][":id"]["rollback"].$post({
1128
1243
  param: { id },
1129
1244
  json: { force: force ?? false },
1130
1245
  query: hunkId ? stringifyQuery({ hunkId }) : void 0
@@ -1141,6 +1256,7 @@ function createAuditEventsClient(proj) {
1141
1256
  return {
1142
1257
  list: withSchema(
1143
1258
  import_zod11.z.object({
1259
+ orgId: import_zod11.z.string().describe("Organization slug"),
1144
1260
  projectId: import_zod11.z.string().describe("Project ID"),
1145
1261
  envName: import_zod11.z.string().optional().describe("Filter to a single env"),
1146
1262
  actorType: import_zod11.z.enum(["user", "token"]).optional().describe("Filter by actor type"),
@@ -1151,8 +1267,8 @@ function createAuditEventsClient(proj) {
1151
1267
  limit: import_zod11.z.coerce.number().int().min(1).max(500).optional().describe("Max rows (1-500)")
1152
1268
  }).describe("List audit events for a project \u2014 auditor-friendly read-only feed"),
1153
1269
  (params) => {
1154
- const { projectId, ...query } = params;
1155
- return call(proj(projectId)["audit-events"].$get({ query: stringifyQuery(query) }));
1270
+ const { orgId, projectId, ...query } = params;
1271
+ return call(proj(orgId, projectId)["audit-events"].$get({ query: stringifyQuery(query) }));
1156
1272
  }
1157
1273
  )
1158
1274
  };
@@ -1164,27 +1280,30 @@ function createEnvironmentsClient(proj) {
1164
1280
  return {
1165
1281
  list: withSchema(
1166
1282
  import_zod12.z.object({
1283
+ orgId: import_zod12.z.string().describe("Organization slug"),
1167
1284
  projectId: import_zod12.z.string().describe("Project ID")
1168
1285
  }),
1169
- (params) => call(proj(params.projectId)["environments"].$get())
1286
+ (params) => call(proj(params.orgId, params.projectId)["environments"].$get())
1170
1287
  ),
1171
1288
  create: withSchema(
1172
1289
  import_zod12.z.object({
1290
+ orgId: import_zod12.z.string().describe("Organization slug"),
1173
1291
  projectId: import_zod12.z.string().describe("Project ID"),
1174
1292
  name: import_zod12.z.string().min(1).max(31).regex(/^[a-z0-9][a-z0-9-]{0,30}$/).describe("Environment name (lowercase letters, digits, hyphens; max 31 chars)")
1175
1293
  }),
1176
1294
  (params) => {
1177
- const { projectId, name } = params;
1178
- return call(proj(projectId)["environments"].$post({ json: { name } }));
1295
+ const { orgId, projectId, name } = params;
1296
+ return call(proj(orgId, projectId)["environments"].$post({ json: { name } }));
1179
1297
  }
1180
1298
  ),
1181
1299
  delete: withSchema(
1182
1300
  import_zod12.z.object({
1301
+ orgId: import_zod12.z.string().describe("Organization slug"),
1183
1302
  projectId: import_zod12.z.string().describe("Project ID"),
1184
1303
  name: import_zod12.z.string().describe("Environment name")
1185
1304
  }),
1186
1305
  (params) => call(
1187
- proj(params.projectId)["environments"][":envName"].$delete({
1306
+ proj(params.orgId, params.projectId)["environments"][":envName"].$delete({
1188
1307
  param: { envName: params.name }
1189
1308
  })
1190
1309
  )
@@ -1198,6 +1317,7 @@ function createDriftEventsClient(projEnv) {
1198
1317
  return {
1199
1318
  list: withSchema(
1200
1319
  import_zod13.z.object({
1320
+ orgId: import_zod13.z.string().describe("Organization slug"),
1201
1321
  projectId: import_zod13.z.string().describe("Project ID"),
1202
1322
  envName: import_zod13.z.string().describe("Environment name"),
1203
1323
  status: import_zod13.z.enum(["open", "accepted", "reapplied", "snoozed"]).optional(),
@@ -1207,61 +1327,69 @@ function createDriftEventsClient(projEnv) {
1207
1327
  limit: import_zod13.z.coerce.number().int().min(1).max(500).optional()
1208
1328
  }),
1209
1329
  (params) => {
1210
- const { projectId, envName, ...query } = params;
1330
+ const { orgId, projectId, envName, ...query } = params;
1211
1331
  return call(
1212
- projEnv(projectId, envName)["drift-events"].$get({ query: stringifyQuery(query) })
1332
+ projEnv(orgId, projectId, envName)["drift-events"].$get({ query: stringifyQuery(query) })
1213
1333
  );
1214
1334
  }
1215
1335
  ),
1216
1336
  count: withSchema(
1217
- import_zod13.z.object({ projectId: import_zod13.z.string(), envName: import_zod13.z.string() }),
1218
- (params) => call(projEnv(params.projectId, params.envName)["drift-events"].count.$get())
1337
+ import_zod13.z.object({
1338
+ orgId: import_zod13.z.string().describe("Organization slug"),
1339
+ projectId: import_zod13.z.string().describe("Project ID"),
1340
+ envName: import_zod13.z.string().describe("Environment name")
1341
+ }),
1342
+ (params) => call(projEnv(params.orgId, params.projectId, params.envName)["drift-events"].count.$get())
1219
1343
  ),
1220
1344
  get: withSchema(
1221
1345
  import_zod13.z.object({
1222
- projectId: import_zod13.z.string(),
1223
- envName: import_zod13.z.string(),
1346
+ orgId: import_zod13.z.string().describe("Organization slug"),
1347
+ projectId: import_zod13.z.string().describe("Project ID"),
1348
+ envName: import_zod13.z.string().describe("Environment name"),
1224
1349
  id: import_zod13.z.string().uuid()
1225
1350
  }),
1226
1351
  (params) => call(
1227
- projEnv(params.projectId, params.envName)["drift-events"][":id"].$get({
1352
+ projEnv(params.orgId, params.projectId, params.envName)["drift-events"][":id"].$get({
1228
1353
  param: { id: params.id }
1229
1354
  })
1230
1355
  )
1231
1356
  ),
1232
1357
  accept: withSchema(
1233
1358
  import_zod13.z.object({
1234
- projectId: import_zod13.z.string(),
1235
- envName: import_zod13.z.string(),
1359
+ orgId: import_zod13.z.string().describe("Organization slug"),
1360
+ projectId: import_zod13.z.string().describe("Project ID"),
1361
+ envName: import_zod13.z.string().describe("Environment name"),
1236
1362
  id: import_zod13.z.string().uuid()
1237
1363
  }),
1238
1364
  (params) => call(
1239
- projEnv(params.projectId, params.envName)["drift-events"][":id"].accept.$post({
1365
+ projEnv(params.orgId, params.projectId, params.envName)["drift-events"][":id"].accept.$post({
1240
1366
  param: { id: params.id }
1241
1367
  })
1242
1368
  )
1243
1369
  ),
1244
1370
  reapply: withSchema(
1245
1371
  import_zod13.z.object({
1246
- projectId: import_zod13.z.string(),
1247
- envName: import_zod13.z.string(),
1372
+ orgId: import_zod13.z.string().describe("Organization slug"),
1373
+ projectId: import_zod13.z.string().describe("Project ID"),
1374
+ envName: import_zod13.z.string().describe("Environment name"),
1248
1375
  id: import_zod13.z.string().uuid()
1249
1376
  }),
1250
1377
  (params) => call(
1251
- projEnv(params.projectId, params.envName)["drift-events"][":id"].reapply.$post({
1378
+ projEnv(params.orgId, params.projectId, params.envName)["drift-events"][":id"].reapply.$post({
1252
1379
  param: { id: params.id }
1253
1380
  })
1254
1381
  )
1255
1382
  ),
1256
1383
  snooze: withSchema(
1257
1384
  import_zod13.z.object({
1258
- projectId: import_zod13.z.string(),
1259
- envName: import_zod13.z.string(),
1385
+ orgId: import_zod13.z.string().describe("Organization slug"),
1386
+ projectId: import_zod13.z.string().describe("Project ID"),
1387
+ envName: import_zod13.z.string().describe("Environment name"),
1260
1388
  id: import_zod13.z.string().uuid(),
1261
1389
  untilSeconds: import_zod13.z.number().int().positive().optional()
1262
1390
  }),
1263
1391
  (params) => call(
1264
- projEnv(params.projectId, params.envName)["drift-events"][":id"].snooze.$post({
1392
+ projEnv(params.orgId, params.projectId, params.envName)["drift-events"][":id"].snooze.$post({
1265
1393
  param: { id: params.id },
1266
1394
  json: { untilSeconds: params.untilSeconds }
1267
1395
  })
@@ -1278,58 +1406,136 @@ function createStatsClient(proj) {
1278
1406
  return {
1279
1407
  entitiesByState: withSchema(
1280
1408
  import_zod14.z.object({
1409
+ orgId: import_zod14.z.string().describe("Organization slug"),
1281
1410
  projectId: import_zod14.z.string().describe("Project ID"),
1282
1411
  window: WindowSchema,
1283
1412
  bucket: BucketSchema
1284
1413
  }),
1285
1414
  (params) => {
1286
- const { projectId, ...query } = params;
1287
- return call(proj(projectId)["stats"]["entities-by-state"].$get({ query: stringifyQuery(query) }));
1415
+ const { orgId, projectId, ...query } = params;
1416
+ return call(proj(orgId, projectId)["stats"]["entities-by-state"].$get({ query: stringifyQuery(query) }));
1288
1417
  }
1289
1418
  ),
1290
1419
  runsByType: withSchema(
1291
1420
  import_zod14.z.object({
1421
+ orgId: import_zod14.z.string().describe("Organization slug"),
1292
1422
  projectId: import_zod14.z.string().describe("Project ID"),
1293
1423
  window: WindowSchema
1294
1424
  }),
1295
1425
  (params) => {
1296
- const { projectId, ...query } = params;
1297
- return call(proj(projectId)["stats"]["runs-by-type"].$get({ query: stringifyQuery(query) }));
1426
+ const { orgId, projectId, ...query } = params;
1427
+ return call(proj(orgId, projectId)["stats"]["runs-by-type"].$get({ query: stringifyQuery(query) }));
1298
1428
  }
1299
1429
  ),
1300
1430
  failingKinds: withSchema(
1301
1431
  import_zod14.z.object({
1432
+ orgId: import_zod14.z.string().describe("Organization slug"),
1302
1433
  projectId: import_zod14.z.string().describe("Project ID"),
1303
1434
  window: WindowSchema
1304
1435
  }),
1305
1436
  (params) => {
1306
- const { projectId, ...query } = params;
1307
- return call(proj(projectId)["stats"]["failing-kinds"].$get({ query: stringifyQuery(query) }));
1437
+ const { orgId, projectId, ...query } = params;
1438
+ return call(proj(orgId, projectId)["stats"]["failing-kinds"].$get({ query: stringifyQuery(query) }));
1308
1439
  }
1309
1440
  ),
1310
1441
  driftDensity: withSchema(
1311
1442
  import_zod14.z.object({
1443
+ orgId: import_zod14.z.string().describe("Organization slug"),
1312
1444
  projectId: import_zod14.z.string().describe("Project ID"),
1313
1445
  dim: import_zod14.z.string().optional().describe('Dimensions to bucket \u2014 e.g. "kind,cell"')
1314
1446
  }),
1315
1447
  (params) => {
1316
- const { projectId, ...query } = params;
1317
- return call(proj(projectId)["stats"]["drift-density"].$get({ query: stringifyQuery(query) }));
1448
+ const { orgId, projectId, ...query } = params;
1449
+ return call(proj(orgId, projectId)["stats"]["drift-density"].$get({ query: stringifyQuery(query) }));
1318
1450
  }
1319
1451
  )
1320
1452
  };
1321
1453
  }
1322
1454
 
1323
- // src/notifications.ts
1455
+ // src/graph-views.ts
1324
1456
  var import_zod15 = require("zod");
1457
+ var ViewConfigSchema = import_zod15.z.unknown();
1458
+ var PinnedPositionsSchema = import_zod15.z.record(import_zod15.z.string(), import_zod15.z.object({ x: import_zod15.z.number(), y: import_zod15.z.number() })).nullable();
1459
+ function createGraphViewsClient(proj) {
1460
+ return {
1461
+ list: withSchema(
1462
+ import_zod15.z.object({
1463
+ orgId: import_zod15.z.string().describe("Organization slug"),
1464
+ projectId: import_zod15.z.string().describe("Project ID")
1465
+ }),
1466
+ (params) => call(proj(params.orgId, params.projectId)["graph-views"].$get())
1467
+ ),
1468
+ get: withSchema(
1469
+ import_zod15.z.object({
1470
+ orgId: import_zod15.z.string().describe("Organization slug"),
1471
+ projectId: import_zod15.z.string().describe("Project ID"),
1472
+ id: import_zod15.z.string().describe("View id")
1473
+ }),
1474
+ (params) => call(proj(params.orgId, params.projectId)["graph-views"][":id"].$get({ param: { id: params.id } }))
1475
+ ),
1476
+ create: withSchema(
1477
+ import_zod15.z.object({
1478
+ orgId: import_zod15.z.string().describe("Organization slug"),
1479
+ projectId: import_zod15.z.string().describe("Project ID"),
1480
+ name: import_zod15.z.string().describe("View name"),
1481
+ scope: import_zod15.z.enum(["user", "project"]).describe("Personal or project scope"),
1482
+ config: ViewConfigSchema.describe("ViewConfig JSON"),
1483
+ pinnedPositions: PinnedPositionsSchema.optional().describe("Pinned node positions")
1484
+ }),
1485
+ (params) => {
1486
+ const { orgId, projectId, ...body } = params;
1487
+ return call(proj(orgId, projectId)["graph-views"].$post({ json: body }));
1488
+ }
1489
+ ),
1490
+ update: withSchema(
1491
+ import_zod15.z.object({
1492
+ orgId: import_zod15.z.string().describe("Organization slug"),
1493
+ projectId: import_zod15.z.string().describe("Project ID"),
1494
+ id: import_zod15.z.string().describe("View id"),
1495
+ name: import_zod15.z.string().optional().describe("New name"),
1496
+ config: ViewConfigSchema.optional().describe("Replacement ViewConfig JSON"),
1497
+ pinnedPositions: PinnedPositionsSchema.optional().describe("Replacement pinned positions")
1498
+ }),
1499
+ (params) => {
1500
+ const { orgId, projectId, id, ...body } = params;
1501
+ return call(
1502
+ proj(orgId, projectId)["graph-views"][":id"].$put({ param: { id }, json: body })
1503
+ );
1504
+ }
1505
+ ),
1506
+ delete: withSchema(
1507
+ import_zod15.z.object({
1508
+ orgId: import_zod15.z.string().describe("Organization slug"),
1509
+ projectId: import_zod15.z.string().describe("Project ID"),
1510
+ id: import_zod15.z.string().describe("View id")
1511
+ }),
1512
+ (params) => call(proj(params.orgId, params.projectId)["graph-views"][":id"].$delete({ param: { id: params.id } }))
1513
+ ),
1514
+ setDefault: withSchema(
1515
+ import_zod15.z.object({
1516
+ orgId: import_zod15.z.string().describe("Organization slug"),
1517
+ projectId: import_zod15.z.string().describe("Project ID"),
1518
+ id: import_zod15.z.string().describe("View id")
1519
+ }),
1520
+ (params) => call(
1521
+ proj(params.orgId, params.projectId)["graph-views"][":id"]["default"].$patch({
1522
+ param: { id: params.id }
1523
+ })
1524
+ )
1525
+ )
1526
+ };
1527
+ }
1528
+
1529
+ // src/notifications.ts
1530
+ var import_zod16 = require("zod");
1325
1531
  var import_client2 = require("hono/client");
1326
1532
  function createNotificationsClient(baseUrl, hcOpts) {
1327
- const c = (0, import_client2.hc)(`${baseUrl}/notifications`, hcOpts);
1533
+ const c = (0, import_client2.hc)(`${baseUrl}/api/notifications`, hcOpts);
1328
1534
  return {
1329
1535
  list: withSchema(
1330
- import_zod15.z.object({
1331
- limit: import_zod15.z.coerce.number().int().min(1).max(100).optional(),
1332
- unread: import_zod15.z.boolean().optional()
1536
+ import_zod16.z.object({
1537
+ limit: import_zod16.z.coerce.number().int().min(1).max(100).optional(),
1538
+ unread: import_zod16.z.boolean().optional()
1333
1539
  }),
1334
1540
  (params) => {
1335
1541
  const query = {};
@@ -1339,18 +1545,18 @@ function createNotificationsClient(baseUrl, hcOpts) {
1339
1545
  }
1340
1546
  ),
1341
1547
  read: withSchema(
1342
- import_zod15.z.object({ id: import_zod15.z.string().uuid() }),
1548
+ import_zod16.z.object({ id: import_zod16.z.string().uuid() }),
1343
1549
  (params) => call(c[":id"].read.$post({ param: { id: params.id } }))
1344
1550
  ),
1345
1551
  readAll: withSchema(
1346
- import_zod15.z.object({}),
1552
+ import_zod16.z.object({}),
1347
1553
  () => call(c["read-all"].$post())
1348
1554
  )
1349
1555
  };
1350
1556
  }
1351
1557
 
1352
1558
  // src/audit-export.ts
1353
- var import_zod16 = require("zod");
1559
+ var import_zod17 = require("zod");
1354
1560
  async function rawRequest(baseUrl, hcOpts, path, init = {}) {
1355
1561
  const fetchImpl = hcOpts?.fetch ?? fetch;
1356
1562
  const rawHeaders = hcOpts?.headers;
@@ -1379,24 +1585,24 @@ function createAuditExportClient(baseUrl, hcOpts) {
1379
1585
  return {
1380
1586
  /** GET /orgs/:orgId/audit-export/config — returns current config or throws 404. */
1381
1587
  getConfig: withSchema(
1382
- import_zod16.z.object({ orgId: import_zod16.z.string().describe("Organization ID") }),
1588
+ import_zod17.z.object({ orgId: import_zod17.z.string().describe("Organization ID") }),
1383
1589
  async (params) => callRaw(
1384
- await rawRequest(baseUrl, hcOpts, `/orgs/${params.orgId}/audit-export/config`)
1590
+ await rawRequest(baseUrl, hcOpts, `/api/orgs/${params.orgId}/audit-export/config`)
1385
1591
  )
1386
1592
  ),
1387
1593
  /** POST /orgs/:orgId/audit-export/config — upsert the S3 export config. */
1388
1594
  setConfig: withSchema(
1389
- import_zod16.z.object({
1390
- orgId: import_zod16.z.string().describe("Organization ID"),
1391
- bucket: import_zod16.z.string().describe("S3 bucket name"),
1392
- region: import_zod16.z.string().describe("AWS region"),
1393
- roleArn: import_zod16.z.string().describe("IAM role ARN for assume-role"),
1394
- enabled: import_zod16.z.boolean().optional().describe("Enable/disable export")
1595
+ import_zod17.z.object({
1596
+ orgId: import_zod17.z.string().describe("Organization ID"),
1597
+ bucket: import_zod17.z.string().describe("S3 bucket name"),
1598
+ region: import_zod17.z.string().describe("AWS region"),
1599
+ roleArn: import_zod17.z.string().describe("IAM role ARN for assume-role"),
1600
+ enabled: import_zod17.z.boolean().optional().describe("Enable/disable export")
1395
1601
  }),
1396
1602
  async (params) => {
1397
1603
  const { orgId, ...body } = params;
1398
1604
  return callRaw(
1399
- await rawRequest(baseUrl, hcOpts, `/orgs/${orgId}/audit-export/config`, {
1605
+ await rawRequest(baseUrl, hcOpts, `/api/orgs/${orgId}/audit-export/config`, {
1400
1606
  method: "POST",
1401
1607
  headers: { "Content-Type": "application/json" },
1402
1608
  body: JSON.stringify(body)
@@ -1406,16 +1612,16 @@ function createAuditExportClient(baseUrl, hcOpts) {
1406
1612
  ),
1407
1613
  /** POST /orgs/:orgId/audit-export/test-connection — dry-run write+delete. */
1408
1614
  testConnection: withSchema(
1409
- import_zod16.z.object({
1410
- orgId: import_zod16.z.string().describe("Organization ID"),
1411
- bucket: import_zod16.z.string().describe("S3 bucket name"),
1412
- region: import_zod16.z.string().describe("AWS region"),
1413
- roleArn: import_zod16.z.string().describe("IAM role ARN for assume-role")
1615
+ import_zod17.z.object({
1616
+ orgId: import_zod17.z.string().describe("Organization ID"),
1617
+ bucket: import_zod17.z.string().describe("S3 bucket name"),
1618
+ region: import_zod17.z.string().describe("AWS region"),
1619
+ roleArn: import_zod17.z.string().describe("IAM role ARN for assume-role")
1414
1620
  }),
1415
1621
  async (params) => {
1416
1622
  const { orgId, ...body } = params;
1417
1623
  return callRaw(
1418
- await rawRequest(baseUrl, hcOpts, `/orgs/${orgId}/audit-export/test-connection`, {
1624
+ await rawRequest(baseUrl, hcOpts, `/api/orgs/${orgId}/audit-export/test-connection`, {
1419
1625
  method: "POST",
1420
1626
  headers: { "Content-Type": "application/json" },
1421
1627
  body: JSON.stringify(body)
@@ -1425,9 +1631,9 @@ function createAuditExportClient(baseUrl, hcOpts) {
1425
1631
  ),
1426
1632
  /** GET /orgs/:orgId/audit-export/runs — recent batch run history. */
1427
1633
  listRuns: withSchema(
1428
- import_zod16.z.object({
1429
- orgId: import_zod16.z.string().describe("Organization ID"),
1430
- limit: import_zod16.z.number().optional().describe("Max results (default 20, max 100)")
1634
+ import_zod17.z.object({
1635
+ orgId: import_zod17.z.string().describe("Organization ID"),
1636
+ limit: import_zod17.z.number().optional().describe("Max results (default 20, max 100)")
1431
1637
  }),
1432
1638
  async (params) => {
1433
1639
  const qs = params.limit ? `?limit=${params.limit}` : "";
@@ -1435,7 +1641,7 @@ function createAuditExportClient(baseUrl, hcOpts) {
1435
1641
  await rawRequest(
1436
1642
  baseUrl,
1437
1643
  hcOpts,
1438
- `/orgs/${params.orgId}/audit-export/runs${qs}`
1644
+ `/api/orgs/${params.orgId}/audit-export/runs${qs}`
1439
1645
  )
1440
1646
  );
1441
1647
  }
@@ -1447,7 +1653,7 @@ function createAuditExportClient(baseUrl, hcOpts) {
1447
1653
  var import_client3 = require("hono/client");
1448
1654
  function createUserPreferencesClient(baseUrl, hcOpts) {
1449
1655
  const c = (0, import_client3.hc)(
1450
- `${baseUrl}/user/preferences`,
1656
+ `${baseUrl}/api/user/preferences`,
1451
1657
  hcOpts
1452
1658
  );
1453
1659
  return {
@@ -1463,47 +1669,53 @@ function createUserPreferencesClient(baseUrl, hcOpts) {
1463
1669
  }
1464
1670
 
1465
1671
  // src/import-sources.ts
1466
- var import_zod17 = require("zod");
1467
- var SourceKindEnum = import_zod17.z.enum(["tf-state", "atmos-manifests"]);
1468
- var PolicyEnum = import_zod17.z.enum(["auto-update", "human-approval"]);
1672
+ var import_zod18 = require("zod");
1673
+ var SourceKindEnum = import_zod18.z.enum(["tf-state", "atmos-manifests"]);
1674
+ var PolicyEnum = import_zod18.z.enum(["auto-update", "human-approval"]);
1469
1675
  function createImportSourcesClient(proj) {
1470
1676
  return {
1471
1677
  list: withSchema(
1472
- import_zod17.z.object({ projectId: import_zod17.z.string().describe("Project ID") }),
1473
- (params) => call(proj(params.projectId)["import-sources"].$get())
1678
+ import_zod18.z.object({
1679
+ orgId: import_zod18.z.string().describe("Organization slug"),
1680
+ projectId: import_zod18.z.string().describe("Project ID")
1681
+ }),
1682
+ (params) => call(proj(params.orgId, params.projectId)["import-sources"].$get())
1474
1683
  ),
1475
1684
  get: withSchema(
1476
- import_zod17.z.object({
1477
- projectId: import_zod17.z.string().describe("Project ID"),
1478
- id: import_zod17.z.string().uuid().describe("ImportSource ID")
1685
+ import_zod18.z.object({
1686
+ orgId: import_zod18.z.string().describe("Organization slug"),
1687
+ projectId: import_zod18.z.string().describe("Project ID"),
1688
+ id: import_zod18.z.string().uuid().describe("ImportSource ID")
1479
1689
  }),
1480
- (params) => call(proj(params.projectId)["import-sources"][":id"].$get({ param: { id: params.id } }))
1690
+ (params) => call(proj(params.orgId, params.projectId)["import-sources"][":id"].$get({ param: { id: params.id } }))
1481
1691
  ),
1482
1692
  registerOrUpdate: withSchema(
1483
- import_zod17.z.object({
1484
- projectId: import_zod17.z.string().describe("Project ID"),
1485
- envName: import_zod17.z.string().describe("Env name the source belongs to"),
1693
+ import_zod18.z.object({
1694
+ orgId: import_zod18.z.string().describe("Organization slug"),
1695
+ projectId: import_zod18.z.string().describe("Project ID"),
1696
+ envName: import_zod18.z.string().describe("Env name the source belongs to"),
1486
1697
  sourceKind: SourceKindEnum,
1487
- sourceUri: import_zod17.z.string().describe("Stable URI identifying the source"),
1698
+ sourceUri: import_zod18.z.string().describe("Stable URI identifying the source"),
1488
1699
  reconciliationPolicy: PolicyEnum.optional()
1489
1700
  }),
1490
1701
  (params) => {
1491
- const { projectId, ...body } = params;
1492
- return call(proj(projectId)["import-sources"].$post({ json: body }));
1702
+ const { orgId, projectId, ...body } = params;
1703
+ return call(proj(orgId, projectId)["import-sources"].$post({ json: body }));
1493
1704
  }
1494
1705
  ),
1495
1706
  rescan: withSchema(
1496
- import_zod17.z.object({
1497
- projectId: import_zod17.z.string(),
1498
- id: import_zod17.z.string().uuid(),
1499
- envName: import_zod17.z.string(),
1500
- items: import_zod17.z.array(import_zod17.z.unknown()),
1501
- deletions: import_zod17.z.array(import_zod17.z.object({ kind: import_zod17.z.string(), name: import_zod17.z.string() })).optional()
1707
+ import_zod18.z.object({
1708
+ orgId: import_zod18.z.string().describe("Organization slug"),
1709
+ projectId: import_zod18.z.string().describe("Project ID"),
1710
+ id: import_zod18.z.string().uuid(),
1711
+ envName: import_zod18.z.string(),
1712
+ items: import_zod18.z.array(import_zod18.z.unknown()),
1713
+ deletions: import_zod18.z.array(import_zod18.z.object({ kind: import_zod18.z.string(), name: import_zod18.z.string() })).optional()
1502
1714
  }),
1503
1715
  (params) => {
1504
- const { projectId, id, ...body } = params;
1716
+ const { orgId, projectId, id, ...body } = params;
1505
1717
  return call(
1506
- proj(projectId)["import-sources"][":id"].rescan.$post({
1718
+ proj(orgId, projectId)["import-sources"][":id"].rescan.$post({
1507
1719
  param: { id },
1508
1720
  // why: the Hono RPC type for the body is the AnyKindSchema union;
1509
1721
  // the SDK accepts `unknown[]` so callers don't have to re-import the
@@ -1514,32 +1726,35 @@ function createImportSourcesClient(proj) {
1514
1726
  }
1515
1727
  ),
1516
1728
  drift: withSchema(
1517
- import_zod17.z.object({
1518
- projectId: import_zod17.z.string(),
1519
- id: import_zod17.z.string().uuid()
1729
+ import_zod18.z.object({
1730
+ orgId: import_zod18.z.string().describe("Organization slug"),
1731
+ projectId: import_zod18.z.string().describe("Project ID"),
1732
+ id: import_zod18.z.string().uuid()
1520
1733
  }),
1521
- (params) => call(proj(params.projectId)["import-sources"][":id"].drift.$get({ param: { id: params.id } }))
1734
+ (params) => call(proj(params.orgId, params.projectId)["import-sources"][":id"].drift.$get({ param: { id: params.id } }))
1522
1735
  ),
1523
1736
  approveProposal: withSchema(
1524
- import_zod17.z.object({
1525
- projectId: import_zod17.z.string(),
1526
- id: import_zod17.z.string().uuid(),
1527
- proposalId: import_zod17.z.string().uuid()
1737
+ import_zod18.z.object({
1738
+ orgId: import_zod18.z.string().describe("Organization slug"),
1739
+ projectId: import_zod18.z.string().describe("Project ID"),
1740
+ id: import_zod18.z.string().uuid(),
1741
+ proposalId: import_zod18.z.string().uuid()
1528
1742
  }),
1529
1743
  (params) => call(
1530
- proj(params.projectId)["import-sources"][":id"]["drift-proposals"][":proposalId"].approve.$post({
1744
+ proj(params.orgId, params.projectId)["import-sources"][":id"]["drift-proposals"][":proposalId"].approve.$post({
1531
1745
  param: { id: params.id, proposalId: params.proposalId }
1532
1746
  })
1533
1747
  )
1534
1748
  ),
1535
1749
  rejectProposal: withSchema(
1536
- import_zod17.z.object({
1537
- projectId: import_zod17.z.string(),
1538
- id: import_zod17.z.string().uuid(),
1539
- proposalId: import_zod17.z.string().uuid()
1750
+ import_zod18.z.object({
1751
+ orgId: import_zod18.z.string().describe("Organization slug"),
1752
+ projectId: import_zod18.z.string().describe("Project ID"),
1753
+ id: import_zod18.z.string().uuid(),
1754
+ proposalId: import_zod18.z.string().uuid()
1540
1755
  }),
1541
1756
  (params) => call(
1542
- proj(params.projectId)["import-sources"][":id"]["drift-proposals"][":proposalId"].reject.$post({
1757
+ proj(params.orgId, params.projectId)["import-sources"][":id"]["drift-proposals"][":proposalId"].reject.$post({
1543
1758
  param: { id: params.id, proposalId: params.proposalId }
1544
1759
  })
1545
1760
  )
@@ -1548,7 +1763,7 @@ function createImportSourcesClient(proj) {
1548
1763
  }
1549
1764
 
1550
1765
  // src/admin.ts
1551
- var import_zod18 = require("zod");
1766
+ var import_zod19 = require("zod");
1552
1767
  async function rawRequest2(baseUrl, hcOpts, path, init = {}) {
1553
1768
  const fetchImpl = hcOpts?.fetch ?? fetch;
1554
1769
  const rawHeaders = hcOpts?.headers;
@@ -1581,14 +1796,14 @@ function createAdminClient(baseUrl, hcOpts) {
1581
1796
  * List super-admin audit events with optional filters.
1582
1797
  */
1583
1798
  list: withSchema(
1584
- import_zod18.z.object({
1585
- actor: import_zod18.z.string().optional().describe("Filter by actor user ID"),
1586
- action: import_zod18.z.string().optional().describe("Filter by action name"),
1587
- resourceKind: import_zod18.z.string().optional().describe("Filter by resource kind"),
1588
- since: import_zod18.z.string().optional().describe("ISO 8601 datetime lower bound"),
1589
- until: import_zod18.z.string().optional().describe("ISO 8601 datetime upper bound"),
1590
- limit: import_zod18.z.coerce.number().int().min(1).max(200).optional().describe("Max results (1-200)"),
1591
- offset: import_zod18.z.coerce.number().int().min(0).optional().describe("Pagination offset")
1799
+ import_zod19.z.object({
1800
+ actor: import_zod19.z.string().optional().describe("Filter by actor user ID"),
1801
+ action: import_zod19.z.string().optional().describe("Filter by action name"),
1802
+ resourceKind: import_zod19.z.string().optional().describe("Filter by resource kind"),
1803
+ since: import_zod19.z.string().optional().describe("ISO 8601 datetime lower bound"),
1804
+ until: import_zod19.z.string().optional().describe("ISO 8601 datetime upper bound"),
1805
+ limit: import_zod19.z.coerce.number().int().min(1).max(200).optional().describe("Max results (1-200)"),
1806
+ offset: import_zod19.z.coerce.number().int().min(0).optional().describe("Pagination offset")
1592
1807
  }),
1593
1808
  async (params) => {
1594
1809
  const qs = new URLSearchParams();
@@ -1612,7 +1827,7 @@ function createAdminClient(baseUrl, hcOpts) {
1612
1827
  * List all organizations across tenants with member + project counts.
1613
1828
  */
1614
1829
  list: withSchema(
1615
- import_zod18.z.object({}),
1830
+ import_zod19.z.object({}),
1616
1831
  async () => callRaw2(
1617
1832
  await rawRequest2(baseUrl, hcOpts, "/admin/orgs")
1618
1833
  )
@@ -1622,7 +1837,7 @@ function createAdminClient(baseUrl, hcOpts) {
1622
1837
  * Detail view: org fields + member list + project list.
1623
1838
  */
1624
1839
  get: withSchema(
1625
- import_zod18.z.object({ id: import_zod18.z.string().describe("Organization ID") }),
1840
+ import_zod19.z.object({ id: import_zod19.z.string().describe("Organization ID") }),
1626
1841
  async (params) => callRaw2(
1627
1842
  await rawRequest2(baseUrl, hcOpts, `/admin/orgs/${params.id}`)
1628
1843
  )
@@ -1632,7 +1847,7 @@ function createAdminClient(baseUrl, hcOpts) {
1632
1847
  * Set suspended_at = now(). Idempotent.
1633
1848
  */
1634
1849
  suspend: withSchema(
1635
- import_zod18.z.object({ id: import_zod18.z.string().describe("Organization ID") }),
1850
+ import_zod19.z.object({ id: import_zod19.z.string().describe("Organization ID") }),
1636
1851
  async (params) => callRaw2(
1637
1852
  await rawRequest2(baseUrl, hcOpts, `/admin/orgs/${params.id}/suspend`, {
1638
1853
  method: "POST"
@@ -1644,7 +1859,7 @@ function createAdminClient(baseUrl, hcOpts) {
1644
1859
  * Clear suspended_at.
1645
1860
  */
1646
1861
  unsuspend: withSchema(
1647
- import_zod18.z.object({ id: import_zod18.z.string().describe("Organization ID") }),
1862
+ import_zod19.z.object({ id: import_zod19.z.string().describe("Organization ID") }),
1648
1863
  async (params) => callRaw2(
1649
1864
  await rawRequest2(baseUrl, hcOpts, `/admin/orgs/${params.id}/unsuspend`, {
1650
1865
  method: "POST"
@@ -1660,7 +1875,7 @@ function createAdminClient(baseUrl, hcOpts) {
1660
1875
  * api tokens, and environments. Idempotent. Super-admin only.
1661
1876
  */
1662
1877
  nuke: withSchema(
1663
- import_zod18.z.object({ projectId: import_zod18.z.string().describe("Project ID to nuke") }),
1878
+ import_zod19.z.object({ projectId: import_zod19.z.string().describe("Project ID to nuke") }),
1664
1879
  async (params) => callRaw2(
1665
1880
  await rawRequest2(
1666
1881
  baseUrl,
@@ -1678,7 +1893,7 @@ function createAdminClient(baseUrl, hcOpts) {
1678
1893
  * all derived from single-table COUNT queries.
1679
1894
  */
1680
1895
  overview: withSchema(
1681
- import_zod18.z.object({}),
1896
+ import_zod19.z.object({}),
1682
1897
  async () => callRaw2(
1683
1898
  await rawRequest2(baseUrl, hcOpts, "/admin/metrics/overview")
1684
1899
  )
@@ -1693,7 +1908,7 @@ function createAdminClient(baseUrl, hcOpts) {
1693
1908
  * Requires super-admin.
1694
1909
  */
1695
1910
  list: withSchema(
1696
- import_zod18.z.object({}),
1911
+ import_zod19.z.object({}),
1697
1912
  async () => callRaw2(
1698
1913
  await rawRequest2(
1699
1914
  baseUrl,
@@ -1713,9 +1928,9 @@ var createClient = (baseUrl, options = {}) => {
1713
1928
  const headers = buildHeaders(opts.token);
1714
1929
  const fetchImpl = opts.fetch;
1715
1930
  const hcOpts = fetchImpl ? { headers, fetch: fetchImpl } : { headers };
1716
- const cloud = (0, import_client4.hc)(baseUrl, hcOpts);
1717
- const proj = (projectId) => (0, import_client4.hc)(`${baseUrl}/projects/${projectId}`, hcOpts);
1718
- const projEnv = (projectId, envName) => (0, import_client4.hc)(`${baseUrl}/projects/${projectId}/envs/${envName}`, hcOpts);
1931
+ const cloud = (0, import_client4.hc)(`${baseUrl}/api`, hcOpts);
1932
+ const proj = (orgId, projectId) => (0, import_client4.hc)(`${baseUrl}/api/${orgId}/${projectId}`, hcOpts);
1933
+ const projEnv = (orgId, projectId, envName) => (0, import_client4.hc)(`${baseUrl}/api/${orgId}/${projectId}/envs/${envName}`, hcOpts);
1719
1934
  const cells = createCellsClient(proj);
1720
1935
  const catalogRevisions = createCatalogRevisionsClient(proj);
1721
1936
  const exportCatalog = createExportCatalogFn(proj, projEnv);
@@ -1737,6 +1952,7 @@ var createClient = (baseUrl, options = {}) => {
1737
1952
  auditEvents: createAuditEventsClient(proj),
1738
1953
  driftEvents: createDriftEventsClient(projEnv),
1739
1954
  stats: createStatsClient(proj),
1955
+ graphViews: createGraphViewsClient(proj),
1740
1956
  notifications: createNotificationsClient(baseUrl, hcOpts),
1741
1957
  auditExport: createAuditExportClient(baseUrl, hcOpts),
1742
1958
  userPreferences: createUserPreferencesClient(baseUrl, hcOpts),