@oxchannels/sdk 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.
@@ -0,0 +1,1266 @@
1
+ {
2
+ "components": {
3
+ "schemas": {
4
+ "EnrollmentCompleteResponseDto": {
5
+ "additionalProperties": false,
6
+ "properties": {
7
+ "deviceId": {
8
+ "type": "string"
9
+ },
10
+ "encryptionKeyId": {
11
+ "type": "string"
12
+ },
13
+ "generation": {
14
+ "minimum": 1,
15
+ "type": "number"
16
+ },
17
+ "profileRef": {
18
+ "description": "Opaque local profile binding; contains no provider identifier.",
19
+ "type": "string"
20
+ },
21
+ "refreshCredential": {
22
+ "description": "Reveal-once credential; store only in the OS-backed key store.",
23
+ "type": "string"
24
+ },
25
+ "signingKeyId": {
26
+ "type": "string"
27
+ }
28
+ },
29
+ "required": [
30
+ "deviceId",
31
+ "generation",
32
+ "profileRef",
33
+ "signingKeyId",
34
+ "encryptionKeyId",
35
+ "refreshCredential"
36
+ ],
37
+ "type": "object"
38
+ },
39
+ "EnrollmentProofDto": {
40
+ "additionalProperties": false,
41
+ "properties": {
42
+ "code": {
43
+ "type": "string"
44
+ },
45
+ "codeId": {
46
+ "type": "string"
47
+ },
48
+ "encryptionJwk": {
49
+ "additionalProperties": {
50
+ "type": "string"
51
+ },
52
+ "type": "object"
53
+ },
54
+ "encryptionProof": {
55
+ "type": "string"
56
+ },
57
+ "nonce": {
58
+ "type": "string"
59
+ },
60
+ "signingJwk": {
61
+ "additionalProperties": {
62
+ "type": "string"
63
+ },
64
+ "type": "object"
65
+ },
66
+ "signingProof": {
67
+ "type": "string"
68
+ },
69
+ "version": {
70
+ "minimum": 1,
71
+ "type": "number"
72
+ },
73
+ "workspaceId": {
74
+ "type": "string"
75
+ }
76
+ },
77
+ "required": [
78
+ "version",
79
+ "code",
80
+ "codeId",
81
+ "workspaceId",
82
+ "nonce",
83
+ "signingJwk",
84
+ "encryptionJwk",
85
+ "signingProof",
86
+ "encryptionProof"
87
+ ],
88
+ "type": "object"
89
+ },
90
+ "ErrorEnvelopeV2": {
91
+ "discriminator": {
92
+ "propertyName": "code"
93
+ },
94
+ "oneOf": [
95
+ {
96
+ "additionalProperties": false,
97
+ "properties": {
98
+ "category": {
99
+ "enum": [
100
+ "VALIDATION"
101
+ ]
102
+ },
103
+ "code": {
104
+ "enum": [
105
+ "INVALID_REQUEST"
106
+ ]
107
+ },
108
+ "correlationId": {
109
+ "type": "string"
110
+ },
111
+ "effectEvidence": {
112
+ "enum": [
113
+ "NOT_APPLIED"
114
+ ]
115
+ },
116
+ "message": {
117
+ "type": "string"
118
+ },
119
+ "retryable": {
120
+ "enum": [
121
+ false
122
+ ]
123
+ },
124
+ "schemaVersion": {
125
+ "enum": [
126
+ "2.0.0"
127
+ ]
128
+ },
129
+ "traceId": {
130
+ "type": "string"
131
+ },
132
+ "violations": {
133
+ "items": {
134
+ "additionalProperties": false,
135
+ "properties": {
136
+ "code": {
137
+ "type": "string"
138
+ },
139
+ "path": {
140
+ "type": "string"
141
+ }
142
+ },
143
+ "required": [
144
+ "path",
145
+ "code"
146
+ ],
147
+ "type": "object"
148
+ },
149
+ "maxItems": 100,
150
+ "type": "array"
151
+ }
152
+ },
153
+ "required": [
154
+ "schemaVersion",
155
+ "code",
156
+ "category",
157
+ "message",
158
+ "traceId",
159
+ "correlationId",
160
+ "retryable",
161
+ "effectEvidence"
162
+ ],
163
+ "type": "object"
164
+ },
165
+ {
166
+ "additionalProperties": false,
167
+ "properties": {
168
+ "category": {
169
+ "enum": [
170
+ "AUTHENTICATION"
171
+ ]
172
+ },
173
+ "code": {
174
+ "enum": [
175
+ "AUTHENTICATION_REQUIRED"
176
+ ]
177
+ },
178
+ "correlationId": {
179
+ "type": "string"
180
+ },
181
+ "effectEvidence": {
182
+ "enum": [
183
+ "NOT_APPLIED"
184
+ ]
185
+ },
186
+ "message": {
187
+ "type": "string"
188
+ },
189
+ "retryable": {
190
+ "enum": [
191
+ true
192
+ ]
193
+ },
194
+ "schemaVersion": {
195
+ "enum": [
196
+ "2.0.0"
197
+ ]
198
+ },
199
+ "traceId": {
200
+ "type": "string"
201
+ },
202
+ "violations": {
203
+ "items": {
204
+ "additionalProperties": false,
205
+ "properties": {
206
+ "code": {
207
+ "type": "string"
208
+ },
209
+ "path": {
210
+ "type": "string"
211
+ }
212
+ },
213
+ "required": [
214
+ "path",
215
+ "code"
216
+ ],
217
+ "type": "object"
218
+ },
219
+ "maxItems": 100,
220
+ "type": "array"
221
+ }
222
+ },
223
+ "required": [
224
+ "schemaVersion",
225
+ "code",
226
+ "category",
227
+ "message",
228
+ "traceId",
229
+ "correlationId",
230
+ "retryable",
231
+ "effectEvidence"
232
+ ],
233
+ "type": "object"
234
+ },
235
+ {
236
+ "additionalProperties": false,
237
+ "properties": {
238
+ "category": {
239
+ "enum": [
240
+ "AUTHORIZATION"
241
+ ]
242
+ },
243
+ "code": {
244
+ "enum": [
245
+ "FORBIDDEN"
246
+ ]
247
+ },
248
+ "correlationId": {
249
+ "type": "string"
250
+ },
251
+ "effectEvidence": {
252
+ "enum": [
253
+ "NOT_APPLIED"
254
+ ]
255
+ },
256
+ "message": {
257
+ "type": "string"
258
+ },
259
+ "retryable": {
260
+ "enum": [
261
+ false
262
+ ]
263
+ },
264
+ "schemaVersion": {
265
+ "enum": [
266
+ "2.0.0"
267
+ ]
268
+ },
269
+ "traceId": {
270
+ "type": "string"
271
+ },
272
+ "violations": {
273
+ "items": {
274
+ "additionalProperties": false,
275
+ "properties": {
276
+ "code": {
277
+ "type": "string"
278
+ },
279
+ "path": {
280
+ "type": "string"
281
+ }
282
+ },
283
+ "required": [
284
+ "path",
285
+ "code"
286
+ ],
287
+ "type": "object"
288
+ },
289
+ "maxItems": 100,
290
+ "type": "array"
291
+ }
292
+ },
293
+ "required": [
294
+ "schemaVersion",
295
+ "code",
296
+ "category",
297
+ "message",
298
+ "traceId",
299
+ "correlationId",
300
+ "retryable",
301
+ "effectEvidence"
302
+ ],
303
+ "type": "object"
304
+ },
305
+ {
306
+ "additionalProperties": false,
307
+ "properties": {
308
+ "category": {
309
+ "enum": [
310
+ "RESOURCE"
311
+ ]
312
+ },
313
+ "code": {
314
+ "enum": [
315
+ "NOT_FOUND"
316
+ ]
317
+ },
318
+ "correlationId": {
319
+ "type": "string"
320
+ },
321
+ "effectEvidence": {
322
+ "enum": [
323
+ "NOT_APPLIED"
324
+ ]
325
+ },
326
+ "message": {
327
+ "type": "string"
328
+ },
329
+ "retryable": {
330
+ "enum": [
331
+ false
332
+ ]
333
+ },
334
+ "schemaVersion": {
335
+ "enum": [
336
+ "2.0.0"
337
+ ]
338
+ },
339
+ "traceId": {
340
+ "type": "string"
341
+ },
342
+ "violations": {
343
+ "items": {
344
+ "additionalProperties": false,
345
+ "properties": {
346
+ "code": {
347
+ "type": "string"
348
+ },
349
+ "path": {
350
+ "type": "string"
351
+ }
352
+ },
353
+ "required": [
354
+ "path",
355
+ "code"
356
+ ],
357
+ "type": "object"
358
+ },
359
+ "maxItems": 100,
360
+ "type": "array"
361
+ }
362
+ },
363
+ "required": [
364
+ "schemaVersion",
365
+ "code",
366
+ "category",
367
+ "message",
368
+ "traceId",
369
+ "correlationId",
370
+ "retryable",
371
+ "effectEvidence"
372
+ ],
373
+ "type": "object"
374
+ },
375
+ {
376
+ "additionalProperties": false,
377
+ "properties": {
378
+ "category": {
379
+ "enum": [
380
+ "CONFLICT"
381
+ ]
382
+ },
383
+ "code": {
384
+ "enum": [
385
+ "IDEMPOTENCY_CONFLICT"
386
+ ]
387
+ },
388
+ "correlationId": {
389
+ "type": "string"
390
+ },
391
+ "effectEvidence": {
392
+ "enum": [
393
+ null
394
+ ]
395
+ },
396
+ "message": {
397
+ "type": "string"
398
+ },
399
+ "retryable": {
400
+ "enum": [
401
+ false
402
+ ]
403
+ },
404
+ "schemaVersion": {
405
+ "enum": [
406
+ "2.0.0"
407
+ ]
408
+ },
409
+ "traceId": {
410
+ "type": "string"
411
+ },
412
+ "violations": {
413
+ "items": {
414
+ "additionalProperties": false,
415
+ "properties": {
416
+ "code": {
417
+ "type": "string"
418
+ },
419
+ "path": {
420
+ "type": "string"
421
+ }
422
+ },
423
+ "required": [
424
+ "path",
425
+ "code"
426
+ ],
427
+ "type": "object"
428
+ },
429
+ "maxItems": 100,
430
+ "type": "array"
431
+ }
432
+ },
433
+ "required": [
434
+ "schemaVersion",
435
+ "code",
436
+ "category",
437
+ "message",
438
+ "traceId",
439
+ "correlationId",
440
+ "retryable",
441
+ "effectEvidence"
442
+ ],
443
+ "type": "object"
444
+ },
445
+ {
446
+ "additionalProperties": false,
447
+ "properties": {
448
+ "category": {
449
+ "enum": [
450
+ "RATE_LIMIT"
451
+ ]
452
+ },
453
+ "code": {
454
+ "enum": [
455
+ "RATE_LIMITED"
456
+ ]
457
+ },
458
+ "correlationId": {
459
+ "type": "string"
460
+ },
461
+ "effectEvidence": {
462
+ "enum": [
463
+ null
464
+ ]
465
+ },
466
+ "message": {
467
+ "type": "string"
468
+ },
469
+ "retryable": {
470
+ "enum": [
471
+ true
472
+ ]
473
+ },
474
+ "retryAfterSeconds": {
475
+ "maximum": 86400,
476
+ "minimum": 0,
477
+ "type": "integer"
478
+ },
479
+ "schemaVersion": {
480
+ "enum": [
481
+ "2.0.0"
482
+ ]
483
+ },
484
+ "traceId": {
485
+ "type": "string"
486
+ },
487
+ "violations": {
488
+ "items": {
489
+ "additionalProperties": false,
490
+ "properties": {
491
+ "code": {
492
+ "type": "string"
493
+ },
494
+ "path": {
495
+ "type": "string"
496
+ }
497
+ },
498
+ "required": [
499
+ "path",
500
+ "code"
501
+ ],
502
+ "type": "object"
503
+ },
504
+ "maxItems": 100,
505
+ "type": "array"
506
+ }
507
+ },
508
+ "required": [
509
+ "schemaVersion",
510
+ "code",
511
+ "category",
512
+ "message",
513
+ "traceId",
514
+ "correlationId",
515
+ "retryable",
516
+ "effectEvidence",
517
+ "retryAfterSeconds"
518
+ ],
519
+ "type": "object"
520
+ },
521
+ {
522
+ "additionalProperties": false,
523
+ "properties": {
524
+ "category": {
525
+ "enum": [
526
+ "INTERNAL"
527
+ ]
528
+ },
529
+ "code": {
530
+ "enum": [
531
+ "INTERNAL_SAFE_FAILURE"
532
+ ]
533
+ },
534
+ "correlationId": {
535
+ "type": "string"
536
+ },
537
+ "effectEvidence": {
538
+ "enum": [
539
+ null
540
+ ]
541
+ },
542
+ "message": {
543
+ "type": "string"
544
+ },
545
+ "retryable": {
546
+ "enum": [
547
+ false
548
+ ]
549
+ },
550
+ "schemaVersion": {
551
+ "enum": [
552
+ "2.0.0"
553
+ ]
554
+ },
555
+ "traceId": {
556
+ "type": "string"
557
+ },
558
+ "violations": {
559
+ "items": {
560
+ "additionalProperties": false,
561
+ "properties": {
562
+ "code": {
563
+ "type": "string"
564
+ },
565
+ "path": {
566
+ "type": "string"
567
+ }
568
+ },
569
+ "required": [
570
+ "path",
571
+ "code"
572
+ ],
573
+ "type": "object"
574
+ },
575
+ "maxItems": 100,
576
+ "type": "array"
577
+ }
578
+ },
579
+ "required": [
580
+ "schemaVersion",
581
+ "code",
582
+ "category",
583
+ "message",
584
+ "traceId",
585
+ "correlationId",
586
+ "retryable",
587
+ "effectEvidence"
588
+ ],
589
+ "type": "object"
590
+ },
591
+ {
592
+ "additionalProperties": false,
593
+ "properties": {
594
+ "category": {
595
+ "enum": [
596
+ "CONFLICT"
597
+ ]
598
+ },
599
+ "code": {
600
+ "enum": [
601
+ "CONFLICT"
602
+ ]
603
+ },
604
+ "correlationId": {
605
+ "type": "string"
606
+ },
607
+ "effectEvidence": {
608
+ "enum": [
609
+ null
610
+ ]
611
+ },
612
+ "message": {
613
+ "type": "string"
614
+ },
615
+ "retryable": {
616
+ "enum": [
617
+ false
618
+ ]
619
+ },
620
+ "schemaVersion": {
621
+ "enum": [
622
+ "2.0.0"
623
+ ]
624
+ },
625
+ "traceId": {
626
+ "type": "string"
627
+ },
628
+ "violations": {
629
+ "items": {
630
+ "additionalProperties": false,
631
+ "properties": {
632
+ "code": {
633
+ "type": "string"
634
+ },
635
+ "path": {
636
+ "type": "string"
637
+ }
638
+ },
639
+ "required": [
640
+ "path",
641
+ "code"
642
+ ],
643
+ "type": "object"
644
+ },
645
+ "maxItems": 100,
646
+ "type": "array"
647
+ }
648
+ },
649
+ "required": [
650
+ "schemaVersion",
651
+ "code",
652
+ "category",
653
+ "message",
654
+ "traceId",
655
+ "correlationId",
656
+ "retryable",
657
+ "effectEvidence"
658
+ ],
659
+ "type": "object"
660
+ }
661
+ ],
662
+ "title": "OxChannels ErrorEnvelope v2"
663
+ },
664
+ "ErrorEnvelopeV2AuthenticationRequired": {
665
+ "allOf": [
666
+ {
667
+ "$ref": "#/components/schemas/ErrorEnvelopeV2"
668
+ },
669
+ {
670
+ "additionalProperties": false,
671
+ "properties": {
672
+ "category": {
673
+ "enum": [
674
+ "AUTHENTICATION"
675
+ ]
676
+ },
677
+ "code": {
678
+ "enum": [
679
+ "AUTHENTICATION_REQUIRED"
680
+ ]
681
+ },
682
+ "correlationId": {
683
+ "type": "string"
684
+ },
685
+ "effectEvidence": {
686
+ "enum": [
687
+ "NOT_APPLIED"
688
+ ]
689
+ },
690
+ "message": {
691
+ "type": "string"
692
+ },
693
+ "retryable": {
694
+ "enum": [
695
+ true
696
+ ]
697
+ },
698
+ "schemaVersion": {
699
+ "enum": [
700
+ "2.0.0"
701
+ ]
702
+ },
703
+ "traceId": {
704
+ "type": "string"
705
+ },
706
+ "violations": {
707
+ "items": {
708
+ "additionalProperties": false,
709
+ "properties": {
710
+ "code": {
711
+ "type": "string"
712
+ },
713
+ "path": {
714
+ "type": "string"
715
+ }
716
+ },
717
+ "required": [
718
+ "path",
719
+ "code"
720
+ ],
721
+ "type": "object"
722
+ },
723
+ "maxItems": 100,
724
+ "type": "array"
725
+ }
726
+ },
727
+ "required": [
728
+ "schemaVersion",
729
+ "code",
730
+ "category",
731
+ "message",
732
+ "traceId",
733
+ "correlationId",
734
+ "retryable",
735
+ "effectEvidence"
736
+ ],
737
+ "type": "object"
738
+ }
739
+ ]
740
+ },
741
+ "ErrorEnvelopeV2Conflict": {
742
+ "allOf": [
743
+ {
744
+ "$ref": "#/components/schemas/ErrorEnvelopeV2"
745
+ },
746
+ {
747
+ "additionalProperties": false,
748
+ "properties": {
749
+ "category": {
750
+ "enum": [
751
+ "CONFLICT"
752
+ ]
753
+ },
754
+ "code": {
755
+ "enum": [
756
+ "CONFLICT"
757
+ ]
758
+ },
759
+ "correlationId": {
760
+ "type": "string"
761
+ },
762
+ "effectEvidence": {
763
+ "enum": [
764
+ null
765
+ ]
766
+ },
767
+ "message": {
768
+ "type": "string"
769
+ },
770
+ "retryable": {
771
+ "enum": [
772
+ false
773
+ ]
774
+ },
775
+ "schemaVersion": {
776
+ "enum": [
777
+ "2.0.0"
778
+ ]
779
+ },
780
+ "traceId": {
781
+ "type": "string"
782
+ },
783
+ "violations": {
784
+ "items": {
785
+ "additionalProperties": false,
786
+ "properties": {
787
+ "code": {
788
+ "type": "string"
789
+ },
790
+ "path": {
791
+ "type": "string"
792
+ }
793
+ },
794
+ "required": [
795
+ "path",
796
+ "code"
797
+ ],
798
+ "type": "object"
799
+ },
800
+ "maxItems": 100,
801
+ "type": "array"
802
+ }
803
+ },
804
+ "required": [
805
+ "schemaVersion",
806
+ "code",
807
+ "category",
808
+ "message",
809
+ "traceId",
810
+ "correlationId",
811
+ "retryable",
812
+ "effectEvidence"
813
+ ],
814
+ "type": "object"
815
+ }
816
+ ]
817
+ },
818
+ "ErrorEnvelopeV2IdempotencyConflict": {
819
+ "allOf": [
820
+ {
821
+ "$ref": "#/components/schemas/ErrorEnvelopeV2"
822
+ },
823
+ {
824
+ "additionalProperties": false,
825
+ "properties": {
826
+ "category": {
827
+ "enum": [
828
+ "CONFLICT"
829
+ ]
830
+ },
831
+ "code": {
832
+ "enum": [
833
+ "IDEMPOTENCY_CONFLICT"
834
+ ]
835
+ },
836
+ "correlationId": {
837
+ "type": "string"
838
+ },
839
+ "effectEvidence": {
840
+ "enum": [
841
+ null
842
+ ]
843
+ },
844
+ "message": {
845
+ "type": "string"
846
+ },
847
+ "retryable": {
848
+ "enum": [
849
+ false
850
+ ]
851
+ },
852
+ "schemaVersion": {
853
+ "enum": [
854
+ "2.0.0"
855
+ ]
856
+ },
857
+ "traceId": {
858
+ "type": "string"
859
+ },
860
+ "violations": {
861
+ "items": {
862
+ "additionalProperties": false,
863
+ "properties": {
864
+ "code": {
865
+ "type": "string"
866
+ },
867
+ "path": {
868
+ "type": "string"
869
+ }
870
+ },
871
+ "required": [
872
+ "path",
873
+ "code"
874
+ ],
875
+ "type": "object"
876
+ },
877
+ "maxItems": 100,
878
+ "type": "array"
879
+ }
880
+ },
881
+ "required": [
882
+ "schemaVersion",
883
+ "code",
884
+ "category",
885
+ "message",
886
+ "traceId",
887
+ "correlationId",
888
+ "retryable",
889
+ "effectEvidence"
890
+ ],
891
+ "type": "object"
892
+ }
893
+ ]
894
+ },
895
+ "ErrorEnvelopeV2InternalSafeFailure": {
896
+ "allOf": [
897
+ {
898
+ "$ref": "#/components/schemas/ErrorEnvelopeV2"
899
+ },
900
+ {
901
+ "additionalProperties": false,
902
+ "properties": {
903
+ "category": {
904
+ "enum": [
905
+ "INTERNAL"
906
+ ]
907
+ },
908
+ "code": {
909
+ "enum": [
910
+ "INTERNAL_SAFE_FAILURE"
911
+ ]
912
+ },
913
+ "correlationId": {
914
+ "type": "string"
915
+ },
916
+ "effectEvidence": {
917
+ "enum": [
918
+ null
919
+ ]
920
+ },
921
+ "message": {
922
+ "type": "string"
923
+ },
924
+ "retryable": {
925
+ "enum": [
926
+ false
927
+ ]
928
+ },
929
+ "schemaVersion": {
930
+ "enum": [
931
+ "2.0.0"
932
+ ]
933
+ },
934
+ "traceId": {
935
+ "type": "string"
936
+ },
937
+ "violations": {
938
+ "items": {
939
+ "additionalProperties": false,
940
+ "properties": {
941
+ "code": {
942
+ "type": "string"
943
+ },
944
+ "path": {
945
+ "type": "string"
946
+ }
947
+ },
948
+ "required": [
949
+ "path",
950
+ "code"
951
+ ],
952
+ "type": "object"
953
+ },
954
+ "maxItems": 100,
955
+ "type": "array"
956
+ }
957
+ },
958
+ "required": [
959
+ "schemaVersion",
960
+ "code",
961
+ "category",
962
+ "message",
963
+ "traceId",
964
+ "correlationId",
965
+ "retryable",
966
+ "effectEvidence"
967
+ ],
968
+ "type": "object"
969
+ }
970
+ ]
971
+ },
972
+ "ErrorEnvelopeV2InvalidRequest": {
973
+ "allOf": [
974
+ {
975
+ "$ref": "#/components/schemas/ErrorEnvelopeV2"
976
+ },
977
+ {
978
+ "additionalProperties": false,
979
+ "properties": {
980
+ "category": {
981
+ "enum": [
982
+ "VALIDATION"
983
+ ]
984
+ },
985
+ "code": {
986
+ "enum": [
987
+ "INVALID_REQUEST"
988
+ ]
989
+ },
990
+ "correlationId": {
991
+ "type": "string"
992
+ },
993
+ "effectEvidence": {
994
+ "enum": [
995
+ "NOT_APPLIED"
996
+ ]
997
+ },
998
+ "message": {
999
+ "type": "string"
1000
+ },
1001
+ "retryable": {
1002
+ "enum": [
1003
+ false
1004
+ ]
1005
+ },
1006
+ "schemaVersion": {
1007
+ "enum": [
1008
+ "2.0.0"
1009
+ ]
1010
+ },
1011
+ "traceId": {
1012
+ "type": "string"
1013
+ },
1014
+ "violations": {
1015
+ "items": {
1016
+ "additionalProperties": false,
1017
+ "properties": {
1018
+ "code": {
1019
+ "type": "string"
1020
+ },
1021
+ "path": {
1022
+ "type": "string"
1023
+ }
1024
+ },
1025
+ "required": [
1026
+ "path",
1027
+ "code"
1028
+ ],
1029
+ "type": "object"
1030
+ },
1031
+ "maxItems": 100,
1032
+ "type": "array"
1033
+ }
1034
+ },
1035
+ "required": [
1036
+ "schemaVersion",
1037
+ "code",
1038
+ "category",
1039
+ "message",
1040
+ "traceId",
1041
+ "correlationId",
1042
+ "retryable",
1043
+ "effectEvidence"
1044
+ ],
1045
+ "type": "object"
1046
+ }
1047
+ ]
1048
+ },
1049
+ "ErrorEnvelopeV2NotFound": {
1050
+ "allOf": [
1051
+ {
1052
+ "$ref": "#/components/schemas/ErrorEnvelopeV2"
1053
+ },
1054
+ {
1055
+ "additionalProperties": false,
1056
+ "properties": {
1057
+ "category": {
1058
+ "enum": [
1059
+ "RESOURCE"
1060
+ ]
1061
+ },
1062
+ "code": {
1063
+ "enum": [
1064
+ "NOT_FOUND"
1065
+ ]
1066
+ },
1067
+ "correlationId": {
1068
+ "type": "string"
1069
+ },
1070
+ "effectEvidence": {
1071
+ "enum": [
1072
+ "NOT_APPLIED"
1073
+ ]
1074
+ },
1075
+ "message": {
1076
+ "type": "string"
1077
+ },
1078
+ "retryable": {
1079
+ "enum": [
1080
+ false
1081
+ ]
1082
+ },
1083
+ "schemaVersion": {
1084
+ "enum": [
1085
+ "2.0.0"
1086
+ ]
1087
+ },
1088
+ "traceId": {
1089
+ "type": "string"
1090
+ },
1091
+ "violations": {
1092
+ "items": {
1093
+ "additionalProperties": false,
1094
+ "properties": {
1095
+ "code": {
1096
+ "type": "string"
1097
+ },
1098
+ "path": {
1099
+ "type": "string"
1100
+ }
1101
+ },
1102
+ "required": [
1103
+ "path",
1104
+ "code"
1105
+ ],
1106
+ "type": "object"
1107
+ },
1108
+ "maxItems": 100,
1109
+ "type": "array"
1110
+ }
1111
+ },
1112
+ "required": [
1113
+ "schemaVersion",
1114
+ "code",
1115
+ "category",
1116
+ "message",
1117
+ "traceId",
1118
+ "correlationId",
1119
+ "retryable",
1120
+ "effectEvidence"
1121
+ ],
1122
+ "type": "object"
1123
+ }
1124
+ ]
1125
+ }
1126
+ },
1127
+ "securitySchemes": {}
1128
+ },
1129
+ "info": {
1130
+ "contact": {},
1131
+ "description": "Contract-set 2.0.0; deployed HTTP paths remain v1.",
1132
+ "license": {
1133
+ "name": "Proprietary — see distribution LICENSE.txt",
1134
+ "url": "https://oxchannels.invalid/legal/proprietary"
1135
+ },
1136
+ "title": "OxChannels Agent Bootstrap API",
1137
+ "version": "2.0.0"
1138
+ },
1139
+ "jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
1140
+ "openapi": "3.1.1",
1141
+ "paths": {
1142
+ "/v1/device-enrollments/complete": {
1143
+ "post": {
1144
+ "operationId": "DeviceEnrollment_complete",
1145
+ "parameters": [
1146
+ {
1147
+ "in": "header",
1148
+ "name": "OxChannels-Contract-Set",
1149
+ "required": true,
1150
+ "schema": {
1151
+ "const": "2.0.0",
1152
+ "type": "string"
1153
+ }
1154
+ }
1155
+ ],
1156
+ "requestBody": {
1157
+ "content": {
1158
+ "application/json": {
1159
+ "schema": {
1160
+ "$ref": "#/components/schemas/EnrollmentProofDto"
1161
+ }
1162
+ }
1163
+ },
1164
+ "required": true
1165
+ },
1166
+ "responses": {
1167
+ "201": {
1168
+ "content": {
1169
+ "application/json": {
1170
+ "schema": {
1171
+ "$ref": "#/components/schemas/EnrollmentCompleteResponseDto"
1172
+ }
1173
+ }
1174
+ },
1175
+ "description": ""
1176
+ },
1177
+ "400": {
1178
+ "content": {
1179
+ "application/json": {
1180
+ "schema": {
1181
+ "$ref": "#/components/schemas/ErrorEnvelopeV2InvalidRequest"
1182
+ }
1183
+ }
1184
+ },
1185
+ "description": "Invalid request"
1186
+ },
1187
+ "401": {
1188
+ "content": {
1189
+ "application/json": {
1190
+ "schema": {
1191
+ "$ref": "#/components/schemas/ErrorEnvelopeV2AuthenticationRequired"
1192
+ }
1193
+ }
1194
+ },
1195
+ "description": "Authentication required"
1196
+ },
1197
+ "404": {
1198
+ "content": {
1199
+ "application/json": {
1200
+ "schema": {
1201
+ "$ref": "#/components/schemas/ErrorEnvelopeV2NotFound"
1202
+ }
1203
+ }
1204
+ },
1205
+ "description": "Resource unavailable"
1206
+ },
1207
+ "409": {
1208
+ "content": {
1209
+ "application/json": {
1210
+ "schema": {
1211
+ "oneOf": [
1212
+ {
1213
+ "$ref": "#/components/schemas/ErrorEnvelopeV2Conflict"
1214
+ },
1215
+ {
1216
+ "$ref": "#/components/schemas/ErrorEnvelopeV2IdempotencyConflict"
1217
+ }
1218
+ ]
1219
+ }
1220
+ }
1221
+ },
1222
+ "description": "State or idempotency conflict"
1223
+ },
1224
+ "500": {
1225
+ "content": {
1226
+ "application/json": {
1227
+ "schema": {
1228
+ "$ref": "#/components/schemas/ErrorEnvelopeV2InternalSafeFailure"
1229
+ }
1230
+ }
1231
+ },
1232
+ "description": "Unexpected server failure"
1233
+ }
1234
+ },
1235
+ "security": [],
1236
+ "summary": "Device Enrollment complete",
1237
+ "tags": [
1238
+ "DeviceEnrollment"
1239
+ ],
1240
+ "x-oxchannels-action-class": "ONE_TIME_ENROLLMENT_PROOF",
1241
+ "x-oxchannels-surface": "AGENT_BOOTSTRAP"
1242
+ }
1243
+ }
1244
+ },
1245
+ "security": [],
1246
+ "servers": [
1247
+ {
1248
+ "description": "Deployment-specific base URL placeholder; replace in consumer configuration.",
1249
+ "url": "https://api.oxchannels.invalid"
1250
+ }
1251
+ ],
1252
+ "tags": [],
1253
+ "x-oxchannels-active-error-codes": [
1254
+ "INVALID_REQUEST",
1255
+ "AUTHENTICATION_REQUIRED",
1256
+ "FORBIDDEN",
1257
+ "NOT_FOUND",
1258
+ "IDEMPOTENCY_CONFLICT",
1259
+ "RATE_LIMITED",
1260
+ "INTERNAL_SAFE_FAILURE",
1261
+ "CONFLICT"
1262
+ ],
1263
+ "x-oxchannels-contract-set": "2.0.0",
1264
+ "x-oxchannels-surface": "AGENT_BOOTSTRAP",
1265
+ "x-oxchannels-wire-version": "v1"
1266
+ }