@alpic-ai/api 0.0.0-dev.gd40ea9c → 0.0.0-dev.gd4183b5

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.d.mts CHANGED
@@ -1,6 +1,5 @@
1
1
  import { z } from "zod";
2
2
  import { InferContractRouterInputs, InferContractRouterOutputs } from "@orpc/contract";
3
-
4
3
  //#region src/api.contract.d.ts
5
4
  type ApiContext = {
6
5
  request: Request & {
@@ -225,6 +224,919 @@ declare const contract: {
225
224
  v1: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<z.ZodObject<{
226
225
  environmentId: z.ZodString;
227
226
  token: z.ZodOptional<z.ZodString>;
227
+ settings: z.ZodOptional<z.ZodObject<{
228
+ installCommand: z.ZodOptional<z.ZodString>;
229
+ buildCommand: z.ZodOptional<z.ZodString>;
230
+ buildOutputDir: z.ZodOptional<z.ZodString>;
231
+ startCommand: z.ZodOptional<z.ZodString>;
232
+ transport: z.ZodEnum<{
233
+ stdio: "stdio";
234
+ sse: "sse";
235
+ streamablehttp: "streamablehttp";
236
+ }>;
237
+ }, z.core.$strip>>;
238
+ }, z.core.$strip>, z.ZodObject<{
239
+ id: z.ZodString;
240
+ status: z.ZodEnum<{
241
+ ongoing: "ongoing";
242
+ deployed: "deployed";
243
+ failed: "failed";
244
+ canceled: "canceled";
245
+ }>;
246
+ sourceRef: z.ZodNullable<z.ZodString>;
247
+ sourceCommitId: z.ZodNullable<z.ZodString>;
248
+ sourceCommitMessage: z.ZodNullable<z.ZodString>;
249
+ authorUsername: z.ZodNullable<z.ZodString>;
250
+ authorAvatarUrl: z.ZodNullable<z.ZodString>;
251
+ startedAt: z.ZodNullable<z.ZodCoercedDate<unknown>>;
252
+ completedAt: z.ZodNullable<z.ZodCoercedDate<unknown>>;
253
+ environmentId: z.ZodString;
254
+ environmentName: z.ZodString;
255
+ isCurrent: z.ZodBoolean;
256
+ deploymentPageUrl: z.ZodNullable<z.ZodURL>;
257
+ }, z.core.$strip>, import("@orpc/contract").MergedErrorMap<Record<never, never>, {
258
+ NOT_FOUND: {};
259
+ BAD_REQUEST: {};
260
+ CONFLICT: {};
261
+ }>, Record<never, never>>;
262
+ };
263
+ getLogs: {
264
+ v1: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<z.ZodObject<{
265
+ environmentId: z.ZodString;
266
+ since: z.ZodOptional<z.ZodString>;
267
+ until: z.ZodOptional<z.ZodString>;
268
+ limit: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
269
+ level: z.ZodOptional<z.ZodArray<z.ZodEnum<{
270
+ INFO: "INFO";
271
+ ERROR: "ERROR";
272
+ WARNING: "WARNING";
273
+ DEBUG: "DEBUG";
274
+ }>>>;
275
+ search: z.ZodOptional<z.ZodString>;
276
+ nextToken: z.ZodOptional<z.ZodString>;
277
+ }, z.core.$strip>, z.ZodObject<{
278
+ logs: z.ZodArray<z.ZodObject<{
279
+ timestamp: z.ZodCoercedDate<unknown>;
280
+ type: z.ZodEnum<{
281
+ INFO: "INFO";
282
+ ERROR: "ERROR";
283
+ WARNING: "WARNING";
284
+ DEBUG: "DEBUG";
285
+ START: "START";
286
+ END: "END";
287
+ }>;
288
+ requestId: z.ZodString;
289
+ content: z.ZodOptional<z.ZodString>;
290
+ method: z.ZodOptional<z.ZodString>;
291
+ durationInMs: z.ZodOptional<z.ZodNumber>;
292
+ }, z.core.$strip>>;
293
+ nextToken: z.ZodNullable<z.ZodString>;
294
+ }, z.core.$strip>, import("@orpc/contract").MergedErrorMap<Record<never, never>, {
295
+ NOT_FOUND: {};
296
+ BAD_REQUEST: {};
297
+ }>, Record<never, never>>;
298
+ };
299
+ getLatestLogs: {
300
+ v1: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<z.ZodObject<{
301
+ environmentId: z.ZodString;
302
+ limit: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
303
+ level: z.ZodOptional<z.ZodArray<z.ZodEnum<{
304
+ INFO: "INFO";
305
+ ERROR: "ERROR";
306
+ WARNING: "WARNING";
307
+ DEBUG: "DEBUG";
308
+ }>>>;
309
+ search: z.ZodOptional<z.ZodString>;
310
+ }, z.core.$strip>, z.ZodObject<{
311
+ logs: z.ZodArray<z.ZodObject<{
312
+ timestamp: z.ZodCoercedDate<unknown>;
313
+ type: z.ZodEnum<{
314
+ INFO: "INFO";
315
+ ERROR: "ERROR";
316
+ WARNING: "WARNING";
317
+ DEBUG: "DEBUG";
318
+ START: "START";
319
+ END: "END";
320
+ }>;
321
+ requestId: z.ZodString;
322
+ content: z.ZodOptional<z.ZodString>;
323
+ method: z.ZodOptional<z.ZodString>;
324
+ durationInMs: z.ZodOptional<z.ZodNumber>;
325
+ }, z.core.$strip>>;
326
+ }, z.core.$strip>, import("@orpc/contract").MergedErrorMap<Record<never, never>, {
327
+ NOT_FOUND: {};
328
+ BAD_REQUEST: {};
329
+ }>, Record<never, never>>;
330
+ };
331
+ };
332
+ environmentVariables: {
333
+ list: {
334
+ v1: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<z.ZodObject<{
335
+ environmentId: z.ZodString;
336
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
337
+ id: z.ZodString;
338
+ key: z.ZodString;
339
+ value: z.ZodString;
340
+ isSecret: z.ZodBoolean;
341
+ createdAt: z.ZodCoercedDate<unknown>;
342
+ }, z.core.$strip>>, import("@orpc/contract").MergedErrorMap<Record<never, never>, {
343
+ NOT_FOUND: {};
344
+ }>, Record<never, never>>;
345
+ };
346
+ create: {
347
+ v1: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<z.ZodObject<{
348
+ environmentId: z.ZodString;
349
+ environmentVariables: z.ZodArray<z.ZodObject<{
350
+ key: z.ZodString;
351
+ value: z.ZodString;
352
+ isSecret: z.ZodDefault<z.ZodBoolean>;
353
+ }, z.core.$strip>>;
354
+ }, z.core.$strip>, z.ZodObject<{
355
+ success: z.ZodLiteral<true>;
356
+ }, z.core.$strip>, import("@orpc/contract").MergedErrorMap<Record<never, never>, {
357
+ NOT_FOUND: {};
358
+ BAD_REQUEST: {};
359
+ }>, Record<never, never>>;
360
+ };
361
+ update: {
362
+ v1: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<z.ZodObject<{
363
+ environmentVariableId: z.ZodString;
364
+ key: z.ZodString;
365
+ value: z.ZodOptional<z.ZodString>;
366
+ isSecret: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
367
+ }, z.core.$strip>, z.ZodObject<{
368
+ success: z.ZodLiteral<true>;
369
+ }, z.core.$strip>, import("@orpc/contract").MergedErrorMap<Record<never, never>, {
370
+ NOT_FOUND: {};
371
+ BAD_REQUEST: {};
372
+ }>, Record<never, never>>;
373
+ };
374
+ delete: {
375
+ v1: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<z.ZodObject<{
376
+ environmentVariableId: z.ZodString;
377
+ }, z.core.$strip>, z.ZodObject<{
378
+ success: z.ZodLiteral<true>;
379
+ }, z.core.$strip>, import("@orpc/contract").MergedErrorMap<Record<never, never>, {
380
+ NOT_FOUND: {};
381
+ BAD_REQUEST: {};
382
+ }>, Record<never, never>>;
383
+ };
384
+ };
385
+ projects: {
386
+ update: {
387
+ v1: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<z.ZodObject<{
388
+ projectId: z.ZodString;
389
+ name: z.ZodOptional<z.ZodString>;
390
+ sourceRepository: z.ZodOptional<z.ZodNullable<z.ZodString>>;
391
+ }, z.core.$strip>, z.ZodObject<{
392
+ id: z.ZodString;
393
+ name: z.ZodString;
394
+ teamId: z.ZodString;
395
+ sourceRepository: z.ZodNullable<z.ZodString>;
396
+ runtime: z.ZodEnum<{
397
+ "python3.13": "python3.13";
398
+ "python3.14": "python3.14";
399
+ node22: "node22";
400
+ node24: "node24";
401
+ }>;
402
+ transport: z.ZodNullable<z.ZodEnum<{
403
+ stdio: "stdio";
404
+ sse: "sse";
405
+ streamablehttp: "streamablehttp";
406
+ }>>;
407
+ rootDirectory: z.ZodNullable<z.ZodString>;
408
+ buildCommand: z.ZodNullable<z.ZodString>;
409
+ buildOutputDir: z.ZodNullable<z.ZodString>;
410
+ installCommand: z.ZodNullable<z.ZodString>;
411
+ startCommand: z.ZodNullable<z.ZodString>;
412
+ createdAt: z.ZodCoercedDate<unknown>;
413
+ productionEnvironment: z.ZodNullable<z.ZodObject<{
414
+ id: z.ZodString;
415
+ name: z.ZodString;
416
+ mcpServerUrl: z.ZodString;
417
+ domains: z.ZodArray<z.ZodObject<{
418
+ domain: z.ZodString;
419
+ status: z.ZodEnum<{
420
+ ongoing: "ongoing";
421
+ deployed: "deployed";
422
+ failed: "failed";
423
+ }>;
424
+ createdAt: z.ZodCoercedDate<unknown>;
425
+ }, z.core.$strip>>;
426
+ latestDeployment: z.ZodNullable<z.ZodObject<{
427
+ id: z.ZodString;
428
+ status: z.ZodEnum<{
429
+ ongoing: "ongoing";
430
+ deployed: "deployed";
431
+ failed: "failed";
432
+ canceled: "canceled";
433
+ }>;
434
+ sourceCommitId: z.ZodNullable<z.ZodString>;
435
+ sourceCommitMessage: z.ZodNullable<z.ZodString>;
436
+ completedAt: z.ZodNullable<z.ZodCoercedDate<unknown>>;
437
+ }, z.core.$strip>>;
438
+ }, z.core.$strip>>;
439
+ environments: z.ZodArray<z.ZodObject<{
440
+ id: z.ZodString;
441
+ name: z.ZodString;
442
+ sourceBranch: z.ZodNullable<z.ZodString>;
443
+ mcpServerUrl: z.ZodString;
444
+ createdAt: z.ZodCoercedDate<unknown>;
445
+ projectId: z.ZodString;
446
+ latestDeployment: z.ZodNullable<z.ZodObject<{
447
+ id: z.ZodString;
448
+ status: z.ZodEnum<{
449
+ ongoing: "ongoing";
450
+ deployed: "deployed";
451
+ failed: "failed";
452
+ canceled: "canceled";
453
+ }>;
454
+ sourceCommitId: z.ZodNullable<z.ZodString>;
455
+ sourceCommitMessage: z.ZodNullable<z.ZodString>;
456
+ completedAt: z.ZodNullable<z.ZodCoercedDate<unknown>>;
457
+ }, z.core.$strip>>;
458
+ }, z.core.$strip>>;
459
+ }, z.core.$strip>, import("@orpc/contract").MergedErrorMap<Record<never, never>, {
460
+ NOT_FOUND: {};
461
+ BAD_REQUEST: {};
462
+ FORBIDDEN: {};
463
+ }>, Record<never, never>>;
464
+ };
465
+ get: {
466
+ v1: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<z.ZodObject<{
467
+ projectId: z.ZodString;
468
+ }, z.core.$strip>, z.ZodObject<{
469
+ id: z.ZodString;
470
+ name: z.ZodString;
471
+ teamId: z.ZodString;
472
+ sourceRepository: z.ZodNullable<z.ZodString>;
473
+ runtime: z.ZodEnum<{
474
+ "python3.13": "python3.13";
475
+ "python3.14": "python3.14";
476
+ node22: "node22";
477
+ node24: "node24";
478
+ }>;
479
+ transport: z.ZodNullable<z.ZodEnum<{
480
+ stdio: "stdio";
481
+ sse: "sse";
482
+ streamablehttp: "streamablehttp";
483
+ }>>;
484
+ rootDirectory: z.ZodNullable<z.ZodString>;
485
+ buildCommand: z.ZodNullable<z.ZodString>;
486
+ buildOutputDir: z.ZodNullable<z.ZodString>;
487
+ installCommand: z.ZodNullable<z.ZodString>;
488
+ startCommand: z.ZodNullable<z.ZodString>;
489
+ createdAt: z.ZodCoercedDate<unknown>;
490
+ productionEnvironment: z.ZodNullable<z.ZodObject<{
491
+ id: z.ZodString;
492
+ name: z.ZodString;
493
+ mcpServerUrl: z.ZodString;
494
+ domains: z.ZodArray<z.ZodObject<{
495
+ domain: z.ZodString;
496
+ status: z.ZodEnum<{
497
+ ongoing: "ongoing";
498
+ deployed: "deployed";
499
+ failed: "failed";
500
+ }>;
501
+ createdAt: z.ZodCoercedDate<unknown>;
502
+ }, z.core.$strip>>;
503
+ latestDeployment: z.ZodNullable<z.ZodObject<{
504
+ id: z.ZodString;
505
+ status: z.ZodEnum<{
506
+ ongoing: "ongoing";
507
+ deployed: "deployed";
508
+ failed: "failed";
509
+ canceled: "canceled";
510
+ }>;
511
+ sourceCommitId: z.ZodNullable<z.ZodString>;
512
+ sourceCommitMessage: z.ZodNullable<z.ZodString>;
513
+ completedAt: z.ZodNullable<z.ZodCoercedDate<unknown>>;
514
+ }, z.core.$strip>>;
515
+ }, z.core.$strip>>;
516
+ environments: z.ZodArray<z.ZodObject<{
517
+ id: z.ZodString;
518
+ name: z.ZodString;
519
+ sourceBranch: z.ZodNullable<z.ZodString>;
520
+ mcpServerUrl: z.ZodString;
521
+ createdAt: z.ZodCoercedDate<unknown>;
522
+ projectId: z.ZodString;
523
+ latestDeployment: z.ZodNullable<z.ZodObject<{
524
+ id: z.ZodString;
525
+ status: z.ZodEnum<{
526
+ ongoing: "ongoing";
527
+ deployed: "deployed";
528
+ failed: "failed";
529
+ canceled: "canceled";
530
+ }>;
531
+ sourceCommitId: z.ZodNullable<z.ZodString>;
532
+ sourceCommitMessage: z.ZodNullable<z.ZodString>;
533
+ completedAt: z.ZodNullable<z.ZodCoercedDate<unknown>>;
534
+ }, z.core.$strip>>;
535
+ }, z.core.$strip>>;
536
+ }, z.core.$strip>, import("@orpc/contract").MergedErrorMap<Record<never, never>, {
537
+ NOT_FOUND: {};
538
+ }>, Record<never, never>>;
539
+ };
540
+ list: {
541
+ v1: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<z.ZodOptional<z.ZodObject<{
542
+ teamId: z.ZodOptional<z.ZodString>;
543
+ }, z.core.$strip>>, z.ZodArray<z.ZodObject<{
544
+ id: z.ZodString;
545
+ name: z.ZodString;
546
+ teamId: z.ZodString;
547
+ sourceRepository: z.ZodNullable<z.ZodString>;
548
+ runtime: z.ZodEnum<{
549
+ "python3.13": "python3.13";
550
+ "python3.14": "python3.14";
551
+ node22: "node22";
552
+ node24: "node24";
553
+ }>;
554
+ transport: z.ZodNullable<z.ZodEnum<{
555
+ stdio: "stdio";
556
+ sse: "sse";
557
+ streamablehttp: "streamablehttp";
558
+ }>>;
559
+ rootDirectory: z.ZodNullable<z.ZodString>;
560
+ buildCommand: z.ZodNullable<z.ZodString>;
561
+ buildOutputDir: z.ZodNullable<z.ZodString>;
562
+ installCommand: z.ZodNullable<z.ZodString>;
563
+ startCommand: z.ZodNullable<z.ZodString>;
564
+ createdAt: z.ZodCoercedDate<unknown>;
565
+ productionEnvironment: z.ZodNullable<z.ZodObject<{
566
+ id: z.ZodString;
567
+ name: z.ZodString;
568
+ mcpServerUrl: z.ZodString;
569
+ domains: z.ZodArray<z.ZodObject<{
570
+ domain: z.ZodString;
571
+ status: z.ZodEnum<{
572
+ ongoing: "ongoing";
573
+ deployed: "deployed";
574
+ failed: "failed";
575
+ }>;
576
+ createdAt: z.ZodCoercedDate<unknown>;
577
+ }, z.core.$strip>>;
578
+ latestDeployment: z.ZodNullable<z.ZodObject<{
579
+ id: z.ZodString;
580
+ status: z.ZodEnum<{
581
+ ongoing: "ongoing";
582
+ deployed: "deployed";
583
+ failed: "failed";
584
+ canceled: "canceled";
585
+ }>;
586
+ sourceCommitId: z.ZodNullable<z.ZodString>;
587
+ sourceCommitMessage: z.ZodNullable<z.ZodString>;
588
+ completedAt: z.ZodNullable<z.ZodCoercedDate<unknown>>;
589
+ }, z.core.$strip>>;
590
+ }, z.core.$strip>>;
591
+ environments: z.ZodArray<z.ZodObject<{
592
+ id: z.ZodString;
593
+ name: z.ZodString;
594
+ sourceBranch: z.ZodNullable<z.ZodString>;
595
+ mcpServerUrl: z.ZodString;
596
+ createdAt: z.ZodCoercedDate<unknown>;
597
+ projectId: z.ZodString;
598
+ latestDeployment: z.ZodNullable<z.ZodObject<{
599
+ id: z.ZodString;
600
+ status: z.ZodEnum<{
601
+ ongoing: "ongoing";
602
+ deployed: "deployed";
603
+ failed: "failed";
604
+ canceled: "canceled";
605
+ }>;
606
+ sourceCommitId: z.ZodNullable<z.ZodString>;
607
+ sourceCommitMessage: z.ZodNullable<z.ZodString>;
608
+ completedAt: z.ZodNullable<z.ZodCoercedDate<unknown>>;
609
+ }, z.core.$strip>>;
610
+ }, z.core.$strip>>;
611
+ }, z.core.$strip>>, import("@orpc/contract").MergedErrorMap<Record<never, never>, {
612
+ NOT_FOUND: {};
613
+ BAD_REQUEST: {};
614
+ }>, Record<never, never>>;
615
+ };
616
+ create: {
617
+ v1: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<z.ZodObject<{
618
+ teamId: z.ZodOptional<z.ZodString>;
619
+ name: z.ZodString;
620
+ sourceRepository: z.ZodOptional<z.ZodString>;
621
+ branchName: z.ZodOptional<z.ZodString>;
622
+ runtime: z.ZodEnum<{
623
+ "python3.13": "python3.13";
624
+ "python3.14": "python3.14";
625
+ node22: "node22";
626
+ node24: "node24";
627
+ }>;
628
+ transport: z.ZodOptional<z.ZodEnum<{
629
+ stdio: "stdio";
630
+ sse: "sse";
631
+ streamablehttp: "streamablehttp";
632
+ }>>;
633
+ rootDirectory: z.ZodOptional<z.ZodString>;
634
+ settings: z.ZodDefault<z.ZodObject<{
635
+ installCommand: z.ZodOptional<z.ZodString>;
636
+ buildCommand: z.ZodOptional<z.ZodString>;
637
+ buildOutputDir: z.ZodOptional<z.ZodString>;
638
+ startCommand: z.ZodOptional<z.ZodString>;
639
+ }, z.core.$strip>>;
640
+ environmentVariables: z.ZodDefault<z.ZodArray<z.ZodObject<{
641
+ key: z.ZodString;
642
+ value: z.ZodString;
643
+ isSecret: z.ZodDefault<z.ZodBoolean>;
644
+ }, z.core.$strip>>>;
645
+ }, z.core.$strip>, z.ZodObject<{
646
+ id: z.ZodString;
647
+ name: z.ZodString;
648
+ teamId: z.ZodString;
649
+ environments: z.ZodArray<z.ZodObject<{
650
+ id: z.ZodString;
651
+ name: z.ZodString;
652
+ }, z.core.$strip>>;
653
+ productionEnvironment: z.ZodNullable<z.ZodObject<{
654
+ id: z.ZodString;
655
+ name: z.ZodString;
656
+ }, z.core.$strip>>;
657
+ sourceRepository: z.ZodNullable<z.ZodString>;
658
+ runtime: z.ZodEnum<{
659
+ "python3.13": "python3.13";
660
+ "python3.14": "python3.14";
661
+ node22: "node22";
662
+ node24: "node24";
663
+ }>;
664
+ transport: z.ZodNullable<z.ZodEnum<{
665
+ stdio: "stdio";
666
+ sse: "sse";
667
+ streamablehttp: "streamablehttp";
668
+ }>>;
669
+ rootDirectory: z.ZodNullable<z.ZodString>;
670
+ buildCommand: z.ZodNullable<z.ZodString>;
671
+ buildOutputDir: z.ZodNullable<z.ZodString>;
672
+ installCommand: z.ZodNullable<z.ZodString>;
673
+ startCommand: z.ZodNullable<z.ZodString>;
674
+ createdAt: z.ZodCoercedDate<unknown>;
675
+ }, z.core.$strip>, import("@orpc/contract").MergedErrorMap<Record<never, never>, {
676
+ NOT_FOUND: {};
677
+ BAD_REQUEST: {};
678
+ FORBIDDEN: {};
679
+ }>, Record<never, never>>;
680
+ };
681
+ delete: {
682
+ v1: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<z.ZodObject<{
683
+ projectId: z.ZodString;
684
+ }, z.core.$strip>, z.ZodObject<{
685
+ success: z.ZodLiteral<true>;
686
+ }, z.core.$strip>, import("@orpc/contract").MergedErrorMap<Record<never, never>, {
687
+ NOT_FOUND: {};
688
+ }>, Record<never, never>>;
689
+ };
690
+ };
691
+ playground: {
692
+ get: {
693
+ v1: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<z.ZodObject<{
694
+ environmentId: z.ZodString;
695
+ }, z.core.$strip>, z.ZodObject<{
696
+ isPlaygroundEnabled: z.ZodBoolean;
697
+ serverMetadata: z.ZodNullable<z.ZodObject<{
698
+ name: z.ZodString;
699
+ description: z.ZodString;
700
+ headers: z.ZodArray<z.ZodObject<{
701
+ name: z.ZodString;
702
+ description: z.ZodString;
703
+ isRequired: z.ZodBoolean;
704
+ isSecret: z.ZodBoolean;
705
+ }, z.core.$strip>>;
706
+ examplePrompts: z.ZodArray<z.ZodObject<{
707
+ title: z.ZodString;
708
+ prompt: z.ZodString;
709
+ }, z.core.$strip>>;
710
+ }, z.core.$strip>>;
711
+ }, z.core.$strip>, import("@orpc/contract").MergedErrorMap<Record<never, never>, {
712
+ NOT_FOUND: {};
713
+ }>, Record<never, never>>;
714
+ };
715
+ upsert: {
716
+ v1: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<z.ZodObject<{
717
+ environmentId: z.ZodString;
718
+ isPlaygroundEnabled: z.ZodOptional<z.ZodBoolean>;
719
+ name: z.ZodOptional<z.ZodString>;
720
+ description: z.ZodOptional<z.ZodString>;
721
+ headers: z.ZodOptional<z.ZodArray<z.ZodObject<{
722
+ name: z.ZodString;
723
+ description: z.ZodString;
724
+ isRequired: z.ZodDefault<z.ZodBoolean>;
725
+ isSecret: z.ZodDefault<z.ZodBoolean>;
726
+ }, z.core.$strip>>>;
727
+ examplePrompts: z.ZodOptional<z.ZodArray<z.ZodObject<{
728
+ title: z.ZodString;
729
+ prompt: z.ZodString;
730
+ }, z.core.$strip>>>;
731
+ }, z.core.$strip>, z.ZodObject<{
732
+ isPlaygroundEnabled: z.ZodBoolean;
733
+ serverMetadata: z.ZodNullable<z.ZodObject<{
734
+ name: z.ZodString;
735
+ description: z.ZodString;
736
+ headers: z.ZodArray<z.ZodObject<{
737
+ name: z.ZodString;
738
+ description: z.ZodString;
739
+ isRequired: z.ZodBoolean;
740
+ isSecret: z.ZodBoolean;
741
+ }, z.core.$strip>>;
742
+ examplePrompts: z.ZodArray<z.ZodObject<{
743
+ title: z.ZodString;
744
+ prompt: z.ZodString;
745
+ }, z.core.$strip>>;
746
+ }, z.core.$strip>>;
747
+ }, z.core.$strip>, import("@orpc/contract").MergedErrorMap<Record<never, never>, {
748
+ NOT_FOUND: {};
749
+ BAD_REQUEST: {};
750
+ }>, Record<never, never>>;
751
+ };
752
+ };
753
+ tunnels: {
754
+ getTicket: {
755
+ v1: import("@orpc/contract").ContractProcedureBuilderWithOutput<import("@orpc/contract").Schema<unknown, unknown>, z.ZodObject<{
756
+ subdomain: z.ZodString;
757
+ ticket: z.ZodString;
758
+ tunnelHost: z.ZodString;
759
+ }, z.core.$strip>, import("@orpc/contract").MergedErrorMap<Record<never, never>, {
760
+ FORBIDDEN: {};
761
+ }>, Record<never, never>>;
762
+ };
763
+ };
764
+ distribution: {
765
+ publish: {
766
+ v1: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<z.ZodObject<{
767
+ projectId: z.ZodString;
768
+ domain: z.ZodString;
769
+ title: z.ZodString;
770
+ description: z.ZodString;
771
+ websiteUrl: z.ZodOptional<z.ZodURL>;
772
+ iconSrc: z.ZodOptional<z.ZodURL>;
773
+ dryRun: z.ZodOptional<z.ZodBoolean>;
774
+ }, z.core.$strip>, z.ZodObject<{
775
+ serverFields: z.ZodObject<{
776
+ $schema: z.ZodString;
777
+ name: z.ZodString;
778
+ description: z.ZodString;
779
+ version: z.ZodOptional<z.ZodString>;
780
+ title: z.ZodOptional<z.ZodString>;
781
+ websiteUrl: z.ZodOptional<z.ZodURL>;
782
+ icons: z.ZodOptional<z.ZodArray<z.ZodObject<{
783
+ src: z.ZodURL;
784
+ mimeType: z.ZodOptional<z.ZodString>;
785
+ sizes: z.ZodOptional<z.ZodArray<z.ZodString>>;
786
+ }, z.core.$strip>>>;
787
+ remotes: z.ZodOptional<z.ZodArray<z.ZodObject<{
788
+ type: z.ZodString;
789
+ url: z.ZodOptional<z.ZodURL>;
790
+ headers: z.ZodOptional<z.ZodArray<z.ZodObject<{
791
+ name: z.ZodString;
792
+ description: z.ZodString;
793
+ isRequired: z.ZodOptional<z.ZodBoolean>;
794
+ isSecret: z.ZodOptional<z.ZodBoolean>;
795
+ }, z.core.$strip>>>;
796
+ }, z.core.$strip>>>;
797
+ }, z.core.$strip>;
798
+ }, z.core.$strip>, import("@orpc/contract").MergedErrorMap<Record<never, never>, {
799
+ NOT_FOUND: {};
800
+ BAD_REQUEST: {};
801
+ }>, Record<never, never>>;
802
+ };
803
+ get: {
804
+ v1: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<z.ZodObject<{
805
+ projectId: z.ZodString;
806
+ domain: z.ZodString;
807
+ }, z.core.$strip>, z.ZodObject<{
808
+ serverFields: z.ZodObject<{
809
+ $schema: z.ZodString;
810
+ name: z.ZodString;
811
+ description: z.ZodString;
812
+ version: z.ZodOptional<z.ZodString>;
813
+ title: z.ZodOptional<z.ZodString>;
814
+ websiteUrl: z.ZodOptional<z.ZodURL>;
815
+ icons: z.ZodOptional<z.ZodArray<z.ZodObject<{
816
+ src: z.ZodURL;
817
+ mimeType: z.ZodOptional<z.ZodString>;
818
+ sizes: z.ZodOptional<z.ZodArray<z.ZodString>>;
819
+ }, z.core.$strip>>>;
820
+ remotes: z.ZodOptional<z.ZodArray<z.ZodObject<{
821
+ type: z.ZodString;
822
+ url: z.ZodOptional<z.ZodURL>;
823
+ headers: z.ZodOptional<z.ZodArray<z.ZodObject<{
824
+ name: z.ZodString;
825
+ description: z.ZodString;
826
+ isRequired: z.ZodOptional<z.ZodBoolean>;
827
+ isSecret: z.ZodOptional<z.ZodBoolean>;
828
+ }, z.core.$strip>>>;
829
+ }, z.core.$strip>>>;
830
+ }, z.core.$strip>;
831
+ }, z.core.$strip>, import("@orpc/contract").MergedErrorMap<Record<never, never>, {
832
+ NOT_FOUND: {};
833
+ BAD_REQUEST: {};
834
+ }>, Record<never, never>>;
835
+ };
836
+ };
837
+ beacon: {
838
+ create: {
839
+ v1: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<z.ZodObject<{
840
+ targetUrl: z.ZodURL;
841
+ teamId: z.ZodOptional<z.ZodString>;
842
+ projectId: z.ZodOptional<z.ZodString>;
843
+ excludeCategories: z.ZodOptional<z.ZodArray<z.ZodEnum<{
844
+ connectivity: "connectivity";
845
+ "tool-metadata": "tool-metadata";
846
+ "resource-metadata": "resource-metadata";
847
+ performance: "performance";
848
+ e2e: "e2e";
849
+ }>>>;
850
+ }, z.core.$strip>, z.ZodObject<{
851
+ id: z.ZodString;
852
+ }, z.core.$strip>, import("@orpc/contract").MergedErrorMap<Record<never, never>, {
853
+ NOT_FOUND: {};
854
+ BAD_REQUEST: {};
855
+ DNS_RESOLUTION_FAILED: {
856
+ status: number;
857
+ };
858
+ }>, Record<never, never>>;
859
+ };
860
+ get: {
861
+ v1: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<z.ZodObject<{
862
+ auditId: z.ZodString;
863
+ }, z.core.$strip>, z.ZodObject<{
864
+ id: z.ZodString;
865
+ targetUrl: z.ZodString;
866
+ status: z.ZodEnum<{
867
+ failed: "failed";
868
+ pending: "pending";
869
+ partial: "partial";
870
+ completed: "completed";
871
+ }>;
872
+ durationMs: z.ZodNullable<z.ZodNumber>;
873
+ createdAt: z.ZodCoercedDate<unknown>;
874
+ report: z.ZodNullable<z.ZodObject<{
875
+ schemaVersion: z.ZodString;
876
+ auditId: z.ZodString;
877
+ targetUrl: z.ZodString;
878
+ startedAt: z.ZodString;
879
+ completedAt: z.ZodString;
880
+ durationMs: z.ZodNumber;
881
+ results: z.ZodArray<z.ZodObject<{
882
+ checkId: z.ZodString;
883
+ checkName: z.ZodString;
884
+ description: z.ZodString;
885
+ status: z.ZodEnum<{
886
+ pending: "pending";
887
+ pass: "pass";
888
+ fail: "fail";
889
+ skip: "skip";
890
+ }>;
891
+ message: z.ZodString;
892
+ skipReason: z.ZodOptional<z.ZodString>;
893
+ severity: z.ZodEnum<{
894
+ error: "error";
895
+ warning: "warning";
896
+ info: "info";
897
+ }>;
898
+ category: z.ZodEnum<{
899
+ connectivity: "connectivity";
900
+ "tool-metadata": "tool-metadata";
901
+ "resource-metadata": "resource-metadata";
902
+ performance: "performance";
903
+ e2e: "e2e";
904
+ }>;
905
+ scope: z.ZodEnum<{
906
+ server: "server";
907
+ view: "view";
908
+ }>;
909
+ platforms: z.ZodOptional<z.ZodReadonly<z.ZodArray<z.ZodEnum<{
910
+ chatgpt: "chatgpt";
911
+ claudeai: "claudeai";
912
+ }>>>>;
913
+ durationMs: z.ZodNumber;
914
+ details: z.ZodOptional<z.ZodArray<z.ZodObject<{
915
+ label: z.ZodString;
916
+ value: z.ZodOptional<z.ZodString>;
917
+ }, z.core.$strip>>>;
918
+ hint: z.ZodOptional<z.ZodObject<{
919
+ text: z.ZodString;
920
+ }, z.core.$strip>>;
921
+ }, z.core.$strip>>;
922
+ requiresAuth: z.ZodBoolean;
923
+ hasViewSupport: z.ZodBoolean;
924
+ viewPlatforms: z.ZodOptional<z.ZodReadonly<z.ZodArray<z.ZodEnum<{
925
+ chatgpt: "chatgpt";
926
+ claudeai: "claudeai";
927
+ }>>>>;
928
+ isReadyForPlatform: z.ZodRecord<z.ZodEnum<{
929
+ chatgpt: "chatgpt";
930
+ claudeai: "claudeai";
931
+ }>, z.ZodBoolean>;
932
+ widgetScreenshotKeys: z.ZodObject<{
933
+ chatgpt: z.ZodOptional<z.ZodString>;
934
+ claudeai: z.ZodOptional<z.ZodString>;
935
+ }, z.core.$strip>;
936
+ widgetScreenshots: z.ZodObject<{
937
+ chatgpt: z.ZodOptional<z.ZodObject<{
938
+ url: z.ZodString;
939
+ }, z.core.$strip>>;
940
+ claudeai: z.ZodOptional<z.ZodObject<{
941
+ url: z.ZodString;
942
+ }, z.core.$strip>>;
943
+ }, z.core.$strip>;
944
+ }, z.core.$strip>>;
945
+ }, z.core.$strip>, import("@orpc/contract").MergedErrorMap<Record<never, never>, {
946
+ NOT_FOUND: {};
947
+ }>, Record<never, never>>;
948
+ };
949
+ };
950
+ };
951
+ declare const contractForDocs: {
952
+ deployments: {
953
+ list: {
954
+ v1: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<z.ZodObject<{
955
+ projectId: z.ZodString;
956
+ status: z.ZodOptional<z.ZodArray<z.ZodEnum<{
957
+ ongoing: "ongoing";
958
+ deployed: "deployed";
959
+ failed: "failed";
960
+ canceled: "canceled";
961
+ }>>>;
962
+ environmentId: z.ZodOptional<z.ZodString>;
963
+ }, z.core.$strip>, z.ZodArray<z.ZodObject<{
964
+ id: z.ZodString;
965
+ status: z.ZodEnum<{
966
+ ongoing: "ongoing";
967
+ deployed: "deployed";
968
+ failed: "failed";
969
+ canceled: "canceled";
970
+ }>;
971
+ sourceRef: z.ZodNullable<z.ZodString>;
972
+ sourceCommitId: z.ZodNullable<z.ZodString>;
973
+ sourceCommitMessage: z.ZodNullable<z.ZodString>;
974
+ authorUsername: z.ZodNullable<z.ZodString>;
975
+ authorAvatarUrl: z.ZodNullable<z.ZodString>;
976
+ startedAt: z.ZodNullable<z.ZodCoercedDate<unknown>>;
977
+ completedAt: z.ZodNullable<z.ZodCoercedDate<unknown>>;
978
+ environmentId: z.ZodString;
979
+ environmentName: z.ZodString;
980
+ isCurrent: z.ZodBoolean;
981
+ deploymentPageUrl: z.ZodNullable<z.ZodURL>;
982
+ }, z.core.$strip>>, import("@orpc/contract").MergedErrorMap<Record<never, never>, {
983
+ NOT_FOUND: {};
984
+ }>, Record<never, never>>;
985
+ };
986
+ get: {
987
+ v1: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<z.ZodObject<{
988
+ deploymentId: z.ZodString;
989
+ }, z.core.$strip>, z.ZodObject<{
990
+ id: z.ZodString;
991
+ status: z.ZodEnum<{
992
+ ongoing: "ongoing";
993
+ deployed: "deployed";
994
+ failed: "failed";
995
+ canceled: "canceled";
996
+ }>;
997
+ sourceRef: z.ZodNullable<z.ZodString>;
998
+ sourceCommitId: z.ZodNullable<z.ZodString>;
999
+ sourceCommitMessage: z.ZodNullable<z.ZodString>;
1000
+ authorUsername: z.ZodNullable<z.ZodString>;
1001
+ authorAvatarUrl: z.ZodNullable<z.ZodString>;
1002
+ startedAt: z.ZodNullable<z.ZodCoercedDate<unknown>>;
1003
+ completedAt: z.ZodNullable<z.ZodCoercedDate<unknown>>;
1004
+ environmentId: z.ZodString;
1005
+ environmentName: z.ZodString;
1006
+ isCurrent: z.ZodBoolean;
1007
+ deploymentPageUrl: z.ZodNullable<z.ZodURL>;
1008
+ }, z.core.$strip>, import("@orpc/contract").MergedErrorMap<Record<never, never>, {
1009
+ NOT_FOUND: {};
1010
+ }>, Record<never, never>>;
1011
+ };
1012
+ getLogs: {
1013
+ v1: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<z.ZodObject<{
1014
+ deploymentId: z.ZodString;
1015
+ }, z.core.$strip>, z.ZodObject<{
1016
+ logs: z.ZodArray<z.ZodObject<{
1017
+ timestamp: z.ZodOptional<z.ZodCoercedDate<unknown>>;
1018
+ content: z.ZodOptional<z.ZodString>;
1019
+ }, z.core.$strip>>;
1020
+ hasMoreLogs: z.ZodBoolean;
1021
+ }, z.core.$strip>, import("@orpc/contract").MergedErrorMap<Record<never, never>, {
1022
+ NOT_FOUND: {};
1023
+ }>, Record<never, never>>;
1024
+ };
1025
+ };
1026
+ teams: {
1027
+ list: {
1028
+ v1: import("@orpc/contract").ContractProcedureBuilderWithOutput<import("@orpc/contract").Schema<unknown, unknown>, z.ZodArray<z.ZodObject<{
1029
+ id: z.ZodString;
1030
+ name: z.ZodString;
1031
+ createdAt: z.ZodCoercedDate<unknown>;
1032
+ hasStripeAccount: z.ZodBoolean;
1033
+ }, z.core.$strip>>, Record<never, never>, Record<never, never>>;
1034
+ };
1035
+ };
1036
+ analytics: {
1037
+ get: {
1038
+ v1: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<z.ZodObject<{
1039
+ projectId: z.ZodString;
1040
+ startTimestamp: z.ZodCoercedNumber<unknown>;
1041
+ endTimestamp: z.ZodCoercedNumber<unknown>;
1042
+ timeZone: z.ZodString;
1043
+ }, z.core.$strip>, z.ZodObject<{
1044
+ metadata: z.ZodObject<{
1045
+ startTimestamp: z.ZodNumber;
1046
+ endTimestamp: z.ZodNumber;
1047
+ timeZone: z.ZodString;
1048
+ startDate: z.ZodCoercedDate<unknown>;
1049
+ interval: z.ZodString;
1050
+ }, z.core.$strip>;
1051
+ timeSeries: z.ZodObject<{
1052
+ sessions_count: z.ZodArray<z.ZodObject<{
1053
+ timestamp: z.ZodNumber;
1054
+ categories: z.ZodRecord<z.ZodString, z.ZodUnknown>;
1055
+ }, z.core.$strip>>;
1056
+ requests_count: z.ZodArray<z.ZodObject<{
1057
+ timestamp: z.ZodNumber;
1058
+ categories: z.ZodRecord<z.ZodString, z.ZodUnknown>;
1059
+ }, z.core.$strip>>;
1060
+ requests_latency_mean: z.ZodArray<z.ZodObject<{
1061
+ timestamp: z.ZodNumber;
1062
+ categories: z.ZodRecord<z.ZodString, z.ZodUnknown>;
1063
+ }, z.core.$strip>>;
1064
+ tool_errors: z.ZodArray<z.ZodObject<{
1065
+ timestamp: z.ZodNumber;
1066
+ categories: z.ZodRecord<z.ZodString, z.ZodUnknown>;
1067
+ }, z.core.$strip>>;
1068
+ mcp_errors: z.ZodArray<z.ZodObject<{
1069
+ timestamp: z.ZodNumber;
1070
+ categories: z.ZodRecord<z.ZodString, z.ZodUnknown>;
1071
+ }, z.core.$strip>>;
1072
+ output_token_mean: z.ZodArray<z.ZodObject<{
1073
+ timestamp: z.ZodNumber;
1074
+ categories: z.ZodRecord<z.ZodString, z.ZodUnknown>;
1075
+ }, z.core.$strip>>;
1076
+ task_count: z.ZodArray<z.ZodObject<{
1077
+ timestamp: z.ZodNumber;
1078
+ categories: z.ZodRecord<z.ZodString, z.ZodUnknown>;
1079
+ }, z.core.$strip>>;
1080
+ }, z.core.$strip>;
1081
+ }, z.core.$strip>, import("@orpc/contract").MergedErrorMap<Record<never, never>, {
1082
+ NOT_FOUND: {};
1083
+ BAD_REQUEST: {};
1084
+ }>, Record<never, never>>;
1085
+ };
1086
+ };
1087
+ environments: {
1088
+ create: {
1089
+ v1: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<z.ZodObject<{
1090
+ projectId: z.ZodString;
1091
+ name: z.ZodString;
1092
+ sourceBranch: z.ZodString;
1093
+ environmentVariables: z.ZodDefault<z.ZodArray<z.ZodObject<{
1094
+ key: z.ZodString;
1095
+ value: z.ZodString;
1096
+ isSecret: z.ZodDefault<z.ZodBoolean>;
1097
+ }, z.core.$strip>>>;
1098
+ }, z.core.$strip>, z.ZodObject<{
1099
+ id: z.ZodString;
1100
+ name: z.ZodString;
1101
+ sourceBranch: z.ZodNullable<z.ZodString>;
1102
+ urls: z.ZodArray<z.ZodURL>;
1103
+ createdAt: z.ZodCoercedDate<unknown>;
1104
+ projectId: z.ZodString;
1105
+ }, z.core.$strip>, import("@orpc/contract").MergedErrorMap<Record<never, never>, {
1106
+ NOT_FOUND: {};
1107
+ BAD_REQUEST: {};
1108
+ }>, Record<never, never>>;
1109
+ };
1110
+ get: {
1111
+ v1: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<z.ZodObject<{
1112
+ environmentId: z.ZodString;
1113
+ }, z.core.$strip>, z.ZodObject<{
1114
+ id: z.ZodString;
1115
+ name: z.ZodString;
1116
+ sourceBranch: z.ZodNullable<z.ZodString>;
1117
+ mcpServerUrl: z.ZodString;
1118
+ domains: z.ZodArray<z.ZodCustomStringFormat<"hostname">>;
1119
+ createdAt: z.ZodCoercedDate<unknown>;
1120
+ projectId: z.ZodString;
1121
+ }, z.core.$strip>, import("@orpc/contract").MergedErrorMap<Record<never, never>, {
1122
+ NOT_FOUND: {};
1123
+ }>, Record<never, never>>;
1124
+ };
1125
+ deploy: {
1126
+ v1: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<z.ZodObject<{
1127
+ environmentId: z.ZodString;
1128
+ token: z.ZodOptional<z.ZodString>;
1129
+ settings: z.ZodOptional<z.ZodObject<{
1130
+ installCommand: z.ZodOptional<z.ZodString>;
1131
+ buildCommand: z.ZodOptional<z.ZodString>;
1132
+ buildOutputDir: z.ZodOptional<z.ZodString>;
1133
+ startCommand: z.ZodOptional<z.ZodString>;
1134
+ transport: z.ZodEnum<{
1135
+ stdio: "stdio";
1136
+ sse: "sse";
1137
+ streamablehttp: "streamablehttp";
1138
+ }>;
1139
+ }, z.core.$strip>>;
228
1140
  }, z.core.$strip>, z.ZodObject<{
229
1141
  id: z.ZodString;
230
1142
  status: z.ZodEnum<{
@@ -247,6 +1159,7 @@ declare const contract: {
247
1159
  }, z.core.$strip>, import("@orpc/contract").MergedErrorMap<Record<never, never>, {
248
1160
  NOT_FOUND: {};
249
1161
  BAD_REQUEST: {};
1162
+ CONFLICT: {};
250
1163
  }>, Record<never, never>>;
251
1164
  };
252
1165
  getLogs: {
@@ -1030,4 +1943,4 @@ declare const serverFieldsSchema: z.ZodObject<{
1030
1943
  }, z.core.$strip>>>;
1031
1944
  }, z.core.$strip>;
1032
1945
  //#endregion
1033
- export { AUTH_SCOPE_ANY, AUTH_SCOPE_USER, ApiContext, AuthScope, PLATFORM_LABELS, type Platform, RouteAuthMeta, RouterInput, RouterOutput, Runtime, Transport, buildSettingsSchema, contract, createEnvironmentContractV1, deploymentStatusSchema, environmentVariableSchema, environmentVariablesSchema, playgroundExamplePromptSchema, playgroundHeaderSchema, runtimeSchema, serverFieldsSchema, transportSchema, updateEnvironmentVariableSchema };
1946
+ export { AUTH_SCOPE_ANY, AUTH_SCOPE_USER, ApiContext, AuthScope, PLATFORM_LABELS, type Platform, RouteAuthMeta, RouterInput, RouterOutput, Runtime, Transport, buildSettingsSchema, contract, contractForDocs, createEnvironmentContractV1, deploymentStatusSchema, environmentVariableSchema, environmentVariablesSchema, playgroundExamplePromptSchema, playgroundHeaderSchema, runtimeSchema, serverFieldsSchema, transportSchema, updateEnvironmentVariableSchema };
package/dist/index.mjs CHANGED
@@ -2,7 +2,7 @@ import { z } from "zod";
2
2
  import * as z$1 from "zod/v4";
3
3
  import { oc } from "@orpc/contract";
4
4
  import ms from "ms";
5
- //#region ../../node_modules/.pnpm/@modelcontextprotocol+sdk@1.29.0_zod@4.4.3/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/auth.js
5
+ //#region ../../node_modules/.pnpm/@modelcontextprotocol+sdk@1.29.0_supports-color@7.2.0_zod@4.4.3/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/auth.js
6
6
  /**
7
7
  * Reusable URL validation that disallows javascript: scheme
8
8
  */
@@ -169,11 +169,21 @@ z$1.object({
169
169
  token: z$1.string(),
170
170
  token_type_hint: z$1.string().optional()
171
171
  }).strip();
172
- const platformSchema = z.enum(["chatgpt", "claudeai"]);
172
+ //#endregion
173
+ //#region ../domains/dist/index.mjs
174
+ const AI_PLATFORMS = ["chatgpt", "claudeai"];
175
+ const platformSchema = z.enum(AI_PLATFORMS);
173
176
  const PLATFORM_LABELS = {
174
177
  chatgpt: "ChatGPT",
175
178
  claudeai: "Claude.ai"
176
179
  };
180
+ const WAF_PLATFORMS = [
181
+ "akamai",
182
+ "cloudflare",
183
+ "fastly"
184
+ ];
185
+ const ALLOWED_PLATFORMS = [...AI_PLATFORMS, ...WAF_PLATFORMS];
186
+ const allowedPlatformSchema = z.enum(ALLOWED_PLATFORMS);
177
187
  const auditStatusSchema = z.enum([
178
188
  "pending",
179
189
  "partial",
@@ -276,11 +286,11 @@ const deploymentSummarySchema = z.object({
276
286
  /**
277
287
  * Public environment
278
288
  *
279
- * No OAuth metadata exposed.
289
+ * Answers anonymously and exposes no OAuth metadata.
280
290
  */
281
291
  const publicEnvironmentSchema = z.object({
282
- isPublic: z.literal(true),
283
- oAuthMetadata: z.undefined().optional()
292
+ allowsAnonymous: z.literal(true),
293
+ oAuthMetadata: z.strictObject({})
284
294
  });
285
295
  /**
286
296
  * Protected environment with an external resource metadata URL
@@ -289,7 +299,7 @@ const publicEnvironmentSchema = z.object({
289
299
  * Everything that follows is handled outside of the MCP server scope.
290
300
  */
291
301
  const externalResourceMetadataEnvironmentSchema = z.object({
292
- isPublic: z.literal(false),
302
+ allowsAnonymous: z.boolean(),
293
303
  oAuthMetadata: z.object({ externalResourceMetadataUrl: z.url() }),
294
304
  scope: z.string().optional()
295
305
  });
@@ -301,7 +311,7 @@ const externalResourceMetadataEnvironmentSchema = z.object({
301
311
  * Everything that follows is handled outside of the MCP server scope.
302
312
  */
303
313
  const externalAuthorizationServerEnvironmentSchema = z.object({
304
- isPublic: z.literal(false),
314
+ allowsAnonymous: z.boolean(),
305
315
  oAuthMetadata: z.object({
306
316
  externalAuthorizationServerUrl: z.url(),
307
317
  resourceMetadata: OAuthProtectedResourceMetadataSchema.optional()
@@ -315,7 +325,7 @@ const externalAuthorizationServerEnvironmentSchema = z.object({
315
325
  * The server itself exposes the /.well-known/oauth-authorization-server endpoint.
316
326
  */
317
327
  const standaloneEnvironmentSchema = z.object({
318
- isPublic: z.literal(false),
328
+ allowsAnonymous: z.boolean(),
319
329
  oAuthMetadata: z.object({
320
330
  authorizationServerMetadata: z.union([OAuthMetadataSchema, OpenIdProviderDiscoveryMetadataSchema]),
321
331
  resourceMetadata: OAuthProtectedResourceMetadataSchema.optional()
@@ -330,6 +340,36 @@ const standaloneEnvironmentSchema = z.object({
330
340
  * are advertised. Clients must obtain credentials out-of-band.
331
341
  */
332
342
  const protectedWithoutDiscoveryEnvironmentSchema = z.object({
343
+ allowsAnonymous: z.literal(false),
344
+ oAuthMetadata: z.strictObject({}),
345
+ scope: z.string().optional()
346
+ });
347
+ const legacyPublicEnvironmentSchema = z.object({
348
+ isPublic: z.literal(true),
349
+ oAuthMetadata: z.undefined().optional()
350
+ });
351
+ const legacyExternalResourceMetadataEnvironmentSchema = z.object({
352
+ isPublic: z.literal(false),
353
+ oAuthMetadata: z.object({ externalResourceMetadataUrl: z.url() }),
354
+ scope: z.string().optional()
355
+ });
356
+ const legacyExternalAuthorizationServerEnvironmentSchema = z.object({
357
+ isPublic: z.literal(false),
358
+ oAuthMetadata: z.object({
359
+ externalAuthorizationServerUrl: z.url(),
360
+ resourceMetadata: OAuthProtectedResourceMetadataSchema.optional()
361
+ }),
362
+ scope: z.string().optional()
363
+ });
364
+ const legacyStandaloneEnvironmentSchema = z.object({
365
+ isPublic: z.literal(false),
366
+ oAuthMetadata: z.object({
367
+ authorizationServerMetadata: z.union([OAuthMetadataSchema, OpenIdProviderDiscoveryMetadataSchema]),
368
+ resourceMetadata: OAuthProtectedResourceMetadataSchema.optional()
369
+ }),
370
+ scope: z.string().optional()
371
+ });
372
+ const legacyProtectedWithoutDiscoveryEnvironmentSchema = z.object({
333
373
  isPublic: z.literal(false),
334
374
  oAuthMetadata: z.strictObject({}),
335
375
  scope: z.string().optional()
@@ -339,11 +379,21 @@ z.union([
339
379
  externalResourceMetadataEnvironmentSchema,
340
380
  externalAuthorizationServerEnvironmentSchema,
341
381
  standaloneEnvironmentSchema,
342
- protectedWithoutDiscoveryEnvironmentSchema
382
+ protectedWithoutDiscoveryEnvironmentSchema,
383
+ legacyPublicEnvironmentSchema,
384
+ legacyExternalResourceMetadataEnvironmentSchema,
385
+ legacyExternalAuthorizationServerEnvironmentSchema,
386
+ legacyStandaloneEnvironmentSchema,
387
+ legacyProtectedWithoutDiscoveryEnvironmentSchema
388
+ ]);
389
+ const playgroundModelSchema = z.enum([
390
+ "global.anthropic.claude-haiku-4-5-20251001-v1:0",
391
+ "global.anthropic.claude-sonnet-4-5-20250929-v1:0",
392
+ "openai.gpt-5.4",
393
+ "openai.gpt-5.5"
343
394
  ]);
344
- const allowedPlatformSchema = platformSchema;
345
395
  const environmentDomainSchema = z.object({
346
- domain: z.string(),
396
+ name: z.string(),
347
397
  status: z.enum([
348
398
  "ongoing",
349
399
  "deployed",
@@ -361,6 +411,7 @@ const environmentSchema$1 = z.object({
361
411
  latestDeployment: deploymentSummarySchema.optional(),
362
412
  openaiAppsChallenge: z.string().nullable().optional(),
363
413
  isPlaygroundEnabled: z.boolean(),
414
+ playgroundModel: playgroundModelSchema,
364
415
  isIpWhitelistEnabled: z.boolean(),
365
416
  ipAllowlist: z.array(z.string()).nullable(),
366
417
  allowedPlatforms: z.array(allowedPlatformSchema),
@@ -373,7 +424,9 @@ z.object({
373
424
  sessionReplayEnabled: z.boolean(),
374
425
  collectRequestPayload: z.boolean(),
375
426
  collectResponsePayload: z.boolean(),
376
- collectErrorMessage: z.boolean()
427
+ collectErrorMessage: z.boolean(),
428
+ collectUserData: z.boolean(),
429
+ identityTraitKey: z.string().min(1).max(200).nullable()
377
430
  });
378
431
  z.object({
379
432
  id: z.string(),
@@ -508,15 +561,27 @@ z.object({
508
561
  environments: z.array(environmentWithDomainsSchema),
509
562
  productionEnvironment: environmentWithDomainsSchema.nullable()
510
563
  });
564
+ const domainFailureReasonSchema = z.enum([
565
+ "caa",
566
+ "dns",
567
+ "invalid_domain",
568
+ "other"
569
+ ]);
570
+ const projectDomainMappingSchema = z.object({
571
+ pathPrefix: z.string(),
572
+ environment: environmentSchema$1
573
+ });
511
574
  z.object({
512
- domain: z.string(),
575
+ name: z.string(),
513
576
  createdAt: z.coerce.date(),
514
577
  status: z.enum([
515
578
  "ongoing",
516
579
  "deployed",
517
580
  "failed"
518
581
  ]),
519
- environment: environmentSchema$1
582
+ failureReason: domainFailureReasonSchema.nullable(),
583
+ environment: environmentSchema$1,
584
+ mappings: z.array(projectDomainMappingSchema)
520
585
  });
521
586
  const serverFieldsSchema$1 = z.object({
522
587
  $schema: z.string(),
@@ -580,8 +645,9 @@ const positiveTestCaseSchema = z.object({
580
645
  }).partial().describe("Each case: Scenario, User prompt, Tool triggered, Expected output.");
581
646
  const screenshotEntrySchema = z.object({
582
647
  prompt: z.string(),
583
- url: z.url().or(z.literal(""))
648
+ url: z.url()
584
649
  }).describe("Each screenshot: the user prompt that produced it + the image URL.");
650
+ const screenshotDraftEntrySchema = screenshotEntrySchema.extend({ url: z.string() });
585
651
  /** Accepts either a valid email or URL. */
586
652
  const supportChannelSchema = z.string().refine((value) => z.email().safeParse(value).success || z.url().safeParse(value).success, { error: "Must be a valid email or URL" });
587
653
  /** A URL field whose error spells out that the scheme is required. */
@@ -940,6 +1006,17 @@ const chatgptSubmissionFormDataSchema = z.object({
940
1006
  allowedCountries: chatgptAllowedCountriesSchema.describe("Availability: all supported countries, or an allow-list / block-list of specific ones (ISO alpha-2)."),
941
1007
  releaseNotes: z.string().describe("Publicly displayed on the app details page.")
942
1008
  });
1009
+ const chatgptSubmissionDraftSchema = chatgptSubmissionFormDataSchema.partial().extend({
1010
+ tagline: z.string().optional(),
1011
+ companyUrl: z.string().optional(),
1012
+ supportChannel: z.string().optional(),
1013
+ privacyPolicyUrl: z.string().optional(),
1014
+ termsOfServiceUrl: z.string().optional(),
1015
+ demoRecordingUrl: z.string().optional(),
1016
+ serverUrl: z.string().optional(),
1017
+ screenshots: z.array(screenshotDraftEntrySchema).optional(),
1018
+ translations: z.array(chatgptTranslationSchema.extend({ tagline: z.string() })).optional()
1019
+ });
943
1020
  chatgptSubmissionFormDataSchema.pick({
944
1021
  appName: true,
945
1022
  developerName: true,
@@ -1018,8 +1095,8 @@ phrases like 'The best MCP server for...'. Example: 'Manage tasks and projects i
1018
1095
  description: z.string().max(2e3).describe(`A description of what your connector does and its key features, shown on the connector's detail page in
1019
1096
  claude.ai. Write it from a user perspective and be specific. Max 2000 characters.`),
1020
1097
  categories: z.array(claudeCategorySchema).max(5).describe(claudeCategoryDescription),
1021
- iconUrl: z.url().optional().describe(`Optional custom icon URL for the directory listing. By default the favicon from your MCP URL is used (recommended).
1022
- Set this only if you want to override the favicon.`),
1098
+ iconUrl: z.url().optional().describe(`Optional custom icon for the directory listing — a square SVG. By default the favicon from your MCP URL is used
1099
+ (recommended); upload a custom icon only to override it.`),
1023
1100
  documentation: z.url().describe(`A public URL pointing to documentation that helps users understand and use your connector. Must be publicly
1024
1101
  accessible without login. IT admins often review these when deciding whether to approve a server. Required to be live
1025
1102
  by your publish date.`),
@@ -1027,6 +1104,8 @@ by your publish date.`),
1027
1104
  used to notify you of security or compliance issues, so make sure it's actively monitored.`),
1028
1105
  privacyPolicy: z.url().describe(`URL to your privacy policy. Mandatory and displayed in the directory listing. Must be publicly accessible and cover
1029
1106
  what data you collect, how you use and store it, and whether you share it with third parties.`),
1107
+ screenshots: z.array(screenshotEntrySchema).optional().describe(`Carousel images shown on your connector's directory page (PNG). Each is paired with the user prompt that produced
1108
+ it. This is editable on the directory page only after the connector is submitted — optional here so you can prepare it.`),
1030
1109
  primaryUseCases: z.string().describe(`Describe the main tasks users will accomplish with this connector, and include a few example prompts a user might
1031
1110
  type. These may be shown publicly but are primarily used for internal review — reviewers test your server using them.`),
1032
1111
  connectionRequirements: z.string().describe(`What accounts, permissions, or setup a user needs before connecting (e.g. 'Requires a paid Acme account with admin
@@ -1064,6 +1143,21 @@ fully populated account.`),
1064
1143
  submission. Each is an attestation you are legally agreeing to by submitting.`),
1065
1144
  additionalNotes: z.string().optional().describe("Anything else the review team should know about your connector. Optional.")
1066
1145
  });
1146
+ const claudeSubmissionDraftSchema = claudeSubmissionFormDataSchema.partial().extend({
1147
+ serverUrl: z.string().optional(),
1148
+ name: z.string().optional(),
1149
+ slug: z.string().optional(),
1150
+ oneLiner: z.string().optional(),
1151
+ description: z.string().optional(),
1152
+ iconUrl: z.string().optional(),
1153
+ documentation: z.string().optional(),
1154
+ support: z.string().optional(),
1155
+ privacyPolicy: z.string().optional(),
1156
+ companyWebsite: z.string().optional(),
1157
+ primaryContactEmail: z.string().optional(),
1158
+ categories: z.array(claudeCategorySchema).optional(),
1159
+ screenshots: z.array(screenshotDraftEntrySchema).optional()
1160
+ });
1067
1161
  claudeSubmissionFormDataSchema.pick({
1068
1162
  serverUrl: true,
1069
1163
  name: true,
@@ -1104,14 +1198,14 @@ const submissionMetaFieldsSchema = z.object({
1104
1198
  });
1105
1199
  const claudeSubmissionSchemaInternal = submissionMetaFieldsSchema.extend({
1106
1200
  platform: z.literal("claudeai"),
1107
- formData: claudeSubmissionFormDataSchema.partial()
1201
+ formData: claudeSubmissionDraftSchema
1108
1202
  });
1109
1203
  const chatgptSubmissionSchemaInternal = submissionMetaFieldsSchema.extend({
1110
1204
  platform: z.literal("chatgpt"),
1111
- formData: chatgptSubmissionFormDataSchema.partial()
1205
+ formData: chatgptSubmissionDraftSchema
1112
1206
  });
1113
1207
  z.discriminatedUnion("platform", [claudeSubmissionSchemaInternal, chatgptSubmissionSchemaInternal]);
1114
- z.union([claudeSubmissionFormDataSchema.partial(), chatgptSubmissionFormDataSchema.partial()]);
1208
+ z.union([claudeSubmissionDraftSchema, chatgptSubmissionDraftSchema]);
1115
1209
  const subscriptionPlanSchema = z.enum([
1116
1210
  "pro",
1117
1211
  "business",
@@ -1176,7 +1270,10 @@ const RESERVED_KEYS = [
1176
1270
  "BUILD_ARG_START_COMMAND",
1177
1271
  "ALPIC_HOST",
1178
1272
  "ALPIC_CUSTOM_DOMAINS",
1179
- "ALPIC_INTENT_META_KEY"
1273
+ "ALPIC_INTENT_META_KEY",
1274
+ "ALPIC_FEEDBACK_META_KEY",
1275
+ "ALPIC_EVENTS_META_KEY",
1276
+ "ALPIC_IDENTIFY_META_KEY"
1180
1277
  ];
1181
1278
  const environmentVariableSchema = z.object({
1182
1279
  key: z.string().min(2, "Key must be at least 2 characters").regex(/^[a-zA-Z]([a-zA-Z0-9_])+$/, "Key must start with a letter and contain only letters, numbers, and underscores").refine((key) => !RESERVED_KEYS.includes(key), "This key is reserved and cannot be used as an environment variable key"),
@@ -1492,10 +1589,12 @@ const deployEnvironmentContractV1 = oc.route({
1492
1589
  successDescription: "The environment has been deployed successfully"
1493
1590
  }).errors({
1494
1591
  NOT_FOUND: {},
1495
- BAD_REQUEST: {}
1592
+ BAD_REQUEST: {},
1593
+ CONFLICT: {}
1496
1594
  }).input(z.object({
1497
1595
  environmentId: z.string().describe("The ID of the environment to deploy"),
1498
- token: z.string().describe("The token to identify the source archive").optional()
1596
+ token: z.string().describe("The token to identify the source archive").optional(),
1597
+ settings: buildSettingsSchema.extend({ transport: transportSchema }).optional().describe("Project settings detected by the client from the source. When provided, the server skips downloading and extracting the source archive to detect them.")
1499
1598
  })).output(deploymentSchema);
1500
1599
  const uploadDeploymentArtifactContractV1 = oc.route({
1501
1600
  path: "/v1/deployments/upload",
@@ -1532,6 +1631,21 @@ const getDeploymentContractV1 = oc.route({
1532
1631
  tags: ["deployments"],
1533
1632
  successDescription: "The deployment details"
1534
1633
  }).errors({ NOT_FOUND: {} }).input(z.object({ deploymentId: z.string().describe("The ID of the deployment") })).output(deploymentSchema);
1634
+ const logEntrySchema = z.object({
1635
+ timestamp: z.coerce.date(),
1636
+ type: z.enum([
1637
+ "START",
1638
+ "END",
1639
+ "INFO",
1640
+ "ERROR",
1641
+ "WARNING",
1642
+ "DEBUG"
1643
+ ]),
1644
+ requestId: z.string(),
1645
+ content: z.string().optional(),
1646
+ method: z.string().optional(),
1647
+ durationInMs: z.number().optional()
1648
+ });
1535
1649
  const getLogsContractV1 = oc.route({
1536
1650
  path: "/v1/environments/{environmentId}/logs",
1537
1651
  method: "GET",
@@ -1556,21 +1670,7 @@ const getLogsContractV1 = oc.route({
1556
1670
  search: z.string().optional().describe("Filter pattern to search for in log content"),
1557
1671
  nextToken: z.string().optional().describe("Pagination token from a previous response")
1558
1672
  })).output(z.object({
1559
- logs: z.array(z.object({
1560
- timestamp: z.coerce.date(),
1561
- type: z.enum([
1562
- "START",
1563
- "END",
1564
- "INFO",
1565
- "ERROR",
1566
- "WARNING",
1567
- "DEBUG"
1568
- ]),
1569
- requestId: z.string(),
1570
- content: z.string().optional(),
1571
- method: z.string().optional(),
1572
- durationInMs: z.number().optional()
1573
- })),
1673
+ logs: z.array(logEntrySchema),
1574
1674
  nextToken: z.string().nullable()
1575
1675
  }));
1576
1676
  const getLatestLogsContractV1 = oc.route({
@@ -1593,21 +1693,7 @@ const getLatestLogsContractV1 = oc.route({
1593
1693
  "DEBUG"
1594
1694
  ])).optional().describe("Filter by log level"),
1595
1695
  search: z.string().optional().describe("Filter pattern to search for in log content")
1596
- })).output(z.object({ logs: z.array(z.object({
1597
- timestamp: z.coerce.date(),
1598
- type: z.enum([
1599
- "START",
1600
- "END",
1601
- "INFO",
1602
- "ERROR",
1603
- "WARNING",
1604
- "DEBUG"
1605
- ]),
1606
- requestId: z.string(),
1607
- content: z.string().optional(),
1608
- method: z.string().optional(),
1609
- durationInMs: z.number().optional()
1610
- })) }));
1696
+ })).output(z.object({ logs: z.array(logEntrySchema) }));
1611
1697
  const getDeploymentLogsContractV1 = oc.route({
1612
1698
  path: "/v1/deployments/{deploymentId}/logs",
1613
1699
  method: "GET",
@@ -1833,5 +1919,10 @@ const contract = {
1833
1919
  get: { v1: getBeaconContractV1 }
1834
1920
  }
1835
1921
  };
1922
+ const { uploadArtifact: _discard, ...deploymentsForDocs } = contract.deployments;
1923
+ const contractForDocs = {
1924
+ ...contract,
1925
+ deployments: deploymentsForDocs
1926
+ };
1836
1927
  //#endregion
1837
- export { AUTH_SCOPE_ANY, AUTH_SCOPE_USER, PLATFORM_LABELS, buildSettingsSchema, contract, createEnvironmentContractV1, deploymentStatusSchema, environmentVariableSchema, environmentVariablesSchema, playgroundExamplePromptSchema, playgroundHeaderSchema, runtimeSchema, serverFieldsSchema, transportSchema, updateEnvironmentVariableSchema };
1928
+ export { AUTH_SCOPE_ANY, AUTH_SCOPE_USER, PLATFORM_LABELS, buildSettingsSchema, contract, contractForDocs, createEnvironmentContractV1, deploymentStatusSchema, environmentVariableSchema, environmentVariablesSchema, playgroundExamplePromptSchema, playgroundHeaderSchema, runtimeSchema, serverFieldsSchema, transportSchema, updateEnvironmentVariableSchema };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@alpic-ai/api",
3
- "version": "0.0.0-dev.gd40ea9c",
3
+ "version": "0.0.0-dev.gd4183b5",
4
4
  "description": "Contract for the Alpic API",
5
5
  "type": "module",
6
6
  "main": "./dist/index.mjs",
@@ -14,22 +14,38 @@
14
14
  "files": [
15
15
  "dist"
16
16
  ],
17
+ "nx": {
18
+ "targets": {
19
+ "build": {
20
+ "cache": true,
21
+ "inputs": [
22
+ "{projectRoot}/src/**/*",
23
+ "{projectRoot}/tsdown.config.ts",
24
+ "{projectRoot}/tsconfig.json",
25
+ "^default"
26
+ ],
27
+ "outputs": [
28
+ "{projectRoot}/dist"
29
+ ]
30
+ }
31
+ }
32
+ },
17
33
  "author": "Alpic",
18
34
  "license": "ISC",
19
35
  "dependencies": {
20
- "@orpc/contract": "^1.14.6",
36
+ "@orpc/contract": "^1.14.10",
21
37
  "ms": "^2.1.3",
22
38
  "zod": "^4.4.3"
23
39
  },
24
40
  "devDependencies": {
25
- "@orpc/openapi": "^1.14.6",
26
- "@orpc/zod": "^1.14.6",
41
+ "@orpc/openapi": "^1.14.10",
42
+ "@orpc/zod": "^1.14.10",
27
43
  "@total-typescript/tsconfig": "^1.0.4",
28
44
  "@types/ms": "^2.1.0",
29
45
  "shx": "^0.4.0",
30
- "tsdown": "^0.22.3",
46
+ "tsdown": "^0.22.14",
31
47
  "typescript": "^6.0.3",
32
- "vitest": "^4.1.9",
48
+ "vitest": "^4.1.10",
33
49
  "@alpic-ai/domains": "0.0.0"
34
50
  },
35
51
  "scripts": {
@@ -38,7 +54,7 @@
38
54
  "test": "pnpm run test:unit && pnpm run test:type && pnpm run test:format",
39
55
  "test:unit": "vitest run",
40
56
  "test:format": "biome check --error-on-warnings .",
41
- "test:type": "tsc --noEmit",
57
+ "test:type": "tsgo --noEmit",
42
58
  "publish:npm": "pnpm publish --tag \"${NPM_TAG}\" --access public --no-git-checks"
43
59
  }
44
60
  }