nominal-api 0.979.0__tar.gz → 0.983.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (89) hide show
  1. {nominal_api-0.979.0 → nominal_api-0.983.0}/PKG-INFO +1 -1
  2. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/__init__.py +1 -1
  3. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/_impl.py +173 -47
  4. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/api_rids/__init__.py +2 -0
  5. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/scout_compute_api/__init__.py +2 -0
  6. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api.egg-info/PKG-INFO +1 -1
  7. {nominal_api-0.979.0 → nominal_api-0.983.0}/setup.py +1 -1
  8. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/api/__init__.py +0 -0
  9. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/api_ids/__init__.py +0 -0
  10. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/attachments_api/__init__.py +0 -0
  11. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/authentication_api/__init__.py +0 -0
  12. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/authorization/__init__.py +0 -0
  13. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/comments_api/__init__.py +0 -0
  14. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/connect_download/__init__.py +0 -0
  15. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/datasource/__init__.py +0 -0
  16. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/datasource_api/__init__.py +0 -0
  17. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/datasource_logset/__init__.py +0 -0
  18. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/datasource_logset_api/__init__.py +0 -0
  19. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/datasource_pagination_api/__init__.py +0 -0
  20. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/event/__init__.py +0 -0
  21. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/ingest_api/__init__.py +0 -0
  22. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/ingest_manifest/__init__.py +0 -0
  23. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/ingest_workflow_api/__init__.py +0 -0
  24. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/module/__init__.py +0 -0
  25. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/module_internal/__init__.py +0 -0
  26. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/modules_api/__init__.py +0 -0
  27. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/persistent_compute_api/__init__.py +0 -0
  28. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/py.typed +0 -0
  29. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/scout/__init__.py +0 -0
  30. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/scout_api/__init__.py +0 -0
  31. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/scout_asset_api/__init__.py +0 -0
  32. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/scout_assets/__init__.py +0 -0
  33. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/scout_catalog/__init__.py +0 -0
  34. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/scout_channelvariables_api/__init__.py +0 -0
  35. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/scout_chart_api/__init__.py +0 -0
  36. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/scout_chartdefinition_api/__init__.py +0 -0
  37. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/scout_checklistexecution_api/__init__.py +0 -0
  38. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/scout_checks_api/__init__.py +0 -0
  39. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/scout_comparisonnotebook_api/__init__.py +0 -0
  40. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/scout_comparisonrun_api/__init__.py +0 -0
  41. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/scout_compute_api_deprecated/__init__.py +0 -0
  42. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/scout_compute_resolved_api/__init__.py +0 -0
  43. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/scout_dataexport_api/__init__.py +0 -0
  44. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/scout_datareview_api/__init__.py +0 -0
  45. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/scout_datasource/__init__.py +0 -0
  46. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/scout_datasource_connection/__init__.py +0 -0
  47. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/scout_datasource_connection_api/__init__.py +0 -0
  48. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/scout_datasource_connection_api_influx/__init__.py +0 -0
  49. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/scout_favorites/__init__.py +0 -0
  50. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/scout_favorites_api/__init__.py +0 -0
  51. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/scout_integrations_api/__init__.py +0 -0
  52. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/scout_internal_search_api/__init__.py +0 -0
  53. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/scout_jobs_api/__init__.py +0 -0
  54. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/scout_layout_api/__init__.py +0 -0
  55. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/scout_metadata/__init__.py +0 -0
  56. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/scout_notebook_api/__init__.py +0 -0
  57. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/scout_plotting/__init__.py +0 -0
  58. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/scout_rids_api/__init__.py +0 -0
  59. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/scout_run_api/__init__.py +0 -0
  60. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/scout_savedviews/__init__.py +0 -0
  61. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/scout_savedviews_api/__init__.py +0 -0
  62. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/scout_template_api/__init__.py +0 -0
  63. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/scout_units_api/__init__.py +0 -0
  64. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/scout_versioning_api/__init__.py +0 -0
  65. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/scout_video/__init__.py +0 -0
  66. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/scout_video_api/__init__.py +0 -0
  67. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/scout_workbookcommon_api/__init__.py +0 -0
  68. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/secrets_api/__init__.py +0 -0
  69. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/security_api_workspace/__init__.py +0 -0
  70. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/storage_datasource_api/__init__.py +0 -0
  71. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/storage_deletion_api/__init__.py +0 -0
  72. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/storage_series_api/__init__.py +0 -0
  73. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/storage_writer_api/__init__.py +0 -0
  74. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/themes_api/__init__.py +0 -0
  75. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/timeseries_channelmetadata/__init__.py +0 -0
  76. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/timeseries_channelmetadata_api/__init__.py +0 -0
  77. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/timeseries_logicalseries/__init__.py +0 -0
  78. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/timeseries_logicalseries_api/__init__.py +0 -0
  79. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/timeseries_metadata/__init__.py +0 -0
  80. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/timeseries_metadata_api/__init__.py +0 -0
  81. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/timeseries_seriescache/__init__.py +0 -0
  82. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/timeseries_seriescache_api/__init__.py +0 -0
  83. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/upload_api/__init__.py +0 -0
  84. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api/usercreation_api/__init__.py +0 -0
  85. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api.egg-info/SOURCES.txt +0 -0
  86. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api.egg-info/dependency_links.txt +0 -0
  87. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api.egg-info/requires.txt +0 -0
  88. {nominal_api-0.979.0 → nominal_api-0.983.0}/nominal_api.egg-info/top_level.txt +0 -0
  89. {nominal_api-0.979.0 → nominal_api-0.983.0}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: nominal-api
3
- Version: 0.979.0
3
+ Version: 0.983.0
4
4
  Requires-Python: >=3.8
5
5
  Requires-Dist: requests
6
6
  Requires-Dist: conjure-python-client<4,>=2.8.0
@@ -82,5 +82,5 @@ __all__ = [
82
82
 
83
83
  __conjure_generator_version__ = "4.17.0"
84
84
 
85
- __version__ = "0.979.0"
85
+ __version__ = "0.983.0"
86
86
 
@@ -20015,37 +20015,6 @@ returning un-archived runs, absent an archive filter.
20015
20015
  _decoder = ConjureDecoder()
20016
20016
  return _decoder.decode(_response.json(), List[scout_run_api_RefNameAndType], self._return_none_for_unknown_union_types)
20017
20017
 
20018
- def search_channels(self, auth_header: str, request: "scout_run_api_SearchRunChannelsRequest", rid: str) -> "scout_run_api_SearchRunChannelsResponse":
20019
- _conjure_encoder = ConjureEncoder()
20020
-
20021
- _headers: Dict[str, Any] = {
20022
- 'Accept': 'application/json',
20023
- 'Content-Type': 'application/json',
20024
- 'Authorization': auth_header,
20025
- }
20026
-
20027
- _params: Dict[str, Any] = {
20028
- }
20029
-
20030
- _path_params: Dict[str, str] = {
20031
- 'rid': quote(str(_conjure_encoder.default(rid)), safe=''),
20032
- }
20033
-
20034
- _json: Any = _conjure_encoder.default(request)
20035
-
20036
- _path = '/scout/v1/run/{rid}/search-channels'
20037
- _path = _path.format(**_path_params)
20038
-
20039
- _response: Response = self._request(
20040
- 'POST',
20041
- self._uri + _path,
20042
- params=_params,
20043
- headers=_headers,
20044
- json=_json)
20045
-
20046
- _decoder = ConjureDecoder()
20047
- return _decoder.decode(_response.json(), scout_run_api_SearchRunChannelsResponse, self._return_none_for_unknown_union_types)
20048
-
20049
20018
  def update_run_attachment(self, auth_header: str, request: "scout_run_api_UpdateAttachmentsRequest", rid: str) -> None:
20050
20019
  """Updates the attachments associated with a run.
20051
20020
  """
@@ -50219,6 +50188,8 @@ class scout_compute_api_NumericAggregationFunction(ConjureEnumType):
50219
50188
  '''COUNT'''
50220
50189
  STANDARD_DEVIATION = 'STANDARD_DEVIATION'
50221
50190
  '''STANDARD_DEVIATION'''
50191
+ ROOT_MEAN_SQUARE = 'ROOT_MEAN_SQUARE'
50192
+ '''ROOT_MEAN_SQUARE'''
50222
50193
  UNKNOWN = 'UNKNOWN'
50223
50194
  '''UNKNOWN'''
50224
50195
 
@@ -51798,6 +51769,8 @@ class scout_compute_api_NumericUnionOperation(ConjureEnumType):
51798
51769
  '''COUNT'''
51799
51770
  STANDARD_DEVIATION = 'STANDARD_DEVIATION'
51800
51771
  '''STANDARD_DEVIATION'''
51772
+ ROOT_MEAN_SQUARE = 'ROOT_MEAN_SQUARE'
51773
+ '''ROOT_MEAN_SQUARE'''
51801
51774
  THROW = 'THROW'
51802
51775
  '''THROW'''
51803
51776
  UNKNOWN = 'UNKNOWN'
@@ -52839,18 +52812,20 @@ class scout_compute_api_RangeAggregation(ConjureBeanType):
52839
52812
  'max': ConjureFieldDefinition('max', float),
52840
52813
  'standard_deviation': ConjureFieldDefinition('standardDeviation', float),
52841
52814
  'count': ConjureFieldDefinition('count', float),
52842
- 'sum': ConjureFieldDefinition('sum', float)
52815
+ 'sum': ConjureFieldDefinition('sum', float),
52816
+ 'root_mean_square': ConjureFieldDefinition('rootMeanSquare', OptionalTypeWrapper[float])
52843
52817
  }
52844
52818
 
52845
- __slots__: List[str] = ['_average', '_min', '_max', '_standard_deviation', '_count', '_sum']
52819
+ __slots__: List[str] = ['_average', '_min', '_max', '_standard_deviation', '_count', '_sum', '_root_mean_square']
52846
52820
 
52847
- def __init__(self, average: float, count: float, max: float, min: float, standard_deviation: float, sum: float) -> None:
52821
+ def __init__(self, average: float, count: float, max: float, min: float, standard_deviation: float, sum: float, root_mean_square: Optional[float] = None) -> None:
52848
52822
  self._average = average
52849
52823
  self._min = min
52850
52824
  self._max = max
52851
52825
  self._standard_deviation = standard_deviation
52852
52826
  self._count = count
52853
52827
  self._sum = sum
52828
+ self._root_mean_square = root_mean_square
52854
52829
 
52855
52830
  @builtins.property
52856
52831
  def average(self) -> float:
@@ -52876,6 +52851,10 @@ class scout_compute_api_RangeAggregation(ConjureBeanType):
52876
52851
  def sum(self) -> float:
52877
52852
  return self._sum
52878
52853
 
52854
+ @builtins.property
52855
+ def root_mean_square(self) -> Optional[float]:
52856
+ return self._root_mean_square
52857
+
52879
52858
 
52880
52859
  scout_compute_api_RangeAggregation.__name__ = "RangeAggregation"
52881
52860
  scout_compute_api_RangeAggregation.__qualname__ = "RangeAggregation"
@@ -52884,6 +52863,7 @@ scout_compute_api_RangeAggregation.__module__ = "nominal_api.scout_compute_api"
52884
52863
 
52885
52864
  class scout_compute_api_RangeAggregationOperation(ConjureUnionType):
52886
52865
  _sum: Optional["scout_compute_api_Summation"] = None
52866
+ _root_mean_square: Optional["scout_compute_api_RootMeanSquare"] = None
52887
52867
  _average: Optional["scout_compute_api_Average"] = None
52888
52868
  _min: Optional["scout_compute_api_Minimum"] = None
52889
52869
  _max: Optional["scout_compute_api_Maximum"] = None
@@ -52895,6 +52875,7 @@ class scout_compute_api_RangeAggregationOperation(ConjureUnionType):
52895
52875
  def _options(cls) -> Dict[str, ConjureFieldDefinition]:
52896
52876
  return {
52897
52877
  'sum': ConjureFieldDefinition('sum', scout_compute_api_Summation),
52878
+ 'root_mean_square': ConjureFieldDefinition('rootMeanSquare', scout_compute_api_RootMeanSquare),
52898
52879
  'average': ConjureFieldDefinition('average', scout_compute_api_Average),
52899
52880
  'min': ConjureFieldDefinition('min', scout_compute_api_Minimum),
52900
52881
  'max': ConjureFieldDefinition('max', scout_compute_api_Maximum),
@@ -52906,6 +52887,7 @@ class scout_compute_api_RangeAggregationOperation(ConjureUnionType):
52906
52887
  def __init__(
52907
52888
  self,
52908
52889
  sum: Optional["scout_compute_api_Summation"] = None,
52890
+ root_mean_square: Optional["scout_compute_api_RootMeanSquare"] = None,
52909
52891
  average: Optional["scout_compute_api_Average"] = None,
52910
52892
  min: Optional["scout_compute_api_Minimum"] = None,
52911
52893
  max: Optional["scout_compute_api_Maximum"] = None,
@@ -52915,12 +52897,15 @@ class scout_compute_api_RangeAggregationOperation(ConjureUnionType):
52915
52897
  type_of_union: Optional[str] = None
52916
52898
  ) -> None:
52917
52899
  if type_of_union is None:
52918
- if (sum is not None) + (average is not None) + (min is not None) + (max is not None) + (standard_deviation is not None) + (count is not None) + (all is not None) != 1:
52900
+ if (sum is not None) + (root_mean_square is not None) + (average is not None) + (min is not None) + (max is not None) + (standard_deviation is not None) + (count is not None) + (all is not None) != 1:
52919
52901
  raise ValueError('a union must contain a single member')
52920
52902
 
52921
52903
  if sum is not None:
52922
52904
  self._sum = sum
52923
52905
  self._type = 'sum'
52906
+ if root_mean_square is not None:
52907
+ self._root_mean_square = root_mean_square
52908
+ self._type = 'rootMeanSquare'
52924
52909
  if average is not None:
52925
52910
  self._average = average
52926
52911
  self._type = 'average'
@@ -52945,6 +52930,11 @@ class scout_compute_api_RangeAggregationOperation(ConjureUnionType):
52945
52930
  raise ValueError('a union value must not be None')
52946
52931
  self._sum = sum
52947
52932
  self._type = 'sum'
52933
+ elif type_of_union == 'rootMeanSquare':
52934
+ if root_mean_square is None:
52935
+ raise ValueError('a union value must not be None')
52936
+ self._root_mean_square = root_mean_square
52937
+ self._type = 'rootMeanSquare'
52948
52938
  elif type_of_union == 'average':
52949
52939
  if average is None:
52950
52940
  raise ValueError('a union value must not be None')
@@ -52980,6 +52970,10 @@ class scout_compute_api_RangeAggregationOperation(ConjureUnionType):
52980
52970
  def sum(self) -> Optional["scout_compute_api_Summation"]:
52981
52971
  return self._sum
52982
52972
 
52973
+ @builtins.property
52974
+ def root_mean_square(self) -> Optional["scout_compute_api_RootMeanSquare"]:
52975
+ return self._root_mean_square
52976
+
52983
52977
  @builtins.property
52984
52978
  def average(self) -> Optional["scout_compute_api_Average"]:
52985
52979
  return self._average
@@ -53009,6 +53003,8 @@ class scout_compute_api_RangeAggregationOperation(ConjureUnionType):
53009
53003
  raise ValueError('{} is not an instance of scout_compute_api_RangeAggregationOperationVisitor'.format(visitor.__class__.__name__))
53010
53004
  if self._type == 'sum' and self.sum is not None:
53011
53005
  return visitor._sum(self.sum)
53006
+ if self._type == 'rootMeanSquare' and self.root_mean_square is not None:
53007
+ return visitor._root_mean_square(self.root_mean_square)
53012
53008
  if self._type == 'average' and self.average is not None:
53013
53009
  return visitor._average(self.average)
53014
53010
  if self._type == 'min' and self.min is not None:
@@ -53034,6 +53030,10 @@ class scout_compute_api_RangeAggregationOperationVisitor:
53034
53030
  def _sum(self, sum: "scout_compute_api_Summation") -> Any:
53035
53031
  pass
53036
53032
 
53033
+ @abstractmethod
53034
+ def _root_mean_square(self, root_mean_square: "scout_compute_api_RootMeanSquare") -> Any:
53035
+ pass
53036
+
53037
53037
  @abstractmethod
53038
53038
  def _average(self, average: "scout_compute_api_Average") -> Any:
53039
53039
  pass
@@ -54139,6 +54139,24 @@ scout_compute_api_RollingOperatorVisitor.__qualname__ = "RollingOperatorVisitor"
54139
54139
  scout_compute_api_RollingOperatorVisitor.__module__ = "nominal_api.scout_compute_api"
54140
54140
 
54141
54141
 
54142
+ class scout_compute_api_RootMeanSquare(ConjureBeanType):
54143
+ """The root mean square of points inside the time window.
54144
+ """
54145
+
54146
+ @builtins.classmethod
54147
+ def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
54148
+ return {
54149
+ }
54150
+
54151
+ __slots__: List[str] = []
54152
+
54153
+
54154
+
54155
+ scout_compute_api_RootMeanSquare.__name__ = "RootMeanSquare"
54156
+ scout_compute_api_RootMeanSquare.__qualname__ = "RootMeanSquare"
54157
+ scout_compute_api_RootMeanSquare.__module__ = "nominal_api.scout_compute_api"
54158
+
54159
+
54142
54160
  class scout_compute_api_RunChannel(ConjureBeanType):
54143
54161
 
54144
54162
  @builtins.classmethod
@@ -81624,6 +81642,7 @@ class scout_run_api_SearchQuery(ConjureUnionType):
81624
81642
  _end_time_inclusive: Optional["scout_run_api_UtcTimestamp"] = None
81625
81643
  _end_time: Optional["scout_run_api_TimeframeFilter"] = None
81626
81644
  _time_range: Optional["scout_run_api_TimeRangeFilter"] = None
81645
+ _created_at: Optional["scout_run_api_TimeframeFilter"] = None
81627
81646
  _exact_match: Optional[str] = None
81628
81647
  _search_text: Optional[str] = None
81629
81648
  _asset: Optional[str] = None
@@ -81653,6 +81672,7 @@ class scout_run_api_SearchQuery(ConjureUnionType):
81653
81672
  'end_time_inclusive': ConjureFieldDefinition('endTimeInclusive', scout_run_api_UtcTimestamp),
81654
81673
  'end_time': ConjureFieldDefinition('endTime', scout_run_api_TimeframeFilter),
81655
81674
  'time_range': ConjureFieldDefinition('timeRange', scout_run_api_TimeRangeFilter),
81675
+ 'created_at': ConjureFieldDefinition('createdAt', scout_run_api_TimeframeFilter),
81656
81676
  'exact_match': ConjureFieldDefinition('exactMatch', str),
81657
81677
  'search_text': ConjureFieldDefinition('searchText', str),
81658
81678
  'asset': ConjureFieldDefinition('asset', scout_rids_api_AssetRid),
@@ -81682,6 +81702,7 @@ class scout_run_api_SearchQuery(ConjureUnionType):
81682
81702
  end_time_inclusive: Optional["scout_run_api_UtcTimestamp"] = None,
81683
81703
  end_time: Optional["scout_run_api_TimeframeFilter"] = None,
81684
81704
  time_range: Optional["scout_run_api_TimeRangeFilter"] = None,
81705
+ created_at: Optional["scout_run_api_TimeframeFilter"] = None,
81685
81706
  exact_match: Optional[str] = None,
81686
81707
  search_text: Optional[str] = None,
81687
81708
  asset: Optional[str] = None,
@@ -81705,7 +81726,7 @@ class scout_run_api_SearchQuery(ConjureUnionType):
81705
81726
  type_of_union: Optional[str] = None
81706
81727
  ) -> None:
81707
81728
  if type_of_union is None:
81708
- if (start_time_inclusive is not None) + (start_time is not None) + (end_time_inclusive is not None) + (end_time is not None) + (time_range is not None) + (exact_match is not None) + (search_text is not None) + (asset is not None) + (assets is not None) + (is_single_asset is not None) + (label is not None) + (labels is not None) + (property is not None) + (properties is not None) + (data_source_series_tag is not None) + (data_source_ref_name is not None) + (data_source is not None) + (run_number is not None) + (run_prefix is not None) + (check_alert_states_filter is not None) + (archived is not None) + (and_ is not None) + (or_ is not None) + (not_ is not None) + (workspace is not None) != 1:
81729
+ if (start_time_inclusive is not None) + (start_time is not None) + (end_time_inclusive is not None) + (end_time is not None) + (time_range is not None) + (created_at is not None) + (exact_match is not None) + (search_text is not None) + (asset is not None) + (assets is not None) + (is_single_asset is not None) + (label is not None) + (labels is not None) + (property is not None) + (properties is not None) + (data_source_series_tag is not None) + (data_source_ref_name is not None) + (data_source is not None) + (run_number is not None) + (run_prefix is not None) + (check_alert_states_filter is not None) + (archived is not None) + (and_ is not None) + (or_ is not None) + (not_ is not None) + (workspace is not None) != 1:
81709
81730
  raise ValueError('a union must contain a single member')
81710
81731
 
81711
81732
  if start_time_inclusive is not None:
@@ -81723,6 +81744,9 @@ class scout_run_api_SearchQuery(ConjureUnionType):
81723
81744
  if time_range is not None:
81724
81745
  self._time_range = time_range
81725
81746
  self._type = 'timeRange'
81747
+ if created_at is not None:
81748
+ self._created_at = created_at
81749
+ self._type = 'createdAt'
81726
81750
  if exact_match is not None:
81727
81751
  self._exact_match = exact_match
81728
81752
  self._type = 'exactMatch'
@@ -81809,6 +81833,11 @@ class scout_run_api_SearchQuery(ConjureUnionType):
81809
81833
  raise ValueError('a union value must not be None')
81810
81834
  self._time_range = time_range
81811
81835
  self._type = 'timeRange'
81836
+ elif type_of_union == 'createdAt':
81837
+ if created_at is None:
81838
+ raise ValueError('a union value must not be None')
81839
+ self._created_at = created_at
81840
+ self._type = 'createdAt'
81812
81841
  elif type_of_union == 'exactMatch':
81813
81842
  if exact_match is None:
81814
81843
  raise ValueError('a union value must not be None')
@@ -81930,6 +81959,10 @@ class scout_run_api_SearchQuery(ConjureUnionType):
81930
81959
  def time_range(self) -> Optional["scout_run_api_TimeRangeFilter"]:
81931
81960
  return self._time_range
81932
81961
 
81962
+ @builtins.property
81963
+ def created_at(self) -> Optional["scout_run_api_TimeframeFilter"]:
81964
+ return self._created_at
81965
+
81933
81966
  @builtins.property
81934
81967
  def exact_match(self) -> Optional[str]:
81935
81968
  """Performs case insensitive exact substring match search on the title.
@@ -82029,6 +82062,8 @@ class scout_run_api_SearchQuery(ConjureUnionType):
82029
82062
  return visitor._end_time(self.end_time)
82030
82063
  if self._type == 'timeRange' and self.time_range is not None:
82031
82064
  return visitor._time_range(self.time_range)
82065
+ if self._type == 'createdAt' and self.created_at is not None:
82066
+ return visitor._created_at(self.created_at)
82032
82067
  if self._type == 'exactMatch' and self.exact_match is not None:
82033
82068
  return visitor._exact_match(self.exact_match)
82034
82069
  if self._type == 'searchText' and self.search_text is not None:
@@ -82098,6 +82133,10 @@ class scout_run_api_SearchQueryVisitor:
82098
82133
  def _time_range(self, time_range: "scout_run_api_TimeRangeFilter") -> Any:
82099
82134
  pass
82100
82135
 
82136
+ @abstractmethod
82137
+ def _created_at(self, created_at: "scout_run_api_TimeframeFilter") -> Any:
82138
+ pass
82139
+
82101
82140
  @abstractmethod
82102
82141
  def _exact_match(self, exact_match: str) -> Any:
82103
82142
  pass
@@ -82781,12 +82820,13 @@ class scout_run_api_UpdateRunRequest(ConjureBeanType):
82781
82820
  'data_sources': ConjureFieldDefinition('dataSources', OptionalTypeWrapper[Dict[scout_api_DataSourceRefName, scout_run_api_CreateRunDataSource]]),
82782
82821
  'attachments': ConjureFieldDefinition('attachments', OptionalTypeWrapper[List[api_rids_AttachmentRid]]),
82783
82822
  'asset': ConjureFieldDefinition('asset', OptionalTypeWrapper[scout_rids_api_AssetRid]),
82784
- 'assets': ConjureFieldDefinition('assets', List[scout_rids_api_AssetRid])
82823
+ 'assets': ConjureFieldDefinition('assets', List[scout_rids_api_AssetRid]),
82824
+ 'strict_overwrite': ConjureFieldDefinition('strictOverwrite', OptionalTypeWrapper[bool])
82785
82825
  }
82786
82826
 
82787
- __slots__: List[str] = ['_title', '_description', '_start_time', '_end_time', '_properties', '_labels', '_links', '_run_prefix', '_data_sources', '_attachments', '_asset', '_assets']
82827
+ __slots__: List[str] = ['_title', '_description', '_start_time', '_end_time', '_properties', '_labels', '_links', '_run_prefix', '_data_sources', '_attachments', '_asset', '_assets', '_strict_overwrite']
82788
82828
 
82789
- def __init__(self, assets: List[str], asset: Optional[str] = None, attachments: Optional[List[str]] = None, data_sources: Optional[Dict[str, "scout_run_api_CreateRunDataSource"]] = None, description: Optional[str] = None, end_time: Optional["scout_run_api_UtcTimestamp"] = None, labels: Optional[List[str]] = None, links: Optional[List["scout_run_api_Link"]] = None, properties: Optional[Dict[str, str]] = None, run_prefix: Optional[str] = None, start_time: Optional["scout_run_api_UtcTimestamp"] = None, title: Optional[str] = None) -> None:
82829
+ def __init__(self, assets: List[str], asset: Optional[str] = None, attachments: Optional[List[str]] = None, data_sources: Optional[Dict[str, "scout_run_api_CreateRunDataSource"]] = None, description: Optional[str] = None, end_time: Optional["scout_run_api_UtcTimestamp"] = None, labels: Optional[List[str]] = None, links: Optional[List["scout_run_api_Link"]] = None, properties: Optional[Dict[str, str]] = None, run_prefix: Optional[str] = None, start_time: Optional["scout_run_api_UtcTimestamp"] = None, strict_overwrite: Optional[bool] = None, title: Optional[str] = None) -> None:
82790
82830
  self._title = title
82791
82831
  self._description = description
82792
82832
  self._start_time = start_time
@@ -82799,6 +82839,7 @@ class scout_run_api_UpdateRunRequest(ConjureBeanType):
82799
82839
  self._attachments = attachments
82800
82840
  self._asset = asset
82801
82841
  self._assets = assets
82842
+ self._strict_overwrite = strict_overwrite
82802
82843
 
82803
82844
  @builtins.property
82804
82845
  def title(self) -> Optional[str]:
@@ -82810,10 +82851,14 @@ class scout_run_api_UpdateRunRequest(ConjureBeanType):
82810
82851
 
82811
82852
  @builtins.property
82812
82853
  def start_time(self) -> Optional["scout_run_api_UtcTimestamp"]:
82854
+ """If strictOverwrite is false, will only update the startTime if it is before the existing startTime.
82855
+ """
82813
82856
  return self._start_time
82814
82857
 
82815
82858
  @builtins.property
82816
82859
  def end_time(self) -> Optional["scout_run_api_UtcTimestamp"]:
82860
+ """If strictOverwrite is false, will only update the endTime if it is after the existing endTime.
82861
+ """
82817
82862
  return self._end_time
82818
82863
 
82819
82864
  @builtins.property
@@ -82850,6 +82895,15 @@ class scout_run_api_UpdateRunRequest(ConjureBeanType):
82850
82895
  def assets(self) -> List[str]:
82851
82896
  return self._assets
82852
82897
 
82898
+ @builtins.property
82899
+ def strict_overwrite(self) -> Optional[bool]:
82900
+ """If true, will blindly overwrite the existing fields with the new values in the request.
82901
+ If false, will only update the fields if application constraints are maintained.
82902
+ See individual field docs for more details.
82903
+ Defaults to true for backwards compatibility.
82904
+ """
82905
+ return self._strict_overwrite
82906
+
82853
82907
 
82854
82908
  scout_run_api_UpdateRunRequest.__name__ = "UpdateRunRequest"
82855
82909
  scout_run_api_UpdateRunRequest.__qualname__ = "UpdateRunRequest"
@@ -87584,7 +87638,7 @@ Enforces read permission on the video.
87584
87638
  _decoder = ConjureDecoder()
87585
87639
  return None if _response.status_code == 204 else _decoder.decode(_response.json(), OptionalTypeWrapper[scout_video_api_GenerateWhepStreamResponse], self._return_none_for_unknown_union_types)
87586
87640
 
87587
- def upload_segment_from_media_mtx(self, auth_header: str, body: Any, content_length: int, duration: str, path: str) -> None:
87641
+ def upload_segment_from_media_mtx(self, auth_header: str, body: Any, content_length: int, duration: str, file_path: str, stream_path: str) -> None:
87588
87642
  """MediaMTX segment upload endpoint. Receives video segments from MediaMTX hooks.
87589
87643
  Validates JWT and logs session. Future: create video segments from uploaded files.
87590
87644
  """
@@ -87598,7 +87652,8 @@ Validates JWT and logs session. Future: create video segments from uploaded file
87598
87652
  }
87599
87653
 
87600
87654
  _params: Dict[str, Any] = {
87601
- 'path': _conjure_encoder.default(path),
87655
+ 'streamPath': _conjure_encoder.default(stream_path),
87656
+ 'filePath': _conjure_encoder.default(file_path),
87602
87657
  'duration': _conjure_encoder.default(duration),
87603
87658
  }
87604
87659
 
@@ -92939,6 +92994,7 @@ class storage_writer_api_ColumnValues(ConjureUnionType):
92939
92994
  _doubles: Optional[List[float]] = None
92940
92995
  _ints: Optional[List[int]] = None
92941
92996
  _arrays: Optional["storage_writer_api_ArraysValues"] = None
92997
+ _structs: Optional[List[str]] = None
92942
92998
 
92943
92999
  @builtins.classmethod
92944
93000
  def _options(cls) -> Dict[str, ConjureFieldDefinition]:
@@ -92946,7 +93002,8 @@ class storage_writer_api_ColumnValues(ConjureUnionType):
92946
93002
  'strings': ConjureFieldDefinition('strings', List[str]),
92947
93003
  'doubles': ConjureFieldDefinition('doubles', List[float]),
92948
93004
  'ints': ConjureFieldDefinition('ints', List[int]),
92949
- 'arrays': ConjureFieldDefinition('arrays', storage_writer_api_ArraysValues)
93005
+ 'arrays': ConjureFieldDefinition('arrays', storage_writer_api_ArraysValues),
93006
+ 'structs': ConjureFieldDefinition('structs', List[str])
92950
93007
  }
92951
93008
 
92952
93009
  def __init__(
@@ -92955,10 +93012,11 @@ class storage_writer_api_ColumnValues(ConjureUnionType):
92955
93012
  doubles: Optional[List[float]] = None,
92956
93013
  ints: Optional[List[int]] = None,
92957
93014
  arrays: Optional["storage_writer_api_ArraysValues"] = None,
93015
+ structs: Optional[List[str]] = None,
92958
93016
  type_of_union: Optional[str] = None
92959
93017
  ) -> None:
92960
93018
  if type_of_union is None:
92961
- if (strings is not None) + (doubles is not None) + (ints is not None) + (arrays is not None) != 1:
93019
+ if (strings is not None) + (doubles is not None) + (ints is not None) + (arrays is not None) + (structs is not None) != 1:
92962
93020
  raise ValueError('a union must contain a single member')
92963
93021
 
92964
93022
  if strings is not None:
@@ -92973,6 +93031,9 @@ class storage_writer_api_ColumnValues(ConjureUnionType):
92973
93031
  if arrays is not None:
92974
93032
  self._arrays = arrays
92975
93033
  self._type = 'arrays'
93034
+ if structs is not None:
93035
+ self._structs = structs
93036
+ self._type = 'structs'
92976
93037
 
92977
93038
  elif type_of_union == 'strings':
92978
93039
  if strings is None:
@@ -92994,6 +93055,11 @@ class storage_writer_api_ColumnValues(ConjureUnionType):
92994
93055
  raise ValueError('a union value must not be None')
92995
93056
  self._arrays = arrays
92996
93057
  self._type = 'arrays'
93058
+ elif type_of_union == 'structs':
93059
+ if structs is None:
93060
+ raise ValueError('a union value must not be None')
93061
+ self._structs = structs
93062
+ self._type = 'structs'
92997
93063
 
92998
93064
  @builtins.property
92999
93065
  def strings(self) -> Optional[List[str]]:
@@ -93011,6 +93077,10 @@ class storage_writer_api_ColumnValues(ConjureUnionType):
93011
93077
  def arrays(self) -> Optional["storage_writer_api_ArraysValues"]:
93012
93078
  return self._arrays
93013
93079
 
93080
+ @builtins.property
93081
+ def structs(self) -> Optional[List[str]]:
93082
+ return self._structs
93083
+
93014
93084
  def accept(self, visitor) -> Any:
93015
93085
  if not isinstance(visitor, storage_writer_api_ColumnValuesVisitor):
93016
93086
  raise ValueError('{} is not an instance of storage_writer_api_ColumnValuesVisitor'.format(visitor.__class__.__name__))
@@ -93022,6 +93092,8 @@ class storage_writer_api_ColumnValues(ConjureUnionType):
93022
93092
  return visitor._ints(self.ints)
93023
93093
  if self._type == 'arrays' and self.arrays is not None:
93024
93094
  return visitor._arrays(self.arrays)
93095
+ if self._type == 'structs' and self.structs is not None:
93096
+ return visitor._structs(self.structs)
93025
93097
 
93026
93098
 
93027
93099
  storage_writer_api_ColumnValues.__name__ = "ColumnValues"
@@ -93047,6 +93119,10 @@ class storage_writer_api_ColumnValuesVisitor:
93047
93119
  def _arrays(self, arrays: "storage_writer_api_ArraysValues") -> Any:
93048
93120
  pass
93049
93121
 
93122
+ @abstractmethod
93123
+ def _structs(self, structs: List[str]) -> Any:
93124
+ pass
93125
+
93050
93126
 
93051
93127
  storage_writer_api_ColumnValuesVisitor.__name__ = "ColumnValuesVisitor"
93052
93128
  storage_writer_api_ColumnValuesVisitor.__qualname__ = "ColumnValuesVisitor"
@@ -93442,7 +93518,7 @@ message WriteRequestNominal {
93442
93518
  message Series {
93443
93519
  Channel channel = 1;
93444
93520
  map<string, string> tags = 2; // Key-value pairs for series tags
93445
- Points points = 3; // Contains either double or string points
93521
+ Points points = 3; // Contains double, string, integer, or array points
93446
93522
  }
93447
93523
 
93448
93524
  message Channel {
@@ -93454,6 +93530,7 @@ message Points {
93454
93530
  DoublePoints double_points = 1;
93455
93531
  StringPoints string_points = 2;
93456
93532
  IntegerPoints integer_points = 3;
93533
+ ArrayPoints array_points = 4;
93457
93534
  }
93458
93535
  }
93459
93536
 
@@ -93469,6 +93546,21 @@ message IntegerPoints {
93469
93546
  repeated IntegerPoint points = 1;
93470
93547
  }
93471
93548
 
93549
+ message ArrayPoints {
93550
+ oneof array_type {
93551
+ DoubleArrayPoints double_array_points = 1;
93552
+ StringArrayPoints string_array_points = 2;
93553
+ }
93554
+ }
93555
+
93556
+ message DoubleArrayPoints {
93557
+ repeated DoubleArrayPoint points = 1;
93558
+ }
93559
+
93560
+ message StringArrayPoints {
93561
+ repeated StringArrayPoint points = 1;
93562
+ }
93563
+
93472
93564
  message DoublePoint {
93473
93565
  google.protobuf.Timestamp timestamp = 1;
93474
93566
  double value = 2;
@@ -93483,13 +93575,24 @@ message IntegerPoint {
93483
93575
  google.protobuf.Timestamp timestamp = 1;
93484
93576
  int64 value = 2;
93485
93577
  }
93578
+
93579
+ message DoubleArrayPoint {
93580
+ google.protobuf.Timestamp timestamp = 1;
93581
+ repeated double value = 2;
93582
+ }
93583
+
93584
+ message StringArrayPoint {
93585
+ google.protobuf.Timestamp timestamp = 1;
93586
+ repeated string value = 2;
93587
+ }
93486
93588
  ```
93487
93589
 
93488
93590
  Each request can contain multiple series, where each series consists of:
93489
93591
  - A channel name
93490
93592
  - A map of tags (key-value pairs)
93491
- - A collection of points, which can be either double or string values
93593
+ - A collection of points, which can be double, string, integer, or array (double/string) values
93492
93594
  - Each point includes a timestamp (using google.protobuf.Timestamp) and its value
93595
+ - Array points contain repeated values (array<double> or array<string>)
93493
93596
 
93494
93597
  The endpoint requires the Content-Type header to be set to "application/x-protobuf".
93495
93598
  If the payload is compressed, the appropriate Content-Encoding header must be included.
@@ -93729,13 +93832,15 @@ class storage_writer_api_PointsExternal(ConjureUnionType):
93729
93832
  _string: Optional[List["storage_writer_api_StringPoint"]] = None
93730
93833
  _double: Optional[List["storage_writer_api_DoublePoint"]] = None
93731
93834
  _int_: Optional[List["storage_writer_api_IntPoint"]] = None
93835
+ _array: Optional["storage_writer_api_ArrayPoints"] = None
93732
93836
 
93733
93837
  @builtins.classmethod
93734
93838
  def _options(cls) -> Dict[str, ConjureFieldDefinition]:
93735
93839
  return {
93736
93840
  'string': ConjureFieldDefinition('string', List[storage_writer_api_StringPoint]),
93737
93841
  'double': ConjureFieldDefinition('double', List[storage_writer_api_DoublePoint]),
93738
- 'int_': ConjureFieldDefinition('int', List[storage_writer_api_IntPoint])
93842
+ 'int_': ConjureFieldDefinition('int', List[storage_writer_api_IntPoint]),
93843
+ 'array': ConjureFieldDefinition('array', storage_writer_api_ArrayPoints)
93739
93844
  }
93740
93845
 
93741
93846
  def __init__(
@@ -93743,10 +93848,11 @@ class storage_writer_api_PointsExternal(ConjureUnionType):
93743
93848
  string: Optional[List["storage_writer_api_StringPoint"]] = None,
93744
93849
  double: Optional[List["storage_writer_api_DoublePoint"]] = None,
93745
93850
  int_: Optional[List["storage_writer_api_IntPoint"]] = None,
93851
+ array: Optional["storage_writer_api_ArrayPoints"] = None,
93746
93852
  type_of_union: Optional[str] = None
93747
93853
  ) -> None:
93748
93854
  if type_of_union is None:
93749
- if (string is not None) + (double is not None) + (int_ is not None) != 1:
93855
+ if (string is not None) + (double is not None) + (int_ is not None) + (array is not None) != 1:
93750
93856
  raise ValueError('a union must contain a single member')
93751
93857
 
93752
93858
  if string is not None:
@@ -93758,6 +93864,9 @@ class storage_writer_api_PointsExternal(ConjureUnionType):
93758
93864
  if int_ is not None:
93759
93865
  self._int_ = int_
93760
93866
  self._type = 'int'
93867
+ if array is not None:
93868
+ self._array = array
93869
+ self._type = 'array'
93761
93870
 
93762
93871
  elif type_of_union == 'string':
93763
93872
  if string is None:
@@ -93774,6 +93883,11 @@ class storage_writer_api_PointsExternal(ConjureUnionType):
93774
93883
  raise ValueError('a union value must not be None')
93775
93884
  self._int_ = int_
93776
93885
  self._type = 'int'
93886
+ elif type_of_union == 'array':
93887
+ if array is None:
93888
+ raise ValueError('a union value must not be None')
93889
+ self._array = array
93890
+ self._type = 'array'
93777
93891
 
93778
93892
  @builtins.property
93779
93893
  def string(self) -> Optional[List["storage_writer_api_StringPoint"]]:
@@ -93787,6 +93901,10 @@ class storage_writer_api_PointsExternal(ConjureUnionType):
93787
93901
  def int_(self) -> Optional[List["storage_writer_api_IntPoint"]]:
93788
93902
  return self._int_
93789
93903
 
93904
+ @builtins.property
93905
+ def array(self) -> Optional["storage_writer_api_ArrayPoints"]:
93906
+ return self._array
93907
+
93790
93908
  def accept(self, visitor) -> Any:
93791
93909
  if not isinstance(visitor, storage_writer_api_PointsExternalVisitor):
93792
93910
  raise ValueError('{} is not an instance of storage_writer_api_PointsExternalVisitor'.format(visitor.__class__.__name__))
@@ -93796,6 +93914,8 @@ class storage_writer_api_PointsExternal(ConjureUnionType):
93796
93914
  return visitor._double(self.double)
93797
93915
  if self._type == 'int' and self.int_ is not None:
93798
93916
  return visitor._int(self.int_)
93917
+ if self._type == 'array' and self.array is not None:
93918
+ return visitor._array(self.array)
93799
93919
 
93800
93920
 
93801
93921
  storage_writer_api_PointsExternal.__name__ = "PointsExternal"
@@ -93817,6 +93937,10 @@ class storage_writer_api_PointsExternalVisitor:
93817
93937
  def _int(self, int_: List["storage_writer_api_IntPoint"]) -> Any:
93818
93938
  pass
93819
93939
 
93940
+ @abstractmethod
93941
+ def _array(self, array: "storage_writer_api_ArrayPoints") -> Any:
93942
+ pass
93943
+
93820
93944
 
93821
93945
  storage_writer_api_PointsExternalVisitor.__name__ = "PointsExternalVisitor"
93822
93946
  storage_writer_api_PointsExternalVisitor.__qualname__ = "PointsExternalVisitor"
@@ -98801,6 +98925,8 @@ comments_api_ReactionRid = str
98801
98925
 
98802
98926
  scout_versioning_api_CommitId = str
98803
98927
 
98928
+ api_rids_DataConnectorRid = str
98929
+
98804
98930
  scout_run_api_ConnectionRid = str
98805
98931
 
98806
98932
  timeseries_logicalseries_api_DatasetName = str
@@ -5,6 +5,7 @@ from .._impl import (
5
5
  api_rids_AutomaticCheckEvaluationRid as AutomaticCheckEvaluationRid,
6
6
  api_rids_ChunkRid as ChunkRid,
7
7
  api_rids_ConnectAppRid as ConnectAppRid,
8
+ api_rids_DataConnectorRid as DataConnectorRid,
8
9
  api_rids_DataSourceRid as DataSourceRid,
9
10
  api_rids_DatasetRid as DatasetRid,
10
11
  api_rids_EdgeSyncSourceRid as EdgeSyncSourceRid,
@@ -27,6 +28,7 @@ __all__ = [
27
28
  'AutomaticCheckEvaluationRid',
28
29
  'ChunkRid',
29
30
  'ConnectAppRid',
31
+ 'DataConnectorRid',
30
32
  'DataSourceRid',
31
33
  'DatasetRid',
32
34
  'EdgeSyncSourceRid',
@@ -294,6 +294,7 @@ from .._impl import (
294
294
  scout_compute_api_RollingOperationSeries as RollingOperationSeries,
295
295
  scout_compute_api_RollingOperator as RollingOperator,
296
296
  scout_compute_api_RollingOperatorVisitor as RollingOperatorVisitor,
297
+ scout_compute_api_RootMeanSquare as RootMeanSquare,
297
298
  scout_compute_api_RunChannel as RunChannel,
298
299
  scout_compute_api_ScaleSeries as ScaleSeries,
299
300
  scout_compute_api_Scatter as Scatter,
@@ -677,6 +678,7 @@ __all__ = [
677
678
  'RollingOperationSeries',
678
679
  'RollingOperator',
679
680
  'RollingOperatorVisitor',
681
+ 'RootMeanSquare',
680
682
  'RunChannel',
681
683
  'ScaleSeries',
682
684
  'Scatter',
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: nominal-api
3
- Version: 0.979.0
3
+ Version: 0.983.0
4
4
  Requires-Python: >=3.8
5
5
  Requires-Dist: requests
6
6
  Requires-Dist: conjure-python-client<4,>=2.8.0
@@ -6,7 +6,7 @@ from setuptools import (
6
6
 
7
7
  setup(
8
8
  name='nominal-api',
9
- version='0.979.0',
9
+ version='0.983.0',
10
10
  python_requires='>=3.8',
11
11
  package_data={"": ["py.typed"]},
12
12
  packages=find_packages(),
File without changes