@twin.org/auditable-item-graph-service 0.0.3-next.2 → 0.0.3-next.21

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 (38) hide show
  1. package/README.md +3 -1
  2. package/dist/es/auditableItemGraphRoutes.js +609 -44
  3. package/dist/es/auditableItemGraphRoutes.js.map +1 -1
  4. package/dist/es/auditableItemGraphService.js +714 -159
  5. package/dist/es/auditableItemGraphService.js.map +1 -1
  6. package/dist/es/entities/auditableItemGraphAlias.js +8 -0
  7. package/dist/es/entities/auditableItemGraphAlias.js.map +1 -1
  8. package/dist/es/entities/auditableItemGraphChangeset.js +8 -0
  9. package/dist/es/entities/auditableItemGraphChangeset.js.map +1 -1
  10. package/dist/es/entities/auditableItemGraphVertex.js +8 -0
  11. package/dist/es/entities/auditableItemGraphVertex.js.map +1 -1
  12. package/dist/es/models/IAuditableItemGraphServiceConstructorOptions.js.map +1 -1
  13. package/dist/types/auditableItemGraphRoutes.d.ts +42 -2
  14. package/dist/types/auditableItemGraphService.d.ts +81 -55
  15. package/dist/types/entities/auditableItemGraphAlias.d.ts +4 -0
  16. package/dist/types/entities/auditableItemGraphChangeset.d.ts +4 -0
  17. package/dist/types/entities/auditableItemGraphVertex.d.ts +4 -0
  18. package/dist/types/models/IAuditableItemGraphServiceConstructorOptions.d.ts +4 -0
  19. package/docs/changelog.md +370 -71
  20. package/docs/examples.md +241 -1
  21. package/docs/open-api/spec.json +1218 -220
  22. package/docs/reference/classes/AuditableItemGraphAlias.md +18 -10
  23. package/docs/reference/classes/AuditableItemGraphChangeset.md +16 -8
  24. package/docs/reference/classes/AuditableItemGraphEdge.md +10 -10
  25. package/docs/reference/classes/AuditableItemGraphPatch.md +6 -6
  26. package/docs/reference/classes/AuditableItemGraphResource.md +9 -9
  27. package/docs/reference/classes/AuditableItemGraphService.md +221 -59
  28. package/docs/reference/classes/AuditableItemGraphVertex.md +26 -18
  29. package/docs/reference/functions/auditableItemGraphChangesetGet.md +31 -0
  30. package/docs/reference/functions/auditableItemGraphChangesetList.md +31 -0
  31. package/docs/reference/functions/auditableItemGraphUpdate.md +1 -1
  32. package/docs/reference/functions/auditableItemGraphUpdatePartial.md +31 -0
  33. package/docs/reference/functions/auditableItemGraphVersionGet.md +31 -0
  34. package/docs/reference/functions/auditableItemGraphVersionList.md +31 -0
  35. package/docs/reference/index.md +5 -0
  36. package/docs/reference/interfaces/IAuditableItemGraphServiceConstructorOptions.md +18 -10
  37. package/locales/en.json +7 -2
  38. package/package.json +6 -6
@@ -44,6 +44,11 @@
44
44
  "examples": {
45
45
  "auditableItemGraphCreateRequestExample": {
46
46
  "value": {
47
+ "@context": [
48
+ "https://schema.twindev.org/aig/",
49
+ "https://schema.twindev.org/common/"
50
+ ],
51
+ "type": "AuditableItemGraphVertex",
47
52
  "annotationObject": {
48
53
  "@context": "https://schema.org",
49
54
  "@type": "Note",
@@ -51,6 +56,7 @@
51
56
  },
52
57
  "aliases": [
53
58
  {
59
+ "type": "AuditableItemGraphAlias",
54
60
  "id": "bar456",
55
61
  "annotationObject": {
56
62
  "@context": "https://schema.org",
@@ -59,6 +65,7 @@
59
65
  }
60
66
  },
61
67
  {
68
+ "type": "AuditableItemGraphAlias",
62
69
  "id": "foo321",
63
70
  "annotationObject": {
64
71
  "@context": "https://schema.org",
@@ -69,6 +76,7 @@
69
76
  ],
70
77
  "resources": [
71
78
  {
79
+ "type": "AuditableItemGraphResource",
72
80
  "id": "resource1",
73
81
  "resourceObject": {
74
82
  "@context": "https://schema.org",
@@ -77,6 +85,7 @@
77
85
  }
78
86
  },
79
87
  {
88
+ "type": "AuditableItemGraphResource",
80
89
  "id": "resource2",
81
90
  "resourceObject": {
82
91
  "@context": "https://schema.org",
@@ -87,6 +96,7 @@
87
96
  ],
88
97
  "edges": [
89
98
  {
99
+ "type": "AuditableItemGraphEdge",
90
100
  "targetId": "aig:1234567890",
91
101
  "edgeRelationships": [
92
102
  "frenemy"
@@ -98,6 +108,7 @@
98
108
  }
99
109
  },
100
110
  {
111
+ "type": "AuditableItemGraphEdge",
101
112
  "targetId": "aig:45678901234",
102
113
  "edgeRelationships": [
103
114
  "end"
@@ -123,7 +134,7 @@
123
134
  "schema": {
124
135
  "type": "string"
125
136
  },
126
- "description": "e.g. aig:1234567890"
137
+ "description": "e.g. aig%3A1234567890"
127
138
  }
128
139
  }
129
140
  },
@@ -208,11 +219,16 @@
208
219
  "in": "query",
209
220
  "required": false,
210
221
  "schema": {
211
- "type": "string",
212
- "enum": [
213
- "id",
214
- "alias",
215
- "both"
222
+ "anyOf": [
223
+ {
224
+ "const": "id"
225
+ },
226
+ {
227
+ "const": "alias"
228
+ },
229
+ {
230
+ "const": "both"
231
+ }
216
232
  ]
217
233
  }
218
234
  },
@@ -249,7 +265,6 @@
249
265
  "in": "query",
250
266
  "required": false,
251
267
  "schema": {
252
- "type": "string",
253
268
  "enum": [
254
269
  "dateCreated",
255
270
  "dateModified"
@@ -350,8 +365,7 @@
350
365
  }
351
366
  ]
352
367
  }
353
- ],
354
- "nextItem": "1"
368
+ ]
355
369
  }
356
370
  }
357
371
  }
@@ -395,8 +409,7 @@
395
409
  }
396
410
  ]
397
411
  }
398
- ],
399
- "nextItem": "1"
412
+ ]
400
413
  }
401
414
  }
402
415
  }
@@ -499,15 +512,6 @@
499
512
  "type": "string"
500
513
  }
501
514
  },
502
- {
503
- "name": "includeChangesets",
504
- "description": "Whether to include the changesets of the vertex, defaults to false.",
505
- "in": "query",
506
- "required": false,
507
- "schema": {
508
- "type": "string"
509
- }
510
- },
511
515
  {
512
516
  "name": "verifySignatureDepth",
513
517
  "description": "How many signatures to verify, none, current or all, defaults to \"none\".",
@@ -705,7 +709,7 @@
705
709
  }
706
710
  ],
707
711
  "requestBody": {
708
- "description": "Update an auditable item graph vertex.",
712
+ "description": "Update an auditable item graph vertex (PUT — full replacement of vertex state).",
709
713
  "required": true,
710
714
  "content": {
711
715
  "application/json": {
@@ -715,6 +719,11 @@
715
719
  "examples": {
716
720
  "auditableItemGraphUpdateRequestExample": {
717
721
  "value": {
722
+ "@context": [
723
+ "https://schema.twindev.org/aig/",
724
+ "https://schema.twindev.org/common/"
725
+ ],
726
+ "type": "AuditableItemGraphVertex",
718
727
  "annotationObject": {
719
728
  "@context": "https://schema.org",
720
729
  "@type": "Note",
@@ -722,6 +731,7 @@
722
731
  },
723
732
  "aliases": [
724
733
  {
734
+ "type": "AuditableItemGraphAlias",
725
735
  "id": "bar456",
726
736
  "annotationObject": {
727
737
  "@context": "https://schema.org",
@@ -730,6 +740,7 @@
730
740
  }
731
741
  },
732
742
  {
743
+ "type": "AuditableItemGraphAlias",
733
744
  "id": "foo321",
734
745
  "annotationObject": {
735
746
  "@context": "https://schema.org",
@@ -740,6 +751,7 @@
740
751
  ],
741
752
  "resources": [
742
753
  {
754
+ "type": "AuditableItemGraphResource",
743
755
  "id": "resource1",
744
756
  "resourceObject": {
745
757
  "@context": "https://schema.org",
@@ -748,6 +760,7 @@
748
760
  }
749
761
  },
750
762
  {
763
+ "type": "AuditableItemGraphResource",
751
764
  "id": "resource2",
752
765
  "resourceObject": {
753
766
  "@context": "https://schema.org",
@@ -758,6 +771,7 @@
758
771
  ],
759
772
  "edges": [
760
773
  {
774
+ "type": "AuditableItemGraphEdge",
761
775
  "id": "edge1",
762
776
  "targetId": "aig:1234567890",
763
777
  "edgeRelationships": [
@@ -770,6 +784,7 @@
770
784
  }
771
785
  },
772
786
  {
787
+ "type": "AuditableItemGraphEdge",
773
788
  "id": "edge2",
774
789
  "targetId": "aig:45678901234",
775
790
  "edgeRelationships": [
@@ -850,237 +865,1220 @@
850
865
  }
851
866
  }
852
867
  }
853
- }
854
- }
855
- },
856
- "components": {
857
- "schemas": {
858
- "AuditableItemGraphCreateRequest": {
859
- "type": "object",
860
- "properties": {
861
- "annotationObject": {
862
- "$ref": "https://schema.twindev.org/json-ld/JsonLdNodeObject"
863
- },
864
- "aliases": {
865
- "type": "array",
866
- "items": {
867
- "type": "object",
868
- "properties": {
869
- "id": {
870
- "type": "string"
871
- },
872
- "aliasFormat": {
873
- "type": "string"
874
- },
875
- "unique": {
876
- "type": "boolean"
877
- },
878
- "annotationObject": {
879
- "$ref": "https://schema.twindev.org/json-ld/JsonLdNodeObject"
880
- }
881
- },
882
- "required": [
883
- "id"
884
- ],
885
- "additionalProperties": false
868
+ },
869
+ "patch": {
870
+ "operationId": "auditableItemGraphUpdatePartial",
871
+ "summary": "Partially update a graph vertex",
872
+ "tags": [
873
+ "Auditable Item Graph"
874
+ ],
875
+ "parameters": [
876
+ {
877
+ "name": "id",
878
+ "description": "The id of the vertex to update.",
879
+ "in": "path",
880
+ "required": true,
881
+ "schema": {
882
+ "type": "string"
886
883
  },
887
- "description": "Alternative aliases that can be used to identify the vertex."
888
- },
889
- "resources": {
890
- "type": "array",
891
- "items": {
892
- "type": "object",
893
- "properties": {
894
- "id": {
895
- "type": "string"
896
- },
897
- "resourceObject": {
898
- "$ref": "https://schema.twindev.org/json-ld/JsonLdNodeObject"
899
- }
884
+ "style": "simple",
885
+ "example": "aig:1234567890"
886
+ }
887
+ ],
888
+ "security": [
889
+ {
890
+ "jwtBearerAuthScheme": []
891
+ }
892
+ ],
893
+ "requestBody": {
894
+ "description": "Partially update an auditable item graph vertex (PATCH — explicit list patches).",
895
+ "required": true,
896
+ "content": {
897
+ "application/json": {
898
+ "schema": {
899
+ "$ref": "#/components/schemas/AuditableItemGraphUpdatePartialRequest"
900
900
  },
901
- "additionalProperties": false
902
- },
903
- "description": "The resources attached to the vertex."
904
- },
905
- "edges": {
906
- "type": "array",
907
- "items": {
908
- "type": "object",
909
- "properties": {
910
- "targetId": {
911
- "type": "string"
912
- },
913
- "edgeRelationships": {
914
- "type": "array",
915
- "items": {
916
- "type": "string"
901
+ "examples": {
902
+ "auditableItemGraphUpdatePartialRequestExample": {
903
+ "value": {
904
+ "@context": [
905
+ "https://schema.twindev.org/aig/",
906
+ "https://schema.twindev.org/common/"
907
+ ],
908
+ "edgePatches": {
909
+ "add": [
910
+ {
911
+ "type": "AuditableItemGraphEdge",
912
+ "targetId": "aig:45678901234",
913
+ "edgeRelationships": [
914
+ "document"
915
+ ]
916
+ }
917
+ ]
918
+ }
917
919
  }
918
- },
919
- "annotationObject": {
920
- "$ref": "https://schema.twindev.org/json-ld/JsonLdNodeObject"
921
920
  }
922
- },
923
- "required": [
924
- "targetId",
925
- "edgeRelationships"
926
- ],
927
- "additionalProperties": false
928
- },
929
- "description": "The edges connected to the vertex."
921
+ }
922
+ }
930
923
  }
931
924
  },
932
- "additionalProperties": false,
933
- "description": "The data to be used in the vertex."
934
- },
935
- "AuditableItemGraphUpdateRequest": {
936
- "type": "object",
937
- "properties": {
938
- "annotationObject": {
939
- "$ref": "https://schema.twindev.org/json-ld/JsonLdNodeObject"
925
+ "responses": {
926
+ "204": {
927
+ "description": "The rest request ended in success with no data."
940
928
  },
941
- "aliases": {
942
- "type": "array",
943
- "items": {
944
- "type": "object",
945
- "properties": {
946
- "id": {
947
- "type": "string"
948
- },
949
- "aliasFormat": {
950
- "type": "string"
951
- },
952
- "unique": {
953
- "type": "boolean"
929
+ "400": {
930
+ "description": "The server cannot process the request, see the content for more details.",
931
+ "content": {
932
+ "application/json": {
933
+ "schema": {
934
+ "$ref": "#/components/schemas/Error"
954
935
  },
955
- "annotationObject": {
956
- "$ref": "https://schema.twindev.org/json-ld/JsonLdNodeObject"
936
+ "examples": {
937
+ "exampleResponse": {
938
+ "value": {
939
+ "name": "GeneralError",
940
+ "message": "errorMessage",
941
+ "properties": {
942
+ "foo": "bar"
943
+ }
944
+ }
945
+ }
957
946
  }
958
- },
959
- "required": [
960
- "id"
961
- ],
962
- "additionalProperties": false
963
- },
964
- "description": "Alternative aliases that can be used to identify the vertex."
947
+ }
948
+ }
965
949
  },
966
- "resources": {
967
- "type": "array",
968
- "items": {
969
- "type": "object",
970
- "properties": {
971
- "id": {
972
- "type": "string"
950
+ "401": {
951
+ "description": "You are not authorized to use the API or no credentials were supplied, see the content for more details.",
952
+ "content": {
953
+ "application/json": {
954
+ "schema": {
955
+ "$ref": "#/components/schemas/Error"
973
956
  },
974
- "resourceObject": {
975
- "$ref": "https://schema.twindev.org/json-ld/JsonLdNodeObject"
957
+ "examples": {
958
+ "exampleResponse": {
959
+ "value": {
960
+ "name": "UnauthorizedError",
961
+ "message": "errorMessage"
962
+ }
963
+ }
976
964
  }
977
- },
978
- "additionalProperties": false
979
- },
980
- "description": "The resources attached to the vertex."
965
+ }
966
+ }
981
967
  },
982
- "edges": {
983
- "type": "array",
984
- "items": {
985
- "type": "object",
986
- "properties": {
987
- "id": {
988
- "type": "string"
989
- },
990
- "targetId": {
991
- "type": "string"
968
+ "500": {
969
+ "description": "The server has encountered a situation it does not know how to handle, see the content for more details.",
970
+ "content": {
971
+ "application/json": {
972
+ "schema": {
973
+ "$ref": "#/components/schemas/Error"
992
974
  },
993
- "edgeRelationships": {
994
- "type": "array",
995
- "items": {
996
- "type": "string"
975
+ "examples": {
976
+ "exampleResponse": {
977
+ "value": {
978
+ "name": "InternalServerError",
979
+ "message": "errorMessage"
980
+ }
997
981
  }
998
- },
999
- "annotationObject": {
1000
- "$ref": "https://schema.twindev.org/json-ld/JsonLdNodeObject"
1001
982
  }
1002
- },
1003
- "required": [
1004
- "targetId",
1005
- "edgeRelationships"
1006
- ],
1007
- "additionalProperties": false
1008
- },
1009
- "description": "The edges connected to the vertex."
1010
- }
1011
- },
1012
- "additionalProperties": false,
1013
- "description": "The data to be used in the vertex."
1014
- },
1015
- "Error": {
1016
- "type": "object",
1017
- "properties": {
1018
- "name": {
1019
- "type": "string",
1020
- "description": "The name for the error."
1021
- },
1022
- "message": {
1023
- "type": "string",
1024
- "description": "The message for the error."
1025
- },
1026
- "source": {
1027
- "type": "string",
1028
- "description": "The source of the error."
1029
- },
1030
- "properties": {
1031
- "type": "object",
1032
- "additionalProperties": {},
1033
- "description": "Any additional information for the error."
1034
- },
1035
- "stack": {
1036
- "type": "string",
1037
- "description": "The stack trace for the error."
1038
- },
1039
- "cause": {
1040
- "$ref": "#/components/schemas/Error"
983
+ }
984
+ }
1041
985
  }
1042
- },
1043
- "required": [
1044
- "name",
1045
- "message"
986
+ }
987
+ }
988
+ },
989
+ "/auditable-item-graph/{id}/versions/{version}": {
990
+ "get": {
991
+ "operationId": "auditableItemGraphVersionGet",
992
+ "summary": "Get a graph vertex at a specific version",
993
+ "tags": [
994
+ "Auditable Item Graph"
1046
995
  ],
1047
- "additionalProperties": false,
1048
- "description": "Model to describe serialized error."
1049
- },
1050
- "SortDirection": {
1051
- "anyOf": [
996
+ "parameters": [
1052
997
  {
1053
- "type": "string",
1054
- "const": "asc",
1055
- "description": "Ascending."
998
+ "name": "id",
999
+ "description": "The id of the vertex.",
1000
+ "in": "path",
1001
+ "required": true,
1002
+ "schema": {
1003
+ "type": "string"
1004
+ },
1005
+ "style": "simple",
1006
+ "example": "aig:1234567890"
1056
1007
  },
1057
1008
  {
1058
- "type": "string",
1059
- "const": "desc",
1060
- "description": "Descending."
1009
+ "name": "version",
1010
+ "description": "The version number to get.",
1011
+ "in": "path",
1012
+ "required": true,
1013
+ "schema": {
1014
+ "type": "string"
1015
+ },
1016
+ "style": "simple",
1017
+ "example": "1"
1018
+ },
1019
+ {
1020
+ "name": "accept",
1021
+ "in": "header",
1022
+ "required": true,
1023
+ "schema": {
1024
+ "type": "string"
1025
+ },
1026
+ "style": "simple",
1027
+ "example": "application/json"
1061
1028
  }
1062
1029
  ],
1063
- "description": "The sort directions."
1064
- },
1065
- "VerifyDepth": {
1066
- "anyOf": [
1067
- {
1068
- "type": "string",
1069
- "const": "none",
1070
- "description": "Do not verify any signatures."
1071
- },
1030
+ "security": [
1072
1031
  {
1032
+ "jwtBearerAuthScheme": []
1033
+ }
1034
+ ],
1035
+ "responses": {
1036
+ "200": {
1037
+ "description": "Response to getting an auditable item graph vertex at a specific version.",
1038
+ "content": {
1039
+ "application/json": {
1040
+ "schema": {
1041
+ "$ref": "https://schema.twindev.org/aig/AuditableItemGraphVertex"
1042
+ },
1043
+ "examples": {
1044
+ "auditableItemGraphVersionGetResponseExample": {
1045
+ "value": {
1046
+ "@context": [
1047
+ "https://schema.twindev.org/aig/",
1048
+ "https://schema.twindev.org/common/",
1049
+ "https://schema.org"
1050
+ ],
1051
+ "type": "AuditableItemGraphVertex",
1052
+ "id": "aig:1234567890",
1053
+ "dateCreated": "2024-08-22T11:55:16.271Z",
1054
+ "version": 1
1055
+ }
1056
+ }
1057
+ }
1058
+ }
1059
+ }
1060
+ },
1061
+ "400": {
1062
+ "description": "The server cannot process the request, see the content for more details.",
1063
+ "content": {
1064
+ "application/json": {
1065
+ "schema": {
1066
+ "$ref": "#/components/schemas/Error"
1067
+ },
1068
+ "examples": {
1069
+ "exampleResponse": {
1070
+ "value": {
1071
+ "name": "GeneralError",
1072
+ "message": "errorMessage",
1073
+ "properties": {
1074
+ "foo": "bar"
1075
+ }
1076
+ }
1077
+ }
1078
+ }
1079
+ }
1080
+ }
1081
+ },
1082
+ "401": {
1083
+ "description": "You are not authorized to use the API or no credentials were supplied, see the content for more details.",
1084
+ "content": {
1085
+ "application/json": {
1086
+ "schema": {
1087
+ "$ref": "#/components/schemas/Error"
1088
+ },
1089
+ "examples": {
1090
+ "exampleResponse": {
1091
+ "value": {
1092
+ "name": "UnauthorizedError",
1093
+ "message": "errorMessage"
1094
+ }
1095
+ }
1096
+ }
1097
+ }
1098
+ }
1099
+ },
1100
+ "500": {
1101
+ "description": "The server has encountered a situation it does not know how to handle, see the content for more details.",
1102
+ "content": {
1103
+ "application/json": {
1104
+ "schema": {
1105
+ "$ref": "#/components/schemas/Error"
1106
+ },
1107
+ "examples": {
1108
+ "exampleResponse": {
1109
+ "value": {
1110
+ "name": "InternalServerError",
1111
+ "message": "errorMessage"
1112
+ }
1113
+ }
1114
+ }
1115
+ }
1116
+ }
1117
+ }
1118
+ }
1119
+ }
1120
+ },
1121
+ "/auditable-item-graph/{id}/versions": {
1122
+ "get": {
1123
+ "operationId": "auditableItemGraphVersionList",
1124
+ "summary": "Get all versions of a graph vertex",
1125
+ "tags": [
1126
+ "Auditable Item Graph"
1127
+ ],
1128
+ "parameters": [
1129
+ {
1130
+ "name": "id",
1131
+ "description": "The id of the vertex.",
1132
+ "in": "path",
1133
+ "required": true,
1134
+ "schema": {
1135
+ "type": "string"
1136
+ },
1137
+ "style": "simple",
1138
+ "example": "aig:1234567890"
1139
+ },
1140
+ {
1141
+ "name": "after",
1142
+ "description": "Only return versions created after this ISO 8601 timestamp (exclusive).",
1143
+ "in": "query",
1144
+ "required": false,
1145
+ "schema": {
1146
+ "type": "string"
1147
+ }
1148
+ },
1149
+ {
1150
+ "name": "before",
1151
+ "description": "Only return versions created before this ISO 8601 timestamp (exclusive).",
1152
+ "in": "query",
1153
+ "required": false,
1154
+ "schema": {
1155
+ "type": "string"
1156
+ }
1157
+ },
1158
+ {
1159
+ "name": "accept",
1160
+ "in": "header",
1161
+ "required": true,
1162
+ "schema": {
1163
+ "type": "string"
1164
+ },
1165
+ "style": "simple",
1166
+ "example": "application/json"
1167
+ }
1168
+ ],
1169
+ "security": [
1170
+ {
1171
+ "jwtBearerAuthScheme": []
1172
+ }
1173
+ ],
1174
+ "responses": {
1175
+ "200": {
1176
+ "description": "Response to getting all versions of an auditable item graph vertex.",
1177
+ "content": {
1178
+ "application/json": {
1179
+ "schema": {
1180
+ "$ref": "https://schema.twindev.org/aig/AuditableItemGraphVertexVersionList"
1181
+ },
1182
+ "examples": {
1183
+ "auditableItemGraphVersionListResponseExample": {
1184
+ "value": {
1185
+ "@context": [
1186
+ "https://schema.org",
1187
+ "https://schema.twindev.org/aig/",
1188
+ "https://schema.twindev.org/common/"
1189
+ ],
1190
+ "type": [
1191
+ "ItemList",
1192
+ "AuditableItemGraphVertexVersionList"
1193
+ ],
1194
+ "itemListElement": [
1195
+ {
1196
+ "version": 0,
1197
+ "dateCreated": "2024-08-22T11:55:16.271Z"
1198
+ },
1199
+ {
1200
+ "version": 1,
1201
+ "dateCreated": "2024-08-22T11:56:00.000Z"
1202
+ },
1203
+ {
1204
+ "version": 2,
1205
+ "dateCreated": "2024-08-22T11:57:00.000Z"
1206
+ }
1207
+ ]
1208
+ }
1209
+ }
1210
+ }
1211
+ }
1212
+ }
1213
+ },
1214
+ "400": {
1215
+ "description": "The server cannot process the request, see the content for more details.",
1216
+ "content": {
1217
+ "application/json": {
1218
+ "schema": {
1219
+ "$ref": "#/components/schemas/Error"
1220
+ },
1221
+ "examples": {
1222
+ "exampleResponse": {
1223
+ "value": {
1224
+ "name": "GeneralError",
1225
+ "message": "errorMessage",
1226
+ "properties": {
1227
+ "foo": "bar"
1228
+ }
1229
+ }
1230
+ }
1231
+ }
1232
+ }
1233
+ }
1234
+ },
1235
+ "401": {
1236
+ "description": "You are not authorized to use the API or no credentials were supplied, see the content for more details.",
1237
+ "content": {
1238
+ "application/json": {
1239
+ "schema": {
1240
+ "$ref": "#/components/schemas/Error"
1241
+ },
1242
+ "examples": {
1243
+ "exampleResponse": {
1244
+ "value": {
1245
+ "name": "UnauthorizedError",
1246
+ "message": "errorMessage"
1247
+ }
1248
+ }
1249
+ }
1250
+ }
1251
+ }
1252
+ },
1253
+ "500": {
1254
+ "description": "The server has encountered a situation it does not know how to handle, see the content for more details.",
1255
+ "content": {
1256
+ "application/json": {
1257
+ "schema": {
1258
+ "$ref": "#/components/schemas/Error"
1259
+ },
1260
+ "examples": {
1261
+ "exampleResponse": {
1262
+ "value": {
1263
+ "name": "InternalServerError",
1264
+ "message": "errorMessage"
1265
+ }
1266
+ }
1267
+ }
1268
+ }
1269
+ }
1270
+ }
1271
+ }
1272
+ }
1273
+ },
1274
+ "/auditable-item-graph/{id}/changesets/{changesetId}": {
1275
+ "get": {
1276
+ "operationId": "auditableItemGraphChangesetGet",
1277
+ "summary": "Get a graph vertex changeset",
1278
+ "tags": [
1279
+ "Auditable Item Graph"
1280
+ ],
1281
+ "parameters": [
1282
+ {
1283
+ "name": "id",
1284
+ "description": "The id of the vertex to get the changeset from.",
1285
+ "in": "path",
1286
+ "required": true,
1287
+ "schema": {
1288
+ "type": "string"
1289
+ },
1290
+ "style": "simple",
1291
+ "example": "aig:1234567890"
1292
+ },
1293
+ {
1294
+ "name": "changesetId",
1295
+ "description": "The id of the changeset to get.",
1296
+ "in": "path",
1297
+ "required": true,
1298
+ "schema": {
1299
+ "type": "string"
1300
+ },
1301
+ "style": "simple",
1302
+ "example": "changeset:1234567890"
1303
+ },
1304
+ {
1305
+ "name": "verifySignatureDepth",
1306
+ "description": "How many signatures to verify, none, current or all, defaults to \"none\".",
1307
+ "in": "query",
1308
+ "required": false,
1309
+ "schema": {
1310
+ "$ref": "#/components/schemas/VerifyDepth"
1311
+ }
1312
+ },
1313
+ {
1314
+ "name": "accept",
1315
+ "in": "header",
1316
+ "required": true,
1317
+ "schema": {
1318
+ "type": "string"
1319
+ },
1320
+ "style": "simple",
1321
+ "example": "application/json"
1322
+ }
1323
+ ],
1324
+ "security": [
1325
+ {
1326
+ "jwtBearerAuthScheme": []
1327
+ }
1328
+ ],
1329
+ "responses": {
1330
+ "200": {
1331
+ "description": "Response to getting an auditable item graph vertex changeset.",
1332
+ "content": {
1333
+ "application/json": {
1334
+ "schema": {
1335
+ "$ref": "https://schema.twindev.org/aig/AuditableItemGraphChangeset"
1336
+ },
1337
+ "examples": {
1338
+ "auditableItemGraphChangesetGetResponseExample": {
1339
+ "value": {
1340
+ "@context": [
1341
+ "https://schema.twindev.org/aig/",
1342
+ "https://schema.twindev.org/common/"
1343
+ ],
1344
+ "type": "AuditableItemGraphChangeset",
1345
+ "id": "aig:1234567890",
1346
+ "dateCreated": "2024-08-22T11:55:16.271Z",
1347
+ "patches": [
1348
+ {
1349
+ "type": "AuditableItemGraphPatchOperation",
1350
+ "patchOperation": "add",
1351
+ "patchPath": "/annotationObject",
1352
+ "patchValue": {
1353
+ "@context": "https://www.w3.org/ns/activitystreams",
1354
+ "type": "Create",
1355
+ "actor": {
1356
+ "type": "Person",
1357
+ "id": "acct:person@example.org",
1358
+ "name": "Person"
1359
+ },
1360
+ "object": {
1361
+ "type": "Note",
1362
+ "content": "This is a simple note"
1363
+ },
1364
+ "published": "2015-01-25T12:34:56Z"
1365
+ }
1366
+ },
1367
+ {
1368
+ "type": "AuditableItemGraphPatchOperation",
1369
+ "patchOperation": "add",
1370
+ "patchPath": "/aliases",
1371
+ "patchValue": [
1372
+ {
1373
+ "id": "foo123",
1374
+ "dateCreated": "2015-01-25T12:34:56Z"
1375
+ },
1376
+ {
1377
+ "id": "bar456",
1378
+ "dateCreated": "2015-01-25T12:34:56Z"
1379
+ }
1380
+ ]
1381
+ }
1382
+ ],
1383
+ "verification": {
1384
+ "@context": "https://schema.twindev.org/immutable-proof/",
1385
+ "type": "ImmutableProofVerification",
1386
+ "verified": true
1387
+ }
1388
+ }
1389
+ }
1390
+ }
1391
+ },
1392
+ "application/ld+json": {
1393
+ "schema": {
1394
+ "$ref": "https://schema.twindev.org/aig/AuditableItemGraphChangeset"
1395
+ },
1396
+ "examples": {
1397
+ "auditableItemGraphChangesetJsonLdGetResponseExample": {
1398
+ "value": {
1399
+ "@context": [
1400
+ "https://schema.twindev.org/aig/",
1401
+ "https://schema.twindev.org/common/",
1402
+ "https://schema.org"
1403
+ ],
1404
+ "type": "AuditableItemGraphChangeset",
1405
+ "id": "aig:1234567890",
1406
+ "dateCreated": "2024-08-22T11:55:16.271Z",
1407
+ "patches": [
1408
+ {
1409
+ "type": "AuditableItemGraphPatchOperation",
1410
+ "patchOperation": "add",
1411
+ "patchPath": "/annotationObject",
1412
+ "patchValue": {
1413
+ "@context": "https://www.w3.org/ns/activitystreams",
1414
+ "type": "Create",
1415
+ "actor": {
1416
+ "type": "Person",
1417
+ "id": "acct:person@example.org",
1418
+ "name": "Person"
1419
+ },
1420
+ "object": {
1421
+ "type": "Note",
1422
+ "content": "This is a simple note"
1423
+ },
1424
+ "published": "2015-01-25T12:34:56Z"
1425
+ }
1426
+ },
1427
+ {
1428
+ "type": "AuditableItemGraphPatchOperation",
1429
+ "patchOperation": "add",
1430
+ "patchPath": "/aliases",
1431
+ "patchValue": [
1432
+ {
1433
+ "id": "foo123",
1434
+ "dateCreated": "2015-01-25T12:34:56Z"
1435
+ },
1436
+ {
1437
+ "id": "bar456",
1438
+ "dateCreated": "2015-01-25T12:34:56Z"
1439
+ }
1440
+ ]
1441
+ }
1442
+ ],
1443
+ "verification": {
1444
+ "@context": "https://schema.twindev.org/immutable-proof/",
1445
+ "type": "ImmutableProofVerification",
1446
+ "verified": true
1447
+ }
1448
+ }
1449
+ }
1450
+ }
1451
+ }
1452
+ },
1453
+ "headers": {
1454
+ "content-type": {
1455
+ "schema": {
1456
+ "type": "string"
1457
+ },
1458
+ "description": "e.g. application/ld+json"
1459
+ }
1460
+ }
1461
+ },
1462
+ "400": {
1463
+ "description": "The server cannot process the request, see the content for more details.",
1464
+ "content": {
1465
+ "application/json": {
1466
+ "schema": {
1467
+ "$ref": "#/components/schemas/Error"
1468
+ },
1469
+ "examples": {
1470
+ "exampleResponse": {
1471
+ "value": {
1472
+ "name": "GeneralError",
1473
+ "message": "errorMessage",
1474
+ "properties": {
1475
+ "foo": "bar"
1476
+ }
1477
+ }
1478
+ }
1479
+ }
1480
+ }
1481
+ }
1482
+ },
1483
+ "401": {
1484
+ "description": "You are not authorized to use the API or no credentials were supplied, see the content for more details.",
1485
+ "content": {
1486
+ "application/json": {
1487
+ "schema": {
1488
+ "$ref": "#/components/schemas/Error"
1489
+ },
1490
+ "examples": {
1491
+ "exampleResponse": {
1492
+ "value": {
1493
+ "name": "UnauthorizedError",
1494
+ "message": "errorMessage"
1495
+ }
1496
+ }
1497
+ }
1498
+ }
1499
+ }
1500
+ },
1501
+ "500": {
1502
+ "description": "The server has encountered a situation it does not know how to handle, see the content for more details.",
1503
+ "content": {
1504
+ "application/json": {
1505
+ "schema": {
1506
+ "$ref": "#/components/schemas/Error"
1507
+ },
1508
+ "examples": {
1509
+ "exampleResponse": {
1510
+ "value": {
1511
+ "name": "InternalServerError",
1512
+ "message": "errorMessage"
1513
+ }
1514
+ }
1515
+ }
1516
+ }
1517
+ }
1518
+ }
1519
+ }
1520
+ }
1521
+ },
1522
+ "/auditable-item-graph/{id}/changesets": {
1523
+ "get": {
1524
+ "operationId": "auditableItemGraphChangesetList",
1525
+ "summary": "Get a list of graph vertex changesets",
1526
+ "tags": [
1527
+ "Auditable Item Graph"
1528
+ ],
1529
+ "parameters": [
1530
+ {
1531
+ "name": "id",
1532
+ "description": "The id of the changeset to get.",
1533
+ "in": "path",
1534
+ "required": true,
1535
+ "schema": {
1536
+ "type": "string"
1537
+ },
1538
+ "style": "simple",
1539
+ "example": "aig:1234567890"
1540
+ },
1541
+ {
1542
+ "name": "cursor",
1543
+ "description": "The optional cursor to get next chunk.",
1544
+ "in": "query",
1545
+ "required": false,
1546
+ "schema": {
1547
+ "type": "string"
1548
+ }
1549
+ },
1550
+ {
1551
+ "name": "limit",
1552
+ "description": "Limit the number of entities to return.",
1553
+ "in": "query",
1554
+ "required": false,
1555
+ "schema": {
1556
+ "type": "string"
1557
+ }
1558
+ },
1559
+ {
1560
+ "name": "verifySignatureDepth",
1561
+ "description": "How many signatures to verify, none, current or all, defaults to \"none\".",
1562
+ "in": "query",
1563
+ "required": false,
1564
+ "schema": {
1565
+ "$ref": "#/components/schemas/VerifyDepth"
1566
+ }
1567
+ },
1568
+ {
1569
+ "name": "accept",
1570
+ "in": "header",
1571
+ "required": true,
1572
+ "schema": {
1573
+ "type": "string"
1574
+ },
1575
+ "style": "simple",
1576
+ "example": "application/json"
1577
+ }
1578
+ ],
1579
+ "security": [
1580
+ {
1581
+ "jwtBearerAuthScheme": []
1582
+ }
1583
+ ],
1584
+ "responses": {
1585
+ "200": {
1586
+ "description": "Response to getting an auditable item graph vertex changeset.",
1587
+ "content": {
1588
+ "application/json": {
1589
+ "schema": {
1590
+ "$ref": "https://schema.twindev.org/aig/AuditableItemGraphChangesetList"
1591
+ },
1592
+ "examples": {
1593
+ "auditableItemGraphChangesetListResponseExample": {
1594
+ "value": {
1595
+ "@context": [
1596
+ "https://schema.org",
1597
+ "https://schema.twindev.org/aig/",
1598
+ "https://schema.twindev.org/common/"
1599
+ ],
1600
+ "type": [
1601
+ "ItemList",
1602
+ "AuditableItemGraphChangesetList"
1603
+ ],
1604
+ "itemListElement": [
1605
+ {
1606
+ "type": "AuditableItemGraphChangeset",
1607
+ "id": "aig:1234567890",
1608
+ "dateCreated": "2024-08-22T11:55:16.271Z",
1609
+ "patches": [
1610
+ {
1611
+ "type": "AuditableItemGraphPatchOperation",
1612
+ "patchOperation": "add",
1613
+ "patchPath": "/annotationObject",
1614
+ "patchValue": {
1615
+ "@context": "https://www.w3.org/ns/activitystreams",
1616
+ "type": "Create",
1617
+ "actor": {
1618
+ "type": "Person",
1619
+ "id": "acct:person@example.org",
1620
+ "name": "Person"
1621
+ },
1622
+ "object": {
1623
+ "type": "Note",
1624
+ "content": "This is a simple note"
1625
+ },
1626
+ "published": "2015-01-25T12:34:56Z"
1627
+ }
1628
+ },
1629
+ {
1630
+ "type": "AuditableItemGraphPatchOperation",
1631
+ "patchOperation": "add",
1632
+ "patchPath": "/aliases",
1633
+ "patchValue": [
1634
+ {
1635
+ "id": "foo123",
1636
+ "dateCreated": "2015-01-25T12:34:56Z"
1637
+ },
1638
+ {
1639
+ "id": "bar456",
1640
+ "dateCreated": "2015-01-25T12:34:56Z"
1641
+ }
1642
+ ]
1643
+ }
1644
+ ],
1645
+ "verification": {
1646
+ "@context": "https://schema.twindev.org/immutable-proof/",
1647
+ "type": "ImmutableProofVerification",
1648
+ "verified": true
1649
+ }
1650
+ }
1651
+ ]
1652
+ }
1653
+ }
1654
+ }
1655
+ },
1656
+ "application/ld+json": {
1657
+ "schema": {
1658
+ "$ref": "https://schema.twindev.org/aig/AuditableItemGraphChangeset"
1659
+ },
1660
+ "examples": {
1661
+ "auditableItemGraphChangesetJsonLdGetResponseExample": {
1662
+ "value": {
1663
+ "@context": [
1664
+ "https://schema.org",
1665
+ "https://schema.twindev.org/aig/",
1666
+ "https://schema.twindev.org/common/",
1667
+ "https://schema.org"
1668
+ ],
1669
+ "type": [
1670
+ "ItemList",
1671
+ "AuditableItemGraphChangesetList"
1672
+ ],
1673
+ "itemListElement": [
1674
+ {
1675
+ "type": "AuditableItemGraphChangeset",
1676
+ "id": "aig:1234567890",
1677
+ "dateCreated": "2024-08-22T11:55:16.271Z",
1678
+ "patches": [
1679
+ {
1680
+ "type": "AuditableItemGraphPatchOperation",
1681
+ "patchOperation": "add",
1682
+ "patchPath": "/annotationObject",
1683
+ "patchValue": {
1684
+ "@context": "https://www.w3.org/ns/activitystreams",
1685
+ "type": "Create",
1686
+ "actor": {
1687
+ "type": "Person",
1688
+ "id": "acct:person@example.org",
1689
+ "name": "Person"
1690
+ },
1691
+ "object": {
1692
+ "type": "Note",
1693
+ "content": "This is a simple note"
1694
+ },
1695
+ "published": "2015-01-25T12:34:56Z"
1696
+ }
1697
+ },
1698
+ {
1699
+ "type": "AuditableItemGraphPatchOperation",
1700
+ "patchOperation": "add",
1701
+ "patchPath": "/aliases",
1702
+ "patchValue": [
1703
+ {
1704
+ "id": "foo123",
1705
+ "dateCreated": "2015-01-25T12:34:56Z"
1706
+ },
1707
+ {
1708
+ "id": "bar456",
1709
+ "dateCreated": "2015-01-25T12:34:56Z"
1710
+ }
1711
+ ]
1712
+ }
1713
+ ],
1714
+ "verification": {
1715
+ "@context": "https://schema.twindev.org/immutable-proof/",
1716
+ "type": "ImmutableProofVerification",
1717
+ "verified": true
1718
+ }
1719
+ }
1720
+ ]
1721
+ }
1722
+ }
1723
+ }
1724
+ }
1725
+ },
1726
+ "headers": {
1727
+ "content-type": {
1728
+ "schema": {
1729
+ "type": "string"
1730
+ },
1731
+ "description": "e.g. application/ld+json"
1732
+ }
1733
+ }
1734
+ },
1735
+ "400": {
1736
+ "description": "The server cannot process the request, see the content for more details.",
1737
+ "content": {
1738
+ "application/json": {
1739
+ "schema": {
1740
+ "$ref": "#/components/schemas/Error"
1741
+ },
1742
+ "examples": {
1743
+ "exampleResponse": {
1744
+ "value": {
1745
+ "name": "GeneralError",
1746
+ "message": "errorMessage",
1747
+ "properties": {
1748
+ "foo": "bar"
1749
+ }
1750
+ }
1751
+ }
1752
+ }
1753
+ }
1754
+ }
1755
+ },
1756
+ "401": {
1757
+ "description": "You are not authorized to use the API or no credentials were supplied, see the content for more details.",
1758
+ "content": {
1759
+ "application/json": {
1760
+ "schema": {
1761
+ "$ref": "#/components/schemas/Error"
1762
+ },
1763
+ "examples": {
1764
+ "exampleResponse": {
1765
+ "value": {
1766
+ "name": "UnauthorizedError",
1767
+ "message": "errorMessage"
1768
+ }
1769
+ }
1770
+ }
1771
+ }
1772
+ }
1773
+ },
1774
+ "500": {
1775
+ "description": "The server has encountered a situation it does not know how to handle, see the content for more details.",
1776
+ "content": {
1777
+ "application/json": {
1778
+ "schema": {
1779
+ "$ref": "#/components/schemas/Error"
1780
+ },
1781
+ "examples": {
1782
+ "exampleResponse": {
1783
+ "value": {
1784
+ "name": "InternalServerError",
1785
+ "message": "errorMessage"
1786
+ }
1787
+ }
1788
+ }
1789
+ }
1790
+ }
1791
+ }
1792
+ }
1793
+ }
1794
+ }
1795
+ },
1796
+ "components": {
1797
+ "schemas": {
1798
+ "AuditableItemGraphCreateRequest": {
1799
+ "description": "The data to be used in the vertex.",
1800
+ "type": "object",
1801
+ "properties": {
1802
+ "dateCreated": {
1803
+ "type": "string",
1804
+ "description": "The date/time of when the element was created."
1805
+ },
1806
+ "dateModified": {
1807
+ "type": "string",
1808
+ "description": "The date/time of when the element was modified."
1809
+ },
1810
+ "dateDeleted": {
1811
+ "type": "string",
1812
+ "description": "The date/time of when the element was deleted, as we never actually remove items."
1813
+ },
1814
+ "@context": {
1815
+ "type": "array",
1816
+ "prefixItems": [
1817
+ {
1818
+ "const": "https://schema.twindev.org/aig/"
1819
+ },
1820
+ {
1821
+ "const": "https://schema.twindev.org/common/"
1822
+ }
1823
+ ],
1824
+ "items": {
1825
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
1826
+ },
1827
+ "minItems": 2,
1828
+ "description": "JSON-LD Context."
1829
+ },
1830
+ "type": {
1831
+ "const": "AuditableItemGraphVertex",
1832
+ "description": "JSON-LD Type."
1833
+ },
1834
+ "organizationIdentity": {
1835
+ "type": "string",
1836
+ "description": "The identity of the organization which controls the vertex."
1837
+ },
1838
+ "annotationObject": {
1839
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdNodeObject"
1840
+ },
1841
+ "aliases": {
1842
+ "type": "array",
1843
+ "items": {
1844
+ "$ref": "https://schema.twindev.org/aig/AuditableItemGraphAlias"
1845
+ },
1846
+ "description": "Alternative aliases that can be used to identify the vertex."
1847
+ },
1848
+ "resources": {
1849
+ "type": "array",
1850
+ "items": {
1851
+ "$ref": "https://schema.twindev.org/aig/AuditableItemGraphResource"
1852
+ },
1853
+ "description": "The resources attached to the vertex."
1854
+ },
1855
+ "edges": {
1856
+ "type": "array",
1857
+ "items": {
1858
+ "$ref": "https://schema.twindev.org/aig/AuditableItemGraphEdge"
1859
+ },
1860
+ "description": "Edges connected to the vertex."
1861
+ },
1862
+ "verified": {
1863
+ "type": "boolean",
1864
+ "description": "Is the vertex verified, will only be populated when verification is requested."
1865
+ },
1866
+ "version": {
1867
+ "type": "number",
1868
+ "description": "The version of the vertex, populated only when getting a specific version.\nMaps to https://schema.org/version."
1869
+ }
1870
+ },
1871
+ "required": [
1872
+ "@context",
1873
+ "type"
1874
+ ]
1875
+ },
1876
+ "AuditableItemGraphUpdatePartialRequest": {
1877
+ "description": "Partial vertex data; only defined properties are applied.\nSub-lists use `{ add, remove }` patch objects.",
1878
+ "type": "object",
1879
+ "properties": {
1880
+ "dateCreated": {
1881
+ "type": "string",
1882
+ "description": "The date/time of when the element was created."
1883
+ },
1884
+ "dateModified": {
1885
+ "type": "string",
1886
+ "description": "The date/time of when the element was modified."
1887
+ },
1888
+ "dateDeleted": {
1889
+ "type": "string",
1890
+ "description": "The date/time of when the element was deleted, as we never actually remove items."
1891
+ },
1892
+ "@context": {
1893
+ "type": "array",
1894
+ "prefixItems": [
1895
+ {
1896
+ "const": "https://schema.twindev.org/aig/"
1897
+ },
1898
+ {
1899
+ "const": "https://schema.twindev.org/common/"
1900
+ }
1901
+ ],
1902
+ "items": {
1903
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
1904
+ },
1905
+ "minItems": 2,
1906
+ "description": "JSON-LD Context."
1907
+ },
1908
+ "organizationIdentity": {
1909
+ "type": "string",
1910
+ "description": "The identity of the organization which controls the vertex."
1911
+ },
1912
+ "annotationObject": {
1913
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdNodeObject"
1914
+ },
1915
+ "verified": {
1916
+ "type": "boolean",
1917
+ "description": "Is the vertex verified, will only be populated when verification is requested."
1918
+ },
1919
+ "version": {
1920
+ "type": "number",
1921
+ "description": "The version of the vertex, populated only when getting a specific version.\nMaps to https://schema.org/version."
1922
+ },
1923
+ "type": {
1924
+ "const": "AuditableItemGraphVertex",
1925
+ "description": "JSON-LD Type."
1926
+ },
1927
+ "aliasPatches": {
1928
+ "$ref": "https://schema.twindev.org/aig/AuditableItemGraphListPatch"
1929
+ },
1930
+ "resourcePatches": {
1931
+ "$ref": "https://schema.twindev.org/aig/AuditableItemGraphListPatch"
1932
+ },
1933
+ "edgePatches": {
1934
+ "$ref": "https://schema.twindev.org/aig/AuditableItemGraphListPatch"
1935
+ }
1936
+ },
1937
+ "required": [
1938
+ "@context"
1939
+ ]
1940
+ },
1941
+ "AuditableItemGraphUpdateRequest": {
1942
+ "description": "The full vertex payload. Replaces annotation and active sub-lists; omitted collections are cleared.",
1943
+ "type": "object",
1944
+ "properties": {
1945
+ "dateCreated": {
1946
+ "type": "string",
1947
+ "description": "The date/time of when the element was created."
1948
+ },
1949
+ "dateModified": {
1950
+ "type": "string",
1951
+ "description": "The date/time of when the element was modified."
1952
+ },
1953
+ "dateDeleted": {
1954
+ "type": "string",
1955
+ "description": "The date/time of when the element was deleted, as we never actually remove items."
1956
+ },
1957
+ "@context": {
1958
+ "type": "array",
1959
+ "prefixItems": [
1960
+ {
1961
+ "const": "https://schema.twindev.org/aig/"
1962
+ },
1963
+ {
1964
+ "const": "https://schema.twindev.org/common/"
1965
+ }
1966
+ ],
1967
+ "items": {
1968
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdContextDefinitionElement"
1969
+ },
1970
+ "minItems": 2,
1971
+ "description": "JSON-LD Context."
1972
+ },
1973
+ "type": {
1974
+ "const": "AuditableItemGraphVertex",
1975
+ "description": "JSON-LD Type."
1976
+ },
1977
+ "organizationIdentity": {
1978
+ "type": "string",
1979
+ "description": "The identity of the organization which controls the vertex."
1980
+ },
1981
+ "annotationObject": {
1982
+ "$ref": "https://schema.twindev.org/json-ld/JsonLdNodeObject"
1983
+ },
1984
+ "aliases": {
1985
+ "type": "array",
1986
+ "items": {
1987
+ "$ref": "https://schema.twindev.org/aig/AuditableItemGraphAlias"
1988
+ },
1989
+ "description": "Alternative aliases that can be used to identify the vertex."
1990
+ },
1991
+ "resources": {
1992
+ "type": "array",
1993
+ "items": {
1994
+ "$ref": "https://schema.twindev.org/aig/AuditableItemGraphResource"
1995
+ },
1996
+ "description": "The resources attached to the vertex."
1997
+ },
1998
+ "edges": {
1999
+ "type": "array",
2000
+ "items": {
2001
+ "$ref": "https://schema.twindev.org/aig/AuditableItemGraphEdge"
2002
+ },
2003
+ "description": "Edges connected to the vertex."
2004
+ },
2005
+ "verified": {
2006
+ "type": "boolean",
2007
+ "description": "Is the vertex verified, will only be populated when verification is requested."
2008
+ },
2009
+ "version": {
2010
+ "type": "number",
2011
+ "description": "The version of the vertex, populated only when getting a specific version.\nMaps to https://schema.org/version."
2012
+ }
2013
+ },
2014
+ "required": [
2015
+ "@context",
2016
+ "type"
2017
+ ]
2018
+ },
2019
+ "Error": {
2020
+ "description": "Model to describe serialized error.",
2021
+ "type": "object",
2022
+ "properties": {
2023
+ "name": {
2024
+ "type": "string",
2025
+ "description": "The name for the error."
2026
+ },
2027
+ "message": {
2028
+ "type": "string",
2029
+ "description": "The message for the error as an i18n key."
2030
+ },
2031
+ "source": {
2032
+ "type": "string",
2033
+ "description": "The source of the error."
2034
+ },
2035
+ "properties": {
2036
+ "type": "object",
2037
+ "additionalProperties": {},
2038
+ "description": "Any additional information for the error."
2039
+ },
2040
+ "stack": {
1073
2041
  "type": "string",
2042
+ "description": "The stack trace for the error."
2043
+ },
2044
+ "cause": {
2045
+ "$ref": "#/components/schemas/Error"
2046
+ }
2047
+ },
2048
+ "required": [
2049
+ "name",
2050
+ "message"
2051
+ ]
2052
+ },
2053
+ "SortDirection": {
2054
+ "description": "The sort directions.",
2055
+ "anyOf": [
2056
+ {
2057
+ "const": "asc",
2058
+ "description": "Ascending."
2059
+ },
2060
+ {
2061
+ "const": "desc",
2062
+ "description": "Descending."
2063
+ }
2064
+ ]
2065
+ },
2066
+ "VerifyDepth": {
2067
+ "description": "How deep to verify the signatures.",
2068
+ "anyOf": [
2069
+ {
2070
+ "const": "none",
2071
+ "description": "Do not verify any signatures."
2072
+ },
2073
+ {
1074
2074
  "const": "current",
1075
2075
  "description": "Verify only the most recent signature."
1076
2076
  },
1077
2077
  {
1078
- "type": "string",
1079
2078
  "const": "all",
1080
2079
  "description": "Verify all the signatures."
1081
2080
  }
1082
- ],
1083
- "description": "How deep to verify the signatures."
2081
+ ]
1084
2082
  }
1085
2083
  },
1086
2084
  "securitySchemes": {