nominal-api 0.581.0__tar.gz → 0.582.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 (80) hide show
  1. {nominal_api-0.581.0 → nominal_api-0.582.0}/PKG-INFO +1 -1
  2. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/__init__.py +3 -1
  3. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/_impl.py +407 -5
  4. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/scout_video_api/__init__.py +1 -0
  5. nominal_api-0.582.0/nominal_api/timeseries_channelmetadata/__init__.py +5 -0
  6. nominal_api-0.582.0/nominal_api/timeseries_channelmetadata_api/__init__.py +12 -0
  7. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api.egg-info/PKG-INFO +1 -1
  8. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api.egg-info/SOURCES.txt +2 -0
  9. {nominal_api-0.581.0 → nominal_api-0.582.0}/setup.py +1 -1
  10. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/api/__init__.py +0 -0
  11. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/api_rids/__init__.py +0 -0
  12. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/attachments_api/__init__.py +0 -0
  13. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/authentication_api/__init__.py +0 -0
  14. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/authorization/__init__.py +0 -0
  15. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/comments_api/__init__.py +0 -0
  16. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/connect_download/__init__.py +0 -0
  17. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/datasource/__init__.py +0 -0
  18. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/datasource_api/__init__.py +0 -0
  19. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/datasource_logset/__init__.py +0 -0
  20. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/datasource_logset_api/__init__.py +0 -0
  21. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/datasource_pagination_api/__init__.py +0 -0
  22. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/event/__init__.py +0 -0
  23. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/ingest_api/__init__.py +0 -0
  24. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/py.typed +0 -0
  25. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/scout/__init__.py +0 -0
  26. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/scout_api/__init__.py +0 -0
  27. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/scout_asset_api/__init__.py +0 -0
  28. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/scout_assets/__init__.py +0 -0
  29. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/scout_catalog/__init__.py +0 -0
  30. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/scout_channelvariables_api/__init__.py +0 -0
  31. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/scout_chart_api/__init__.py +0 -0
  32. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/scout_chartdefinition_api/__init__.py +0 -0
  33. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/scout_checklistexecution_api/__init__.py +0 -0
  34. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/scout_checks_api/__init__.py +0 -0
  35. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/scout_comparisonnotebook_api/__init__.py +0 -0
  36. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/scout_comparisonrun_api/__init__.py +0 -0
  37. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/scout_compute_api/__init__.py +0 -0
  38. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/scout_compute_api_deprecated/__init__.py +0 -0
  39. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/scout_compute_representation_api/__init__.py +0 -0
  40. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/scout_compute_resolved_api/__init__.py +0 -0
  41. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/scout_dataexport_api/__init__.py +0 -0
  42. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/scout_datareview_api/__init__.py +0 -0
  43. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/scout_datasource/__init__.py +0 -0
  44. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/scout_datasource_connection/__init__.py +0 -0
  45. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/scout_datasource_connection_api/__init__.py +0 -0
  46. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/scout_datasource_connection_api_influx/__init__.py +0 -0
  47. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/scout_favorites/__init__.py +0 -0
  48. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/scout_favorites_api/__init__.py +0 -0
  49. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/scout_integrations_api/__init__.py +0 -0
  50. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/scout_internal_search_api/__init__.py +0 -0
  51. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/scout_jobs_api/__init__.py +0 -0
  52. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/scout_layout_api/__init__.py +0 -0
  53. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/scout_metadata/__init__.py +0 -0
  54. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/scout_notebook_api/__init__.py +0 -0
  55. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/scout_plotting/__init__.py +0 -0
  56. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/scout_rids_api/__init__.py +0 -0
  57. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/scout_run_api/__init__.py +0 -0
  58. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/scout_template_api/__init__.py +0 -0
  59. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/scout_units_api/__init__.py +0 -0
  60. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/scout_versioning_api/__init__.py +0 -0
  61. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/scout_video/__init__.py +0 -0
  62. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/scout_workbookcommon_api/__init__.py +0 -0
  63. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/secrets_api/__init__.py +0 -0
  64. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/security_api_workspace/__init__.py +0 -0
  65. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/storage_datasource_api/__init__.py +0 -0
  66. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/storage_deletion_api/__init__.py +0 -0
  67. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/storage_series_api/__init__.py +0 -0
  68. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/storage_writer_api/__init__.py +0 -0
  69. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/themes_api/__init__.py +0 -0
  70. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/timeseries_archetype/__init__.py +0 -0
  71. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/timeseries_archetype_api/__init__.py +0 -0
  72. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/timeseries_logicalseries/__init__.py +0 -0
  73. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/timeseries_logicalseries_api/__init__.py +0 -0
  74. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/timeseries_seriescache/__init__.py +0 -0
  75. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/timeseries_seriescache_api/__init__.py +0 -0
  76. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api/upload_api/__init__.py +0 -0
  77. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api.egg-info/dependency_links.txt +0 -0
  78. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api.egg-info/requires.txt +0 -0
  79. {nominal_api-0.581.0 → nominal_api-0.582.0}/nominal_api.egg-info/top_level.txt +0 -0
  80. {nominal_api-0.581.0 → nominal_api-0.582.0}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: nominal-api
3
- Version: 0.581.0
3
+ Version: 0.582.0
4
4
  Requires-Python: >=3.8
5
5
  Requires-Dist: requests
6
6
  Requires-Dist: conjure-python-client<3,>=2.8.0
@@ -62,6 +62,8 @@ __all__ = [
62
62
  'themes_api',
63
63
  'timeseries_archetype',
64
64
  'timeseries_archetype_api',
65
+ 'timeseries_channelmetadata',
66
+ 'timeseries_channelmetadata_api',
65
67
  'timeseries_logicalseries',
66
68
  'timeseries_logicalseries_api',
67
69
  'timeseries_seriescache',
@@ -71,5 +73,5 @@ __all__ = [
71
73
 
72
74
  __conjure_generator_version__ = "4.9.0"
73
75
 
74
- __version__ = "0.581.0"
76
+ __version__ = "0.582.0"
75
77
 
@@ -63358,8 +63358,7 @@ at the segment-level.
63358
63358
 
63359
63359
  def get_segment_by_timestamp(self, auth_header: str, request: "scout_video_api_GetSegmentByTimestampRequest", video_rid: str) -> Optional["scout_video_api_Segment"]:
63360
63360
  """
63361
- Returns metadata for the segment containing the requested absolute timestamp. This endpoint should only be
63362
- used for videos that were ingested with frame-level timestamps.
63361
+ Returns metadata for the segment within a video containing the requested absolute timestamp.
63363
63362
  """
63364
63363
 
63365
63364
  _headers: Dict[str, Any] = {
@@ -63787,6 +63786,35 @@ scout_video_VideoService.__qualname__ = "VideoService"
63787
63786
  scout_video_VideoService.__module__ = "nominal_api.scout_video"
63788
63787
 
63789
63788
 
63789
+ class scout_video_api_Bounds(ConjureBeanType):
63790
+
63791
+ @builtins.classmethod
63792
+ def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
63793
+ return {
63794
+ 'start': ConjureFieldDefinition('start', api_Timestamp),
63795
+ 'end': ConjureFieldDefinition('end', api_Timestamp)
63796
+ }
63797
+
63798
+ __slots__: List[str] = ['_start', '_end']
63799
+
63800
+ def __init__(self, end: "api_Timestamp", start: "api_Timestamp") -> None:
63801
+ self._start = start
63802
+ self._end = end
63803
+
63804
+ @builtins.property
63805
+ def start(self) -> "api_Timestamp":
63806
+ return self._start
63807
+
63808
+ @builtins.property
63809
+ def end(self) -> "api_Timestamp":
63810
+ return self._end
63811
+
63812
+
63813
+ scout_video_api_Bounds.__name__ = "Bounds"
63814
+ scout_video_api_Bounds.__qualname__ = "Bounds"
63815
+ scout_video_api_Bounds.__module__ = "nominal_api.scout_video_api"
63816
+
63817
+
63790
63818
  class scout_video_api_CreateSegment(ConjureBeanType):
63791
63819
 
63792
63820
  @builtins.classmethod
@@ -64138,18 +64166,31 @@ class scout_video_api_GetSegmentByTimestampRequest(ConjureBeanType):
64138
64166
  @builtins.classmethod
64139
64167
  def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
64140
64168
  return {
64141
- 'timestamp': ConjureFieldDefinition('timestamp', api_Timestamp)
64169
+ 'timestamp': ConjureFieldDefinition('timestamp', api_Timestamp),
64170
+ 'view_range_start': ConjureFieldDefinition('viewRangeStart', OptionalTypeWrapper[api_Timestamp])
64142
64171
  }
64143
64172
 
64144
- __slots__: List[str] = ['_timestamp']
64173
+ __slots__: List[str] = ['_timestamp', '_view_range_start']
64145
64174
 
64146
- def __init__(self, timestamp: "api_Timestamp") -> None:
64175
+ def __init__(self, timestamp: "api_Timestamp", view_range_start: Optional["api_Timestamp"] = None) -> None:
64147
64176
  self._timestamp = timestamp
64177
+ self._view_range_start = view_range_start
64148
64178
 
64149
64179
  @builtins.property
64150
64180
  def timestamp(self) -> "api_Timestamp":
64151
64181
  return self._timestamp
64152
64182
 
64183
+ @builtins.property
64184
+ def view_range_start(self) -> Optional["api_Timestamp"]:
64185
+ """
64186
+ The start of the view range used to dynamically calculate media timestamps. The first segment with an
64187
+ overlap with the time bounds will have its minimum media timestamp set to 0, with every subsequent
64188
+ segment building media time cumulatively from that offset. This will determine the starting media
64189
+ timestamp of the returned segment. The view range should be the same as the one requested to get the
64190
+ playlist and segment summaries.
64191
+ """
64192
+ return self._view_range_start
64193
+
64153
64194
 
64154
64195
  scout_video_api_GetSegmentByTimestampRequest.__name__ = "GetSegmentByTimestampRequest"
64155
64196
  scout_video_api_GetSegmentByTimestampRequest.__qualname__ = "GetSegmentByTimestampRequest"
@@ -70160,6 +70201,367 @@ timeseries_archetype_api_VisualCrossingLocatorTemplate.__qualname__ = "VisualCro
70160
70201
  timeseries_archetype_api_VisualCrossingLocatorTemplate.__module__ = "nominal_api.timeseries_archetype_api"
70161
70202
 
70162
70203
 
70204
+ class timeseries_channelmetadata_ChannelMetadataService(Service):
70205
+ """
70206
+ Endpoints for retrieving and updating channel metadata.
70207
+ """
70208
+
70209
+ def get_channel_metadata(self, auth_header: str, request: "timeseries_channelmetadata_api_GetChannelMetadataRequest") -> "timeseries_channelmetadata_api_ChannelMetadata":
70210
+ """
70211
+ Get the metadata for a channel.
70212
+ """
70213
+
70214
+ _headers: Dict[str, Any] = {
70215
+ 'Accept': 'application/json',
70216
+ 'Content-Type': 'application/json',
70217
+ 'Authorization': auth_header,
70218
+ }
70219
+
70220
+ _params: Dict[str, Any] = {
70221
+ }
70222
+
70223
+ _path_params: Dict[str, Any] = {
70224
+ }
70225
+
70226
+ _json: Any = ConjureEncoder().default(request)
70227
+
70228
+ _path = '/timeseries/channel-metadata/v1/channel-metadata/get'
70229
+ _path = _path.format(**_path_params)
70230
+
70231
+ _response: Response = self._request(
70232
+ 'POST',
70233
+ self._uri + _path,
70234
+ params=_params,
70235
+ headers=_headers,
70236
+ json=_json)
70237
+
70238
+ _decoder = ConjureDecoder()
70239
+ return _decoder.decode(_response.json(), timeseries_channelmetadata_api_ChannelMetadata, self._return_none_for_unknown_union_types)
70240
+
70241
+ def batch_get_channel_metadata(self, auth_header: str, request: "timeseries_channelmetadata_api_BatchGetChannelMetadataRequest") -> "timeseries_channelmetadata_api_BatchGetChannelMetadataResponse":
70242
+ """
70243
+ Batch get the metadata for multiple channels. If some channels cannot be found or authorized,
70244
+ they will be omitted from the response.
70245
+ """
70246
+
70247
+ _headers: Dict[str, Any] = {
70248
+ 'Accept': 'application/json',
70249
+ 'Content-Type': 'application/json',
70250
+ 'Authorization': auth_header,
70251
+ }
70252
+
70253
+ _params: Dict[str, Any] = {
70254
+ }
70255
+
70256
+ _path_params: Dict[str, Any] = {
70257
+ }
70258
+
70259
+ _json: Any = ConjureEncoder().default(request)
70260
+
70261
+ _path = '/timeseries/channel-metadata/v1/channel-metadata/batch-get'
70262
+ _path = _path.format(**_path_params)
70263
+
70264
+ _response: Response = self._request(
70265
+ 'POST',
70266
+ self._uri + _path,
70267
+ params=_params,
70268
+ headers=_headers,
70269
+ json=_json)
70270
+
70271
+ _decoder = ConjureDecoder()
70272
+ return _decoder.decode(_response.json(), timeseries_channelmetadata_api_BatchGetChannelMetadataResponse, self._return_none_for_unknown_union_types)
70273
+
70274
+ def update_channel_metadata(self, auth_header: str, request: "timeseries_channelmetadata_api_UpdateChannelMetadataRequest") -> "timeseries_channelmetadata_api_ChannelMetadata":
70275
+ """
70276
+ Update the metadata for a channel.
70277
+ """
70278
+
70279
+ _headers: Dict[str, Any] = {
70280
+ 'Accept': 'application/json',
70281
+ 'Content-Type': 'application/json',
70282
+ 'Authorization': auth_header,
70283
+ }
70284
+
70285
+ _params: Dict[str, Any] = {
70286
+ }
70287
+
70288
+ _path_params: Dict[str, Any] = {
70289
+ }
70290
+
70291
+ _json: Any = ConjureEncoder().default(request)
70292
+
70293
+ _path = '/timeseries/channel-metadata/v1/channel-metadata/update'
70294
+ _path = _path.format(**_path_params)
70295
+
70296
+ _response: Response = self._request(
70297
+ 'POST',
70298
+ self._uri + _path,
70299
+ params=_params,
70300
+ headers=_headers,
70301
+ json=_json)
70302
+
70303
+ _decoder = ConjureDecoder()
70304
+ return _decoder.decode(_response.json(), timeseries_channelmetadata_api_ChannelMetadata, self._return_none_for_unknown_union_types)
70305
+
70306
+ def batch_update_channel_metadata(self, auth_header: str, request: "timeseries_channelmetadata_api_BatchUpdateChannelMetadataRequest") -> "timeseries_channelmetadata_api_BatchUpdateChannelMetadataResponse":
70307
+ """
70308
+ Batch update the metadata for multiple channels. If some channels cannot be found or authorized,
70309
+ no metadata will be updated for any of the channels in the request.
70310
+ """
70311
+
70312
+ _headers: Dict[str, Any] = {
70313
+ 'Accept': 'application/json',
70314
+ 'Content-Type': 'application/json',
70315
+ 'Authorization': auth_header,
70316
+ }
70317
+
70318
+ _params: Dict[str, Any] = {
70319
+ }
70320
+
70321
+ _path_params: Dict[str, Any] = {
70322
+ }
70323
+
70324
+ _json: Any = ConjureEncoder().default(request)
70325
+
70326
+ _path = '/timeseries/channel-metadata/v1/channel-metadata/batch-update'
70327
+ _path = _path.format(**_path_params)
70328
+
70329
+ _response: Response = self._request(
70330
+ 'POST',
70331
+ self._uri + _path,
70332
+ params=_params,
70333
+ headers=_headers,
70334
+ json=_json)
70335
+
70336
+ _decoder = ConjureDecoder()
70337
+ return _decoder.decode(_response.json(), timeseries_channelmetadata_api_BatchUpdateChannelMetadataResponse, self._return_none_for_unknown_union_types)
70338
+
70339
+
70340
+ timeseries_channelmetadata_ChannelMetadataService.__name__ = "ChannelMetadataService"
70341
+ timeseries_channelmetadata_ChannelMetadataService.__qualname__ = "ChannelMetadataService"
70342
+ timeseries_channelmetadata_ChannelMetadataService.__module__ = "nominal_api.timeseries_channelmetadata"
70343
+
70344
+
70345
+ class timeseries_channelmetadata_api_BatchGetChannelMetadataRequest(ConjureBeanType):
70346
+
70347
+ @builtins.classmethod
70348
+ def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
70349
+ return {
70350
+ 'requests': ConjureFieldDefinition('requests', List[timeseries_channelmetadata_api_GetChannelMetadataRequest])
70351
+ }
70352
+
70353
+ __slots__: List[str] = ['_requests']
70354
+
70355
+ def __init__(self, requests: List["timeseries_channelmetadata_api_GetChannelMetadataRequest"]) -> None:
70356
+ self._requests = requests
70357
+
70358
+ @builtins.property
70359
+ def requests(self) -> List["timeseries_channelmetadata_api_GetChannelMetadataRequest"]:
70360
+ return self._requests
70361
+
70362
+
70363
+ timeseries_channelmetadata_api_BatchGetChannelMetadataRequest.__name__ = "BatchGetChannelMetadataRequest"
70364
+ timeseries_channelmetadata_api_BatchGetChannelMetadataRequest.__qualname__ = "BatchGetChannelMetadataRequest"
70365
+ timeseries_channelmetadata_api_BatchGetChannelMetadataRequest.__module__ = "nominal_api.timeseries_channelmetadata_api"
70366
+
70367
+
70368
+ class timeseries_channelmetadata_api_BatchGetChannelMetadataResponse(ConjureBeanType):
70369
+
70370
+ @builtins.classmethod
70371
+ def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
70372
+ return {
70373
+ 'responses': ConjureFieldDefinition('responses', List[timeseries_channelmetadata_api_ChannelMetadata])
70374
+ }
70375
+
70376
+ __slots__: List[str] = ['_responses']
70377
+
70378
+ def __init__(self, responses: List["timeseries_channelmetadata_api_ChannelMetadata"]) -> None:
70379
+ self._responses = responses
70380
+
70381
+ @builtins.property
70382
+ def responses(self) -> List["timeseries_channelmetadata_api_ChannelMetadata"]:
70383
+ return self._responses
70384
+
70385
+
70386
+ timeseries_channelmetadata_api_BatchGetChannelMetadataResponse.__name__ = "BatchGetChannelMetadataResponse"
70387
+ timeseries_channelmetadata_api_BatchGetChannelMetadataResponse.__qualname__ = "BatchGetChannelMetadataResponse"
70388
+ timeseries_channelmetadata_api_BatchGetChannelMetadataResponse.__module__ = "nominal_api.timeseries_channelmetadata_api"
70389
+
70390
+
70391
+ class timeseries_channelmetadata_api_BatchUpdateChannelMetadataRequest(ConjureBeanType):
70392
+
70393
+ @builtins.classmethod
70394
+ def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
70395
+ return {
70396
+ 'requests': ConjureFieldDefinition('requests', List[timeseries_channelmetadata_api_UpdateChannelMetadataRequest])
70397
+ }
70398
+
70399
+ __slots__: List[str] = ['_requests']
70400
+
70401
+ def __init__(self, requests: List["timeseries_channelmetadata_api_UpdateChannelMetadataRequest"]) -> None:
70402
+ self._requests = requests
70403
+
70404
+ @builtins.property
70405
+ def requests(self) -> List["timeseries_channelmetadata_api_UpdateChannelMetadataRequest"]:
70406
+ return self._requests
70407
+
70408
+
70409
+ timeseries_channelmetadata_api_BatchUpdateChannelMetadataRequest.__name__ = "BatchUpdateChannelMetadataRequest"
70410
+ timeseries_channelmetadata_api_BatchUpdateChannelMetadataRequest.__qualname__ = "BatchUpdateChannelMetadataRequest"
70411
+ timeseries_channelmetadata_api_BatchUpdateChannelMetadataRequest.__module__ = "nominal_api.timeseries_channelmetadata_api"
70412
+
70413
+
70414
+ class timeseries_channelmetadata_api_BatchUpdateChannelMetadataResponse(ConjureBeanType):
70415
+
70416
+ @builtins.classmethod
70417
+ def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
70418
+ return {
70419
+ 'responses': ConjureFieldDefinition('responses', List[timeseries_channelmetadata_api_ChannelMetadata])
70420
+ }
70421
+
70422
+ __slots__: List[str] = ['_responses']
70423
+
70424
+ def __init__(self, responses: List["timeseries_channelmetadata_api_ChannelMetadata"]) -> None:
70425
+ self._responses = responses
70426
+
70427
+ @builtins.property
70428
+ def responses(self) -> List["timeseries_channelmetadata_api_ChannelMetadata"]:
70429
+ return self._responses
70430
+
70431
+
70432
+ timeseries_channelmetadata_api_BatchUpdateChannelMetadataResponse.__name__ = "BatchUpdateChannelMetadataResponse"
70433
+ timeseries_channelmetadata_api_BatchUpdateChannelMetadataResponse.__qualname__ = "BatchUpdateChannelMetadataResponse"
70434
+ timeseries_channelmetadata_api_BatchUpdateChannelMetadataResponse.__module__ = "nominal_api.timeseries_channelmetadata_api"
70435
+
70436
+
70437
+ class timeseries_channelmetadata_api_ChannelIdentifier(ConjureBeanType):
70438
+
70439
+ @builtins.classmethod
70440
+ def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
70441
+ return {
70442
+ 'channel_name': ConjureFieldDefinition('channelName', api_Channel),
70443
+ 'data_source_rid': ConjureFieldDefinition('dataSourceRid', api_rids_DataSourceRid)
70444
+ }
70445
+
70446
+ __slots__: List[str] = ['_channel_name', '_data_source_rid']
70447
+
70448
+ def __init__(self, channel_name: str, data_source_rid: str) -> None:
70449
+ self._channel_name = channel_name
70450
+ self._data_source_rid = data_source_rid
70451
+
70452
+ @builtins.property
70453
+ def channel_name(self) -> str:
70454
+ return self._channel_name
70455
+
70456
+ @builtins.property
70457
+ def data_source_rid(self) -> str:
70458
+ return self._data_source_rid
70459
+
70460
+
70461
+ timeseries_channelmetadata_api_ChannelIdentifier.__name__ = "ChannelIdentifier"
70462
+ timeseries_channelmetadata_api_ChannelIdentifier.__qualname__ = "ChannelIdentifier"
70463
+ timeseries_channelmetadata_api_ChannelIdentifier.__module__ = "nominal_api.timeseries_channelmetadata_api"
70464
+
70465
+
70466
+ class timeseries_channelmetadata_api_ChannelMetadata(ConjureBeanType):
70467
+
70468
+ @builtins.classmethod
70469
+ def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
70470
+ return {
70471
+ 'channel_identifier': ConjureFieldDefinition('channelIdentifier', timeseries_channelmetadata_api_ChannelIdentifier),
70472
+ 'description': ConjureFieldDefinition('description', OptionalTypeWrapper[str]),
70473
+ 'unit': ConjureFieldDefinition('unit', OptionalTypeWrapper[api_Unit]),
70474
+ 'data_type': ConjureFieldDefinition('dataType', OptionalTypeWrapper[api_SeriesDataType])
70475
+ }
70476
+
70477
+ __slots__: List[str] = ['_channel_identifier', '_description', '_unit', '_data_type']
70478
+
70479
+ def __init__(self, channel_identifier: "timeseries_channelmetadata_api_ChannelIdentifier", data_type: Optional["api_SeriesDataType"] = None, description: Optional[str] = None, unit: Optional[str] = None) -> None:
70480
+ self._channel_identifier = channel_identifier
70481
+ self._description = description
70482
+ self._unit = unit
70483
+ self._data_type = data_type
70484
+
70485
+ @builtins.property
70486
+ def channel_identifier(self) -> "timeseries_channelmetadata_api_ChannelIdentifier":
70487
+ return self._channel_identifier
70488
+
70489
+ @builtins.property
70490
+ def description(self) -> Optional[str]:
70491
+ return self._description
70492
+
70493
+ @builtins.property
70494
+ def unit(self) -> Optional[str]:
70495
+ return self._unit
70496
+
70497
+ @builtins.property
70498
+ def data_type(self) -> Optional["api_SeriesDataType"]:
70499
+ return self._data_type
70500
+
70501
+
70502
+ timeseries_channelmetadata_api_ChannelMetadata.__name__ = "ChannelMetadata"
70503
+ timeseries_channelmetadata_api_ChannelMetadata.__qualname__ = "ChannelMetadata"
70504
+ timeseries_channelmetadata_api_ChannelMetadata.__module__ = "nominal_api.timeseries_channelmetadata_api"
70505
+
70506
+
70507
+ class timeseries_channelmetadata_api_GetChannelMetadataRequest(ConjureBeanType):
70508
+
70509
+ @builtins.classmethod
70510
+ def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
70511
+ return {
70512
+ 'channel_identifier': ConjureFieldDefinition('channelIdentifier', timeseries_channelmetadata_api_ChannelIdentifier)
70513
+ }
70514
+
70515
+ __slots__: List[str] = ['_channel_identifier']
70516
+
70517
+ def __init__(self, channel_identifier: "timeseries_channelmetadata_api_ChannelIdentifier") -> None:
70518
+ self._channel_identifier = channel_identifier
70519
+
70520
+ @builtins.property
70521
+ def channel_identifier(self) -> "timeseries_channelmetadata_api_ChannelIdentifier":
70522
+ return self._channel_identifier
70523
+
70524
+
70525
+ timeseries_channelmetadata_api_GetChannelMetadataRequest.__name__ = "GetChannelMetadataRequest"
70526
+ timeseries_channelmetadata_api_GetChannelMetadataRequest.__qualname__ = "GetChannelMetadataRequest"
70527
+ timeseries_channelmetadata_api_GetChannelMetadataRequest.__module__ = "nominal_api.timeseries_channelmetadata_api"
70528
+
70529
+
70530
+ class timeseries_channelmetadata_api_UpdateChannelMetadataRequest(ConjureBeanType):
70531
+
70532
+ @builtins.classmethod
70533
+ def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
70534
+ return {
70535
+ 'channel_identifier': ConjureFieldDefinition('channelIdentifier', timeseries_channelmetadata_api_ChannelIdentifier),
70536
+ 'description': ConjureFieldDefinition('description', OptionalTypeWrapper[str]),
70537
+ 'unit_update': ConjureFieldDefinition('unitUpdate', OptionalTypeWrapper[timeseries_logicalseries_api_UnitUpdate])
70538
+ }
70539
+
70540
+ __slots__: List[str] = ['_channel_identifier', '_description', '_unit_update']
70541
+
70542
+ def __init__(self, channel_identifier: "timeseries_channelmetadata_api_ChannelIdentifier", description: Optional[str] = None, unit_update: Optional["timeseries_logicalseries_api_UnitUpdate"] = None) -> None:
70543
+ self._channel_identifier = channel_identifier
70544
+ self._description = description
70545
+ self._unit_update = unit_update
70546
+
70547
+ @builtins.property
70548
+ def channel_identifier(self) -> "timeseries_channelmetadata_api_ChannelIdentifier":
70549
+ return self._channel_identifier
70550
+
70551
+ @builtins.property
70552
+ def description(self) -> Optional[str]:
70553
+ return self._description
70554
+
70555
+ @builtins.property
70556
+ def unit_update(self) -> Optional["timeseries_logicalseries_api_UnitUpdate"]:
70557
+ return self._unit_update
70558
+
70559
+
70560
+ timeseries_channelmetadata_api_UpdateChannelMetadataRequest.__name__ = "UpdateChannelMetadataRequest"
70561
+ timeseries_channelmetadata_api_UpdateChannelMetadataRequest.__qualname__ = "UpdateChannelMetadataRequest"
70562
+ timeseries_channelmetadata_api_UpdateChannelMetadataRequest.__module__ = "nominal_api.timeseries_channelmetadata_api"
70563
+
70564
+
70163
70565
  class timeseries_logicalseries_LogicalSeriesService(Service):
70164
70566
  """
70165
70567
  A logical series is a timeseries, represented by a channel name and a tag set.
@@ -1,5 +1,6 @@
1
1
  # coding=utf-8
2
2
  from .._impl import (
3
+ scout_video_api_Bounds as Bounds,
3
4
  scout_video_api_CreateSegment as CreateSegment,
4
5
  scout_video_api_CreateSegmentsRequest as CreateSegmentsRequest,
5
6
  scout_video_api_CreateSegmentsResponse as CreateSegmentsResponse,
@@ -0,0 +1,5 @@
1
+ # coding=utf-8
2
+ from .._impl import (
3
+ timeseries_channelmetadata_ChannelMetadataService as ChannelMetadataService,
4
+ )
5
+
@@ -0,0 +1,12 @@
1
+ # coding=utf-8
2
+ from .._impl import (
3
+ timeseries_channelmetadata_api_BatchGetChannelMetadataRequest as BatchGetChannelMetadataRequest,
4
+ timeseries_channelmetadata_api_BatchGetChannelMetadataResponse as BatchGetChannelMetadataResponse,
5
+ timeseries_channelmetadata_api_BatchUpdateChannelMetadataRequest as BatchUpdateChannelMetadataRequest,
6
+ timeseries_channelmetadata_api_BatchUpdateChannelMetadataResponse as BatchUpdateChannelMetadataResponse,
7
+ timeseries_channelmetadata_api_ChannelIdentifier as ChannelIdentifier,
8
+ timeseries_channelmetadata_api_ChannelMetadata as ChannelMetadata,
9
+ timeseries_channelmetadata_api_GetChannelMetadataRequest as GetChannelMetadataRequest,
10
+ timeseries_channelmetadata_api_UpdateChannelMetadataRequest as UpdateChannelMetadataRequest,
11
+ )
12
+
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: nominal-api
3
- Version: 0.581.0
3
+ Version: 0.582.0
4
4
  Requires-Python: >=3.8
5
5
  Requires-Dist: requests
6
6
  Requires-Dist: conjure-python-client<3,>=2.8.0
@@ -69,6 +69,8 @@ nominal_api/storage_writer_api/__init__.py
69
69
  nominal_api/themes_api/__init__.py
70
70
  nominal_api/timeseries_archetype/__init__.py
71
71
  nominal_api/timeseries_archetype_api/__init__.py
72
+ nominal_api/timeseries_channelmetadata/__init__.py
73
+ nominal_api/timeseries_channelmetadata_api/__init__.py
72
74
  nominal_api/timeseries_logicalseries/__init__.py
73
75
  nominal_api/timeseries_logicalseries_api/__init__.py
74
76
  nominal_api/timeseries_seriescache/__init__.py
@@ -6,7 +6,7 @@ from setuptools import (
6
6
 
7
7
  setup(
8
8
  name='nominal-api',
9
- version='0.581.0',
9
+ version='0.582.0',
10
10
  python_requires='>=3.8',
11
11
  package_data={"": ["py.typed"]},
12
12
  packages=find_packages(),
File without changes