@operla-ai/sdk 0.6.0 → 1.0.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.
@@ -2,6 +2,1090 @@ export type ClientOptions = {
2
2
  baseUrl: 'https://{subdomain}.operla.ai' | (string & {});
3
3
  };
4
4
  export type ListData = {
5
+ body?: never;
6
+ path?: never;
7
+ query?: {
8
+ /**
9
+ * Target a specific entity (under the caller's organization).
10
+ */
11
+ entityId?: string;
12
+ };
13
+ url: '/actions';
14
+ };
15
+ export type ListErrors = {
16
+ /**
17
+ * Bad request
18
+ */
19
+ 400: {
20
+ /**
21
+ * HTTP status code, repeated in the body.
22
+ */
23
+ statusCode: number;
24
+ /**
25
+ * Error details.
26
+ */
27
+ error: {
28
+ /**
29
+ * Stable, machine-readable error code — branch on this, never on the message.
30
+ */
31
+ code: 'MISSING-ORG' | 'VALIDATION' | 'INVALID-JSON';
32
+ /**
33
+ * Human-readable explanation. Wording may change; do not parse it.
34
+ */
35
+ message: string;
36
+ };
37
+ };
38
+ /**
39
+ * Authentication required
40
+ */
41
+ 401: {
42
+ /**
43
+ * HTTP status code, repeated in the body.
44
+ */
45
+ statusCode: number;
46
+ /**
47
+ * Error details.
48
+ */
49
+ error: {
50
+ /**
51
+ * Stable, machine-readable error code — branch on this, never on the message.
52
+ */
53
+ code: 'AUTH';
54
+ /**
55
+ * Human-readable explanation. Wording may change; do not parse it.
56
+ */
57
+ message: string;
58
+ };
59
+ };
60
+ /**
61
+ * Insufficient permissions
62
+ */
63
+ 403: {
64
+ /**
65
+ * HTTP status code, repeated in the body.
66
+ */
67
+ statusCode: number;
68
+ /**
69
+ * Error details.
70
+ */
71
+ error: {
72
+ /**
73
+ * Stable, machine-readable error code — branch on this, never on the message.
74
+ */
75
+ code: 'FORBIDDEN' | 'SCOPE-FORBIDDEN';
76
+ /**
77
+ * Human-readable explanation. Wording may change; do not parse it.
78
+ */
79
+ message: string;
80
+ };
81
+ };
82
+ };
83
+ export type ListError = ListErrors[keyof ListErrors];
84
+ export type ListResponses = {
85
+ /**
86
+ * Successful response
87
+ */
88
+ 200: {
89
+ /**
90
+ * Action configurations visible to the caller.
91
+ */
92
+ actions: Array<{
93
+ /**
94
+ * Stable slug the AI emits and the identifier this action is addressed by. Immutable after creation. Write it in English — it is read by the AI.
95
+ */
96
+ type: string;
97
+ /**
98
+ * Human-readable name shown in the dashboard. Best kept in English, to match the type.
99
+ */
100
+ label: string;
101
+ /**
102
+ * Tells the AI when to use this action.
103
+ */
104
+ description: string;
105
+ /**
106
+ * disabled: never proposed. copilot: proposed, needs a human. autopilot: executed.
107
+ */
108
+ mode: 'disabled' | 'copilot' | 'autopilot';
109
+ /**
110
+ * Specialist agents allowed to propose this action.
111
+ */
112
+ allowedAgents: Array<string>;
113
+ /**
114
+ * What the AI extracts from the conversation.
115
+ */
116
+ paramsSchema: Array<{
117
+ /**
118
+ * Param name as it appears in the webhook payload.
119
+ */
120
+ name: string;
121
+ /**
122
+ * Value type the AI must extract.
123
+ */
124
+ type: 'string' | 'number' | 'boolean';
125
+ /**
126
+ * Whether the AI must always provide it.
127
+ */
128
+ required?: boolean;
129
+ /**
130
+ * Fed verbatim to the AI — this is what drives extraction quality.
131
+ */
132
+ description: string;
133
+ /**
134
+ * String params only. Restricts the AI to these values.
135
+ */
136
+ enum?: Array<string>;
137
+ }>;
138
+ /**
139
+ * Your endpoint, called with the `execute` event.
140
+ */
141
+ webhookUrl: string;
142
+ /**
143
+ * Your endpoint for the `eligibility_check` event — your own deterministic ruling on whether the AI may use this action. Omit to leave that call to the AI.
144
+ */
145
+ eligibilityUrl?: string;
146
+ /**
147
+ * Where the configuration applies. `global` covers the whole tenant; an organization- or entity-level config overrides it for that perimeter.
148
+ */
149
+ scope: {
150
+ /**
151
+ * Cascade level this config applies at.
152
+ */
153
+ level: 'global' | 'organization' | 'entity';
154
+ /**
155
+ * Set when level is organization or entity.
156
+ */
157
+ organizationId?: string | null;
158
+ /**
159
+ * Set when level is entity.
160
+ */
161
+ entityId?: string | null;
162
+ };
163
+ /**
164
+ * ISO timestamp when the config was created.
165
+ */
166
+ createdAt: string;
167
+ /**
168
+ * ISO timestamp of the last update.
169
+ */
170
+ updatedAt: string;
171
+ }>;
172
+ };
173
+ };
174
+ export type ListResponse = ListResponses[keyof ListResponses];
175
+ export type CreateData = {
176
+ body?: {
177
+ /**
178
+ * Human-readable label. The action's machine type is derived from it (lower-cased, words joined by `_`). Write it in English — the derived type is what the AI reads.
179
+ */
180
+ label: string;
181
+ /**
182
+ * Description the specialist agent uses to decide when to trigger the action.
183
+ */
184
+ description: string;
185
+ /**
186
+ * Processing mode (`disabled` / `copilot` / `autopilot`). Defaults to `copilot`.
187
+ */
188
+ mode?: 'disabled' | 'copilot' | 'autopilot';
189
+ /**
190
+ * Specialist agents allowed to propose this action, by machine name (e.g. `specialist_refund`).
191
+ */
192
+ allowedAgents: Array<string>;
193
+ /**
194
+ * What the AI must extract from the conversation and send back in the webhook `params`. Defaults to an empty list.
195
+ */
196
+ paramsSchema?: Array<{
197
+ /**
198
+ * Param name as it appears in the webhook payload.
199
+ */
200
+ name: string;
201
+ /**
202
+ * Value type the AI must extract.
203
+ */
204
+ type: 'string' | 'number' | 'boolean';
205
+ /**
206
+ * Whether the AI must always provide it.
207
+ */
208
+ required?: boolean;
209
+ /**
210
+ * Fed verbatim to the AI — this is what drives extraction quality.
211
+ */
212
+ description: string;
213
+ /**
214
+ * String params only. Restricts the AI to these values.
215
+ */
216
+ enum?: Array<string>;
217
+ }>;
218
+ /**
219
+ * HTTPS endpoint we POST the `execute` event to. Private and link-local addresses are refused, at save time and again at call time.
220
+ */
221
+ webhookUrl: string;
222
+ /**
223
+ * HTTPS endpoint we POST the `eligibility_check` event to, before the AI decides anything — so a refused action is never proposed nor promised. Omit it and the action is available on the AI's judgement alone, with no deterministic gate.
224
+ */
225
+ eligibilityUrl?: string;
226
+ };
227
+ path?: never;
228
+ query?: never;
229
+ url: '/actions';
230
+ };
231
+ export type CreateErrors = {
232
+ /**
233
+ * Bad request
234
+ */
235
+ 400: {
236
+ /**
237
+ * HTTP status code, repeated in the body.
238
+ */
239
+ statusCode: number;
240
+ /**
241
+ * Error details.
242
+ */
243
+ error: {
244
+ /**
245
+ * Stable, machine-readable error code — branch on this, never on the message.
246
+ */
247
+ code: 'MISSING-ORG' | 'VALIDATION' | 'INVALID-JSON';
248
+ /**
249
+ * Human-readable explanation. Wording may change; do not parse it.
250
+ */
251
+ message: string;
252
+ };
253
+ };
254
+ /**
255
+ * Authentication required
256
+ */
257
+ 401: {
258
+ /**
259
+ * HTTP status code, repeated in the body.
260
+ */
261
+ statusCode: number;
262
+ /**
263
+ * Error details.
264
+ */
265
+ error: {
266
+ /**
267
+ * Stable, machine-readable error code — branch on this, never on the message.
268
+ */
269
+ code: 'AUTH';
270
+ /**
271
+ * Human-readable explanation. Wording may change; do not parse it.
272
+ */
273
+ message: string;
274
+ };
275
+ };
276
+ /**
277
+ * Insufficient permissions
278
+ */
279
+ 403: {
280
+ /**
281
+ * HTTP status code, repeated in the body.
282
+ */
283
+ statusCode: number;
284
+ /**
285
+ * Error details.
286
+ */
287
+ error: {
288
+ /**
289
+ * Stable, machine-readable error code — branch on this, never on the message.
290
+ */
291
+ code: 'FORBIDDEN' | 'SCOPE-FORBIDDEN';
292
+ /**
293
+ * Human-readable explanation. Wording may change; do not parse it.
294
+ */
295
+ message: string;
296
+ };
297
+ };
298
+ /**
299
+ * 409 error
300
+ */
301
+ 409: {
302
+ /**
303
+ * HTTP status code, repeated in the body.
304
+ */
305
+ statusCode: number;
306
+ /**
307
+ * Error details.
308
+ */
309
+ error: {
310
+ /**
311
+ * Stable, machine-readable error code — branch on this, never on the message.
312
+ */
313
+ code: 'CONFIG-EXISTS';
314
+ /**
315
+ * Human-readable explanation. Wording may change; do not parse it.
316
+ */
317
+ message: string;
318
+ };
319
+ };
320
+ };
321
+ export type CreateError = CreateErrors[keyof CreateErrors];
322
+ export type CreateResponses = {
323
+ /**
324
+ * Action created.
325
+ */
326
+ 201: {
327
+ /**
328
+ * The action configuration.
329
+ */
330
+ action: {
331
+ /**
332
+ * Stable slug the AI emits and the identifier this action is addressed by. Immutable after creation. Write it in English — it is read by the AI.
333
+ */
334
+ type: string;
335
+ /**
336
+ * Human-readable name shown in the dashboard. Best kept in English, to match the type.
337
+ */
338
+ label: string;
339
+ /**
340
+ * Tells the AI when to use this action.
341
+ */
342
+ description: string;
343
+ /**
344
+ * disabled: never proposed. copilot: proposed, needs a human. autopilot: executed.
345
+ */
346
+ mode: 'disabled' | 'copilot' | 'autopilot';
347
+ /**
348
+ * Specialist agents allowed to propose this action.
349
+ */
350
+ allowedAgents: Array<string>;
351
+ /**
352
+ * What the AI extracts from the conversation.
353
+ */
354
+ paramsSchema: Array<{
355
+ /**
356
+ * Param name as it appears in the webhook payload.
357
+ */
358
+ name: string;
359
+ /**
360
+ * Value type the AI must extract.
361
+ */
362
+ type: 'string' | 'number' | 'boolean';
363
+ /**
364
+ * Whether the AI must always provide it.
365
+ */
366
+ required?: boolean;
367
+ /**
368
+ * Fed verbatim to the AI — this is what drives extraction quality.
369
+ */
370
+ description: string;
371
+ /**
372
+ * String params only. Restricts the AI to these values.
373
+ */
374
+ enum?: Array<string>;
375
+ }>;
376
+ /**
377
+ * Your endpoint, called with the `execute` event.
378
+ */
379
+ webhookUrl: string;
380
+ /**
381
+ * Your endpoint for the `eligibility_check` event — your own deterministic ruling on whether the AI may use this action. Omit to leave that call to the AI.
382
+ */
383
+ eligibilityUrl?: string;
384
+ /**
385
+ * Where the configuration applies. `global` covers the whole tenant; an organization- or entity-level config overrides it for that perimeter.
386
+ */
387
+ scope: {
388
+ /**
389
+ * Cascade level this config applies at.
390
+ */
391
+ level: 'global' | 'organization' | 'entity';
392
+ /**
393
+ * Set when level is organization or entity.
394
+ */
395
+ organizationId?: string | null;
396
+ /**
397
+ * Set when level is entity.
398
+ */
399
+ entityId?: string | null;
400
+ };
401
+ /**
402
+ * ISO timestamp when the config was created.
403
+ */
404
+ createdAt: string;
405
+ /**
406
+ * ISO timestamp of the last update.
407
+ */
408
+ updatedAt: string;
409
+ };
410
+ };
411
+ };
412
+ export type CreateResponse = CreateResponses[keyof CreateResponses];
413
+ export type DeleteData = {
414
+ body?: never;
415
+ path: {
416
+ /**
417
+ * Machine name of the action (e.g. `create_booking`) — what it is addressed by.
418
+ */
419
+ type: string;
420
+ };
421
+ query?: never;
422
+ url: '/actions/{type}';
423
+ };
424
+ export type DeleteErrors = {
425
+ /**
426
+ * Bad request
427
+ */
428
+ 400: {
429
+ /**
430
+ * HTTP status code, repeated in the body.
431
+ */
432
+ statusCode: number;
433
+ /**
434
+ * Error details.
435
+ */
436
+ error: {
437
+ /**
438
+ * Stable, machine-readable error code — branch on this, never on the message.
439
+ */
440
+ code: 'MISSING-ORG';
441
+ /**
442
+ * Human-readable explanation. Wording may change; do not parse it.
443
+ */
444
+ message: string;
445
+ };
446
+ };
447
+ /**
448
+ * Authentication required
449
+ */
450
+ 401: {
451
+ /**
452
+ * HTTP status code, repeated in the body.
453
+ */
454
+ statusCode: number;
455
+ /**
456
+ * Error details.
457
+ */
458
+ error: {
459
+ /**
460
+ * Stable, machine-readable error code — branch on this, never on the message.
461
+ */
462
+ code: 'AUTH';
463
+ /**
464
+ * Human-readable explanation. Wording may change; do not parse it.
465
+ */
466
+ message: string;
467
+ };
468
+ };
469
+ /**
470
+ * Insufficient permissions
471
+ */
472
+ 403: {
473
+ /**
474
+ * HTTP status code, repeated in the body.
475
+ */
476
+ statusCode: number;
477
+ /**
478
+ * Error details.
479
+ */
480
+ error: {
481
+ /**
482
+ * Stable, machine-readable error code — branch on this, never on the message.
483
+ */
484
+ code: 'FORBIDDEN' | 'SCOPE-FORBIDDEN';
485
+ /**
486
+ * Human-readable explanation. Wording may change; do not parse it.
487
+ */
488
+ message: string;
489
+ };
490
+ };
491
+ /**
492
+ * Resource not found
493
+ */
494
+ 404: {
495
+ /**
496
+ * HTTP status code, repeated in the body.
497
+ */
498
+ statusCode: number;
499
+ /**
500
+ * Error details.
501
+ */
502
+ error: {
503
+ /**
504
+ * Stable, machine-readable error code — branch on this, never on the message.
505
+ */
506
+ code: 'NOT-FOUND';
507
+ /**
508
+ * Human-readable explanation. Wording may change; do not parse it.
509
+ */
510
+ message: string;
511
+ };
512
+ };
513
+ };
514
+ export type DeleteError = DeleteErrors[keyof DeleteErrors];
515
+ export type DeleteResponses = {
516
+ /**
517
+ * Successful response
518
+ */
519
+ 200: {
520
+ /**
521
+ * Confirmation message describing the outcome.
522
+ */
523
+ message: string;
524
+ };
525
+ };
526
+ export type DeleteResponse = DeleteResponses[keyof DeleteResponses];
527
+ export type GetData = {
528
+ body?: never;
529
+ path: {
530
+ /**
531
+ * Machine name of the action (e.g. `create_booking`) — what it is addressed by.
532
+ */
533
+ type: string;
534
+ };
535
+ query?: {
536
+ /**
537
+ * Target a specific entity (under the caller's organization).
538
+ */
539
+ entityId?: string;
540
+ };
541
+ url: '/actions/{type}';
542
+ };
543
+ export type GetErrors = {
544
+ /**
545
+ * Bad request
546
+ */
547
+ 400: {
548
+ /**
549
+ * HTTP status code, repeated in the body.
550
+ */
551
+ statusCode: number;
552
+ /**
553
+ * Error details.
554
+ */
555
+ error: {
556
+ /**
557
+ * Stable, machine-readable error code — branch on this, never on the message.
558
+ */
559
+ code: 'MISSING-ORG' | 'VALIDATION' | 'INVALID-JSON';
560
+ /**
561
+ * Human-readable explanation. Wording may change; do not parse it.
562
+ */
563
+ message: string;
564
+ };
565
+ };
566
+ /**
567
+ * Authentication required
568
+ */
569
+ 401: {
570
+ /**
571
+ * HTTP status code, repeated in the body.
572
+ */
573
+ statusCode: number;
574
+ /**
575
+ * Error details.
576
+ */
577
+ error: {
578
+ /**
579
+ * Stable, machine-readable error code — branch on this, never on the message.
580
+ */
581
+ code: 'AUTH';
582
+ /**
583
+ * Human-readable explanation. Wording may change; do not parse it.
584
+ */
585
+ message: string;
586
+ };
587
+ };
588
+ /**
589
+ * Insufficient permissions
590
+ */
591
+ 403: {
592
+ /**
593
+ * HTTP status code, repeated in the body.
594
+ */
595
+ statusCode: number;
596
+ /**
597
+ * Error details.
598
+ */
599
+ error: {
600
+ /**
601
+ * Stable, machine-readable error code — branch on this, never on the message.
602
+ */
603
+ code: 'FORBIDDEN' | 'SCOPE-FORBIDDEN';
604
+ /**
605
+ * Human-readable explanation. Wording may change; do not parse it.
606
+ */
607
+ message: string;
608
+ };
609
+ };
610
+ /**
611
+ * Resource not found
612
+ */
613
+ 404: {
614
+ /**
615
+ * HTTP status code, repeated in the body.
616
+ */
617
+ statusCode: number;
618
+ /**
619
+ * Error details.
620
+ */
621
+ error: {
622
+ /**
623
+ * Stable, machine-readable error code — branch on this, never on the message.
624
+ */
625
+ code: 'NOT-FOUND';
626
+ /**
627
+ * Human-readable explanation. Wording may change; do not parse it.
628
+ */
629
+ message: string;
630
+ };
631
+ };
632
+ };
633
+ export type GetError = GetErrors[keyof GetErrors];
634
+ export type GetResponses = {
635
+ /**
636
+ * Successful response
637
+ */
638
+ 200: {
639
+ /**
640
+ * The action configuration.
641
+ */
642
+ action: {
643
+ /**
644
+ * Stable slug the AI emits and the identifier this action is addressed by. Immutable after creation. Write it in English — it is read by the AI.
645
+ */
646
+ type: string;
647
+ /**
648
+ * Human-readable name shown in the dashboard. Best kept in English, to match the type.
649
+ */
650
+ label: string;
651
+ /**
652
+ * Tells the AI when to use this action.
653
+ */
654
+ description: string;
655
+ /**
656
+ * disabled: never proposed. copilot: proposed, needs a human. autopilot: executed.
657
+ */
658
+ mode: 'disabled' | 'copilot' | 'autopilot';
659
+ /**
660
+ * Specialist agents allowed to propose this action.
661
+ */
662
+ allowedAgents: Array<string>;
663
+ /**
664
+ * What the AI extracts from the conversation.
665
+ */
666
+ paramsSchema: Array<{
667
+ /**
668
+ * Param name as it appears in the webhook payload.
669
+ */
670
+ name: string;
671
+ /**
672
+ * Value type the AI must extract.
673
+ */
674
+ type: 'string' | 'number' | 'boolean';
675
+ /**
676
+ * Whether the AI must always provide it.
677
+ */
678
+ required?: boolean;
679
+ /**
680
+ * Fed verbatim to the AI — this is what drives extraction quality.
681
+ */
682
+ description: string;
683
+ /**
684
+ * String params only. Restricts the AI to these values.
685
+ */
686
+ enum?: Array<string>;
687
+ }>;
688
+ /**
689
+ * Your endpoint, called with the `execute` event.
690
+ */
691
+ webhookUrl: string;
692
+ /**
693
+ * Your endpoint for the `eligibility_check` event — your own deterministic ruling on whether the AI may use this action. Omit to leave that call to the AI.
694
+ */
695
+ eligibilityUrl?: string;
696
+ /**
697
+ * Where the configuration applies. `global` covers the whole tenant; an organization- or entity-level config overrides it for that perimeter.
698
+ */
699
+ scope: {
700
+ /**
701
+ * Cascade level this config applies at.
702
+ */
703
+ level: 'global' | 'organization' | 'entity';
704
+ /**
705
+ * Set when level is organization or entity.
706
+ */
707
+ organizationId?: string | null;
708
+ /**
709
+ * Set when level is entity.
710
+ */
711
+ entityId?: string | null;
712
+ };
713
+ /**
714
+ * ISO timestamp when the config was created.
715
+ */
716
+ createdAt: string;
717
+ /**
718
+ * ISO timestamp of the last update.
719
+ */
720
+ updatedAt: string;
721
+ };
722
+ };
723
+ };
724
+ export type GetResponse = GetResponses[keyof GetResponses];
725
+ export type UpdateData = {
726
+ body?: {
727
+ /**
728
+ * Description the specialist agent uses to decide when to trigger the action.
729
+ */
730
+ description?: string;
731
+ /**
732
+ * Processing mode (`disabled` / `copilot` / `autopilot`).
733
+ */
734
+ mode?: 'disabled' | 'copilot' | 'autopilot';
735
+ /**
736
+ * Specialist agents allowed to propose this action, by machine name.
737
+ */
738
+ allowedAgents?: Array<string>;
739
+ /**
740
+ * Replaces the whole list — send every param you want to keep.
741
+ */
742
+ paramsSchema?: Array<{
743
+ /**
744
+ * Param name as it appears in the webhook payload.
745
+ */
746
+ name: string;
747
+ /**
748
+ * Value type the AI must extract.
749
+ */
750
+ type: 'string' | 'number' | 'boolean';
751
+ /**
752
+ * Whether the AI must always provide it.
753
+ */
754
+ required?: boolean;
755
+ /**
756
+ * Fed verbatim to the AI — this is what drives extraction quality.
757
+ */
758
+ description: string;
759
+ /**
760
+ * String params only. Restricts the AI to these values.
761
+ */
762
+ enum?: Array<string>;
763
+ }>;
764
+ /**
765
+ * HTTPS endpoint we POST the `execute` event to.
766
+ */
767
+ webhookUrl?: string;
768
+ /**
769
+ * HTTPS endpoint we POST the `eligibility_check` event to, before the AI decides anything. Send `null` to remove it — the action is then available on the AI's judgement alone, with no deterministic gate.
770
+ */
771
+ eligibilityUrl?: string | null;
772
+ };
773
+ path: {
774
+ /**
775
+ * Machine name of the action (e.g. `create_booking`) — what it is addressed by.
776
+ */
777
+ type: string;
778
+ };
779
+ query?: {
780
+ /**
781
+ * Target a specific entity (under the caller's organization).
782
+ */
783
+ entityId?: string;
784
+ };
785
+ url: '/actions/{type}';
786
+ };
787
+ export type UpdateErrors = {
788
+ /**
789
+ * Bad request
790
+ */
791
+ 400: {
792
+ /**
793
+ * HTTP status code, repeated in the body.
794
+ */
795
+ statusCode: number;
796
+ /**
797
+ * Error details.
798
+ */
799
+ error: {
800
+ /**
801
+ * Stable, machine-readable error code — branch on this, never on the message.
802
+ */
803
+ code: 'MISSING-ORG' | 'VALIDATION' | 'INVALID-JSON';
804
+ /**
805
+ * Human-readable explanation. Wording may change; do not parse it.
806
+ */
807
+ message: string;
808
+ };
809
+ };
810
+ /**
811
+ * Authentication required
812
+ */
813
+ 401: {
814
+ /**
815
+ * HTTP status code, repeated in the body.
816
+ */
817
+ statusCode: number;
818
+ /**
819
+ * Error details.
820
+ */
821
+ error: {
822
+ /**
823
+ * Stable, machine-readable error code — branch on this, never on the message.
824
+ */
825
+ code: 'AUTH';
826
+ /**
827
+ * Human-readable explanation. Wording may change; do not parse it.
828
+ */
829
+ message: string;
830
+ };
831
+ };
832
+ /**
833
+ * Insufficient permissions
834
+ */
835
+ 403: {
836
+ /**
837
+ * HTTP status code, repeated in the body.
838
+ */
839
+ statusCode: number;
840
+ /**
841
+ * Error details.
842
+ */
843
+ error: {
844
+ /**
845
+ * Stable, machine-readable error code — branch on this, never on the message.
846
+ */
847
+ code: 'FORBIDDEN' | 'SCOPE-FORBIDDEN';
848
+ /**
849
+ * Human-readable explanation. Wording may change; do not parse it.
850
+ */
851
+ message: string;
852
+ };
853
+ };
854
+ /**
855
+ * Resource not found
856
+ */
857
+ 404: {
858
+ /**
859
+ * HTTP status code, repeated in the body.
860
+ */
861
+ statusCode: number;
862
+ /**
863
+ * Error details.
864
+ */
865
+ error: {
866
+ /**
867
+ * Stable, machine-readable error code — branch on this, never on the message.
868
+ */
869
+ code: 'NOT-FOUND';
870
+ /**
871
+ * Human-readable explanation. Wording may change; do not parse it.
872
+ */
873
+ message: string;
874
+ };
875
+ };
876
+ };
877
+ export type UpdateError = UpdateErrors[keyof UpdateErrors];
878
+ export type UpdateResponses = {
879
+ /**
880
+ * Successful response
881
+ */
882
+ 200: {
883
+ /**
884
+ * The action configuration.
885
+ */
886
+ action: {
887
+ /**
888
+ * Stable slug the AI emits and the identifier this action is addressed by. Immutable after creation. Write it in English — it is read by the AI.
889
+ */
890
+ type: string;
891
+ /**
892
+ * Human-readable name shown in the dashboard. Best kept in English, to match the type.
893
+ */
894
+ label: string;
895
+ /**
896
+ * Tells the AI when to use this action.
897
+ */
898
+ description: string;
899
+ /**
900
+ * disabled: never proposed. copilot: proposed, needs a human. autopilot: executed.
901
+ */
902
+ mode: 'disabled' | 'copilot' | 'autopilot';
903
+ /**
904
+ * Specialist agents allowed to propose this action.
905
+ */
906
+ allowedAgents: Array<string>;
907
+ /**
908
+ * What the AI extracts from the conversation.
909
+ */
910
+ paramsSchema: Array<{
911
+ /**
912
+ * Param name as it appears in the webhook payload.
913
+ */
914
+ name: string;
915
+ /**
916
+ * Value type the AI must extract.
917
+ */
918
+ type: 'string' | 'number' | 'boolean';
919
+ /**
920
+ * Whether the AI must always provide it.
921
+ */
922
+ required?: boolean;
923
+ /**
924
+ * Fed verbatim to the AI — this is what drives extraction quality.
925
+ */
926
+ description: string;
927
+ /**
928
+ * String params only. Restricts the AI to these values.
929
+ */
930
+ enum?: Array<string>;
931
+ }>;
932
+ /**
933
+ * Your endpoint, called with the `execute` event.
934
+ */
935
+ webhookUrl: string;
936
+ /**
937
+ * Your endpoint for the `eligibility_check` event — your own deterministic ruling on whether the AI may use this action. Omit to leave that call to the AI.
938
+ */
939
+ eligibilityUrl?: string;
940
+ /**
941
+ * Where the configuration applies. `global` covers the whole tenant; an organization- or entity-level config overrides it for that perimeter.
942
+ */
943
+ scope: {
944
+ /**
945
+ * Cascade level this config applies at.
946
+ */
947
+ level: 'global' | 'organization' | 'entity';
948
+ /**
949
+ * Set when level is organization or entity.
950
+ */
951
+ organizationId?: string | null;
952
+ /**
953
+ * Set when level is entity.
954
+ */
955
+ entityId?: string | null;
956
+ };
957
+ /**
958
+ * ISO timestamp when the config was created.
959
+ */
960
+ createdAt: string;
961
+ /**
962
+ * ISO timestamp of the last update.
963
+ */
964
+ updatedAt: string;
965
+ };
966
+ };
967
+ };
968
+ export type UpdateResponse = UpdateResponses[keyof UpdateResponses];
969
+ export type DeleteOverrideData = {
970
+ body?: never;
971
+ path: {
972
+ /**
973
+ * Machine name of the action (e.g. `create_booking`) — what it is addressed by.
974
+ */
975
+ type: string;
976
+ };
977
+ query?: {
978
+ /**
979
+ * Target a specific entity (under the caller's organization).
980
+ */
981
+ entityId?: string;
982
+ };
983
+ url: '/actions/{type}/override';
984
+ };
985
+ export type DeleteOverrideErrors = {
986
+ /**
987
+ * Bad request
988
+ */
989
+ 400: {
990
+ /**
991
+ * HTTP status code, repeated in the body.
992
+ */
993
+ statusCode: number;
994
+ /**
995
+ * Error details.
996
+ */
997
+ error: {
998
+ /**
999
+ * Stable, machine-readable error code — branch on this, never on the message.
1000
+ */
1001
+ code: 'MISSING-ORG' | 'VALIDATION' | 'INVALID-JSON';
1002
+ /**
1003
+ * Human-readable explanation. Wording may change; do not parse it.
1004
+ */
1005
+ message: string;
1006
+ };
1007
+ };
1008
+ /**
1009
+ * Authentication required
1010
+ */
1011
+ 401: {
1012
+ /**
1013
+ * HTTP status code, repeated in the body.
1014
+ */
1015
+ statusCode: number;
1016
+ /**
1017
+ * Error details.
1018
+ */
1019
+ error: {
1020
+ /**
1021
+ * Stable, machine-readable error code — branch on this, never on the message.
1022
+ */
1023
+ code: 'AUTH';
1024
+ /**
1025
+ * Human-readable explanation. Wording may change; do not parse it.
1026
+ */
1027
+ message: string;
1028
+ };
1029
+ };
1030
+ /**
1031
+ * Insufficient permissions
1032
+ */
1033
+ 403: {
1034
+ /**
1035
+ * HTTP status code, repeated in the body.
1036
+ */
1037
+ statusCode: number;
1038
+ /**
1039
+ * Error details.
1040
+ */
1041
+ error: {
1042
+ /**
1043
+ * Stable, machine-readable error code — branch on this, never on the message.
1044
+ */
1045
+ code: 'FORBIDDEN' | 'SCOPE-FORBIDDEN';
1046
+ /**
1047
+ * Human-readable explanation. Wording may change; do not parse it.
1048
+ */
1049
+ message: string;
1050
+ };
1051
+ };
1052
+ /**
1053
+ * Resource not found
1054
+ */
1055
+ 404: {
1056
+ /**
1057
+ * HTTP status code, repeated in the body.
1058
+ */
1059
+ statusCode: number;
1060
+ /**
1061
+ * Error details.
1062
+ */
1063
+ error: {
1064
+ /**
1065
+ * Stable, machine-readable error code — branch on this, never on the message.
1066
+ */
1067
+ code: 'NOT-FOUND';
1068
+ /**
1069
+ * Human-readable explanation. Wording may change; do not parse it.
1070
+ */
1071
+ message: string;
1072
+ };
1073
+ };
1074
+ };
1075
+ export type DeleteOverrideError = DeleteOverrideErrors[keyof DeleteOverrideErrors];
1076
+ export type DeleteOverrideResponses = {
1077
+ /**
1078
+ * Successful response
1079
+ */
1080
+ 200: {
1081
+ /**
1082
+ * Confirmation message describing the outcome.
1083
+ */
1084
+ message: string;
1085
+ };
1086
+ };
1087
+ export type DeleteOverrideResponse = DeleteOverrideResponses[keyof DeleteOverrideResponses];
1088
+ export type List2Data = {
5
1089
  body?: never;
6
1090
  path?: never;
7
1091
  query?: {
@@ -12,14 +1096,26 @@ export type ListData = {
12
1096
  };
13
1097
  url: '/agents';
14
1098
  };
15
- export type ListErrors = {
1099
+ export type List2Errors = {
16
1100
  /**
17
1101
  * Bad request
18
1102
  */
19
1103
  400: {
1104
+ /**
1105
+ * HTTP status code, repeated in the body.
1106
+ */
20
1107
  statusCode: number;
1108
+ /**
1109
+ * Error details.
1110
+ */
21
1111
  error: {
1112
+ /**
1113
+ * Stable, machine-readable error code — branch on this, never on the message.
1114
+ */
22
1115
  code: 'MISSING-ORG' | 'VALIDATION' | 'INVALID-JSON';
1116
+ /**
1117
+ * Human-readable explanation. Wording may change; do not parse it.
1118
+ */
23
1119
  message: string;
24
1120
  };
25
1121
  };
@@ -27,9 +1123,21 @@ export type ListErrors = {
27
1123
  * Authentication required
28
1124
  */
29
1125
  401: {
1126
+ /**
1127
+ * HTTP status code, repeated in the body.
1128
+ */
30
1129
  statusCode: number;
1130
+ /**
1131
+ * Error details.
1132
+ */
31
1133
  error: {
1134
+ /**
1135
+ * Stable, machine-readable error code — branch on this, never on the message.
1136
+ */
32
1137
  code: 'AUTH';
1138
+ /**
1139
+ * Human-readable explanation. Wording may change; do not parse it.
1140
+ */
33
1141
  message: string;
34
1142
  };
35
1143
  };
@@ -37,15 +1145,27 @@ export type ListErrors = {
37
1145
  * Insufficient permissions
38
1146
  */
39
1147
  403: {
1148
+ /**
1149
+ * HTTP status code, repeated in the body.
1150
+ */
40
1151
  statusCode: number;
1152
+ /**
1153
+ * Error details.
1154
+ */
41
1155
  error: {
1156
+ /**
1157
+ * Stable, machine-readable error code — branch on this, never on the message.
1158
+ */
42
1159
  code: 'FORBIDDEN' | 'SCOPE-FORBIDDEN';
1160
+ /**
1161
+ * Human-readable explanation. Wording may change; do not parse it.
1162
+ */
43
1163
  message: string;
44
1164
  };
45
1165
  };
46
1166
  };
47
- export type ListError = ListErrors[keyof ListErrors];
48
- export type ListResponses = {
1167
+ export type List2Error = List2Errors[keyof List2Errors];
1168
+ export type List2Responses = {
49
1169
  /**
50
1170
  * Successful response
51
1171
  */
@@ -90,8 +1210,8 @@ export type ListResponses = {
90
1210
  }>;
91
1211
  };
92
1212
  };
93
- export type ListResponse = ListResponses[keyof ListResponses];
94
- export type CreateData = {
1213
+ export type List2Response = List2Responses[keyof List2Responses];
1214
+ export type Create2Data = {
95
1215
  body?: {
96
1216
  /**
97
1217
  * Human-readable label shown in the dashboard. The machine name is derived from this (slugified, prefixed with `specialist_`).
@@ -164,14 +1284,26 @@ export type CreateData = {
164
1284
  query?: never;
165
1285
  url: '/agents';
166
1286
  };
167
- export type CreateErrors = {
1287
+ export type Create2Errors = {
168
1288
  /**
169
1289
  * Bad request
170
1290
  */
171
1291
  400: {
1292
+ /**
1293
+ * HTTP status code, repeated in the body.
1294
+ */
172
1295
  statusCode: number;
1296
+ /**
1297
+ * Error details.
1298
+ */
173
1299
  error: {
1300
+ /**
1301
+ * Stable, machine-readable error code — branch on this, never on the message.
1302
+ */
174
1303
  code: 'MISSING-ORG' | 'VALIDATION' | 'INVALID-JSON';
1304
+ /**
1305
+ * Human-readable explanation. Wording may change; do not parse it.
1306
+ */
175
1307
  message: string;
176
1308
  };
177
1309
  };
@@ -179,9 +1311,21 @@ export type CreateErrors = {
179
1311
  * Authentication required
180
1312
  */
181
1313
  401: {
1314
+ /**
1315
+ * HTTP status code, repeated in the body.
1316
+ */
182
1317
  statusCode: number;
1318
+ /**
1319
+ * Error details.
1320
+ */
183
1321
  error: {
1322
+ /**
1323
+ * Stable, machine-readable error code — branch on this, never on the message.
1324
+ */
184
1325
  code: 'AUTH';
1326
+ /**
1327
+ * Human-readable explanation. Wording may change; do not parse it.
1328
+ */
185
1329
  message: string;
186
1330
  };
187
1331
  };
@@ -189,15 +1333,27 @@ export type CreateErrors = {
189
1333
  * Insufficient permissions
190
1334
  */
191
1335
  403: {
1336
+ /**
1337
+ * HTTP status code, repeated in the body.
1338
+ */
192
1339
  statusCode: number;
1340
+ /**
1341
+ * Error details.
1342
+ */
193
1343
  error: {
1344
+ /**
1345
+ * Stable, machine-readable error code — branch on this, never on the message.
1346
+ */
194
1347
  code: 'FORBIDDEN' | 'SCOPE-FORBIDDEN';
1348
+ /**
1349
+ * Human-readable explanation. Wording may change; do not parse it.
1350
+ */
195
1351
  message: string;
196
1352
  };
197
1353
  };
198
1354
  };
199
- export type CreateError = CreateErrors[keyof CreateErrors];
200
- export type CreateResponses = {
1355
+ export type Create2Error = Create2Errors[keyof Create2Errors];
1356
+ export type Create2Responses = {
201
1357
  /**
202
1358
  * Successful response
203
1359
  */
@@ -533,8 +1689,8 @@ export type CreateResponses = {
533
1689
  };
534
1690
  };
535
1691
  };
536
- export type CreateResponse = CreateResponses[keyof CreateResponses];
537
- export type DeleteData = {
1692
+ export type Create2Response = Create2Responses[keyof Create2Responses];
1693
+ export type Delete2Data = {
538
1694
  body?: never;
539
1695
  path: {
540
1696
  /**
@@ -545,14 +1701,26 @@ export type DeleteData = {
545
1701
  query?: never;
546
1702
  url: '/agents/{name}';
547
1703
  };
548
- export type DeleteErrors = {
1704
+ export type Delete2Errors = {
549
1705
  /**
550
1706
  * Bad request
551
1707
  */
552
1708
  400: {
1709
+ /**
1710
+ * HTTP status code, repeated in the body.
1711
+ */
553
1712
  statusCode: number;
1713
+ /**
1714
+ * Error details.
1715
+ */
554
1716
  error: {
1717
+ /**
1718
+ * Stable, machine-readable error code — branch on this, never on the message.
1719
+ */
555
1720
  code: 'MISSING-ORG';
1721
+ /**
1722
+ * Human-readable explanation. Wording may change; do not parse it.
1723
+ */
556
1724
  message: string;
557
1725
  };
558
1726
  };
@@ -560,9 +1728,21 @@ export type DeleteErrors = {
560
1728
  * Authentication required
561
1729
  */
562
1730
  401: {
1731
+ /**
1732
+ * HTTP status code, repeated in the body.
1733
+ */
563
1734
  statusCode: number;
1735
+ /**
1736
+ * Error details.
1737
+ */
564
1738
  error: {
1739
+ /**
1740
+ * Stable, machine-readable error code — branch on this, never on the message.
1741
+ */
565
1742
  code: 'AUTH';
1743
+ /**
1744
+ * Human-readable explanation. Wording may change; do not parse it.
1745
+ */
566
1746
  message: string;
567
1747
  };
568
1748
  };
@@ -570,15 +1750,27 @@ export type DeleteErrors = {
570
1750
  * Insufficient permissions
571
1751
  */
572
1752
  403: {
1753
+ /**
1754
+ * HTTP status code, repeated in the body.
1755
+ */
573
1756
  statusCode: number;
1757
+ /**
1758
+ * Error details.
1759
+ */
574
1760
  error: {
1761
+ /**
1762
+ * Stable, machine-readable error code — branch on this, never on the message.
1763
+ */
575
1764
  code: 'FORBIDDEN' | 'SCOPE-FORBIDDEN';
1765
+ /**
1766
+ * Human-readable explanation. Wording may change; do not parse it.
1767
+ */
576
1768
  message: string;
577
1769
  };
578
1770
  };
579
1771
  };
580
- export type DeleteError = DeleteErrors[keyof DeleteErrors];
581
- export type DeleteResponses = {
1772
+ export type Delete2Error = Delete2Errors[keyof Delete2Errors];
1773
+ export type Delete2Responses = {
582
1774
  /**
583
1775
  * Successful response
584
1776
  */
@@ -589,8 +1781,8 @@ export type DeleteResponses = {
589
1781
  message: string;
590
1782
  };
591
1783
  };
592
- export type DeleteResponse = DeleteResponses[keyof DeleteResponses];
593
- export type GetData = {
1784
+ export type Delete2Response = Delete2Responses[keyof Delete2Responses];
1785
+ export type Get2Data = {
594
1786
  body?: never;
595
1787
  path: {
596
1788
  /**
@@ -606,14 +1798,26 @@ export type GetData = {
606
1798
  };
607
1799
  url: '/agents/{name}';
608
1800
  };
609
- export type GetErrors = {
1801
+ export type Get2Errors = {
610
1802
  /**
611
1803
  * Bad request
612
1804
  */
613
1805
  400: {
1806
+ /**
1807
+ * HTTP status code, repeated in the body.
1808
+ */
614
1809
  statusCode: number;
1810
+ /**
1811
+ * Error details.
1812
+ */
615
1813
  error: {
1814
+ /**
1815
+ * Stable, machine-readable error code — branch on this, never on the message.
1816
+ */
616
1817
  code: 'MISSING-ORG' | 'VALIDATION' | 'INVALID-JSON';
1818
+ /**
1819
+ * Human-readable explanation. Wording may change; do not parse it.
1820
+ */
617
1821
  message: string;
618
1822
  };
619
1823
  };
@@ -621,9 +1825,21 @@ export type GetErrors = {
621
1825
  * Authentication required
622
1826
  */
623
1827
  401: {
1828
+ /**
1829
+ * HTTP status code, repeated in the body.
1830
+ */
624
1831
  statusCode: number;
1832
+ /**
1833
+ * Error details.
1834
+ */
625
1835
  error: {
1836
+ /**
1837
+ * Stable, machine-readable error code — branch on this, never on the message.
1838
+ */
626
1839
  code: 'AUTH';
1840
+ /**
1841
+ * Human-readable explanation. Wording may change; do not parse it.
1842
+ */
627
1843
  message: string;
628
1844
  };
629
1845
  };
@@ -631,15 +1847,27 @@ export type GetErrors = {
631
1847
  * Insufficient permissions
632
1848
  */
633
1849
  403: {
1850
+ /**
1851
+ * HTTP status code, repeated in the body.
1852
+ */
634
1853
  statusCode: number;
1854
+ /**
1855
+ * Error details.
1856
+ */
635
1857
  error: {
1858
+ /**
1859
+ * Stable, machine-readable error code — branch on this, never on the message.
1860
+ */
636
1861
  code: 'FORBIDDEN' | 'SCOPE-FORBIDDEN';
1862
+ /**
1863
+ * Human-readable explanation. Wording may change; do not parse it.
1864
+ */
637
1865
  message: string;
638
1866
  };
639
1867
  };
640
1868
  };
641
- export type GetError = GetErrors[keyof GetErrors];
642
- export type GetResponses = {
1869
+ export type Get2Error = Get2Errors[keyof Get2Errors];
1870
+ export type Get2Responses = {
643
1871
  /**
644
1872
  * Successful response
645
1873
  */
@@ -975,8 +2203,8 @@ export type GetResponses = {
975
2203
  };
976
2204
  };
977
2205
  };
978
- export type GetResponse = GetResponses[keyof GetResponses];
979
- export type UpdateData = {
2206
+ export type Get2Response = Get2Responses[keyof Get2Responses];
2207
+ export type Update2Data = {
980
2208
  body?: {
981
2209
  /**
982
2210
  * System prompt for the agent. Editable on specialist agents only.
@@ -1128,14 +2356,26 @@ export type UpdateData = {
1128
2356
  };
1129
2357
  url: '/agents/{name}';
1130
2358
  };
1131
- export type UpdateErrors = {
2359
+ export type Update2Errors = {
1132
2360
  /**
1133
2361
  * Bad request
1134
2362
  */
1135
2363
  400: {
2364
+ /**
2365
+ * HTTP status code, repeated in the body.
2366
+ */
1136
2367
  statusCode: number;
2368
+ /**
2369
+ * Error details.
2370
+ */
1137
2371
  error: {
2372
+ /**
2373
+ * Stable, machine-readable error code — branch on this, never on the message.
2374
+ */
1138
2375
  code: 'MISSING-ORG' | 'VALIDATION' | 'INVALID-JSON';
2376
+ /**
2377
+ * Human-readable explanation. Wording may change; do not parse it.
2378
+ */
1139
2379
  message: string;
1140
2380
  };
1141
2381
  };
@@ -1143,9 +2383,21 @@ export type UpdateErrors = {
1143
2383
  * Authentication required
1144
2384
  */
1145
2385
  401: {
2386
+ /**
2387
+ * HTTP status code, repeated in the body.
2388
+ */
1146
2389
  statusCode: number;
2390
+ /**
2391
+ * Error details.
2392
+ */
1147
2393
  error: {
2394
+ /**
2395
+ * Stable, machine-readable error code — branch on this, never on the message.
2396
+ */
1148
2397
  code: 'AUTH';
2398
+ /**
2399
+ * Human-readable explanation. Wording may change; do not parse it.
2400
+ */
1149
2401
  message: string;
1150
2402
  };
1151
2403
  };
@@ -1153,15 +2405,27 @@ export type UpdateErrors = {
1153
2405
  * Insufficient permissions
1154
2406
  */
1155
2407
  403: {
2408
+ /**
2409
+ * HTTP status code, repeated in the body.
2410
+ */
1156
2411
  statusCode: number;
2412
+ /**
2413
+ * Error details.
2414
+ */
1157
2415
  error: {
2416
+ /**
2417
+ * Stable, machine-readable error code — branch on this, never on the message.
2418
+ */
1158
2419
  code: 'FORBIDDEN' | 'SCOPE-FORBIDDEN';
2420
+ /**
2421
+ * Human-readable explanation. Wording may change; do not parse it.
2422
+ */
1159
2423
  message: string;
1160
2424
  };
1161
2425
  };
1162
2426
  };
1163
- export type UpdateError = UpdateErrors[keyof UpdateErrors];
1164
- export type UpdateResponses = {
2427
+ export type Update2Error = Update2Errors[keyof Update2Errors];
2428
+ export type Update2Responses = {
1165
2429
  /**
1166
2430
  * Successful response
1167
2431
  */
@@ -1497,8 +2761,8 @@ export type UpdateResponses = {
1497
2761
  };
1498
2762
  };
1499
2763
  };
1500
- export type UpdateResponse = UpdateResponses[keyof UpdateResponses];
1501
- export type DeleteOverrideData = {
2764
+ export type Update2Response = Update2Responses[keyof Update2Responses];
2765
+ export type DeleteOverride2Data = {
1502
2766
  body?: never;
1503
2767
  path: {
1504
2768
  /**
@@ -1514,14 +2778,26 @@ export type DeleteOverrideData = {
1514
2778
  };
1515
2779
  url: '/agents/{name}/overrides';
1516
2780
  };
1517
- export type DeleteOverrideErrors = {
2781
+ export type DeleteOverride2Errors = {
1518
2782
  /**
1519
2783
  * Bad request
1520
2784
  */
1521
2785
  400: {
2786
+ /**
2787
+ * HTTP status code, repeated in the body.
2788
+ */
1522
2789
  statusCode: number;
2790
+ /**
2791
+ * Error details.
2792
+ */
1523
2793
  error: {
2794
+ /**
2795
+ * Stable, machine-readable error code — branch on this, never on the message.
2796
+ */
1524
2797
  code: 'MISSING-ORG' | 'VALIDATION' | 'INVALID-JSON';
2798
+ /**
2799
+ * Human-readable explanation. Wording may change; do not parse it.
2800
+ */
1525
2801
  message: string;
1526
2802
  };
1527
2803
  };
@@ -1529,9 +2805,21 @@ export type DeleteOverrideErrors = {
1529
2805
  * Authentication required
1530
2806
  */
1531
2807
  401: {
2808
+ /**
2809
+ * HTTP status code, repeated in the body.
2810
+ */
1532
2811
  statusCode: number;
2812
+ /**
2813
+ * Error details.
2814
+ */
1533
2815
  error: {
2816
+ /**
2817
+ * Stable, machine-readable error code — branch on this, never on the message.
2818
+ */
1534
2819
  code: 'AUTH';
2820
+ /**
2821
+ * Human-readable explanation. Wording may change; do not parse it.
2822
+ */
1535
2823
  message: string;
1536
2824
  };
1537
2825
  };
@@ -1539,15 +2827,27 @@ export type DeleteOverrideErrors = {
1539
2827
  * Insufficient permissions
1540
2828
  */
1541
2829
  403: {
2830
+ /**
2831
+ * HTTP status code, repeated in the body.
2832
+ */
1542
2833
  statusCode: number;
2834
+ /**
2835
+ * Error details.
2836
+ */
1543
2837
  error: {
2838
+ /**
2839
+ * Stable, machine-readable error code — branch on this, never on the message.
2840
+ */
1544
2841
  code: 'FORBIDDEN' | 'SCOPE-FORBIDDEN';
2842
+ /**
2843
+ * Human-readable explanation. Wording may change; do not parse it.
2844
+ */
1545
2845
  message: string;
1546
2846
  };
1547
2847
  };
1548
2848
  };
1549
- export type DeleteOverrideError = DeleteOverrideErrors[keyof DeleteOverrideErrors];
1550
- export type DeleteOverrideResponses = {
2849
+ export type DeleteOverride2Error = DeleteOverride2Errors[keyof DeleteOverride2Errors];
2850
+ export type DeleteOverride2Responses = {
1551
2851
  /**
1552
2852
  * Successful response
1553
2853
  */
@@ -1558,7 +2858,7 @@ export type DeleteOverrideResponses = {
1558
2858
  message: string;
1559
2859
  };
1560
2860
  };
1561
- export type DeleteOverrideResponse = DeleteOverrideResponses[keyof DeleteOverrideResponses];
2861
+ export type DeleteOverride2Response = DeleteOverride2Responses[keyof DeleteOverride2Responses];
1562
2862
  export type PublishData = {
1563
2863
  body?: {
1564
2864
  /**
@@ -1585,9 +2885,21 @@ export type PublishErrors = {
1585
2885
  * Bad request
1586
2886
  */
1587
2887
  400: {
2888
+ /**
2889
+ * HTTP status code, repeated in the body.
2890
+ */
1588
2891
  statusCode: number;
2892
+ /**
2893
+ * Error details.
2894
+ */
1589
2895
  error: {
2896
+ /**
2897
+ * Stable, machine-readable error code — branch on this, never on the message.
2898
+ */
1590
2899
  code: 'MISSING-ORG' | 'VALIDATION' | 'INVALID-JSON';
2900
+ /**
2901
+ * Human-readable explanation. Wording may change; do not parse it.
2902
+ */
1591
2903
  message: string;
1592
2904
  };
1593
2905
  };
@@ -1595,9 +2907,21 @@ export type PublishErrors = {
1595
2907
  * Authentication required
1596
2908
  */
1597
2909
  401: {
2910
+ /**
2911
+ * HTTP status code, repeated in the body.
2912
+ */
1598
2913
  statusCode: number;
2914
+ /**
2915
+ * Error details.
2916
+ */
1599
2917
  error: {
2918
+ /**
2919
+ * Stable, machine-readable error code — branch on this, never on the message.
2920
+ */
1600
2921
  code: 'AUTH';
2922
+ /**
2923
+ * Human-readable explanation. Wording may change; do not parse it.
2924
+ */
1601
2925
  message: string;
1602
2926
  };
1603
2927
  };
@@ -1605,9 +2929,21 @@ export type PublishErrors = {
1605
2929
  * Insufficient permissions
1606
2930
  */
1607
2931
  403: {
2932
+ /**
2933
+ * HTTP status code, repeated in the body.
2934
+ */
1608
2935
  statusCode: number;
2936
+ /**
2937
+ * Error details.
2938
+ */
1609
2939
  error: {
2940
+ /**
2941
+ * Stable, machine-readable error code — branch on this, never on the message.
2942
+ */
1610
2943
  code: 'FORBIDDEN' | 'SCOPE-FORBIDDEN';
2944
+ /**
2945
+ * Human-readable explanation. Wording may change; do not parse it.
2946
+ */
1611
2947
  message: string;
1612
2948
  };
1613
2949
  };
@@ -1976,9 +3312,21 @@ export type RollbackErrors = {
1976
3312
  * Bad request
1977
3313
  */
1978
3314
  400: {
3315
+ /**
3316
+ * HTTP status code, repeated in the body.
3317
+ */
1979
3318
  statusCode: number;
3319
+ /**
3320
+ * Error details.
3321
+ */
1980
3322
  error: {
3323
+ /**
3324
+ * Stable, machine-readable error code — branch on this, never on the message.
3325
+ */
1981
3326
  code: 'MISSING-ORG' | 'VALIDATION' | 'INVALID-JSON';
3327
+ /**
3328
+ * Human-readable explanation. Wording may change; do not parse it.
3329
+ */
1982
3330
  message: string;
1983
3331
  };
1984
3332
  };
@@ -1986,9 +3334,21 @@ export type RollbackErrors = {
1986
3334
  * Authentication required
1987
3335
  */
1988
3336
  401: {
3337
+ /**
3338
+ * HTTP status code, repeated in the body.
3339
+ */
1989
3340
  statusCode: number;
3341
+ /**
3342
+ * Error details.
3343
+ */
1990
3344
  error: {
3345
+ /**
3346
+ * Stable, machine-readable error code — branch on this, never on the message.
3347
+ */
1991
3348
  code: 'AUTH';
3349
+ /**
3350
+ * Human-readable explanation. Wording may change; do not parse it.
3351
+ */
1992
3352
  message: string;
1993
3353
  };
1994
3354
  };
@@ -1996,9 +3356,21 @@ export type RollbackErrors = {
1996
3356
  * Insufficient permissions
1997
3357
  */
1998
3358
  403: {
3359
+ /**
3360
+ * HTTP status code, repeated in the body.
3361
+ */
1999
3362
  statusCode: number;
3363
+ /**
3364
+ * Error details.
3365
+ */
2000
3366
  error: {
3367
+ /**
3368
+ * Stable, machine-readable error code — branch on this, never on the message.
3369
+ */
2001
3370
  code: 'FORBIDDEN' | 'SCOPE-FORBIDDEN';
3371
+ /**
3372
+ * Human-readable explanation. Wording may change; do not parse it.
3373
+ */
2002
3374
  message: string;
2003
3375
  };
2004
3376
  };
@@ -2341,7 +3713,7 @@ export type RollbackResponses = {
2341
3713
  };
2342
3714
  };
2343
3715
  export type RollbackResponse = RollbackResponses[keyof RollbackResponses];
2344
- export type List2Data = {
3716
+ export type List3Data = {
2345
3717
  body?: never;
2346
3718
  path?: never;
2347
3719
  query?: {
@@ -2364,14 +3736,26 @@ export type List2Data = {
2364
3736
  };
2365
3737
  url: '/conversations';
2366
3738
  };
2367
- export type List2Errors = {
3739
+ export type List3Errors = {
2368
3740
  /**
2369
3741
  * Bad request
2370
3742
  */
2371
3743
  400: {
3744
+ /**
3745
+ * HTTP status code, repeated in the body.
3746
+ */
2372
3747
  statusCode: number;
3748
+ /**
3749
+ * Error details.
3750
+ */
2373
3751
  error: {
3752
+ /**
3753
+ * Stable, machine-readable error code — branch on this, never on the message.
3754
+ */
2374
3755
  code: 'MISSING-ORG' | 'VALIDATION' | 'INVALID-JSON';
3756
+ /**
3757
+ * Human-readable explanation. Wording may change; do not parse it.
3758
+ */
2375
3759
  message: string;
2376
3760
  };
2377
3761
  };
@@ -2379,9 +3763,21 @@ export type List2Errors = {
2379
3763
  * Authentication required
2380
3764
  */
2381
3765
  401: {
3766
+ /**
3767
+ * HTTP status code, repeated in the body.
3768
+ */
2382
3769
  statusCode: number;
3770
+ /**
3771
+ * Error details.
3772
+ */
2383
3773
  error: {
3774
+ /**
3775
+ * Stable, machine-readable error code — branch on this, never on the message.
3776
+ */
2384
3777
  code: 'AUTH';
3778
+ /**
3779
+ * Human-readable explanation. Wording may change; do not parse it.
3780
+ */
2385
3781
  message: string;
2386
3782
  };
2387
3783
  };
@@ -2389,19 +3785,34 @@ export type List2Errors = {
2389
3785
  * Insufficient permissions
2390
3786
  */
2391
3787
  403: {
3788
+ /**
3789
+ * HTTP status code, repeated in the body.
3790
+ */
2392
3791
  statusCode: number;
3792
+ /**
3793
+ * Error details.
3794
+ */
2393
3795
  error: {
3796
+ /**
3797
+ * Stable, machine-readable error code — branch on this, never on the message.
3798
+ */
2394
3799
  code: 'FORBIDDEN' | 'SCOPE-FORBIDDEN';
3800
+ /**
3801
+ * Human-readable explanation. Wording may change; do not parse it.
3802
+ */
2395
3803
  message: string;
2396
3804
  };
2397
3805
  };
2398
3806
  };
2399
- export type List2Error = List2Errors[keyof List2Errors];
2400
- export type List2Responses = {
3807
+ export type List3Error = List3Errors[keyof List3Errors];
3808
+ export type List3Responses = {
2401
3809
  /**
2402
3810
  * Successful response
2403
3811
  */
2404
3812
  200: {
3813
+ /**
3814
+ * This page of conversations — at most `limit` items, starting at `offset`.
3815
+ */
2405
3816
  conversations: Array<{
2406
3817
  /**
2407
3818
  * Conversation ID (format: conv_xxxxxxxxxxxx).
@@ -2411,7 +3822,13 @@ export type List2Responses = {
2411
3822
  * Organization the conversation is linked to (id + name); null when not tied to one.
2412
3823
  */
2413
3824
  organization: {
3825
+ /**
3826
+ * Opaque id of the referenced doc.
3827
+ */
2414
3828
  id: string;
3829
+ /**
3830
+ * Display name of the referenced doc, denormalized so no extra fetch is needed.
3831
+ */
2415
3832
  name: string;
2416
3833
  } | null;
2417
3834
  /**
@@ -2439,7 +3856,13 @@ export type List2Responses = {
2439
3856
  * Entity the conversation is linked to (id + name); null when not tied to one.
2440
3857
  */
2441
3858
  entity: {
3859
+ /**
3860
+ * Opaque id of the referenced doc.
3861
+ */
2442
3862
  id: string;
3863
+ /**
3864
+ * Display name of the referenced doc, denormalized so no extra fetch is needed.
3865
+ */
2443
3866
  name: string;
2444
3867
  } | null;
2445
3868
  /**
@@ -2473,8 +3896,8 @@ export type List2Responses = {
2473
3896
  offset: number;
2474
3897
  };
2475
3898
  };
2476
- export type List2Response = List2Responses[keyof List2Responses];
2477
- export type Create2Data = {
3899
+ export type List3Response = List3Responses[keyof List3Responses];
3900
+ export type Create3Data = {
2478
3901
  body?: {
2479
3902
  /**
2480
3903
  * The person the conversation is with. Set `resolved: true` when you already have a complete profile to skip identity resolution on later messages.
@@ -2508,14 +3931,26 @@ export type Create2Data = {
2508
3931
  query?: never;
2509
3932
  url: '/conversations';
2510
3933
  };
2511
- export type Create2Errors = {
3934
+ export type Create3Errors = {
2512
3935
  /**
2513
3936
  * Bad request
2514
3937
  */
2515
3938
  400: {
3939
+ /**
3940
+ * HTTP status code, repeated in the body.
3941
+ */
2516
3942
  statusCode: number;
3943
+ /**
3944
+ * Error details.
3945
+ */
2517
3946
  error: {
3947
+ /**
3948
+ * Stable, machine-readable error code — branch on this, never on the message.
3949
+ */
2518
3950
  code: 'MISSING-ORG' | 'VALIDATION' | 'INVALID-JSON';
3951
+ /**
3952
+ * Human-readable explanation. Wording may change; do not parse it.
3953
+ */
2519
3954
  message: string;
2520
3955
  };
2521
3956
  };
@@ -2523,9 +3958,21 @@ export type Create2Errors = {
2523
3958
  * Authentication required
2524
3959
  */
2525
3960
  401: {
3961
+ /**
3962
+ * HTTP status code, repeated in the body.
3963
+ */
2526
3964
  statusCode: number;
3965
+ /**
3966
+ * Error details.
3967
+ */
2527
3968
  error: {
3969
+ /**
3970
+ * Stable, machine-readable error code — branch on this, never on the message.
3971
+ */
2528
3972
  code: 'AUTH';
3973
+ /**
3974
+ * Human-readable explanation. Wording may change; do not parse it.
3975
+ */
2529
3976
  message: string;
2530
3977
  };
2531
3978
  };
@@ -2533,15 +3980,27 @@ export type Create2Errors = {
2533
3980
  * Insufficient permissions
2534
3981
  */
2535
3982
  403: {
3983
+ /**
3984
+ * HTTP status code, repeated in the body.
3985
+ */
2536
3986
  statusCode: number;
3987
+ /**
3988
+ * Error details.
3989
+ */
2537
3990
  error: {
3991
+ /**
3992
+ * Stable, machine-readable error code — branch on this, never on the message.
3993
+ */
2538
3994
  code: 'FORBIDDEN' | 'SCOPE-FORBIDDEN';
3995
+ /**
3996
+ * Human-readable explanation. Wording may change; do not parse it.
3997
+ */
2539
3998
  message: string;
2540
3999
  };
2541
4000
  };
2542
4001
  };
2543
- export type Create2Error = Create2Errors[keyof Create2Errors];
2544
- export type Create2Responses = {
4002
+ export type Create3Error = Create3Errors[keyof Create3Errors];
4003
+ export type Create3Responses = {
2545
4004
  /**
2546
4005
  * Successful response
2547
4006
  */
@@ -2554,7 +4013,13 @@ export type Create2Responses = {
2554
4013
  * Organization the conversation is linked to (id + name); null when not tied to one.
2555
4014
  */
2556
4015
  organization: {
4016
+ /**
4017
+ * Opaque id of the referenced doc.
4018
+ */
2557
4019
  id: string;
4020
+ /**
4021
+ * Display name of the referenced doc, denormalized so no extra fetch is needed.
4022
+ */
2558
4023
  name: string;
2559
4024
  } | null;
2560
4025
  /**
@@ -2588,7 +4053,13 @@ export type Create2Responses = {
2588
4053
  * Entity the conversation is linked to (id + name); null when not tied to one.
2589
4054
  */
2590
4055
  entity: {
4056
+ /**
4057
+ * Opaque id of the referenced doc.
4058
+ */
2591
4059
  id: string;
4060
+ /**
4061
+ * Display name of the referenced doc, denormalized so no extra fetch is needed.
4062
+ */
2592
4063
  name: string;
2593
4064
  } | null;
2594
4065
  /**
@@ -2638,8 +4109,8 @@ export type Create2Responses = {
2638
4109
  externalTicketId?: string;
2639
4110
  };
2640
4111
  };
2641
- export type Create2Response = Create2Responses[keyof Create2Responses];
2642
- export type Delete2Data = {
4112
+ export type Create3Response = Create3Responses[keyof Create3Responses];
4113
+ export type Delete3Data = {
2643
4114
  body?: never;
2644
4115
  path: {
2645
4116
  /**
@@ -2650,14 +4121,26 @@ export type Delete2Data = {
2650
4121
  query?: never;
2651
4122
  url: '/conversations/{conversationId}';
2652
4123
  };
2653
- export type Delete2Errors = {
4124
+ export type Delete3Errors = {
2654
4125
  /**
2655
4126
  * Bad request
2656
4127
  */
2657
4128
  400: {
4129
+ /**
4130
+ * HTTP status code, repeated in the body.
4131
+ */
2658
4132
  statusCode: number;
4133
+ /**
4134
+ * Error details.
4135
+ */
2659
4136
  error: {
4137
+ /**
4138
+ * Stable, machine-readable error code — branch on this, never on the message.
4139
+ */
2660
4140
  code: 'MISSING-ORG';
4141
+ /**
4142
+ * Human-readable explanation. Wording may change; do not parse it.
4143
+ */
2661
4144
  message: string;
2662
4145
  };
2663
4146
  };
@@ -2665,9 +4148,21 @@ export type Delete2Errors = {
2665
4148
  * Authentication required
2666
4149
  */
2667
4150
  401: {
4151
+ /**
4152
+ * HTTP status code, repeated in the body.
4153
+ */
2668
4154
  statusCode: number;
4155
+ /**
4156
+ * Error details.
4157
+ */
2669
4158
  error: {
4159
+ /**
4160
+ * Stable, machine-readable error code — branch on this, never on the message.
4161
+ */
2670
4162
  code: 'AUTH';
4163
+ /**
4164
+ * Human-readable explanation. Wording may change; do not parse it.
4165
+ */
2671
4166
  message: string;
2672
4167
  };
2673
4168
  };
@@ -2675,9 +4170,21 @@ export type Delete2Errors = {
2675
4170
  * Insufficient permissions
2676
4171
  */
2677
4172
  403: {
4173
+ /**
4174
+ * HTTP status code, repeated in the body.
4175
+ */
2678
4176
  statusCode: number;
4177
+ /**
4178
+ * Error details.
4179
+ */
2679
4180
  error: {
4181
+ /**
4182
+ * Stable, machine-readable error code — branch on this, never on the message.
4183
+ */
2680
4184
  code: 'FORBIDDEN' | 'SCOPE-FORBIDDEN';
4185
+ /**
4186
+ * Human-readable explanation. Wording may change; do not parse it.
4187
+ */
2681
4188
  message: string;
2682
4189
  };
2683
4190
  };
@@ -2685,15 +4192,27 @@ export type Delete2Errors = {
2685
4192
  * Conversation does not exist.
2686
4193
  */
2687
4194
  404: {
4195
+ /**
4196
+ * HTTP status code, repeated in the body.
4197
+ */
2688
4198
  statusCode: number;
4199
+ /**
4200
+ * Error details.
4201
+ */
2689
4202
  error: {
4203
+ /**
4204
+ * Stable, machine-readable error code — branch on this, never on the message.
4205
+ */
2690
4206
  code: 'NOT-FOUND';
4207
+ /**
4208
+ * Human-readable explanation. Wording may change; do not parse it.
4209
+ */
2691
4210
  message: string;
2692
4211
  };
2693
4212
  };
2694
4213
  };
2695
- export type Delete2Error = Delete2Errors[keyof Delete2Errors];
2696
- export type Delete2Responses = {
4214
+ export type Delete3Error = Delete3Errors[keyof Delete3Errors];
4215
+ export type Delete3Responses = {
2697
4216
  /**
2698
4217
  * Successful response
2699
4218
  */
@@ -2704,8 +4223,8 @@ export type Delete2Responses = {
2704
4223
  message: string;
2705
4224
  };
2706
4225
  };
2707
- export type Delete2Response = Delete2Responses[keyof Delete2Responses];
2708
- export type Get2Data = {
4226
+ export type Delete3Response = Delete3Responses[keyof Delete3Responses];
4227
+ export type Get3Data = {
2709
4228
  body?: never;
2710
4229
  path: {
2711
4230
  /**
@@ -2716,14 +4235,26 @@ export type Get2Data = {
2716
4235
  query?: never;
2717
4236
  url: '/conversations/{conversationId}';
2718
4237
  };
2719
- export type Get2Errors = {
4238
+ export type Get3Errors = {
2720
4239
  /**
2721
4240
  * Bad request
2722
4241
  */
2723
4242
  400: {
4243
+ /**
4244
+ * HTTP status code, repeated in the body.
4245
+ */
2724
4246
  statusCode: number;
4247
+ /**
4248
+ * Error details.
4249
+ */
2725
4250
  error: {
4251
+ /**
4252
+ * Stable, machine-readable error code — branch on this, never on the message.
4253
+ */
2726
4254
  code: 'MISSING-ORG';
4255
+ /**
4256
+ * Human-readable explanation. Wording may change; do not parse it.
4257
+ */
2727
4258
  message: string;
2728
4259
  };
2729
4260
  };
@@ -2731,9 +4262,21 @@ export type Get2Errors = {
2731
4262
  * Authentication required
2732
4263
  */
2733
4264
  401: {
4265
+ /**
4266
+ * HTTP status code, repeated in the body.
4267
+ */
2734
4268
  statusCode: number;
4269
+ /**
4270
+ * Error details.
4271
+ */
2735
4272
  error: {
4273
+ /**
4274
+ * Stable, machine-readable error code — branch on this, never on the message.
4275
+ */
2736
4276
  code: 'AUTH';
4277
+ /**
4278
+ * Human-readable explanation. Wording may change; do not parse it.
4279
+ */
2737
4280
  message: string;
2738
4281
  };
2739
4282
  };
@@ -2741,15 +4284,27 @@ export type Get2Errors = {
2741
4284
  * Insufficient permissions
2742
4285
  */
2743
4286
  403: {
4287
+ /**
4288
+ * HTTP status code, repeated in the body.
4289
+ */
2744
4290
  statusCode: number;
4291
+ /**
4292
+ * Error details.
4293
+ */
2745
4294
  error: {
4295
+ /**
4296
+ * Stable, machine-readable error code — branch on this, never on the message.
4297
+ */
2746
4298
  code: 'FORBIDDEN' | 'SCOPE-FORBIDDEN';
4299
+ /**
4300
+ * Human-readable explanation. Wording may change; do not parse it.
4301
+ */
2747
4302
  message: string;
2748
4303
  };
2749
4304
  };
2750
4305
  };
2751
- export type Get2Error = Get2Errors[keyof Get2Errors];
2752
- export type Get2Responses = {
4306
+ export type Get3Error = Get3Errors[keyof Get3Errors];
4307
+ export type Get3Responses = {
2753
4308
  /**
2754
4309
  * Successful response
2755
4310
  */
@@ -2762,7 +4317,13 @@ export type Get2Responses = {
2762
4317
  * Organization the conversation is linked to (id + name); null when not tied to one.
2763
4318
  */
2764
4319
  organization: {
4320
+ /**
4321
+ * Opaque id of the referenced doc.
4322
+ */
2765
4323
  id: string;
4324
+ /**
4325
+ * Display name of the referenced doc, denormalized so no extra fetch is needed.
4326
+ */
2766
4327
  name: string;
2767
4328
  } | null;
2768
4329
  /**
@@ -2796,7 +4357,13 @@ export type Get2Responses = {
2796
4357
  * Entity the conversation is linked to (id + name); null when not tied to one.
2797
4358
  */
2798
4359
  entity: {
4360
+ /**
4361
+ * Opaque id of the referenced doc.
4362
+ */
2799
4363
  id: string;
4364
+ /**
4365
+ * Display name of the referenced doc, denormalized so no extra fetch is needed.
4366
+ */
2800
4367
  name: string;
2801
4368
  } | null;
2802
4369
  /**
@@ -2846,7 +4413,7 @@ export type Get2Responses = {
2846
4413
  externalTicketId?: string;
2847
4414
  };
2848
4415
  };
2849
- export type Get2Response = Get2Responses[keyof Get2Responses];
4416
+ export type Get3Response = Get3Responses[keyof Get3Responses];
2850
4417
  export type SendMessageData = {
2851
4418
  body?: {
2852
4419
  /**
@@ -2917,9 +4484,21 @@ export type SendMessageErrors = {
2917
4484
  * Bad request
2918
4485
  */
2919
4486
  400: {
4487
+ /**
4488
+ * HTTP status code, repeated in the body.
4489
+ */
2920
4490
  statusCode: number;
4491
+ /**
4492
+ * Error details.
4493
+ */
2921
4494
  error: {
4495
+ /**
4496
+ * Stable, machine-readable error code — branch on this, never on the message.
4497
+ */
2922
4498
  code: 'MISSING-ORG' | 'VALIDATION' | 'INVALID-JSON';
4499
+ /**
4500
+ * Human-readable explanation. Wording may change; do not parse it.
4501
+ */
2923
4502
  message: string;
2924
4503
  };
2925
4504
  };
@@ -2927,9 +4506,21 @@ export type SendMessageErrors = {
2927
4506
  * Authentication required
2928
4507
  */
2929
4508
  401: {
4509
+ /**
4510
+ * HTTP status code, repeated in the body.
4511
+ */
2930
4512
  statusCode: number;
4513
+ /**
4514
+ * Error details.
4515
+ */
2931
4516
  error: {
4517
+ /**
4518
+ * Stable, machine-readable error code — branch on this, never on the message.
4519
+ */
2932
4520
  code: 'AUTH';
4521
+ /**
4522
+ * Human-readable explanation. Wording may change; do not parse it.
4523
+ */
2933
4524
  message: string;
2934
4525
  };
2935
4526
  };
@@ -2937,9 +4528,21 @@ export type SendMessageErrors = {
2937
4528
  * Insufficient permissions
2938
4529
  */
2939
4530
  403: {
4531
+ /**
4532
+ * HTTP status code, repeated in the body.
4533
+ */
2940
4534
  statusCode: number;
4535
+ /**
4536
+ * Error details.
4537
+ */
2941
4538
  error: {
4539
+ /**
4540
+ * Stable, machine-readable error code — branch on this, never on the message.
4541
+ */
2942
4542
  code: 'FORBIDDEN' | 'SCOPE-FORBIDDEN';
4543
+ /**
4544
+ * Human-readable explanation. Wording may change; do not parse it.
4545
+ */
2943
4546
  message: string;
2944
4547
  };
2945
4548
  };
@@ -2958,7 +4561,13 @@ export type SendMessageResponses = {
2958
4561
  * Organization the conversation is linked to (id + name); null when not tied to one.
2959
4562
  */
2960
4563
  organization: {
4564
+ /**
4565
+ * Opaque id of the referenced doc.
4566
+ */
2961
4567
  id: string;
4568
+ /**
4569
+ * Display name of the referenced doc, denormalized so no extra fetch is needed.
4570
+ */
2962
4571
  name: string;
2963
4572
  } | null;
2964
4573
  /**
@@ -2988,7 +4597,13 @@ export type SendMessageResponses = {
2988
4597
  * Entity the conversation is linked to (id + name); null when not tied to one.
2989
4598
  */
2990
4599
  entity: {
4600
+ /**
4601
+ * Opaque id of the referenced doc.
4602
+ */
2991
4603
  id: string;
4604
+ /**
4605
+ * Display name of the referenced doc, denormalized so no extra fetch is needed.
4606
+ */
2992
4607
  name: string;
2993
4608
  } | null;
2994
4609
  /**
@@ -3003,6 +4618,27 @@ export type SendMessageResponses = {
3003
4618
  * True when the conversation was escalated to a human agent (hard-rule trigger, action failure, unidentifiable user, etc.), whether the escalation message was auto-sent or held for validation. When auto-sent, `content` is a notice that the request was forwarded.
3004
4619
  */
3005
4620
  escalated: boolean;
4621
+ /**
4622
+ * What became of every action the AI decided on this turn. Empty when it decided none. A `blocked` entry never reached your endpoint, so this is the only place you see it.
4623
+ */
4624
+ actions: Array<{
4625
+ /**
4626
+ * Action type identifier.
4627
+ */
4628
+ type: string;
4629
+ /**
4630
+ * `success`: your endpoint ran it. `failed`: your endpoint reported a failure. `blocked`: refused at the eligibility check, so it was never sent.
4631
+ */
4632
+ status: 'success' | 'failed' | 'blocked';
4633
+ /**
4634
+ * Failure message your endpoint returned. Only on `failed`.
4635
+ */
4636
+ error?: string;
4637
+ /**
4638
+ * Why the action was refused, as your eligibility endpoint phrased it. Only on `blocked`.
4639
+ */
4640
+ reason?: string;
4641
+ }>;
3006
4642
  };
3007
4643
  };
3008
4644
  export type SendMessageResponse = SendMessageResponses[keyof SendMessageResponses];
@@ -3031,9 +4667,21 @@ export type ValidateResponseErrors = {
3031
4667
  * The response cannot be validated in its current state.
3032
4668
  */
3033
4669
  400: {
4670
+ /**
4671
+ * HTTP status code, repeated in the body.
4672
+ */
3034
4673
  statusCode: number;
4674
+ /**
4675
+ * Error details.
4676
+ */
3035
4677
  error: {
4678
+ /**
4679
+ * Stable, machine-readable error code — branch on this, never on the message.
4680
+ */
3036
4681
  code: 'MISSING-ORG' | 'VALIDATION' | 'INVALID-JSON' | 'ALREADY_SENT' | 'NO_RESPONSE';
4682
+ /**
4683
+ * Human-readable explanation. Wording may change; do not parse it.
4684
+ */
3037
4685
  message: string;
3038
4686
  };
3039
4687
  };
@@ -3041,9 +4689,21 @@ export type ValidateResponseErrors = {
3041
4689
  * Authentication required
3042
4690
  */
3043
4691
  401: {
4692
+ /**
4693
+ * HTTP status code, repeated in the body.
4694
+ */
3044
4695
  statusCode: number;
4696
+ /**
4697
+ * Error details.
4698
+ */
3045
4699
  error: {
4700
+ /**
4701
+ * Stable, machine-readable error code — branch on this, never on the message.
4702
+ */
3046
4703
  code: 'AUTH';
4704
+ /**
4705
+ * Human-readable explanation. Wording may change; do not parse it.
4706
+ */
3047
4707
  message: string;
3048
4708
  };
3049
4709
  };
@@ -3051,9 +4711,21 @@ export type ValidateResponseErrors = {
3051
4711
  * Insufficient permissions
3052
4712
  */
3053
4713
  403: {
4714
+ /**
4715
+ * HTTP status code, repeated in the body.
4716
+ */
3054
4717
  statusCode: number;
4718
+ /**
4719
+ * Error details.
4720
+ */
3055
4721
  error: {
4722
+ /**
4723
+ * Stable, machine-readable error code — branch on this, never on the message.
4724
+ */
3056
4725
  code: 'FORBIDDEN' | 'SCOPE-FORBIDDEN';
4726
+ /**
4727
+ * Human-readable explanation. Wording may change; do not parse it.
4728
+ */
3057
4729
  message: string;
3058
4730
  };
3059
4731
  };
@@ -3061,9 +4733,21 @@ export type ValidateResponseErrors = {
3061
4733
  * Conversation or message at the given index does not exist.
3062
4734
  */
3063
4735
  404: {
4736
+ /**
4737
+ * HTTP status code, repeated in the body.
4738
+ */
3064
4739
  statusCode: number;
4740
+ /**
4741
+ * Error details.
4742
+ */
3065
4743
  error: {
4744
+ /**
4745
+ * Stable, machine-readable error code — branch on this, never on the message.
4746
+ */
3066
4747
  code: 'NOT-FOUND';
4748
+ /**
4749
+ * Human-readable explanation. Wording may change; do not parse it.
4750
+ */
3067
4751
  message: string;
3068
4752
  };
3069
4753
  };
@@ -3119,9 +4803,21 @@ export type RejectResponseErrors = {
3119
4803
  * The response cannot be rejected in its current state.
3120
4804
  */
3121
4805
  400: {
4806
+ /**
4807
+ * HTTP status code, repeated in the body.
4808
+ */
3122
4809
  statusCode: number;
4810
+ /**
4811
+ * Error details.
4812
+ */
3123
4813
  error: {
4814
+ /**
4815
+ * Stable, machine-readable error code — branch on this, never on the message.
4816
+ */
3124
4817
  code: 'MISSING-ORG' | 'VALIDATION' | 'INVALID-JSON' | 'ALREADY_SENT' | 'ALREADY_DECIDED';
4818
+ /**
4819
+ * Human-readable explanation. Wording may change; do not parse it.
4820
+ */
3125
4821
  message: string;
3126
4822
  };
3127
4823
  };
@@ -3129,9 +4825,21 @@ export type RejectResponseErrors = {
3129
4825
  * Authentication required
3130
4826
  */
3131
4827
  401: {
4828
+ /**
4829
+ * HTTP status code, repeated in the body.
4830
+ */
3132
4831
  statusCode: number;
4832
+ /**
4833
+ * Error details.
4834
+ */
3133
4835
  error: {
4836
+ /**
4837
+ * Stable, machine-readable error code — branch on this, never on the message.
4838
+ */
3134
4839
  code: 'AUTH';
4840
+ /**
4841
+ * Human-readable explanation. Wording may change; do not parse it.
4842
+ */
3135
4843
  message: string;
3136
4844
  };
3137
4845
  };
@@ -3139,9 +4847,21 @@ export type RejectResponseErrors = {
3139
4847
  * Insufficient permissions
3140
4848
  */
3141
4849
  403: {
4850
+ /**
4851
+ * HTTP status code, repeated in the body.
4852
+ */
3142
4853
  statusCode: number;
4854
+ /**
4855
+ * Error details.
4856
+ */
3143
4857
  error: {
4858
+ /**
4859
+ * Stable, machine-readable error code — branch on this, never on the message.
4860
+ */
3144
4861
  code: 'FORBIDDEN' | 'SCOPE-FORBIDDEN';
4862
+ /**
4863
+ * Human-readable explanation. Wording may change; do not parse it.
4864
+ */
3145
4865
  message: string;
3146
4866
  };
3147
4867
  };
@@ -3149,9 +4869,21 @@ export type RejectResponseErrors = {
3149
4869
  * Conversation or message at the given index does not exist.
3150
4870
  */
3151
4871
  404: {
4872
+ /**
4873
+ * HTTP status code, repeated in the body.
4874
+ */
3152
4875
  statusCode: number;
4876
+ /**
4877
+ * Error details.
4878
+ */
3153
4879
  error: {
4880
+ /**
4881
+ * Stable, machine-readable error code — branch on this, never on the message.
4882
+ */
3154
4883
  code: 'NOT-FOUND';
4884
+ /**
4885
+ * Human-readable explanation. Wording may change; do not parse it.
4886
+ */
3155
4887
  message: string;
3156
4888
  };
3157
4889
  };
@@ -3198,9 +4930,21 @@ export type AppendMessageErrors = {
3198
4930
  * Bad request
3199
4931
  */
3200
4932
  400: {
4933
+ /**
4934
+ * HTTP status code, repeated in the body.
4935
+ */
3201
4936
  statusCode: number;
4937
+ /**
4938
+ * Error details.
4939
+ */
3202
4940
  error: {
4941
+ /**
4942
+ * Stable, machine-readable error code — branch on this, never on the message.
4943
+ */
3203
4944
  code: 'MISSING-ORG' | 'VALIDATION' | 'INVALID-JSON';
4945
+ /**
4946
+ * Human-readable explanation. Wording may change; do not parse it.
4947
+ */
3204
4948
  message: string;
3205
4949
  };
3206
4950
  };
@@ -3208,9 +4952,21 @@ export type AppendMessageErrors = {
3208
4952
  * Authentication required
3209
4953
  */
3210
4954
  401: {
4955
+ /**
4956
+ * HTTP status code, repeated in the body.
4957
+ */
3211
4958
  statusCode: number;
4959
+ /**
4960
+ * Error details.
4961
+ */
3212
4962
  error: {
4963
+ /**
4964
+ * Stable, machine-readable error code — branch on this, never on the message.
4965
+ */
3213
4966
  code: 'AUTH';
4967
+ /**
4968
+ * Human-readable explanation. Wording may change; do not parse it.
4969
+ */
3214
4970
  message: string;
3215
4971
  };
3216
4972
  };
@@ -3218,9 +4974,21 @@ export type AppendMessageErrors = {
3218
4974
  * Insufficient permissions
3219
4975
  */
3220
4976
  403: {
4977
+ /**
4978
+ * HTTP status code, repeated in the body.
4979
+ */
3221
4980
  statusCode: number;
4981
+ /**
4982
+ * Error details.
4983
+ */
3222
4984
  error: {
4985
+ /**
4986
+ * Stable, machine-readable error code — branch on this, never on the message.
4987
+ */
3223
4988
  code: 'FORBIDDEN' | 'SCOPE-FORBIDDEN';
4989
+ /**
4990
+ * Human-readable explanation. Wording may change; do not parse it.
4991
+ */
3224
4992
  message: string;
3225
4993
  };
3226
4994
  };
@@ -3228,9 +4996,21 @@ export type AppendMessageErrors = {
3228
4996
  * Conversation does not exist.
3229
4997
  */
3230
4998
  404: {
4999
+ /**
5000
+ * HTTP status code, repeated in the body.
5001
+ */
3231
5002
  statusCode: number;
5003
+ /**
5004
+ * Error details.
5005
+ */
3232
5006
  error: {
5007
+ /**
5008
+ * Stable, machine-readable error code — branch on this, never on the message.
5009
+ */
3233
5010
  code: 'NOT-FOUND';
5011
+ /**
5012
+ * Human-readable explanation. Wording may change; do not parse it.
5013
+ */
3234
5014
  message: string;
3235
5015
  };
3236
5016
  };
@@ -3290,9 +5070,30 @@ export type SimulateData = {
3290
5070
  */
3291
5071
  subject?: string;
3292
5072
  /**
3293
- * Action types to force into failure, to exercise escalation paths. Simulation-only.
5073
+ * What each action answers instead of calling your webhook, keyed by action type. Same shape as a real `execute` response: `success: false` fails the action with your `error`, and a failure returns no data. Simulation-only.
3294
5074
  */
3295
- failActions?: Array<string>;
5075
+ actionResponses?: {
5076
+ [key: string]: {
5077
+ /**
5078
+ * Required. `true` marks the action as succeeded, and lets you return `data`; `false` fails it with your `error`.
5079
+ */
5080
+ success: boolean;
5081
+ /**
5082
+ * Payload the action returns, injected into the agent's context as ground truth. Only on a success.
5083
+ */
5084
+ data?: {
5085
+ [key: string]: unknown;
5086
+ };
5087
+ /**
5088
+ * Why the action failed, injected into the agent's context so the reply can account for it. Requires `success: false`.
5089
+ */
5090
+ error?: string;
5091
+ /**
5092
+ * Hand the conversation to a human once the reply is written, without telling the user.
5093
+ */
5094
+ silentEscalation?: boolean;
5095
+ };
5096
+ };
3296
5097
  /**
3297
5098
  * Custom key/value pairs attached to the conversation. Available as variables in your agent prompts.
3298
5099
  */
@@ -3313,9 +5114,21 @@ export type SimulateErrors = {
3313
5114
  * The conversation is a real one, or no organization context was provided (admin keys must send X-Organization-Id).
3314
5115
  */
3315
5116
  400: {
5117
+ /**
5118
+ * HTTP status code, repeated in the body.
5119
+ */
3316
5120
  statusCode: number;
5121
+ /**
5122
+ * Error details.
5123
+ */
3317
5124
  error: {
5125
+ /**
5126
+ * Stable, machine-readable error code — branch on this, never on the message.
5127
+ */
3318
5128
  code: 'MISSING-ORG' | 'VALIDATION' | 'INVALID-JSON' | 'NOT-SIMULATION' | 'MISSING-ORG';
5129
+ /**
5130
+ * Human-readable explanation. Wording may change; do not parse it.
5131
+ */
3319
5132
  message: string;
3320
5133
  };
3321
5134
  };
@@ -3323,9 +5136,21 @@ export type SimulateErrors = {
3323
5136
  * Authentication required
3324
5137
  */
3325
5138
  401: {
5139
+ /**
5140
+ * HTTP status code, repeated in the body.
5141
+ */
3326
5142
  statusCode: number;
5143
+ /**
5144
+ * Error details.
5145
+ */
3327
5146
  error: {
5147
+ /**
5148
+ * Stable, machine-readable error code — branch on this, never on the message.
5149
+ */
3328
5150
  code: 'AUTH';
5151
+ /**
5152
+ * Human-readable explanation. Wording may change; do not parse it.
5153
+ */
3329
5154
  message: string;
3330
5155
  };
3331
5156
  };
@@ -3333,9 +5158,21 @@ export type SimulateErrors = {
3333
5158
  * Insufficient permissions
3334
5159
  */
3335
5160
  403: {
5161
+ /**
5162
+ * HTTP status code, repeated in the body.
5163
+ */
3336
5164
  statusCode: number;
5165
+ /**
5166
+ * Error details.
5167
+ */
3337
5168
  error: {
5169
+ /**
5170
+ * Stable, machine-readable error code — branch on this, never on the message.
5171
+ */
3338
5172
  code: 'FORBIDDEN' | 'SCOPE-FORBIDDEN';
5173
+ /**
5174
+ * Human-readable explanation. Wording may change; do not parse it.
5175
+ */
3339
5176
  message: string;
3340
5177
  };
3341
5178
  };
@@ -3343,9 +5180,21 @@ export type SimulateErrors = {
3343
5180
  * Conversation does not exist.
3344
5181
  */
3345
5182
  404: {
5183
+ /**
5184
+ * HTTP status code, repeated in the body.
5185
+ */
3346
5186
  statusCode: number;
5187
+ /**
5188
+ * Error details.
5189
+ */
3347
5190
  error: {
5191
+ /**
5192
+ * Stable, machine-readable error code — branch on this, never on the message.
5193
+ */
3348
5194
  code: 'NOT-FOUND';
5195
+ /**
5196
+ * Human-readable explanation. Wording may change; do not parse it.
5197
+ */
3349
5198
  message: string;
3350
5199
  };
3351
5200
  };
@@ -3364,7 +5213,13 @@ export type SimulateResponses = {
3364
5213
  * Organization the conversation is linked to (id + name); null when not tied to one.
3365
5214
  */
3366
5215
  organization: {
5216
+ /**
5217
+ * Opaque id of the referenced doc.
5218
+ */
3367
5219
  id: string;
5220
+ /**
5221
+ * Display name of the referenced doc, denormalized so no extra fetch is needed.
5222
+ */
3368
5223
  name: string;
3369
5224
  } | null;
3370
5225
  /**
@@ -3394,7 +5249,13 @@ export type SimulateResponses = {
3394
5249
  * Entity the conversation is linked to (id + name); null when not tied to one.
3395
5250
  */
3396
5251
  entity: {
5252
+ /**
5253
+ * Opaque id of the referenced doc.
5254
+ */
3397
5255
  id: string;
5256
+ /**
5257
+ * Display name of the referenced doc, denormalized so no extra fetch is needed.
5258
+ */
3398
5259
  name: string;
3399
5260
  } | null;
3400
5261
  /**
@@ -3409,10 +5270,31 @@ export type SimulateResponses = {
3409
5270
  * True when the conversation was escalated to a human agent (hard-rule trigger, action failure, unidentifiable user, etc.), whether the escalation message was auto-sent or held for validation. When auto-sent, `content` is a notice that the request was forwarded.
3410
5271
  */
3411
5272
  escalated: boolean;
5273
+ /**
5274
+ * What became of every action the AI decided on this turn. Empty when it decided none. A `blocked` entry never reached your endpoint, so this is the only place you see it.
5275
+ */
5276
+ actions: Array<{
5277
+ /**
5278
+ * Action type identifier.
5279
+ */
5280
+ type: string;
5281
+ /**
5282
+ * `success`: your endpoint ran it. `failed`: your endpoint reported a failure. `blocked`: refused at the eligibility check, so it was never sent.
5283
+ */
5284
+ status: 'success' | 'failed' | 'blocked';
5285
+ /**
5286
+ * Failure message your endpoint returned. Only on `failed`.
5287
+ */
5288
+ error?: string;
5289
+ /**
5290
+ * Why the action was refused, as your eligibility endpoint phrased it. Only on `blocked`.
5291
+ */
5292
+ reason?: string;
5293
+ }>;
3412
5294
  };
3413
5295
  };
3414
5296
  export type SimulateResponse = SimulateResponses[keyof SimulateResponses];
3415
- export type List3Data = {
5297
+ export type List4Data = {
3416
5298
  body?: never;
3417
5299
  path?: never;
3418
5300
  query?: {
@@ -3431,14 +5313,26 @@ export type List3Data = {
3431
5313
  };
3432
5314
  url: '/entities';
3433
5315
  };
3434
- export type List3Errors = {
5316
+ export type List4Errors = {
3435
5317
  /**
3436
5318
  * Bad request
3437
5319
  */
3438
5320
  400: {
5321
+ /**
5322
+ * HTTP status code, repeated in the body.
5323
+ */
3439
5324
  statusCode: number;
5325
+ /**
5326
+ * Error details.
5327
+ */
3440
5328
  error: {
5329
+ /**
5330
+ * Stable, machine-readable error code — branch on this, never on the message.
5331
+ */
3441
5332
  code: 'MISSING-ORG' | 'VALIDATION' | 'INVALID-JSON';
5333
+ /**
5334
+ * Human-readable explanation. Wording may change; do not parse it.
5335
+ */
3442
5336
  message: string;
3443
5337
  };
3444
5338
  };
@@ -3446,9 +5340,21 @@ export type List3Errors = {
3446
5340
  * Authentication required
3447
5341
  */
3448
5342
  401: {
5343
+ /**
5344
+ * HTTP status code, repeated in the body.
5345
+ */
3449
5346
  statusCode: number;
5347
+ /**
5348
+ * Error details.
5349
+ */
3450
5350
  error: {
5351
+ /**
5352
+ * Stable, machine-readable error code — branch on this, never on the message.
5353
+ */
3451
5354
  code: 'AUTH';
5355
+ /**
5356
+ * Human-readable explanation. Wording may change; do not parse it.
5357
+ */
3452
5358
  message: string;
3453
5359
  };
3454
5360
  };
@@ -3456,19 +5362,34 @@ export type List3Errors = {
3456
5362
  * Insufficient permissions
3457
5363
  */
3458
5364
  403: {
5365
+ /**
5366
+ * HTTP status code, repeated in the body.
5367
+ */
3459
5368
  statusCode: number;
5369
+ /**
5370
+ * Error details.
5371
+ */
3460
5372
  error: {
5373
+ /**
5374
+ * Stable, machine-readable error code — branch on this, never on the message.
5375
+ */
3461
5376
  code: 'FORBIDDEN' | 'SCOPE-FORBIDDEN';
5377
+ /**
5378
+ * Human-readable explanation. Wording may change; do not parse it.
5379
+ */
3462
5380
  message: string;
3463
5381
  };
3464
5382
  };
3465
5383
  };
3466
- export type List3Error = List3Errors[keyof List3Errors];
3467
- export type List3Responses = {
5384
+ export type List4Error = List4Errors[keyof List4Errors];
5385
+ export type List4Responses = {
3468
5386
  /**
3469
5387
  * Successful response
3470
5388
  */
3471
5389
  200: {
5390
+ /**
5391
+ * This page of entities — at most `limit` items, starting at `offset`.
5392
+ */
3472
5393
  entities: Array<{
3473
5394
  /**
3474
5395
  * Entity ID (format: ent_xxxxxxxxxxxx).
@@ -3478,7 +5399,13 @@ export type List3Responses = {
3478
5399
  * Parent organization ref (id + name); null when not tied to one.
3479
5400
  */
3480
5401
  organization: {
5402
+ /**
5403
+ * Opaque id of the referenced doc.
5404
+ */
3481
5405
  id: string;
5406
+ /**
5407
+ * Display name of the referenced doc, denormalized so no extra fetch is needed.
5408
+ */
3482
5409
  name: string;
3483
5410
  } | null;
3484
5411
  /**
@@ -3508,8 +5435,8 @@ export type List3Responses = {
3508
5435
  offset: number;
3509
5436
  };
3510
5437
  };
3511
- export type List3Response = List3Responses[keyof List3Responses];
3512
- export type Create3Data = {
5438
+ export type List4Response = List4Responses[keyof List4Responses];
5439
+ export type Create4Data = {
3513
5440
  body?: {
3514
5441
  /**
3515
5442
  * Human-readable name of the entity.
@@ -3526,14 +5453,26 @@ export type Create3Data = {
3526
5453
  query?: never;
3527
5454
  url: '/entities';
3528
5455
  };
3529
- export type Create3Errors = {
5456
+ export type Create4Errors = {
3530
5457
  /**
3531
5458
  * Bad request
3532
5459
  */
3533
5460
  400: {
5461
+ /**
5462
+ * HTTP status code, repeated in the body.
5463
+ */
3534
5464
  statusCode: number;
5465
+ /**
5466
+ * Error details.
5467
+ */
3535
5468
  error: {
5469
+ /**
5470
+ * Stable, machine-readable error code — branch on this, never on the message.
5471
+ */
3536
5472
  code: 'MISSING-ORG' | 'VALIDATION' | 'INVALID-JSON';
5473
+ /**
5474
+ * Human-readable explanation. Wording may change; do not parse it.
5475
+ */
3537
5476
  message: string;
3538
5477
  };
3539
5478
  };
@@ -3541,9 +5480,21 @@ export type Create3Errors = {
3541
5480
  * Authentication required
3542
5481
  */
3543
5482
  401: {
5483
+ /**
5484
+ * HTTP status code, repeated in the body.
5485
+ */
3544
5486
  statusCode: number;
5487
+ /**
5488
+ * Error details.
5489
+ */
3545
5490
  error: {
5491
+ /**
5492
+ * Stable, machine-readable error code — branch on this, never on the message.
5493
+ */
3546
5494
  code: 'AUTH';
5495
+ /**
5496
+ * Human-readable explanation. Wording may change; do not parse it.
5497
+ */
3547
5498
  message: string;
3548
5499
  };
3549
5500
  };
@@ -3551,15 +5502,27 @@ export type Create3Errors = {
3551
5502
  * Insufficient permissions
3552
5503
  */
3553
5504
  403: {
5505
+ /**
5506
+ * HTTP status code, repeated in the body.
5507
+ */
3554
5508
  statusCode: number;
5509
+ /**
5510
+ * Error details.
5511
+ */
3555
5512
  error: {
5513
+ /**
5514
+ * Stable, machine-readable error code — branch on this, never on the message.
5515
+ */
3556
5516
  code: 'FORBIDDEN' | 'SCOPE-FORBIDDEN';
5517
+ /**
5518
+ * Human-readable explanation. Wording may change; do not parse it.
5519
+ */
3557
5520
  message: string;
3558
5521
  };
3559
5522
  };
3560
5523
  };
3561
- export type Create3Error = Create3Errors[keyof Create3Errors];
3562
- export type Create3Responses = {
5524
+ export type Create4Error = Create4Errors[keyof Create4Errors];
5525
+ export type Create4Responses = {
3563
5526
  /**
3564
5527
  * Successful response
3565
5528
  */
@@ -3572,7 +5535,13 @@ export type Create3Responses = {
3572
5535
  * Parent organization ref (id + name); null when not tied to one.
3573
5536
  */
3574
5537
  organization: {
5538
+ /**
5539
+ * Opaque id of the referenced doc.
5540
+ */
3575
5541
  id: string;
5542
+ /**
5543
+ * Display name of the referenced doc, denormalized so no extra fetch is needed.
5544
+ */
3576
5545
  name: string;
3577
5546
  } | null;
3578
5547
  /**
@@ -3595,8 +5564,8 @@ export type Create3Responses = {
3595
5564
  };
3596
5565
  };
3597
5566
  };
3598
- export type Create3Response = Create3Responses[keyof Create3Responses];
3599
- export type Delete3Data = {
5567
+ export type Create4Response = Create4Responses[keyof Create4Responses];
5568
+ export type Delete4Data = {
3600
5569
  body?: never;
3601
5570
  path: {
3602
5571
  /**
@@ -3607,14 +5576,26 @@ export type Delete3Data = {
3607
5576
  query?: never;
3608
5577
  url: '/entities/{id}';
3609
5578
  };
3610
- export type Delete3Errors = {
5579
+ export type Delete4Errors = {
3611
5580
  /**
3612
5581
  * Bad request
3613
5582
  */
3614
5583
  400: {
5584
+ /**
5585
+ * HTTP status code, repeated in the body.
5586
+ */
3615
5587
  statusCode: number;
5588
+ /**
5589
+ * Error details.
5590
+ */
3616
5591
  error: {
5592
+ /**
5593
+ * Stable, machine-readable error code — branch on this, never on the message.
5594
+ */
3617
5595
  code: 'MISSING-ORG';
5596
+ /**
5597
+ * Human-readable explanation. Wording may change; do not parse it.
5598
+ */
3618
5599
  message: string;
3619
5600
  };
3620
5601
  };
@@ -3622,9 +5603,21 @@ export type Delete3Errors = {
3622
5603
  * Authentication required
3623
5604
  */
3624
5605
  401: {
5606
+ /**
5607
+ * HTTP status code, repeated in the body.
5608
+ */
3625
5609
  statusCode: number;
5610
+ /**
5611
+ * Error details.
5612
+ */
3626
5613
  error: {
5614
+ /**
5615
+ * Stable, machine-readable error code — branch on this, never on the message.
5616
+ */
3627
5617
  code: 'AUTH';
5618
+ /**
5619
+ * Human-readable explanation. Wording may change; do not parse it.
5620
+ */
3628
5621
  message: string;
3629
5622
  };
3630
5623
  };
@@ -3632,15 +5625,27 @@ export type Delete3Errors = {
3632
5625
  * Insufficient permissions
3633
5626
  */
3634
5627
  403: {
5628
+ /**
5629
+ * HTTP status code, repeated in the body.
5630
+ */
3635
5631
  statusCode: number;
5632
+ /**
5633
+ * Error details.
5634
+ */
3636
5635
  error: {
5636
+ /**
5637
+ * Stable, machine-readable error code — branch on this, never on the message.
5638
+ */
3637
5639
  code: 'FORBIDDEN' | 'SCOPE-FORBIDDEN';
5640
+ /**
5641
+ * Human-readable explanation. Wording may change; do not parse it.
5642
+ */
3638
5643
  message: string;
3639
5644
  };
3640
5645
  };
3641
5646
  };
3642
- export type Delete3Error = Delete3Errors[keyof Delete3Errors];
3643
- export type Delete3Responses = {
5647
+ export type Delete4Error = Delete4Errors[keyof Delete4Errors];
5648
+ export type Delete4Responses = {
3644
5649
  /**
3645
5650
  * Successful response
3646
5651
  */
@@ -3651,8 +5656,8 @@ export type Delete3Responses = {
3651
5656
  message: string;
3652
5657
  };
3653
5658
  };
3654
- export type Delete3Response = Delete3Responses[keyof Delete3Responses];
3655
- export type Get3Data = {
5659
+ export type Delete4Response = Delete4Responses[keyof Delete4Responses];
5660
+ export type Get4Data = {
3656
5661
  body?: never;
3657
5662
  path: {
3658
5663
  /**
@@ -3663,14 +5668,26 @@ export type Get3Data = {
3663
5668
  query?: never;
3664
5669
  url: '/entities/{id}';
3665
5670
  };
3666
- export type Get3Errors = {
5671
+ export type Get4Errors = {
3667
5672
  /**
3668
5673
  * Bad request
3669
5674
  */
3670
5675
  400: {
5676
+ /**
5677
+ * HTTP status code, repeated in the body.
5678
+ */
3671
5679
  statusCode: number;
5680
+ /**
5681
+ * Error details.
5682
+ */
3672
5683
  error: {
5684
+ /**
5685
+ * Stable, machine-readable error code — branch on this, never on the message.
5686
+ */
3673
5687
  code: 'MISSING-ORG';
5688
+ /**
5689
+ * Human-readable explanation. Wording may change; do not parse it.
5690
+ */
3674
5691
  message: string;
3675
5692
  };
3676
5693
  };
@@ -3678,9 +5695,21 @@ export type Get3Errors = {
3678
5695
  * Authentication required
3679
5696
  */
3680
5697
  401: {
5698
+ /**
5699
+ * HTTP status code, repeated in the body.
5700
+ */
3681
5701
  statusCode: number;
5702
+ /**
5703
+ * Error details.
5704
+ */
3682
5705
  error: {
5706
+ /**
5707
+ * Stable, machine-readable error code — branch on this, never on the message.
5708
+ */
3683
5709
  code: 'AUTH';
5710
+ /**
5711
+ * Human-readable explanation. Wording may change; do not parse it.
5712
+ */
3684
5713
  message: string;
3685
5714
  };
3686
5715
  };
@@ -3688,15 +5717,27 @@ export type Get3Errors = {
3688
5717
  * Insufficient permissions
3689
5718
  */
3690
5719
  403: {
5720
+ /**
5721
+ * HTTP status code, repeated in the body.
5722
+ */
3691
5723
  statusCode: number;
5724
+ /**
5725
+ * Error details.
5726
+ */
3692
5727
  error: {
5728
+ /**
5729
+ * Stable, machine-readable error code — branch on this, never on the message.
5730
+ */
3693
5731
  code: 'FORBIDDEN' | 'SCOPE-FORBIDDEN';
5732
+ /**
5733
+ * Human-readable explanation. Wording may change; do not parse it.
5734
+ */
3694
5735
  message: string;
3695
5736
  };
3696
5737
  };
3697
5738
  };
3698
- export type Get3Error = Get3Errors[keyof Get3Errors];
3699
- export type Get3Responses = {
5739
+ export type Get4Error = Get4Errors[keyof Get4Errors];
5740
+ export type Get4Responses = {
3700
5741
  /**
3701
5742
  * Successful response
3702
5743
  */
@@ -3709,7 +5750,13 @@ export type Get3Responses = {
3709
5750
  * Parent organization ref (id + name); null when not tied to one.
3710
5751
  */
3711
5752
  organization: {
5753
+ /**
5754
+ * Opaque id of the referenced doc.
5755
+ */
3712
5756
  id: string;
5757
+ /**
5758
+ * Display name of the referenced doc, denormalized so no extra fetch is needed.
5759
+ */
3713
5760
  name: string;
3714
5761
  } | null;
3715
5762
  /**
@@ -3732,8 +5779,8 @@ export type Get3Responses = {
3732
5779
  };
3733
5780
  };
3734
5781
  };
3735
- export type Get3Response = Get3Responses[keyof Get3Responses];
3736
- export type Update2Data = {
5782
+ export type Get4Response = Get4Responses[keyof Get4Responses];
5783
+ export type Update3Data = {
3737
5784
  body?: {
3738
5785
  /**
3739
5786
  * New name for the entity.
@@ -3755,14 +5802,26 @@ export type Update2Data = {
3755
5802
  query?: never;
3756
5803
  url: '/entities/{id}';
3757
5804
  };
3758
- export type Update2Errors = {
5805
+ export type Update3Errors = {
3759
5806
  /**
3760
5807
  * Bad request
3761
5808
  */
3762
5809
  400: {
5810
+ /**
5811
+ * HTTP status code, repeated in the body.
5812
+ */
3763
5813
  statusCode: number;
5814
+ /**
5815
+ * Error details.
5816
+ */
3764
5817
  error: {
5818
+ /**
5819
+ * Stable, machine-readable error code — branch on this, never on the message.
5820
+ */
3765
5821
  code: 'MISSING-ORG' | 'VALIDATION' | 'INVALID-JSON';
5822
+ /**
5823
+ * Human-readable explanation. Wording may change; do not parse it.
5824
+ */
3766
5825
  message: string;
3767
5826
  };
3768
5827
  };
@@ -3770,9 +5829,21 @@ export type Update2Errors = {
3770
5829
  * Authentication required
3771
5830
  */
3772
5831
  401: {
5832
+ /**
5833
+ * HTTP status code, repeated in the body.
5834
+ */
3773
5835
  statusCode: number;
5836
+ /**
5837
+ * Error details.
5838
+ */
3774
5839
  error: {
5840
+ /**
5841
+ * Stable, machine-readable error code — branch on this, never on the message.
5842
+ */
3775
5843
  code: 'AUTH';
5844
+ /**
5845
+ * Human-readable explanation. Wording may change; do not parse it.
5846
+ */
3776
5847
  message: string;
3777
5848
  };
3778
5849
  };
@@ -3780,15 +5851,27 @@ export type Update2Errors = {
3780
5851
  * Insufficient permissions
3781
5852
  */
3782
5853
  403: {
5854
+ /**
5855
+ * HTTP status code, repeated in the body.
5856
+ */
3783
5857
  statusCode: number;
5858
+ /**
5859
+ * Error details.
5860
+ */
3784
5861
  error: {
5862
+ /**
5863
+ * Stable, machine-readable error code — branch on this, never on the message.
5864
+ */
3785
5865
  code: 'FORBIDDEN' | 'SCOPE-FORBIDDEN';
5866
+ /**
5867
+ * Human-readable explanation. Wording may change; do not parse it.
5868
+ */
3786
5869
  message: string;
3787
5870
  };
3788
5871
  };
3789
5872
  };
3790
- export type Update2Error = Update2Errors[keyof Update2Errors];
3791
- export type Update2Responses = {
5873
+ export type Update3Error = Update3Errors[keyof Update3Errors];
5874
+ export type Update3Responses = {
3792
5875
  /**
3793
5876
  * Successful response
3794
5877
  */
@@ -3801,7 +5884,13 @@ export type Update2Responses = {
3801
5884
  * Parent organization ref (id + name); null when not tied to one.
3802
5885
  */
3803
5886
  organization: {
5887
+ /**
5888
+ * Opaque id of the referenced doc.
5889
+ */
3804
5890
  id: string;
5891
+ /**
5892
+ * Display name of the referenced doc, denormalized so no extra fetch is needed.
5893
+ */
3805
5894
  name: string;
3806
5895
  } | null;
3807
5896
  /**
@@ -3824,8 +5913,8 @@ export type Update2Responses = {
3824
5913
  };
3825
5914
  };
3826
5915
  };
3827
- export type Update2Response = Update2Responses[keyof Update2Responses];
3828
- export type List4Data = {
5916
+ export type Update3Response = Update3Responses[keyof Update3Responses];
5917
+ export type List5Data = {
3829
5918
  body?: never;
3830
5919
  path?: never;
3831
5920
  query?: {
@@ -3836,14 +5925,26 @@ export type List4Data = {
3836
5925
  };
3837
5926
  url: '/intents';
3838
5927
  };
3839
- export type List4Errors = {
5928
+ export type List5Errors = {
3840
5929
  /**
3841
5930
  * Bad request
3842
5931
  */
3843
5932
  400: {
5933
+ /**
5934
+ * HTTP status code, repeated in the body.
5935
+ */
3844
5936
  statusCode: number;
5937
+ /**
5938
+ * Error details.
5939
+ */
3845
5940
  error: {
5941
+ /**
5942
+ * Stable, machine-readable error code — branch on this, never on the message.
5943
+ */
3846
5944
  code: 'MISSING-ORG' | 'VALIDATION' | 'INVALID-JSON';
5945
+ /**
5946
+ * Human-readable explanation. Wording may change; do not parse it.
5947
+ */
3847
5948
  message: string;
3848
5949
  };
3849
5950
  };
@@ -3851,9 +5952,21 @@ export type List4Errors = {
3851
5952
  * Authentication required
3852
5953
  */
3853
5954
  401: {
5955
+ /**
5956
+ * HTTP status code, repeated in the body.
5957
+ */
3854
5958
  statusCode: number;
5959
+ /**
5960
+ * Error details.
5961
+ */
3855
5962
  error: {
5963
+ /**
5964
+ * Stable, machine-readable error code — branch on this, never on the message.
5965
+ */
3856
5966
  code: 'AUTH';
5967
+ /**
5968
+ * Human-readable explanation. Wording may change; do not parse it.
5969
+ */
3857
5970
  message: string;
3858
5971
  };
3859
5972
  };
@@ -3861,15 +5974,27 @@ export type List4Errors = {
3861
5974
  * Insufficient permissions
3862
5975
  */
3863
5976
  403: {
5977
+ /**
5978
+ * HTTP status code, repeated in the body.
5979
+ */
3864
5980
  statusCode: number;
5981
+ /**
5982
+ * Error details.
5983
+ */
3865
5984
  error: {
5985
+ /**
5986
+ * Stable, machine-readable error code — branch on this, never on the message.
5987
+ */
3866
5988
  code: 'FORBIDDEN' | 'SCOPE-FORBIDDEN';
5989
+ /**
5990
+ * Human-readable explanation. Wording may change; do not parse it.
5991
+ */
3867
5992
  message: string;
3868
5993
  };
3869
5994
  };
3870
5995
  };
3871
- export type List4Error = List4Errors[keyof List4Errors];
3872
- export type List4Responses = {
5996
+ export type List5Error = List5Errors[keyof List5Errors];
5997
+ export type List5Responses = {
3873
5998
  /**
3874
5999
  * Successful response
3875
6000
  */
@@ -3879,13 +6004,9 @@ export type List4Responses = {
3879
6004
  */
3880
6005
  intents: Array<{
3881
6006
  /**
3882
- * Opaque intent id (prefixed `int_`).
3883
- */
3884
- id: string;
3885
- /**
3886
- * Machine name — stable identifier used across the API.
6007
+ * Machine name — the identifier this intent is addressed by.
3887
6008
  */
3888
- intent: string;
6009
+ type: string;
3889
6010
  /**
3890
6011
  * Human-readable label.
3891
6012
  */
@@ -3939,11 +6060,11 @@ export type List4Responses = {
3939
6060
  }>;
3940
6061
  };
3941
6062
  };
3942
- export type List4Response = List4Responses[keyof List4Responses];
3943
- export type Create4Data = {
6063
+ export type List5Response = List5Responses[keyof List5Responses];
6064
+ export type Create5Data = {
3944
6065
  body?: {
3945
6066
  /**
3946
- * Human-readable label. The intent's machine name is derived from it (lower-cased, words joined by `_`).
6067
+ * Human-readable label. The intent's machine name is derived from it (lower-cased, words joined by `_`). Write it in English — the derived name is what the AI reads.
3947
6068
  */
3948
6069
  label: string;
3949
6070
  /**
@@ -3980,14 +6101,26 @@ export type Create4Data = {
3980
6101
  query?: never;
3981
6102
  url: '/intents';
3982
6103
  };
3983
- export type Create4Errors = {
6104
+ export type Create5Errors = {
3984
6105
  /**
3985
6106
  * Bad request
3986
6107
  */
3987
6108
  400: {
6109
+ /**
6110
+ * HTTP status code, repeated in the body.
6111
+ */
3988
6112
  statusCode: number;
6113
+ /**
6114
+ * Error details.
6115
+ */
3989
6116
  error: {
6117
+ /**
6118
+ * Stable, machine-readable error code — branch on this, never on the message.
6119
+ */
3990
6120
  code: 'MISSING-ORG' | 'VALIDATION' | 'INVALID-JSON';
6121
+ /**
6122
+ * Human-readable explanation. Wording may change; do not parse it.
6123
+ */
3991
6124
  message: string;
3992
6125
  };
3993
6126
  };
@@ -3995,9 +6128,21 @@ export type Create4Errors = {
3995
6128
  * Authentication required
3996
6129
  */
3997
6130
  401: {
6131
+ /**
6132
+ * HTTP status code, repeated in the body.
6133
+ */
3998
6134
  statusCode: number;
6135
+ /**
6136
+ * Error details.
6137
+ */
3999
6138
  error: {
6139
+ /**
6140
+ * Stable, machine-readable error code — branch on this, never on the message.
6141
+ */
4000
6142
  code: 'AUTH';
6143
+ /**
6144
+ * Human-readable explanation. Wording may change; do not parse it.
6145
+ */
4001
6146
  message: string;
4002
6147
  };
4003
6148
  };
@@ -4005,27 +6150,35 @@ export type Create4Errors = {
4005
6150
  * Insufficient permissions
4006
6151
  */
4007
6152
  403: {
6153
+ /**
6154
+ * HTTP status code, repeated in the body.
6155
+ */
4008
6156
  statusCode: number;
6157
+ /**
6158
+ * Error details.
6159
+ */
4009
6160
  error: {
6161
+ /**
6162
+ * Stable, machine-readable error code — branch on this, never on the message.
6163
+ */
4010
6164
  code: 'FORBIDDEN' | 'SCOPE-FORBIDDEN';
6165
+ /**
6166
+ * Human-readable explanation. Wording may change; do not parse it.
6167
+ */
4011
6168
  message: string;
4012
6169
  };
4013
6170
  };
4014
6171
  };
4015
- export type Create4Error = Create4Errors[keyof Create4Errors];
4016
- export type Create4Responses = {
6172
+ export type Create5Error = Create5Errors[keyof Create5Errors];
6173
+ export type Create5Responses = {
4017
6174
  /**
4018
6175
  * Successful response
4019
6176
  */
4020
6177
  200: {
4021
6178
  /**
4022
- * Opaque intent id (prefixed `int_`).
6179
+ * Machine name — the identifier this intent is addressed by.
4023
6180
  */
4024
- id: string;
4025
- /**
4026
- * Machine name — stable identifier used across the API.
4027
- */
4028
- intent: string;
6181
+ type: string;
4029
6182
  /**
4030
6183
  * Human-readable label.
4031
6184
  */
@@ -4078,23 +6231,38 @@ export type Create4Responses = {
4078
6231
  };
4079
6232
  };
4080
6233
  };
4081
- export type Create4Response = Create4Responses[keyof Create4Responses];
4082
- export type Delete4Data = {
6234
+ export type Create5Response = Create5Responses[keyof Create5Responses];
6235
+ export type Delete5Data = {
4083
6236
  body?: never;
4084
6237
  path: {
4085
- id: string;
6238
+ /**
6239
+ * Machine name of the intent (e.g. `refund_request`) — what it is addressed by.
6240
+ */
6241
+ type: string;
4086
6242
  };
4087
6243
  query?: never;
4088
- url: '/intents/{id}';
6244
+ url: '/intents/{type}';
4089
6245
  };
4090
- export type Delete4Errors = {
6246
+ export type Delete5Errors = {
4091
6247
  /**
4092
6248
  * Bad request
4093
6249
  */
4094
6250
  400: {
6251
+ /**
6252
+ * HTTP status code, repeated in the body.
6253
+ */
4095
6254
  statusCode: number;
6255
+ /**
6256
+ * Error details.
6257
+ */
4096
6258
  error: {
6259
+ /**
6260
+ * Stable, machine-readable error code — branch on this, never on the message.
6261
+ */
4097
6262
  code: 'MISSING-ORG';
6263
+ /**
6264
+ * Human-readable explanation. Wording may change; do not parse it.
6265
+ */
4098
6266
  message: string;
4099
6267
  };
4100
6268
  };
@@ -4102,9 +6270,21 @@ export type Delete4Errors = {
4102
6270
  * Authentication required
4103
6271
  */
4104
6272
  401: {
6273
+ /**
6274
+ * HTTP status code, repeated in the body.
6275
+ */
4105
6276
  statusCode: number;
6277
+ /**
6278
+ * Error details.
6279
+ */
4106
6280
  error: {
6281
+ /**
6282
+ * Stable, machine-readable error code — branch on this, never on the message.
6283
+ */
4107
6284
  code: 'AUTH';
6285
+ /**
6286
+ * Human-readable explanation. Wording may change; do not parse it.
6287
+ */
4108
6288
  message: string;
4109
6289
  };
4110
6290
  };
@@ -4112,15 +6292,27 @@ export type Delete4Errors = {
4112
6292
  * Insufficient permissions
4113
6293
  */
4114
6294
  403: {
6295
+ /**
6296
+ * HTTP status code, repeated in the body.
6297
+ */
4115
6298
  statusCode: number;
6299
+ /**
6300
+ * Error details.
6301
+ */
4116
6302
  error: {
6303
+ /**
6304
+ * Stable, machine-readable error code — branch on this, never on the message.
6305
+ */
4117
6306
  code: 'FORBIDDEN' | 'SCOPE-FORBIDDEN';
6307
+ /**
6308
+ * Human-readable explanation. Wording may change; do not parse it.
6309
+ */
4118
6310
  message: string;
4119
6311
  };
4120
6312
  };
4121
6313
  };
4122
- export type Delete4Error = Delete4Errors[keyof Delete4Errors];
4123
- export type Delete4Responses = {
6314
+ export type Delete5Error = Delete5Errors[keyof Delete5Errors];
6315
+ export type Delete5Responses = {
4124
6316
  /**
4125
6317
  * Successful response
4126
6318
  */
@@ -4131,11 +6323,14 @@ export type Delete4Responses = {
4131
6323
  message: string;
4132
6324
  };
4133
6325
  };
4134
- export type Delete4Response = Delete4Responses[keyof Delete4Responses];
4135
- export type Get4Data = {
6326
+ export type Delete5Response = Delete5Responses[keyof Delete5Responses];
6327
+ export type Get5Data = {
4136
6328
  body?: never;
4137
6329
  path: {
4138
- id: string;
6330
+ /**
6331
+ * Machine name of the intent (e.g. `refund_request`) — what it is addressed by.
6332
+ */
6333
+ type: string;
4139
6334
  };
4140
6335
  query?: {
4141
6336
  /**
@@ -4143,16 +6338,28 @@ export type Get4Data = {
4143
6338
  */
4144
6339
  entityId?: string;
4145
6340
  };
4146
- url: '/intents/{id}';
6341
+ url: '/intents/{type}';
4147
6342
  };
4148
- export type Get4Errors = {
6343
+ export type Get5Errors = {
4149
6344
  /**
4150
6345
  * Bad request
4151
6346
  */
4152
6347
  400: {
6348
+ /**
6349
+ * HTTP status code, repeated in the body.
6350
+ */
4153
6351
  statusCode: number;
6352
+ /**
6353
+ * Error details.
6354
+ */
4154
6355
  error: {
6356
+ /**
6357
+ * Stable, machine-readable error code — branch on this, never on the message.
6358
+ */
4155
6359
  code: 'MISSING-ORG' | 'VALIDATION' | 'INVALID-JSON';
6360
+ /**
6361
+ * Human-readable explanation. Wording may change; do not parse it.
6362
+ */
4156
6363
  message: string;
4157
6364
  };
4158
6365
  };
@@ -4160,9 +6367,21 @@ export type Get4Errors = {
4160
6367
  * Authentication required
4161
6368
  */
4162
6369
  401: {
6370
+ /**
6371
+ * HTTP status code, repeated in the body.
6372
+ */
4163
6373
  statusCode: number;
6374
+ /**
6375
+ * Error details.
6376
+ */
4164
6377
  error: {
6378
+ /**
6379
+ * Stable, machine-readable error code — branch on this, never on the message.
6380
+ */
4165
6381
  code: 'AUTH';
6382
+ /**
6383
+ * Human-readable explanation. Wording may change; do not parse it.
6384
+ */
4166
6385
  message: string;
4167
6386
  };
4168
6387
  };
@@ -4170,27 +6389,35 @@ export type Get4Errors = {
4170
6389
  * Insufficient permissions
4171
6390
  */
4172
6391
  403: {
6392
+ /**
6393
+ * HTTP status code, repeated in the body.
6394
+ */
4173
6395
  statusCode: number;
6396
+ /**
6397
+ * Error details.
6398
+ */
4174
6399
  error: {
6400
+ /**
6401
+ * Stable, machine-readable error code — branch on this, never on the message.
6402
+ */
4175
6403
  code: 'FORBIDDEN' | 'SCOPE-FORBIDDEN';
6404
+ /**
6405
+ * Human-readable explanation. Wording may change; do not parse it.
6406
+ */
4176
6407
  message: string;
4177
6408
  };
4178
6409
  };
4179
6410
  };
4180
- export type Get4Error = Get4Errors[keyof Get4Errors];
4181
- export type Get4Responses = {
6411
+ export type Get5Error = Get5Errors[keyof Get5Errors];
6412
+ export type Get5Responses = {
4182
6413
  /**
4183
6414
  * Successful response
4184
6415
  */
4185
6416
  200: {
4186
6417
  /**
4187
- * Opaque intent id (prefixed `int_`).
4188
- */
4189
- id: string;
4190
- /**
4191
- * Machine name — stable identifier used across the API.
6418
+ * Machine name — the identifier this intent is addressed by.
4192
6419
  */
4193
- intent: string;
6420
+ type: string;
4194
6421
  /**
4195
6422
  * Human-readable label.
4196
6423
  */
@@ -4243,13 +6470,9 @@ export type Get4Responses = {
4243
6470
  };
4244
6471
  };
4245
6472
  };
4246
- export type Get4Response = Get4Responses[keyof Get4Responses];
4247
- export type Update3Data = {
6473
+ export type Get5Response = Get5Responses[keyof Get5Responses];
6474
+ export type Update4Data = {
4248
6475
  body?: {
4249
- /**
4250
- * Human-readable label.
4251
- */
4252
- label?: string;
4253
6476
  /**
4254
6477
  * Description the orchestrator uses to classify user messages.
4255
6478
  */
@@ -4281,7 +6504,10 @@ export type Update3Data = {
4281
6504
  order?: number;
4282
6505
  };
4283
6506
  path: {
4284
- id: string;
6507
+ /**
6508
+ * Machine name of the intent (e.g. `refund_request`) — what it is addressed by.
6509
+ */
6510
+ type: string;
4285
6511
  };
4286
6512
  query?: {
4287
6513
  /**
@@ -4289,16 +6515,28 @@ export type Update3Data = {
4289
6515
  */
4290
6516
  entityId?: string;
4291
6517
  };
4292
- url: '/intents/{id}';
6518
+ url: '/intents/{type}';
4293
6519
  };
4294
- export type Update3Errors = {
6520
+ export type Update4Errors = {
4295
6521
  /**
4296
6522
  * Bad request
4297
6523
  */
4298
6524
  400: {
6525
+ /**
6526
+ * HTTP status code, repeated in the body.
6527
+ */
4299
6528
  statusCode: number;
6529
+ /**
6530
+ * Error details.
6531
+ */
4300
6532
  error: {
6533
+ /**
6534
+ * Stable, machine-readable error code — branch on this, never on the message.
6535
+ */
4301
6536
  code: 'MISSING-ORG' | 'VALIDATION' | 'INVALID-JSON';
6537
+ /**
6538
+ * Human-readable explanation. Wording may change; do not parse it.
6539
+ */
4302
6540
  message: string;
4303
6541
  };
4304
6542
  };
@@ -4306,9 +6544,21 @@ export type Update3Errors = {
4306
6544
  * Authentication required
4307
6545
  */
4308
6546
  401: {
6547
+ /**
6548
+ * HTTP status code, repeated in the body.
6549
+ */
4309
6550
  statusCode: number;
6551
+ /**
6552
+ * Error details.
6553
+ */
4310
6554
  error: {
6555
+ /**
6556
+ * Stable, machine-readable error code — branch on this, never on the message.
6557
+ */
4311
6558
  code: 'AUTH';
6559
+ /**
6560
+ * Human-readable explanation. Wording may change; do not parse it.
6561
+ */
4312
6562
  message: string;
4313
6563
  };
4314
6564
  };
@@ -4316,27 +6566,35 @@ export type Update3Errors = {
4316
6566
  * Insufficient permissions
4317
6567
  */
4318
6568
  403: {
6569
+ /**
6570
+ * HTTP status code, repeated in the body.
6571
+ */
4319
6572
  statusCode: number;
6573
+ /**
6574
+ * Error details.
6575
+ */
4320
6576
  error: {
6577
+ /**
6578
+ * Stable, machine-readable error code — branch on this, never on the message.
6579
+ */
4321
6580
  code: 'FORBIDDEN' | 'SCOPE-FORBIDDEN';
6581
+ /**
6582
+ * Human-readable explanation. Wording may change; do not parse it.
6583
+ */
4322
6584
  message: string;
4323
6585
  };
4324
6586
  };
4325
6587
  };
4326
- export type Update3Error = Update3Errors[keyof Update3Errors];
4327
- export type Update3Responses = {
6588
+ export type Update4Error = Update4Errors[keyof Update4Errors];
6589
+ export type Update4Responses = {
4328
6590
  /**
4329
6591
  * Successful response
4330
6592
  */
4331
6593
  200: {
4332
6594
  /**
4333
- * Opaque intent id (prefixed `int_`).
6595
+ * Machine name — the identifier this intent is addressed by.
4334
6596
  */
4335
- id: string;
4336
- /**
4337
- * Machine name — stable identifier used across the API.
4338
- */
4339
- intent: string;
6597
+ type: string;
4340
6598
  /**
4341
6599
  * Human-readable label.
4342
6600
  */
@@ -4389,11 +6647,14 @@ export type Update3Responses = {
4389
6647
  };
4390
6648
  };
4391
6649
  };
4392
- export type Update3Response = Update3Responses[keyof Update3Responses];
4393
- export type DeleteOverride2Data = {
6650
+ export type Update4Response = Update4Responses[keyof Update4Responses];
6651
+ export type DeleteOverride3Data = {
4394
6652
  body?: never;
4395
6653
  path: {
4396
- id: string;
6654
+ /**
6655
+ * Machine name of the intent (e.g. `refund_request`) — what it is addressed by.
6656
+ */
6657
+ type: string;
4397
6658
  };
4398
6659
  query?: {
4399
6660
  /**
@@ -4401,16 +6662,28 @@ export type DeleteOverride2Data = {
4401
6662
  */
4402
6663
  entityId?: string;
4403
6664
  };
4404
- url: '/intents/{id}/override';
6665
+ url: '/intents/{type}/override';
4405
6666
  };
4406
- export type DeleteOverride2Errors = {
6667
+ export type DeleteOverride3Errors = {
4407
6668
  /**
4408
6669
  * Bad request
4409
6670
  */
4410
6671
  400: {
6672
+ /**
6673
+ * HTTP status code, repeated in the body.
6674
+ */
4411
6675
  statusCode: number;
6676
+ /**
6677
+ * Error details.
6678
+ */
4412
6679
  error: {
6680
+ /**
6681
+ * Stable, machine-readable error code — branch on this, never on the message.
6682
+ */
4413
6683
  code: 'MISSING-ORG' | 'VALIDATION' | 'INVALID-JSON';
6684
+ /**
6685
+ * Human-readable explanation. Wording may change; do not parse it.
6686
+ */
4414
6687
  message: string;
4415
6688
  };
4416
6689
  };
@@ -4418,9 +6691,21 @@ export type DeleteOverride2Errors = {
4418
6691
  * Authentication required
4419
6692
  */
4420
6693
  401: {
6694
+ /**
6695
+ * HTTP status code, repeated in the body.
6696
+ */
4421
6697
  statusCode: number;
6698
+ /**
6699
+ * Error details.
6700
+ */
4422
6701
  error: {
6702
+ /**
6703
+ * Stable, machine-readable error code — branch on this, never on the message.
6704
+ */
4423
6705
  code: 'AUTH';
6706
+ /**
6707
+ * Human-readable explanation. Wording may change; do not parse it.
6708
+ */
4424
6709
  message: string;
4425
6710
  };
4426
6711
  };
@@ -4428,15 +6713,27 @@ export type DeleteOverride2Errors = {
4428
6713
  * Insufficient permissions
4429
6714
  */
4430
6715
  403: {
6716
+ /**
6717
+ * HTTP status code, repeated in the body.
6718
+ */
4431
6719
  statusCode: number;
6720
+ /**
6721
+ * Error details.
6722
+ */
4432
6723
  error: {
6724
+ /**
6725
+ * Stable, machine-readable error code — branch on this, never on the message.
6726
+ */
4433
6727
  code: 'FORBIDDEN' | 'SCOPE-FORBIDDEN';
6728
+ /**
6729
+ * Human-readable explanation. Wording may change; do not parse it.
6730
+ */
4434
6731
  message: string;
4435
6732
  };
4436
6733
  };
4437
6734
  };
4438
- export type DeleteOverride2Error = DeleteOverride2Errors[keyof DeleteOverride2Errors];
4439
- export type DeleteOverride2Responses = {
6735
+ export type DeleteOverride3Error = DeleteOverride3Errors[keyof DeleteOverride3Errors];
6736
+ export type DeleteOverride3Responses = {
4440
6737
  /**
4441
6738
  * Successful response
4442
6739
  */
@@ -4447,8 +6744,8 @@ export type DeleteOverride2Responses = {
4447
6744
  message: string;
4448
6745
  };
4449
6746
  };
4450
- export type DeleteOverride2Response = DeleteOverride2Responses[keyof DeleteOverride2Responses];
4451
- export type List5Data = {
6747
+ export type DeleteOverride3Response = DeleteOverride3Responses[keyof DeleteOverride3Responses];
6748
+ export type List6Data = {
4452
6749
  body?: never;
4453
6750
  path?: never;
4454
6751
  query?: {
@@ -4467,14 +6764,26 @@ export type List5Data = {
4467
6764
  };
4468
6765
  url: '/kb';
4469
6766
  };
4470
- export type List5Errors = {
6767
+ export type List6Errors = {
4471
6768
  /**
4472
6769
  * Bad request
4473
6770
  */
4474
6771
  400: {
6772
+ /**
6773
+ * HTTP status code, repeated in the body.
6774
+ */
4475
6775
  statusCode: number;
6776
+ /**
6777
+ * Error details.
6778
+ */
4476
6779
  error: {
6780
+ /**
6781
+ * Stable, machine-readable error code — branch on this, never on the message.
6782
+ */
4477
6783
  code: 'MISSING-ORG' | 'VALIDATION' | 'INVALID-JSON';
6784
+ /**
6785
+ * Human-readable explanation. Wording may change; do not parse it.
6786
+ */
4478
6787
  message: string;
4479
6788
  };
4480
6789
  };
@@ -4482,9 +6791,21 @@ export type List5Errors = {
4482
6791
  * Authentication required
4483
6792
  */
4484
6793
  401: {
6794
+ /**
6795
+ * HTTP status code, repeated in the body.
6796
+ */
4485
6797
  statusCode: number;
6798
+ /**
6799
+ * Error details.
6800
+ */
4486
6801
  error: {
6802
+ /**
6803
+ * Stable, machine-readable error code — branch on this, never on the message.
6804
+ */
4487
6805
  code: 'AUTH';
6806
+ /**
6807
+ * Human-readable explanation. Wording may change; do not parse it.
6808
+ */
4488
6809
  message: string;
4489
6810
  };
4490
6811
  };
@@ -4492,19 +6813,34 @@ export type List5Errors = {
4492
6813
  * Insufficient permissions
4493
6814
  */
4494
6815
  403: {
6816
+ /**
6817
+ * HTTP status code, repeated in the body.
6818
+ */
4495
6819
  statusCode: number;
6820
+ /**
6821
+ * Error details.
6822
+ */
4496
6823
  error: {
6824
+ /**
6825
+ * Stable, machine-readable error code — branch on this, never on the message.
6826
+ */
4497
6827
  code: 'FORBIDDEN' | 'SCOPE-FORBIDDEN';
6828
+ /**
6829
+ * Human-readable explanation. Wording may change; do not parse it.
6830
+ */
4498
6831
  message: string;
4499
6832
  };
4500
6833
  };
4501
6834
  };
4502
- export type List5Error = List5Errors[keyof List5Errors];
4503
- export type List5Responses = {
6835
+ export type List6Error = List6Errors[keyof List6Errors];
6836
+ export type List6Responses = {
4504
6837
  /**
4505
6838
  * Successful response
4506
6839
  */
4507
6840
  200: {
6841
+ /**
6842
+ * This page of articles — at most `limit` items, starting at `offset`.
6843
+ */
4508
6844
  articles: Array<{
4509
6845
  /**
4510
6846
  * KB article ID (format: kb_xxxxxxxxxxxx).
@@ -4566,8 +6902,8 @@ export type List5Responses = {
4566
6902
  offset: number;
4567
6903
  };
4568
6904
  };
4569
- export type List5Response = List5Responses[keyof List5Responses];
4570
- export type Create5Data = {
6905
+ export type List6Response = List6Responses[keyof List6Responses];
6906
+ export type Create6Data = {
4571
6907
  body?: {
4572
6908
  /**
4573
6909
  * Article title.
@@ -4591,14 +6927,26 @@ export type Create5Data = {
4591
6927
  };
4592
6928
  url: '/kb';
4593
6929
  };
4594
- export type Create5Errors = {
6930
+ export type Create6Errors = {
4595
6931
  /**
4596
6932
  * Bad request
4597
6933
  */
4598
6934
  400: {
6935
+ /**
6936
+ * HTTP status code, repeated in the body.
6937
+ */
4599
6938
  statusCode: number;
6939
+ /**
6940
+ * Error details.
6941
+ */
4600
6942
  error: {
6943
+ /**
6944
+ * Stable, machine-readable error code — branch on this, never on the message.
6945
+ */
4601
6946
  code: 'MISSING-ORG' | 'VALIDATION' | 'INVALID-JSON';
6947
+ /**
6948
+ * Human-readable explanation. Wording may change; do not parse it.
6949
+ */
4602
6950
  message: string;
4603
6951
  };
4604
6952
  };
@@ -4606,9 +6954,21 @@ export type Create5Errors = {
4606
6954
  * Authentication required
4607
6955
  */
4608
6956
  401: {
6957
+ /**
6958
+ * HTTP status code, repeated in the body.
6959
+ */
4609
6960
  statusCode: number;
6961
+ /**
6962
+ * Error details.
6963
+ */
4610
6964
  error: {
6965
+ /**
6966
+ * Stable, machine-readable error code — branch on this, never on the message.
6967
+ */
4611
6968
  code: 'AUTH';
6969
+ /**
6970
+ * Human-readable explanation. Wording may change; do not parse it.
6971
+ */
4612
6972
  message: string;
4613
6973
  };
4614
6974
  };
@@ -4616,15 +6976,27 @@ export type Create5Errors = {
4616
6976
  * Insufficient permissions
4617
6977
  */
4618
6978
  403: {
6979
+ /**
6980
+ * HTTP status code, repeated in the body.
6981
+ */
4619
6982
  statusCode: number;
6983
+ /**
6984
+ * Error details.
6985
+ */
4620
6986
  error: {
6987
+ /**
6988
+ * Stable, machine-readable error code — branch on this, never on the message.
6989
+ */
4621
6990
  code: 'FORBIDDEN' | 'SCOPE-FORBIDDEN';
6991
+ /**
6992
+ * Human-readable explanation. Wording may change; do not parse it.
6993
+ */
4622
6994
  message: string;
4623
6995
  };
4624
6996
  };
4625
6997
  };
4626
- export type Create5Error = Create5Errors[keyof Create5Errors];
4627
- export type Create5Responses = {
6998
+ export type Create6Error = Create6Errors[keyof Create6Errors];
6999
+ export type Create6Responses = {
4628
7000
  /**
4629
7001
  * Successful response
4630
7002
  */
@@ -4714,8 +7086,8 @@ export type Create5Responses = {
4714
7086
  updatedAt: string;
4715
7087
  };
4716
7088
  };
4717
- export type Create5Response = Create5Responses[keyof Create5Responses];
4718
- export type Delete5Data = {
7089
+ export type Create6Response = Create6Responses[keyof Create6Responses];
7090
+ export type Delete6Data = {
4719
7091
  body?: never;
4720
7092
  path: {
4721
7093
  /**
@@ -4726,14 +7098,26 @@ export type Delete5Data = {
4726
7098
  query?: never;
4727
7099
  url: '/kb/{id}';
4728
7100
  };
4729
- export type Delete5Errors = {
7101
+ export type Delete6Errors = {
4730
7102
  /**
4731
7103
  * Bad request
4732
7104
  */
4733
7105
  400: {
7106
+ /**
7107
+ * HTTP status code, repeated in the body.
7108
+ */
4734
7109
  statusCode: number;
7110
+ /**
7111
+ * Error details.
7112
+ */
4735
7113
  error: {
7114
+ /**
7115
+ * Stable, machine-readable error code — branch on this, never on the message.
7116
+ */
4736
7117
  code: 'MISSING-ORG';
7118
+ /**
7119
+ * Human-readable explanation. Wording may change; do not parse it.
7120
+ */
4737
7121
  message: string;
4738
7122
  };
4739
7123
  };
@@ -4741,9 +7125,21 @@ export type Delete5Errors = {
4741
7125
  * Authentication required
4742
7126
  */
4743
7127
  401: {
7128
+ /**
7129
+ * HTTP status code, repeated in the body.
7130
+ */
4744
7131
  statusCode: number;
7132
+ /**
7133
+ * Error details.
7134
+ */
4745
7135
  error: {
7136
+ /**
7137
+ * Stable, machine-readable error code — branch on this, never on the message.
7138
+ */
4746
7139
  code: 'AUTH';
7140
+ /**
7141
+ * Human-readable explanation. Wording may change; do not parse it.
7142
+ */
4747
7143
  message: string;
4748
7144
  };
4749
7145
  };
@@ -4751,15 +7147,27 @@ export type Delete5Errors = {
4751
7147
  * Insufficient permissions
4752
7148
  */
4753
7149
  403: {
7150
+ /**
7151
+ * HTTP status code, repeated in the body.
7152
+ */
4754
7153
  statusCode: number;
7154
+ /**
7155
+ * Error details.
7156
+ */
4755
7157
  error: {
7158
+ /**
7159
+ * Stable, machine-readable error code — branch on this, never on the message.
7160
+ */
4756
7161
  code: 'FORBIDDEN' | 'SCOPE-FORBIDDEN';
7162
+ /**
7163
+ * Human-readable explanation. Wording may change; do not parse it.
7164
+ */
4757
7165
  message: string;
4758
7166
  };
4759
7167
  };
4760
7168
  };
4761
- export type Delete5Error = Delete5Errors[keyof Delete5Errors];
4762
- export type Delete5Responses = {
7169
+ export type Delete6Error = Delete6Errors[keyof Delete6Errors];
7170
+ export type Delete6Responses = {
4763
7171
  /**
4764
7172
  * Successful response
4765
7173
  */
@@ -4770,8 +7178,8 @@ export type Delete5Responses = {
4770
7178
  message: string;
4771
7179
  };
4772
7180
  };
4773
- export type Delete5Response = Delete5Responses[keyof Delete5Responses];
4774
- export type Get5Data = {
7181
+ export type Delete6Response = Delete6Responses[keyof Delete6Responses];
7182
+ export type Get6Data = {
4775
7183
  body?: never;
4776
7184
  path: {
4777
7185
  /**
@@ -4782,14 +7190,26 @@ export type Get5Data = {
4782
7190
  query?: never;
4783
7191
  url: '/kb/{id}';
4784
7192
  };
4785
- export type Get5Errors = {
7193
+ export type Get6Errors = {
4786
7194
  /**
4787
7195
  * Bad request
4788
7196
  */
4789
7197
  400: {
7198
+ /**
7199
+ * HTTP status code, repeated in the body.
7200
+ */
4790
7201
  statusCode: number;
7202
+ /**
7203
+ * Error details.
7204
+ */
4791
7205
  error: {
7206
+ /**
7207
+ * Stable, machine-readable error code — branch on this, never on the message.
7208
+ */
4792
7209
  code: 'MISSING-ORG';
7210
+ /**
7211
+ * Human-readable explanation. Wording may change; do not parse it.
7212
+ */
4793
7213
  message: string;
4794
7214
  };
4795
7215
  };
@@ -4797,9 +7217,21 @@ export type Get5Errors = {
4797
7217
  * Authentication required
4798
7218
  */
4799
7219
  401: {
7220
+ /**
7221
+ * HTTP status code, repeated in the body.
7222
+ */
4800
7223
  statusCode: number;
7224
+ /**
7225
+ * Error details.
7226
+ */
4801
7227
  error: {
7228
+ /**
7229
+ * Stable, machine-readable error code — branch on this, never on the message.
7230
+ */
4802
7231
  code: 'AUTH';
7232
+ /**
7233
+ * Human-readable explanation. Wording may change; do not parse it.
7234
+ */
4803
7235
  message: string;
4804
7236
  };
4805
7237
  };
@@ -4807,15 +7239,27 @@ export type Get5Errors = {
4807
7239
  * Insufficient permissions
4808
7240
  */
4809
7241
  403: {
7242
+ /**
7243
+ * HTTP status code, repeated in the body.
7244
+ */
4810
7245
  statusCode: number;
7246
+ /**
7247
+ * Error details.
7248
+ */
4811
7249
  error: {
7250
+ /**
7251
+ * Stable, machine-readable error code — branch on this, never on the message.
7252
+ */
4812
7253
  code: 'FORBIDDEN' | 'SCOPE-FORBIDDEN';
7254
+ /**
7255
+ * Human-readable explanation. Wording may change; do not parse it.
7256
+ */
4813
7257
  message: string;
4814
7258
  };
4815
7259
  };
4816
7260
  };
4817
- export type Get5Error = Get5Errors[keyof Get5Errors];
4818
- export type Get5Responses = {
7261
+ export type Get6Error = Get6Errors[keyof Get6Errors];
7262
+ export type Get6Responses = {
4819
7263
  /**
4820
7264
  * Successful response
4821
7265
  */
@@ -4905,8 +7349,8 @@ export type Get5Responses = {
4905
7349
  updatedAt: string;
4906
7350
  };
4907
7351
  };
4908
- export type Get5Response = Get5Responses[keyof Get5Responses];
4909
- export type Update4Data = {
7352
+ export type Get6Response = Get6Responses[keyof Get6Responses];
7353
+ export type Update5Data = {
4910
7354
  body?: {
4911
7355
  /**
4912
7356
  * New article title.
@@ -4934,14 +7378,26 @@ export type Update4Data = {
4934
7378
  query?: never;
4935
7379
  url: '/kb/{id}';
4936
7380
  };
4937
- export type Update4Errors = {
7381
+ export type Update5Errors = {
4938
7382
  /**
4939
7383
  * Bad request
4940
7384
  */
4941
7385
  400: {
7386
+ /**
7387
+ * HTTP status code, repeated in the body.
7388
+ */
4942
7389
  statusCode: number;
7390
+ /**
7391
+ * Error details.
7392
+ */
4943
7393
  error: {
7394
+ /**
7395
+ * Stable, machine-readable error code — branch on this, never on the message.
7396
+ */
4944
7397
  code: 'MISSING-ORG' | 'VALIDATION' | 'INVALID-JSON';
7398
+ /**
7399
+ * Human-readable explanation. Wording may change; do not parse it.
7400
+ */
4945
7401
  message: string;
4946
7402
  };
4947
7403
  };
@@ -4949,9 +7405,21 @@ export type Update4Errors = {
4949
7405
  * Authentication required
4950
7406
  */
4951
7407
  401: {
7408
+ /**
7409
+ * HTTP status code, repeated in the body.
7410
+ */
4952
7411
  statusCode: number;
7412
+ /**
7413
+ * Error details.
7414
+ */
4953
7415
  error: {
7416
+ /**
7417
+ * Stable, machine-readable error code — branch on this, never on the message.
7418
+ */
4954
7419
  code: 'AUTH';
7420
+ /**
7421
+ * Human-readable explanation. Wording may change; do not parse it.
7422
+ */
4955
7423
  message: string;
4956
7424
  };
4957
7425
  };
@@ -4959,15 +7427,27 @@ export type Update4Errors = {
4959
7427
  * Insufficient permissions
4960
7428
  */
4961
7429
  403: {
7430
+ /**
7431
+ * HTTP status code, repeated in the body.
7432
+ */
4962
7433
  statusCode: number;
7434
+ /**
7435
+ * Error details.
7436
+ */
4963
7437
  error: {
7438
+ /**
7439
+ * Stable, machine-readable error code — branch on this, never on the message.
7440
+ */
4964
7441
  code: 'FORBIDDEN' | 'SCOPE-FORBIDDEN';
7442
+ /**
7443
+ * Human-readable explanation. Wording may change; do not parse it.
7444
+ */
4965
7445
  message: string;
4966
7446
  };
4967
7447
  };
4968
7448
  };
4969
- export type Update4Error = Update4Errors[keyof Update4Errors];
4970
- export type Update4Responses = {
7449
+ export type Update5Error = Update5Errors[keyof Update5Errors];
7450
+ export type Update5Responses = {
4971
7451
  /**
4972
7452
  * Successful response
4973
7453
  */
@@ -5057,7 +7537,7 @@ export type Update4Responses = {
5057
7537
  updatedAt: string;
5058
7538
  };
5059
7539
  };
5060
- export type Update4Response = Update4Responses[keyof Update4Responses];
7540
+ export type Update5Response = Update5Responses[keyof Update5Responses];
5061
7541
  export type CreateManyData = {
5062
7542
  body?: {
5063
7543
  /**
@@ -5091,9 +7571,21 @@ export type CreateManyErrors = {
5091
7571
  * Bad request
5092
7572
  */
5093
7573
  400: {
7574
+ /**
7575
+ * HTTP status code, repeated in the body.
7576
+ */
5094
7577
  statusCode: number;
7578
+ /**
7579
+ * Error details.
7580
+ */
5095
7581
  error: {
7582
+ /**
7583
+ * Stable, machine-readable error code — branch on this, never on the message.
7584
+ */
5096
7585
  code: 'MISSING-ORG' | 'VALIDATION' | 'INVALID-JSON';
7586
+ /**
7587
+ * Human-readable explanation. Wording may change; do not parse it.
7588
+ */
5097
7589
  message: string;
5098
7590
  };
5099
7591
  };
@@ -5101,9 +7593,21 @@ export type CreateManyErrors = {
5101
7593
  * Authentication required
5102
7594
  */
5103
7595
  401: {
7596
+ /**
7597
+ * HTTP status code, repeated in the body.
7598
+ */
5104
7599
  statusCode: number;
7600
+ /**
7601
+ * Error details.
7602
+ */
5105
7603
  error: {
7604
+ /**
7605
+ * Stable, machine-readable error code — branch on this, never on the message.
7606
+ */
5106
7607
  code: 'AUTH';
7608
+ /**
7609
+ * Human-readable explanation. Wording may change; do not parse it.
7610
+ */
5107
7611
  message: string;
5108
7612
  };
5109
7613
  };
@@ -5111,9 +7615,21 @@ export type CreateManyErrors = {
5111
7615
  * Insufficient permissions
5112
7616
  */
5113
7617
  403: {
7618
+ /**
7619
+ * HTTP status code, repeated in the body.
7620
+ */
5114
7621
  statusCode: number;
7622
+ /**
7623
+ * Error details.
7624
+ */
5115
7625
  error: {
7626
+ /**
7627
+ * Stable, machine-readable error code — branch on this, never on the message.
7628
+ */
5116
7629
  code: 'FORBIDDEN' | 'SCOPE-FORBIDDEN';
7630
+ /**
7631
+ * Human-readable explanation. Wording may change; do not parse it.
7632
+ */
5117
7633
  message: string;
5118
7634
  };
5119
7635
  };
@@ -5221,6 +7737,9 @@ export type CreateManyResponses = {
5221
7737
  updatedAt: string;
5222
7738
  };
5223
7739
  }>;
7740
+ /**
7741
+ * Per-request tally — the counts always add up to `total`.
7742
+ */
5224
7743
  summary: {
5225
7744
  /**
5226
7745
  * Total number of articles in the request.
@@ -5354,6 +7873,9 @@ export type CreateManyResponses = {
5354
7873
  */
5355
7874
  error: string;
5356
7875
  }>;
7876
+ /**
7877
+ * Per-request tally — the counts always add up to `total`.
7878
+ */
5357
7879
  summary: {
5358
7880
  /**
5359
7881
  * Total number of articles in the request.
@@ -5387,9 +7909,21 @@ export type Publish2Errors = {
5387
7909
  * Bad request
5388
7910
  */
5389
7911
  400: {
7912
+ /**
7913
+ * HTTP status code, repeated in the body.
7914
+ */
5390
7915
  statusCode: number;
7916
+ /**
7917
+ * Error details.
7918
+ */
5391
7919
  error: {
7920
+ /**
7921
+ * Stable, machine-readable error code — branch on this, never on the message.
7922
+ */
5392
7923
  code: 'MISSING-ORG';
7924
+ /**
7925
+ * Human-readable explanation. Wording may change; do not parse it.
7926
+ */
5393
7927
  message: string;
5394
7928
  };
5395
7929
  };
@@ -5397,9 +7931,21 @@ export type Publish2Errors = {
5397
7931
  * Authentication required
5398
7932
  */
5399
7933
  401: {
7934
+ /**
7935
+ * HTTP status code, repeated in the body.
7936
+ */
5400
7937
  statusCode: number;
7938
+ /**
7939
+ * Error details.
7940
+ */
5401
7941
  error: {
7942
+ /**
7943
+ * Stable, machine-readable error code — branch on this, never on the message.
7944
+ */
5402
7945
  code: 'AUTH';
7946
+ /**
7947
+ * Human-readable explanation. Wording may change; do not parse it.
7948
+ */
5403
7949
  message: string;
5404
7950
  };
5405
7951
  };
@@ -5407,9 +7953,21 @@ export type Publish2Errors = {
5407
7953
  * Insufficient permissions
5408
7954
  */
5409
7955
  403: {
7956
+ /**
7957
+ * HTTP status code, repeated in the body.
7958
+ */
5410
7959
  statusCode: number;
7960
+ /**
7961
+ * Error details.
7962
+ */
5411
7963
  error: {
7964
+ /**
7965
+ * Stable, machine-readable error code — branch on this, never on the message.
7966
+ */
5412
7967
  code: 'FORBIDDEN' | 'SCOPE-FORBIDDEN';
7968
+ /**
7969
+ * Human-readable explanation. Wording may change; do not parse it.
7970
+ */
5413
7971
  message: string;
5414
7972
  };
5415
7973
  };
@@ -5527,9 +8085,21 @@ export type Rollback2Errors = {
5527
8085
  * Bad request
5528
8086
  */
5529
8087
  400: {
8088
+ /**
8089
+ * HTTP status code, repeated in the body.
8090
+ */
5530
8091
  statusCode: number;
8092
+ /**
8093
+ * Error details.
8094
+ */
5531
8095
  error: {
8096
+ /**
8097
+ * Stable, machine-readable error code — branch on this, never on the message.
8098
+ */
5532
8099
  code: 'MISSING-ORG' | 'VALIDATION' | 'INVALID-JSON';
8100
+ /**
8101
+ * Human-readable explanation. Wording may change; do not parse it.
8102
+ */
5533
8103
  message: string;
5534
8104
  };
5535
8105
  };
@@ -5537,9 +8107,21 @@ export type Rollback2Errors = {
5537
8107
  * Authentication required
5538
8108
  */
5539
8109
  401: {
8110
+ /**
8111
+ * HTTP status code, repeated in the body.
8112
+ */
5540
8113
  statusCode: number;
8114
+ /**
8115
+ * Error details.
8116
+ */
5541
8117
  error: {
8118
+ /**
8119
+ * Stable, machine-readable error code — branch on this, never on the message.
8120
+ */
5542
8121
  code: 'AUTH';
8122
+ /**
8123
+ * Human-readable explanation. Wording may change; do not parse it.
8124
+ */
5543
8125
  message: string;
5544
8126
  };
5545
8127
  };
@@ -5547,9 +8129,21 @@ export type Rollback2Errors = {
5547
8129
  * Insufficient permissions
5548
8130
  */
5549
8131
  403: {
8132
+ /**
8133
+ * HTTP status code, repeated in the body.
8134
+ */
5550
8135
  statusCode: number;
8136
+ /**
8137
+ * Error details.
8138
+ */
5551
8139
  error: {
8140
+ /**
8141
+ * Stable, machine-readable error code — branch on this, never on the message.
8142
+ */
5552
8143
  code: 'FORBIDDEN' | 'SCOPE-FORBIDDEN';
8144
+ /**
8145
+ * Human-readable explanation. Wording may change; do not parse it.
8146
+ */
5553
8147
  message: string;
5554
8148
  };
5555
8149
  };
@@ -5646,7 +8240,7 @@ export type Rollback2Responses = {
5646
8240
  };
5647
8241
  };
5648
8242
  export type Rollback2Response = Rollback2Responses[keyof Rollback2Responses];
5649
- export type List6Data = {
8243
+ export type List7Data = {
5650
8244
  body?: never;
5651
8245
  path?: never;
5652
8246
  query?: {
@@ -5665,14 +8259,26 @@ export type List6Data = {
5665
8259
  };
5666
8260
  url: '/organizations';
5667
8261
  };
5668
- export type List6Errors = {
8262
+ export type List7Errors = {
5669
8263
  /**
5670
8264
  * Bad request
5671
8265
  */
5672
8266
  400: {
8267
+ /**
8268
+ * HTTP status code, repeated in the body.
8269
+ */
5673
8270
  statusCode: number;
8271
+ /**
8272
+ * Error details.
8273
+ */
5674
8274
  error: {
8275
+ /**
8276
+ * Stable, machine-readable error code — branch on this, never on the message.
8277
+ */
5675
8278
  code: 'MISSING-ORG' | 'VALIDATION' | 'INVALID-JSON';
8279
+ /**
8280
+ * Human-readable explanation. Wording may change; do not parse it.
8281
+ */
5676
8282
  message: string;
5677
8283
  };
5678
8284
  };
@@ -5680,9 +8286,21 @@ export type List6Errors = {
5680
8286
  * Authentication required
5681
8287
  */
5682
8288
  401: {
8289
+ /**
8290
+ * HTTP status code, repeated in the body.
8291
+ */
5683
8292
  statusCode: number;
8293
+ /**
8294
+ * Error details.
8295
+ */
5684
8296
  error: {
8297
+ /**
8298
+ * Stable, machine-readable error code — branch on this, never on the message.
8299
+ */
5685
8300
  code: 'AUTH';
8301
+ /**
8302
+ * Human-readable explanation. Wording may change; do not parse it.
8303
+ */
5686
8304
  message: string;
5687
8305
  };
5688
8306
  };
@@ -5690,19 +8308,34 @@ export type List6Errors = {
5690
8308
  * Insufficient permissions
5691
8309
  */
5692
8310
  403: {
8311
+ /**
8312
+ * HTTP status code, repeated in the body.
8313
+ */
5693
8314
  statusCode: number;
8315
+ /**
8316
+ * Error details.
8317
+ */
5694
8318
  error: {
8319
+ /**
8320
+ * Stable, machine-readable error code — branch on this, never on the message.
8321
+ */
5695
8322
  code: 'FORBIDDEN' | 'SCOPE-FORBIDDEN';
8323
+ /**
8324
+ * Human-readable explanation. Wording may change; do not parse it.
8325
+ */
5696
8326
  message: string;
5697
8327
  };
5698
8328
  };
5699
8329
  };
5700
- export type List6Error = List6Errors[keyof List6Errors];
5701
- export type List6Responses = {
8330
+ export type List7Error = List7Errors[keyof List7Errors];
8331
+ export type List7Responses = {
5702
8332
  /**
5703
8333
  * Successful response
5704
8334
  */
5705
8335
  200: {
8336
+ /**
8337
+ * This page of organizations — at most `limit` items, starting at `offset`.
8338
+ */
5706
8339
  organizations: Array<{
5707
8340
  /**
5708
8341
  * Organization ID (format: org_xxxxxxxxxxxx).
@@ -5735,8 +8368,8 @@ export type List6Responses = {
5735
8368
  offset: number;
5736
8369
  };
5737
8370
  };
5738
- export type List6Response = List6Responses[keyof List6Responses];
5739
- export type Create6Data = {
8371
+ export type List7Response = List7Responses[keyof List7Responses];
8372
+ export type Create7Data = {
5740
8373
  body?: {
5741
8374
  /**
5742
8375
  * Human-readable name of the organization (must be unique).
@@ -5757,14 +8390,26 @@ export type Create6Data = {
5757
8390
  query?: never;
5758
8391
  url: '/organizations';
5759
8392
  };
5760
- export type Create6Errors = {
8393
+ export type Create7Errors = {
5761
8394
  /**
5762
8395
  * Bad request
5763
8396
  */
5764
8397
  400: {
8398
+ /**
8399
+ * HTTP status code, repeated in the body.
8400
+ */
5765
8401
  statusCode: number;
8402
+ /**
8403
+ * Error details.
8404
+ */
5766
8405
  error: {
8406
+ /**
8407
+ * Stable, machine-readable error code — branch on this, never on the message.
8408
+ */
5767
8409
  code: 'MISSING-ORG' | 'VALIDATION' | 'INVALID-JSON';
8410
+ /**
8411
+ * Human-readable explanation. Wording may change; do not parse it.
8412
+ */
5768
8413
  message: string;
5769
8414
  };
5770
8415
  };
@@ -5772,9 +8417,21 @@ export type Create6Errors = {
5772
8417
  * Authentication required
5773
8418
  */
5774
8419
  401: {
8420
+ /**
8421
+ * HTTP status code, repeated in the body.
8422
+ */
5775
8423
  statusCode: number;
8424
+ /**
8425
+ * Error details.
8426
+ */
5776
8427
  error: {
8428
+ /**
8429
+ * Stable, machine-readable error code — branch on this, never on the message.
8430
+ */
5777
8431
  code: 'AUTH';
8432
+ /**
8433
+ * Human-readable explanation. Wording may change; do not parse it.
8434
+ */
5778
8435
  message: string;
5779
8436
  };
5780
8437
  };
@@ -5782,15 +8439,27 @@ export type Create6Errors = {
5782
8439
  * Insufficient permissions
5783
8440
  */
5784
8441
  403: {
8442
+ /**
8443
+ * HTTP status code, repeated in the body.
8444
+ */
5785
8445
  statusCode: number;
8446
+ /**
8447
+ * Error details.
8448
+ */
5786
8449
  error: {
8450
+ /**
8451
+ * Stable, machine-readable error code — branch on this, never on the message.
8452
+ */
5787
8453
  code: 'FORBIDDEN' | 'SCOPE-FORBIDDEN';
8454
+ /**
8455
+ * Human-readable explanation. Wording may change; do not parse it.
8456
+ */
5788
8457
  message: string;
5789
8458
  };
5790
8459
  };
5791
8460
  };
5792
- export type Create6Error = Create6Errors[keyof Create6Errors];
5793
- export type Create6Responses = {
8461
+ export type Create7Error = Create7Errors[keyof Create7Errors];
8462
+ export type Create7Responses = {
5794
8463
  /**
5795
8464
  * Successful response
5796
8465
  */
@@ -5828,8 +8497,8 @@ export type Create6Responses = {
5828
8497
  apiKey?: string;
5829
8498
  };
5830
8499
  };
5831
- export type Create6Response = Create6Responses[keyof Create6Responses];
5832
- export type Delete6Data = {
8500
+ export type Create7Response = Create7Responses[keyof Create7Responses];
8501
+ export type Delete7Data = {
5833
8502
  body?: never;
5834
8503
  path: {
5835
8504
  /**
@@ -5840,14 +8509,26 @@ export type Delete6Data = {
5840
8509
  query?: never;
5841
8510
  url: '/organizations/{id}';
5842
8511
  };
5843
- export type Delete6Errors = {
8512
+ export type Delete7Errors = {
5844
8513
  /**
5845
8514
  * Bad request
5846
8515
  */
5847
8516
  400: {
8517
+ /**
8518
+ * HTTP status code, repeated in the body.
8519
+ */
5848
8520
  statusCode: number;
8521
+ /**
8522
+ * Error details.
8523
+ */
5849
8524
  error: {
8525
+ /**
8526
+ * Stable, machine-readable error code — branch on this, never on the message.
8527
+ */
5850
8528
  code: 'MISSING-ORG';
8529
+ /**
8530
+ * Human-readable explanation. Wording may change; do not parse it.
8531
+ */
5851
8532
  message: string;
5852
8533
  };
5853
8534
  };
@@ -5855,9 +8536,21 @@ export type Delete6Errors = {
5855
8536
  * Authentication required
5856
8537
  */
5857
8538
  401: {
8539
+ /**
8540
+ * HTTP status code, repeated in the body.
8541
+ */
5858
8542
  statusCode: number;
8543
+ /**
8544
+ * Error details.
8545
+ */
5859
8546
  error: {
8547
+ /**
8548
+ * Stable, machine-readable error code — branch on this, never on the message.
8549
+ */
5860
8550
  code: 'AUTH';
8551
+ /**
8552
+ * Human-readable explanation. Wording may change; do not parse it.
8553
+ */
5861
8554
  message: string;
5862
8555
  };
5863
8556
  };
@@ -5865,15 +8558,27 @@ export type Delete6Errors = {
5865
8558
  * Insufficient permissions
5866
8559
  */
5867
8560
  403: {
8561
+ /**
8562
+ * HTTP status code, repeated in the body.
8563
+ */
5868
8564
  statusCode: number;
8565
+ /**
8566
+ * Error details.
8567
+ */
5869
8568
  error: {
8569
+ /**
8570
+ * Stable, machine-readable error code — branch on this, never on the message.
8571
+ */
5870
8572
  code: 'FORBIDDEN' | 'SCOPE-FORBIDDEN';
8573
+ /**
8574
+ * Human-readable explanation. Wording may change; do not parse it.
8575
+ */
5871
8576
  message: string;
5872
8577
  };
5873
8578
  };
5874
8579
  };
5875
- export type Delete6Error = Delete6Errors[keyof Delete6Errors];
5876
- export type Delete6Responses = {
8580
+ export type Delete7Error = Delete7Errors[keyof Delete7Errors];
8581
+ export type Delete7Responses = {
5877
8582
  /**
5878
8583
  * Successful response
5879
8584
  */
@@ -5884,8 +8589,8 @@ export type Delete6Responses = {
5884
8589
  message: string;
5885
8590
  };
5886
8591
  };
5887
- export type Delete6Response = Delete6Responses[keyof Delete6Responses];
5888
- export type Get6Data = {
8592
+ export type Delete7Response = Delete7Responses[keyof Delete7Responses];
8593
+ export type Get7Data = {
5889
8594
  body?: never;
5890
8595
  path: {
5891
8596
  /**
@@ -5896,14 +8601,26 @@ export type Get6Data = {
5896
8601
  query?: never;
5897
8602
  url: '/organizations/{id}';
5898
8603
  };
5899
- export type Get6Errors = {
8604
+ export type Get7Errors = {
5900
8605
  /**
5901
8606
  * Bad request
5902
8607
  */
5903
8608
  400: {
8609
+ /**
8610
+ * HTTP status code, repeated in the body.
8611
+ */
5904
8612
  statusCode: number;
8613
+ /**
8614
+ * Error details.
8615
+ */
5905
8616
  error: {
8617
+ /**
8618
+ * Stable, machine-readable error code — branch on this, never on the message.
8619
+ */
5906
8620
  code: 'MISSING-ORG';
8621
+ /**
8622
+ * Human-readable explanation. Wording may change; do not parse it.
8623
+ */
5907
8624
  message: string;
5908
8625
  };
5909
8626
  };
@@ -5911,9 +8628,21 @@ export type Get6Errors = {
5911
8628
  * Authentication required
5912
8629
  */
5913
8630
  401: {
8631
+ /**
8632
+ * HTTP status code, repeated in the body.
8633
+ */
5914
8634
  statusCode: number;
8635
+ /**
8636
+ * Error details.
8637
+ */
5915
8638
  error: {
8639
+ /**
8640
+ * Stable, machine-readable error code — branch on this, never on the message.
8641
+ */
5916
8642
  code: 'AUTH';
8643
+ /**
8644
+ * Human-readable explanation. Wording may change; do not parse it.
8645
+ */
5917
8646
  message: string;
5918
8647
  };
5919
8648
  };
@@ -5921,15 +8650,27 @@ export type Get6Errors = {
5921
8650
  * Insufficient permissions
5922
8651
  */
5923
8652
  403: {
8653
+ /**
8654
+ * HTTP status code, repeated in the body.
8655
+ */
5924
8656
  statusCode: number;
8657
+ /**
8658
+ * Error details.
8659
+ */
5925
8660
  error: {
8661
+ /**
8662
+ * Stable, machine-readable error code — branch on this, never on the message.
8663
+ */
5926
8664
  code: 'FORBIDDEN' | 'SCOPE-FORBIDDEN';
8665
+ /**
8666
+ * Human-readable explanation. Wording may change; do not parse it.
8667
+ */
5927
8668
  message: string;
5928
8669
  };
5929
8670
  };
5930
8671
  };
5931
- export type Get6Error = Get6Errors[keyof Get6Errors];
5932
- export type Get6Responses = {
8672
+ export type Get7Error = Get7Errors[keyof Get7Errors];
8673
+ export type Get7Responses = {
5933
8674
  /**
5934
8675
  * Successful response
5935
8676
  */
@@ -5958,8 +8699,8 @@ export type Get6Responses = {
5958
8699
  };
5959
8700
  };
5960
8701
  };
5961
- export type Get6Response = Get6Responses[keyof Get6Responses];
5962
- export type Update5Data = {
8702
+ export type Get7Response = Get7Responses[keyof Get7Responses];
8703
+ export type Update6Data = {
5963
8704
  body?: {
5964
8705
  /**
5965
8706
  * New name for the organization.
@@ -5981,14 +8722,26 @@ export type Update5Data = {
5981
8722
  query?: never;
5982
8723
  url: '/organizations/{id}';
5983
8724
  };
5984
- export type Update5Errors = {
8725
+ export type Update6Errors = {
5985
8726
  /**
5986
8727
  * Bad request
5987
8728
  */
5988
8729
  400: {
8730
+ /**
8731
+ * HTTP status code, repeated in the body.
8732
+ */
5989
8733
  statusCode: number;
8734
+ /**
8735
+ * Error details.
8736
+ */
5990
8737
  error: {
8738
+ /**
8739
+ * Stable, machine-readable error code — branch on this, never on the message.
8740
+ */
5991
8741
  code: 'MISSING-ORG' | 'VALIDATION' | 'INVALID-JSON';
8742
+ /**
8743
+ * Human-readable explanation. Wording may change; do not parse it.
8744
+ */
5992
8745
  message: string;
5993
8746
  };
5994
8747
  };
@@ -5996,9 +8749,21 @@ export type Update5Errors = {
5996
8749
  * Authentication required
5997
8750
  */
5998
8751
  401: {
8752
+ /**
8753
+ * HTTP status code, repeated in the body.
8754
+ */
5999
8755
  statusCode: number;
8756
+ /**
8757
+ * Error details.
8758
+ */
6000
8759
  error: {
8760
+ /**
8761
+ * Stable, machine-readable error code — branch on this, never on the message.
8762
+ */
6001
8763
  code: 'AUTH';
8764
+ /**
8765
+ * Human-readable explanation. Wording may change; do not parse it.
8766
+ */
6002
8767
  message: string;
6003
8768
  };
6004
8769
  };
@@ -6006,15 +8771,27 @@ export type Update5Errors = {
6006
8771
  * Insufficient permissions
6007
8772
  */
6008
8773
  403: {
8774
+ /**
8775
+ * HTTP status code, repeated in the body.
8776
+ */
6009
8777
  statusCode: number;
8778
+ /**
8779
+ * Error details.
8780
+ */
6010
8781
  error: {
8782
+ /**
8783
+ * Stable, machine-readable error code — branch on this, never on the message.
8784
+ */
6011
8785
  code: 'FORBIDDEN' | 'SCOPE-FORBIDDEN';
8786
+ /**
8787
+ * Human-readable explanation. Wording may change; do not parse it.
8788
+ */
6012
8789
  message: string;
6013
8790
  };
6014
8791
  };
6015
8792
  };
6016
- export type Update5Error = Update5Errors[keyof Update5Errors];
6017
- export type Update5Responses = {
8793
+ export type Update6Error = Update6Errors[keyof Update6Errors];
8794
+ export type Update6Responses = {
6018
8795
  /**
6019
8796
  * Successful response
6020
8797
  */
@@ -6043,5 +8820,5 @@ export type Update5Responses = {
6043
8820
  };
6044
8821
  };
6045
8822
  };
6046
- export type Update5Response = Update5Responses[keyof Update5Responses];
8823
+ export type Update6Response = Update6Responses[keyof Update6Responses];
6047
8824
  //# sourceMappingURL=types.gen.d.ts.map