@sphereon/ssi-sdk-ext.identifier-resolution 0.24.1-unstable.75 → 0.24.1-unstable.77

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.
Files changed (48) hide show
  1. package/README.md +380 -1
  2. package/dist/agent/IdentifierResolution.d.ts +9 -1
  3. package/dist/agent/IdentifierResolution.d.ts.map +1 -1
  4. package/dist/agent/IdentifierResolution.js +22 -3
  5. package/dist/agent/IdentifierResolution.js.map +1 -1
  6. package/dist/functions/externalIdentifierFunctions.d.ts +10 -0
  7. package/dist/functions/externalIdentifierFunctions.d.ts.map +1 -0
  8. package/dist/functions/externalIdentifierFunctions.js +167 -0
  9. package/dist/functions/externalIdentifierFunctions.js.map +1 -0
  10. package/dist/functions/index.d.ts +2 -12
  11. package/dist/functions/index.d.ts.map +1 -1
  12. package/dist/functions/index.js +15 -237
  13. package/dist/functions/index.js.map +1 -1
  14. package/dist/functions/managedIdentifierFunctions.d.ts +12 -0
  15. package/dist/functions/managedIdentifierFunctions.d.ts.map +1 -0
  16. package/dist/functions/managedIdentifierFunctions.js +168 -0
  17. package/dist/functions/managedIdentifierFunctions.js.map +1 -0
  18. package/dist/types/IIdentifierResolution.d.ts +18 -159
  19. package/dist/types/IIdentifierResolution.d.ts.map +1 -1
  20. package/dist/types/IIdentifierResolution.js +0 -95
  21. package/dist/types/IIdentifierResolution.js.map +1 -1
  22. package/dist/types/common.d.ts +16 -0
  23. package/dist/types/common.d.ts.map +1 -0
  24. package/dist/types/common.js +32 -0
  25. package/dist/types/common.js.map +1 -0
  26. package/dist/types/externalIdentifierTypes.d.ts +80 -0
  27. package/dist/types/externalIdentifierTypes.d.ts.map +1 -0
  28. package/dist/types/externalIdentifierTypes.js +35 -0
  29. package/dist/types/externalIdentifierTypes.js.map +1 -0
  30. package/dist/types/index.d.ts +5 -0
  31. package/dist/types/index.d.ts.map +1 -0
  32. package/dist/types/index.js +21 -0
  33. package/dist/types/index.js.map +1 -0
  34. package/dist/types/managedIdentifierTypes.d.ts +81 -0
  35. package/dist/types/managedIdentifierTypes.d.ts.map +1 -0
  36. package/dist/types/managedIdentifierTypes.js +41 -0
  37. package/dist/types/managedIdentifierTypes.js.map +1 -0
  38. package/package.json +13 -11
  39. package/plugin.schema.json +1209 -222
  40. package/src/agent/IdentifierResolution.ts +31 -8
  41. package/src/functions/externalIdentifierFunctions.ts +183 -0
  42. package/src/functions/index.ts +2 -267
  43. package/src/functions/managedIdentifierFunctions.ts +178 -0
  44. package/src/types/IIdentifierResolution.ts +35 -278
  45. package/src/types/common.ts +37 -0
  46. package/src/types/externalIdentifierTypes.ts +119 -0
  47. package/src/types/index.ts +4 -0
  48. package/src/types/managedIdentifierTypes.ts +126 -0
@@ -44,8 +44,7 @@
44
44
  }
45
45
  },
46
46
  "required": [
47
- "identifier",
48
- "verify"
47
+ "identifier"
49
48
  ]
50
49
  },
51
50
  {
@@ -228,194 +227,950 @@
228
227
  ],
229
228
  "description": "Refers to a section of a DID document. Either the list of verification methods or services or one of the verification relationships.\n\nSee {@link https://www.w3.org/TR/did-core/#verification-relationships | verification relationships }"
230
229
  },
231
- "ManagedIdentifierOpts": {
230
+ "ExternalIdentifierResult": {
232
231
  "anyOf": [
233
232
  {
234
- "type": "object",
235
- "properties": {
236
- "method": {
237
- "type": "string",
238
- "const": "jwk"
239
- },
240
- "identifier": {
241
- "$ref": "#/components/schemas/ManagedIdentifierType"
242
- },
243
- "kmsKeyRef": {
244
- "type": "string"
245
- }
246
- },
247
- "required": [
248
- "identifier"
249
- ]
233
+ "$ref": "#/components/schemas/ExternalIdentifierDidResult"
250
234
  },
251
235
  {
252
- "type": "object",
253
- "properties": {
254
- "method": {
255
- "type": "string",
256
- "const": "x5c"
257
- },
258
- "identifier": {
259
- "$ref": "#/components/schemas/ManagedIdentifierType"
260
- },
261
- "kmsKeyRef": {
262
- "type": "string"
263
- }
264
- },
265
- "required": [
266
- "identifier"
267
- ]
236
+ "$ref": "#/components/schemas/ExternalIdentifierX5cResult"
237
+ }
238
+ ]
239
+ },
240
+ "ExternalIdentifierDidResult": {
241
+ "type": "object",
242
+ "properties": {
243
+ "method": {
244
+ "type": "string",
245
+ "const": "did"
268
246
  },
269
- {
247
+ "jwks": {
248
+ "type": "array",
249
+ "items": {
250
+ "$ref": "#/components/schemas/ExternalJwkInfo"
251
+ }
252
+ },
253
+ "did": {
254
+ "type": "string"
255
+ },
256
+ "didDocument": {
257
+ "$ref": "#/components/schemas/DIDDocument"
258
+ },
259
+ "didJwks": {
260
+ "$ref": "#/components/schemas/DidDocumentJwks"
261
+ },
262
+ "didResolutionResult": {
270
263
  "type": "object",
271
264
  "properties": {
272
- "method": {
273
- "type": "string",
274
- "const": "did"
275
- },
276
- "identifier": {
277
- "$ref": "#/components/schemas/ManagedIdentifierType"
278
- },
279
- "kmsKeyRef": {
280
- "type": "string"
281
- },
282
- "keyType": {
283
- "$ref": "#/components/schemas/TKeyType"
284
- },
285
- "offlineWhenNoDIDRegistered": {
286
- "type": "boolean"
265
+ "@context": {
266
+ "anyOf": [
267
+ {
268
+ "type": "string",
269
+ "const": "https://w3id.org/did-resolution/v1"
270
+ },
271
+ {
272
+ "type": "string"
273
+ },
274
+ {
275
+ "type": "array",
276
+ "items": {
277
+ "type": "string"
278
+ }
279
+ }
280
+ ]
287
281
  },
288
- "noVerificationMethodFallback": {
289
- "type": "boolean"
290
- },
291
- "controllerKey": {
292
- "type": "boolean"
282
+ "didResolutionMetadata": {
283
+ "$ref": "#/components/schemas/DIDResolutionMetadata"
293
284
  },
294
- "vmRelationship": {
295
- "$ref": "#/components/schemas/DIDDocumentSection"
285
+ "didDocumentMetadata": {
286
+ "$ref": "#/components/schemas/DIDDocumentMetadata"
296
287
  }
297
288
  },
298
289
  "required": [
299
- "identifier"
290
+ "didResolutionMetadata",
291
+ "didDocumentMetadata"
300
292
  ]
301
293
  },
302
- {
303
- "type": "object",
304
- "properties": {
305
- "method": {
294
+ "didParsed": {
295
+ "$ref": "#/components/schemas/IParsedDID"
296
+ }
297
+ },
298
+ "required": [
299
+ "did",
300
+ "didParsed",
301
+ "didResolutionResult",
302
+ "jwks",
303
+ "method"
304
+ ]
305
+ },
306
+ "ExternalJwkInfo": {
307
+ "type": "object",
308
+ "properties": {
309
+ "jwk": {
310
+ "$ref": "#/components/schemas/JWK"
311
+ },
312
+ "jwkThumbprint": {
313
+ "type": "string"
314
+ },
315
+ "kid": {
316
+ "type": "string"
317
+ }
318
+ },
319
+ "required": [
320
+ "jwk",
321
+ "jwkThumbprint"
322
+ ]
323
+ },
324
+ "DIDDocument": {
325
+ "type": "object",
326
+ "properties": {
327
+ "authentication": {
328
+ "type": "array",
329
+ "items": {
330
+ "anyOf": [
331
+ {
332
+ "type": "string"
333
+ },
334
+ {
335
+ "$ref": "#/components/schemas/VerificationMethod"
336
+ }
337
+ ]
338
+ }
339
+ },
340
+ "assertionMethod": {
341
+ "type": "array",
342
+ "items": {
343
+ "anyOf": [
344
+ {
345
+ "type": "string"
346
+ },
347
+ {
348
+ "$ref": "#/components/schemas/VerificationMethod"
349
+ }
350
+ ]
351
+ }
352
+ },
353
+ "keyAgreement": {
354
+ "type": "array",
355
+ "items": {
356
+ "anyOf": [
357
+ {
358
+ "type": "string"
359
+ },
360
+ {
361
+ "$ref": "#/components/schemas/VerificationMethod"
362
+ }
363
+ ]
364
+ }
365
+ },
366
+ "capabilityInvocation": {
367
+ "type": "array",
368
+ "items": {
369
+ "anyOf": [
370
+ {
371
+ "type": "string"
372
+ },
373
+ {
374
+ "$ref": "#/components/schemas/VerificationMethod"
375
+ }
376
+ ]
377
+ }
378
+ },
379
+ "capabilityDelegation": {
380
+ "type": "array",
381
+ "items": {
382
+ "anyOf": [
383
+ {
384
+ "type": "string"
385
+ },
386
+ {
387
+ "$ref": "#/components/schemas/VerificationMethod"
388
+ }
389
+ ]
390
+ }
391
+ },
392
+ "@context": {
393
+ "anyOf": [
394
+ {
306
395
  "type": "string",
307
- "const": "kid"
308
- },
309
- "identifier": {
310
- "$ref": "#/components/schemas/ManagedIdentifierType"
396
+ "const": "https://www.w3.org/ns/did/v1"
311
397
  },
312
- "kmsKeyRef": {
398
+ {
313
399
  "type": "string"
400
+ },
401
+ {
402
+ "type": "array",
403
+ "items": {
404
+ "type": "string"
405
+ }
314
406
  }
315
- },
316
- "required": [
317
- "identifier"
318
407
  ]
319
- }
320
- ]
321
- },
322
- "ManagedIdentifierType": {
323
- "anyOf": [
324
- {
325
- "$ref": "#/components/schemas/IIdentifier"
326
408
  },
327
- {
409
+ "id": {
328
410
  "type": "string"
329
411
  },
330
- {
412
+ "alsoKnownAs": {
331
413
  "type": "array",
332
414
  "items": {
333
415
  "type": "string"
334
416
  }
335
417
  },
336
- {
337
- "$ref": "#/components/schemas/JWK"
338
- }
339
- ],
340
- "description": "Use whenever we need to pass in an identifier. We can pass in kids, DIDs, IIdentifier objects and x5chains\n\nThe functions below can be used to check the type, and they also provide the proper runtime types"
341
- },
342
- "IIdentifier": {
343
- "type": "object",
344
- "properties": {
345
- "did": {
346
- "type": "string",
347
- "description": "Decentralized identifier"
348
- },
349
- "alias": {
350
- "type": "string",
351
- "description": "Optional. Identifier alias. Can be used to reference an object in an external system"
352
- },
353
- "provider": {
354
- "type": "string",
355
- "description": "Identifier provider name"
418
+ "controller": {
419
+ "anyOf": [
420
+ {
421
+ "type": "string"
422
+ },
423
+ {
424
+ "type": "array",
425
+ "items": {
426
+ "type": "string"
427
+ }
428
+ }
429
+ ]
356
430
  },
357
- "controllerKeyId": {
358
- "type": "string",
359
- "description": "Controller key id"
431
+ "verificationMethod": {
432
+ "type": "array",
433
+ "items": {
434
+ "$ref": "#/components/schemas/VerificationMethod"
435
+ }
360
436
  },
361
- "keys": {
437
+ "service": {
362
438
  "type": "array",
363
439
  "items": {
364
- "$ref": "#/components/schemas/IKey"
365
- },
366
- "description": "Array of managed keys"
440
+ "$ref": "#/components/schemas/Service"
441
+ }
367
442
  },
368
- "services": {
443
+ "publicKey": {
369
444
  "type": "array",
370
445
  "items": {
371
- "$ref": "#/components/schemas/IService"
446
+ "$ref": "#/components/schemas/VerificationMethod"
372
447
  },
373
- "description": "Array of services"
448
+ "deprecated": true
374
449
  }
375
450
  },
376
451
  "required": [
377
- "did",
378
- "provider",
379
- "keys",
380
- "services"
452
+ "id"
381
453
  ],
382
- "description": "Identifier interface"
454
+ "description": "Represents a DID document."
383
455
  },
384
- "IKey": {
456
+ "VerificationMethod": {
385
457
  "type": "object",
386
458
  "properties": {
387
- "kid": {
388
- "type": "string",
389
- "description": "Key ID"
390
- },
391
- "kms": {
392
- "type": "string",
393
- "description": "Key Management System"
459
+ "id": {
460
+ "type": "string"
394
461
  },
395
462
  "type": {
396
- "$ref": "#/components/schemas/TKeyType",
397
- "description": "Key type"
463
+ "type": "string"
464
+ },
465
+ "controller": {
466
+ "type": "string"
467
+ },
468
+ "publicKeyBase58": {
469
+ "type": "string"
470
+ },
471
+ "publicKeyBase64": {
472
+ "type": "string"
473
+ },
474
+ "publicKeyJwk": {
475
+ "$ref": "#/components/schemas/JsonWebKey"
398
476
  },
399
477
  "publicKeyHex": {
400
- "type": "string",
401
- "description": "Public key"
478
+ "type": "string"
402
479
  },
403
- "privateKeyHex": {
404
- "type": "string",
405
- "description": "Optional. Private key"
480
+ "publicKeyMultibase": {
481
+ "type": "string"
406
482
  },
407
- "meta": {
408
- "anyOf": [
409
- {
410
- "$ref": "#/components/schemas/KeyMetadata"
411
- },
412
- {
413
- "type": "null"
414
- }
415
- ],
416
- "description": "Optional. Key metadata. This should be used to determine which algorithms are supported."
417
- }
418
- },
483
+ "blockchainAccountId": {
484
+ "type": "string"
485
+ },
486
+ "ethereumAddress": {
487
+ "type": "string"
488
+ },
489
+ "conditionOr": {
490
+ "type": "array",
491
+ "items": {
492
+ "$ref": "#/components/schemas/VerificationMethod"
493
+ }
494
+ },
495
+ "conditionAnd": {
496
+ "type": "array",
497
+ "items": {
498
+ "$ref": "#/components/schemas/VerificationMethod"
499
+ }
500
+ },
501
+ "threshold": {
502
+ "type": "number"
503
+ },
504
+ "conditionThreshold": {
505
+ "type": "array",
506
+ "items": {
507
+ "$ref": "#/components/schemas/VerificationMethod"
508
+ }
509
+ },
510
+ "conditionWeightedThreshold": {
511
+ "type": "array",
512
+ "items": {
513
+ "$ref": "#/components/schemas/ConditionWeightedThreshold"
514
+ }
515
+ },
516
+ "conditionDelegated": {
517
+ "type": "string"
518
+ },
519
+ "relationshipParent": {
520
+ "type": "array",
521
+ "items": {
522
+ "type": "string"
523
+ }
524
+ },
525
+ "relationshipChild": {
526
+ "type": "array",
527
+ "items": {
528
+ "type": "string"
529
+ }
530
+ },
531
+ "relationshipSibling": {
532
+ "type": "array",
533
+ "items": {
534
+ "type": "string"
535
+ }
536
+ }
537
+ },
538
+ "required": [
539
+ "id",
540
+ "type",
541
+ "controller"
542
+ ],
543
+ "description": "Represents the properties of a Verification Method listed in a DID document.\n\nThis data type includes public key representations that are no longer present in the spec but are still used by several DID methods / resolvers and kept for backward compatibility."
544
+ },
545
+ "JsonWebKey": {
546
+ "type": "object",
547
+ "properties": {
548
+ "alg": {
549
+ "type": "string"
550
+ },
551
+ "crv": {
552
+ "type": "string"
553
+ },
554
+ "e": {
555
+ "type": "string"
556
+ },
557
+ "ext": {
558
+ "type": "boolean"
559
+ },
560
+ "key_ops": {
561
+ "type": "array",
562
+ "items": {
563
+ "type": "string"
564
+ }
565
+ },
566
+ "kid": {
567
+ "type": "string"
568
+ },
569
+ "kty": {
570
+ "type": "string"
571
+ },
572
+ "n": {
573
+ "type": "string"
574
+ },
575
+ "use": {
576
+ "type": "string"
577
+ },
578
+ "x": {
579
+ "type": "string"
580
+ },
581
+ "y": {
582
+ "type": "string"
583
+ }
584
+ },
585
+ "required": [
586
+ "kty"
587
+ ],
588
+ "description": "Encapsulates a JSON web key type that includes only the public properties that can be used in DID documents.\n\nThe private properties are intentionally omitted to discourage the use (and accidental disclosure) of private keys in DID documents."
589
+ },
590
+ "ConditionWeightedThreshold": {
591
+ "type": "object",
592
+ "properties": {
593
+ "condition": {
594
+ "$ref": "#/components/schemas/VerificationMethod"
595
+ },
596
+ "weight": {
597
+ "type": "number"
598
+ }
599
+ },
600
+ "required": [
601
+ "condition",
602
+ "weight"
603
+ ]
604
+ },
605
+ "Service": {
606
+ "type": "object",
607
+ "properties": {
608
+ "id": {
609
+ "type": "string"
610
+ },
611
+ "type": {
612
+ "type": "string"
613
+ },
614
+ "serviceEndpoint": {
615
+ "anyOf": [
616
+ {
617
+ "$ref": "#/components/schemas/ServiceEndpoint"
618
+ },
619
+ {
620
+ "type": "array",
621
+ "items": {
622
+ "$ref": "#/components/schemas/ServiceEndpoint"
623
+ }
624
+ }
625
+ ]
626
+ }
627
+ },
628
+ "required": [
629
+ "id",
630
+ "type",
631
+ "serviceEndpoint"
632
+ ],
633
+ "description": "Represents a Service entry in a {@link https://www.w3.org/TR/did-core/#did-document-properties | DID document } ."
634
+ },
635
+ "ServiceEndpoint": {
636
+ "anyOf": [
637
+ {
638
+ "type": "string"
639
+ },
640
+ {
641
+ "type": "object"
642
+ }
643
+ ],
644
+ "description": "Represents an endpoint of a Service entry in a DID document."
645
+ },
646
+ "DidDocumentJwks": {
647
+ "type": "object",
648
+ "properties": {
649
+ "verificationMethod": {
650
+ "type": "array",
651
+ "items": {
652
+ "$ref": "#/components/schemas/JWK"
653
+ }
654
+ },
655
+ "authentication": {
656
+ "type": "array",
657
+ "items": {
658
+ "$ref": "#/components/schemas/JWK"
659
+ }
660
+ },
661
+ "assertionMethod": {
662
+ "type": "array",
663
+ "items": {
664
+ "$ref": "#/components/schemas/JWK"
665
+ }
666
+ },
667
+ "keyAgreement": {
668
+ "type": "array",
669
+ "items": {
670
+ "$ref": "#/components/schemas/JWK"
671
+ }
672
+ },
673
+ "capabilityInvocation": {
674
+ "type": "array",
675
+ "items": {
676
+ "$ref": "#/components/schemas/JWK"
677
+ }
678
+ },
679
+ "capabilityDelegation": {
680
+ "type": "array",
681
+ "items": {
682
+ "$ref": "#/components/schemas/JWK"
683
+ }
684
+ }
685
+ },
686
+ "required": [
687
+ "verificationMethod",
688
+ "authentication",
689
+ "assertionMethod",
690
+ "keyAgreement",
691
+ "capabilityInvocation",
692
+ "capabilityDelegation"
693
+ ]
694
+ },
695
+ "DIDResolutionMetadata": {
696
+ "type": "object",
697
+ "properties": {
698
+ "contentType": {
699
+ "type": "string"
700
+ },
701
+ "error": {
702
+ "type": "string"
703
+ }
704
+ },
705
+ "description": "Encapsulates the resolution metadata resulting from a {@link Resolvable.resolve } operation."
706
+ },
707
+ "DIDDocumentMetadata": {
708
+ "type": "object",
709
+ "properties": {
710
+ "created": {
711
+ "type": "string"
712
+ },
713
+ "updated": {
714
+ "type": "string"
715
+ },
716
+ "deactivated": {
717
+ "type": "boolean"
718
+ },
719
+ "versionId": {
720
+ "type": "string"
721
+ },
722
+ "nextUpdate": {
723
+ "type": "string"
724
+ },
725
+ "nextVersionId": {
726
+ "type": "string"
727
+ },
728
+ "equivalentId": {
729
+ "type": "string"
730
+ },
731
+ "canonicalId": {
732
+ "type": "string"
733
+ }
734
+ },
735
+ "description": "Represents metadata about the DID document resulting from a {@link Resolvable.resolve } operation."
736
+ },
737
+ "IParsedDID": {
738
+ "type": "object",
739
+ "properties": {
740
+ "did": {
741
+ "type": "string"
742
+ },
743
+ "didUrl": {
744
+ "type": "string"
745
+ },
746
+ "method": {
747
+ "type": "string"
748
+ },
749
+ "id": {
750
+ "type": "string"
751
+ },
752
+ "path": {
753
+ "type": "string"
754
+ },
755
+ "fragment": {
756
+ "type": "string"
757
+ },
758
+ "query": {
759
+ "type": "string"
760
+ },
761
+ "params": {
762
+ "type": "object",
763
+ "additionalProperties": {
764
+ "type": "string"
765
+ }
766
+ }
767
+ },
768
+ "required": [
769
+ "did",
770
+ "didUrl",
771
+ "method",
772
+ "id"
773
+ ]
774
+ },
775
+ "ExternalIdentifierX5cResult": {
776
+ "type": "object",
777
+ "properties": {
778
+ "method": {
779
+ "type": "string",
780
+ "const": "x5c"
781
+ },
782
+ "jwks": {
783
+ "type": "array",
784
+ "items": {
785
+ "$ref": "#/components/schemas/ExternalJwkInfo"
786
+ }
787
+ },
788
+ "x5c": {
789
+ "type": "array",
790
+ "items": {
791
+ "type": "string"
792
+ }
793
+ },
794
+ "issuerJWK": {
795
+ "$ref": "#/components/schemas/JWK"
796
+ },
797
+ "verificationResult": {
798
+ "$ref": "#/components/schemas/X509ValidationResult"
799
+ },
800
+ "certificates": {
801
+ "type": "array",
802
+ "items": {}
803
+ }
804
+ },
805
+ "required": [
806
+ "certificates",
807
+ "issuerJWK",
808
+ "jwks",
809
+ "method",
810
+ "x5c"
811
+ ]
812
+ },
813
+ "X509ValidationResult": {
814
+ "type": "object",
815
+ "properties": {
816
+ "error": {
817
+ "type": "boolean"
818
+ },
819
+ "critical": {
820
+ "type": "boolean"
821
+ },
822
+ "message": {
823
+ "type": "string"
824
+ },
825
+ "verificationTime": {
826
+ "type": "string",
827
+ "format": "date-time"
828
+ },
829
+ "certificateChain": {
830
+ "type": "array",
831
+ "items": {
832
+ "$ref": "#/components/schemas/CertInfo"
833
+ }
834
+ }
835
+ },
836
+ "required": [
837
+ "error",
838
+ "critical",
839
+ "message",
840
+ "verificationTime"
841
+ ]
842
+ },
843
+ "CertInfo": {
844
+ "type": "object",
845
+ "properties": {
846
+ "certificate": {},
847
+ "notBefore": {
848
+ "type": "string",
849
+ "format": "date-time"
850
+ },
851
+ "notAfter": {
852
+ "type": "string",
853
+ "format": "date-time"
854
+ },
855
+ "publicKeyJWK": {},
856
+ "issuer": {
857
+ "type": "object",
858
+ "properties": {
859
+ "dn": {
860
+ "$ref": "#/components/schemas/DNInfo"
861
+ }
862
+ },
863
+ "required": [
864
+ "dn"
865
+ ]
866
+ },
867
+ "subject": {
868
+ "type": "object",
869
+ "properties": {
870
+ "dn": {
871
+ "$ref": "#/components/schemas/DNInfo"
872
+ }
873
+ },
874
+ "required": [
875
+ "dn"
876
+ ]
877
+ }
878
+ },
879
+ "required": [
880
+ "notBefore",
881
+ "notAfter",
882
+ "issuer",
883
+ "subject"
884
+ ]
885
+ },
886
+ "DNInfo": {
887
+ "type": "object",
888
+ "properties": {
889
+ "DN": {
890
+ "type": "string"
891
+ },
892
+ "attributes": {
893
+ "type": "object",
894
+ "additionalProperties": {
895
+ "type": "string"
896
+ }
897
+ }
898
+ },
899
+ "required": [
900
+ "DN",
901
+ "attributes"
902
+ ]
903
+ },
904
+ "ExternalIdentifierDidOpts": {
905
+ "type": "object",
906
+ "properties": {
907
+ "method": {
908
+ "type": "string",
909
+ "const": "did"
910
+ },
911
+ "identifier": {
912
+ "$ref": "#/components/schemas/ExternalIdentifierType"
913
+ },
914
+ "noVerificationMethodFallback": {
915
+ "type": "boolean"
916
+ },
917
+ "vmRelationship": {
918
+ "$ref": "#/components/schemas/DIDDocumentSection"
919
+ },
920
+ "localResolution": {
921
+ "type": "boolean"
922
+ },
923
+ "uniresolverResolution": {
924
+ "type": "boolean"
925
+ },
926
+ "resolverResolution": {
927
+ "type": "boolean"
928
+ }
929
+ },
930
+ "required": [
931
+ "identifier"
932
+ ]
933
+ },
934
+ "ExternalIdentifierX5cOpts": {
935
+ "type": "object",
936
+ "properties": {
937
+ "method": {
938
+ "type": "string",
939
+ "const": "x5c"
940
+ },
941
+ "identifier": {
942
+ "$ref": "#/components/schemas/ExternalIdentifierType"
943
+ },
944
+ "verify": {
945
+ "type": "boolean"
946
+ },
947
+ "verificationTime": {
948
+ "type": "string",
949
+ "format": "date-time"
950
+ },
951
+ "trustAnchors": {
952
+ "type": "array",
953
+ "items": {
954
+ "type": "string"
955
+ }
956
+ }
957
+ },
958
+ "required": [
959
+ "identifier"
960
+ ]
961
+ },
962
+ "ManagedIdentifierOpts": {
963
+ "anyOf": [
964
+ {
965
+ "type": "object",
966
+ "properties": {
967
+ "method": {
968
+ "type": "string",
969
+ "const": "jwk"
970
+ },
971
+ "identifier": {
972
+ "$ref": "#/components/schemas/ManagedIdentifierType"
973
+ },
974
+ "kmsKeyRef": {
975
+ "type": "string"
976
+ },
977
+ "issuer": {
978
+ "type": "string"
979
+ },
980
+ "kid": {
981
+ "type": "string"
982
+ }
983
+ },
984
+ "required": [
985
+ "identifier"
986
+ ]
987
+ },
988
+ {
989
+ "type": "object",
990
+ "properties": {
991
+ "method": {
992
+ "type": "string",
993
+ "const": "x5c"
994
+ },
995
+ "identifier": {
996
+ "$ref": "#/components/schemas/ManagedIdentifierType"
997
+ },
998
+ "kmsKeyRef": {
999
+ "type": "string"
1000
+ },
1001
+ "issuer": {
1002
+ "type": "string"
1003
+ },
1004
+ "kid": {
1005
+ "type": "string"
1006
+ }
1007
+ },
1008
+ "required": [
1009
+ "identifier"
1010
+ ]
1011
+ },
1012
+ {
1013
+ "type": "object",
1014
+ "properties": {
1015
+ "method": {
1016
+ "type": "string",
1017
+ "const": "did"
1018
+ },
1019
+ "identifier": {
1020
+ "$ref": "#/components/schemas/ManagedIdentifierType"
1021
+ },
1022
+ "kmsKeyRef": {
1023
+ "type": "string"
1024
+ },
1025
+ "issuer": {
1026
+ "type": "string"
1027
+ },
1028
+ "kid": {
1029
+ "type": "string"
1030
+ },
1031
+ "keyType": {
1032
+ "$ref": "#/components/schemas/TKeyType"
1033
+ },
1034
+ "offlineWhenNoDIDRegistered": {
1035
+ "type": "boolean"
1036
+ },
1037
+ "noVerificationMethodFallback": {
1038
+ "type": "boolean"
1039
+ },
1040
+ "controllerKey": {
1041
+ "type": "boolean"
1042
+ },
1043
+ "vmRelationship": {
1044
+ "$ref": "#/components/schemas/DIDDocumentSection"
1045
+ }
1046
+ },
1047
+ "required": [
1048
+ "identifier"
1049
+ ]
1050
+ },
1051
+ {
1052
+ "type": "object",
1053
+ "properties": {
1054
+ "method": {
1055
+ "type": "string",
1056
+ "const": "kid"
1057
+ },
1058
+ "identifier": {
1059
+ "$ref": "#/components/schemas/ManagedIdentifierType"
1060
+ },
1061
+ "kmsKeyRef": {
1062
+ "type": "string"
1063
+ },
1064
+ "issuer": {
1065
+ "type": "string"
1066
+ },
1067
+ "kid": {
1068
+ "type": "string"
1069
+ }
1070
+ },
1071
+ "required": [
1072
+ "identifier"
1073
+ ]
1074
+ }
1075
+ ]
1076
+ },
1077
+ "ManagedIdentifierType": {
1078
+ "anyOf": [
1079
+ {
1080
+ "$ref": "#/components/schemas/IIdentifier"
1081
+ },
1082
+ {
1083
+ "type": "string"
1084
+ },
1085
+ {
1086
+ "type": "array",
1087
+ "items": {
1088
+ "type": "string"
1089
+ }
1090
+ },
1091
+ {
1092
+ "$ref": "#/components/schemas/JWK"
1093
+ }
1094
+ ],
1095
+ "description": "Use whenever we need to pass in an identifier. We can pass in kids, DIDs, IIdentifier objects and x5chains\n\nThe functions below can be used to check the type, and they also provide the proper runtime types"
1096
+ },
1097
+ "IIdentifier": {
1098
+ "type": "object",
1099
+ "properties": {
1100
+ "did": {
1101
+ "type": "string",
1102
+ "description": "Decentralized identifier"
1103
+ },
1104
+ "alias": {
1105
+ "type": "string",
1106
+ "description": "Optional. Identifier alias. Can be used to reference an object in an external system"
1107
+ },
1108
+ "provider": {
1109
+ "type": "string",
1110
+ "description": "Identifier provider name"
1111
+ },
1112
+ "controllerKeyId": {
1113
+ "type": "string",
1114
+ "description": "Controller key id"
1115
+ },
1116
+ "keys": {
1117
+ "type": "array",
1118
+ "items": {
1119
+ "$ref": "#/components/schemas/IKey"
1120
+ },
1121
+ "description": "Array of managed keys"
1122
+ },
1123
+ "services": {
1124
+ "type": "array",
1125
+ "items": {
1126
+ "$ref": "#/components/schemas/IService"
1127
+ },
1128
+ "description": "Array of services"
1129
+ }
1130
+ },
1131
+ "required": [
1132
+ "did",
1133
+ "provider",
1134
+ "keys",
1135
+ "services"
1136
+ ],
1137
+ "description": "Identifier interface"
1138
+ },
1139
+ "IKey": {
1140
+ "type": "object",
1141
+ "properties": {
1142
+ "kid": {
1143
+ "type": "string",
1144
+ "description": "Key ID"
1145
+ },
1146
+ "kms": {
1147
+ "type": "string",
1148
+ "description": "Key Management System"
1149
+ },
1150
+ "type": {
1151
+ "$ref": "#/components/schemas/TKeyType",
1152
+ "description": "Key type"
1153
+ },
1154
+ "publicKeyHex": {
1155
+ "type": "string",
1156
+ "description": "Public key"
1157
+ },
1158
+ "privateKeyHex": {
1159
+ "type": "string",
1160
+ "description": "Optional. Private key"
1161
+ },
1162
+ "meta": {
1163
+ "anyOf": [
1164
+ {
1165
+ "$ref": "#/components/schemas/KeyMetadata"
1166
+ },
1167
+ {
1168
+ "type": "null"
1169
+ }
1170
+ ],
1171
+ "description": "Optional. Key metadata. This should be used to determine which algorithms are supported."
1172
+ }
1173
+ },
419
1174
  "required": [
420
1175
  "kid",
421
1176
  "kms",
@@ -500,54 +1255,219 @@
500
1255
  "ManagedIdentifierResult": {
501
1256
  "anyOf": [
502
1257
  {
503
- "$ref": "#/components/schemas/ManagedIdentifierX5cResult"
1258
+ "type": "object",
1259
+ "properties": {
1260
+ "jwk": {
1261
+ "$ref": "#/components/schemas/JWK"
1262
+ },
1263
+ "jwkThumbprint": {
1264
+ "type": "string"
1265
+ },
1266
+ "kmsKeyRef": {
1267
+ "type": "string"
1268
+ },
1269
+ "method": {
1270
+ "$ref": "#/components/schemas/ManagedIdentifierMethod"
1271
+ },
1272
+ "key": {
1273
+ "$ref": "#/components/schemas/IKey"
1274
+ },
1275
+ "kid": {
1276
+ "type": "string"
1277
+ },
1278
+ "issuer": {
1279
+ "type": "string"
1280
+ },
1281
+ "x5c": {
1282
+ "type": "array",
1283
+ "items": {
1284
+ "type": "string"
1285
+ }
1286
+ },
1287
+ "certificate": {}
1288
+ },
1289
+ "required": [
1290
+ "certificate",
1291
+ "jwk",
1292
+ "jwkThumbprint",
1293
+ "key",
1294
+ "kmsKeyRef",
1295
+ "method",
1296
+ "x5c"
1297
+ ]
504
1298
  },
505
1299
  {
506
- "$ref": "#/components/schemas/ManagedIdentifierDidResult"
1300
+ "type": "object",
1301
+ "properties": {
1302
+ "jwk": {
1303
+ "$ref": "#/components/schemas/JWK"
1304
+ },
1305
+ "jwkThumbprint": {
1306
+ "type": "string"
1307
+ },
1308
+ "kmsKeyRef": {
1309
+ "type": "string"
1310
+ },
1311
+ "method": {
1312
+ "$ref": "#/components/schemas/ManagedIdentifierMethod"
1313
+ },
1314
+ "key": {
1315
+ "$ref": "#/components/schemas/IKey"
1316
+ },
1317
+ "kid": {
1318
+ "type": "string"
1319
+ },
1320
+ "issuer": {
1321
+ "type": "string"
1322
+ },
1323
+ "identifier": {
1324
+ "$ref": "#/components/schemas/IIdentifier"
1325
+ },
1326
+ "did": {
1327
+ "type": "string"
1328
+ },
1329
+ "keys": {
1330
+ "type": "array",
1331
+ "items": {
1332
+ "$ref": "#/components/schemas/IKey"
1333
+ }
1334
+ },
1335
+ "verificationMethodSection": {
1336
+ "$ref": "#/components/schemas/DIDDocumentSection"
1337
+ },
1338
+ "controllerKeyId": {
1339
+ "type": "string"
1340
+ }
1341
+ },
1342
+ "required": [
1343
+ "did",
1344
+ "identifier",
1345
+ "issuer",
1346
+ "jwk",
1347
+ "jwkThumbprint",
1348
+ "key",
1349
+ "keys",
1350
+ "kid",
1351
+ "kmsKeyRef",
1352
+ "method"
1353
+ ]
507
1354
  },
508
1355
  {
509
- "$ref": "#/components/schemas/ManagedIdentifierJwkResult"
1356
+ "type": "object",
1357
+ "properties": {
1358
+ "jwk": {
1359
+ "$ref": "#/components/schemas/JWK"
1360
+ },
1361
+ "jwkThumbprint": {
1362
+ "type": "string"
1363
+ },
1364
+ "kmsKeyRef": {
1365
+ "type": "string"
1366
+ },
1367
+ "method": {
1368
+ "$ref": "#/components/schemas/ManagedIdentifierMethod"
1369
+ },
1370
+ "key": {
1371
+ "$ref": "#/components/schemas/IKey"
1372
+ },
1373
+ "kid": {
1374
+ "type": "string"
1375
+ },
1376
+ "issuer": {
1377
+ "type": "string"
1378
+ }
1379
+ },
1380
+ "required": [
1381
+ "jwk",
1382
+ "jwkThumbprint",
1383
+ "key",
1384
+ "kmsKeyRef",
1385
+ "method"
1386
+ ]
510
1387
  },
511
1388
  {
512
- "$ref": "#/components/schemas/ManagedIdentifierKidResult"
1389
+ "type": "object",
1390
+ "properties": {
1391
+ "jwk": {
1392
+ "$ref": "#/components/schemas/JWK"
1393
+ },
1394
+ "jwkThumbprint": {
1395
+ "type": "string"
1396
+ },
1397
+ "kmsKeyRef": {
1398
+ "type": "string"
1399
+ },
1400
+ "method": {
1401
+ "$ref": "#/components/schemas/ManagedIdentifierMethod"
1402
+ },
1403
+ "key": {
1404
+ "$ref": "#/components/schemas/IKey"
1405
+ },
1406
+ "kid": {
1407
+ "type": "string"
1408
+ },
1409
+ "issuer": {
1410
+ "type": "string"
1411
+ }
1412
+ },
1413
+ "required": [
1414
+ "issuer",
1415
+ "jwk",
1416
+ "jwkThumbprint",
1417
+ "key",
1418
+ "kid",
1419
+ "kmsKeyRef",
1420
+ "method"
1421
+ ]
513
1422
  }
514
1423
  ]
515
1424
  },
516
- "ManagedIdentifierX5cResult": {
1425
+ "ManagedIdentifierMethod": {
1426
+ "type": "string",
1427
+ "enum": [
1428
+ "did",
1429
+ "jwk",
1430
+ "x5c",
1431
+ "kid"
1432
+ ]
1433
+ },
1434
+ "ManagedIdentifierDidOpts": {
517
1435
  "type": "object",
518
1436
  "properties": {
519
- "jwk": {
520
- "$ref": "#/components/schemas/JWK"
1437
+ "method": {
1438
+ "type": "string",
1439
+ "const": "did"
521
1440
  },
522
- "jwkThumbprint": {
523
- "type": "string"
1441
+ "identifier": {
1442
+ "$ref": "#/components/schemas/ManagedIdentifierType"
524
1443
  },
525
- "kmsKeyRef": {
526
- "type": "string"
1444
+ "keyType": {
1445
+ "$ref": "#/components/schemas/TKeyType"
527
1446
  },
528
- "method": {
529
- "type": "string",
530
- "const": "x5c"
1447
+ "offlineWhenNoDIDRegistered": {
1448
+ "type": "boolean"
531
1449
  },
532
- "key": {
533
- "$ref": "#/components/schemas/IKey"
1450
+ "noVerificationMethodFallback": {
1451
+ "type": "boolean"
534
1452
  },
535
- "x5c": {
536
- "type": "array",
537
- "items": {
538
- "type": "string"
539
- }
1453
+ "controllerKey": {
1454
+ "type": "boolean"
540
1455
  },
541
- "certificate": {}
1456
+ "vmRelationship": {
1457
+ "$ref": "#/components/schemas/DIDDocumentSection"
1458
+ },
1459
+ "kmsKeyRef": {
1460
+ "type": "string"
1461
+ },
1462
+ "issuer": {
1463
+ "type": "string"
1464
+ },
1465
+ "kid": {
1466
+ "type": "string"
1467
+ }
542
1468
  },
543
1469
  "required": [
544
- "certificate",
545
- "jwk",
546
- "jwkThumbprint",
547
- "key",
548
- "kmsKeyRef",
549
- "method",
550
- "x5c"
1470
+ "identifier"
551
1471
  ]
552
1472
  },
553
1473
  "ManagedIdentifierDidResult": {
@@ -569,6 +1489,12 @@
569
1489
  "key": {
570
1490
  "$ref": "#/components/schemas/IKey"
571
1491
  },
1492
+ "kid": {
1493
+ "type": "string"
1494
+ },
1495
+ "issuer": {
1496
+ "type": "string"
1497
+ },
572
1498
  "identifier": {
573
1499
  "$ref": "#/components/schemas/IIdentifier"
574
1500
  },
@@ -589,46 +1515,43 @@
589
1515
  }
590
1516
  },
591
1517
  "required": [
592
- "controllerKeyId",
593
1518
  "did",
594
1519
  "identifier",
1520
+ "issuer",
595
1521
  "jwk",
596
1522
  "jwkThumbprint",
597
1523
  "key",
598
1524
  "keys",
1525
+ "kid",
599
1526
  "kmsKeyRef",
600
1527
  "method"
601
1528
  ]
602
1529
  },
603
- "ManagedIdentifierJwkResult": {
1530
+ "ManagedIdentifierJwkOpts": {
604
1531
  "type": "object",
605
1532
  "properties": {
606
- "jwk": {
607
- "$ref": "#/components/schemas/JWK"
1533
+ "method": {
1534
+ "type": "string",
1535
+ "const": "jwk"
608
1536
  },
609
- "jwkThumbprint": {
610
- "type": "string"
1537
+ "identifier": {
1538
+ "$ref": "#/components/schemas/ManagedIdentifierType"
611
1539
  },
612
1540
  "kmsKeyRef": {
613
1541
  "type": "string"
614
1542
  },
615
- "method": {
616
- "type": "string",
617
- "const": "jwk"
1543
+ "issuer": {
1544
+ "type": "string"
618
1545
  },
619
- "key": {
620
- "$ref": "#/components/schemas/IKey"
1546
+ "kid": {
1547
+ "type": "string"
621
1548
  }
622
1549
  },
623
1550
  "required": [
624
- "jwk",
625
- "jwkThumbprint",
626
- "key",
627
- "kmsKeyRef",
628
- "method"
1551
+ "identifier"
629
1552
  ]
630
1553
  },
631
- "ManagedIdentifierKidResult": {
1554
+ "ManagedIdentifierJwkResult": {
632
1555
  "type": "object",
633
1556
  "properties": {
634
1557
  "jwk": {
@@ -642,10 +1565,16 @@
642
1565
  },
643
1566
  "method": {
644
1567
  "type": "string",
645
- "const": "kid"
1568
+ "const": "jwk"
646
1569
  },
647
1570
  "key": {
648
1571
  "$ref": "#/components/schemas/IKey"
1572
+ },
1573
+ "kid": {
1574
+ "type": "string"
1575
+ },
1576
+ "issuer": {
1577
+ "type": "string"
649
1578
  }
650
1579
  },
651
1580
  "required": [
@@ -656,32 +1585,23 @@
656
1585
  "method"
657
1586
  ]
658
1587
  },
659
- "ManagedIdentifierDidOpts": {
1588
+ "ManagedIdentifierKidOpts": {
660
1589
  "type": "object",
661
1590
  "properties": {
662
1591
  "method": {
663
1592
  "type": "string",
664
- "const": "did"
1593
+ "const": "kid"
665
1594
  },
666
1595
  "identifier": {
667
1596
  "$ref": "#/components/schemas/ManagedIdentifierType"
668
1597
  },
669
- "keyType": {
670
- "$ref": "#/components/schemas/TKeyType"
671
- },
672
- "offlineWhenNoDIDRegistered": {
673
- "type": "boolean"
674
- },
675
- "noVerificationMethodFallback": {
676
- "type": "boolean"
677
- },
678
- "controllerKey": {
679
- "type": "boolean"
1598
+ "kmsKeyRef": {
1599
+ "type": "string"
680
1600
  },
681
- "vmRelationship": {
682
- "$ref": "#/components/schemas/DIDDocumentSection"
1601
+ "issuer": {
1602
+ "type": "string"
683
1603
  },
684
- "kmsKeyRef": {
1604
+ "kid": {
685
1605
  "type": "string"
686
1606
  }
687
1607
  },
@@ -689,73 +1609,140 @@
689
1609
  "identifier"
690
1610
  ]
691
1611
  },
692
- "ManagedIdentifierJwkOpts": {
1612
+ "ManagedIdentifierKidResult": {
693
1613
  "type": "object",
694
1614
  "properties": {
1615
+ "jwk": {
1616
+ "$ref": "#/components/schemas/JWK"
1617
+ },
1618
+ "jwkThumbprint": {
1619
+ "type": "string"
1620
+ },
1621
+ "kmsKeyRef": {
1622
+ "type": "string"
1623
+ },
695
1624
  "method": {
696
1625
  "type": "string",
697
- "const": "jwk"
1626
+ "const": "kid"
698
1627
  },
699
- "identifier": {
700
- "$ref": "#/components/schemas/ManagedIdentifierType"
1628
+ "key": {
1629
+ "$ref": "#/components/schemas/IKey"
701
1630
  },
702
- "kmsKeyRef": {
1631
+ "kid": {
1632
+ "type": "string"
1633
+ },
1634
+ "issuer": {
703
1635
  "type": "string"
704
1636
  }
705
1637
  },
706
1638
  "required": [
707
- "identifier"
1639
+ "issuer",
1640
+ "jwk",
1641
+ "jwkThumbprint",
1642
+ "key",
1643
+ "kid",
1644
+ "kmsKeyRef",
1645
+ "method"
708
1646
  ]
709
1647
  },
710
- "ManagedIdentifierKidOpts": {
1648
+ "ManagedIdentifierX5cOpts": {
711
1649
  "type": "object",
712
1650
  "properties": {
713
1651
  "method": {
714
1652
  "type": "string",
715
- "const": "kid"
1653
+ "const": "x5c"
716
1654
  },
717
1655
  "identifier": {
718
1656
  "$ref": "#/components/schemas/ManagedIdentifierType"
719
1657
  },
720
1658
  "kmsKeyRef": {
721
1659
  "type": "string"
1660
+ },
1661
+ "issuer": {
1662
+ "type": "string"
1663
+ },
1664
+ "kid": {
1665
+ "type": "string"
722
1666
  }
723
1667
  },
724
1668
  "required": [
725
1669
  "identifier"
726
1670
  ]
727
1671
  },
728
- "ManagedIdentifierX5cOpts": {
1672
+ "ManagedIdentifierX5cResult": {
729
1673
  "type": "object",
730
1674
  "properties": {
1675
+ "jwk": {
1676
+ "$ref": "#/components/schemas/JWK"
1677
+ },
1678
+ "jwkThumbprint": {
1679
+ "type": "string"
1680
+ },
1681
+ "kmsKeyRef": {
1682
+ "type": "string"
1683
+ },
731
1684
  "method": {
732
1685
  "type": "string",
733
1686
  "const": "x5c"
734
1687
  },
735
- "identifier": {
736
- "$ref": "#/components/schemas/ManagedIdentifierType"
1688
+ "key": {
1689
+ "$ref": "#/components/schemas/IKey"
737
1690
  },
738
- "kmsKeyRef": {
1691
+ "kid": {
739
1692
  "type": "string"
740
- }
1693
+ },
1694
+ "issuer": {
1695
+ "type": "string"
1696
+ },
1697
+ "x5c": {
1698
+ "type": "array",
1699
+ "items": {
1700
+ "type": "string"
1701
+ }
1702
+ },
1703
+ "certificate": {}
741
1704
  },
742
1705
  "required": [
743
- "identifier"
1706
+ "certificate",
1707
+ "jwk",
1708
+ "jwkThumbprint",
1709
+ "key",
1710
+ "kmsKeyRef",
1711
+ "method",
1712
+ "x5c"
744
1713
  ]
745
1714
  }
746
1715
  },
747
1716
  "methods": {
748
1717
  "identifierExternalResolve": {
749
- "description": "",
1718
+ "description": "Main method for external identifiers. We always go through this method (also the others) as we want to integrate a plugin for anomaly detection. Having a single method helps",
750
1719
  "arguments": {
751
1720
  "$ref": "#/components/schemas/ExternalIdentifierOpts"
752
1721
  },
753
1722
  "returnType": {
754
- "type": "object"
1723
+ "$ref": "#/components/schemas/ExternalIdentifierResult"
755
1724
  }
756
1725
  },
757
- "identifierManagedGet": {
1726
+ "identifierExternalResolveByDid": {
1727
+ "description": "",
1728
+ "arguments": {
1729
+ "$ref": "#/components/schemas/ExternalIdentifierDidOpts"
1730
+ },
1731
+ "returnType": {
1732
+ "$ref": "#/components/schemas/ExternalIdentifierDidResult"
1733
+ }
1734
+ },
1735
+ "identifierExternalResolveByX5c": {
758
1736
  "description": "",
1737
+ "arguments": {
1738
+ "$ref": "#/components/schemas/ExternalIdentifierX5cOpts"
1739
+ },
1740
+ "returnType": {
1741
+ "$ref": "#/components/schemas/ExternalIdentifierX5cResult"
1742
+ }
1743
+ },
1744
+ "identifierManagedGet": {
1745
+ "description": "Main method for managed identifiers. We always go through this method (also the others) as we want to integrate a plugin for anomaly detection. Having a single method helps",
759
1746
  "arguments": {
760
1747
  "$ref": "#/components/schemas/ManagedIdentifierOpts"
761
1748
  },