nominal-api 0.1037.0__py3-none-any.whl → 0.1056.0__py3-none-any.whl

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.

Potentially problematic release.


This version of nominal-api might be problematic. Click here for more details.

@@ -841,6 +841,15 @@
841
841
  "code" : "INTERNAL",
842
842
  "safeArgs" : [ ],
843
843
  "unsafeArgs" : [ ]
844
+ }, {
845
+ "errorName" : {
846
+ "name" : "FailedToDownloadFileUserError",
847
+ "package" : "io.nominal.ingest.api"
848
+ },
849
+ "namespace" : "IngestService",
850
+ "code" : "INVALID_ARGUMENT",
851
+ "safeArgs" : [ ],
852
+ "unsafeArgs" : [ ]
844
853
  }, {
845
854
  "errorName" : {
846
855
  "name" : "FrameCountTimestampsMismatch",
@@ -1559,6 +1568,25 @@
1559
1568
  }
1560
1569
  } ],
1561
1570
  "unsafeArgs" : [ ]
1571
+ }, {
1572
+ "errorName" : {
1573
+ "name" : "UnavailableResultConfiguration",
1574
+ "package" : "io.nominal.persistent.compute.api"
1575
+ },
1576
+ "docs" : "ResultConfiguration is incompatible with the requested compute.",
1577
+ "namespace" : "PersistentCompute",
1578
+ "code" : "INVALID_ARGUMENT",
1579
+ "safeArgs" : [ {
1580
+ "fieldName" : "reason",
1581
+ "type" : {
1582
+ "type" : "reference",
1583
+ "reference" : {
1584
+ "name" : "UnavailableResultConfigurationReason",
1585
+ "package" : "io.nominal.persistent.compute.api"
1586
+ }
1587
+ }
1588
+ } ],
1589
+ "unsafeArgs" : [ ]
1562
1590
  }, {
1563
1591
  "errorName" : {
1564
1592
  "name" : "UnsupportedGranularity",
@@ -3418,7 +3446,7 @@
3418
3446
  "name" : "TooManyCategories",
3419
3447
  "package" : "io.nominal.scout.compute.api"
3420
3448
  },
3421
- "docs" : "An enum series has more categories than the max allowed (200).",
3449
+ "docs" : "An enum series has more categories than the max allowed.",
3422
3450
  "namespace" : "Compute",
3423
3451
  "code" : "INVALID_ARGUMENT",
3424
3452
  "safeArgs" : [ {
@@ -3427,6 +3455,12 @@
3427
3455
  "type" : "primitive",
3428
3456
  "primitive" : "INTEGER"
3429
3457
  }
3458
+ }, {
3459
+ "fieldName" : "maxAllowed",
3460
+ "type" : {
3461
+ "type" : "primitive",
3462
+ "primitive" : "INTEGER"
3463
+ }
3430
3464
  } ],
3431
3465
  "unsafeArgs" : [ ]
3432
3466
  }, {
@@ -3495,6 +3529,22 @@
3495
3529
  "code" : "INVALID_ARGUMENT",
3496
3530
  "safeArgs" : [ ],
3497
3531
  "unsafeArgs" : [ ]
3532
+ }, {
3533
+ "errorName" : {
3534
+ "name" : "UnexpectedTimeout",
3535
+ "package" : "io.nominal.scout.compute.api"
3536
+ },
3537
+ "docs" : "An unexpected timeout occurred when executing a query. This indicates an internal error\nwhere the query may have succeeded but the response did not reach the client.\n",
3538
+ "namespace" : "Compute",
3539
+ "code" : "INVALID_ARGUMENT",
3540
+ "safeArgs" : [ {
3541
+ "fieldName" : "queryId",
3542
+ "type" : {
3543
+ "type" : "primitive",
3544
+ "primitive" : "UUID"
3545
+ }
3546
+ } ],
3547
+ "unsafeArgs" : [ ]
3498
3548
  }, {
3499
3549
  "errorName" : {
3500
3550
  "name" : "UnitConversionInvalid",
@@ -4345,6 +4395,15 @@
4345
4395
  "code" : "INVALID_ARGUMENT",
4346
4396
  "safeArgs" : [ ],
4347
4397
  "unsafeArgs" : [ ]
4398
+ }, {
4399
+ "errorName" : {
4400
+ "name" : "UnsupportedOperationForIntegration",
4401
+ "package" : "io.nominal.scout.integrations.api"
4402
+ },
4403
+ "namespace" : "Scout",
4404
+ "code" : "INVALID_ARGUMENT",
4405
+ "safeArgs" : [ ],
4406
+ "unsafeArgs" : [ ]
4348
4407
  }, {
4349
4408
  "errorName" : {
4350
4409
  "name" : "ArchiveNotebookFailed",
@@ -5405,6 +5464,22 @@
5405
5464
  }
5406
5465
  } ],
5407
5466
  "unsafeArgs" : [ ]
5467
+ }, {
5468
+ "errorName" : {
5469
+ "name" : "InvalidChannelSpecification",
5470
+ "package" : "io.nominal.scout.video.api"
5471
+ },
5472
+ "docs" : "Invalid channel specification (e.g., mutually exclusive parameters provided)",
5473
+ "namespace" : "Video",
5474
+ "code" : "INVALID_ARGUMENT",
5475
+ "safeArgs" : [ {
5476
+ "fieldName" : "message",
5477
+ "type" : {
5478
+ "type" : "primitive",
5479
+ "primitive" : "STRING"
5480
+ }
5481
+ } ],
5482
+ "unsafeArgs" : [ ]
5408
5483
  }, {
5409
5484
  "errorName" : {
5410
5485
  "name" : "InvalidFileShiftScaleRequest",
@@ -5459,6 +5534,112 @@
5459
5534
  }
5460
5535
  } ],
5461
5536
  "unsafeArgs" : [ ]
5537
+ }, {
5538
+ "errorName" : {
5539
+ "name" : "InvalidTags",
5540
+ "package" : "io.nominal.scout.video.api"
5541
+ },
5542
+ "docs" : "The provided tags parameter is not valid JSON",
5543
+ "namespace" : "Video",
5544
+ "code" : "INVALID_ARGUMENT",
5545
+ "safeArgs" : [ ],
5546
+ "unsafeArgs" : [ {
5547
+ "fieldName" : "tags",
5548
+ "type" : {
5549
+ "type" : "primitive",
5550
+ "primitive" : "STRING"
5551
+ }
5552
+ } ]
5553
+ }, {
5554
+ "errorName" : {
5555
+ "name" : "InvalidTimestamp",
5556
+ "package" : "io.nominal.scout.video.api"
5557
+ },
5558
+ "docs" : "The provided timestamp string is not in valid ISO-8601 format",
5559
+ "namespace" : "Video",
5560
+ "code" : "INVALID_ARGUMENT",
5561
+ "safeArgs" : [ {
5562
+ "fieldName" : "timestamp",
5563
+ "type" : {
5564
+ "type" : "primitive",
5565
+ "primitive" : "STRING"
5566
+ }
5567
+ } ],
5568
+ "unsafeArgs" : [ ]
5569
+ }, {
5570
+ "errorName" : {
5571
+ "name" : "MissingTimestampBoundPair",
5572
+ "package" : "io.nominal.scout.video.api"
5573
+ },
5574
+ "docs" : "Both start and end timestamp bounds must be provided together, or neither. Either provide both bounds or neither.",
5575
+ "namespace" : "Video",
5576
+ "code" : "INVALID_ARGUMENT",
5577
+ "safeArgs" : [ {
5578
+ "fieldName" : "hasStart",
5579
+ "type" : {
5580
+ "type" : "primitive",
5581
+ "primitive" : "BOOLEAN"
5582
+ }
5583
+ }, {
5584
+ "fieldName" : "hasEnd",
5585
+ "type" : {
5586
+ "type" : "primitive",
5587
+ "primitive" : "BOOLEAN"
5588
+ }
5589
+ } ],
5590
+ "unsafeArgs" : [ ]
5591
+ }, {
5592
+ "errorName" : {
5593
+ "name" : "NoSegmentsInBounds",
5594
+ "package" : "io.nominal.scout.video.api"
5595
+ },
5596
+ "docs" : "The requested time bounds do not overlap with any video segments.",
5597
+ "namespace" : "Video",
5598
+ "code" : "NOT_FOUND",
5599
+ "safeArgs" : [ {
5600
+ "fieldName" : "videoRid",
5601
+ "type" : {
5602
+ "type" : "reference",
5603
+ "reference" : {
5604
+ "name" : "VideoRid",
5605
+ "package" : "io.nominal.api.rids"
5606
+ }
5607
+ }
5608
+ }, {
5609
+ "fieldName" : "requestedBounds",
5610
+ "type" : {
5611
+ "type" : "reference",
5612
+ "reference" : {
5613
+ "name" : "Bounds",
5614
+ "package" : "io.nominal.scout.video.api"
5615
+ }
5616
+ }
5617
+ } ],
5618
+ "unsafeArgs" : [ ]
5619
+ }, {
5620
+ "errorName" : {
5621
+ "name" : "NotAuthorized",
5622
+ "package" : "io.nominal.scout.video.api"
5623
+ },
5624
+ "docs" : "User is not authorized to read data from the requested datasources.",
5625
+ "namespace" : "Video",
5626
+ "code" : "PERMISSION_DENIED",
5627
+ "safeArgs" : [ {
5628
+ "fieldName" : "dataSourceRids",
5629
+ "type" : {
5630
+ "type" : "set",
5631
+ "set" : {
5632
+ "itemType" : {
5633
+ "type" : "reference",
5634
+ "reference" : {
5635
+ "name" : "DataSourceRid",
5636
+ "package" : "io.nominal.api.rids"
5637
+ }
5638
+ }
5639
+ }
5640
+ }
5641
+ } ],
5642
+ "unsafeArgs" : [ ]
5462
5643
  }, {
5463
5644
  "errorName" : {
5464
5645
  "name" : "SegmentConflict",
@@ -5558,8 +5739,9 @@
5558
5739
  "name" : "VideoIngestNotComplete",
5559
5740
  "package" : "io.nominal.scout.video.api"
5560
5741
  },
5742
+ "docs" : "Video has no segments available. The video may still be processing or ingest has not started.",
5561
5743
  "namespace" : "Video",
5562
- "code" : "INVALID_ARGUMENT",
5744
+ "code" : "FAILED_PRECONDITION",
5563
5745
  "safeArgs" : [ {
5564
5746
  "fieldName" : "videoRid",
5565
5747
  "type" : {
@@ -6264,6 +6446,24 @@
6264
6446
  "value" : "VIDEO"
6265
6447
  } ]
6266
6448
  }
6449
+ }, {
6450
+ "type" : "object",
6451
+ "object" : {
6452
+ "typeName" : {
6453
+ "name" : "Deleted",
6454
+ "package" : "io.nominal.api"
6455
+ },
6456
+ "fields" : [ ]
6457
+ }
6458
+ }, {
6459
+ "type" : "object",
6460
+ "object" : {
6461
+ "typeName" : {
6462
+ "name" : "DeletionInProgress",
6463
+ "package" : "io.nominal.api"
6464
+ },
6465
+ "fields" : [ ]
6466
+ }
6267
6467
  }, {
6268
6468
  "type" : "object",
6269
6469
  "object" : {
@@ -6399,6 +6599,24 @@
6399
6599
  "package" : "io.nominal.api"
6400
6600
  }
6401
6601
  }
6602
+ }, {
6603
+ "fieldName" : "deletionInProgress",
6604
+ "type" : {
6605
+ "type" : "reference",
6606
+ "reference" : {
6607
+ "name" : "DeletionInProgress",
6608
+ "package" : "io.nominal.api"
6609
+ }
6610
+ }
6611
+ }, {
6612
+ "fieldName" : "deleted",
6613
+ "type" : {
6614
+ "type" : "reference",
6615
+ "reference" : {
6616
+ "name" : "Deleted",
6617
+ "package" : "io.nominal.api"
6618
+ }
6619
+ }
6402
6620
  } ]
6403
6621
  }
6404
6622
  }, {
@@ -7523,6 +7741,49 @@
7523
7741
  "value" : "NONE"
7524
7742
  } ]
7525
7743
  }
7744
+ }, {
7745
+ "type" : "object",
7746
+ "object" : {
7747
+ "typeName" : {
7748
+ "name" : "CoachmarkDismissal",
7749
+ "package" : "io.nominal.authentication.api"
7750
+ },
7751
+ "fields" : [ {
7752
+ "fieldName" : "coachmarkId",
7753
+ "type" : {
7754
+ "type" : "primitive",
7755
+ "primitive" : "STRING"
7756
+ },
7757
+ "docs" : "The coachmark identifier (typically the feature flag name)"
7758
+ }, {
7759
+ "fieldName" : "dismissedAt",
7760
+ "type" : {
7761
+ "type" : "primitive",
7762
+ "primitive" : "DATETIME"
7763
+ },
7764
+ "docs" : "ISO 8601 timestamp of when the coachmark was dismissed"
7765
+ }, {
7766
+ "fieldName" : "appVersion",
7767
+ "type" : {
7768
+ "type" : "primitive",
7769
+ "primitive" : "STRING"
7770
+ },
7771
+ "docs" : "The apps-scout version (semver) when the coachmark was dismissed"
7772
+ }, {
7773
+ "fieldName" : "stepIndex",
7774
+ "type" : {
7775
+ "type" : "optional",
7776
+ "optional" : {
7777
+ "itemType" : {
7778
+ "type" : "primitive",
7779
+ "primitive" : "INTEGER"
7780
+ }
7781
+ }
7782
+ },
7783
+ "docs" : "The step index when dismissed (for multi-step coachmarks).\nIf not present, the coachmark was dismissed via the X button.\n"
7784
+ } ],
7785
+ "docs" : "A record of a coachmark dismissal, including when it was dismissed\nand on which app version.\n"
7786
+ }
7526
7787
  }, {
7527
7788
  "type" : "enum",
7528
7789
  "enum" : {
@@ -7538,6 +7799,42 @@
7538
7799
  "value" : "RELATIVE"
7539
7800
  } ]
7540
7801
  }
7802
+ }, {
7803
+ "type" : "object",
7804
+ "object" : {
7805
+ "typeName" : {
7806
+ "name" : "DismissCoachmarkRequest",
7807
+ "package" : "io.nominal.authentication.api"
7808
+ },
7809
+ "fields" : [ {
7810
+ "fieldName" : "coachmarkId",
7811
+ "type" : {
7812
+ "type" : "primitive",
7813
+ "primitive" : "STRING"
7814
+ },
7815
+ "docs" : "The coachmark identifier to dismiss"
7816
+ }, {
7817
+ "fieldName" : "appVersion",
7818
+ "type" : {
7819
+ "type" : "primitive",
7820
+ "primitive" : "STRING"
7821
+ },
7822
+ "docs" : "The apps-scout version (semver) when dismissing"
7823
+ }, {
7824
+ "fieldName" : "stepIndex",
7825
+ "type" : {
7826
+ "type" : "optional",
7827
+ "optional" : {
7828
+ "itemType" : {
7829
+ "type" : "primitive",
7830
+ "primitive" : "INTEGER"
7831
+ }
7832
+ }
7833
+ },
7834
+ "docs" : "The step index when dismissed (for multi-step coachmarks)"
7835
+ } ],
7836
+ "docs" : "Request to dismiss a coachmark"
7837
+ }
7541
7838
  }, {
7542
7839
  "type" : "object",
7543
7840
  "object" : {
@@ -7580,6 +7877,62 @@
7580
7877
  } ],
7581
7878
  "docs" : "Response containing the generated MediaMTX token"
7582
7879
  }
7880
+ }, {
7881
+ "type" : "object",
7882
+ "object" : {
7883
+ "typeName" : {
7884
+ "name" : "GetCoachmarkDismissalsRequest",
7885
+ "package" : "io.nominal.authentication.api"
7886
+ },
7887
+ "fields" : [ {
7888
+ "fieldName" : "coachmarkIds",
7889
+ "type" : {
7890
+ "type" : "optional",
7891
+ "optional" : {
7892
+ "itemType" : {
7893
+ "type" : "list",
7894
+ "list" : {
7895
+ "itemType" : {
7896
+ "type" : "primitive",
7897
+ "primitive" : "STRING"
7898
+ }
7899
+ }
7900
+ }
7901
+ }
7902
+ },
7903
+ "docs" : "Optional list of coachmark IDs to filter by.\nIf empty, returns all dismissals for the user.\n"
7904
+ } ],
7905
+ "docs" : "Request to get coachmark dismissals"
7906
+ }
7907
+ }, {
7908
+ "type" : "object",
7909
+ "object" : {
7910
+ "typeName" : {
7911
+ "name" : "GetCoachmarkDismissalsResponse",
7912
+ "package" : "io.nominal.authentication.api"
7913
+ },
7914
+ "fields" : [ {
7915
+ "fieldName" : "dismissals",
7916
+ "type" : {
7917
+ "type" : "map",
7918
+ "map" : {
7919
+ "keyType" : {
7920
+ "type" : "primitive",
7921
+ "primitive" : "STRING"
7922
+ },
7923
+ "valueType" : {
7924
+ "type" : "reference",
7925
+ "reference" : {
7926
+ "name" : "CoachmarkDismissal",
7927
+ "package" : "io.nominal.authentication.api"
7928
+ }
7929
+ }
7930
+ }
7931
+ },
7932
+ "docs" : "Map of coachmark ID to dismissal record"
7933
+ } ],
7934
+ "docs" : "Response containing coachmark dismissals"
7935
+ }
7583
7936
  }, {
7584
7937
  "type" : "object",
7585
7938
  "object" : {
@@ -9066,6 +9419,86 @@
9066
9419
  "value" : "ABSOLUTE"
9067
9420
  } ]
9068
9421
  }
9422
+ }, {
9423
+ "type" : "object",
9424
+ "object" : {
9425
+ "typeName" : {
9426
+ "name" : "VideoFileMetadata",
9427
+ "package" : "io.nominal.datasource"
9428
+ },
9429
+ "fields" : [ {
9430
+ "fieldName" : "timestampManifest",
9431
+ "type" : {
9432
+ "type" : "reference",
9433
+ "reference" : {
9434
+ "name" : "VideoFileTimestampManifest",
9435
+ "package" : "io.nominal.scout.video.api"
9436
+ }
9437
+ },
9438
+ "docs" : "Specifies how to determine absolute timestamps for each frame in the video.\nCan be an embedded MCAP manifest, an external sidecar file, or calculated\nfrom a starting offset applied to presentation timestamps.\n"
9439
+ }, {
9440
+ "fieldName" : "segmentMetadata",
9441
+ "type" : {
9442
+ "type" : "optional",
9443
+ "optional" : {
9444
+ "itemType" : {
9445
+ "type" : "reference",
9446
+ "reference" : {
9447
+ "name" : "VideoSegmentsMetadata",
9448
+ "package" : "io.nominal.datasource"
9449
+ }
9450
+ }
9451
+ }
9452
+ },
9453
+ "docs" : "Cached aggregate metadata about the segments comprising this video file\nafter segmentation has completed. Includes frame counts, duration, and\nframe rate. Empty until segmentation is complete.\nNote: Min/max timestamps are stored in DatasetFile.bounds field.\nRaw file size is stored in DatasetFile.fileSizeBytes.\n"
9454
+ } ],
9455
+ "docs" : "Metadata specific to video files.\n"
9456
+ }
9457
+ }, {
9458
+ "type" : "object",
9459
+ "object" : {
9460
+ "typeName" : {
9461
+ "name" : "VideoSegmentsMetadata",
9462
+ "package" : "io.nominal.datasource"
9463
+ },
9464
+ "fields" : [ {
9465
+ "fieldName" : "numFrames",
9466
+ "type" : {
9467
+ "type" : "primitive",
9468
+ "primitive" : "INTEGER"
9469
+ },
9470
+ "docs" : "Total number of frames across all segments."
9471
+ }, {
9472
+ "fieldName" : "numSegments",
9473
+ "type" : {
9474
+ "type" : "primitive",
9475
+ "primitive" : "INTEGER"
9476
+ },
9477
+ "docs" : "Number of segments the video was split into."
9478
+ }, {
9479
+ "fieldName" : "scaleFactor",
9480
+ "type" : {
9481
+ "type" : "primitive",
9482
+ "primitive" : "DOUBLE"
9483
+ },
9484
+ "docs" : "Scale factor applied to timestamps during segmentation."
9485
+ }, {
9486
+ "fieldName" : "mediaDurationSeconds",
9487
+ "type" : {
9488
+ "type" : "primitive",
9489
+ "primitive" : "DOUBLE"
9490
+ },
9491
+ "docs" : "Total duration of the video in seconds."
9492
+ }, {
9493
+ "fieldName" : "mediaFrameRate",
9494
+ "type" : {
9495
+ "type" : "primitive",
9496
+ "primitive" : "DOUBLE"
9497
+ },
9498
+ "docs" : "Average frame rate (FPS) calculated as total frames / duration."
9499
+ } ],
9500
+ "docs" : "Segment metadata for video files.\nLightweight version that excludes bounds and RID since those are stored elsewhere.\n"
9501
+ }
9069
9502
  }, {
9070
9503
  "type" : "object",
9071
9504
  "object" : {
@@ -19881,6 +20314,23 @@
19881
20314
  },
19882
20315
  "docs" : "Unique resource identifier for a Module.\n"
19883
20316
  }
20317
+ }, {
20318
+ "type" : "object",
20319
+ "object" : {
20320
+ "typeName" : {
20321
+ "name" : "AppendOnlyConfig",
20322
+ "package" : "io.nominal.persistent.compute.api"
20323
+ },
20324
+ "fields" : [ {
20325
+ "fieldName" : "decimateResults",
20326
+ "type" : {
20327
+ "type" : "primitive",
20328
+ "primitive" : "BOOLEAN"
20329
+ },
20330
+ "docs" : "Specifies whether the returned results should be decimated.\nIf this is false, the client may receive a `SubscriptionCreationError` if the data rate is too high\nand responses must be decimated.\n"
20331
+ } ],
20332
+ "docs" : "Defines the append results from the websocket.\n"
20333
+ }
19884
20334
  }, {
19885
20335
  "type" : "object",
19886
20336
  "object" : {
@@ -20399,6 +20849,24 @@
20399
20849
  }
20400
20850
  } ]
20401
20851
  }
20852
+ }, {
20853
+ "type" : "union",
20854
+ "union" : {
20855
+ "typeName" : {
20856
+ "name" : "ResultConfiguration",
20857
+ "package" : "io.nominal.persistent.compute.api"
20858
+ },
20859
+ "union" : [ {
20860
+ "fieldName" : "appendOnly",
20861
+ "type" : {
20862
+ "type" : "reference",
20863
+ "reference" : {
20864
+ "name" : "AppendOnlyConfig",
20865
+ "package" : "io.nominal.persistent.compute.api"
20866
+ }
20867
+ }
20868
+ } ]
20869
+ }
20402
20870
  }, {
20403
20871
  "type" : "union",
20404
20872
  "union" : {
@@ -20642,7 +21110,23 @@
20642
21110
  }
20643
21111
  }
20644
21112
  },
20645
- "docs" : "Can be set to `false` by the client to indicate that it doesn't support appends for this subscription\nand always wants to receive full results. Defaults to `false` if not set.\nThe expectation is that clients should implement support for appends for any of the results covered in\n`ComputeNodeAppendResponse` and set this to `true` as quickly as possible. However, in order to support \nadding new sub-types to `ComputeNodeAppendResponse` without breaking clients that haven't upgraded yet \nand haven't yet added support for them, we default this to `false` and make clients opt-in as soon as they\nimplement support.\n"
21113
+ "docs" : "Can be set to `false` by the client to indicate that it doesn't support appends for this subscription\nand always wants to receive full results. Defaults to `false` if not set.\nThe expectation is that clients should implement support for appends for any of the results covered in\n`ComputeNodeAppendResponse` and set this to `true` as quickly as possible. However, in order to support \nadding new sub-types to `ComputeNodeAppendResponse` without breaking clients that haven't upgraded yet \nand haven't yet added support for them, we default this to `false` and make clients opt-in as soon as they\nimplement support.\n",
21114
+ "deprecated" : "Use `resultConfiguration` instead.\n"
21115
+ }, {
21116
+ "fieldName" : "resultConfiguration",
21117
+ "type" : {
21118
+ "type" : "optional",
21119
+ "optional" : {
21120
+ "itemType" : {
21121
+ "type" : "reference",
21122
+ "reference" : {
21123
+ "name" : "ResultConfiguration",
21124
+ "package" : "io.nominal.persistent.compute.api"
21125
+ }
21126
+ }
21127
+ }
21128
+ },
21129
+ "docs" : "Defines the results that are sent for this subscription. If not set, falls back to the behavior \ndefined by `allowAppends`.\n"
20646
21130
  } ]
20647
21131
  }
20648
21132
  }, {
@@ -20728,6 +21212,19 @@
20728
21212
  }
20729
21213
  } ]
20730
21214
  }
21215
+ }, {
21216
+ "type" : "enum",
21217
+ "enum" : {
21218
+ "typeName" : {
21219
+ "name" : "UnavailableResultConfigurationReason",
21220
+ "package" : "io.nominal.persistent.compute.api"
21221
+ },
21222
+ "values" : [ {
21223
+ "value" : "APPENDS_NOT_SUPPORTED_FOR_COMPUTE"
21224
+ }, {
21225
+ "value" : "TOO_MANY_POINTS_FOR_UNDECIMATED_APPENDS"
21226
+ } ]
21227
+ }
20731
21228
  }, {
20732
21229
  "type" : "object",
20733
21230
  "object" : {
@@ -22934,6 +23431,21 @@
22934
23431
  }
22935
23432
  }
22936
23433
  }
23434
+ }, {
23435
+ "fieldName" : "metadata",
23436
+ "type" : {
23437
+ "type" : "optional",
23438
+ "optional" : {
23439
+ "itemType" : {
23440
+ "type" : "reference",
23441
+ "reference" : {
23442
+ "name" : "DatasetFileMetadata",
23443
+ "package" : "io.nominal.scout.catalog"
23444
+ }
23445
+ }
23446
+ }
23447
+ },
23448
+ "docs" : "File-type-specific metadata. For video files, contains timestamp manifest.\n"
22937
23449
  } ]
22938
23450
  }
22939
23451
  }, {
@@ -23606,8 +24118,42 @@
23606
24118
  }
23607
24119
  },
23608
24120
  "docs" : "Timestamp that the file is deleted at, only present if the file has been deleted.\n"
24121
+ }, {
24122
+ "fieldName" : "metadata",
24123
+ "type" : {
24124
+ "type" : "optional",
24125
+ "optional" : {
24126
+ "itemType" : {
24127
+ "type" : "reference",
24128
+ "reference" : {
24129
+ "name" : "DatasetFileMetadata",
24130
+ "package" : "io.nominal.scout.catalog"
24131
+ }
24132
+ }
24133
+ }
24134
+ },
24135
+ "docs" : "File-type-specific metadata. For video files, contains timestamp manifest and segment metadata.\n"
23609
24136
  } ]
23610
24137
  }
24138
+ }, {
24139
+ "type" : "union",
24140
+ "union" : {
24141
+ "typeName" : {
24142
+ "name" : "DatasetFileMetadata",
24143
+ "package" : "io.nominal.scout.catalog"
24144
+ },
24145
+ "union" : [ {
24146
+ "fieldName" : "video",
24147
+ "type" : {
24148
+ "type" : "reference",
24149
+ "reference" : {
24150
+ "name" : "VideoFileMetadata",
24151
+ "package" : "io.nominal.datasource"
24152
+ }
24153
+ }
24154
+ } ],
24155
+ "docs" : "Metadata specific to different file types stored in datasets.\n"
24156
+ }
23611
24157
  }, {
23612
24158
  "type" : "enum",
23613
24159
  "enum" : {
@@ -24188,6 +24734,10 @@
24188
24734
  "value" : "COMPLETED"
24189
24735
  }, {
24190
24736
  "value" : "FAILED"
24737
+ }, {
24738
+ "value" : "DELETION_IN_PROGRESS"
24739
+ }, {
24740
+ "value" : "DELETED"
24191
24741
  } ]
24192
24742
  }
24193
24743
  }, {
@@ -37704,24 +38254,6 @@
37704
38254
  }
37705
38255
  } ]
37706
38256
  }
37707
- }, {
37708
- "type" : "union",
37709
- "union" : {
37710
- "typeName" : {
37711
- "name" : "BucketedGeoPlot",
37712
- "package" : "io.nominal.scout.compute.api"
37713
- },
37714
- "union" : [ {
37715
- "fieldName" : "timeBased",
37716
- "type" : {
37717
- "type" : "reference",
37718
- "reference" : {
37719
- "name" : "TimeBucketedGeoPlot",
37720
- "package" : "io.nominal.scout.compute.api"
37721
- }
37722
- }
37723
- } ]
37724
- }
37725
38257
  }, {
37726
38258
  "type" : "object",
37727
38259
  "object" : {
@@ -38421,15 +38953,6 @@
38421
38953
  "package" : "io.nominal.scout.compute.api"
38422
38954
  }
38423
38955
  }
38424
- }, {
38425
- "fieldName" : "geo",
38426
- "type" : {
38427
- "type" : "reference",
38428
- "reference" : {
38429
- "name" : "SummarizeGeo",
38430
- "package" : "io.nominal.scout.compute.api"
38431
- }
38432
- }
38433
38956
  }, {
38434
38957
  "fieldName" : "curve",
38435
38958
  "type" : {
@@ -38818,15 +39341,6 @@
38818
39341
  "package" : "io.nominal.scout.compute.api"
38819
39342
  }
38820
39343
  }
38821
- }, {
38822
- "fieldName" : "bucketedGeo",
38823
- "type" : {
38824
- "type" : "reference",
38825
- "reference" : {
38826
- "name" : "BucketedGeoPlot",
38827
- "package" : "io.nominal.scout.compute.api"
38828
- }
38829
- }
38830
39344
  }, {
38831
39345
  "fieldName" : "frequencyDomain",
38832
39346
  "type" : {
@@ -41565,155 +42079,6 @@
41565
42079
  }
41566
42080
  } ]
41567
42081
  }
41568
- }, {
41569
- "type" : "union",
41570
- "union" : {
41571
- "typeName" : {
41572
- "name" : "GeoPoint",
41573
- "package" : "io.nominal.scout.compute.api"
41574
- },
41575
- "union" : [ {
41576
- "fieldName" : "latLong",
41577
- "type" : {
41578
- "type" : "reference",
41579
- "reference" : {
41580
- "name" : "LatLongPoint",
41581
- "package" : "io.nominal.scout.compute.api"
41582
- }
41583
- }
41584
- } ],
41585
- "docs" : "Represents a geographic point. Flexible to handle multiple types of geographic coordinate systems.\n"
41586
- }
41587
- }, {
41588
- "type" : "object",
41589
- "object" : {
41590
- "typeName" : {
41591
- "name" : "GeoPointWithTimestamp",
41592
- "package" : "io.nominal.scout.compute.api"
41593
- },
41594
- "fields" : [ {
41595
- "fieldName" : "timestamp",
41596
- "type" : {
41597
- "type" : "reference",
41598
- "reference" : {
41599
- "name" : "Timestamp",
41600
- "package" : "io.nominal.api"
41601
- }
41602
- }
41603
- }, {
41604
- "fieldName" : "value",
41605
- "type" : {
41606
- "type" : "reference",
41607
- "reference" : {
41608
- "name" : "GeoPoint",
41609
- "package" : "io.nominal.scout.compute.api"
41610
- }
41611
- }
41612
- } ]
41613
- }
41614
- }, {
41615
- "type" : "union",
41616
- "union" : {
41617
- "typeName" : {
41618
- "name" : "GeoSeries",
41619
- "package" : "io.nominal.scout.compute.api"
41620
- },
41621
- "union" : [ {
41622
- "fieldName" : "latLongGeoNode",
41623
- "type" : {
41624
- "type" : "reference",
41625
- "reference" : {
41626
- "name" : "LatLongGeo",
41627
- "package" : "io.nominal.scout.compute.api"
41628
- }
41629
- }
41630
- } ]
41631
- }
41632
- }, {
41633
- "type" : "union",
41634
- "union" : {
41635
- "typeName" : {
41636
- "name" : "GeoSummaryStrategy",
41637
- "package" : "io.nominal.scout.compute.api"
41638
- },
41639
- "union" : [ {
41640
- "fieldName" : "temporal",
41641
- "type" : {
41642
- "type" : "reference",
41643
- "reference" : {
41644
- "name" : "GeoTemporalSummary",
41645
- "package" : "io.nominal.scout.compute.api"
41646
- }
41647
- }
41648
- } ]
41649
- }
41650
- }, {
41651
- "type" : "object",
41652
- "object" : {
41653
- "typeName" : {
41654
- "name" : "GeoTemporalSummary",
41655
- "package" : "io.nominal.scout.compute.api"
41656
- },
41657
- "fields" : [ {
41658
- "fieldName" : "resolution",
41659
- "type" : {
41660
- "type" : "primitive",
41661
- "primitive" : "SAFELONG"
41662
- }
41663
- } ]
41664
- }
41665
- }, {
41666
- "type" : "object",
41667
- "object" : {
41668
- "typeName" : {
41669
- "name" : "GeoTimeBucket",
41670
- "package" : "io.nominal.scout.compute.api"
41671
- },
41672
- "fields" : [ {
41673
- "fieldName" : "mean",
41674
- "type" : {
41675
- "type" : "reference",
41676
- "reference" : {
41677
- "name" : "GeoPoint",
41678
- "package" : "io.nominal.scout.compute.api"
41679
- }
41680
- },
41681
- "docs" : "The mean value of the GeoPoints in the bucket."
41682
- }, {
41683
- "fieldName" : "count",
41684
- "type" : {
41685
- "type" : "primitive",
41686
- "primitive" : "SAFELONG"
41687
- },
41688
- "docs" : "The number of GeoPoints in the bucket."
41689
- }, {
41690
- "fieldName" : "firstPoint",
41691
- "type" : {
41692
- "type" : "reference",
41693
- "reference" : {
41694
- "name" : "GeoPointWithTimestamp",
41695
- "package" : "io.nominal.scout.compute.api"
41696
- }
41697
- },
41698
- "docs" : "The first GeoPoint in the bucket."
41699
- }, {
41700
- "fieldName" : "lastPoint",
41701
- "type" : {
41702
- "type" : "optional",
41703
- "optional" : {
41704
- "itemType" : {
41705
- "type" : "reference",
41706
- "reference" : {
41707
- "name" : "GeoPointWithTimestamp",
41708
- "package" : "io.nominal.scout.compute.api"
41709
- }
41710
- }
41711
- }
41712
- },
41713
- "docs" : "The last GeoPoint in the bucket. Will be empty if the bucket only has a single point."
41714
- } ],
41715
- "docs" : "Summary of a time-based bucket of geo points."
41716
- }
41717
42082
  }, {
41718
42083
  "type" : "object",
41719
42084
  "object" : {
@@ -41993,76 +42358,6 @@
41993
42358
  } ],
41994
42359
  "docs" : "The FE should try to pass in inputs in the order in which they should be\nevaluated for optimization's sake. Alternatively, we can let the user select\npreconditions which they know to be cheaper to compute, which we will evaluate\nfirst.\n"
41995
42360
  }
41996
- }, {
41997
- "type" : "object",
41998
- "object" : {
41999
- "typeName" : {
42000
- "name" : "LatLongBounds",
42001
- "package" : "io.nominal.scout.compute.api"
42002
- },
42003
- "fields" : [ {
42004
- "fieldName" : "southWest",
42005
- "type" : {
42006
- "type" : "reference",
42007
- "reference" : {
42008
- "name" : "LatLongPoint",
42009
- "package" : "io.nominal.scout.compute.api"
42010
- }
42011
- }
42012
- }, {
42013
- "fieldName" : "northEast",
42014
- "type" : {
42015
- "type" : "reference",
42016
- "reference" : {
42017
- "name" : "LatLongPoint",
42018
- "package" : "io.nominal.scout.compute.api"
42019
- }
42020
- }
42021
- } ],
42022
- "docs" : "The bounds of a lat long geographic area. Represented by the southwest and northeast corners \nof a rectangle, inclusive.\n"
42023
- }
42024
- }, {
42025
- "type" : "object",
42026
- "object" : {
42027
- "typeName" : {
42028
- "name" : "LatLongGeo",
42029
- "package" : "io.nominal.scout.compute.api"
42030
- },
42031
- "fields" : [ {
42032
- "fieldName" : "latitude",
42033
- "type" : {
42034
- "type" : "reference",
42035
- "reference" : {
42036
- "name" : "NumericSeries",
42037
- "package" : "io.nominal.scout.compute.api"
42038
- }
42039
- }
42040
- }, {
42041
- "fieldName" : "longitude",
42042
- "type" : {
42043
- "type" : "reference",
42044
- "reference" : {
42045
- "name" : "NumericSeries",
42046
- "package" : "io.nominal.scout.compute.api"
42047
- }
42048
- }
42049
- }, {
42050
- "fieldName" : "bounds",
42051
- "type" : {
42052
- "type" : "optional",
42053
- "optional" : {
42054
- "itemType" : {
42055
- "type" : "reference",
42056
- "reference" : {
42057
- "name" : "LatLongBounds",
42058
- "package" : "io.nominal.scout.compute.api"
42059
- }
42060
- }
42061
- }
42062
- }
42063
- } ],
42064
- "docs" : "A geo node derived from a lat and long series."
42065
- }
42066
42361
  }, {
42067
42362
  "type" : "object",
42068
42363
  "object" : {
@@ -47114,33 +47409,6 @@
47114
47409
  "docs" : "The strategy to use when summarizing the series. Only spatial decimation is supported.\n"
47115
47410
  } ]
47116
47411
  }
47117
- }, {
47118
- "type" : "object",
47119
- "object" : {
47120
- "typeName" : {
47121
- "name" : "SummarizeGeo",
47122
- "package" : "io.nominal.scout.compute.api"
47123
- },
47124
- "fields" : [ {
47125
- "fieldName" : "input",
47126
- "type" : {
47127
- "type" : "reference",
47128
- "reference" : {
47129
- "name" : "GeoSeries",
47130
- "package" : "io.nominal.scout.compute.api"
47131
- }
47132
- }
47133
- }, {
47134
- "fieldName" : "summaryStrategy",
47135
- "type" : {
47136
- "type" : "reference",
47137
- "reference" : {
47138
- "name" : "GeoSummaryStrategy",
47139
- "package" : "io.nominal.scout.compute.api"
47140
- }
47141
- }
47142
- } ]
47143
- }
47144
47412
  }, {
47145
47413
  "type" : "object",
47146
47414
  "object" : {
@@ -47512,44 +47780,6 @@
47512
47780
  } ],
47513
47781
  "docs" : "Produces a list of ranges for which the threshold condition is satisfied.\n"
47514
47782
  }
47515
- }, {
47516
- "type" : "object",
47517
- "object" : {
47518
- "typeName" : {
47519
- "name" : "TimeBucketedGeoPlot",
47520
- "package" : "io.nominal.scout.compute.api"
47521
- },
47522
- "fields" : [ {
47523
- "fieldName" : "timestamps",
47524
- "type" : {
47525
- "type" : "list",
47526
- "list" : {
47527
- "itemType" : {
47528
- "type" : "reference",
47529
- "reference" : {
47530
- "name" : "Timestamp",
47531
- "package" : "io.nominal.api"
47532
- }
47533
- }
47534
- }
47535
- },
47536
- "docs" : "The end of the bucket, exclusive."
47537
- }, {
47538
- "fieldName" : "buckets",
47539
- "type" : {
47540
- "type" : "list",
47541
- "list" : {
47542
- "itemType" : {
47543
- "type" : "reference",
47544
- "reference" : {
47545
- "name" : "GeoTimeBucket",
47546
- "package" : "io.nominal.scout.compute.api"
47547
- }
47548
- }
47549
- }
47550
- }
47551
- } ]
47552
- }
47553
47783
  }, {
47554
47784
  "type" : "object",
47555
47785
  "object" : {
@@ -51489,57 +51719,6 @@
51489
51719
  }
51490
51720
  } ]
51491
51721
  }
51492
- }, {
51493
- "type" : "union",
51494
- "union" : {
51495
- "typeName" : {
51496
- "name" : "GeoNode",
51497
- "package" : "io.nominal.scout.compute.resolved.api"
51498
- },
51499
- "union" : [ {
51500
- "fieldName" : "latLongGeoNode",
51501
- "type" : {
51502
- "type" : "reference",
51503
- "reference" : {
51504
- "name" : "LatLongGeoNode",
51505
- "package" : "io.nominal.scout.compute.resolved.api"
51506
- }
51507
- }
51508
- } ]
51509
- }
51510
- }, {
51511
- "type" : "union",
51512
- "union" : {
51513
- "typeName" : {
51514
- "name" : "GeoNodeSummaryStrategy",
51515
- "package" : "io.nominal.scout.compute.resolved.api"
51516
- },
51517
- "union" : [ {
51518
- "fieldName" : "temporal",
51519
- "type" : {
51520
- "type" : "reference",
51521
- "reference" : {
51522
- "name" : "GeoNodeTemporalSummary",
51523
- "package" : "io.nominal.scout.compute.resolved.api"
51524
- }
51525
- }
51526
- } ]
51527
- }
51528
- }, {
51529
- "type" : "object",
51530
- "object" : {
51531
- "typeName" : {
51532
- "name" : "GeoNodeTemporalSummary",
51533
- "package" : "io.nominal.scout.compute.resolved.api"
51534
- },
51535
- "fields" : [ {
51536
- "fieldName" : "resolution",
51537
- "type" : {
51538
- "type" : "primitive",
51539
- "primitive" : "SAFELONG"
51540
- }
51541
- } ]
51542
- }
51543
51722
  }, {
51544
51723
  "type" : "object",
51545
51724
  "object" : {
@@ -51664,74 +51843,6 @@
51664
51843
  }
51665
51844
  } ]
51666
51845
  }
51667
- }, {
51668
- "type" : "object",
51669
- "object" : {
51670
- "typeName" : {
51671
- "name" : "LatLongBounds",
51672
- "package" : "io.nominal.scout.compute.resolved.api"
51673
- },
51674
- "fields" : [ {
51675
- "fieldName" : "southWest",
51676
- "type" : {
51677
- "type" : "reference",
51678
- "reference" : {
51679
- "name" : "LatLongPoint",
51680
- "package" : "io.nominal.scout.compute.api"
51681
- }
51682
- }
51683
- }, {
51684
- "fieldName" : "northEast",
51685
- "type" : {
51686
- "type" : "reference",
51687
- "reference" : {
51688
- "name" : "LatLongPoint",
51689
- "package" : "io.nominal.scout.compute.api"
51690
- }
51691
- }
51692
- } ]
51693
- }
51694
- }, {
51695
- "type" : "object",
51696
- "object" : {
51697
- "typeName" : {
51698
- "name" : "LatLongGeoNode",
51699
- "package" : "io.nominal.scout.compute.resolved.api"
51700
- },
51701
- "fields" : [ {
51702
- "fieldName" : "latitude",
51703
- "type" : {
51704
- "type" : "reference",
51705
- "reference" : {
51706
- "name" : "NumericSeriesNode",
51707
- "package" : "io.nominal.scout.compute.resolved.api"
51708
- }
51709
- }
51710
- }, {
51711
- "fieldName" : "longitude",
51712
- "type" : {
51713
- "type" : "reference",
51714
- "reference" : {
51715
- "name" : "NumericSeriesNode",
51716
- "package" : "io.nominal.scout.compute.resolved.api"
51717
- }
51718
- }
51719
- }, {
51720
- "fieldName" : "bounds",
51721
- "type" : {
51722
- "type" : "optional",
51723
- "optional" : {
51724
- "itemType" : {
51725
- "type" : "reference",
51726
- "reference" : {
51727
- "name" : "LatLongBounds",
51728
- "package" : "io.nominal.scout.compute.resolved.api"
51729
- }
51730
- }
51731
- }
51732
- }
51733
- } ]
51734
- }
51735
51846
  }, {
51736
51847
  "type" : "object",
51737
51848
  "object" : {
@@ -53660,15 +53771,6 @@
53660
53771
  "package" : "io.nominal.scout.compute.resolved.api"
53661
53772
  }
53662
53773
  }
53663
- }, {
53664
- "fieldName" : "geo",
53665
- "type" : {
53666
- "type" : "reference",
53667
- "reference" : {
53668
- "name" : "SummarizeGeoNode",
53669
- "package" : "io.nominal.scout.compute.resolved.api"
53670
- }
53671
- }
53672
53774
  }, {
53673
53775
  "fieldName" : "curve",
53674
53776
  "type" : {
@@ -54547,33 +54649,6 @@
54547
54649
  }
54548
54650
  } ]
54549
54651
  }
54550
- }, {
54551
- "type" : "object",
54552
- "object" : {
54553
- "typeName" : {
54554
- "name" : "SummarizeGeoNode",
54555
- "package" : "io.nominal.scout.compute.resolved.api"
54556
- },
54557
- "fields" : [ {
54558
- "fieldName" : "input",
54559
- "type" : {
54560
- "type" : "reference",
54561
- "reference" : {
54562
- "name" : "GeoNode",
54563
- "package" : "io.nominal.scout.compute.resolved.api"
54564
- }
54565
- }
54566
- }, {
54567
- "fieldName" : "summaryStrategy",
54568
- "type" : {
54569
- "type" : "reference",
54570
- "reference" : {
54571
- "name" : "GeoNodeSummaryStrategy",
54572
- "package" : "io.nominal.scout.compute.resolved.api"
54573
- }
54574
- }
54575
- } ]
54576
- }
54577
54652
  }, {
54578
54653
  "type" : "object",
54579
54654
  "object" : {
@@ -60042,6 +60117,43 @@
60042
60117
  }
60043
60118
  } ]
60044
60119
  }
60120
+ }, {
60121
+ "type" : "object",
60122
+ "object" : {
60123
+ "typeName" : {
60124
+ "name" : "ListConnectionsResponse",
60125
+ "package" : "io.nominal.scout.datasource.connection.api"
60126
+ },
60127
+ "fields" : [ {
60128
+ "fieldName" : "connections",
60129
+ "type" : {
60130
+ "type" : "list",
60131
+ "list" : {
60132
+ "itemType" : {
60133
+ "type" : "reference",
60134
+ "reference" : {
60135
+ "name" : "Connection",
60136
+ "package" : "io.nominal.scout.datasource.connection.api"
60137
+ }
60138
+ }
60139
+ }
60140
+ }
60141
+ }, {
60142
+ "fieldName" : "nextPageToken",
60143
+ "type" : {
60144
+ "type" : "optional",
60145
+ "optional" : {
60146
+ "itemType" : {
60147
+ "type" : "reference",
60148
+ "reference" : {
60149
+ "name" : "Token",
60150
+ "package" : "io.nominal.api"
60151
+ }
60152
+ }
60153
+ }
60154
+ }
60155
+ } ]
60156
+ }
60045
60157
  }, {
60046
60158
  "type" : "alias",
60047
60159
  "alias" : {
@@ -61147,6 +61259,137 @@
61147
61259
  "docs" : "The resources to set as the user's favorites. Note that the provided list will overwrite \nall the user's previous favorites.\n"
61148
61260
  } ]
61149
61261
  }
61262
+ }, {
61263
+ "type" : "object",
61264
+ "object" : {
61265
+ "typeName" : {
61266
+ "name" : "AlertMessageFields",
61267
+ "package" : "io.nominal.scout.integrations.api"
61268
+ },
61269
+ "fields" : [ {
61270
+ "fieldName" : "assetTitle",
61271
+ "type" : {
61272
+ "type" : "primitive",
61273
+ "primitive" : "STRING"
61274
+ }
61275
+ }, {
61276
+ "fieldName" : "checkTitle",
61277
+ "type" : {
61278
+ "type" : "primitive",
61279
+ "primitive" : "STRING"
61280
+ }
61281
+ }, {
61282
+ "fieldName" : "checkDescription",
61283
+ "type" : {
61284
+ "type" : "primitive",
61285
+ "primitive" : "STRING"
61286
+ }
61287
+ }, {
61288
+ "fieldName" : "checklistTitle",
61289
+ "type" : {
61290
+ "type" : "primitive",
61291
+ "primitive" : "STRING"
61292
+ }
61293
+ }, {
61294
+ "fieldName" : "assetRid",
61295
+ "type" : {
61296
+ "type" : "reference",
61297
+ "reference" : {
61298
+ "name" : "AssetRid",
61299
+ "package" : "io.nominal.scout.rids.api"
61300
+ }
61301
+ }
61302
+ }, {
61303
+ "fieldName" : "checkLineageRid",
61304
+ "type" : {
61305
+ "type" : "reference",
61306
+ "reference" : {
61307
+ "name" : "CheckLineageRid",
61308
+ "package" : "io.nominal.scout.rids.api"
61309
+ }
61310
+ }
61311
+ }, {
61312
+ "fieldName" : "workbookUrl",
61313
+ "type" : {
61314
+ "type" : "optional",
61315
+ "optional" : {
61316
+ "itemType" : {
61317
+ "type" : "primitive",
61318
+ "primitive" : "STRING"
61319
+ }
61320
+ }
61321
+ },
61322
+ "docs" : "Appended to the end of the message as a button (if supported) or as a text hyperlink."
61323
+ }, {
61324
+ "fieldName" : "alertUrl",
61325
+ "type" : {
61326
+ "type" : "optional",
61327
+ "optional" : {
61328
+ "itemType" : {
61329
+ "type" : "primitive",
61330
+ "primitive" : "STRING"
61331
+ }
61332
+ }
61333
+ },
61334
+ "docs" : "Appended to the end of the message as a button (if supported) or as a text hyperlink."
61335
+ }, {
61336
+ "fieldName" : "eventType",
61337
+ "type" : {
61338
+ "type" : "reference",
61339
+ "reference" : {
61340
+ "name" : "EventType",
61341
+ "package" : "io.nominal.event"
61342
+ }
61343
+ },
61344
+ "docs" : "Will be prefixed in title and indicated by an icon."
61345
+ }, {
61346
+ "fieldName" : "priority",
61347
+ "type" : {
61348
+ "type" : "reference",
61349
+ "reference" : {
61350
+ "name" : "Priority",
61351
+ "package" : "io.nominal.scout.api"
61352
+ }
61353
+ }
61354
+ }, {
61355
+ "fieldName" : "labels",
61356
+ "type" : {
61357
+ "type" : "list",
61358
+ "list" : {
61359
+ "itemType" : {
61360
+ "type" : "primitive",
61361
+ "primitive" : "STRING"
61362
+ }
61363
+ }
61364
+ },
61365
+ "docs" : "Currently exposed as 'tags' on the frontend to match Opsgenie naming. Used by some integrations to filter/route messages."
61366
+ }, {
61367
+ "fieldName" : "alertType",
61368
+ "type" : {
61369
+ "type" : "reference",
61370
+ "reference" : {
61371
+ "name" : "AlertType",
61372
+ "package" : "io.nominal.scout.integrations.api"
61373
+ }
61374
+ },
61375
+ "docs" : "Determines execution status of the alert, between success, failure, and execution error."
61376
+ } ]
61377
+ }
61378
+ }, {
61379
+ "type" : "enum",
61380
+ "enum" : {
61381
+ "typeName" : {
61382
+ "name" : "AlertType",
61383
+ "package" : "io.nominal.scout.integrations.api"
61384
+ },
61385
+ "values" : [ {
61386
+ "value" : "INVALID"
61387
+ }, {
61388
+ "value" : "FAILURE"
61389
+ }, {
61390
+ "value" : "RECOVERY"
61391
+ } ]
61392
+ }
61150
61393
  }, {
61151
61394
  "type" : "union",
61152
61395
  "union" : {
@@ -61172,6 +61415,24 @@
61172
61415
  "package" : "io.nominal.scout.integrations.api"
61173
61416
  }
61174
61417
  }
61418
+ }, {
61419
+ "fieldName" : "createTeamsWebhookIntegrationDetails",
61420
+ "type" : {
61421
+ "type" : "reference",
61422
+ "reference" : {
61423
+ "name" : "CreateTeamsWebhookIntegrationDetails",
61424
+ "package" : "io.nominal.scout.integrations.api"
61425
+ }
61426
+ }
61427
+ }, {
61428
+ "fieldName" : "createPagerDutyIntegrationDetails",
61429
+ "type" : {
61430
+ "type" : "reference",
61431
+ "reference" : {
61432
+ "name" : "CreatePagerDutyIntegrationDetails",
61433
+ "package" : "io.nominal.scout.integrations.api"
61434
+ }
61435
+ }
61175
61436
  } ]
61176
61437
  }
61177
61438
  }, {
@@ -61248,6 +61509,21 @@
61248
61509
  }
61249
61510
  } ]
61250
61511
  }
61512
+ }, {
61513
+ "type" : "object",
61514
+ "object" : {
61515
+ "typeName" : {
61516
+ "name" : "CreatePagerDutyIntegrationDetails",
61517
+ "package" : "io.nominal.scout.integrations.api"
61518
+ },
61519
+ "fields" : [ {
61520
+ "fieldName" : "routingKey",
61521
+ "type" : {
61522
+ "type" : "primitive",
61523
+ "primitive" : "STRING"
61524
+ }
61525
+ } ]
61526
+ }
61251
61527
  }, {
61252
61528
  "type" : "object",
61253
61529
  "object" : {
@@ -61263,6 +61539,21 @@
61263
61539
  }
61264
61540
  } ]
61265
61541
  }
61542
+ }, {
61543
+ "type" : "object",
61544
+ "object" : {
61545
+ "typeName" : {
61546
+ "name" : "CreateTeamsWebhookIntegrationDetails",
61547
+ "package" : "io.nominal.scout.integrations.api"
61548
+ },
61549
+ "fields" : [ {
61550
+ "fieldName" : "webhook",
61551
+ "type" : {
61552
+ "type" : "primitive",
61553
+ "primitive" : "STRING"
61554
+ }
61555
+ } ]
61556
+ }
61266
61557
  }, {
61267
61558
  "type" : "object",
61268
61559
  "object" : {
@@ -61375,6 +61666,24 @@
61375
61666
  "package" : "io.nominal.scout.integrations.api"
61376
61667
  }
61377
61668
  }
61669
+ }, {
61670
+ "fieldName" : "teamsWebhookIntegration",
61671
+ "type" : {
61672
+ "type" : "reference",
61673
+ "reference" : {
61674
+ "name" : "TeamsWebhookIntegration",
61675
+ "package" : "io.nominal.scout.integrations.api"
61676
+ }
61677
+ }
61678
+ }, {
61679
+ "fieldName" : "pagerDutyIntegration",
61680
+ "type" : {
61681
+ "type" : "reference",
61682
+ "reference" : {
61683
+ "name" : "PagerDutyIntegration",
61684
+ "package" : "io.nominal.scout.integrations.api"
61685
+ }
61686
+ }
61378
61687
  } ]
61379
61688
  }
61380
61689
  }, {
@@ -61389,6 +61698,60 @@
61389
61698
  "primitive" : "RID"
61390
61699
  }
61391
61700
  }
61701
+ }, {
61702
+ "type" : "object",
61703
+ "object" : {
61704
+ "typeName" : {
61705
+ "name" : "InternalSendMessageRequest",
61706
+ "package" : "io.nominal.scout.integrations.api"
61707
+ },
61708
+ "fields" : [ {
61709
+ "fieldName" : "integrationRid",
61710
+ "type" : {
61711
+ "type" : "reference",
61712
+ "reference" : {
61713
+ "name" : "IntegrationRid",
61714
+ "package" : "io.nominal.scout.integrations.api"
61715
+ }
61716
+ }
61717
+ }, {
61718
+ "fieldName" : "message",
61719
+ "type" : {
61720
+ "type" : "reference",
61721
+ "reference" : {
61722
+ "name" : "MessageFields",
61723
+ "package" : "io.nominal.scout.integrations.api"
61724
+ }
61725
+ }
61726
+ } ]
61727
+ }
61728
+ }, {
61729
+ "type" : "union",
61730
+ "union" : {
61731
+ "typeName" : {
61732
+ "name" : "MessageFields",
61733
+ "package" : "io.nominal.scout.integrations.api"
61734
+ },
61735
+ "union" : [ {
61736
+ "fieldName" : "alert",
61737
+ "type" : {
61738
+ "type" : "reference",
61739
+ "reference" : {
61740
+ "name" : "AlertMessageFields",
61741
+ "package" : "io.nominal.scout.integrations.api"
61742
+ }
61743
+ }
61744
+ }, {
61745
+ "fieldName" : "resolutionError",
61746
+ "type" : {
61747
+ "type" : "reference",
61748
+ "reference" : {
61749
+ "name" : "ResolutionFailureMessageFields",
61750
+ "package" : "io.nominal.scout.integrations.api"
61751
+ }
61752
+ }
61753
+ } ]
61754
+ }
61392
61755
  }, {
61393
61756
  "type" : "object",
61394
61757
  "object" : {
@@ -61499,6 +61862,78 @@
61499
61862
  } ],
61500
61863
  "docs" : "Opsgenie region for the account linked to the provided API key.\n"
61501
61864
  }
61865
+ }, {
61866
+ "type" : "object",
61867
+ "object" : {
61868
+ "typeName" : {
61869
+ "name" : "PagerDutyIntegration",
61870
+ "package" : "io.nominal.scout.integrations.api"
61871
+ },
61872
+ "fields" : [ ]
61873
+ }
61874
+ }, {
61875
+ "type" : "object",
61876
+ "object" : {
61877
+ "typeName" : {
61878
+ "name" : "ResolutionFailureMessageFields",
61879
+ "package" : "io.nominal.scout.integrations.api"
61880
+ },
61881
+ "fields" : [ {
61882
+ "fieldName" : "checklistTitle",
61883
+ "type" : {
61884
+ "type" : "primitive",
61885
+ "primitive" : "STRING"
61886
+ }
61887
+ }, {
61888
+ "fieldName" : "assetTitle",
61889
+ "type" : {
61890
+ "type" : "primitive",
61891
+ "primitive" : "STRING"
61892
+ }
61893
+ }, {
61894
+ "fieldName" : "checklistRid",
61895
+ "type" : {
61896
+ "type" : "reference",
61897
+ "reference" : {
61898
+ "name" : "ChecklistRid",
61899
+ "package" : "io.nominal.scout.rids.api"
61900
+ }
61901
+ }
61902
+ }, {
61903
+ "fieldName" : "assetRid",
61904
+ "type" : {
61905
+ "type" : "reference",
61906
+ "reference" : {
61907
+ "name" : "AssetRid",
61908
+ "package" : "io.nominal.scout.rids.api"
61909
+ }
61910
+ }
61911
+ }, {
61912
+ "fieldName" : "unresolvedChecks",
61913
+ "type" : {
61914
+ "type" : "primitive",
61915
+ "primitive" : "INTEGER"
61916
+ }
61917
+ }, {
61918
+ "fieldName" : "totalChecks",
61919
+ "type" : {
61920
+ "type" : "primitive",
61921
+ "primitive" : "INTEGER"
61922
+ }
61923
+ }, {
61924
+ "fieldName" : "labels",
61925
+ "type" : {
61926
+ "type" : "list",
61927
+ "list" : {
61928
+ "itemType" : {
61929
+ "type" : "primitive",
61930
+ "primitive" : "STRING"
61931
+ }
61932
+ }
61933
+ },
61934
+ "docs" : "Currently exposed as 'tags' on the frontend to match Opsgenie naming. Used by some integrations to filter/route messages."
61935
+ } ]
61936
+ }
61502
61937
  }, {
61503
61938
  "type" : "object",
61504
61939
  "object" : {
@@ -61636,6 +62071,15 @@
61636
62071
  }
61637
62072
  } ]
61638
62073
  }
62074
+ }, {
62075
+ "type" : "object",
62076
+ "object" : {
62077
+ "typeName" : {
62078
+ "name" : "TeamsWebhookIntegration",
62079
+ "package" : "io.nominal.scout.integrations.api"
62080
+ },
62081
+ "fields" : [ ]
62082
+ }
61639
62083
  }, {
61640
62084
  "type" : "union",
61641
62085
  "union" : {
@@ -61661,6 +62105,24 @@
61661
62105
  "package" : "io.nominal.scout.integrations.api"
61662
62106
  }
61663
62107
  }
62108
+ }, {
62109
+ "fieldName" : "teamsWebhook",
62110
+ "type" : {
62111
+ "type" : "reference",
62112
+ "reference" : {
62113
+ "name" : "UpdateTeamsWebhookIntegrationDetails",
62114
+ "package" : "io.nominal.scout.integrations.api"
62115
+ }
62116
+ }
62117
+ }, {
62118
+ "fieldName" : "pagerDuty",
62119
+ "type" : {
62120
+ "type" : "reference",
62121
+ "reference" : {
62122
+ "name" : "UpdatePagerDutyIntegrationDetails",
62123
+ "package" : "io.nominal.scout.integrations.api"
62124
+ }
62125
+ }
61664
62126
  } ]
61665
62127
  }
61666
62128
  }, {
@@ -61737,6 +62199,21 @@
61737
62199
  }
61738
62200
  } ]
61739
62201
  }
62202
+ }, {
62203
+ "type" : "object",
62204
+ "object" : {
62205
+ "typeName" : {
62206
+ "name" : "UpdatePagerDutyIntegrationDetails",
62207
+ "package" : "io.nominal.scout.integrations.api"
62208
+ },
62209
+ "fields" : [ {
62210
+ "fieldName" : "routingKey",
62211
+ "type" : {
62212
+ "type" : "primitive",
62213
+ "primitive" : "STRING"
62214
+ }
62215
+ } ]
62216
+ }
61740
62217
  }, {
61741
62218
  "type" : "object",
61742
62219
  "object" : {
@@ -61752,6 +62229,21 @@
61752
62229
  }
61753
62230
  } ]
61754
62231
  }
62232
+ }, {
62233
+ "type" : "object",
62234
+ "object" : {
62235
+ "typeName" : {
62236
+ "name" : "UpdateTeamsWebhookIntegrationDetails",
62237
+ "package" : "io.nominal.scout.integrations.api"
62238
+ },
62239
+ "fields" : [ {
62240
+ "fieldName" : "webhook",
62241
+ "type" : {
62242
+ "type" : "primitive",
62243
+ "primitive" : "STRING"
62244
+ }
62245
+ } ]
62246
+ }
61755
62247
  }, {
61756
62248
  "type" : "object",
61757
62249
  "object" : {
@@ -63389,6 +63881,18 @@
63389
63881
  "type" : "primitive",
63390
63882
  "primitive" : "DATETIME"
63391
63883
  }
63884
+ }, {
63885
+ "fieldName" : "updatedAt",
63886
+ "type" : {
63887
+ "type" : "optional",
63888
+ "optional" : {
63889
+ "itemType" : {
63890
+ "type" : "primitive",
63891
+ "primitive" : "DATETIME"
63892
+ }
63893
+ }
63894
+ },
63895
+ "docs" : "The timestamp when the workbook was last updated"
63392
63896
  }, {
63393
63897
  "fieldName" : "properties",
63394
63898
  "type" : {
@@ -67686,8 +68190,17 @@
67686
68190
  "type" : {
67687
68191
  "type" : "reference",
67688
68192
  "reference" : {
67689
- "name" : "CustomTimeRange",
67690
- "package" : "io.nominal.scout.savedviews.api"
68193
+ "name" : "CustomTimeframeFilter",
68194
+ "package" : "io.nominal.scout.run.api"
68195
+ }
68196
+ }
68197
+ }, {
68198
+ "fieldName" : "preset",
68199
+ "type" : {
68200
+ "type" : "reference",
68201
+ "reference" : {
68202
+ "name" : "PresetTimeframeFilter",
68203
+ "package" : "io.nominal.scout.run.api"
67691
68204
  }
67692
68205
  }
67693
68206
  } ]
@@ -67970,43 +68483,6 @@
67970
68483
  }
67971
68484
  } ]
67972
68485
  }
67973
- }, {
67974
- "type" : "object",
67975
- "object" : {
67976
- "typeName" : {
67977
- "name" : "CustomTimeRange",
67978
- "package" : "io.nominal.scout.savedviews.api"
67979
- },
67980
- "fields" : [ {
67981
- "fieldName" : "startTime",
67982
- "type" : {
67983
- "type" : "optional",
67984
- "optional" : {
67985
- "itemType" : {
67986
- "type" : "reference",
67987
- "reference" : {
67988
- "name" : "UtcTimestamp",
67989
- "package" : "io.nominal.scout.run.api"
67990
- }
67991
- }
67992
- }
67993
- }
67994
- }, {
67995
- "fieldName" : "endTime",
67996
- "type" : {
67997
- "type" : "optional",
67998
- "optional" : {
67999
- "itemType" : {
68000
- "type" : "reference",
68001
- "reference" : {
68002
- "name" : "UtcTimestamp",
68003
- "package" : "io.nominal.scout.run.api"
68004
- }
68005
- }
68006
- }
68007
- }
68008
- } ]
68009
- }
68010
68486
  }, {
68011
68487
  "type" : "union",
68012
68488
  "union" : {
@@ -71402,6 +71878,34 @@
71402
71878
  }
71403
71879
  } ]
71404
71880
  }
71881
+ }, {
71882
+ "type" : "object",
71883
+ "object" : {
71884
+ "typeName" : {
71885
+ "name" : "GetPlaylistInBoundsForChannelRequest",
71886
+ "package" : "io.nominal.scout.video.api"
71887
+ },
71888
+ "fields" : [ {
71889
+ "fieldName" : "channelSeries",
71890
+ "type" : {
71891
+ "type" : "reference",
71892
+ "reference" : {
71893
+ "name" : "VideoChannelSeries",
71894
+ "package" : "io.nominal.scout.video.api"
71895
+ }
71896
+ }
71897
+ }, {
71898
+ "fieldName" : "bounds",
71899
+ "type" : {
71900
+ "type" : "reference",
71901
+ "reference" : {
71902
+ "name" : "Bounds",
71903
+ "package" : "io.nominal.scout.video.api"
71904
+ }
71905
+ }
71906
+ } ],
71907
+ "docs" : "Request to get playlist for a video channel series.\nUses channel + tags to resolve to video series metadata within the specified video.\n"
71908
+ }
71405
71909
  }, {
71406
71910
  "type" : "object",
71407
71911
  "object" : {
@@ -71458,6 +71962,34 @@
71458
71962
  "docs" : "The start of the view range used to dynamically calculate media timestamps. The first segment with an \noverlap with the time bounds will have its minimum media timestamp set to 0, with every subsequent\nsegment building media time cumulatively from that offset. This will determine the starting media\ntimestamp of the returned segment. The view range should be the same as the one requested to get the\nplaylist and segment summaries.\n"
71459
71963
  } ]
71460
71964
  }
71965
+ }, {
71966
+ "type" : "object",
71967
+ "object" : {
71968
+ "typeName" : {
71969
+ "name" : "GetSegmentSummariesInBoundsForChannelRequest",
71970
+ "package" : "io.nominal.scout.video.api"
71971
+ },
71972
+ "fields" : [ {
71973
+ "fieldName" : "channelSeries",
71974
+ "type" : {
71975
+ "type" : "reference",
71976
+ "reference" : {
71977
+ "name" : "VideoChannelSeries",
71978
+ "package" : "io.nominal.scout.video.api"
71979
+ }
71980
+ }
71981
+ }, {
71982
+ "fieldName" : "bounds",
71983
+ "type" : {
71984
+ "type" : "reference",
71985
+ "reference" : {
71986
+ "name" : "Bounds",
71987
+ "package" : "io.nominal.scout.video.api"
71988
+ }
71989
+ }
71990
+ } ],
71991
+ "docs" : "Request to get segment summaries for a video channel series.\nUses channel + tags to resolve to video series metadata within the specified bounds.\n"
71992
+ }
71461
71993
  }, {
71462
71994
  "type" : "object",
71463
71995
  "object" : {
@@ -72614,6 +73146,126 @@
72614
73146
  "docs" : "deprecated. Will be removed after April 15th."
72615
73147
  } ]
72616
73148
  }
73149
+ }, {
73150
+ "type" : "object",
73151
+ "object" : {
73152
+ "typeName" : {
73153
+ "name" : "VideoAssetChannel",
73154
+ "package" : "io.nominal.scout.video.api"
73155
+ },
73156
+ "fields" : [ {
73157
+ "fieldName" : "assetRid",
73158
+ "type" : {
73159
+ "type" : "primitive",
73160
+ "primitive" : "STRING"
73161
+ }
73162
+ }, {
73163
+ "fieldName" : "dataScopeName",
73164
+ "type" : {
73165
+ "type" : "primitive",
73166
+ "primitive" : "STRING"
73167
+ }
73168
+ }, {
73169
+ "fieldName" : "channel",
73170
+ "type" : {
73171
+ "type" : "primitive",
73172
+ "primitive" : "STRING"
73173
+ }
73174
+ }, {
73175
+ "fieldName" : "tags",
73176
+ "type" : {
73177
+ "type" : "map",
73178
+ "map" : {
73179
+ "keyType" : {
73180
+ "type" : "reference",
73181
+ "reference" : {
73182
+ "name" : "TagName",
73183
+ "package" : "io.nominal.api"
73184
+ }
73185
+ },
73186
+ "valueType" : {
73187
+ "type" : "reference",
73188
+ "reference" : {
73189
+ "name" : "TagValue",
73190
+ "package" : "io.nominal.api"
73191
+ }
73192
+ }
73193
+ }
73194
+ }
73195
+ } ],
73196
+ "docs" : "Reference a video channel via an Asset's data scope"
73197
+ }
73198
+ }, {
73199
+ "type" : "union",
73200
+ "union" : {
73201
+ "typeName" : {
73202
+ "name" : "VideoChannelSeries",
73203
+ "package" : "io.nominal.scout.video.api"
73204
+ },
73205
+ "union" : [ {
73206
+ "fieldName" : "dataSource",
73207
+ "type" : {
73208
+ "type" : "reference",
73209
+ "reference" : {
73210
+ "name" : "VideoDataSourceChannel",
73211
+ "package" : "io.nominal.scout.video.api"
73212
+ }
73213
+ }
73214
+ }, {
73215
+ "fieldName" : "asset",
73216
+ "type" : {
73217
+ "type" : "reference",
73218
+ "reference" : {
73219
+ "name" : "VideoAssetChannel",
73220
+ "package" : "io.nominal.scout.video.api"
73221
+ }
73222
+ }
73223
+ } ],
73224
+ "docs" : "Union type for referencing a video channel. Allows querying video data via \ndatasource/channel, asset data scopes, or run data scopes.\n"
73225
+ }
73226
+ }, {
73227
+ "type" : "object",
73228
+ "object" : {
73229
+ "typeName" : {
73230
+ "name" : "VideoDataSourceChannel",
73231
+ "package" : "io.nominal.scout.video.api"
73232
+ },
73233
+ "fields" : [ {
73234
+ "fieldName" : "dataSourceRid",
73235
+ "type" : {
73236
+ "type" : "primitive",
73237
+ "primitive" : "STRING"
73238
+ }
73239
+ }, {
73240
+ "fieldName" : "channel",
73241
+ "type" : {
73242
+ "type" : "primitive",
73243
+ "primitive" : "STRING"
73244
+ }
73245
+ }, {
73246
+ "fieldName" : "tags",
73247
+ "type" : {
73248
+ "type" : "map",
73249
+ "map" : {
73250
+ "keyType" : {
73251
+ "type" : "reference",
73252
+ "reference" : {
73253
+ "name" : "TagName",
73254
+ "package" : "io.nominal.api"
73255
+ }
73256
+ },
73257
+ "valueType" : {
73258
+ "type" : "reference",
73259
+ "reference" : {
73260
+ "name" : "TagValue",
73261
+ "package" : "io.nominal.api"
73262
+ }
73263
+ }
73264
+ }
73265
+ }
73266
+ } ],
73267
+ "docs" : "Reference a video channel directly from a datasource/dataset"
73268
+ }
72617
73269
  }, {
72618
73270
  "type" : "object",
72619
73271
  "object" : {
@@ -75473,6 +76125,20 @@
75473
76125
  }
75474
76126
  }
75475
76127
  }
76128
+ }, {
76129
+ "fieldName" : "uint64",
76130
+ "type" : {
76131
+ "type" : "list",
76132
+ "list" : {
76133
+ "itemType" : {
76134
+ "type" : "reference",
76135
+ "reference" : {
76136
+ "name" : "Uint64Point",
76137
+ "package" : "io.nominal.storage.writer.api"
76138
+ }
76139
+ }
76140
+ }
76141
+ }
75476
76142
  }, {
75477
76143
  "fieldName" : "array",
75478
76144
  "type" : {
@@ -75811,6 +76477,30 @@
75811
76477
  }
75812
76478
  } ]
75813
76479
  }
76480
+ }, {
76481
+ "type" : "object",
76482
+ "object" : {
76483
+ "typeName" : {
76484
+ "name" : "Uint64Point",
76485
+ "package" : "io.nominal.storage.writer.api"
76486
+ },
76487
+ "fields" : [ {
76488
+ "fieldName" : "timestamp",
76489
+ "type" : {
76490
+ "type" : "reference",
76491
+ "reference" : {
76492
+ "name" : "Timestamp",
76493
+ "package" : "io.nominal.api"
76494
+ }
76495
+ }
76496
+ }, {
76497
+ "fieldName" : "value",
76498
+ "type" : {
76499
+ "type" : "primitive",
76500
+ "primitive" : "SAFELONG"
76501
+ }
76502
+ } ]
76503
+ }
75814
76504
  }, {
75815
76505
  "type" : "object",
75816
76506
  "object" : {
@@ -80133,6 +80823,126 @@
80133
80823
  "docs" : "Generates a JWT token for MediaMTX authentication with a 2-hour expiration.\nThe token is signed with the MediaMTX private key and contains the specified permissions.\nRequires authentication with Nominal. This endpoint is intended for internal use only.\n",
80134
80824
  "markers" : [ ],
80135
80825
  "tags" : [ ]
80826
+ }, {
80827
+ "endpointName" : "getMyCoachmarkDismissals",
80828
+ "httpMethod" : "POST",
80829
+ "httpPath" : "/authentication/v2/my/coachmarks/dismissals",
80830
+ "auth" : {
80831
+ "type" : "header",
80832
+ "header" : { }
80833
+ },
80834
+ "args" : [ {
80835
+ "argName" : "request",
80836
+ "type" : {
80837
+ "type" : "reference",
80838
+ "reference" : {
80839
+ "name" : "GetCoachmarkDismissalsRequest",
80840
+ "package" : "io.nominal.authentication.api"
80841
+ }
80842
+ },
80843
+ "paramType" : {
80844
+ "type" : "body",
80845
+ "body" : { }
80846
+ },
80847
+ "markers" : [ ],
80848
+ "tags" : [ ]
80849
+ } ],
80850
+ "returns" : {
80851
+ "type" : "reference",
80852
+ "reference" : {
80853
+ "name" : "GetCoachmarkDismissalsResponse",
80854
+ "package" : "io.nominal.authentication.api"
80855
+ }
80856
+ },
80857
+ "docs" : "Gets coachmark dismissals for the authenticated user.\nOptionally filter by specific coachmark IDs.\n",
80858
+ "markers" : [ ],
80859
+ "tags" : [ ]
80860
+ }, {
80861
+ "endpointName" : "dismissMyCoachmark",
80862
+ "httpMethod" : "POST",
80863
+ "httpPath" : "/authentication/v2/my/coachmarks/dismiss",
80864
+ "auth" : {
80865
+ "type" : "header",
80866
+ "header" : { }
80867
+ },
80868
+ "args" : [ {
80869
+ "argName" : "request",
80870
+ "type" : {
80871
+ "type" : "reference",
80872
+ "reference" : {
80873
+ "name" : "DismissCoachmarkRequest",
80874
+ "package" : "io.nominal.authentication.api"
80875
+ }
80876
+ },
80877
+ "paramType" : {
80878
+ "type" : "body",
80879
+ "body" : { }
80880
+ },
80881
+ "markers" : [ ],
80882
+ "tags" : [ ]
80883
+ } ],
80884
+ "returns" : {
80885
+ "type" : "reference",
80886
+ "reference" : {
80887
+ "name" : "CoachmarkDismissal",
80888
+ "package" : "io.nominal.authentication.api"
80889
+ }
80890
+ },
80891
+ "docs" : "Dismisses a coachmark for the authenticated user.\nRecords the dismissal timestamp and app version.\n",
80892
+ "markers" : [ ],
80893
+ "tags" : [ ]
80894
+ }, {
80895
+ "endpointName" : "isMyCoachmarkDismissed",
80896
+ "httpMethod" : "GET",
80897
+ "httpPath" : "/authentication/v2/my/coachmarks/dismissed/{coachmarkId}",
80898
+ "auth" : {
80899
+ "type" : "header",
80900
+ "header" : { }
80901
+ },
80902
+ "args" : [ {
80903
+ "argName" : "coachmarkId",
80904
+ "type" : {
80905
+ "type" : "primitive",
80906
+ "primitive" : "STRING"
80907
+ },
80908
+ "paramType" : {
80909
+ "type" : "path",
80910
+ "path" : { }
80911
+ },
80912
+ "markers" : [ ],
80913
+ "tags" : [ ]
80914
+ } ],
80915
+ "returns" : {
80916
+ "type" : "primitive",
80917
+ "primitive" : "BOOLEAN"
80918
+ },
80919
+ "docs" : "Checks if a specific coachmark has been dismissed by the authenticated user.\n",
80920
+ "markers" : [ ],
80921
+ "tags" : [ ]
80922
+ }, {
80923
+ "endpointName" : "resetMyCoachmarkDismissal",
80924
+ "httpMethod" : "DELETE",
80925
+ "httpPath" : "/authentication/v2/my/coachmarks/dismissals/{coachmarkId}",
80926
+ "auth" : {
80927
+ "type" : "header",
80928
+ "header" : { }
80929
+ },
80930
+ "args" : [ {
80931
+ "argName" : "coachmarkId",
80932
+ "type" : {
80933
+ "type" : "primitive",
80934
+ "primitive" : "STRING"
80935
+ },
80936
+ "paramType" : {
80937
+ "type" : "path",
80938
+ "path" : { }
80939
+ },
80940
+ "markers" : [ ],
80941
+ "tags" : [ ]
80942
+ } ],
80943
+ "docs" : "Resets a coachmark dismissal for the authenticated user.\nThis allows the coachmark to be shown again.\nPrimarily intended for testing and debugging.\n",
80944
+ "markers" : [ ],
80945
+ "tags" : [ ]
80136
80946
  } ],
80137
80947
  "docs" : "This service provides operations for managing user and org profiles/settings.\nIts name is a bit of a misnomer.\n"
80138
80948
  }, {
@@ -90489,20 +91299,126 @@
90489
91299
  "docs" : "If supplied, will return only the connections within the supplied workspaces. If empty\nwill return all connections for workspaces that the user is permitted to see.\n",
90490
91300
  "markers" : [ ],
90491
91301
  "tags" : [ ]
90492
- } ],
90493
- "returns" : {
90494
- "type" : "set",
90495
- "set" : {
90496
- "itemType" : {
90497
- "type" : "reference",
90498
- "reference" : {
90499
- "name" : "Connection",
90500
- "package" : "io.nominal.scout.datasource.connection.api"
91302
+ } ],
91303
+ "returns" : {
91304
+ "type" : "set",
91305
+ "set" : {
91306
+ "itemType" : {
91307
+ "type" : "reference",
91308
+ "reference" : {
91309
+ "name" : "Connection",
91310
+ "package" : "io.nominal.scout.datasource.connection.api"
91311
+ }
91312
+ }
91313
+ }
91314
+ },
91315
+ "docs" : "Lists all connections.\n",
91316
+ "deprecated" : "Use listConnectionsV2 for paginated results.",
91317
+ "markers" : [ ],
91318
+ "tags" : [ ]
91319
+ }, {
91320
+ "endpointName" : "listConnectionsV2",
91321
+ "httpMethod" : "GET",
91322
+ "httpPath" : "/data-source/connection/v2/connections",
91323
+ "auth" : {
91324
+ "type" : "header",
91325
+ "header" : { }
91326
+ },
91327
+ "args" : [ {
91328
+ "argName" : "includeArchived",
91329
+ "type" : {
91330
+ "type" : "optional",
91331
+ "optional" : {
91332
+ "itemType" : {
91333
+ "type" : "primitive",
91334
+ "primitive" : "BOOLEAN"
91335
+ }
91336
+ }
91337
+ },
91338
+ "paramType" : {
91339
+ "type" : "query",
91340
+ "query" : {
91341
+ "paramId" : "includeArchived"
91342
+ }
91343
+ },
91344
+ "docs" : "Whether to include archived connections in the response.\nBy default, this is false.\n",
91345
+ "markers" : [ ],
91346
+ "tags" : [ ]
91347
+ }, {
91348
+ "argName" : "workspaces",
91349
+ "type" : {
91350
+ "type" : "set",
91351
+ "set" : {
91352
+ "itemType" : {
91353
+ "type" : "reference",
91354
+ "reference" : {
91355
+ "name" : "WorkspaceRid",
91356
+ "package" : "io.nominal.api.rids"
91357
+ }
91358
+ }
91359
+ }
91360
+ },
91361
+ "paramType" : {
91362
+ "type" : "query",
91363
+ "query" : {
91364
+ "paramId" : "workspaces"
91365
+ }
91366
+ },
91367
+ "docs" : "If supplied, will return only the connections within the supplied workspaces. If empty\nwill return all connections for workspaces that the user is permitted to see.\n",
91368
+ "markers" : [ ],
91369
+ "tags" : [ ]
91370
+ }, {
91371
+ "argName" : "pageSize",
91372
+ "type" : {
91373
+ "type" : "optional",
91374
+ "optional" : {
91375
+ "itemType" : {
91376
+ "type" : "primitive",
91377
+ "primitive" : "INTEGER"
90501
91378
  }
90502
91379
  }
91380
+ },
91381
+ "paramType" : {
91382
+ "type" : "query",
91383
+ "query" : {
91384
+ "paramId" : "pageSize"
91385
+ }
91386
+ },
91387
+ "docs" : "Number of connections to return per page. Defaults to 100. Will return at most 1000 records per page.\n",
91388
+ "markers" : [ ],
91389
+ "tags" : [ ]
91390
+ }, {
91391
+ "argName" : "nextPageToken",
91392
+ "type" : {
91393
+ "type" : "optional",
91394
+ "optional" : {
91395
+ "itemType" : {
91396
+ "type" : "reference",
91397
+ "reference" : {
91398
+ "name" : "Token",
91399
+ "package" : "io.nominal.api"
91400
+ }
91401
+ }
91402
+ }
91403
+ },
91404
+ "paramType" : {
91405
+ "type" : "query",
91406
+ "query" : {
91407
+ "paramId" : "nextPageToken"
91408
+ }
91409
+ },
91410
+ "docs" : "Token to retrieve the next page of results.\n",
91411
+ "markers" : [ ],
91412
+ "tags" : [ ]
91413
+ } ],
91414
+ "returns" : {
91415
+ "type" : "reference",
91416
+ "reference" : {
91417
+ "name" : "ListConnectionsResponse",
91418
+ "package" : "io.nominal.scout.datasource.connection.api"
90503
91419
  }
90504
91420
  },
90505
- "docs" : "Lists all connections.\n",
91421
+ "docs" : "Lists connections with pagination. Returns connections ordered by creation time descending.\n",
90506
91422
  "markers" : [ ],
90507
91423
  "tags" : [ ]
90508
91424
  }, {
@@ -92635,13 +93551,52 @@
92635
93551
  },
92636
93552
  "markers" : [ ],
92637
93553
  "tags" : [ ]
93554
+ }, {
93555
+ "argName" : "start",
93556
+ "type" : {
93557
+ "type" : "optional",
93558
+ "optional" : {
93559
+ "itemType" : {
93560
+ "type" : "primitive",
93561
+ "primitive" : "STRING"
93562
+ }
93563
+ }
93564
+ },
93565
+ "paramType" : {
93566
+ "type" : "query",
93567
+ "query" : {
93568
+ "paramId" : "start"
93569
+ }
93570
+ },
93571
+ "docs" : "Start bound as ISO-8601 timestamp (e.g., \"2024-01-01T00:00:00Z\"). Must be provided together with end, or neither.",
93572
+ "markers" : [ ],
93573
+ "tags" : [ ]
93574
+ }, {
93575
+ "argName" : "end",
93576
+ "type" : {
93577
+ "type" : "optional",
93578
+ "optional" : {
93579
+ "itemType" : {
93580
+ "type" : "primitive",
93581
+ "primitive" : "STRING"
93582
+ }
93583
+ }
93584
+ },
93585
+ "paramType" : {
93586
+ "type" : "query",
93587
+ "query" : {
93588
+ "paramId" : "end"
93589
+ }
93590
+ },
93591
+ "docs" : "End bound as ISO-8601 timestamp (e.g., \"2024-01-01T01:00:00Z\"). Must be provided together with start, or neither.",
93592
+ "markers" : [ ],
93593
+ "tags" : [ ]
92638
93594
  } ],
92639
93595
  "returns" : {
92640
93596
  "type" : "primitive",
92641
93597
  "primitive" : "BINARY"
92642
93598
  },
92643
- "docs" : "Generates an HLS playlist for a video with the given video rid to enable playback. The HLS playlist will contain\nlinks to all of the segments in the video in sequential order.\n",
92644
- "deprecated" : "Replaced by getPlaylistInBounds. Will be removed after April 15th.",
93599
+ "docs" : "Generates an HLS playlist for a video within optional time bounds.\nUses GET with query parameters for HLS.js compatibility.\nThe HLS playlist will contain links to all of the segments in the video that overlap with the given bounds,\nor all segments if no bounds are provided.\n\nNote: The start and end parameters must either both be provided or both be omitted.\nProviding only one will result in a MissingTimestampBoundPair error.\n",
92645
93600
  "markers" : [ ],
92646
93601
  "tags" : [ ]
92647
93602
  }, {
@@ -92728,6 +93683,186 @@
92728
93683
  "primitive" : "BINARY"
92729
93684
  },
92730
93685
  "docs" : "Generates an HLS playlist for a video with the given video rid to enable playback within an optional set of\nbounds. The HLS playlist will contain links to all of the segments in the video that overlap with the given \nbounds.\nplaylist will be limited to the given bounds.\n",
93686
+ "deprecated" : "Use getPlaylist (GET) for HLS.js compatibility.",
93687
+ "markers" : [ ],
93688
+ "tags" : [ ]
93689
+ }, {
93690
+ "endpointName" : "getPlaylistInBoundsForChannel",
93691
+ "httpMethod" : "POST",
93692
+ "httpPath" : "/video/v1/videos/channel/playlist-in-bounds",
93693
+ "auth" : {
93694
+ "type" : "header",
93695
+ "header" : { }
93696
+ },
93697
+ "args" : [ {
93698
+ "argName" : "request",
93699
+ "type" : {
93700
+ "type" : "reference",
93701
+ "reference" : {
93702
+ "name" : "GetPlaylistInBoundsForChannelRequest",
93703
+ "package" : "io.nominal.scout.video.api"
93704
+ }
93705
+ },
93706
+ "paramType" : {
93707
+ "type" : "body",
93708
+ "body" : { }
93709
+ },
93710
+ "markers" : [ ],
93711
+ "tags" : [ ]
93712
+ } ],
93713
+ "returns" : {
93714
+ "type" : "primitive",
93715
+ "primitive" : "BINARY"
93716
+ },
93717
+ "docs" : "Generates an HLS playlist for a video channel series (identified by channel + tags) within an optional set of\nbounds then generates a playlist for all matching video segments.\n",
93718
+ "deprecated" : "Use getPlaylistForChannel (GET) for HLS.js compatibility.",
93719
+ "markers" : [ ],
93720
+ "tags" : [ ]
93721
+ }, {
93722
+ "endpointName" : "getPlaylistForChannel",
93723
+ "httpMethod" : "GET",
93724
+ "httpPath" : "/video/v1/videos/channel/playlist",
93725
+ "auth" : {
93726
+ "type" : "header",
93727
+ "header" : { }
93728
+ },
93729
+ "args" : [ {
93730
+ "argName" : "dataSourceRid",
93731
+ "type" : {
93732
+ "type" : "optional",
93733
+ "optional" : {
93734
+ "itemType" : {
93735
+ "type" : "reference",
93736
+ "reference" : {
93737
+ "name" : "DataSourceRid",
93738
+ "package" : "io.nominal.api.rids"
93739
+ }
93740
+ }
93741
+ }
93742
+ },
93743
+ "paramType" : {
93744
+ "type" : "query",
93745
+ "query" : {
93746
+ "paramId" : "dataSourceRid"
93747
+ }
93748
+ },
93749
+ "docs" : "Data source RID (mutually exclusive with assetRid)",
93750
+ "markers" : [ ],
93751
+ "tags" : [ ]
93752
+ }, {
93753
+ "argName" : "assetRid",
93754
+ "type" : {
93755
+ "type" : "optional",
93756
+ "optional" : {
93757
+ "itemType" : {
93758
+ "type" : "reference",
93759
+ "reference" : {
93760
+ "name" : "AssetRid",
93761
+ "package" : "io.nominal.scout.rids.api"
93762
+ }
93763
+ }
93764
+ }
93765
+ },
93766
+ "paramType" : {
93767
+ "type" : "query",
93768
+ "query" : {
93769
+ "paramId" : "assetRid"
93770
+ }
93771
+ },
93772
+ "docs" : "Asset RID (mutually exclusive with dataSourceRid, requires dataScopeName)",
93773
+ "markers" : [ ],
93774
+ "tags" : [ ]
93775
+ }, {
93776
+ "argName" : "dataScopeName",
93777
+ "type" : {
93778
+ "type" : "optional",
93779
+ "optional" : {
93780
+ "itemType" : {
93781
+ "type" : "primitive",
93782
+ "primitive" : "STRING"
93783
+ }
93784
+ }
93785
+ },
93786
+ "paramType" : {
93787
+ "type" : "query",
93788
+ "query" : {
93789
+ "paramId" : "dataScopeName"
93790
+ }
93791
+ },
93792
+ "docs" : "Data scope name (required when using assetRid)",
93793
+ "markers" : [ ],
93794
+ "tags" : [ ]
93795
+ }, {
93796
+ "argName" : "channel",
93797
+ "type" : {
93798
+ "type" : "primitive",
93799
+ "primitive" : "STRING"
93800
+ },
93801
+ "paramType" : {
93802
+ "type" : "query",
93803
+ "query" : {
93804
+ "paramId" : "channel"
93805
+ }
93806
+ },
93807
+ "docs" : "Channel name",
93808
+ "markers" : [ ],
93809
+ "tags" : [ ]
93810
+ }, {
93811
+ "argName" : "tags",
93812
+ "type" : {
93813
+ "type" : "optional",
93814
+ "optional" : {
93815
+ "itemType" : {
93816
+ "type" : "primitive",
93817
+ "primitive" : "STRING"
93818
+ }
93819
+ }
93820
+ },
93821
+ "paramType" : {
93822
+ "type" : "query",
93823
+ "query" : {
93824
+ "paramId" : "tags"
93825
+ }
93826
+ },
93827
+ "docs" : "Tags as JSON-encoded map (e.g., {\"vehicle\":\"car1\"})",
93828
+ "markers" : [ ],
93829
+ "tags" : [ ]
93830
+ }, {
93831
+ "argName" : "start",
93832
+ "type" : {
93833
+ "type" : "primitive",
93834
+ "primitive" : "STRING"
93835
+ },
93836
+ "paramType" : {
93837
+ "type" : "query",
93838
+ "query" : {
93839
+ "paramId" : "start"
93840
+ }
93841
+ },
93842
+ "docs" : "Required start bound as ISO-8601 timestamp (e.g., \"2024-01-01T00:00:00Z\"). Must be provided with end.",
93843
+ "markers" : [ ],
93844
+ "tags" : [ ]
93845
+ }, {
93846
+ "argName" : "end",
93847
+ "type" : {
93848
+ "type" : "primitive",
93849
+ "primitive" : "STRING"
93850
+ },
93851
+ "paramType" : {
93852
+ "type" : "query",
93853
+ "query" : {
93854
+ "paramId" : "end"
93855
+ }
93856
+ },
93857
+ "docs" : "Required end bound as ISO-8601 timestamp (e.g., \"2024-01-01T01:00:00Z\"). Must be provided with start.",
93858
+ "markers" : [ ],
93859
+ "tags" : [ ]
93860
+ } ],
93861
+ "returns" : {
93862
+ "type" : "primitive",
93863
+ "primitive" : "BINARY"
93864
+ },
93865
+ "docs" : "Generates an HLS playlist for a video channel series within time bounds.\nSpecify either dataSourceRid OR (assetRid + dataScopeName) to identify the channel source.\n\nNote: Both start and end parameters are required and must be provided together.\n",
92731
93866
  "markers" : [ ],
92732
93867
  "tags" : [ ]
92733
93868
  }, {
@@ -92784,6 +93919,45 @@
92784
93919
  "docs" : "Returns the min and max absolute and media timestamps for each segment in a video that overlap with an \noptional set of bounds.\n",
92785
93920
  "markers" : [ ],
92786
93921
  "tags" : [ ]
93922
+ }, {
93923
+ "endpointName" : "getSegmentSummariesInBoundsForChannel",
93924
+ "httpMethod" : "POST",
93925
+ "httpPath" : "/video/v1/videos/channel/segment-summaries-in-bounds",
93926
+ "auth" : {
93927
+ "type" : "header",
93928
+ "header" : { }
93929
+ },
93930
+ "args" : [ {
93931
+ "argName" : "request",
93932
+ "type" : {
93933
+ "type" : "reference",
93934
+ "reference" : {
93935
+ "name" : "GetSegmentSummariesInBoundsForChannelRequest",
93936
+ "package" : "io.nominal.scout.video.api"
93937
+ }
93938
+ },
93939
+ "paramType" : {
93940
+ "type" : "body",
93941
+ "body" : { }
93942
+ },
93943
+ "markers" : [ ],
93944
+ "tags" : [ ]
93945
+ } ],
93946
+ "returns" : {
93947
+ "type" : "list",
93948
+ "list" : {
93949
+ "itemType" : {
93950
+ "type" : "reference",
93951
+ "reference" : {
93952
+ "name" : "SegmentSummary",
93953
+ "package" : "io.nominal.scout.video.api"
93954
+ }
93955
+ }
93956
+ }
93957
+ },
93958
+ "docs" : "Returns the min and max absolute and media timestamps for each segment matching a video channel series \n(identified by channel + tags) within the specified bounds.\n",
93959
+ "markers" : [ ],
93960
+ "tags" : [ ]
92787
93961
  }, {
92788
93962
  "endpointName" : "getFileSummaries",
92789
93963
  "httpMethod" : "POST",
@@ -93891,7 +95065,7 @@
93891
95065
  "markers" : [ ],
93892
95066
  "tags" : [ ]
93893
95067
  } ],
93894
- "docs" : "Synchronously writes a Nominal Write Request to a Nominal data source using the NominalWrite Protobuf schema.\nThe request must be Protobuf-encoded and accompanied by the appropriate content encoding headers if compressed.\n\nThe request should follow this Protobuf schema:\n```proto\nmessage WriteRequestNominal {\n repeated Series series = 1;\n}\n\nmessage Series {\n Channel channel = 1; \n map<string, string> tags = 2; // Key-value pairs for series tags\n Points points = 3; // Contains double, string, integer, array, or struct points\n}\n\nmessage Channel {\n string name = 1;\n} \n\nmessage Points {\n oneof points_type {\n DoublePoints double_points = 1;\n StringPoints string_points = 2;\n IntegerPoints integer_points = 3;\n ArrayPoints array_points = 4;\n StructPoints struct_points = 5;\n }\n}\n\nmessage DoublePoints {\n repeated DoublePoint points = 1;\n}\n\nmessage StringPoints {\n repeated StringPoint points = 1;\n}\n\nmessage IntegerPoints {\n repeated IntegerPoint points = 1;\n}\n\nmessage ArrayPoints {\n oneof array_type {\n DoubleArrayPoints double_array_points = 1;\n StringArrayPoints string_array_points = 2;\n }\n}\n\nmessage DoubleArrayPoints {\n repeated DoubleArrayPoint points = 1;\n}\n\nmessage StringArrayPoints {\n repeated StringArrayPoint points = 1;\n}\n\nmessage StructPoints {\n repeated StructPoint points = 1;\n}\n\nmessage DoublePoint {\n google.protobuf.Timestamp timestamp = 1;\n double value = 2;\n}\n\nmessage StringPoint {\n google.protobuf.Timestamp timestamp = 1;\n string value = 2;\n}\n\nmessage IntegerPoint {\n google.protobuf.Timestamp timestamp = 1;\n int64 value = 2;\n}\n\nmessage DoubleArrayPoint {\n google.protobuf.Timestamp timestamp = 1;\n repeated double value = 2;\n}\n\nmessage StringArrayPoint {\n google.protobuf.Timestamp timestamp = 1;\n repeated string value = 2;\n}\n\nmessage StructPoint {\n google.protobuf.Timestamp timestamp = 1;\n string jsonString = 2;\n}\n```\n\nEach request can contain multiple series, where each series consists of:\n- A channel name\n- A map of tags (key-value pairs)\n- A collection of points, which can be double, string, integer, array (double/string), or struct (json) values\n- Each point includes a timestamp (using google.protobuf.Timestamp) and its value\n- Array points contain repeated values (array<double> or array<string>)\n- Struct points are represented using strings that contain the JSON formatted blobs, with all keys being strings\n\nThe endpoint requires the Content-Type header to be set to \"application/x-protobuf\".\nIf the payload is compressed, the appropriate Content-Encoding header must be included.\n",
95068
+ "docs" : "Synchronously writes a Nominal Write Request to a Nominal data source using the NominalWrite Protobuf schema.\nThe request must be Protobuf-encoded and accompanied by the appropriate content encoding headers if compressed.\n\nThe request should follow this Protobuf schema:\n```proto\nmessage WriteRequestNominal {\n repeated Series series = 1;\n}\n\nmessage Series {\n Channel channel = 1; \n map<string, string> tags = 2; // Key-value pairs for series tags\n Points points = 3; // Contains double, string, integer, array, or struct points\n}\n\nmessage Channel {\n string name = 1;\n} \n\nmessage Points {\n oneof points_type {\n DoublePoints double_points = 1;\n StringPoints string_points = 2;\n IntegerPoints integer_points = 3;\n ArrayPoints array_points = 4;\n StructPoints struct_points = 5;\n Uint64Points uint64_points = 6;\n }\n}\n\nmessage DoublePoints {\n repeated DoublePoint points = 1;\n}\n\nmessage StringPoints {\n repeated StringPoint points = 1;\n}\n\nmessage IntegerPoints {\n repeated IntegerPoint points = 1;\n}\n\nmessage Uint64Points {\n repeated Uint64Point points = 1;\n}\n\nmessage ArrayPoints {\n oneof array_type {\n DoubleArrayPoints double_array_points = 1;\n StringArrayPoints string_array_points = 2;\n }\n}\n\nmessage DoubleArrayPoints {\n repeated DoubleArrayPoint points = 1;\n}\n\nmessage StringArrayPoints {\n repeated StringArrayPoint points = 1;\n}\n\nmessage StructPoints {\n repeated StructPoint points = 1;\n}\n\nmessage DoublePoint {\n google.protobuf.Timestamp timestamp = 1;\n double value = 2;\n}\n\nmessage StringPoint {\n google.protobuf.Timestamp timestamp = 1;\n string value = 2;\n}\n\nmessage IntegerPoint {\n google.protobuf.Timestamp timestamp = 1;\n int64 value = 2;\n}\n\nmessage Uint64Point {\n google.protobuf.Timestamp timestamp = 1;\n uint64 value = 2;\n}\n\nmessage DoubleArrayPoint {\n google.protobuf.Timestamp timestamp = 1;\n repeated double value = 2;\n}\n\nmessage StringArrayPoint {\n google.protobuf.Timestamp timestamp = 1;\n repeated string value = 2;\n}\n\nmessage StructPoint {\n google.protobuf.Timestamp timestamp = 1;\n string jsonString = 2;\n}\n```\n\nEach request can contain multiple series, where each series consists of:\n- A channel name\n- A map of tags (key-value pairs)\n- A collection of points, which can be double, string, integer, array (double/string), or struct (json) values\n- Each point includes a timestamp (using google.protobuf.Timestamp) and its value\n- Array points contain repeated values (array<double> or array<string>)\n- Struct points are represented using strings that contain the JSON formatted blobs, with all keys being strings\n\nThe endpoint requires the Content-Type header to be set to \"application/x-protobuf\".\nIf the payload is compressed, the appropriate Content-Encoding header must be included.\n",
93895
95069
  "markers" : [ ],
93896
95070
  "tags" : [ ]
93897
95071
  }, {