@x12i/memorix-service 3.3.0 → 3.4.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.
Files changed (85) hide show
  1. package/README.md +23 -6
  2. package/dist/app.d.ts.map +1 -1
  3. package/dist/app.js +4 -0
  4. package/dist/app.js.map +1 -1
  5. package/dist/blob-store/config.d.ts +31 -0
  6. package/dist/blob-store/config.d.ts.map +1 -0
  7. package/dist/blob-store/config.js +68 -0
  8. package/dist/blob-store/config.js.map +1 -0
  9. package/dist/blob-store/disk.d.ts +10 -0
  10. package/dist/blob-store/disk.d.ts.map +1 -0
  11. package/dist/blob-store/disk.js +104 -0
  12. package/dist/blob-store/disk.js.map +1 -0
  13. package/dist/blob-store/index.d.ts +6 -0
  14. package/dist/blob-store/index.d.ts.map +1 -0
  15. package/dist/blob-store/index.js +6 -0
  16. package/dist/blob-store/index.js.map +1 -0
  17. package/dist/blob-store/memory.d.ts +4 -0
  18. package/dist/blob-store/memory.d.ts.map +1 -0
  19. package/dist/blob-store/memory.js +47 -0
  20. package/dist/blob-store/memory.js.map +1 -0
  21. package/dist/blob-store/s3.d.ts +52 -0
  22. package/dist/blob-store/s3.d.ts.map +1 -0
  23. package/dist/blob-store/s3.js +151 -0
  24. package/dist/blob-store/s3.js.map +1 -0
  25. package/dist/blob-store/types.d.ts +30 -0
  26. package/dist/blob-store/types.d.ts.map +1 -0
  27. package/dist/blob-store/types.js +38 -0
  28. package/dist/blob-store/types.js.map +1 -0
  29. package/dist/catalog-store-cli.d.ts.map +1 -1
  30. package/dist/catalog-store-cli.js +35 -4
  31. package/dist/catalog-store-cli.js.map +1 -1
  32. package/dist/index.d.ts +3 -0
  33. package/dist/index.d.ts.map +1 -1
  34. package/dist/index.js +3 -0
  35. package/dist/index.js.map +1 -1
  36. package/dist/integrations/index.d.ts +3 -0
  37. package/dist/integrations/index.d.ts.map +1 -0
  38. package/dist/integrations/index.js +3 -0
  39. package/dist/integrations/index.js.map +1 -0
  40. package/dist/integrations/instance-store.d.ts +5 -0
  41. package/dist/integrations/instance-store.d.ts.map +1 -0
  42. package/dist/integrations/instance-store.js +327 -0
  43. package/dist/integrations/instance-store.js.map +1 -0
  44. package/dist/integrations/types.d.ts +92 -0
  45. package/dist/integrations/types.d.ts.map +1 -0
  46. package/dist/integrations/types.js +40 -0
  47. package/dist/integrations/types.js.map +1 -0
  48. package/dist/magit/magit-pack-service.d.ts +187 -3
  49. package/dist/magit/magit-pack-service.d.ts.map +1 -1
  50. package/dist/magit/magit-pack-service.js +401 -8
  51. package/dist/magit/magit-pack-service.js.map +1 -1
  52. package/dist/openapi/openapi.json +1348 -2
  53. package/dist/platform.d.ts +18 -0
  54. package/dist/platform.d.ts.map +1 -1
  55. package/dist/platform.js +61 -0
  56. package/dist/platform.js.map +1 -1
  57. package/dist/restricted-store/crypto.d.ts +10 -0
  58. package/dist/restricted-store/crypto.d.ts.map +1 -0
  59. package/dist/restricted-store/crypto.js +43 -0
  60. package/dist/restricted-store/crypto.js.map +1 -0
  61. package/dist/restricted-store/index.d.ts +4 -0
  62. package/dist/restricted-store/index.d.ts.map +1 -0
  63. package/dist/restricted-store/index.js +4 -0
  64. package/dist/restricted-store/index.js.map +1 -0
  65. package/dist/restricted-store/object-store.d.ts +12 -0
  66. package/dist/restricted-store/object-store.d.ts.map +1 -0
  67. package/dist/restricted-store/object-store.js +233 -0
  68. package/dist/restricted-store/object-store.js.map +1 -0
  69. package/dist/restricted-store/types.d.ts +78 -0
  70. package/dist/restricted-store/types.d.ts.map +1 -0
  71. package/dist/restricted-store/types.js +12 -0
  72. package/dist/restricted-store/types.js.map +1 -0
  73. package/dist/routes/integrations.d.ts +5 -0
  74. package/dist/routes/integrations.d.ts.map +1 -0
  75. package/dist/routes/integrations.js +126 -0
  76. package/dist/routes/integrations.js.map +1 -0
  77. package/dist/routes/metadata.d.ts.map +1 -1
  78. package/dist/routes/metadata.js +328 -4
  79. package/dist/routes/metadata.js.map +1 -1
  80. package/dist/routes/restricted-store.d.ts +5 -0
  81. package/dist/routes/restricted-store.d.ts.map +1 -0
  82. package/dist/routes/restricted-store.js +117 -0
  83. package/dist/routes/restricted-store.js.map +1 -0
  84. package/openapi/openapi.json +1348 -2
  85. package/package.json +3 -2
@@ -2,8 +2,8 @@
2
2
  "openapi": "3.0.3",
3
3
  "info": {
4
4
  "title": "Memorix Service API",
5
- "version": "1.0.0",
6
- "description": "One versioned product API over accepted Memorix packages. Scope: orgId + agentIds[]. Headers x-memorix-org-id and x-memorix-agent-ids (comma-separated). Intelligence never auto-installs. Relationships /links is forbidden."
5
+ "version": "3.4.0",
6
+ "description": "One versioned product API over accepted Memorix packages. Scope: orgId + agentIds[]. Headers x-memorix-org-id and x-memorix-agent-ids (comma-separated). Intelligence never auto-installs. Relationships /links is forbidden. IntegrationsRegistry (Stage −1) and RestrictedStore (FG-A3 dual-mode blob)."
7
7
  },
8
8
  "servers": [
9
9
  {
@@ -57,6 +57,14 @@
57
57
  {
58
58
  "name": "ConnectorOps",
59
59
  "description": "MCO-01/MCO-02 org-scoped connector-op overrides and attempt stats ledger. Path orgId must match x-memorix-org-id."
60
+ },
61
+ {
62
+ "name": "Integrations",
63
+ "description": "Stage −1 organization integration instance registry. Path orgId must match x-memorix-org-id. credentialRef only."
64
+ },
65
+ {
66
+ "name": "RestrictedStore",
67
+ "description": "FG-A3 restricted/encrypted object store. Bodies on dual-mode blob (s3|disk). Content GET requires break-glass headers."
60
68
  }
61
69
  ],
62
70
  "paths": {
@@ -10861,6 +10869,1344 @@
10861
10869
  }
10862
10870
  }
10863
10871
  }
10872
+ },
10873
+ "/api/metadata/packages/channels/promote": {
10874
+ "post": {
10875
+ "operationId": "metadataPromotePackageChannel",
10876
+ "summary": "Promote a package channel pointer (Mode A)",
10877
+ "tags": [
10878
+ "Metadata"
10879
+ ],
10880
+ "requestBody": {
10881
+ "required": true,
10882
+ "content": {
10883
+ "application/json": {
10884
+ "schema": {
10885
+ "type": "object",
10886
+ "required": [
10887
+ "kind",
10888
+ "id",
10889
+ "channel",
10890
+ "version"
10891
+ ],
10892
+ "properties": {
10893
+ "kind": {
10894
+ "type": "string",
10895
+ "enum": [
10896
+ "agent",
10897
+ "connector",
10898
+ "service"
10899
+ ]
10900
+ },
10901
+ "id": {
10902
+ "type": "string"
10903
+ },
10904
+ "channel": {
10905
+ "type": "string"
10906
+ },
10907
+ "version": {
10908
+ "type": "string"
10909
+ },
10910
+ "message": {
10911
+ "type": "string"
10912
+ },
10913
+ "expectedVersion": {
10914
+ "type": [
10915
+ "string",
10916
+ "null"
10917
+ ]
10918
+ }
10919
+ }
10920
+ }
10921
+ }
10922
+ }
10923
+ },
10924
+ "responses": {
10925
+ "200": {
10926
+ "description": "Channel pointer result"
10927
+ }
10928
+ }
10929
+ }
10930
+ },
10931
+ "/api/metadata/packages/{kind}/{id}/channels/{channel}": {
10932
+ "get": {
10933
+ "operationId": "metadataResolvePackageChannel",
10934
+ "summary": "Resolve package channel (Mode A; Magit syncs first)",
10935
+ "tags": [
10936
+ "Metadata"
10937
+ ],
10938
+ "parameters": [
10939
+ {
10940
+ "name": "kind",
10941
+ "in": "path",
10942
+ "required": true,
10943
+ "schema": {
10944
+ "type": "string"
10945
+ }
10946
+ },
10947
+ {
10948
+ "name": "id",
10949
+ "in": "path",
10950
+ "required": true,
10951
+ "schema": {
10952
+ "type": "string"
10953
+ }
10954
+ },
10955
+ {
10956
+ "name": "channel",
10957
+ "in": "path",
10958
+ "required": true,
10959
+ "schema": {
10960
+ "type": "string"
10961
+ }
10962
+ }
10963
+ ],
10964
+ "responses": {
10965
+ "200": {
10966
+ "description": "Channel head"
10967
+ }
10968
+ }
10969
+ }
10970
+ },
10971
+ "/api/metadata/packages/releases/pack": {
10972
+ "post": {
10973
+ "operationId": "metadataPackReleaseSet",
10974
+ "summary": "Cut an immutable release set (Mode A)",
10975
+ "tags": [
10976
+ "Metadata"
10977
+ ],
10978
+ "requestBody": {
10979
+ "required": true,
10980
+ "content": {
10981
+ "application/json": {
10982
+ "schema": {
10983
+ "type": "object",
10984
+ "required": [
10985
+ "members"
10986
+ ],
10987
+ "properties": {
10988
+ "members": {
10989
+ "type": "array",
10990
+ "items": {
10991
+ "type": "object",
10992
+ "required": [
10993
+ "kind",
10994
+ "id",
10995
+ "version"
10996
+ ],
10997
+ "properties": {
10998
+ "kind": {
10999
+ "type": "string"
11000
+ },
11001
+ "id": {
11002
+ "type": "string"
11003
+ },
11004
+ "version": {
11005
+ "type": "string"
11006
+ }
11007
+ }
11008
+ }
11009
+ },
11010
+ "message": {
11011
+ "type": "string"
11012
+ }
11013
+ }
11014
+ }
11015
+ }
11016
+ }
11017
+ },
11018
+ "responses": {
11019
+ "200": {
11020
+ "description": "Release set"
11021
+ }
11022
+ }
11023
+ }
11024
+ },
11025
+ "/api/metadata/packages/releases/channels/promote": {
11026
+ "post": {
11027
+ "operationId": "metadataPromoteReleaseChannel",
11028
+ "summary": "Promote release channel atomically (Mode A)",
11029
+ "tags": [
11030
+ "Metadata"
11031
+ ],
11032
+ "requestBody": {
11033
+ "required": true,
11034
+ "content": {
11035
+ "application/json": {
11036
+ "schema": {
11037
+ "type": "object",
11038
+ "required": [
11039
+ "channel",
11040
+ "releaseId"
11041
+ ],
11042
+ "properties": {
11043
+ "channel": {
11044
+ "type": "string"
11045
+ },
11046
+ "releaseId": {
11047
+ "type": "string"
11048
+ },
11049
+ "message": {
11050
+ "type": "string"
11051
+ },
11052
+ "expectedReleaseId": {
11053
+ "type": [
11054
+ "string",
11055
+ "null"
11056
+ ]
11057
+ }
11058
+ }
11059
+ }
11060
+ }
11061
+ }
11062
+ },
11063
+ "responses": {
11064
+ "200": {
11065
+ "description": "Release channel result"
11066
+ }
11067
+ }
11068
+ }
11069
+ },
11070
+ "/api/metadata/packages/releases/channels/{channel}": {
11071
+ "get": {
11072
+ "operationId": "metadataResolveReleaseChannel",
11073
+ "summary": "Resolve release channel with members (Mode A)",
11074
+ "tags": [
11075
+ "Metadata"
11076
+ ],
11077
+ "parameters": [
11078
+ {
11079
+ "name": "channel",
11080
+ "in": "path",
11081
+ "required": true,
11082
+ "schema": {
11083
+ "type": "string"
11084
+ }
11085
+ }
11086
+ ],
11087
+ "responses": {
11088
+ "200": {
11089
+ "description": "Release channel with members"
11090
+ }
11091
+ }
11092
+ }
11093
+ },
11094
+ "/api/metadata/packages/releases/channels/{channel}/history": {
11095
+ "get": {
11096
+ "operationId": "metadataReleaseChannelHistory",
11097
+ "summary": "Release channel history (rollback list)",
11098
+ "tags": [
11099
+ "Metadata"
11100
+ ],
11101
+ "parameters": [
11102
+ {
11103
+ "name": "channel",
11104
+ "in": "path",
11105
+ "required": true,
11106
+ "schema": {
11107
+ "type": "string"
11108
+ }
11109
+ }
11110
+ ],
11111
+ "responses": {
11112
+ "200": {
11113
+ "description": "History moves"
11114
+ }
11115
+ }
11116
+ }
11117
+ },
11118
+ "/api/integrations/v1/orgs/{orgId}/instances": {
11119
+ "get": {
11120
+ "operationId": "integrationsListInstances",
11121
+ "summary": "List integration instances + registrySnapshotToken",
11122
+ "tags": [
11123
+ "Integrations"
11124
+ ],
11125
+ "parameters": [
11126
+ {
11127
+ "name": "orgId",
11128
+ "in": "path",
11129
+ "required": true,
11130
+ "schema": {
11131
+ "type": "string"
11132
+ }
11133
+ },
11134
+ {
11135
+ "name": "x-memorix-org-id",
11136
+ "in": "header",
11137
+ "required": true,
11138
+ "schema": {
11139
+ "type": "string"
11140
+ }
11141
+ },
11142
+ {
11143
+ "name": "connectorId",
11144
+ "in": "query",
11145
+ "schema": {
11146
+ "type": "string"
11147
+ }
11148
+ },
11149
+ {
11150
+ "name": "enabled",
11151
+ "in": "query",
11152
+ "schema": {
11153
+ "type": "boolean"
11154
+ }
11155
+ }
11156
+ ],
11157
+ "responses": {
11158
+ "200": {
11159
+ "description": "List page with snapshot token",
11160
+ "content": {
11161
+ "application/json": {
11162
+ "schema": {
11163
+ "type": "object",
11164
+ "required": [
11165
+ "orgId",
11166
+ "items",
11167
+ "registrySnapshotToken",
11168
+ "etag",
11169
+ "count"
11170
+ ],
11171
+ "properties": {
11172
+ "orgId": {
11173
+ "type": "string"
11174
+ },
11175
+ "items": {
11176
+ "type": "array",
11177
+ "items": {
11178
+ "type": "object"
11179
+ }
11180
+ },
11181
+ "registrySnapshotToken": {
11182
+ "type": "string"
11183
+ },
11184
+ "etag": {
11185
+ "type": "string"
11186
+ },
11187
+ "count": {
11188
+ "type": "integer"
11189
+ }
11190
+ }
11191
+ }
11192
+ }
11193
+ }
11194
+ },
11195
+ "403": {
11196
+ "description": "Error",
11197
+ "content": {
11198
+ "application/json": {
11199
+ "schema": {
11200
+ "type": "object",
11201
+ "properties": {
11202
+ "error": {
11203
+ "type": "object",
11204
+ "properties": {
11205
+ "code": {
11206
+ "type": "string"
11207
+ },
11208
+ "message": {
11209
+ "type": "string"
11210
+ },
11211
+ "correlationId": {
11212
+ "type": "string"
11213
+ }
11214
+ }
11215
+ }
11216
+ }
11217
+ }
11218
+ }
11219
+ }
11220
+ }
11221
+ }
11222
+ },
11223
+ "post": {
11224
+ "operationId": "integrationsCreateInstance",
11225
+ "summary": "Create integration instance (credentialRef only)",
11226
+ "tags": [
11227
+ "Integrations"
11228
+ ],
11229
+ "parameters": [
11230
+ {
11231
+ "name": "orgId",
11232
+ "in": "path",
11233
+ "required": true,
11234
+ "schema": {
11235
+ "type": "string"
11236
+ }
11237
+ },
11238
+ {
11239
+ "name": "x-memorix-org-id",
11240
+ "in": "header",
11241
+ "required": true,
11242
+ "schema": {
11243
+ "type": "string"
11244
+ }
11245
+ }
11246
+ ],
11247
+ "requestBody": {
11248
+ "required": true,
11249
+ "content": {
11250
+ "application/json": {
11251
+ "schema": {
11252
+ "type": "object",
11253
+ "required": [
11254
+ "connectorId",
11255
+ "credentialRef"
11256
+ ],
11257
+ "properties": {
11258
+ "connectorId": {
11259
+ "type": "string"
11260
+ },
11261
+ "instanceId": {
11262
+ "type": "string"
11263
+ },
11264
+ "credentialRef": {
11265
+ "type": "string"
11266
+ },
11267
+ "enabled": {
11268
+ "type": "boolean"
11269
+ },
11270
+ "baseUrl": {
11271
+ "type": "string"
11272
+ },
11273
+ "lifecycleState": {
11274
+ "type": "string"
11275
+ }
11276
+ }
11277
+ }
11278
+ }
11279
+ }
11280
+ },
11281
+ "responses": {
11282
+ "201": {
11283
+ "description": "Created instance"
11284
+ },
11285
+ "400": {
11286
+ "description": "Error",
11287
+ "content": {
11288
+ "application/json": {
11289
+ "schema": {
11290
+ "type": "object",
11291
+ "properties": {
11292
+ "error": {
11293
+ "type": "object",
11294
+ "properties": {
11295
+ "code": {
11296
+ "type": "string"
11297
+ },
11298
+ "message": {
11299
+ "type": "string"
11300
+ },
11301
+ "correlationId": {
11302
+ "type": "string"
11303
+ }
11304
+ }
11305
+ }
11306
+ }
11307
+ }
11308
+ }
11309
+ }
11310
+ },
11311
+ "403": {
11312
+ "description": "Error",
11313
+ "content": {
11314
+ "application/json": {
11315
+ "schema": {
11316
+ "type": "object",
11317
+ "properties": {
11318
+ "error": {
11319
+ "type": "object",
11320
+ "properties": {
11321
+ "code": {
11322
+ "type": "string"
11323
+ },
11324
+ "message": {
11325
+ "type": "string"
11326
+ },
11327
+ "correlationId": {
11328
+ "type": "string"
11329
+ }
11330
+ }
11331
+ }
11332
+ }
11333
+ }
11334
+ }
11335
+ }
11336
+ }
11337
+ }
11338
+ }
11339
+ },
11340
+ "/api/integrations/v1/orgs/{orgId}/instances/{instanceId}": {
11341
+ "get": {
11342
+ "operationId": "integrationsGetInstance",
11343
+ "summary": "Get integration instance",
11344
+ "tags": [
11345
+ "Integrations"
11346
+ ],
11347
+ "parameters": [
11348
+ {
11349
+ "name": "orgId",
11350
+ "in": "path",
11351
+ "required": true,
11352
+ "schema": {
11353
+ "type": "string"
11354
+ }
11355
+ },
11356
+ {
11357
+ "name": "instanceId",
11358
+ "in": "path",
11359
+ "required": true,
11360
+ "schema": {
11361
+ "type": "string"
11362
+ }
11363
+ },
11364
+ {
11365
+ "name": "x-memorix-org-id",
11366
+ "in": "header",
11367
+ "required": true,
11368
+ "schema": {
11369
+ "type": "string"
11370
+ }
11371
+ }
11372
+ ],
11373
+ "responses": {
11374
+ "200": {
11375
+ "description": "Instance"
11376
+ },
11377
+ "403": {
11378
+ "description": "Error",
11379
+ "content": {
11380
+ "application/json": {
11381
+ "schema": {
11382
+ "type": "object",
11383
+ "properties": {
11384
+ "error": {
11385
+ "type": "object",
11386
+ "properties": {
11387
+ "code": {
11388
+ "type": "string"
11389
+ },
11390
+ "message": {
11391
+ "type": "string"
11392
+ },
11393
+ "correlationId": {
11394
+ "type": "string"
11395
+ }
11396
+ }
11397
+ }
11398
+ }
11399
+ }
11400
+ }
11401
+ }
11402
+ },
11403
+ "404": {
11404
+ "description": "Error",
11405
+ "content": {
11406
+ "application/json": {
11407
+ "schema": {
11408
+ "type": "object",
11409
+ "properties": {
11410
+ "error": {
11411
+ "type": "object",
11412
+ "properties": {
11413
+ "code": {
11414
+ "type": "string"
11415
+ },
11416
+ "message": {
11417
+ "type": "string"
11418
+ },
11419
+ "correlationId": {
11420
+ "type": "string"
11421
+ }
11422
+ }
11423
+ }
11424
+ }
11425
+ }
11426
+ }
11427
+ }
11428
+ }
11429
+ }
11430
+ },
11431
+ "put": {
11432
+ "operationId": "integrationsPutInstance",
11433
+ "summary": "Upsert instance with optional If-Match etag",
11434
+ "tags": [
11435
+ "Integrations"
11436
+ ],
11437
+ "parameters": [
11438
+ {
11439
+ "name": "orgId",
11440
+ "in": "path",
11441
+ "required": true,
11442
+ "schema": {
11443
+ "type": "string"
11444
+ }
11445
+ },
11446
+ {
11447
+ "name": "instanceId",
11448
+ "in": "path",
11449
+ "required": true,
11450
+ "schema": {
11451
+ "type": "string"
11452
+ }
11453
+ },
11454
+ {
11455
+ "name": "x-memorix-org-id",
11456
+ "in": "header",
11457
+ "required": true,
11458
+ "schema": {
11459
+ "type": "string"
11460
+ }
11461
+ },
11462
+ {
11463
+ "name": "If-Match",
11464
+ "in": "header",
11465
+ "schema": {
11466
+ "type": "string"
11467
+ }
11468
+ }
11469
+ ],
11470
+ "requestBody": {
11471
+ "required": true,
11472
+ "content": {
11473
+ "application/json": {
11474
+ "schema": {
11475
+ "type": "object"
11476
+ }
11477
+ }
11478
+ }
11479
+ },
11480
+ "responses": {
11481
+ "200": {
11482
+ "description": "Updated"
11483
+ },
11484
+ "400": {
11485
+ "description": "Error",
11486
+ "content": {
11487
+ "application/json": {
11488
+ "schema": {
11489
+ "type": "object",
11490
+ "properties": {
11491
+ "error": {
11492
+ "type": "object",
11493
+ "properties": {
11494
+ "code": {
11495
+ "type": "string"
11496
+ },
11497
+ "message": {
11498
+ "type": "string"
11499
+ },
11500
+ "correlationId": {
11501
+ "type": "string"
11502
+ }
11503
+ }
11504
+ }
11505
+ }
11506
+ }
11507
+ }
11508
+ }
11509
+ },
11510
+ "403": {
11511
+ "description": "Error",
11512
+ "content": {
11513
+ "application/json": {
11514
+ "schema": {
11515
+ "type": "object",
11516
+ "properties": {
11517
+ "error": {
11518
+ "type": "object",
11519
+ "properties": {
11520
+ "code": {
11521
+ "type": "string"
11522
+ },
11523
+ "message": {
11524
+ "type": "string"
11525
+ },
11526
+ "correlationId": {
11527
+ "type": "string"
11528
+ }
11529
+ }
11530
+ }
11531
+ }
11532
+ }
11533
+ }
11534
+ }
11535
+ },
11536
+ "412": {
11537
+ "description": "Error",
11538
+ "content": {
11539
+ "application/json": {
11540
+ "schema": {
11541
+ "type": "object",
11542
+ "properties": {
11543
+ "error": {
11544
+ "type": "object",
11545
+ "properties": {
11546
+ "code": {
11547
+ "type": "string"
11548
+ },
11549
+ "message": {
11550
+ "type": "string"
11551
+ },
11552
+ "correlationId": {
11553
+ "type": "string"
11554
+ }
11555
+ }
11556
+ }
11557
+ }
11558
+ }
11559
+ }
11560
+ }
11561
+ }
11562
+ }
11563
+ },
11564
+ "delete": {
11565
+ "operationId": "integrationsDeleteInstance",
11566
+ "summary": "Delete instance",
11567
+ "tags": [
11568
+ "Integrations"
11569
+ ],
11570
+ "parameters": [
11571
+ {
11572
+ "name": "orgId",
11573
+ "in": "path",
11574
+ "required": true,
11575
+ "schema": {
11576
+ "type": "string"
11577
+ }
11578
+ },
11579
+ {
11580
+ "name": "instanceId",
11581
+ "in": "path",
11582
+ "required": true,
11583
+ "schema": {
11584
+ "type": "string"
11585
+ }
11586
+ },
11587
+ {
11588
+ "name": "x-memorix-org-id",
11589
+ "in": "header",
11590
+ "required": true,
11591
+ "schema": {
11592
+ "type": "string"
11593
+ }
11594
+ },
11595
+ {
11596
+ "name": "If-Match",
11597
+ "in": "header",
11598
+ "schema": {
11599
+ "type": "string"
11600
+ }
11601
+ }
11602
+ ],
11603
+ "responses": {
11604
+ "204": {
11605
+ "description": "Deleted"
11606
+ },
11607
+ "404": {
11608
+ "description": "Error",
11609
+ "content": {
11610
+ "application/json": {
11611
+ "schema": {
11612
+ "type": "object",
11613
+ "properties": {
11614
+ "error": {
11615
+ "type": "object",
11616
+ "properties": {
11617
+ "code": {
11618
+ "type": "string"
11619
+ },
11620
+ "message": {
11621
+ "type": "string"
11622
+ },
11623
+ "correlationId": {
11624
+ "type": "string"
11625
+ }
11626
+ }
11627
+ }
11628
+ }
11629
+ }
11630
+ }
11631
+ }
11632
+ },
11633
+ "412": {
11634
+ "description": "Error",
11635
+ "content": {
11636
+ "application/json": {
11637
+ "schema": {
11638
+ "type": "object",
11639
+ "properties": {
11640
+ "error": {
11641
+ "type": "object",
11642
+ "properties": {
11643
+ "code": {
11644
+ "type": "string"
11645
+ },
11646
+ "message": {
11647
+ "type": "string"
11648
+ },
11649
+ "correlationId": {
11650
+ "type": "string"
11651
+ }
11652
+ }
11653
+ }
11654
+ }
11655
+ }
11656
+ }
11657
+ }
11658
+ }
11659
+ }
11660
+ }
11661
+ },
11662
+ "/api/integrations/v1/orgs/{orgId}/mutations": {
11663
+ "get": {
11664
+ "operationId": "integrationsListMutations",
11665
+ "summary": "List registry mutation audit entries",
11666
+ "tags": [
11667
+ "Integrations"
11668
+ ],
11669
+ "parameters": [
11670
+ {
11671
+ "name": "orgId",
11672
+ "in": "path",
11673
+ "required": true,
11674
+ "schema": {
11675
+ "type": "string"
11676
+ }
11677
+ },
11678
+ {
11679
+ "name": "x-memorix-org-id",
11680
+ "in": "header",
11681
+ "required": true,
11682
+ "schema": {
11683
+ "type": "string"
11684
+ }
11685
+ },
11686
+ {
11687
+ "name": "limit",
11688
+ "in": "query",
11689
+ "schema": {
11690
+ "type": "integer"
11691
+ }
11692
+ }
11693
+ ],
11694
+ "responses": {
11695
+ "200": {
11696
+ "description": "Mutations"
11697
+ },
11698
+ "403": {
11699
+ "description": "Error",
11700
+ "content": {
11701
+ "application/json": {
11702
+ "schema": {
11703
+ "type": "object",
11704
+ "properties": {
11705
+ "error": {
11706
+ "type": "object",
11707
+ "properties": {
11708
+ "code": {
11709
+ "type": "string"
11710
+ },
11711
+ "message": {
11712
+ "type": "string"
11713
+ },
11714
+ "correlationId": {
11715
+ "type": "string"
11716
+ }
11717
+ }
11718
+ }
11719
+ }
11720
+ }
11721
+ }
11722
+ }
11723
+ }
11724
+ }
11725
+ }
11726
+ },
11727
+ "/api/restricted-store/v1/orgs/{orgId}/objects": {
11728
+ "put": {
11729
+ "operationId": "restrictedStorePutObject",
11730
+ "summary": "Put restricted body; returns redacted metadata only",
11731
+ "tags": [
11732
+ "RestrictedStore"
11733
+ ],
11734
+ "parameters": [
11735
+ {
11736
+ "name": "orgId",
11737
+ "in": "path",
11738
+ "required": true,
11739
+ "schema": {
11740
+ "type": "string"
11741
+ }
11742
+ },
11743
+ {
11744
+ "name": "x-memorix-org-id",
11745
+ "in": "header",
11746
+ "required": true,
11747
+ "schema": {
11748
+ "type": "string"
11749
+ }
11750
+ }
11751
+ ],
11752
+ "requestBody": {
11753
+ "required": true,
11754
+ "content": {
11755
+ "application/json": {
11756
+ "schema": {
11757
+ "type": "object",
11758
+ "required": [
11759
+ "classification",
11760
+ "bodyBase64"
11761
+ ],
11762
+ "properties": {
11763
+ "classification": {
11764
+ "type": "string",
11765
+ "enum": [
11766
+ "restricted",
11767
+ "config-backup"
11768
+ ]
11769
+ },
11770
+ "bodyBase64": {
11771
+ "type": "string"
11772
+ },
11773
+ "deviceId": {
11774
+ "type": "string"
11775
+ },
11776
+ "vdom": {
11777
+ "type": "string"
11778
+ },
11779
+ "sourceRunId": {
11780
+ "type": "string"
11781
+ },
11782
+ "contentType": {
11783
+ "type": "string"
11784
+ },
11785
+ "version": {
11786
+ "type": "string"
11787
+ },
11788
+ "retainUntil": {
11789
+ "type": "string",
11790
+ "nullable": true
11791
+ }
11792
+ }
11793
+ }
11794
+ }
11795
+ }
11796
+ },
11797
+ "responses": {
11798
+ "201": {
11799
+ "description": "Redacted metadata"
11800
+ },
11801
+ "400": {
11802
+ "description": "Error",
11803
+ "content": {
11804
+ "application/json": {
11805
+ "schema": {
11806
+ "type": "object",
11807
+ "properties": {
11808
+ "error": {
11809
+ "type": "object",
11810
+ "properties": {
11811
+ "code": {
11812
+ "type": "string"
11813
+ },
11814
+ "message": {
11815
+ "type": "string"
11816
+ },
11817
+ "correlationId": {
11818
+ "type": "string"
11819
+ }
11820
+ }
11821
+ }
11822
+ }
11823
+ }
11824
+ }
11825
+ }
11826
+ },
11827
+ "403": {
11828
+ "description": "Error",
11829
+ "content": {
11830
+ "application/json": {
11831
+ "schema": {
11832
+ "type": "object",
11833
+ "properties": {
11834
+ "error": {
11835
+ "type": "object",
11836
+ "properties": {
11837
+ "code": {
11838
+ "type": "string"
11839
+ },
11840
+ "message": {
11841
+ "type": "string"
11842
+ },
11843
+ "correlationId": {
11844
+ "type": "string"
11845
+ }
11846
+ }
11847
+ }
11848
+ }
11849
+ }
11850
+ }
11851
+ }
11852
+ }
11853
+ }
11854
+ }
11855
+ },
11856
+ "/api/restricted-store/v1/orgs/{orgId}/objects/{objectId}/metadata": {
11857
+ "get": {
11858
+ "operationId": "restrictedStoreGetMetadata",
11859
+ "summary": "Get redacted restricted object metadata",
11860
+ "tags": [
11861
+ "RestrictedStore"
11862
+ ],
11863
+ "parameters": [
11864
+ {
11865
+ "name": "orgId",
11866
+ "in": "path",
11867
+ "required": true,
11868
+ "schema": {
11869
+ "type": "string"
11870
+ }
11871
+ },
11872
+ {
11873
+ "name": "objectId",
11874
+ "in": "path",
11875
+ "required": true,
11876
+ "schema": {
11877
+ "type": "string"
11878
+ }
11879
+ },
11880
+ {
11881
+ "name": "x-memorix-org-id",
11882
+ "in": "header",
11883
+ "required": true,
11884
+ "schema": {
11885
+ "type": "string"
11886
+ }
11887
+ }
11888
+ ],
11889
+ "responses": {
11890
+ "200": {
11891
+ "description": "Metadata"
11892
+ },
11893
+ "404": {
11894
+ "description": "Error",
11895
+ "content": {
11896
+ "application/json": {
11897
+ "schema": {
11898
+ "type": "object",
11899
+ "properties": {
11900
+ "error": {
11901
+ "type": "object",
11902
+ "properties": {
11903
+ "code": {
11904
+ "type": "string"
11905
+ },
11906
+ "message": {
11907
+ "type": "string"
11908
+ },
11909
+ "correlationId": {
11910
+ "type": "string"
11911
+ }
11912
+ }
11913
+ }
11914
+ }
11915
+ }
11916
+ }
11917
+ }
11918
+ }
11919
+ }
11920
+ }
11921
+ },
11922
+ "/api/restricted-store/v1/orgs/{orgId}/objects/{objectId}/content": {
11923
+ "get": {
11924
+ "operationId": "restrictedStoreGetContentBreakGlass",
11925
+ "summary": "Break-glass full body (audited)",
11926
+ "tags": [
11927
+ "RestrictedStore"
11928
+ ],
11929
+ "parameters": [
11930
+ {
11931
+ "name": "orgId",
11932
+ "in": "path",
11933
+ "required": true,
11934
+ "schema": {
11935
+ "type": "string"
11936
+ }
11937
+ },
11938
+ {
11939
+ "name": "objectId",
11940
+ "in": "path",
11941
+ "required": true,
11942
+ "schema": {
11943
+ "type": "string"
11944
+ }
11945
+ },
11946
+ {
11947
+ "name": "x-memorix-org-id",
11948
+ "in": "header",
11949
+ "required": true,
11950
+ "schema": {
11951
+ "type": "string"
11952
+ }
11953
+ },
11954
+ {
11955
+ "name": "x-memorix-break-glass",
11956
+ "in": "header",
11957
+ "required": true,
11958
+ "schema": {
11959
+ "type": "string",
11960
+ "enum": [
11961
+ "true",
11962
+ "1"
11963
+ ]
11964
+ }
11965
+ },
11966
+ {
11967
+ "name": "x-memorix-break-glass-reason",
11968
+ "in": "header",
11969
+ "required": true,
11970
+ "schema": {
11971
+ "type": "string"
11972
+ }
11973
+ },
11974
+ {
11975
+ "name": "x-memorix-actor",
11976
+ "in": "header",
11977
+ "schema": {
11978
+ "type": "string"
11979
+ }
11980
+ }
11981
+ ],
11982
+ "responses": {
11983
+ "200": {
11984
+ "description": "Full body as bodyBase64"
11985
+ },
11986
+ "400": {
11987
+ "description": "Error",
11988
+ "content": {
11989
+ "application/json": {
11990
+ "schema": {
11991
+ "type": "object",
11992
+ "properties": {
11993
+ "error": {
11994
+ "type": "object",
11995
+ "properties": {
11996
+ "code": {
11997
+ "type": "string"
11998
+ },
11999
+ "message": {
12000
+ "type": "string"
12001
+ },
12002
+ "correlationId": {
12003
+ "type": "string"
12004
+ }
12005
+ }
12006
+ }
12007
+ }
12008
+ }
12009
+ }
12010
+ }
12011
+ },
12012
+ "403": {
12013
+ "description": "Error",
12014
+ "content": {
12015
+ "application/json": {
12016
+ "schema": {
12017
+ "type": "object",
12018
+ "properties": {
12019
+ "error": {
12020
+ "type": "object",
12021
+ "properties": {
12022
+ "code": {
12023
+ "type": "string"
12024
+ },
12025
+ "message": {
12026
+ "type": "string"
12027
+ },
12028
+ "correlationId": {
12029
+ "type": "string"
12030
+ }
12031
+ }
12032
+ }
12033
+ }
12034
+ }
12035
+ }
12036
+ }
12037
+ },
12038
+ "404": {
12039
+ "description": "Error",
12040
+ "content": {
12041
+ "application/json": {
12042
+ "schema": {
12043
+ "type": "object",
12044
+ "properties": {
12045
+ "error": {
12046
+ "type": "object",
12047
+ "properties": {
12048
+ "code": {
12049
+ "type": "string"
12050
+ },
12051
+ "message": {
12052
+ "type": "string"
12053
+ },
12054
+ "correlationId": {
12055
+ "type": "string"
12056
+ }
12057
+ }
12058
+ }
12059
+ }
12060
+ }
12061
+ }
12062
+ }
12063
+ }
12064
+ }
12065
+ }
12066
+ },
12067
+ "/api/restricted-store/v1/orgs/{orgId}/objects/{objectId}": {
12068
+ "delete": {
12069
+ "operationId": "restrictedStoreDeleteObject",
12070
+ "summary": "Delete restricted object metadata + blob body",
12071
+ "tags": [
12072
+ "RestrictedStore"
12073
+ ],
12074
+ "parameters": [
12075
+ {
12076
+ "name": "orgId",
12077
+ "in": "path",
12078
+ "required": true,
12079
+ "schema": {
12080
+ "type": "string"
12081
+ }
12082
+ },
12083
+ {
12084
+ "name": "objectId",
12085
+ "in": "path",
12086
+ "required": true,
12087
+ "schema": {
12088
+ "type": "string"
12089
+ }
12090
+ },
12091
+ {
12092
+ "name": "x-memorix-org-id",
12093
+ "in": "header",
12094
+ "required": true,
12095
+ "schema": {
12096
+ "type": "string"
12097
+ }
12098
+ }
12099
+ ],
12100
+ "responses": {
12101
+ "204": {
12102
+ "description": "Deleted"
12103
+ },
12104
+ "404": {
12105
+ "description": "Error",
12106
+ "content": {
12107
+ "application/json": {
12108
+ "schema": {
12109
+ "type": "object",
12110
+ "properties": {
12111
+ "error": {
12112
+ "type": "object",
12113
+ "properties": {
12114
+ "code": {
12115
+ "type": "string"
12116
+ },
12117
+ "message": {
12118
+ "type": "string"
12119
+ },
12120
+ "correlationId": {
12121
+ "type": "string"
12122
+ }
12123
+ }
12124
+ }
12125
+ }
12126
+ }
12127
+ }
12128
+ }
12129
+ }
12130
+ }
12131
+ }
12132
+ },
12133
+ "/api/restricted-store/v1/orgs/{orgId}/purge-expired": {
12134
+ "post": {
12135
+ "operationId": "restrictedStorePurgeExpired",
12136
+ "summary": "Purge objects past retainUntil",
12137
+ "tags": [
12138
+ "RestrictedStore"
12139
+ ],
12140
+ "parameters": [
12141
+ {
12142
+ "name": "orgId",
12143
+ "in": "path",
12144
+ "required": true,
12145
+ "schema": {
12146
+ "type": "string"
12147
+ }
12148
+ },
12149
+ {
12150
+ "name": "x-memorix-org-id",
12151
+ "in": "header",
12152
+ "required": true,
12153
+ "schema": {
12154
+ "type": "string"
12155
+ }
12156
+ }
12157
+ ],
12158
+ "responses": {
12159
+ "200": {
12160
+ "description": "Purge count"
12161
+ }
12162
+ }
12163
+ }
12164
+ },
12165
+ "/api/restricted-store/v1/orgs/{orgId}/access-audits": {
12166
+ "get": {
12167
+ "operationId": "restrictedStoreListAccessAudits",
12168
+ "summary": "List restricted body access audits",
12169
+ "tags": [
12170
+ "RestrictedStore"
12171
+ ],
12172
+ "parameters": [
12173
+ {
12174
+ "name": "orgId",
12175
+ "in": "path",
12176
+ "required": true,
12177
+ "schema": {
12178
+ "type": "string"
12179
+ }
12180
+ },
12181
+ {
12182
+ "name": "x-memorix-org-id",
12183
+ "in": "header",
12184
+ "required": true,
12185
+ "schema": {
12186
+ "type": "string"
12187
+ }
12188
+ },
12189
+ {
12190
+ "name": "objectId",
12191
+ "in": "query",
12192
+ "schema": {
12193
+ "type": "string"
12194
+ }
12195
+ },
12196
+ {
12197
+ "name": "limit",
12198
+ "in": "query",
12199
+ "schema": {
12200
+ "type": "integer"
12201
+ }
12202
+ }
12203
+ ],
12204
+ "responses": {
12205
+ "200": {
12206
+ "description": "Audits"
12207
+ }
12208
+ }
12209
+ }
10864
12210
  }
10865
12211
  },
10866
12212
  "components": {