nominal-api 0.652.0__tar.gz → 0.654.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.652.0 → nominal_api-0.654.0}/PKG-INFO +1 -1
  2. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/__init__.py +1 -1
  3. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/_impl.py +403 -11
  4. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/event/__init__.py +1 -0
  5. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/ingest_api/__init__.py +4 -0
  6. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api.egg-info/PKG-INFO +1 -1
  7. {nominal_api-0.652.0 → nominal_api-0.654.0}/setup.py +1 -1
  8. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/api/__init__.py +0 -0
  9. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/api_ids/__init__.py +0 -0
  10. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/api_rids/__init__.py +0 -0
  11. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/attachments_api/__init__.py +0 -0
  12. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/authentication_api/__init__.py +0 -0
  13. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/authorization/__init__.py +0 -0
  14. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/comments_api/__init__.py +0 -0
  15. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/connect_download/__init__.py +0 -0
  16. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/datasource/__init__.py +0 -0
  17. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/datasource_api/__init__.py +0 -0
  18. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/datasource_logset/__init__.py +0 -0
  19. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/datasource_logset_api/__init__.py +0 -0
  20. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/datasource_pagination_api/__init__.py +0 -0
  21. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/ingest_workflow_api/__init__.py +0 -0
  22. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/persistent_compute_api/__init__.py +0 -0
  23. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/py.typed +0 -0
  24. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/scout/__init__.py +0 -0
  25. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/scout_api/__init__.py +0 -0
  26. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/scout_asset_api/__init__.py +0 -0
  27. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/scout_assets/__init__.py +0 -0
  28. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/scout_catalog/__init__.py +0 -0
  29. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/scout_channelvariables_api/__init__.py +0 -0
  30. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/scout_chart_api/__init__.py +0 -0
  31. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/scout_chartdefinition_api/__init__.py +0 -0
  32. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/scout_checklistexecution_api/__init__.py +0 -0
  33. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/scout_checks_api/__init__.py +0 -0
  34. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/scout_comparisonnotebook_api/__init__.py +0 -0
  35. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/scout_comparisonrun_api/__init__.py +0 -0
  36. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/scout_compute_api/__init__.py +0 -0
  37. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/scout_compute_api_deprecated/__init__.py +0 -0
  38. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/scout_compute_resolved_api/__init__.py +0 -0
  39. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/scout_dataexport_api/__init__.py +0 -0
  40. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/scout_datareview_api/__init__.py +0 -0
  41. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/scout_datasource/__init__.py +0 -0
  42. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/scout_datasource_connection/__init__.py +0 -0
  43. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/scout_datasource_connection_api/__init__.py +0 -0
  44. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/scout_datasource_connection_api_influx/__init__.py +0 -0
  45. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/scout_favorites/__init__.py +0 -0
  46. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/scout_favorites_api/__init__.py +0 -0
  47. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/scout_integrations_api/__init__.py +0 -0
  48. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/scout_internal_search_api/__init__.py +0 -0
  49. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/scout_jobs_api/__init__.py +0 -0
  50. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/scout_layout_api/__init__.py +0 -0
  51. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/scout_metadata/__init__.py +0 -0
  52. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/scout_notebook_api/__init__.py +0 -0
  53. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/scout_plotting/__init__.py +0 -0
  54. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/scout_rids_api/__init__.py +0 -0
  55. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/scout_run_api/__init__.py +0 -0
  56. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/scout_template_api/__init__.py +0 -0
  57. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/scout_units_api/__init__.py +0 -0
  58. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/scout_versioning_api/__init__.py +0 -0
  59. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/scout_video/__init__.py +0 -0
  60. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/scout_video_api/__init__.py +0 -0
  61. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/scout_workbookcommon_api/__init__.py +0 -0
  62. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/secrets_api/__init__.py +0 -0
  63. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/security_api_workspace/__init__.py +0 -0
  64. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/storage_datasource_api/__init__.py +0 -0
  65. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/storage_deletion_api/__init__.py +0 -0
  66. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/storage_series_api/__init__.py +0 -0
  67. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/storage_writer_api/__init__.py +0 -0
  68. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/themes_api/__init__.py +0 -0
  69. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/timeseries_archetype/__init__.py +0 -0
  70. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/timeseries_archetype_api/__init__.py +0 -0
  71. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/timeseries_channelmetadata/__init__.py +0 -0
  72. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/timeseries_channelmetadata_api/__init__.py +0 -0
  73. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/timeseries_logicalseries/__init__.py +0 -0
  74. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/timeseries_logicalseries_api/__init__.py +0 -0
  75. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/timeseries_seriescache/__init__.py +0 -0
  76. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/timeseries_seriescache_api/__init__.py +0 -0
  77. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api/upload_api/__init__.py +0 -0
  78. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api.egg-info/SOURCES.txt +0 -0
  79. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api.egg-info/dependency_links.txt +0 -0
  80. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api.egg-info/requires.txt +0 -0
  81. {nominal_api-0.652.0 → nominal_api-0.654.0}/nominal_api.egg-info/top_level.txt +0 -0
  82. {nominal_api-0.652.0 → nominal_api-0.654.0}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: nominal-api
3
- Version: 0.652.0
3
+ Version: 0.654.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.652.0"
78
+ __version__ = "0.654.0"
79
79
 
@@ -6313,6 +6313,28 @@ event_GetEvents.__qualname__ = "GetEvents"
6313
6313
  event_GetEvents.__module__ = "nominal_api.event"
6314
6314
 
6315
6315
 
6316
+ class event_SearchEventOriginType(ConjureEnumType):
6317
+
6318
+ WORKBOOK = 'WORKBOOK'
6319
+ '''WORKBOOK'''
6320
+ TEMPLATE = 'TEMPLATE'
6321
+ '''TEMPLATE'''
6322
+ API = 'API'
6323
+ '''API'''
6324
+ DATA_REVIEW = 'DATA_REVIEW'
6325
+ '''DATA_REVIEW'''
6326
+ UNKNOWN = 'UNKNOWN'
6327
+ '''UNKNOWN'''
6328
+
6329
+ def __reduce_ex__(self, proto):
6330
+ return self.__class__, (self.name,)
6331
+
6332
+
6333
+ event_SearchEventOriginType.__name__ = "SearchEventOriginType"
6334
+ event_SearchEventOriginType.__qualname__ = "SearchEventOriginType"
6335
+ event_SearchEventOriginType.__module__ = "nominal_api.event"
6336
+
6337
+
6316
6338
  class event_SearchEventsRequest(ConjureBeanType):
6317
6339
 
6318
6340
  @builtins.classmethod
@@ -6400,6 +6422,15 @@ class event_SearchQuery(ConjureUnionType):
6400
6422
  _after: Optional["api_Timestamp"] = None
6401
6423
  _before: Optional["api_Timestamp"] = None
6402
6424
  _asset: Optional[str] = None
6425
+ _template: Optional[str] = None
6426
+ _workbook: Optional[str] = None
6427
+ _data_review: Optional[str] = None
6428
+ _origin_type: Optional["event_SearchEventOriginType"] = None
6429
+ _data_review_check: Optional[str] = None
6430
+ _disposition_status: Optional["event_EventDispositionStatus"] = None
6431
+ _priority: Optional["scout_api_Priority"] = None
6432
+ _assignee: Optional[str] = None
6433
+ _event_type: Optional["event_EventType"] = None
6403
6434
  _label: Optional[str] = None
6404
6435
  _property: Optional["api_Property"] = None
6405
6436
  _and_: Optional[List["event_SearchQuery"]] = None
@@ -6413,6 +6444,15 @@ class event_SearchQuery(ConjureUnionType):
6413
6444
  'after': ConjureFieldDefinition('after', api_Timestamp),
6414
6445
  'before': ConjureFieldDefinition('before', api_Timestamp),
6415
6446
  'asset': ConjureFieldDefinition('asset', scout_rids_api_AssetRid),
6447
+ 'template': ConjureFieldDefinition('template', scout_rids_api_TemplateRid),
6448
+ 'workbook': ConjureFieldDefinition('workbook', scout_rids_api_NotebookRid),
6449
+ 'data_review': ConjureFieldDefinition('dataReview', scout_rids_api_DataReviewRid),
6450
+ 'origin_type': ConjureFieldDefinition('originType', event_SearchEventOriginType),
6451
+ 'data_review_check': ConjureFieldDefinition('dataReviewCheck', scout_rids_api_CheckRid),
6452
+ 'disposition_status': ConjureFieldDefinition('dispositionStatus', event_EventDispositionStatus),
6453
+ 'priority': ConjureFieldDefinition('priority', scout_api_Priority),
6454
+ 'assignee': ConjureFieldDefinition('assignee', scout_rids_api_UserRid),
6455
+ 'event_type': ConjureFieldDefinition('eventType', event_EventType),
6416
6456
  'label': ConjureFieldDefinition('label', api_Label),
6417
6457
  'property': ConjureFieldDefinition('property', api_Property),
6418
6458
  'and_': ConjureFieldDefinition('and', List[event_SearchQuery]),
@@ -6426,6 +6466,15 @@ class event_SearchQuery(ConjureUnionType):
6426
6466
  after: Optional["api_Timestamp"] = None,
6427
6467
  before: Optional["api_Timestamp"] = None,
6428
6468
  asset: Optional[str] = None,
6469
+ template: Optional[str] = None,
6470
+ workbook: Optional[str] = None,
6471
+ data_review: Optional[str] = None,
6472
+ origin_type: Optional["event_SearchEventOriginType"] = None,
6473
+ data_review_check: Optional[str] = None,
6474
+ disposition_status: Optional["event_EventDispositionStatus"] = None,
6475
+ priority: Optional["scout_api_Priority"] = None,
6476
+ assignee: Optional[str] = None,
6477
+ event_type: Optional["event_EventType"] = None,
6429
6478
  label: Optional[str] = None,
6430
6479
  property: Optional["api_Property"] = None,
6431
6480
  and_: Optional[List["event_SearchQuery"]] = None,
@@ -6434,7 +6483,7 @@ class event_SearchQuery(ConjureUnionType):
6434
6483
  type_of_union: Optional[str] = None
6435
6484
  ) -> None:
6436
6485
  if type_of_union is None:
6437
- if (search_text is not None) + (after is not None) + (before is not None) + (asset is not None) + (label is not None) + (property is not None) + (and_ is not None) + (or_ is not None) + (workspace is not None) != 1:
6486
+ if (search_text is not None) + (after is not None) + (before is not None) + (asset is not None) + (template is not None) + (workbook is not None) + (data_review is not None) + (origin_type is not None) + (data_review_check is not None) + (disposition_status is not None) + (priority is not None) + (assignee is not None) + (event_type is not None) + (label is not None) + (property is not None) + (and_ is not None) + (or_ is not None) + (workspace is not None) != 1:
6438
6487
  raise ValueError('a union must contain a single member')
6439
6488
 
6440
6489
  if search_text is not None:
@@ -6449,6 +6498,33 @@ class event_SearchQuery(ConjureUnionType):
6449
6498
  if asset is not None:
6450
6499
  self._asset = asset
6451
6500
  self._type = 'asset'
6501
+ if template is not None:
6502
+ self._template = template
6503
+ self._type = 'template'
6504
+ if workbook is not None:
6505
+ self._workbook = workbook
6506
+ self._type = 'workbook'
6507
+ if data_review is not None:
6508
+ self._data_review = data_review
6509
+ self._type = 'dataReview'
6510
+ if origin_type is not None:
6511
+ self._origin_type = origin_type
6512
+ self._type = 'originType'
6513
+ if data_review_check is not None:
6514
+ self._data_review_check = data_review_check
6515
+ self._type = 'dataReviewCheck'
6516
+ if disposition_status is not None:
6517
+ self._disposition_status = disposition_status
6518
+ self._type = 'dispositionStatus'
6519
+ if priority is not None:
6520
+ self._priority = priority
6521
+ self._type = 'priority'
6522
+ if assignee is not None:
6523
+ self._assignee = assignee
6524
+ self._type = 'assignee'
6525
+ if event_type is not None:
6526
+ self._event_type = event_type
6527
+ self._type = 'eventType'
6452
6528
  if label is not None:
6453
6529
  self._label = label
6454
6530
  self._type = 'label'
@@ -6485,6 +6561,51 @@ class event_SearchQuery(ConjureUnionType):
6485
6561
  raise ValueError('a union value must not be None')
6486
6562
  self._asset = asset
6487
6563
  self._type = 'asset'
6564
+ elif type_of_union == 'template':
6565
+ if template is None:
6566
+ raise ValueError('a union value must not be None')
6567
+ self._template = template
6568
+ self._type = 'template'
6569
+ elif type_of_union == 'workbook':
6570
+ if workbook is None:
6571
+ raise ValueError('a union value must not be None')
6572
+ self._workbook = workbook
6573
+ self._type = 'workbook'
6574
+ elif type_of_union == 'dataReview':
6575
+ if data_review is None:
6576
+ raise ValueError('a union value must not be None')
6577
+ self._data_review = data_review
6578
+ self._type = 'dataReview'
6579
+ elif type_of_union == 'originType':
6580
+ if origin_type is None:
6581
+ raise ValueError('a union value must not be None')
6582
+ self._origin_type = origin_type
6583
+ self._type = 'originType'
6584
+ elif type_of_union == 'dataReviewCheck':
6585
+ if data_review_check is None:
6586
+ raise ValueError('a union value must not be None')
6587
+ self._data_review_check = data_review_check
6588
+ self._type = 'dataReviewCheck'
6589
+ elif type_of_union == 'dispositionStatus':
6590
+ if disposition_status is None:
6591
+ raise ValueError('a union value must not be None')
6592
+ self._disposition_status = disposition_status
6593
+ self._type = 'dispositionStatus'
6594
+ elif type_of_union == 'priority':
6595
+ if priority is None:
6596
+ raise ValueError('a union value must not be None')
6597
+ self._priority = priority
6598
+ self._type = 'priority'
6599
+ elif type_of_union == 'assignee':
6600
+ if assignee is None:
6601
+ raise ValueError('a union value must not be None')
6602
+ self._assignee = assignee
6603
+ self._type = 'assignee'
6604
+ elif type_of_union == 'eventType':
6605
+ if event_type is None:
6606
+ raise ValueError('a union value must not be None')
6607
+ self._event_type = event_type
6608
+ self._type = 'eventType'
6488
6609
  elif type_of_union == 'label':
6489
6610
  if label is None:
6490
6611
  raise ValueError('a union value must not be None')
@@ -6533,6 +6654,42 @@ class event_SearchQuery(ConjureUnionType):
6533
6654
  def asset(self) -> Optional[str]:
6534
6655
  return self._asset
6535
6656
 
6657
+ @builtins.property
6658
+ def template(self) -> Optional[str]:
6659
+ return self._template
6660
+
6661
+ @builtins.property
6662
+ def workbook(self) -> Optional[str]:
6663
+ return self._workbook
6664
+
6665
+ @builtins.property
6666
+ def data_review(self) -> Optional[str]:
6667
+ return self._data_review
6668
+
6669
+ @builtins.property
6670
+ def origin_type(self) -> Optional["event_SearchEventOriginType"]:
6671
+ return self._origin_type
6672
+
6673
+ @builtins.property
6674
+ def data_review_check(self) -> Optional[str]:
6675
+ return self._data_review_check
6676
+
6677
+ @builtins.property
6678
+ def disposition_status(self) -> Optional["event_EventDispositionStatus"]:
6679
+ return self._disposition_status
6680
+
6681
+ @builtins.property
6682
+ def priority(self) -> Optional["scout_api_Priority"]:
6683
+ return self._priority
6684
+
6685
+ @builtins.property
6686
+ def assignee(self) -> Optional[str]:
6687
+ return self._assignee
6688
+
6689
+ @builtins.property
6690
+ def event_type(self) -> Optional["event_EventType"]:
6691
+ return self._event_type
6692
+
6536
6693
  @builtins.property
6537
6694
  def label(self) -> Optional[str]:
6538
6695
  return self._label
@@ -6564,6 +6721,24 @@ class event_SearchQuery(ConjureUnionType):
6564
6721
  return visitor._before(self.before)
6565
6722
  if self._type == 'asset' and self.asset is not None:
6566
6723
  return visitor._asset(self.asset)
6724
+ if self._type == 'template' and self.template is not None:
6725
+ return visitor._template(self.template)
6726
+ if self._type == 'workbook' and self.workbook is not None:
6727
+ return visitor._workbook(self.workbook)
6728
+ if self._type == 'dataReview' and self.data_review is not None:
6729
+ return visitor._data_review(self.data_review)
6730
+ if self._type == 'originType' and self.origin_type is not None:
6731
+ return visitor._origin_type(self.origin_type)
6732
+ if self._type == 'dataReviewCheck' and self.data_review_check is not None:
6733
+ return visitor._data_review_check(self.data_review_check)
6734
+ if self._type == 'dispositionStatus' and self.disposition_status is not None:
6735
+ return visitor._disposition_status(self.disposition_status)
6736
+ if self._type == 'priority' and self.priority is not None:
6737
+ return visitor._priority(self.priority)
6738
+ if self._type == 'assignee' and self.assignee is not None:
6739
+ return visitor._assignee(self.assignee)
6740
+ if self._type == 'eventType' and self.event_type is not None:
6741
+ return visitor._event_type(self.event_type)
6567
6742
  if self._type == 'label' and self.label is not None:
6568
6743
  return visitor._label(self.label)
6569
6744
  if self._type == 'property' and self.property is not None:
@@ -6599,6 +6774,42 @@ class event_SearchQueryVisitor:
6599
6774
  def _asset(self, asset: str) -> Any:
6600
6775
  pass
6601
6776
 
6777
+ @abstractmethod
6778
+ def _template(self, template: str) -> Any:
6779
+ pass
6780
+
6781
+ @abstractmethod
6782
+ def _workbook(self, workbook: str) -> Any:
6783
+ pass
6784
+
6785
+ @abstractmethod
6786
+ def _data_review(self, data_review: str) -> Any:
6787
+ pass
6788
+
6789
+ @abstractmethod
6790
+ def _origin_type(self, origin_type: "event_SearchEventOriginType") -> Any:
6791
+ pass
6792
+
6793
+ @abstractmethod
6794
+ def _data_review_check(self, data_review_check: str) -> Any:
6795
+ pass
6796
+
6797
+ @abstractmethod
6798
+ def _disposition_status(self, disposition_status: "event_EventDispositionStatus") -> Any:
6799
+ pass
6800
+
6801
+ @abstractmethod
6802
+ def _priority(self, priority: "scout_api_Priority") -> Any:
6803
+ pass
6804
+
6805
+ @abstractmethod
6806
+ def _assignee(self, assignee: str) -> Any:
6807
+ pass
6808
+
6809
+ @abstractmethod
6810
+ def _event_type(self, event_type: "event_EventType") -> Any:
6811
+ pass
6812
+
6602
6813
  @abstractmethod
6603
6814
  def _label(self, label: str) -> Any:
6604
6815
  pass
@@ -6629,6 +6840,16 @@ class event_SortField(ConjureEnumType):
6629
6840
 
6630
6841
  START_TIME = 'START_TIME'
6631
6842
  '''START_TIME'''
6843
+ END_TIME = 'END_TIME'
6844
+ '''END_TIME'''
6845
+ DURATION = 'DURATION'
6846
+ '''DURATION'''
6847
+ DISPOSITION_STATUS = 'DISPOSITION_STATUS'
6848
+ '''DISPOSITION_STATUS'''
6849
+ PRIORITY = 'PRIORITY'
6850
+ '''PRIORITY'''
6851
+ EVENT_NAME = 'EVENT_NAME'
6852
+ '''EVENT_NAME'''
6632
6853
  UNKNOWN = 'UNKNOWN'
6633
6854
  '''UNKNOWN'''
6634
6855
 
@@ -8513,6 +8734,43 @@ ingest_api_IngestMcapResponse.__qualname__ = "IngestMcapResponse"
8513
8734
  ingest_api_IngestMcapResponse.__module__ = "nominal_api.ingest_api"
8514
8735
 
8515
8736
 
8737
+ class ingest_api_IngestMetadata(ConjureBeanType):
8738
+
8739
+ @builtins.classmethod
8740
+ def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
8741
+ return {
8742
+ 'timestamp_metadata': ConjureFieldDefinition('timestampMetadata', OptionalTypeWrapper[ingest_api_TimestampMetadata]),
8743
+ 'channel_prefix': ConjureFieldDefinition('channelPrefix', OptionalTypeWrapper[str])
8744
+ }
8745
+
8746
+ __slots__: List[str] = ['_timestamp_metadata', '_channel_prefix']
8747
+
8748
+ def __init__(self, channel_prefix: Optional[str] = None, timestamp_metadata: Optional["ingest_api_TimestampMetadata"] = None) -> None:
8749
+ self._timestamp_metadata = timestamp_metadata
8750
+ self._channel_prefix = channel_prefix
8751
+
8752
+ @builtins.property
8753
+ def timestamp_metadata(self) -> Optional["ingest_api_TimestampMetadata"]:
8754
+ """
8755
+ The timestamp metadata will be recovered from the DatasetFiles table if possible.
8756
+ If not found, this field must be populated to successfully reingest.
8757
+ """
8758
+ return self._timestamp_metadata
8759
+
8760
+ @builtins.property
8761
+ def channel_prefix(self) -> Optional[str]:
8762
+ """
8763
+ Channel prefix to use when reingesting the dataset.
8764
+ Defaults to empty string.
8765
+ """
8766
+ return self._channel_prefix
8767
+
8768
+
8769
+ ingest_api_IngestMetadata.__name__ = "IngestMetadata"
8770
+ ingest_api_IngestMetadata.__qualname__ = "IngestMetadata"
8771
+ ingest_api_IngestMetadata.__module__ = "nominal_api.ingest_api"
8772
+
8773
+
8516
8774
  class ingest_api_IngestOptions(ConjureUnionType):
8517
8775
  _dataflash: Optional["ingest_api_DataflashOpts"] = None
8518
8776
  _mcap_protobuf_timeseries: Optional["ingest_api_McapProtobufTimeseriesOpts"] = None
@@ -9163,6 +9421,40 @@ existing one.
9163
9421
  _decoder = ConjureDecoder()
9164
9422
  return _decoder.decode(_response.json(), ingest_api_IngestMcapResponse, self._return_none_for_unknown_union_types)
9165
9423
 
9424
+ def reingest_from_datasets(self, auth_header: str, request: "ingest_api_ReingestDatasetsRequest") -> "ingest_api_ReingestDatasetsResponse":
9425
+ """
9426
+ Re-ingests data from provided source datasets into either an existing target dataset, or a new one.
9427
+ Only supported for CSV and Parquet dataset files.
9428
+ Cannot ingest from streaming (V2) datasets due to data loss for tags and streaming data.
9429
+ """
9430
+
9431
+ _headers: Dict[str, Any] = {
9432
+ 'Accept': 'application/json',
9433
+ 'Content-Type': 'application/json',
9434
+ 'Authorization': auth_header,
9435
+ }
9436
+
9437
+ _params: Dict[str, Any] = {
9438
+ }
9439
+
9440
+ _path_params: Dict[str, Any] = {
9441
+ }
9442
+
9443
+ _json: Any = ConjureEncoder().default(request)
9444
+
9445
+ _path = '/ingest/v1/reingest-dataset'
9446
+ _path = _path.format(**_path_params)
9447
+
9448
+ _response: Response = self._request(
9449
+ 'POST',
9450
+ self._uri + _path,
9451
+ params=_params,
9452
+ headers=_headers,
9453
+ json=_json)
9454
+
9455
+ _decoder = ConjureDecoder()
9456
+ return _decoder.decode(_response.json(), ingest_api_ReingestDatasetsResponse, self._return_none_for_unknown_union_types)
9457
+
9166
9458
 
9167
9459
  ingest_api_IngestService.__name__ = "IngestService"
9168
9460
  ingest_api_IngestService.__qualname__ = "IngestService"
@@ -10571,6 +10863,106 @@ ingest_api_RegisterContainerizedExtractorResponse.__qualname__ = "RegisterContai
10571
10863
  ingest_api_RegisterContainerizedExtractorResponse.__module__ = "nominal_api.ingest_api"
10572
10864
 
10573
10865
 
10866
+ class ingest_api_ReingestDatasetsRequest(ConjureBeanType):
10867
+
10868
+ @builtins.classmethod
10869
+ def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
10870
+ return {
10871
+ 'source_datasets': ConjureFieldDefinition('sourceDatasets', List[api_rids_DatasetRid]),
10872
+ 'target_dataset': ConjureFieldDefinition('targetDataset', ingest_api_DatasetIngestTarget),
10873
+ 'ingest_metadata': ConjureFieldDefinition('ingestMetadata', Dict[api_rids_DatasetRid, ingest_api_IngestMetadata])
10874
+ }
10875
+
10876
+ __slots__: List[str] = ['_source_datasets', '_target_dataset', '_ingest_metadata']
10877
+
10878
+ def __init__(self, ingest_metadata: Dict[str, "ingest_api_IngestMetadata"], source_datasets: List[str], target_dataset: "ingest_api_DatasetIngestTarget") -> None:
10879
+ self._source_datasets = source_datasets
10880
+ self._target_dataset = target_dataset
10881
+ self._ingest_metadata = ingest_metadata
10882
+
10883
+ @builtins.property
10884
+ def source_datasets(self) -> List[str]:
10885
+ """
10886
+ The datasets to reingest data from. Can only include tagless, non-streaming datasets (V1).
10887
+ The datasets must be of the same granularity and must only include CSV or Parquet files.
10888
+ """
10889
+ return self._source_datasets
10890
+
10891
+ @builtins.property
10892
+ def target_dataset(self) -> "ingest_api_DatasetIngestTarget":
10893
+ """
10894
+ The dataset to ingest data into. Can either be a new dataset or an existing dataset RID.
10895
+ """
10896
+ return self._target_dataset
10897
+
10898
+ @builtins.property
10899
+ def ingest_metadata(self) -> Dict[str, "ingest_api_IngestMetadata"]:
10900
+ """
10901
+ Mapping of dataset to ingest metadata.
10902
+ Ingest metadata will be recovered from existing files if possible.
10903
+ If unrecoverable, will fall back to ingest metadata provided in this field.
10904
+ """
10905
+ return self._ingest_metadata
10906
+
10907
+
10908
+ ingest_api_ReingestDatasetsRequest.__name__ = "ReingestDatasetsRequest"
10909
+ ingest_api_ReingestDatasetsRequest.__qualname__ = "ReingestDatasetsRequest"
10910
+ ingest_api_ReingestDatasetsRequest.__module__ = "nominal_api.ingest_api"
10911
+
10912
+
10913
+ class ingest_api_ReingestDatasetsResponse(ConjureBeanType):
10914
+ """
10915
+ The response to a reingest request.
10916
+ Maps the source dataset RID and file ID to the destination dataset RID and file ID.
10917
+ """
10918
+
10919
+ @builtins.classmethod
10920
+ def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
10921
+ return {
10922
+ 'datasets': ConjureFieldDefinition('datasets', Dict[api_rids_DatasetRid, ingest_api_ReingestFilesMapping])
10923
+ }
10924
+
10925
+ __slots__: List[str] = ['_datasets']
10926
+
10927
+ def __init__(self, datasets: Dict[str, "ingest_api_ReingestFilesMapping"]) -> None:
10928
+ self._datasets = datasets
10929
+
10930
+ @builtins.property
10931
+ def datasets(self) -> Dict[str, "ingest_api_ReingestFilesMapping"]:
10932
+ return self._datasets
10933
+
10934
+
10935
+ ingest_api_ReingestDatasetsResponse.__name__ = "ReingestDatasetsResponse"
10936
+ ingest_api_ReingestDatasetsResponse.__qualname__ = "ReingestDatasetsResponse"
10937
+ ingest_api_ReingestDatasetsResponse.__module__ = "nominal_api.ingest_api"
10938
+
10939
+
10940
+ class ingest_api_ReingestFilesMapping(ConjureBeanType):
10941
+ """
10942
+ Maps the source dataset file ID to the destination dataset and file ID.
10943
+ """
10944
+
10945
+ @builtins.classmethod
10946
+ def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
10947
+ return {
10948
+ 'file_map': ConjureFieldDefinition('fileMap', Dict[datasource_DatasetFileId, ingest_api_IngestDetails])
10949
+ }
10950
+
10951
+ __slots__: List[str] = ['_file_map']
10952
+
10953
+ def __init__(self, file_map: Dict[str, "ingest_api_IngestDetails"]) -> None:
10954
+ self._file_map = file_map
10955
+
10956
+ @builtins.property
10957
+ def file_map(self) -> Dict[str, "ingest_api_IngestDetails"]:
10958
+ return self._file_map
10959
+
10960
+
10961
+ ingest_api_ReingestFilesMapping.__name__ = "ReingestFilesMapping"
10962
+ ingest_api_ReingestFilesMapping.__qualname__ = "ReingestFilesMapping"
10963
+ ingest_api_ReingestFilesMapping.__module__ = "nominal_api.ingest_api"
10964
+
10965
+
10574
10966
  class ingest_api_RelativeTimestamp(ConjureBeanType):
10575
10967
 
10576
10968
  @builtins.classmethod
@@ -35824,22 +36216,22 @@ class scout_compute_api_CurveFitOptions(ConjureBeanType):
35824
36216
  @builtins.classmethod
35825
36217
  def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
35826
36218
  return {
35827
- 'start_time': ConjureFieldDefinition('startTime', OptionalTypeWrapper[scout_compute_api_TimestampConstant]),
35828
- 'end_time': ConjureFieldDefinition('endTime', OptionalTypeWrapper[scout_compute_api_TimestampConstant])
36219
+ 'start_time': ConjureFieldDefinition('startTime', scout_compute_api_TimestampConstant),
36220
+ 'end_time': ConjureFieldDefinition('endTime', scout_compute_api_TimestampConstant)
35829
36221
  }
35830
36222
 
35831
36223
  __slots__: List[str] = ['_start_time', '_end_time']
35832
36224
 
35833
- def __init__(self, end_time: Optional["scout_compute_api_TimestampConstant"] = None, start_time: Optional["scout_compute_api_TimestampConstant"] = None) -> None:
36225
+ def __init__(self, end_time: "scout_compute_api_TimestampConstant", start_time: "scout_compute_api_TimestampConstant") -> None:
35834
36226
  self._start_time = start_time
35835
36227
  self._end_time = end_time
35836
36228
 
35837
36229
  @builtins.property
35838
- def start_time(self) -> Optional["scout_compute_api_TimestampConstant"]:
36230
+ def start_time(self) -> "scout_compute_api_TimestampConstant":
35839
36231
  return self._start_time
35840
36232
 
35841
36233
  @builtins.property
35842
- def end_time(self) -> Optional["scout_compute_api_TimestampConstant"]:
36234
+ def end_time(self) -> "scout_compute_api_TimestampConstant":
35843
36235
  return self._end_time
35844
36236
 
35845
36237
 
@@ -48110,22 +48502,22 @@ class scout_compute_resolved_api_CurveFitOptions(ConjureBeanType):
48110
48502
  @builtins.classmethod
48111
48503
  def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
48112
48504
  return {
48113
- 'start_time': ConjureFieldDefinition('startTime', OptionalTypeWrapper[api_Timestamp]),
48114
- 'end_time': ConjureFieldDefinition('endTime', OptionalTypeWrapper[api_Timestamp])
48505
+ 'start_time': ConjureFieldDefinition('startTime', api_Timestamp),
48506
+ 'end_time': ConjureFieldDefinition('endTime', api_Timestamp)
48115
48507
  }
48116
48508
 
48117
48509
  __slots__: List[str] = ['_start_time', '_end_time']
48118
48510
 
48119
- def __init__(self, end_time: Optional["api_Timestamp"] = None, start_time: Optional["api_Timestamp"] = None) -> None:
48511
+ def __init__(self, end_time: "api_Timestamp", start_time: "api_Timestamp") -> None:
48120
48512
  self._start_time = start_time
48121
48513
  self._end_time = end_time
48122
48514
 
48123
48515
  @builtins.property
48124
- def start_time(self) -> Optional["api_Timestamp"]:
48516
+ def start_time(self) -> "api_Timestamp":
48125
48517
  return self._start_time
48126
48518
 
48127
48519
  @builtins.property
48128
- def end_time(self) -> Optional["api_Timestamp"]:
48520
+ def end_time(self) -> "api_Timestamp":
48129
48521
  return self._end_time
48130
48522
 
48131
48523
 
@@ -15,6 +15,7 @@ from .._impl import (
15
15
  event_EventService as EventService,
16
16
  event_EventType as EventType,
17
17
  event_GetEvents as GetEvents,
18
+ event_SearchEventOriginType as SearchEventOriginType,
18
19
  event_SearchEventsRequest as SearchEventsRequest,
19
20
  event_SearchEventsResponse as SearchEventsResponse,
20
21
  event_SearchQuery as SearchQuery,
@@ -42,6 +42,7 @@ from .._impl import (
42
42
  ingest_api_IngestDetailsVisitor as IngestDetailsVisitor,
43
43
  ingest_api_IngestMcapRequest as IngestMcapRequest,
44
44
  ingest_api_IngestMcapResponse as IngestMcapResponse,
45
+ ingest_api_IngestMetadata as IngestMetadata,
45
46
  ingest_api_IngestOptions as IngestOptions,
46
47
  ingest_api_IngestOptionsVisitor as IngestOptionsVisitor,
47
48
  ingest_api_IngestProgressV2 as IngestProgressV2,
@@ -88,6 +89,9 @@ from .._impl import (
88
89
  ingest_api_PublicAuthentication as PublicAuthentication,
89
90
  ingest_api_RegisterContainerizedExtractorRequest as RegisterContainerizedExtractorRequest,
90
91
  ingest_api_RegisterContainerizedExtractorResponse as RegisterContainerizedExtractorResponse,
92
+ ingest_api_ReingestDatasetsRequest as ReingestDatasetsRequest,
93
+ ingest_api_ReingestDatasetsResponse as ReingestDatasetsResponse,
94
+ ingest_api_ReingestFilesMapping as ReingestFilesMapping,
91
95
  ingest_api_RelativeTimestamp as RelativeTimestamp,
92
96
  ingest_api_RunRid as RunRid,
93
97
  ingest_api_S3IngestSource as S3IngestSource,
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: nominal-api
3
- Version: 0.652.0
3
+ Version: 0.654.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.652.0',
9
+ version='0.654.0',
10
10
  python_requires='>=3.8',
11
11
  package_data={"": ["py.typed"]},
12
12
  packages=find_packages(),
File without changes