nominal-api 0.651.1__py3-none-any.whl → 0.652.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


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

nominal_api/__init__.py CHANGED
@@ -75,5 +75,5 @@ __all__ = [
75
75
 
76
76
  __conjure_generator_version__ = "4.9.0"
77
77
 
78
- __version__ = "0.651.1"
78
+ __version__ = "0.652.0"
79
79
 
nominal_api/_impl.py CHANGED
@@ -7401,14 +7401,16 @@ class ingest_api_ContainerizedOpts(ConjureBeanType):
7401
7401
  return {
7402
7402
  'sources': ConjureFieldDefinition('sources', Dict[ingest_api_EnvironmentVariable, ingest_api_IngestSource]),
7403
7403
  'extractor': ConjureFieldDefinition('extractor', ingest_api_ContainerizedExtractorRid),
7404
+ 'tag': ConjureFieldDefinition('tag', OptionalTypeWrapper[str]),
7404
7405
  'target': ConjureFieldDefinition('target', ingest_api_DatasetIngestTarget)
7405
7406
  }
7406
7407
 
7407
- __slots__: List[str] = ['_sources', '_extractor', '_target']
7408
+ __slots__: List[str] = ['_sources', '_extractor', '_tag', '_target']
7408
7409
 
7409
- def __init__(self, extractor: str, sources: Dict[str, "ingest_api_IngestSource"], target: "ingest_api_DatasetIngestTarget") -> None:
7410
+ def __init__(self, extractor: str, sources: Dict[str, "ingest_api_IngestSource"], target: "ingest_api_DatasetIngestTarget", tag: Optional[str] = None) -> None:
7410
7411
  self._sources = sources
7411
7412
  self._extractor = extractor
7413
+ self._tag = tag
7412
7414
  self._target = target
7413
7415
 
7414
7416
  @builtins.property
@@ -7419,6 +7421,10 @@ class ingest_api_ContainerizedOpts(ConjureBeanType):
7419
7421
  def extractor(self) -> str:
7420
7422
  return self._extractor
7421
7423
 
7424
+ @builtins.property
7425
+ def tag(self) -> Optional[str]:
7426
+ return self._tag
7427
+
7422
7428
  @builtins.property
7423
7429
  def target(self) -> "ingest_api_DatasetIngestTarget":
7424
7430
  return self._target
@@ -7860,17 +7866,17 @@ class ingest_api_DockerImageSource(ConjureBeanType):
7860
7866
  return {
7861
7867
  'registry': ConjureFieldDefinition('registry', str),
7862
7868
  'repository': ConjureFieldDefinition('repository', str),
7863
- 'tag': ConjureFieldDefinition('tag', str),
7869
+ 'tag_details': ConjureFieldDefinition('tagDetails', ingest_api_TagDetails),
7864
7870
  'authentication': ConjureFieldDefinition('authentication', ingest_api_Authentication),
7865
7871
  'command': ConjureFieldDefinition('command', OptionalTypeWrapper[str])
7866
7872
  }
7867
7873
 
7868
- __slots__: List[str] = ['_registry', '_repository', '_tag', '_authentication', '_command']
7874
+ __slots__: List[str] = ['_registry', '_repository', '_tag_details', '_authentication', '_command']
7869
7875
 
7870
- def __init__(self, authentication: "ingest_api_Authentication", registry: str, repository: str, tag: str, command: Optional[str] = None) -> None:
7876
+ def __init__(self, authentication: "ingest_api_Authentication", registry: str, repository: str, tag_details: "ingest_api_TagDetails", command: Optional[str] = None) -> None:
7871
7877
  self._registry = registry
7872
7878
  self._repository = repository
7873
- self._tag = tag
7879
+ self._tag_details = tag_details
7874
7880
  self._authentication = authentication
7875
7881
  self._command = command
7876
7882
 
@@ -7889,11 +7895,8 @@ class ingest_api_DockerImageSource(ConjureBeanType):
7889
7895
  return self._repository
7890
7896
 
7891
7897
  @builtins.property
7892
- def tag(self) -> str:
7893
- """
7894
- The tag of the image to use.
7895
- """
7896
- return self._tag
7898
+ def tag_details(self) -> "ingest_api_TagDetails":
7899
+ return self._tag_details
7897
7900
 
7898
7901
  @builtins.property
7899
7902
  def authentication(self) -> "ingest_api_Authentication":
@@ -10969,6 +10972,35 @@ ingest_api_SkipRowsConfig.__qualname__ = "SkipRowsConfig"
10969
10972
  ingest_api_SkipRowsConfig.__module__ = "nominal_api.ingest_api"
10970
10973
 
10971
10974
 
10975
+ class ingest_api_TagDetails(ConjureBeanType):
10976
+
10977
+ @builtins.classmethod
10978
+ def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
10979
+ return {
10980
+ 'tags': ConjureFieldDefinition('tags', List[str]),
10981
+ 'default_tag': ConjureFieldDefinition('defaultTag', str)
10982
+ }
10983
+
10984
+ __slots__: List[str] = ['_tags', '_default_tag']
10985
+
10986
+ def __init__(self, default_tag: str, tags: List[str]) -> None:
10987
+ self._tags = tags
10988
+ self._default_tag = default_tag
10989
+
10990
+ @builtins.property
10991
+ def tags(self) -> List[str]:
10992
+ return self._tags
10993
+
10994
+ @builtins.property
10995
+ def default_tag(self) -> str:
10996
+ return self._default_tag
10997
+
10998
+
10999
+ ingest_api_TagDetails.__name__ = "TagDetails"
11000
+ ingest_api_TagDetails.__qualname__ = "TagDetails"
11001
+ ingest_api_TagDetails.__module__ = "nominal_api.ingest_api"
11002
+
11003
+
10972
11004
  class ingest_api_TimeOffsetSpec(ConjureUnionType):
10973
11005
  _nanos: Optional["scout_run_api_Duration"] = None
10974
11006
 
@@ -11321,17 +11353,21 @@ class ingest_api_UpdateContainerizedExtractorRequest(ConjureBeanType):
11321
11353
  'description': ConjureFieldDefinition('description', OptionalTypeWrapper[str]),
11322
11354
  'properties': ConjureFieldDefinition('properties', OptionalTypeWrapper[Dict[api_PropertyName, api_PropertyValue]]),
11323
11355
  'labels': ConjureFieldDefinition('labels', OptionalTypeWrapper[List[api_Label]]),
11324
- 'timestamp_metadata': ConjureFieldDefinition('timestampMetadata', OptionalTypeWrapper[ingest_api_TimestampMetadata])
11356
+ 'timestamp_metadata': ConjureFieldDefinition('timestampMetadata', OptionalTypeWrapper[ingest_api_TimestampMetadata]),
11357
+ 'tags': ConjureFieldDefinition('tags', OptionalTypeWrapper[List[str]]),
11358
+ 'default_tag': ConjureFieldDefinition('defaultTag', OptionalTypeWrapper[str])
11325
11359
  }
11326
11360
 
11327
- __slots__: List[str] = ['_name', '_description', '_properties', '_labels', '_timestamp_metadata']
11361
+ __slots__: List[str] = ['_name', '_description', '_properties', '_labels', '_timestamp_metadata', '_tags', '_default_tag']
11328
11362
 
11329
- def __init__(self, description: Optional[str] = None, labels: Optional[List[str]] = None, name: Optional[str] = None, properties: Optional[Dict[str, str]] = None, timestamp_metadata: Optional["ingest_api_TimestampMetadata"] = None) -> None:
11363
+ def __init__(self, default_tag: Optional[str] = None, description: Optional[str] = None, labels: Optional[List[str]] = None, name: Optional[str] = None, properties: Optional[Dict[str, str]] = None, tags: Optional[List[str]] = None, timestamp_metadata: Optional["ingest_api_TimestampMetadata"] = None) -> None:
11330
11364
  self._name = name
11331
11365
  self._description = description
11332
11366
  self._properties = properties
11333
11367
  self._labels = labels
11334
11368
  self._timestamp_metadata = timestamp_metadata
11369
+ self._tags = tags
11370
+ self._default_tag = default_tag
11335
11371
 
11336
11372
  @builtins.property
11337
11373
  def name(self) -> Optional[str]:
@@ -11353,6 +11389,14 @@ class ingest_api_UpdateContainerizedExtractorRequest(ConjureBeanType):
11353
11389
  def timestamp_metadata(self) -> Optional["ingest_api_TimestampMetadata"]:
11354
11390
  return self._timestamp_metadata
11355
11391
 
11392
+ @builtins.property
11393
+ def tags(self) -> Optional[List[str]]:
11394
+ return self._tags
11395
+
11396
+ @builtins.property
11397
+ def default_tag(self) -> Optional[str]:
11398
+ return self._default_tag
11399
+
11356
11400
 
11357
11401
  ingest_api_UpdateContainerizedExtractorRequest.__name__ = "UpdateContainerizedExtractorRequest"
11358
11402
  ingest_api_UpdateContainerizedExtractorRequest.__qualname__ = "UpdateContainerizedExtractorRequest"
@@ -11688,18 +11732,20 @@ class ingest_workflow_api_EnsureExtractorJobCreatedRequest(ConjureBeanType):
11688
11732
  'workspace_rid': ConjureFieldDefinition('workspaceRid', api_rids_WorkspaceRid),
11689
11733
  'ingest_job_uuid': ConjureFieldDefinition('ingestJobUuid', str),
11690
11734
  'containerized_extractor': ConjureFieldDefinition('containerizedExtractor', ingest_api_ContainerizedExtractor),
11735
+ 'tag': ConjureFieldDefinition('tag', str),
11691
11736
  'source_handles': ConjureFieldDefinition('sourceHandles', Dict[str, scout_catalog_S3Handle]),
11692
11737
  'multipart_upload_details': ConjureFieldDefinition('multipartUploadDetails', ingest_workflow_api_MultipartUploadDetails),
11693
11738
  'image_pull_secret_name': ConjureFieldDefinition('imagePullSecretName', OptionalTypeWrapper[str])
11694
11739
  }
11695
11740
 
11696
- __slots__: List[str] = ['_bearer_token', '_workspace_rid', '_ingest_job_uuid', '_containerized_extractor', '_source_handles', '_multipart_upload_details', '_image_pull_secret_name']
11741
+ __slots__: List[str] = ['_bearer_token', '_workspace_rid', '_ingest_job_uuid', '_containerized_extractor', '_tag', '_source_handles', '_multipart_upload_details', '_image_pull_secret_name']
11697
11742
 
11698
- def __init__(self, bearer_token: str, containerized_extractor: "ingest_api_ContainerizedExtractor", ingest_job_uuid: str, multipart_upload_details: "ingest_workflow_api_MultipartUploadDetails", source_handles: Dict[str, "scout_catalog_S3Handle"], workspace_rid: str, image_pull_secret_name: Optional[str] = None) -> None:
11743
+ def __init__(self, bearer_token: str, containerized_extractor: "ingest_api_ContainerizedExtractor", ingest_job_uuid: str, multipart_upload_details: "ingest_workflow_api_MultipartUploadDetails", source_handles: Dict[str, "scout_catalog_S3Handle"], tag: str, workspace_rid: str, image_pull_secret_name: Optional[str] = None) -> None:
11699
11744
  self._bearer_token = bearer_token
11700
11745
  self._workspace_rid = workspace_rid
11701
11746
  self._ingest_job_uuid = ingest_job_uuid
11702
11747
  self._containerized_extractor = containerized_extractor
11748
+ self._tag = tag
11703
11749
  self._source_handles = source_handles
11704
11750
  self._multipart_upload_details = multipart_upload_details
11705
11751
  self._image_pull_secret_name = image_pull_secret_name
@@ -11720,6 +11766,10 @@ class ingest_workflow_api_EnsureExtractorJobCreatedRequest(ConjureBeanType):
11720
11766
  def containerized_extractor(self) -> "ingest_api_ContainerizedExtractor":
11721
11767
  return self._containerized_extractor
11722
11768
 
11769
+ @builtins.property
11770
+ def tag(self) -> str:
11771
+ return self._tag
11772
+
11723
11773
  @builtins.property
11724
11774
  def source_handles(self) -> Dict[str, "scout_catalog_S3Handle"]:
11725
11775
  return self._source_handles
@@ -34351,6 +34401,7 @@ class scout_compute_api_ComputeNode(ConjureUnionType):
34351
34401
  _numeric: Optional["scout_compute_api_NumericSeries"] = None
34352
34402
  _log: Optional["scout_compute_api_LogSeries"] = None
34353
34403
  _ranges: Optional["scout_compute_api_RangeSeries"] = None
34404
+ _curve_fit: Optional["scout_compute_api_CurveFit"] = None
34354
34405
  _raw: Optional["scout_compute_api_Reference"] = None
34355
34406
 
34356
34407
  @builtins.classmethod
@@ -34360,6 +34411,7 @@ class scout_compute_api_ComputeNode(ConjureUnionType):
34360
34411
  'numeric': ConjureFieldDefinition('numeric', scout_compute_api_NumericSeries),
34361
34412
  'log': ConjureFieldDefinition('log', scout_compute_api_LogSeries),
34362
34413
  'ranges': ConjureFieldDefinition('ranges', scout_compute_api_RangeSeries),
34414
+ 'curve_fit': ConjureFieldDefinition('curveFit', scout_compute_api_CurveFit),
34363
34415
  'raw': ConjureFieldDefinition('raw', scout_compute_api_Reference)
34364
34416
  }
34365
34417
 
@@ -34369,11 +34421,12 @@ class scout_compute_api_ComputeNode(ConjureUnionType):
34369
34421
  numeric: Optional["scout_compute_api_NumericSeries"] = None,
34370
34422
  log: Optional["scout_compute_api_LogSeries"] = None,
34371
34423
  ranges: Optional["scout_compute_api_RangeSeries"] = None,
34424
+ curve_fit: Optional["scout_compute_api_CurveFit"] = None,
34372
34425
  raw: Optional["scout_compute_api_Reference"] = None,
34373
34426
  type_of_union: Optional[str] = None
34374
34427
  ) -> None:
34375
34428
  if type_of_union is None:
34376
- if (enum is not None) + (numeric is not None) + (log is not None) + (ranges is not None) + (raw is not None) != 1:
34429
+ if (enum is not None) + (numeric is not None) + (log is not None) + (ranges is not None) + (curve_fit is not None) + (raw is not None) != 1:
34377
34430
  raise ValueError('a union must contain a single member')
34378
34431
 
34379
34432
  if enum is not None:
@@ -34388,6 +34441,9 @@ class scout_compute_api_ComputeNode(ConjureUnionType):
34388
34441
  if ranges is not None:
34389
34442
  self._ranges = ranges
34390
34443
  self._type = 'ranges'
34444
+ if curve_fit is not None:
34445
+ self._curve_fit = curve_fit
34446
+ self._type = 'curveFit'
34391
34447
  if raw is not None:
34392
34448
  self._raw = raw
34393
34449
  self._type = 'raw'
@@ -34412,6 +34468,11 @@ class scout_compute_api_ComputeNode(ConjureUnionType):
34412
34468
  raise ValueError('a union value must not be None')
34413
34469
  self._ranges = ranges
34414
34470
  self._type = 'ranges'
34471
+ elif type_of_union == 'curveFit':
34472
+ if curve_fit is None:
34473
+ raise ValueError('a union value must not be None')
34474
+ self._curve_fit = curve_fit
34475
+ self._type = 'curveFit'
34415
34476
  elif type_of_union == 'raw':
34416
34477
  if raw is None:
34417
34478
  raise ValueError('a union value must not be None')
@@ -34434,6 +34495,10 @@ class scout_compute_api_ComputeNode(ConjureUnionType):
34434
34495
  def ranges(self) -> Optional["scout_compute_api_RangeSeries"]:
34435
34496
  return self._ranges
34436
34497
 
34498
+ @builtins.property
34499
+ def curve_fit(self) -> Optional["scout_compute_api_CurveFit"]:
34500
+ return self._curve_fit
34501
+
34437
34502
  @builtins.property
34438
34503
  def raw(self) -> Optional["scout_compute_api_Reference"]:
34439
34504
  return self._raw
@@ -34449,6 +34514,8 @@ class scout_compute_api_ComputeNode(ConjureUnionType):
34449
34514
  return visitor._log(self.log)
34450
34515
  if self._type == 'ranges' and self.ranges is not None:
34451
34516
  return visitor._ranges(self.ranges)
34517
+ if self._type == 'curveFit' and self.curve_fit is not None:
34518
+ return visitor._curve_fit(self.curve_fit)
34452
34519
  if self._type == 'raw' and self.raw is not None:
34453
34520
  return visitor._raw(self.raw)
34454
34521
 
@@ -34476,6 +34543,10 @@ class scout_compute_api_ComputeNodeVisitor:
34476
34543
  def _ranges(self, ranges: "scout_compute_api_RangeSeries") -> Any:
34477
34544
  pass
34478
34545
 
34546
+ @abstractmethod
34547
+ def _curve_fit(self, curve_fit: "scout_compute_api_CurveFit") -> Any:
34548
+ pass
34549
+
34479
34550
  @abstractmethod
34480
34551
  def _raw(self, raw: "scout_compute_api_Reference") -> Any:
34481
34552
  pass
@@ -43575,13 +43646,13 @@ in view.
43575
43646
  return {
43576
43647
  'input': ConjureFieldDefinition('input', scout_compute_api_Series),
43577
43648
  'threshold': ConjureFieldDefinition('threshold', scout_compute_api_DurationConstant),
43578
- 'start_timestamp': ConjureFieldDefinition('startTimestamp', scout_compute_api_TimestampConstant),
43649
+ 'start_timestamp': ConjureFieldDefinition('startTimestamp', OptionalTypeWrapper[scout_compute_api_TimestampConstant]),
43579
43650
  'end_timestamp': ConjureFieldDefinition('endTimestamp', OptionalTypeWrapper[scout_compute_api_TimestampConstant])
43580
43651
  }
43581
43652
 
43582
43653
  __slots__: List[str] = ['_input', '_threshold', '_start_timestamp', '_end_timestamp']
43583
43654
 
43584
- def __init__(self, input: "scout_compute_api_Series", start_timestamp: "scout_compute_api_TimestampConstant", threshold: "scout_compute_api_DurationConstant", end_timestamp: Optional["scout_compute_api_TimestampConstant"] = None) -> None:
43655
+ def __init__(self, input: "scout_compute_api_Series", threshold: "scout_compute_api_DurationConstant", end_timestamp: Optional["scout_compute_api_TimestampConstant"] = None, start_timestamp: Optional["scout_compute_api_TimestampConstant"] = None) -> None:
43585
43656
  self._input = input
43586
43657
  self._threshold = threshold
43587
43658
  self._start_timestamp = start_timestamp
@@ -43596,7 +43667,10 @@ in view.
43596
43667
  return self._threshold
43597
43668
 
43598
43669
  @builtins.property
43599
- def start_timestamp(self) -> "scout_compute_api_TimestampConstant":
43670
+ def start_timestamp(self) -> Optional["scout_compute_api_TimestampConstant"]:
43671
+ """
43672
+ The start timestamp of the range. If not specified, staleness will automatically use view range start.
43673
+ """
43600
43674
  return self._start_timestamp
43601
43675
 
43602
43676
  @builtins.property
@@ -52271,12 +52345,12 @@ class scout_compute_resolved_api_StaleRangesNode(ConjureBeanType):
52271
52345
  return {
52272
52346
  'input': ConjureFieldDefinition('input', scout_compute_resolved_api_SeriesNode),
52273
52347
  'threshold': ConjureFieldDefinition('threshold', scout_run_api_Duration),
52274
- 'start_timestamp': ConjureFieldDefinition('startTimestamp', api_Timestamp)
52348
+ 'start_timestamp': ConjureFieldDefinition('startTimestamp', OptionalTypeWrapper[api_Timestamp])
52275
52349
  }
52276
52350
 
52277
52351
  __slots__: List[str] = ['_input', '_threshold', '_start_timestamp']
52278
52352
 
52279
- def __init__(self, input: "scout_compute_resolved_api_SeriesNode", start_timestamp: "api_Timestamp", threshold: "scout_run_api_Duration") -> None:
52353
+ def __init__(self, input: "scout_compute_resolved_api_SeriesNode", threshold: "scout_run_api_Duration", start_timestamp: Optional["api_Timestamp"] = None) -> None:
52280
52354
  self._input = input
52281
52355
  self._threshold = threshold
52282
52356
  self._start_timestamp = start_timestamp
@@ -52290,7 +52364,7 @@ class scout_compute_resolved_api_StaleRangesNode(ConjureBeanType):
52290
52364
  return self._threshold
52291
52365
 
52292
52366
  @builtins.property
52293
- def start_timestamp(self) -> "api_Timestamp":
52367
+ def start_timestamp(self) -> Optional["api_Timestamp"]:
52294
52368
  return self._start_timestamp
52295
52369
 
52296
52370
 
@@ -73082,6 +73156,214 @@ secrets_api_UpdateSecretRequest.__qualname__ = "UpdateSecretRequest"
73082
73156
  secrets_api_UpdateSecretRequest.__module__ = "nominal_api.secrets_api"
73083
73157
 
73084
73158
 
73159
+ class security_api_workspace_RemoveType(ConjureBeanType):
73160
+ """
73161
+ The request to remove a field from a workspace.
73162
+ """
73163
+
73164
+ @builtins.classmethod
73165
+ def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
73166
+ return {
73167
+ }
73168
+
73169
+ __slots__: List[str] = []
73170
+
73171
+
73172
+
73173
+ security_api_workspace_RemoveType.__name__ = "RemoveType"
73174
+ security_api_workspace_RemoveType.__qualname__ = "RemoveType"
73175
+ security_api_workspace_RemoveType.__module__ = "nominal_api.security_api_workspace"
73176
+
73177
+
73178
+ class security_api_workspace_UpdateOrRemoveWorkspaceDisplayName(ConjureUnionType):
73179
+ """The request to update the display name of the workspace. The request will replace the existing display name
73180
+ with the display name specified if it's provided. Otherwise, the current display name will be removed from
73181
+ the workspace."""
73182
+ _display_name: Optional[str] = None
73183
+ _remove_type: Optional["security_api_workspace_RemoveType"] = None
73184
+
73185
+ @builtins.classmethod
73186
+ def _options(cls) -> Dict[str, ConjureFieldDefinition]:
73187
+ return {
73188
+ 'display_name': ConjureFieldDefinition('displayName', str),
73189
+ 'remove_type': ConjureFieldDefinition('removeType', security_api_workspace_RemoveType)
73190
+ }
73191
+
73192
+ def __init__(
73193
+ self,
73194
+ display_name: Optional[str] = None,
73195
+ remove_type: Optional["security_api_workspace_RemoveType"] = None,
73196
+ type_of_union: Optional[str] = None
73197
+ ) -> None:
73198
+ if type_of_union is None:
73199
+ if (display_name is not None) + (remove_type is not None) != 1:
73200
+ raise ValueError('a union must contain a single member')
73201
+
73202
+ if display_name is not None:
73203
+ self._display_name = display_name
73204
+ self._type = 'displayName'
73205
+ if remove_type is not None:
73206
+ self._remove_type = remove_type
73207
+ self._type = 'removeType'
73208
+
73209
+ elif type_of_union == 'displayName':
73210
+ if display_name is None:
73211
+ raise ValueError('a union value must not be None')
73212
+ self._display_name = display_name
73213
+ self._type = 'displayName'
73214
+ elif type_of_union == 'removeType':
73215
+ if remove_type is None:
73216
+ raise ValueError('a union value must not be None')
73217
+ self._remove_type = remove_type
73218
+ self._type = 'removeType'
73219
+
73220
+ @builtins.property
73221
+ def display_name(self) -> Optional[str]:
73222
+ return self._display_name
73223
+
73224
+ @builtins.property
73225
+ def remove_type(self) -> Optional["security_api_workspace_RemoveType"]:
73226
+ return self._remove_type
73227
+
73228
+ def accept(self, visitor) -> Any:
73229
+ if not isinstance(visitor, security_api_workspace_UpdateOrRemoveWorkspaceDisplayNameVisitor):
73230
+ raise ValueError('{} is not an instance of security_api_workspace_UpdateOrRemoveWorkspaceDisplayNameVisitor'.format(visitor.__class__.__name__))
73231
+ if self._type == 'displayName' and self.display_name is not None:
73232
+ return visitor._display_name(self.display_name)
73233
+ if self._type == 'removeType' and self.remove_type is not None:
73234
+ return visitor._remove_type(self.remove_type)
73235
+
73236
+
73237
+ security_api_workspace_UpdateOrRemoveWorkspaceDisplayName.__name__ = "UpdateOrRemoveWorkspaceDisplayName"
73238
+ security_api_workspace_UpdateOrRemoveWorkspaceDisplayName.__qualname__ = "UpdateOrRemoveWorkspaceDisplayName"
73239
+ security_api_workspace_UpdateOrRemoveWorkspaceDisplayName.__module__ = "nominal_api.security_api_workspace"
73240
+
73241
+
73242
+ class security_api_workspace_UpdateOrRemoveWorkspaceDisplayNameVisitor:
73243
+
73244
+ @abstractmethod
73245
+ def _display_name(self, display_name: str) -> Any:
73246
+ pass
73247
+
73248
+ @abstractmethod
73249
+ def _remove_type(self, remove_type: "security_api_workspace_RemoveType") -> Any:
73250
+ pass
73251
+
73252
+
73253
+ security_api_workspace_UpdateOrRemoveWorkspaceDisplayNameVisitor.__name__ = "UpdateOrRemoveWorkspaceDisplayNameVisitor"
73254
+ security_api_workspace_UpdateOrRemoveWorkspaceDisplayNameVisitor.__qualname__ = "UpdateOrRemoveWorkspaceDisplayNameVisitor"
73255
+ security_api_workspace_UpdateOrRemoveWorkspaceDisplayNameVisitor.__module__ = "nominal_api.security_api_workspace"
73256
+
73257
+
73258
+ class security_api_workspace_UpdateOrRemoveWorkspaceIconUrl(ConjureUnionType):
73259
+ """The request to update the icon url of the workspace. The request will replace the existing icon url
73260
+ with the icon url specified if it's provided. Otherwise, the current icon url will be removed from
73261
+ the workspace."""
73262
+ _icon_url: Optional[str] = None
73263
+ _remove_type: Optional["security_api_workspace_RemoveType"] = None
73264
+
73265
+ @builtins.classmethod
73266
+ def _options(cls) -> Dict[str, ConjureFieldDefinition]:
73267
+ return {
73268
+ 'icon_url': ConjureFieldDefinition('iconUrl', str),
73269
+ 'remove_type': ConjureFieldDefinition('removeType', security_api_workspace_RemoveType)
73270
+ }
73271
+
73272
+ def __init__(
73273
+ self,
73274
+ icon_url: Optional[str] = None,
73275
+ remove_type: Optional["security_api_workspace_RemoveType"] = None,
73276
+ type_of_union: Optional[str] = None
73277
+ ) -> None:
73278
+ if type_of_union is None:
73279
+ if (icon_url is not None) + (remove_type is not None) != 1:
73280
+ raise ValueError('a union must contain a single member')
73281
+
73282
+ if icon_url is not None:
73283
+ self._icon_url = icon_url
73284
+ self._type = 'iconUrl'
73285
+ if remove_type is not None:
73286
+ self._remove_type = remove_type
73287
+ self._type = 'removeType'
73288
+
73289
+ elif type_of_union == 'iconUrl':
73290
+ if icon_url is None:
73291
+ raise ValueError('a union value must not be None')
73292
+ self._icon_url = icon_url
73293
+ self._type = 'iconUrl'
73294
+ elif type_of_union == 'removeType':
73295
+ if remove_type is None:
73296
+ raise ValueError('a union value must not be None')
73297
+ self._remove_type = remove_type
73298
+ self._type = 'removeType'
73299
+
73300
+ @builtins.property
73301
+ def icon_url(self) -> Optional[str]:
73302
+ return self._icon_url
73303
+
73304
+ @builtins.property
73305
+ def remove_type(self) -> Optional["security_api_workspace_RemoveType"]:
73306
+ return self._remove_type
73307
+
73308
+ def accept(self, visitor) -> Any:
73309
+ if not isinstance(visitor, security_api_workspace_UpdateOrRemoveWorkspaceIconUrlVisitor):
73310
+ raise ValueError('{} is not an instance of security_api_workspace_UpdateOrRemoveWorkspaceIconUrlVisitor'.format(visitor.__class__.__name__))
73311
+ if self._type == 'iconUrl' and self.icon_url is not None:
73312
+ return visitor._icon_url(self.icon_url)
73313
+ if self._type == 'removeType' and self.remove_type is not None:
73314
+ return visitor._remove_type(self.remove_type)
73315
+
73316
+
73317
+ security_api_workspace_UpdateOrRemoveWorkspaceIconUrl.__name__ = "UpdateOrRemoveWorkspaceIconUrl"
73318
+ security_api_workspace_UpdateOrRemoveWorkspaceIconUrl.__qualname__ = "UpdateOrRemoveWorkspaceIconUrl"
73319
+ security_api_workspace_UpdateOrRemoveWorkspaceIconUrl.__module__ = "nominal_api.security_api_workspace"
73320
+
73321
+
73322
+ class security_api_workspace_UpdateOrRemoveWorkspaceIconUrlVisitor:
73323
+
73324
+ @abstractmethod
73325
+ def _icon_url(self, icon_url: str) -> Any:
73326
+ pass
73327
+
73328
+ @abstractmethod
73329
+ def _remove_type(self, remove_type: "security_api_workspace_RemoveType") -> Any:
73330
+ pass
73331
+
73332
+
73333
+ security_api_workspace_UpdateOrRemoveWorkspaceIconUrlVisitor.__name__ = "UpdateOrRemoveWorkspaceIconUrlVisitor"
73334
+ security_api_workspace_UpdateOrRemoveWorkspaceIconUrlVisitor.__qualname__ = "UpdateOrRemoveWorkspaceIconUrlVisitor"
73335
+ security_api_workspace_UpdateOrRemoveWorkspaceIconUrlVisitor.__module__ = "nominal_api.security_api_workspace"
73336
+
73337
+
73338
+ class security_api_workspace_UpdateWorkspaceRequest(ConjureBeanType):
73339
+
73340
+ @builtins.classmethod
73341
+ def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
73342
+ return {
73343
+ 'display_name': ConjureFieldDefinition('displayName', OptionalTypeWrapper[security_api_workspace_UpdateOrRemoveWorkspaceDisplayName]),
73344
+ 'icon_url': ConjureFieldDefinition('iconUrl', OptionalTypeWrapper[security_api_workspace_UpdateOrRemoveWorkspaceIconUrl])
73345
+ }
73346
+
73347
+ __slots__: List[str] = ['_display_name', '_icon_url']
73348
+
73349
+ def __init__(self, display_name: Optional["security_api_workspace_UpdateOrRemoveWorkspaceDisplayName"] = None, icon_url: Optional["security_api_workspace_UpdateOrRemoveWorkspaceIconUrl"] = None) -> None:
73350
+ self._display_name = display_name
73351
+ self._icon_url = icon_url
73352
+
73353
+ @builtins.property
73354
+ def display_name(self) -> Optional["security_api_workspace_UpdateOrRemoveWorkspaceDisplayName"]:
73355
+ return self._display_name
73356
+
73357
+ @builtins.property
73358
+ def icon_url(self) -> Optional["security_api_workspace_UpdateOrRemoveWorkspaceIconUrl"]:
73359
+ return self._icon_url
73360
+
73361
+
73362
+ security_api_workspace_UpdateWorkspaceRequest.__name__ = "UpdateWorkspaceRequest"
73363
+ security_api_workspace_UpdateWorkspaceRequest.__qualname__ = "UpdateWorkspaceRequest"
73364
+ security_api_workspace_UpdateWorkspaceRequest.__module__ = "nominal_api.security_api_workspace"
73365
+
73366
+
73085
73367
  class security_api_workspace_Workspace(ConjureBeanType):
73086
73368
 
73087
73369
  @builtins.classmethod
@@ -73089,15 +73371,19 @@ class security_api_workspace_Workspace(ConjureBeanType):
73089
73371
  return {
73090
73372
  'id': ConjureFieldDefinition('id', api_ids_WorkspaceId),
73091
73373
  'rid': ConjureFieldDefinition('rid', api_rids_WorkspaceRid),
73092
- 'org': ConjureFieldDefinition('org', authentication_api_OrgRid)
73374
+ 'org': ConjureFieldDefinition('org', authentication_api_OrgRid),
73375
+ 'display_name': ConjureFieldDefinition('displayName', OptionalTypeWrapper[str]),
73376
+ 'icon_url': ConjureFieldDefinition('iconUrl', OptionalTypeWrapper[str])
73093
73377
  }
73094
73378
 
73095
- __slots__: List[str] = ['_id', '_rid', '_org']
73379
+ __slots__: List[str] = ['_id', '_rid', '_org', '_display_name', '_icon_url']
73096
73380
 
73097
- def __init__(self, id: str, org: str, rid: str) -> None:
73381
+ def __init__(self, id: str, org: str, rid: str, display_name: Optional[str] = None, icon_url: Optional[str] = None) -> None:
73098
73382
  self._id = id
73099
73383
  self._rid = rid
73100
73384
  self._org = org
73385
+ self._display_name = display_name
73386
+ self._icon_url = icon_url
73101
73387
 
73102
73388
  @builtins.property
73103
73389
  def id(self) -> str:
@@ -73114,6 +73400,17 @@ class security_api_workspace_Workspace(ConjureBeanType):
73114
73400
  def org(self) -> str:
73115
73401
  return self._org
73116
73402
 
73403
+ @builtins.property
73404
+ def display_name(self) -> Optional[str]:
73405
+ return self._display_name
73406
+
73407
+ @builtins.property
73408
+ def icon_url(self) -> Optional[str]:
73409
+ """
73410
+ URL to the icon for the workspace.
73411
+ """
73412
+ return self._icon_url
73413
+
73117
73414
 
73118
73415
  security_api_workspace_Workspace.__name__ = "Workspace"
73119
73416
  security_api_workspace_Workspace.__qualname__ = "Workspace"
@@ -73189,6 +73486,39 @@ Nominal live within a workspace.
73189
73486
  _decoder = ConjureDecoder()
73190
73487
  return _decoder.decode(_response.json(), security_api_workspace_Workspace, self._return_none_for_unknown_union_types)
73191
73488
 
73489
+ def update_workspace(self, auth_header: str, request: "security_api_workspace_UpdateWorkspaceRequest", rid: str) -> "security_api_workspace_Workspace":
73490
+ """
73491
+ Updates the settings of the workspace with the specified WorkspaceRid.
73492
+ """
73493
+
73494
+ _headers: Dict[str, Any] = {
73495
+ 'Accept': 'application/json',
73496
+ 'Content-Type': 'application/json',
73497
+ 'Authorization': auth_header,
73498
+ }
73499
+
73500
+ _params: Dict[str, Any] = {
73501
+ }
73502
+
73503
+ _path_params: Dict[str, Any] = {
73504
+ 'rid': rid,
73505
+ }
73506
+
73507
+ _json: Any = ConjureEncoder().default(request)
73508
+
73509
+ _path = '/workspaces/v1/workspaces/{rid}'
73510
+ _path = _path.format(**_path_params)
73511
+
73512
+ _response: Response = self._request(
73513
+ 'PUT',
73514
+ self._uri + _path,
73515
+ params=_params,
73516
+ headers=_headers,
73517
+ json=_json)
73518
+
73519
+ _decoder = ConjureDecoder()
73520
+ return _decoder.decode(_response.json(), security_api_workspace_Workspace, self._return_none_for_unknown_union_types)
73521
+
73192
73522
  def get_default_workspace(self, auth_header: str) -> Optional["security_api_workspace_Workspace"]:
73193
73523
  """
73194
73524
  Gets the default workspace for the requesting user. If the user belongs to a single workspace,
@@ -98,6 +98,7 @@ from .._impl import (
98
98
  ingest_api_SearchContainerizedExtractorsRequest as SearchContainerizedExtractorsRequest,
99
99
  ingest_api_SignPartResponse as SignPartResponse,
100
100
  ingest_api_SkipRowsConfig as SkipRowsConfig,
101
+ ingest_api_TagDetails as TagDetails,
101
102
  ingest_api_TimeOffsetSpec as TimeOffsetSpec,
102
103
  ingest_api_TimeOffsetSpecVisitor as TimeOffsetSpecVisitor,
103
104
  ingest_api_TimestampManifest as TimestampManifest,
@@ -1,5 +1,11 @@
1
1
  # coding=utf-8
2
2
  from .._impl import (
3
+ security_api_workspace_RemoveType as RemoveType,
4
+ security_api_workspace_UpdateOrRemoveWorkspaceDisplayName as UpdateOrRemoveWorkspaceDisplayName,
5
+ security_api_workspace_UpdateOrRemoveWorkspaceDisplayNameVisitor as UpdateOrRemoveWorkspaceDisplayNameVisitor,
6
+ security_api_workspace_UpdateOrRemoveWorkspaceIconUrl as UpdateOrRemoveWorkspaceIconUrl,
7
+ security_api_workspace_UpdateOrRemoveWorkspaceIconUrlVisitor as UpdateOrRemoveWorkspaceIconUrlVisitor,
8
+ security_api_workspace_UpdateWorkspaceRequest as UpdateWorkspaceRequest,
3
9
  security_api_workspace_Workspace as Workspace,
4
10
  security_api_workspace_WorkspaceService as WorkspaceService,
5
11
  )
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: nominal-api
3
- Version: 0.651.1
3
+ Version: 0.652.0
4
4
  Requires-Python: >=3.8
5
5
  Requires-Dist: requests
6
6
  Requires-Dist: conjure-python-client<3,>=2.8.0
@@ -1,5 +1,5 @@
1
- nominal_api/__init__.py,sha256=4dm4Lbd4fTrlsSvNCe04rXY6kgD_-AaFCkDFfqRvG3w,1955
2
- nominal_api/_impl.py,sha256=8fGaZmpG6puaCI-jbtt6gjPwMnCGRHFfti_a0H6y-oU,3068566
1
+ nominal_api/__init__.py,sha256=YMsrHnRH2jL4AX7k0hZ48xDhXXH3-zbKMmcC6TVhZxU,1955
2
+ nominal_api/_impl.py,sha256=TsDkiwA6_O4Wzt2SA-APaqrg0lIciB7FKNLZNNVTwwc,3082175
3
3
  nominal_api/py.typed,sha256=eoZ6GfifbqhMLNzjlqRDVil-yyBkOmVN9ujSgJWNBlY,15
4
4
  nominal_api/api/__init__.py,sha256=1oJPOuAMfV2uClPUW8Ie1nj2Y6j81TDpedcc3yUFTe0,1294
5
5
  nominal_api/api_ids/__init__.py,sha256=CAtt44XgNZEEUDv-BbEbYtuxQ8y1wqSZU-STjBYdZv8,80
@@ -15,7 +15,7 @@ nominal_api/datasource_logset/__init__.py,sha256=H3fNxqyYC490MwvdWbt5BwhgWQUev7u
15
15
  nominal_api/datasource_logset_api/__init__.py,sha256=JyjO1tQmG-HZ7kYMi8lSfeaaYddBZdCMIyqc0IUJfWo,1006
16
16
  nominal_api/datasource_pagination_api/__init__.py,sha256=3GO8TAUavOe6dUEitOhje74aSZHjTKVI5N1MNuct1lI,212
17
17
  nominal_api/event/__init__.py,sha256=QR53UWfs8-V_HUq9uDvNJFf9iH4cI-Q8ADfNL5RTWJ8,1238
18
- nominal_api/ingest_api/__init__.py,sha256=o-JBX6tm7Tfwkll1eqiiOzqZYvIyajtgqGkPjmYjrrQ,7014
18
+ nominal_api/ingest_api/__init__.py,sha256=TMxPIgKqjTxgO4t338UyhGzCRPnFFZPX5lzQe9poZ0o,7055
19
19
  nominal_api/ingest_workflow_api/__init__.py,sha256=v4R4WHLHlflcrPYzYlB1dqvnObwjxlvr2Whs_QUPj8A,1734
20
20
  nominal_api/persistent_compute_api/__init__.py,sha256=ThraDBJyYB5nFrbB6FZZpDoVAmsq8GAibiK0nu63MVA,2050
21
21
  nominal_api/scout/__init__.py,sha256=ip3XK_9jJKAoFiCifUVMTpDMiUE4mWIdGzMDu7LASus,324
@@ -57,7 +57,7 @@ nominal_api/scout_video/__init__.py,sha256=zB7mM23yGAgC529rF4gjDmqcLRbsp0kJA3xef
57
57
  nominal_api/scout_video_api/__init__.py,sha256=38gU3YzC_xtAzQLx8T3GPtfla9Bd5DTTRL299fjGgeg,3952
58
58
  nominal_api/scout_workbookcommon_api/__init__.py,sha256=6Ai0cYNOOw2A6JOlKzraTbpZwolspM-WTqVGLMN2HdI,413
59
59
  nominal_api/secrets_api/__init__.py,sha256=V5BpnbNzjdMP8kgvR2N6SEVcVyXi6Vyl_lh_5fKjJzw,736
60
- nominal_api/security_api_workspace/__init__.py,sha256=18MQr8sUGDfaXl50sMR7objE5rBJ9dZ1Sjwuyf997dA,156
60
+ nominal_api/security_api_workspace/__init__.py,sha256=Q7zbEwczj4wNOhYtnKgco4hJqInNQ0udAIkxzNHwK5o,702
61
61
  nominal_api/storage_datasource_api/__init__.py,sha256=jh_OZE_b4nBNAvnyenBjw8aGZOnvIXR6qvUKd31fXOk,445
62
62
  nominal_api/storage_deletion_api/__init__.py,sha256=2bIuAU0tcnT_8lqae0fcII4R45A_RzfV0y_E-vTkpSQ,267
63
63
  nominal_api/storage_series_api/__init__.py,sha256=F2ctWx8yqb4-JtfHkLzCq74njNEpGwr69b9fWQp9UAQ,99
@@ -72,7 +72,7 @@ nominal_api/timeseries_logicalseries_api/__init__.py,sha256=Q9iZHurmyDsJIFbUg-Eb
72
72
  nominal_api/timeseries_seriescache/__init__.py,sha256=tFCkNuyrVMgtj-HIl1pOYPJHaL2VikI4C_x97bX_Lcs,109
73
73
  nominal_api/timeseries_seriescache_api/__init__.py,sha256=U9EhlqdF9qzD1O9al0vcvcdgS_C5lq-lN3Kmr0K3g84,1191
74
74
  nominal_api/upload_api/__init__.py,sha256=ZMudWMSqCrNozohbHaJKuxJnT9Edepe7nxxXMz_pT9k,87
75
- nominal_api-0.651.1.dist-info/METADATA,sha256=b-ofdsQVDK99KJ-9cZ3wRMkLU8Fvc3bIeXbX1xYjDdw,199
76
- nominal_api-0.651.1.dist-info/WHEEL,sha256=pxyMxgL8-pra_rKaQ4drOZAegBVuX-G_4nRHjjgWbmo,91
77
- nominal_api-0.651.1.dist-info/top_level.txt,sha256=gI1ZdNJbuHcJZeKtCzzBXsEtpU1GX6XJKs6ksi_gCRA,12
78
- nominal_api-0.651.1.dist-info/RECORD,,
75
+ nominal_api-0.652.0.dist-info/METADATA,sha256=rqlVQ8VxvYmatbAy_YdxwWSkjBTqviBhTD717N1aURc,199
76
+ nominal_api-0.652.0.dist-info/WHEEL,sha256=SmOxYU7pzNKBqASvQJ7DjX3XGUF92lrGhMb3R6_iiqI,91
77
+ nominal_api-0.652.0.dist-info/top_level.txt,sha256=gI1ZdNJbuHcJZeKtCzzBXsEtpU1GX6XJKs6ksi_gCRA,12
78
+ nominal_api-0.652.0.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (79.0.0)
2
+ Generator: setuptools (79.0.1)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5