@x12i/memorix-service 3.11.0 → 3.11.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2,7 +2,7 @@
2
2
  "openapi": "3.0.3",
3
3
  "info": {
4
4
  "title": "Memorix Service API",
5
- "version": "3.7.8",
5
+ "version": "3.11.1",
6
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). MX-CALLER-01: every /api request requires x-memorix-caller (calling app id). Intelligence never auto-installs. Relationships /links is forbidden. IntegrationsRegistry (Stage −1) and RestrictedStore (FG-A3 dual-mode blob)."
7
7
  },
8
8
  "servers": [
@@ -2567,6 +2567,17 @@
2567
2567
  "type": "string"
2568
2568
  },
2569
2569
  "description": "Optional SafeSort JSON"
2570
+ },
2571
+ {
2572
+ "name": "count",
2573
+ "in": "query",
2574
+ "schema": {
2575
+ "type": "string",
2576
+ "enum": [
2577
+ "true"
2578
+ ]
2579
+ },
2580
+ "description": "When true, and every filter is eq, in, or exists on a path this agent's live property index names, the response is { count } and does not return the population. Unindexed filters ignore this and return the list."
2570
2581
  }
2571
2582
  ],
2572
2583
  "responses": {
@@ -2619,6 +2630,10 @@
2619
2630
  "pageInfo": {
2620
2631
  "$ref": "#/components/schemas/PageInfo"
2621
2632
  },
2633
+ "count": {
2634
+ "type": "integer",
2635
+ "description": "Present when count=true is served from a live property index. The population is not returned."
2636
+ },
2622
2637
  "currentRevision": {
2623
2638
  "type": "integer",
2624
2639
  "nullable": true
@@ -14377,6 +14392,384 @@
14377
14392
  }
14378
14393
  }
14379
14394
  },
14395
+ "/api/analytics/indexes": {
14396
+ "get": {
14397
+ "operationId": "analyticsIndexesList",
14398
+ "summary": "List property indexes for the caller's agent ids",
14399
+ "description": "Another agent's indexes are not listed. An agent that has declared nothing gets an empty list.",
14400
+ "tags": [
14401
+ "Analytics"
14402
+ ],
14403
+ "parameters": [
14404
+ {
14405
+ "$ref": "#/components/parameters/XMemorixCaller"
14406
+ },
14407
+ {
14408
+ "$ref": "#/components/parameters/XMemorixOrgId"
14409
+ },
14410
+ {
14411
+ "$ref": "#/components/parameters/XMemorixAgentIds"
14412
+ }
14413
+ ],
14414
+ "responses": {
14415
+ "200": {
14416
+ "description": "Indexes for this agent set",
14417
+ "content": {
14418
+ "application/json": {
14419
+ "schema": {
14420
+ "type": "object",
14421
+ "required": [
14422
+ "items"
14423
+ ],
14424
+ "properties": {
14425
+ "items": {
14426
+ "type": "array",
14427
+ "items": {
14428
+ "$ref": "#/components/schemas/AnalyticsIndex"
14429
+ }
14430
+ }
14431
+ }
14432
+ }
14433
+ }
14434
+ }
14435
+ },
14436
+ "503": {
14437
+ "description": "Analytics unavailable (no Mongo, or MEMORIX_ANALYTICS=0)",
14438
+ "content": {
14439
+ "application/json": {
14440
+ "schema": {
14441
+ "$ref": "#/components/schemas/ErrorEnvelope"
14442
+ }
14443
+ }
14444
+ }
14445
+ }
14446
+ }
14447
+ },
14448
+ "post": {
14449
+ "operationId": "analyticsIndexesRegister",
14450
+ "summary": "Declare the stored paths Memorix indexes for this agent",
14451
+ "description": "Names an object type, content type, and stored paths. No abstract. The caller's agent ids are the scope. The same definition does not scan again. A different definition needs replace: true.",
14452
+ "tags": [
14453
+ "Analytics"
14454
+ ],
14455
+ "parameters": [
14456
+ {
14457
+ "$ref": "#/components/parameters/XMemorixCaller"
14458
+ },
14459
+ {
14460
+ "$ref": "#/components/parameters/XMemorixOrgId"
14461
+ },
14462
+ {
14463
+ "$ref": "#/components/parameters/XMemorixAgentIds"
14464
+ }
14465
+ ],
14466
+ "requestBody": {
14467
+ "required": true,
14468
+ "content": {
14469
+ "application/json": {
14470
+ "schema": {
14471
+ "type": "object",
14472
+ "required": [
14473
+ "definition"
14474
+ ],
14475
+ "properties": {
14476
+ "definition": {
14477
+ "type": "object",
14478
+ "required": [
14479
+ "id",
14480
+ "objectType",
14481
+ "contentType",
14482
+ "properties"
14483
+ ],
14484
+ "properties": {
14485
+ "id": {
14486
+ "type": "string",
14487
+ "description": "Stable name for this agent set. Ids starting with @ are reserved."
14488
+ },
14489
+ "objectType": {
14490
+ "type": "string"
14491
+ },
14492
+ "contentType": {
14493
+ "type": "string"
14494
+ },
14495
+ "properties": {
14496
+ "type": "array",
14497
+ "items": {
14498
+ "type": "string"
14499
+ },
14500
+ "description": "Stored paths, such as data.responsePriority. They do not have to be declared fields."
14501
+ }
14502
+ }
14503
+ },
14504
+ "replace": {
14505
+ "type": "boolean",
14506
+ "description": "Required when this id already exists with a different definition. Rebuilds that index only."
14507
+ }
14508
+ }
14509
+ }
14510
+ }
14511
+ }
14512
+ },
14513
+ "responses": {
14514
+ "202": {
14515
+ "description": "Accepted. Backfill scans that population once, then the index stays current from writes.",
14516
+ "content": {
14517
+ "application/json": {
14518
+ "schema": {
14519
+ "type": "object",
14520
+ "required": [
14521
+ "id",
14522
+ "status",
14523
+ "index"
14524
+ ],
14525
+ "properties": {
14526
+ "id": {
14527
+ "type": "string"
14528
+ },
14529
+ "status": {
14530
+ "type": "string"
14531
+ },
14532
+ "index": {
14533
+ "$ref": "#/components/schemas/AnalyticsIndex"
14534
+ }
14535
+ }
14536
+ }
14537
+ }
14538
+ }
14539
+ },
14540
+ "400": {
14541
+ "description": "Definition invalid (error.details.issues). A body that includes abstractType is META-ANALYTICS.",
14542
+ "content": {
14543
+ "application/json": {
14544
+ "schema": {
14545
+ "$ref": "#/components/schemas/ErrorEnvelope"
14546
+ }
14547
+ }
14548
+ }
14549
+ },
14550
+ "409": {
14551
+ "description": "Definition differs without replace, or the same id belongs to another agent set",
14552
+ "content": {
14553
+ "application/json": {
14554
+ "schema": {
14555
+ "$ref": "#/components/schemas/ErrorEnvelope"
14556
+ }
14557
+ }
14558
+ }
14559
+ },
14560
+ "503": {
14561
+ "description": "Analytics unavailable",
14562
+ "content": {
14563
+ "application/json": {
14564
+ "schema": {
14565
+ "$ref": "#/components/schemas/ErrorEnvelope"
14566
+ }
14567
+ }
14568
+ }
14569
+ }
14570
+ }
14571
+ }
14572
+ },
14573
+ "/api/analytics/indexes/validate": {
14574
+ "post": {
14575
+ "operationId": "analyticsIndexesValidate",
14576
+ "summary": "Validate a property index without registering it",
14577
+ "tags": [
14578
+ "Analytics"
14579
+ ],
14580
+ "parameters": [
14581
+ {
14582
+ "$ref": "#/components/parameters/XMemorixCaller"
14583
+ },
14584
+ {
14585
+ "$ref": "#/components/parameters/XMemorixOrgId"
14586
+ },
14587
+ {
14588
+ "$ref": "#/components/parameters/XMemorixAgentIds"
14589
+ }
14590
+ ],
14591
+ "requestBody": {
14592
+ "required": true,
14593
+ "content": {
14594
+ "application/json": {
14595
+ "schema": {
14596
+ "type": "object",
14597
+ "properties": {
14598
+ "definition": {
14599
+ "type": "object",
14600
+ "additionalProperties": true
14601
+ }
14602
+ }
14603
+ }
14604
+ }
14605
+ }
14606
+ },
14607
+ "responses": {
14608
+ "200": {
14609
+ "description": "Validation result",
14610
+ "content": {
14611
+ "application/json": {
14612
+ "schema": {
14613
+ "type": "object",
14614
+ "required": [
14615
+ "ok",
14616
+ "issues"
14617
+ ],
14618
+ "properties": {
14619
+ "ok": {
14620
+ "type": "boolean"
14621
+ },
14622
+ "issues": {
14623
+ "type": "array",
14624
+ "items": {
14625
+ "type": "object",
14626
+ "additionalProperties": true
14627
+ }
14628
+ }
14629
+ }
14630
+ }
14631
+ }
14632
+ }
14633
+ },
14634
+ "503": {
14635
+ "description": "Analytics unavailable",
14636
+ "content": {
14637
+ "application/json": {
14638
+ "schema": {
14639
+ "$ref": "#/components/schemas/ErrorEnvelope"
14640
+ }
14641
+ }
14642
+ }
14643
+ }
14644
+ }
14645
+ }
14646
+ },
14647
+ "/api/analytics/indexes/{id}": {
14648
+ "get": {
14649
+ "operationId": "analyticsIndexGet",
14650
+ "summary": "One property index for the caller's agent ids",
14651
+ "tags": [
14652
+ "Analytics"
14653
+ ],
14654
+ "parameters": [
14655
+ {
14656
+ "$ref": "#/components/parameters/XMemorixCaller"
14657
+ },
14658
+ {
14659
+ "$ref": "#/components/parameters/XMemorixOrgId"
14660
+ },
14661
+ {
14662
+ "$ref": "#/components/parameters/XMemorixAgentIds"
14663
+ },
14664
+ {
14665
+ "name": "id",
14666
+ "in": "path",
14667
+ "required": true,
14668
+ "schema": {
14669
+ "type": "string"
14670
+ }
14671
+ }
14672
+ ],
14673
+ "responses": {
14674
+ "200": {
14675
+ "description": "Index",
14676
+ "content": {
14677
+ "application/json": {
14678
+ "schema": {
14679
+ "$ref": "#/components/schemas/AnalyticsIndex"
14680
+ }
14681
+ }
14682
+ }
14683
+ },
14684
+ "404": {
14685
+ "description": "Not declared for this agent set",
14686
+ "content": {
14687
+ "application/json": {
14688
+ "schema": {
14689
+ "$ref": "#/components/schemas/ErrorEnvelope"
14690
+ }
14691
+ }
14692
+ }
14693
+ },
14694
+ "503": {
14695
+ "description": "Analytics unavailable",
14696
+ "content": {
14697
+ "application/json": {
14698
+ "schema": {
14699
+ "$ref": "#/components/schemas/ErrorEnvelope"
14700
+ }
14701
+ }
14702
+ }
14703
+ }
14704
+ }
14705
+ },
14706
+ "delete": {
14707
+ "operationId": "analyticsIndexDelete",
14708
+ "summary": "Drop this agent's property index",
14709
+ "tags": [
14710
+ "Analytics"
14711
+ ],
14712
+ "parameters": [
14713
+ {
14714
+ "$ref": "#/components/parameters/XMemorixCaller"
14715
+ },
14716
+ {
14717
+ "$ref": "#/components/parameters/XMemorixOrgId"
14718
+ },
14719
+ {
14720
+ "$ref": "#/components/parameters/XMemorixAgentIds"
14721
+ },
14722
+ {
14723
+ "name": "id",
14724
+ "in": "path",
14725
+ "required": true,
14726
+ "schema": {
14727
+ "type": "string"
14728
+ }
14729
+ }
14730
+ ],
14731
+ "responses": {
14732
+ "200": {
14733
+ "description": "Removed",
14734
+ "content": {
14735
+ "application/json": {
14736
+ "schema": {
14737
+ "type": "object",
14738
+ "properties": {
14739
+ "id": {
14740
+ "type": "string"
14741
+ },
14742
+ "removed": {
14743
+ "type": "boolean"
14744
+ }
14745
+ }
14746
+ }
14747
+ }
14748
+ }
14749
+ },
14750
+ "404": {
14751
+ "description": "Not declared for this agent set",
14752
+ "content": {
14753
+ "application/json": {
14754
+ "schema": {
14755
+ "$ref": "#/components/schemas/ErrorEnvelope"
14756
+ }
14757
+ }
14758
+ }
14759
+ },
14760
+ "503": {
14761
+ "description": "Analytics unavailable",
14762
+ "content": {
14763
+ "application/json": {
14764
+ "schema": {
14765
+ "$ref": "#/components/schemas/ErrorEnvelope"
14766
+ }
14767
+ }
14768
+ }
14769
+ }
14770
+ }
14771
+ }
14772
+ },
14380
14773
  "/api/analytics/source-census": {
14381
14774
  "get": {
14382
14775
  "operationId": "analyticsSourceCensus",
@@ -16874,6 +17267,85 @@
16874
17267
  }
16875
17268
  }
16876
17269
  },
17270
+ "AnalyticsIndex": {
17271
+ "type": "object",
17272
+ "required": [
17273
+ "id",
17274
+ "objectType",
17275
+ "contentType",
17276
+ "properties",
17277
+ "status",
17278
+ "generation",
17279
+ "hash",
17280
+ "agentIds",
17281
+ "backfill"
17282
+ ],
17283
+ "properties": {
17284
+ "id": {
17285
+ "type": "string"
17286
+ },
17287
+ "objectType": {
17288
+ "type": "string"
17289
+ },
17290
+ "contentType": {
17291
+ "type": "string"
17292
+ },
17293
+ "properties": {
17294
+ "type": "array",
17295
+ "items": {
17296
+ "type": "string"
17297
+ }
17298
+ },
17299
+ "status": {
17300
+ "type": "string",
17301
+ "enum": [
17302
+ "backfilling",
17303
+ "live",
17304
+ "error"
17305
+ ]
17306
+ },
17307
+ "generation": {
17308
+ "type": "integer"
17309
+ },
17310
+ "hash": {
17311
+ "type": "string"
17312
+ },
17313
+ "agentIds": {
17314
+ "type": "array",
17315
+ "items": {
17316
+ "type": "string"
17317
+ }
17318
+ },
17319
+ "backfill": {
17320
+ "type": "object",
17321
+ "additionalProperties": true
17322
+ },
17323
+ "registeredAt": {
17324
+ "type": "string"
17325
+ },
17326
+ "registeredBy": {
17327
+ "type": [
17328
+ "string",
17329
+ "null"
17330
+ ]
17331
+ },
17332
+ "updatedAt": {
17333
+ "type": "string"
17334
+ },
17335
+ "liveAt": {
17336
+ "type": [
17337
+ "string",
17338
+ "null"
17339
+ ]
17340
+ },
17341
+ "error": {
17342
+ "type": [
17343
+ "string",
17344
+ "null"
17345
+ ]
17346
+ }
17347
+ }
17348
+ },
16877
17349
  "AnalyticsCounter": {
16878
17350
  "type": "object",
16879
17351
  "required": [
@@ -2,7 +2,7 @@
2
2
  "openapi": "3.0.3",
3
3
  "info": {
4
4
  "title": "Memorix Service API",
5
- "version": "3.7.8",
5
+ "version": "3.11.1",
6
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). MX-CALLER-01: every /api request requires x-memorix-caller (calling app id). Intelligence never auto-installs. Relationships /links is forbidden. IntegrationsRegistry (Stage −1) and RestrictedStore (FG-A3 dual-mode blob)."
7
7
  },
8
8
  "servers": [
@@ -2567,6 +2567,17 @@
2567
2567
  "type": "string"
2568
2568
  },
2569
2569
  "description": "Optional SafeSort JSON"
2570
+ },
2571
+ {
2572
+ "name": "count",
2573
+ "in": "query",
2574
+ "schema": {
2575
+ "type": "string",
2576
+ "enum": [
2577
+ "true"
2578
+ ]
2579
+ },
2580
+ "description": "When true, and every filter is eq, in, or exists on a path this agent's live property index names, the response is { count } and does not return the population. Unindexed filters ignore this and return the list."
2570
2581
  }
2571
2582
  ],
2572
2583
  "responses": {
@@ -2619,6 +2630,10 @@
2619
2630
  "pageInfo": {
2620
2631
  "$ref": "#/components/schemas/PageInfo"
2621
2632
  },
2633
+ "count": {
2634
+ "type": "integer",
2635
+ "description": "Present when count=true is served from a live property index. The population is not returned."
2636
+ },
2622
2637
  "currentRevision": {
2623
2638
  "type": "integer",
2624
2639
  "nullable": true
@@ -14377,6 +14392,384 @@
14377
14392
  }
14378
14393
  }
14379
14394
  },
14395
+ "/api/analytics/indexes": {
14396
+ "get": {
14397
+ "operationId": "analyticsIndexesList",
14398
+ "summary": "List property indexes for the caller's agent ids",
14399
+ "description": "Another agent's indexes are not listed. An agent that has declared nothing gets an empty list.",
14400
+ "tags": [
14401
+ "Analytics"
14402
+ ],
14403
+ "parameters": [
14404
+ {
14405
+ "$ref": "#/components/parameters/XMemorixCaller"
14406
+ },
14407
+ {
14408
+ "$ref": "#/components/parameters/XMemorixOrgId"
14409
+ },
14410
+ {
14411
+ "$ref": "#/components/parameters/XMemorixAgentIds"
14412
+ }
14413
+ ],
14414
+ "responses": {
14415
+ "200": {
14416
+ "description": "Indexes for this agent set",
14417
+ "content": {
14418
+ "application/json": {
14419
+ "schema": {
14420
+ "type": "object",
14421
+ "required": [
14422
+ "items"
14423
+ ],
14424
+ "properties": {
14425
+ "items": {
14426
+ "type": "array",
14427
+ "items": {
14428
+ "$ref": "#/components/schemas/AnalyticsIndex"
14429
+ }
14430
+ }
14431
+ }
14432
+ }
14433
+ }
14434
+ }
14435
+ },
14436
+ "503": {
14437
+ "description": "Analytics unavailable (no Mongo, or MEMORIX_ANALYTICS=0)",
14438
+ "content": {
14439
+ "application/json": {
14440
+ "schema": {
14441
+ "$ref": "#/components/schemas/ErrorEnvelope"
14442
+ }
14443
+ }
14444
+ }
14445
+ }
14446
+ }
14447
+ },
14448
+ "post": {
14449
+ "operationId": "analyticsIndexesRegister",
14450
+ "summary": "Declare the stored paths Memorix indexes for this agent",
14451
+ "description": "Names an object type, content type, and stored paths. No abstract. The caller's agent ids are the scope. The same definition does not scan again. A different definition needs replace: true.",
14452
+ "tags": [
14453
+ "Analytics"
14454
+ ],
14455
+ "parameters": [
14456
+ {
14457
+ "$ref": "#/components/parameters/XMemorixCaller"
14458
+ },
14459
+ {
14460
+ "$ref": "#/components/parameters/XMemorixOrgId"
14461
+ },
14462
+ {
14463
+ "$ref": "#/components/parameters/XMemorixAgentIds"
14464
+ }
14465
+ ],
14466
+ "requestBody": {
14467
+ "required": true,
14468
+ "content": {
14469
+ "application/json": {
14470
+ "schema": {
14471
+ "type": "object",
14472
+ "required": [
14473
+ "definition"
14474
+ ],
14475
+ "properties": {
14476
+ "definition": {
14477
+ "type": "object",
14478
+ "required": [
14479
+ "id",
14480
+ "objectType",
14481
+ "contentType",
14482
+ "properties"
14483
+ ],
14484
+ "properties": {
14485
+ "id": {
14486
+ "type": "string",
14487
+ "description": "Stable name for this agent set. Ids starting with @ are reserved."
14488
+ },
14489
+ "objectType": {
14490
+ "type": "string"
14491
+ },
14492
+ "contentType": {
14493
+ "type": "string"
14494
+ },
14495
+ "properties": {
14496
+ "type": "array",
14497
+ "items": {
14498
+ "type": "string"
14499
+ },
14500
+ "description": "Stored paths, such as data.responsePriority. They do not have to be declared fields."
14501
+ }
14502
+ }
14503
+ },
14504
+ "replace": {
14505
+ "type": "boolean",
14506
+ "description": "Required when this id already exists with a different definition. Rebuilds that index only."
14507
+ }
14508
+ }
14509
+ }
14510
+ }
14511
+ }
14512
+ },
14513
+ "responses": {
14514
+ "202": {
14515
+ "description": "Accepted. Backfill scans that population once, then the index stays current from writes.",
14516
+ "content": {
14517
+ "application/json": {
14518
+ "schema": {
14519
+ "type": "object",
14520
+ "required": [
14521
+ "id",
14522
+ "status",
14523
+ "index"
14524
+ ],
14525
+ "properties": {
14526
+ "id": {
14527
+ "type": "string"
14528
+ },
14529
+ "status": {
14530
+ "type": "string"
14531
+ },
14532
+ "index": {
14533
+ "$ref": "#/components/schemas/AnalyticsIndex"
14534
+ }
14535
+ }
14536
+ }
14537
+ }
14538
+ }
14539
+ },
14540
+ "400": {
14541
+ "description": "Definition invalid (error.details.issues). A body that includes abstractType is META-ANALYTICS.",
14542
+ "content": {
14543
+ "application/json": {
14544
+ "schema": {
14545
+ "$ref": "#/components/schemas/ErrorEnvelope"
14546
+ }
14547
+ }
14548
+ }
14549
+ },
14550
+ "409": {
14551
+ "description": "Definition differs without replace, or the same id belongs to another agent set",
14552
+ "content": {
14553
+ "application/json": {
14554
+ "schema": {
14555
+ "$ref": "#/components/schemas/ErrorEnvelope"
14556
+ }
14557
+ }
14558
+ }
14559
+ },
14560
+ "503": {
14561
+ "description": "Analytics unavailable",
14562
+ "content": {
14563
+ "application/json": {
14564
+ "schema": {
14565
+ "$ref": "#/components/schemas/ErrorEnvelope"
14566
+ }
14567
+ }
14568
+ }
14569
+ }
14570
+ }
14571
+ }
14572
+ },
14573
+ "/api/analytics/indexes/validate": {
14574
+ "post": {
14575
+ "operationId": "analyticsIndexesValidate",
14576
+ "summary": "Validate a property index without registering it",
14577
+ "tags": [
14578
+ "Analytics"
14579
+ ],
14580
+ "parameters": [
14581
+ {
14582
+ "$ref": "#/components/parameters/XMemorixCaller"
14583
+ },
14584
+ {
14585
+ "$ref": "#/components/parameters/XMemorixOrgId"
14586
+ },
14587
+ {
14588
+ "$ref": "#/components/parameters/XMemorixAgentIds"
14589
+ }
14590
+ ],
14591
+ "requestBody": {
14592
+ "required": true,
14593
+ "content": {
14594
+ "application/json": {
14595
+ "schema": {
14596
+ "type": "object",
14597
+ "properties": {
14598
+ "definition": {
14599
+ "type": "object",
14600
+ "additionalProperties": true
14601
+ }
14602
+ }
14603
+ }
14604
+ }
14605
+ }
14606
+ },
14607
+ "responses": {
14608
+ "200": {
14609
+ "description": "Validation result",
14610
+ "content": {
14611
+ "application/json": {
14612
+ "schema": {
14613
+ "type": "object",
14614
+ "required": [
14615
+ "ok",
14616
+ "issues"
14617
+ ],
14618
+ "properties": {
14619
+ "ok": {
14620
+ "type": "boolean"
14621
+ },
14622
+ "issues": {
14623
+ "type": "array",
14624
+ "items": {
14625
+ "type": "object",
14626
+ "additionalProperties": true
14627
+ }
14628
+ }
14629
+ }
14630
+ }
14631
+ }
14632
+ }
14633
+ },
14634
+ "503": {
14635
+ "description": "Analytics unavailable",
14636
+ "content": {
14637
+ "application/json": {
14638
+ "schema": {
14639
+ "$ref": "#/components/schemas/ErrorEnvelope"
14640
+ }
14641
+ }
14642
+ }
14643
+ }
14644
+ }
14645
+ }
14646
+ },
14647
+ "/api/analytics/indexes/{id}": {
14648
+ "get": {
14649
+ "operationId": "analyticsIndexGet",
14650
+ "summary": "One property index for the caller's agent ids",
14651
+ "tags": [
14652
+ "Analytics"
14653
+ ],
14654
+ "parameters": [
14655
+ {
14656
+ "$ref": "#/components/parameters/XMemorixCaller"
14657
+ },
14658
+ {
14659
+ "$ref": "#/components/parameters/XMemorixOrgId"
14660
+ },
14661
+ {
14662
+ "$ref": "#/components/parameters/XMemorixAgentIds"
14663
+ },
14664
+ {
14665
+ "name": "id",
14666
+ "in": "path",
14667
+ "required": true,
14668
+ "schema": {
14669
+ "type": "string"
14670
+ }
14671
+ }
14672
+ ],
14673
+ "responses": {
14674
+ "200": {
14675
+ "description": "Index",
14676
+ "content": {
14677
+ "application/json": {
14678
+ "schema": {
14679
+ "$ref": "#/components/schemas/AnalyticsIndex"
14680
+ }
14681
+ }
14682
+ }
14683
+ },
14684
+ "404": {
14685
+ "description": "Not declared for this agent set",
14686
+ "content": {
14687
+ "application/json": {
14688
+ "schema": {
14689
+ "$ref": "#/components/schemas/ErrorEnvelope"
14690
+ }
14691
+ }
14692
+ }
14693
+ },
14694
+ "503": {
14695
+ "description": "Analytics unavailable",
14696
+ "content": {
14697
+ "application/json": {
14698
+ "schema": {
14699
+ "$ref": "#/components/schemas/ErrorEnvelope"
14700
+ }
14701
+ }
14702
+ }
14703
+ }
14704
+ }
14705
+ },
14706
+ "delete": {
14707
+ "operationId": "analyticsIndexDelete",
14708
+ "summary": "Drop this agent's property index",
14709
+ "tags": [
14710
+ "Analytics"
14711
+ ],
14712
+ "parameters": [
14713
+ {
14714
+ "$ref": "#/components/parameters/XMemorixCaller"
14715
+ },
14716
+ {
14717
+ "$ref": "#/components/parameters/XMemorixOrgId"
14718
+ },
14719
+ {
14720
+ "$ref": "#/components/parameters/XMemorixAgentIds"
14721
+ },
14722
+ {
14723
+ "name": "id",
14724
+ "in": "path",
14725
+ "required": true,
14726
+ "schema": {
14727
+ "type": "string"
14728
+ }
14729
+ }
14730
+ ],
14731
+ "responses": {
14732
+ "200": {
14733
+ "description": "Removed",
14734
+ "content": {
14735
+ "application/json": {
14736
+ "schema": {
14737
+ "type": "object",
14738
+ "properties": {
14739
+ "id": {
14740
+ "type": "string"
14741
+ },
14742
+ "removed": {
14743
+ "type": "boolean"
14744
+ }
14745
+ }
14746
+ }
14747
+ }
14748
+ }
14749
+ },
14750
+ "404": {
14751
+ "description": "Not declared for this agent set",
14752
+ "content": {
14753
+ "application/json": {
14754
+ "schema": {
14755
+ "$ref": "#/components/schemas/ErrorEnvelope"
14756
+ }
14757
+ }
14758
+ }
14759
+ },
14760
+ "503": {
14761
+ "description": "Analytics unavailable",
14762
+ "content": {
14763
+ "application/json": {
14764
+ "schema": {
14765
+ "$ref": "#/components/schemas/ErrorEnvelope"
14766
+ }
14767
+ }
14768
+ }
14769
+ }
14770
+ }
14771
+ }
14772
+ },
14380
14773
  "/api/analytics/source-census": {
14381
14774
  "get": {
14382
14775
  "operationId": "analyticsSourceCensus",
@@ -16874,6 +17267,85 @@
16874
17267
  }
16875
17268
  }
16876
17269
  },
17270
+ "AnalyticsIndex": {
17271
+ "type": "object",
17272
+ "required": [
17273
+ "id",
17274
+ "objectType",
17275
+ "contentType",
17276
+ "properties",
17277
+ "status",
17278
+ "generation",
17279
+ "hash",
17280
+ "agentIds",
17281
+ "backfill"
17282
+ ],
17283
+ "properties": {
17284
+ "id": {
17285
+ "type": "string"
17286
+ },
17287
+ "objectType": {
17288
+ "type": "string"
17289
+ },
17290
+ "contentType": {
17291
+ "type": "string"
17292
+ },
17293
+ "properties": {
17294
+ "type": "array",
17295
+ "items": {
17296
+ "type": "string"
17297
+ }
17298
+ },
17299
+ "status": {
17300
+ "type": "string",
17301
+ "enum": [
17302
+ "backfilling",
17303
+ "live",
17304
+ "error"
17305
+ ]
17306
+ },
17307
+ "generation": {
17308
+ "type": "integer"
17309
+ },
17310
+ "hash": {
17311
+ "type": "string"
17312
+ },
17313
+ "agentIds": {
17314
+ "type": "array",
17315
+ "items": {
17316
+ "type": "string"
17317
+ }
17318
+ },
17319
+ "backfill": {
17320
+ "type": "object",
17321
+ "additionalProperties": true
17322
+ },
17323
+ "registeredAt": {
17324
+ "type": "string"
17325
+ },
17326
+ "registeredBy": {
17327
+ "type": [
17328
+ "string",
17329
+ "null"
17330
+ ]
17331
+ },
17332
+ "updatedAt": {
17333
+ "type": "string"
17334
+ },
17335
+ "liveAt": {
17336
+ "type": [
17337
+ "string",
17338
+ "null"
17339
+ ]
17340
+ },
17341
+ "error": {
17342
+ "type": [
17343
+ "string",
17344
+ "null"
17345
+ ]
17346
+ }
17347
+ }
17348
+ },
16877
17349
  "AnalyticsCounter": {
16878
17350
  "type": "object",
16879
17351
  "required": [
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@x12i/memorix-service",
3
- "version": "3.11.0",
3
+ "version": "3.11.1",
4
4
  "description": "Memorix production service composition root — one versioned API over accepted packages.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",