nominal-api 0.685.0__tar.gz → 0.686.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.

Potentially problematic release.


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

Files changed (82) hide show
  1. {nominal_api-0.685.0 → nominal_api-0.686.0}/PKG-INFO +1 -1
  2. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/__init__.py +1 -1
  3. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/_impl.py +202 -18
  4. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/scout_compute_api/__init__.py +4 -0
  5. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api.egg-info/PKG-INFO +1 -1
  6. {nominal_api-0.685.0 → nominal_api-0.686.0}/setup.py +1 -1
  7. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/api/__init__.py +0 -0
  8. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/api_ids/__init__.py +0 -0
  9. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/api_rids/__init__.py +0 -0
  10. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/attachments_api/__init__.py +0 -0
  11. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/authentication_api/__init__.py +0 -0
  12. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/authorization/__init__.py +0 -0
  13. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/comments_api/__init__.py +0 -0
  14. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/connect_download/__init__.py +0 -0
  15. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/datasource/__init__.py +0 -0
  16. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/datasource_api/__init__.py +0 -0
  17. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/datasource_logset/__init__.py +0 -0
  18. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/datasource_logset_api/__init__.py +0 -0
  19. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/datasource_pagination_api/__init__.py +0 -0
  20. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/event/__init__.py +0 -0
  21. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/ingest_api/__init__.py +0 -0
  22. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/ingest_workflow_api/__init__.py +0 -0
  23. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/persistent_compute_api/__init__.py +0 -0
  24. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/py.typed +0 -0
  25. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/scout/__init__.py +0 -0
  26. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/scout_api/__init__.py +0 -0
  27. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/scout_asset_api/__init__.py +0 -0
  28. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/scout_assets/__init__.py +0 -0
  29. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/scout_catalog/__init__.py +0 -0
  30. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/scout_channelvariables_api/__init__.py +0 -0
  31. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/scout_chart_api/__init__.py +0 -0
  32. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/scout_chartdefinition_api/__init__.py +0 -0
  33. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/scout_checklistexecution_api/__init__.py +0 -0
  34. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/scout_checks_api/__init__.py +0 -0
  35. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/scout_comparisonnotebook_api/__init__.py +0 -0
  36. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/scout_comparisonrun_api/__init__.py +0 -0
  37. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/scout_compute_api_deprecated/__init__.py +0 -0
  38. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/scout_compute_resolved_api/__init__.py +0 -0
  39. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/scout_dataexport_api/__init__.py +0 -0
  40. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/scout_datareview_api/__init__.py +0 -0
  41. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/scout_datasource/__init__.py +0 -0
  42. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/scout_datasource_connection/__init__.py +0 -0
  43. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/scout_datasource_connection_api/__init__.py +0 -0
  44. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/scout_datasource_connection_api_influx/__init__.py +0 -0
  45. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/scout_favorites/__init__.py +0 -0
  46. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/scout_favorites_api/__init__.py +0 -0
  47. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/scout_integrations_api/__init__.py +0 -0
  48. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/scout_internal_search_api/__init__.py +0 -0
  49. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/scout_jobs_api/__init__.py +0 -0
  50. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/scout_layout_api/__init__.py +0 -0
  51. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/scout_metadata/__init__.py +0 -0
  52. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/scout_notebook_api/__init__.py +0 -0
  53. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/scout_plotting/__init__.py +0 -0
  54. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/scout_rids_api/__init__.py +0 -0
  55. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/scout_run_api/__init__.py +0 -0
  56. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/scout_template_api/__init__.py +0 -0
  57. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/scout_units_api/__init__.py +0 -0
  58. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/scout_versioning_api/__init__.py +0 -0
  59. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/scout_video/__init__.py +0 -0
  60. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/scout_video_api/__init__.py +0 -0
  61. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/scout_workbookcommon_api/__init__.py +0 -0
  62. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/secrets_api/__init__.py +0 -0
  63. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/security_api_workspace/__init__.py +0 -0
  64. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/storage_datasource_api/__init__.py +0 -0
  65. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/storage_deletion_api/__init__.py +0 -0
  66. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/storage_series_api/__init__.py +0 -0
  67. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/storage_writer_api/__init__.py +0 -0
  68. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/themes_api/__init__.py +0 -0
  69. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/timeseries_archetype/__init__.py +0 -0
  70. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/timeseries_archetype_api/__init__.py +0 -0
  71. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/timeseries_channelmetadata/__init__.py +0 -0
  72. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/timeseries_channelmetadata_api/__init__.py +0 -0
  73. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/timeseries_logicalseries/__init__.py +0 -0
  74. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/timeseries_logicalseries_api/__init__.py +0 -0
  75. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/timeseries_seriescache/__init__.py +0 -0
  76. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/timeseries_seriescache_api/__init__.py +0 -0
  77. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api/upload_api/__init__.py +0 -0
  78. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api.egg-info/SOURCES.txt +0 -0
  79. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api.egg-info/dependency_links.txt +0 -0
  80. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api.egg-info/requires.txt +0 -0
  81. {nominal_api-0.685.0 → nominal_api-0.686.0}/nominal_api.egg-info/top_level.txt +0 -0
  82. {nominal_api-0.685.0 → nominal_api-0.686.0}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: nominal-api
3
- Version: 0.685.0
3
+ Version: 0.686.0
4
4
  Requires-Python: >=3.8
5
5
  Requires-Dist: requests
6
6
  Requires-Dist: conjure-python-client<3,>=2.8.0
@@ -75,5 +75,5 @@ __all__ = [
75
75
 
76
76
  __conjure_generator_version__ = "4.9.0"
77
77
 
78
- __version__ = "0.685.0"
78
+ __version__ = "0.686.0"
79
79
 
@@ -34396,16 +34396,18 @@ class scout_compute_api_AssetChannel(ConjureBeanType):
34396
34396
  'asset_rid': ConjureFieldDefinition('assetRid', scout_compute_api_StringConstant),
34397
34397
  'data_scope_name': ConjureFieldDefinition('dataScopeName', scout_compute_api_StringConstant),
34398
34398
  'channel': ConjureFieldDefinition('channel', scout_compute_api_StringConstant),
34399
- 'additional_tags': ConjureFieldDefinition('additionalTags', Dict[str, scout_compute_api_StringConstant])
34399
+ 'additional_tags': ConjureFieldDefinition('additionalTags', Dict[str, scout_compute_api_StringConstant]),
34400
+ 'tags_to_group_by': ConjureFieldDefinition('tagsToGroupBy', List[str])
34400
34401
  }
34401
34402
 
34402
- __slots__: List[str] = ['_asset_rid', '_data_scope_name', '_channel', '_additional_tags']
34403
+ __slots__: List[str] = ['_asset_rid', '_data_scope_name', '_channel', '_additional_tags', '_tags_to_group_by']
34403
34404
 
34404
- def __init__(self, additional_tags: Dict[str, "scout_compute_api_StringConstant"], asset_rid: "scout_compute_api_StringConstant", channel: "scout_compute_api_StringConstant", data_scope_name: "scout_compute_api_StringConstant") -> None:
34405
+ def __init__(self, additional_tags: Dict[str, "scout_compute_api_StringConstant"], asset_rid: "scout_compute_api_StringConstant", channel: "scout_compute_api_StringConstant", data_scope_name: "scout_compute_api_StringConstant", tags_to_group_by: List[str]) -> None:
34405
34406
  self._asset_rid = asset_rid
34406
34407
  self._data_scope_name = data_scope_name
34407
34408
  self._channel = channel
34408
34409
  self._additional_tags = additional_tags
34410
+ self._tags_to_group_by = tags_to_group_by
34409
34411
 
34410
34412
  @builtins.property
34411
34413
  def asset_rid(self) -> "scout_compute_api_StringConstant":
@@ -34431,6 +34433,14 @@ both sets of tag filters. For log series, include arg filters here in addition t
34431
34433
  """
34432
34434
  return self._additional_tags
34433
34435
 
34436
+ @builtins.property
34437
+ def tags_to_group_by(self) -> List[str]:
34438
+ """
34439
+ Tags that the channel should be grouped by. If this is non-empty a grouped result will be returned
34440
+ with an entry for each grouping.
34441
+ """
34442
+ return self._tags_to_group_by
34443
+
34434
34444
 
34435
34445
  scout_compute_api_AssetChannel.__name__ = "AssetChannel"
34436
34446
  scout_compute_api_AssetChannel.__qualname__ = "AssetChannel"
@@ -36196,6 +36206,7 @@ class scout_compute_api_ComputeNodeResponse(ConjureUnionType):
36196
36206
  _numeric_histogram: Optional["scout_compute_api_NumericHistogramPlot"] = None
36197
36207
  _enum_histogram: Optional["scout_compute_api_EnumHistogramPlot"] = None
36198
36208
  _curve_fit: Optional["scout_compute_api_CurveFitResult"] = None
36209
+ _grouped: Optional["scout_compute_api_GroupedComputeNodeResponses"] = None
36199
36210
 
36200
36211
  @builtins.classmethod
36201
36212
  def _options(cls) -> Dict[str, ConjureFieldDefinition]:
@@ -36218,7 +36229,8 @@ class scout_compute_api_ComputeNodeResponse(ConjureUnionType):
36218
36229
  'frequency_domain': ConjureFieldDefinition('frequencyDomain', scout_compute_api_FrequencyDomainPlot),
36219
36230
  'numeric_histogram': ConjureFieldDefinition('numericHistogram', scout_compute_api_NumericHistogramPlot),
36220
36231
  'enum_histogram': ConjureFieldDefinition('enumHistogram', scout_compute_api_EnumHistogramPlot),
36221
- 'curve_fit': ConjureFieldDefinition('curveFit', scout_compute_api_CurveFitResult)
36232
+ 'curve_fit': ConjureFieldDefinition('curveFit', scout_compute_api_CurveFitResult),
36233
+ 'grouped': ConjureFieldDefinition('grouped', scout_compute_api_GroupedComputeNodeResponses)
36222
36234
  }
36223
36235
 
36224
36236
  def __init__(
@@ -36242,10 +36254,11 @@ class scout_compute_api_ComputeNodeResponse(ConjureUnionType):
36242
36254
  numeric_histogram: Optional["scout_compute_api_NumericHistogramPlot"] = None,
36243
36255
  enum_histogram: Optional["scout_compute_api_EnumHistogramPlot"] = None,
36244
36256
  curve_fit: Optional["scout_compute_api_CurveFitResult"] = None,
36257
+ grouped: Optional["scout_compute_api_GroupedComputeNodeResponses"] = None,
36245
36258
  type_of_union: Optional[str] = None
36246
36259
  ) -> None:
36247
36260
  if type_of_union is None:
36248
- if (range is not None) + (ranges_summary is not None) + (range_value is not None) + (numeric is not None) + (bucketed_numeric is not None) + (numeric_point is not None) + (enum is not None) + (enum_point is not None) + (bucketed_enum is not None) + (paged_log is not None) + (log_point is not None) + (cartesian is not None) + (bucketed_cartesian is not None) + (bucketed_cartesian3d is not None) + (bucketed_geo is not None) + (frequency_domain is not None) + (numeric_histogram is not None) + (enum_histogram is not None) + (curve_fit is not None) != 1:
36261
+ if (range is not None) + (ranges_summary is not None) + (range_value is not None) + (numeric is not None) + (bucketed_numeric is not None) + (numeric_point is not None) + (enum is not None) + (enum_point is not None) + (bucketed_enum is not None) + (paged_log is not None) + (log_point is not None) + (cartesian is not None) + (bucketed_cartesian is not None) + (bucketed_cartesian3d is not None) + (bucketed_geo is not None) + (frequency_domain is not None) + (numeric_histogram is not None) + (enum_histogram is not None) + (curve_fit is not None) + (grouped is not None) != 1:
36249
36262
  raise ValueError('a union must contain a single member')
36250
36263
 
36251
36264
  if range is not None:
@@ -36305,6 +36318,9 @@ class scout_compute_api_ComputeNodeResponse(ConjureUnionType):
36305
36318
  if curve_fit is not None:
36306
36319
  self._curve_fit = curve_fit
36307
36320
  self._type = 'curveFit'
36321
+ if grouped is not None:
36322
+ self._grouped = grouped
36323
+ self._type = 'grouped'
36308
36324
 
36309
36325
  elif type_of_union == 'range':
36310
36326
  if range is None:
@@ -36401,6 +36417,11 @@ class scout_compute_api_ComputeNodeResponse(ConjureUnionType):
36401
36417
  raise ValueError('a union value must not be None')
36402
36418
  self._curve_fit = curve_fit
36403
36419
  self._type = 'curveFit'
36420
+ elif type_of_union == 'grouped':
36421
+ if grouped is None:
36422
+ raise ValueError('a union value must not be None')
36423
+ self._grouped = grouped
36424
+ self._type = 'grouped'
36404
36425
 
36405
36426
  @builtins.property
36406
36427
  def range(self) -> Optional[List["scout_compute_api_Range"]]:
@@ -36478,6 +36499,10 @@ class scout_compute_api_ComputeNodeResponse(ConjureUnionType):
36478
36499
  def curve_fit(self) -> Optional["scout_compute_api_CurveFitResult"]:
36479
36500
  return self._curve_fit
36480
36501
 
36502
+ @builtins.property
36503
+ def grouped(self) -> Optional["scout_compute_api_GroupedComputeNodeResponses"]:
36504
+ return self._grouped
36505
+
36481
36506
  def accept(self, visitor) -> Any:
36482
36507
  if not isinstance(visitor, scout_compute_api_ComputeNodeResponseVisitor):
36483
36508
  raise ValueError('{} is not an instance of scout_compute_api_ComputeNodeResponseVisitor'.format(visitor.__class__.__name__))
@@ -36519,6 +36544,8 @@ class scout_compute_api_ComputeNodeResponse(ConjureUnionType):
36519
36544
  return visitor._enum_histogram(self.enum_histogram)
36520
36545
  if self._type == 'curveFit' and self.curve_fit is not None:
36521
36546
  return visitor._curve_fit(self.curve_fit)
36547
+ if self._type == 'grouped' and self.grouped is not None:
36548
+ return visitor._grouped(self.grouped)
36522
36549
 
36523
36550
 
36524
36551
  scout_compute_api_ComputeNodeResponse.__name__ = "ComputeNodeResponse"
@@ -36604,6 +36631,10 @@ class scout_compute_api_ComputeNodeResponseVisitor:
36604
36631
  def _curve_fit(self, curve_fit: "scout_compute_api_CurveFitResult") -> Any:
36605
36632
  pass
36606
36633
 
36634
+ @abstractmethod
36635
+ def _grouped(self, grouped: "scout_compute_api_GroupedComputeNodeResponses") -> Any:
36636
+ pass
36637
+
36607
36638
 
36608
36639
  scout_compute_api_ComputeNodeResponseVisitor.__name__ = "ComputeNodeResponseVisitor"
36609
36640
  scout_compute_api_ComputeNodeResponseVisitor.__qualname__ = "ComputeNodeResponseVisitor"
@@ -37624,15 +37655,17 @@ class scout_compute_api_DataSourceChannel(ConjureBeanType):
37624
37655
  return {
37625
37656
  'data_source_rid': ConjureFieldDefinition('dataSourceRid', scout_compute_api_StringConstant),
37626
37657
  'channel': ConjureFieldDefinition('channel', scout_compute_api_StringConstant),
37627
- 'tags': ConjureFieldDefinition('tags', Dict[str, scout_compute_api_StringConstant])
37658
+ 'tags': ConjureFieldDefinition('tags', Dict[str, scout_compute_api_StringConstant]),
37659
+ 'tags_to_group_by': ConjureFieldDefinition('tagsToGroupBy', List[str])
37628
37660
  }
37629
37661
 
37630
- __slots__: List[str] = ['_data_source_rid', '_channel', '_tags']
37662
+ __slots__: List[str] = ['_data_source_rid', '_channel', '_tags', '_tags_to_group_by']
37631
37663
 
37632
- def __init__(self, channel: "scout_compute_api_StringConstant", data_source_rid: "scout_compute_api_StringConstant", tags: Dict[str, "scout_compute_api_StringConstant"]) -> None:
37664
+ def __init__(self, channel: "scout_compute_api_StringConstant", data_source_rid: "scout_compute_api_StringConstant", tags: Dict[str, "scout_compute_api_StringConstant"], tags_to_group_by: List[str]) -> None:
37633
37665
  self._data_source_rid = data_source_rid
37634
37666
  self._channel = channel
37635
37667
  self._tags = tags
37668
+ self._tags_to_group_by = tags_to_group_by
37636
37669
 
37637
37670
  @builtins.property
37638
37671
  def data_source_rid(self) -> "scout_compute_api_StringConstant":
@@ -37650,6 +37683,14 @@ provided tag keys. For log series, include arg filters here in addition to tag f
37650
37683
  """
37651
37684
  return self._tags
37652
37685
 
37686
+ @builtins.property
37687
+ def tags_to_group_by(self) -> List[str]:
37688
+ """
37689
+ Tags that the channel should be grouped by. If this is non-empty a grouped result will be returned
37690
+ with an entry for each grouping.
37691
+ """
37692
+ return self._tags_to_group_by
37693
+
37653
37694
 
37654
37695
  scout_compute_api_DataSourceChannel.__name__ = "DataSourceChannel"
37655
37696
  scout_compute_api_DataSourceChannel.__qualname__ = "DataSourceChannel"
@@ -39472,6 +39513,121 @@ scout_compute_api_GeoTimeBucket.__qualname__ = "GeoTimeBucket"
39472
39513
  scout_compute_api_GeoTimeBucket.__module__ = "nominal_api.scout_compute_api"
39473
39514
 
39474
39515
 
39516
+ class scout_compute_api_GroupedComputeNodeResponse(ConjureBeanType):
39517
+
39518
+ @builtins.classmethod
39519
+ def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
39520
+ return {
39521
+ 'grouping': ConjureFieldDefinition('grouping', scout_compute_api_Grouping),
39522
+ 'response': ConjureFieldDefinition('response', scout_compute_api_ComputeNodeResponse)
39523
+ }
39524
+
39525
+ __slots__: List[str] = ['_grouping', '_response']
39526
+
39527
+ def __init__(self, grouping: "scout_compute_api_Grouping", response: "scout_compute_api_ComputeNodeResponse") -> None:
39528
+ self._grouping = grouping
39529
+ self._response = response
39530
+
39531
+ @builtins.property
39532
+ def grouping(self) -> "scout_compute_api_Grouping":
39533
+ return self._grouping
39534
+
39535
+ @builtins.property
39536
+ def response(self) -> "scout_compute_api_ComputeNodeResponse":
39537
+ return self._response
39538
+
39539
+
39540
+ scout_compute_api_GroupedComputeNodeResponse.__name__ = "GroupedComputeNodeResponse"
39541
+ scout_compute_api_GroupedComputeNodeResponse.__qualname__ = "GroupedComputeNodeResponse"
39542
+ scout_compute_api_GroupedComputeNodeResponse.__module__ = "nominal_api.scout_compute_api"
39543
+
39544
+
39545
+ class scout_compute_api_GroupedComputeNodeResponses(ConjureBeanType):
39546
+ """
39547
+ Contains a `ComputeNodeResponse` for each applicable grouping along with metadata describing the grouping.
39548
+ All the contained `ComputeNodeResponse`s are guaranteed to be of the same type.
39549
+ """
39550
+
39551
+ @builtins.classmethod
39552
+ def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
39553
+ return {
39554
+ 'responses': ConjureFieldDefinition('responses', List[scout_compute_api_GroupedComputeNodeResponse])
39555
+ }
39556
+
39557
+ __slots__: List[str] = ['_responses']
39558
+
39559
+ def __init__(self, responses: List["scout_compute_api_GroupedComputeNodeResponse"]) -> None:
39560
+ self._responses = responses
39561
+
39562
+ @builtins.property
39563
+ def responses(self) -> List["scout_compute_api_GroupedComputeNodeResponse"]:
39564
+ return self._responses
39565
+
39566
+
39567
+ scout_compute_api_GroupedComputeNodeResponses.__name__ = "GroupedComputeNodeResponses"
39568
+ scout_compute_api_GroupedComputeNodeResponses.__qualname__ = "GroupedComputeNodeResponses"
39569
+ scout_compute_api_GroupedComputeNodeResponses.__module__ = "nominal_api.scout_compute_api"
39570
+
39571
+
39572
+ class scout_compute_api_Grouping(ConjureUnionType):
39573
+ _tags_with_values: Optional[Dict[str, str]] = None
39574
+
39575
+ @builtins.classmethod
39576
+ def _options(cls) -> Dict[str, ConjureFieldDefinition]:
39577
+ return {
39578
+ 'tags_with_values': ConjureFieldDefinition('tagsWithValues', Dict[str, str])
39579
+ }
39580
+
39581
+ def __init__(
39582
+ self,
39583
+ tags_with_values: Optional[Dict[str, str]] = None,
39584
+ type_of_union: Optional[str] = None
39585
+ ) -> None:
39586
+ if type_of_union is None:
39587
+ if (tags_with_values is not None) != 1:
39588
+ raise ValueError('a union must contain a single member')
39589
+
39590
+ if tags_with_values is not None:
39591
+ self._tags_with_values = tags_with_values
39592
+ self._type = 'tagsWithValues'
39593
+
39594
+ elif type_of_union == 'tagsWithValues':
39595
+ if tags_with_values is None:
39596
+ raise ValueError('a union value must not be None')
39597
+ self._tags_with_values = tags_with_values
39598
+ self._type = 'tagsWithValues'
39599
+
39600
+ @builtins.property
39601
+ def tags_with_values(self) -> Optional[Dict[str, str]]:
39602
+ """
39603
+ A grouping identified by a specific instantiation of tag keys and values.
39604
+ """
39605
+ return self._tags_with_values
39606
+
39607
+ def accept(self, visitor) -> Any:
39608
+ if not isinstance(visitor, scout_compute_api_GroupingVisitor):
39609
+ raise ValueError('{} is not an instance of scout_compute_api_GroupingVisitor'.format(visitor.__class__.__name__))
39610
+ if self._type == 'tagsWithValues' and self.tags_with_values is not None:
39611
+ return visitor._tags_with_values(self.tags_with_values)
39612
+
39613
+
39614
+ scout_compute_api_Grouping.__name__ = "Grouping"
39615
+ scout_compute_api_Grouping.__qualname__ = "Grouping"
39616
+ scout_compute_api_Grouping.__module__ = "nominal_api.scout_compute_api"
39617
+
39618
+
39619
+ class scout_compute_api_GroupingVisitor:
39620
+
39621
+ @abstractmethod
39622
+ def _tags_with_values(self, tags_with_values: Dict[str, str]) -> Any:
39623
+ pass
39624
+
39625
+
39626
+ scout_compute_api_GroupingVisitor.__name__ = "GroupingVisitor"
39627
+ scout_compute_api_GroupingVisitor.__qualname__ = "GroupingVisitor"
39628
+ scout_compute_api_GroupingVisitor.__module__ = "nominal_api.scout_compute_api"
39629
+
39630
+
39475
39631
  class scout_compute_api_HighPassConfiguration(ConjureBeanType):
39476
39632
 
39477
39633
  @builtins.classmethod
@@ -44302,16 +44458,18 @@ class scout_compute_api_RunChannel(ConjureBeanType):
44302
44458
  'run_rid': ConjureFieldDefinition('runRid', scout_compute_api_StringConstant),
44303
44459
  'data_scope_name': ConjureFieldDefinition('dataScopeName', scout_compute_api_StringConstant),
44304
44460
  'channel': ConjureFieldDefinition('channel', scout_compute_api_StringConstant),
44305
- 'additional_tags': ConjureFieldDefinition('additionalTags', Dict[str, scout_compute_api_StringConstant])
44461
+ 'additional_tags': ConjureFieldDefinition('additionalTags', Dict[str, scout_compute_api_StringConstant]),
44462
+ 'tags_to_group_by': ConjureFieldDefinition('tagsToGroupBy', List[str])
44306
44463
  }
44307
44464
 
44308
- __slots__: List[str] = ['_run_rid', '_data_scope_name', '_channel', '_additional_tags']
44465
+ __slots__: List[str] = ['_run_rid', '_data_scope_name', '_channel', '_additional_tags', '_tags_to_group_by']
44309
44466
 
44310
- def __init__(self, additional_tags: Dict[str, "scout_compute_api_StringConstant"], channel: "scout_compute_api_StringConstant", data_scope_name: "scout_compute_api_StringConstant", run_rid: "scout_compute_api_StringConstant") -> None:
44467
+ def __init__(self, additional_tags: Dict[str, "scout_compute_api_StringConstant"], channel: "scout_compute_api_StringConstant", data_scope_name: "scout_compute_api_StringConstant", run_rid: "scout_compute_api_StringConstant", tags_to_group_by: List[str]) -> None:
44311
44468
  self._run_rid = run_rid
44312
44469
  self._data_scope_name = data_scope_name
44313
44470
  self._channel = channel
44314
44471
  self._additional_tags = additional_tags
44472
+ self._tags_to_group_by = tags_to_group_by
44315
44473
 
44316
44474
  @builtins.property
44317
44475
  def run_rid(self) -> "scout_compute_api_StringConstant":
@@ -44337,6 +44495,14 @@ both sets of tag filters. For log series, include arg filters here in addition t
44337
44495
  """
44338
44496
  return self._additional_tags
44339
44497
 
44498
+ @builtins.property
44499
+ def tags_to_group_by(self) -> List[str]:
44500
+ """
44501
+ Tags that the channel should be grouped by. If this is non-empty a grouped result will be returned
44502
+ with an entry for each grouping.
44503
+ """
44504
+ return self._tags_to_group_by
44505
+
44340
44506
 
44341
44507
  scout_compute_api_RunChannel.__name__ = "RunChannel"
44342
44508
  scout_compute_api_RunChannel.__qualname__ = "RunChannel"
@@ -49510,14 +49676,16 @@ class scout_compute_resolved_api_ClickHouseSeriesResolutionDetails(ConjureBeanTy
49510
49676
  return {
49511
49677
  'channel': ConjureFieldDefinition('channel', api_Channel),
49512
49678
  'tags': ConjureFieldDefinition('tags', Dict[api_TagName, api_TagValue]),
49679
+ 'tags_to_group_by': ConjureFieldDefinition('tagsToGroupBy', List[api_TagName]),
49513
49680
  'org_rid': ConjureFieldDefinition('orgRid', authentication_api_OrgRid)
49514
49681
  }
49515
49682
 
49516
- __slots__: List[str] = ['_channel', '_tags', '_org_rid']
49683
+ __slots__: List[str] = ['_channel', '_tags', '_tags_to_group_by', '_org_rid']
49517
49684
 
49518
- def __init__(self, channel: str, org_rid: str, tags: Dict[str, str]) -> None:
49685
+ def __init__(self, channel: str, org_rid: str, tags: Dict[str, str], tags_to_group_by: List[str]) -> None:
49519
49686
  self._channel = channel
49520
49687
  self._tags = tags
49688
+ self._tags_to_group_by = tags_to_group_by
49521
49689
  self._org_rid = org_rid
49522
49690
 
49523
49691
  @builtins.property
@@ -49528,6 +49696,10 @@ class scout_compute_resolved_api_ClickHouseSeriesResolutionDetails(ConjureBeanTy
49528
49696
  def tags(self) -> Dict[str, str]:
49529
49697
  return self._tags
49530
49698
 
49699
+ @builtins.property
49700
+ def tags_to_group_by(self) -> List[str]:
49701
+ return self._tags_to_group_by
49702
+
49531
49703
  @builtins.property
49532
49704
  def org_rid(self) -> str:
49533
49705
  return self._org_rid
@@ -80043,14 +80215,16 @@ class timeseries_logicalseries_api_NominalLocator(ConjureBeanType):
80043
80215
  return {
80044
80216
  'channel': ConjureFieldDefinition('channel', api_Channel),
80045
80217
  'tags': ConjureFieldDefinition('tags', Dict[api_TagName, api_TagValue]),
80218
+ 'tags_to_group_by': ConjureFieldDefinition('tagsToGroupBy', List[api_TagName]),
80046
80219
  'type': ConjureFieldDefinition('type', storage_series_api_NominalDataType)
80047
80220
  }
80048
80221
 
80049
- __slots__: List[str] = ['_channel', '_tags', '_type']
80222
+ __slots__: List[str] = ['_channel', '_tags', '_tags_to_group_by', '_type']
80050
80223
 
80051
- def __init__(self, channel: str, tags: Dict[str, str], type: "storage_series_api_NominalDataType") -> None:
80224
+ def __init__(self, channel: str, tags: Dict[str, str], tags_to_group_by: List[str], type: "storage_series_api_NominalDataType") -> None:
80052
80225
  self._channel = channel
80053
80226
  self._tags = tags
80227
+ self._tags_to_group_by = tags_to_group_by
80054
80228
  self._type = type
80055
80229
 
80056
80230
  @builtins.property
@@ -80061,6 +80235,10 @@ class timeseries_logicalseries_api_NominalLocator(ConjureBeanType):
80061
80235
  def tags(self) -> Dict[str, str]:
80062
80236
  return self._tags
80063
80237
 
80238
+ @builtins.property
80239
+ def tags_to_group_by(self) -> List[str]:
80240
+ return self._tags_to_group_by
80241
+
80064
80242
  @builtins.property
80065
80243
  def type(self) -> "storage_series_api_NominalDataType":
80066
80244
  return self._type
@@ -80107,15 +80285,17 @@ class timeseries_logicalseries_api_ResolveSeriesRequest(ConjureBeanType):
80107
80285
  return {
80108
80286
  'name': ConjureFieldDefinition('name', api_Channel),
80109
80287
  'datasource': ConjureFieldDefinition('datasource', api_rids_DataSourceRid),
80110
- 'tags': ConjureFieldDefinition('tags', Dict[api_TagName, api_TagValue])
80288
+ 'tags': ConjureFieldDefinition('tags', Dict[api_TagName, api_TagValue]),
80289
+ 'tags_to_group_by': ConjureFieldDefinition('tagsToGroupBy', List[api_TagName])
80111
80290
  }
80112
80291
 
80113
- __slots__: List[str] = ['_name', '_datasource', '_tags']
80292
+ __slots__: List[str] = ['_name', '_datasource', '_tags', '_tags_to_group_by']
80114
80293
 
80115
- def __init__(self, datasource: str, name: str, tags: Dict[str, str]) -> None:
80294
+ def __init__(self, datasource: str, name: str, tags: Dict[str, str], tags_to_group_by: List[str]) -> None:
80116
80295
  self._name = name
80117
80296
  self._datasource = datasource
80118
80297
  self._tags = tags
80298
+ self._tags_to_group_by = tags_to_group_by
80119
80299
 
80120
80300
  @builtins.property
80121
80301
  def name(self) -> str:
@@ -80129,6 +80309,10 @@ class timeseries_logicalseries_api_ResolveSeriesRequest(ConjureBeanType):
80129
80309
  def tags(self) -> Dict[str, str]:
80130
80310
  return self._tags
80131
80311
 
80312
+ @builtins.property
80313
+ def tags_to_group_by(self) -> List[str]:
80314
+ return self._tags_to_group_by
80315
+
80132
80316
 
80133
80317
  timeseries_logicalseries_api_ResolveSeriesRequest.__name__ = "ResolveSeriesRequest"
80134
80318
  timeseries_logicalseries_api_ResolveSeriesRequest.__qualname__ = "ResolveSeriesRequest"
@@ -133,6 +133,10 @@ from .._impl import (
133
133
  scout_compute_api_GeoSummaryStrategyVisitor as GeoSummaryStrategyVisitor,
134
134
  scout_compute_api_GeoTemporalSummary as GeoTemporalSummary,
135
135
  scout_compute_api_GeoTimeBucket as GeoTimeBucket,
136
+ scout_compute_api_GroupedComputeNodeResponse as GroupedComputeNodeResponse,
137
+ scout_compute_api_GroupedComputeNodeResponses as GroupedComputeNodeResponses,
138
+ scout_compute_api_Grouping as Grouping,
139
+ scout_compute_api_GroupingVisitor as GroupingVisitor,
136
140
  scout_compute_api_HighPassConfiguration as HighPassConfiguration,
137
141
  scout_compute_api_Histogram as Histogram,
138
142
  scout_compute_api_HistogramChannelCount as HistogramChannelCount,
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: nominal-api
3
- Version: 0.685.0
3
+ Version: 0.686.0
4
4
  Requires-Python: >=3.8
5
5
  Requires-Dist: requests
6
6
  Requires-Dist: conjure-python-client<3,>=2.8.0
@@ -6,7 +6,7 @@ from setuptools import (
6
6
 
7
7
  setup(
8
8
  name='nominal-api',
9
- version='0.685.0',
9
+ version='0.686.0',
10
10
  python_requires='>=3.8',
11
11
  package_data={"": ["py.typed"]},
12
12
  packages=find_packages(),
File without changes