nominal-api 0.553.0__py3-none-any.whl → 0.554.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
@@ -67,5 +67,5 @@ __all__ = [
67
67
 
68
68
  __conjure_generator_version__ = "4.9.0"
69
69
 
70
- __version__ = "0.553.0"
70
+ __version__ = "0.554.0"
71
71
 
nominal_api/_impl.py CHANGED
@@ -60922,6 +60922,406 @@ scout_versioning_api_Tag.__qualname__ = "Tag"
60922
60922
  scout_versioning_api_Tag.__module__ = "nominal_api.scout_versioning_api"
60923
60923
 
60924
60924
 
60925
+ class scout_video_VideoFileService(Service):
60926
+ """
60927
+ The video service manages individual video files and their metadata.
60928
+ """
60929
+
60930
+ def create(self, auth_header: str, request: "scout_video_api_CreateVideoFileRequest") -> "scout_video_api_VideoFile":
60931
+ """
60932
+ Create and persist a video file entity with the given metadata
60933
+ """
60934
+
60935
+ _headers: Dict[str, Any] = {
60936
+ 'Accept': 'application/json',
60937
+ 'Content-Type': 'application/json',
60938
+ 'Authorization': auth_header,
60939
+ }
60940
+
60941
+ _params: Dict[str, Any] = {
60942
+ }
60943
+
60944
+ _path_params: Dict[str, Any] = {
60945
+ }
60946
+
60947
+ _json: Any = ConjureEncoder().default(request)
60948
+
60949
+ _path = '/video-files/v1/video-files'
60950
+ _path = _path.format(**_path_params)
60951
+
60952
+ _response: Response = self._request(
60953
+ 'POST',
60954
+ self._uri + _path,
60955
+ params=_params,
60956
+ headers=_headers,
60957
+ json=_json)
60958
+
60959
+ _decoder = ConjureDecoder()
60960
+ return _decoder.decode(_response.json(), scout_video_api_VideoFile, self._return_none_for_unknown_union_types)
60961
+
60962
+ def get(self, auth_header: str, video_file_rid: str) -> "scout_video_api_VideoFile":
60963
+ """
60964
+ Returns video file metadata associated with a video file RID.
60965
+ """
60966
+
60967
+ _headers: Dict[str, Any] = {
60968
+ 'Accept': 'application/json',
60969
+ 'Authorization': auth_header,
60970
+ }
60971
+
60972
+ _params: Dict[str, Any] = {
60973
+ }
60974
+
60975
+ _path_params: Dict[str, Any] = {
60976
+ 'videoFileRid': video_file_rid,
60977
+ }
60978
+
60979
+ _json: Any = None
60980
+
60981
+ _path = '/video-files/v1/video-files/{videoFileRid}'
60982
+ _path = _path.format(**_path_params)
60983
+
60984
+ _response: Response = self._request(
60985
+ 'GET',
60986
+ self._uri + _path,
60987
+ params=_params,
60988
+ headers=_headers,
60989
+ json=_json)
60990
+
60991
+ _decoder = ConjureDecoder()
60992
+ return _decoder.decode(_response.json(), scout_video_api_VideoFile, self._return_none_for_unknown_union_types)
60993
+
60994
+ def batch_get(self, auth_header: str, request: "scout_video_api_BatchGetVideoFilesRequest") -> "scout_video_api_BatchGetVideoFilesResponse":
60995
+ """
60996
+ Returns video file metadata associated with the given video file RIDs.
60997
+ """
60998
+
60999
+ _headers: Dict[str, Any] = {
61000
+ 'Accept': 'application/json',
61001
+ 'Content-Type': 'application/json',
61002
+ 'Authorization': auth_header,
61003
+ }
61004
+
61005
+ _params: Dict[str, Any] = {
61006
+ }
61007
+
61008
+ _path_params: Dict[str, Any] = {
61009
+ }
61010
+
61011
+ _json: Any = ConjureEncoder().default(request)
61012
+
61013
+ _path = '/video-files/v1/video-files/batchGet'
61014
+ _path = _path.format(**_path_params)
61015
+
61016
+ _response: Response = self._request(
61017
+ 'POST',
61018
+ self._uri + _path,
61019
+ params=_params,
61020
+ headers=_headers,
61021
+ json=_json)
61022
+
61023
+ _decoder = ConjureDecoder()
61024
+ return _decoder.decode(_response.json(), scout_video_api_BatchGetVideoFilesResponse, self._return_none_for_unknown_union_types)
61025
+
61026
+ def search(self, auth_header: str, request: "scout_video_api_SearchVideoFilesRequest") -> "scout_video_api_SearchVideoFilesResponse":
61027
+ """
61028
+ Returns metadata about video files that match a given query.
61029
+ """
61030
+
61031
+ _headers: Dict[str, Any] = {
61032
+ 'Accept': 'application/json',
61033
+ 'Content-Type': 'application/json',
61034
+ 'Authorization': auth_header,
61035
+ }
61036
+
61037
+ _params: Dict[str, Any] = {
61038
+ }
61039
+
61040
+ _path_params: Dict[str, Any] = {
61041
+ }
61042
+
61043
+ _json: Any = ConjureEncoder().default(request)
61044
+
61045
+ _path = '/video-files/v1/video-files/search'
61046
+ _path = _path.format(**_path_params)
61047
+
61048
+ _response: Response = self._request(
61049
+ 'POST',
61050
+ self._uri + _path,
61051
+ params=_params,
61052
+ headers=_headers,
61053
+ json=_json)
61054
+
61055
+ _decoder = ConjureDecoder()
61056
+ return _decoder.decode(_response.json(), scout_video_api_SearchVideoFilesResponse, self._return_none_for_unknown_union_types)
61057
+
61058
+ def update(self, auth_header: str, request: "scout_video_api_UpdateVideoFileRequest", video_file_rid: str) -> "scout_video_api_VideoFile":
61059
+ """
61060
+ Updates the metadata for a video file associated with the given RID.
61061
+ """
61062
+
61063
+ _headers: Dict[str, Any] = {
61064
+ 'Accept': 'application/json',
61065
+ 'Content-Type': 'application/json',
61066
+ 'Authorization': auth_header,
61067
+ }
61068
+
61069
+ _params: Dict[str, Any] = {
61070
+ }
61071
+
61072
+ _path_params: Dict[str, Any] = {
61073
+ 'videoFileRid': video_file_rid,
61074
+ }
61075
+
61076
+ _json: Any = ConjureEncoder().default(request)
61077
+
61078
+ _path = '/video-files/v1/video-files/{videoFileRid}'
61079
+ _path = _path.format(**_path_params)
61080
+
61081
+ _response: Response = self._request(
61082
+ 'PUT',
61083
+ self._uri + _path,
61084
+ params=_params,
61085
+ headers=_headers,
61086
+ json=_json)
61087
+
61088
+ _decoder = ConjureDecoder()
61089
+ return _decoder.decode(_response.json(), scout_video_api_VideoFile, self._return_none_for_unknown_union_types)
61090
+
61091
+ def archive(self, auth_header: str, video_file_rid: str) -> None:
61092
+ """
61093
+ Archives a video file, which excludes it from search and hides it from being visible
61094
+ in the UI, but does not permanently delete it. Archived video files can be unarchived.
61095
+ """
61096
+
61097
+ _headers: Dict[str, Any] = {
61098
+ 'Accept': 'application/json',
61099
+ 'Authorization': auth_header,
61100
+ }
61101
+
61102
+ _params: Dict[str, Any] = {
61103
+ }
61104
+
61105
+ _path_params: Dict[str, Any] = {
61106
+ 'videoFileRid': video_file_rid,
61107
+ }
61108
+
61109
+ _json: Any = None
61110
+
61111
+ _path = '/video-files/v1/video-files/{videoFileRid}/archive'
61112
+ _path = _path.format(**_path_params)
61113
+
61114
+ _response: Response = self._request(
61115
+ 'PUT',
61116
+ self._uri + _path,
61117
+ params=_params,
61118
+ headers=_headers,
61119
+ json=_json)
61120
+
61121
+ return
61122
+
61123
+ def unarchive(self, auth_header: str, video_file_rid: str) -> None:
61124
+ """
61125
+ Unarchive a previously archived video file, exposing it to the UI and search.
61126
+ """
61127
+
61128
+ _headers: Dict[str, Any] = {
61129
+ 'Accept': 'application/json',
61130
+ 'Authorization': auth_header,
61131
+ }
61132
+
61133
+ _params: Dict[str, Any] = {
61134
+ }
61135
+
61136
+ _path_params: Dict[str, Any] = {
61137
+ 'videoFileRid': video_file_rid,
61138
+ }
61139
+
61140
+ _json: Any = None
61141
+
61142
+ _path = '/video-files/v1/video-files/{videoFileRid}/unarchive'
61143
+ _path = _path.format(**_path_params)
61144
+
61145
+ _response: Response = self._request(
61146
+ 'PUT',
61147
+ self._uri + _path,
61148
+ params=_params,
61149
+ headers=_headers,
61150
+ json=_json)
61151
+
61152
+ return
61153
+
61154
+ def get_ingest_status(self, auth_header: str, video_file_rid: str) -> "scout_video_api_IngestStatusResponse":
61155
+ """
61156
+ Get the latest ingest status for a given video file by RID.
61157
+ """
61158
+
61159
+ _headers: Dict[str, Any] = {
61160
+ 'Accept': 'application/json',
61161
+ 'Authorization': auth_header,
61162
+ }
61163
+
61164
+ _params: Dict[str, Any] = {
61165
+ }
61166
+
61167
+ _path_params: Dict[str, Any] = {
61168
+ 'videoFileRid': video_file_rid,
61169
+ }
61170
+
61171
+ _json: Any = None
61172
+
61173
+ _path = '/video-files/v1/video-files/{videoFileRid}/ingest-status'
61174
+ _path = _path.format(**_path_params)
61175
+
61176
+ _response: Response = self._request(
61177
+ 'GET',
61178
+ self._uri + _path,
61179
+ params=_params,
61180
+ headers=_headers,
61181
+ json=_json)
61182
+
61183
+ _decoder = ConjureDecoder()
61184
+ return _decoder.decode(_response.json(), scout_video_api_IngestStatusResponse, self._return_none_for_unknown_union_types)
61185
+
61186
+ def batch_get_ingest_status(self, auth_header: str, video_file_rids: List[str] = None) -> Dict[str, "scout_video_api_IngestStatusResponse"]:
61187
+ """
61188
+ Get the latest ingest status for a set of given video files by RID.
61189
+ """
61190
+ video_file_rids = video_file_rids if video_file_rids is not None else []
61191
+
61192
+ _headers: Dict[str, Any] = {
61193
+ 'Accept': 'application/json',
61194
+ 'Content-Type': 'application/json',
61195
+ 'Authorization': auth_header,
61196
+ }
61197
+
61198
+ _params: Dict[str, Any] = {
61199
+ }
61200
+
61201
+ _path_params: Dict[str, Any] = {
61202
+ }
61203
+
61204
+ _json: Any = ConjureEncoder().default(video_file_rids)
61205
+
61206
+ _path = '/video-files/v1/videos/batch-get-ingest-status'
61207
+ _path = _path.format(**_path_params)
61208
+
61209
+ _response: Response = self._request(
61210
+ 'POST',
61211
+ self._uri + _path,
61212
+ params=_params,
61213
+ headers=_headers,
61214
+ json=_json)
61215
+
61216
+ _decoder = ConjureDecoder()
61217
+ return _decoder.decode(_response.json(), Dict[api_rids_VideoFileRid, scout_video_api_IngestStatusResponse], self._return_none_for_unknown_union_types)
61218
+
61219
+ def update_ingest_status(self, auth_header: str, request: "scout_video_api_UpdateIngestStatusRequest", video_file_rid: str) -> None:
61220
+ """
61221
+ Update the latest ingest status for a given video file by RID.
61222
+ """
61223
+
61224
+ _headers: Dict[str, Any] = {
61225
+ 'Accept': 'application/json',
61226
+ 'Content-Type': 'application/json',
61227
+ 'Authorization': auth_header,
61228
+ }
61229
+
61230
+ _params: Dict[str, Any] = {
61231
+ }
61232
+
61233
+ _path_params: Dict[str, Any] = {
61234
+ 'videoFileRid': video_file_rid,
61235
+ }
61236
+
61237
+ _json: Any = ConjureEncoder().default(request)
61238
+
61239
+ _path = '/video-files/v1/videos/{videoFileRid}/ingest-status'
61240
+ _path = _path.format(**_path_params)
61241
+
61242
+ _response: Response = self._request(
61243
+ 'PUT',
61244
+ self._uri + _path,
61245
+ params=_params,
61246
+ headers=_headers,
61247
+ json=_json)
61248
+
61249
+ return
61250
+
61251
+ def get_segment_summaries(self, auth_header: str, video_file_rid: str) -> List["scout_video_api_SegmentSummary"]:
61252
+ """
61253
+ Returns the min and max absolute and media timestamps for each segment in a video file.
61254
+ To be used during frame-timestamp mapping when playing back videos.
61255
+ """
61256
+
61257
+ _headers: Dict[str, Any] = {
61258
+ 'Accept': 'application/json',
61259
+ 'Authorization': auth_header,
61260
+ }
61261
+
61262
+ _params: Dict[str, Any] = {
61263
+ }
61264
+
61265
+ _path_params: Dict[str, Any] = {
61266
+ 'videoFileRid': video_file_rid,
61267
+ }
61268
+
61269
+ _json: Any = None
61270
+
61271
+ _path = '/video-files/v1/video-files/{videoFileRid}/segment-summaries'
61272
+ _path = _path.format(**_path_params)
61273
+
61274
+ _response: Response = self._request(
61275
+ 'GET',
61276
+ self._uri + _path,
61277
+ params=_params,
61278
+ headers=_headers,
61279
+ json=_json)
61280
+
61281
+ _decoder = ConjureDecoder()
61282
+ return _decoder.decode(_response.json(), List[scout_video_api_SegmentSummary], self._return_none_for_unknown_union_types)
61283
+
61284
+ def get_playlist(self, auth_header: str, video_file_rid: str) -> Any:
61285
+ """
61286
+ Generate an HLS playlist for a video file with the given RID to enable playback.
61287
+ The HLS playlist will contain links to all of the video segments in the video in sequential order.
61288
+ """
61289
+
61290
+ _headers: Dict[str, Any] = {
61291
+ 'Accept': 'application/octet-stream',
61292
+ 'Authorization': auth_header,
61293
+ }
61294
+
61295
+ _params: Dict[str, Any] = {
61296
+ }
61297
+
61298
+ _path_params: Dict[str, Any] = {
61299
+ 'videoFileRid': video_file_rid,
61300
+ }
61301
+
61302
+ _json: Any = None
61303
+
61304
+ _path = '/video-files/v1/video-files/{videoFileRid}/playlist'
61305
+ _path = _path.format(**_path_params)
61306
+
61307
+ _response: Response = self._request(
61308
+ 'GET',
61309
+ self._uri + _path,
61310
+ params=_params,
61311
+ headers=_headers,
61312
+ stream=True,
61313
+ json=_json)
61314
+
61315
+ _raw = _response.raw
61316
+ _raw.decode_content = True
61317
+ return _raw
61318
+
61319
+
61320
+ scout_video_VideoFileService.__name__ = "VideoFileService"
61321
+ scout_video_VideoFileService.__qualname__ = "VideoFileService"
61322
+ scout_video_VideoFileService.__module__ = "nominal_api.scout_video"
61323
+
61324
+
60925
61325
  class scout_video_VideoSegmentService(Service):
60926
61326
  """
60927
61327
  Upon ingestion, every video is split into smaller segments. The Video Segment Service manages operations on videos
@@ -61104,7 +61504,7 @@ class scout_video_VideoService(Service):
61104
61504
 
61105
61505
  def search(self, auth_header: str, request: "scout_video_api_SearchVideosRequest") -> "scout_video_api_SearchVideosResponse":
61106
61506
  """
61107
- Returns metadata about videos that match a given a query.
61507
+ Returns metadata about videos that match a given query.
61108
61508
  """
61109
61509
 
61110
61510
  _headers: Dict[str, Any] = {
@@ -61454,6 +61854,58 @@ scout_video_VideoService.__qualname__ = "VideoService"
61454
61854
  scout_video_VideoService.__module__ = "nominal_api.scout_video"
61455
61855
 
61456
61856
 
61857
+ class scout_video_api_BatchGetVideoFilesRequest(ConjureBeanType):
61858
+ """
61859
+ Request to get a batch of video files by RIDs
61860
+ """
61861
+
61862
+ @builtins.classmethod
61863
+ def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
61864
+ return {
61865
+ 'video_file_rids': ConjureFieldDefinition('videoFileRids', List[api_rids_VideoFileRid])
61866
+ }
61867
+
61868
+ __slots__: List[str] = ['_video_file_rids']
61869
+
61870
+ def __init__(self, video_file_rids: List[str]) -> None:
61871
+ self._video_file_rids = video_file_rids
61872
+
61873
+ @builtins.property
61874
+ def video_file_rids(self) -> List[str]:
61875
+ return self._video_file_rids
61876
+
61877
+
61878
+ scout_video_api_BatchGetVideoFilesRequest.__name__ = "BatchGetVideoFilesRequest"
61879
+ scout_video_api_BatchGetVideoFilesRequest.__qualname__ = "BatchGetVideoFilesRequest"
61880
+ scout_video_api_BatchGetVideoFilesRequest.__module__ = "nominal_api.scout_video_api"
61881
+
61882
+
61883
+ class scout_video_api_BatchGetVideoFilesResponse(ConjureBeanType):
61884
+ """
61885
+ Paginated response containing requested video file metadata.
61886
+ """
61887
+
61888
+ @builtins.classmethod
61889
+ def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
61890
+ return {
61891
+ 'video_files': ConjureFieldDefinition('videoFiles', List[scout_video_api_VideoFile])
61892
+ }
61893
+
61894
+ __slots__: List[str] = ['_video_files']
61895
+
61896
+ def __init__(self, video_files: List["scout_video_api_VideoFile"]) -> None:
61897
+ self._video_files = video_files
61898
+
61899
+ @builtins.property
61900
+ def video_files(self) -> List["scout_video_api_VideoFile"]:
61901
+ return self._video_files
61902
+
61903
+
61904
+ scout_video_api_BatchGetVideoFilesResponse.__name__ = "BatchGetVideoFilesResponse"
61905
+ scout_video_api_BatchGetVideoFilesResponse.__qualname__ = "BatchGetVideoFilesResponse"
61906
+ scout_video_api_BatchGetVideoFilesResponse.__module__ = "nominal_api.scout_video_api"
61907
+
61908
+
61457
61909
  class scout_video_api_CreateSegment(ConjureBeanType):
61458
61910
 
61459
61911
  @builtins.classmethod
@@ -61550,6 +62002,62 @@ scout_video_api_CreateSegmentsResponse.__qualname__ = "CreateSegmentsResponse"
61550
62002
  scout_video_api_CreateSegmentsResponse.__module__ = "nominal_api.scout_video_api"
61551
62003
 
61552
62004
 
62005
+ class scout_video_api_CreateVideoFileRequest(ConjureBeanType):
62006
+ """
62007
+ Request to create and persist a video file
62008
+ """
62009
+
62010
+ @builtins.classmethod
62011
+ def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
62012
+ return {
62013
+ 'title': ConjureFieldDefinition('title', str),
62014
+ 'description': ConjureFieldDefinition('description', OptionalTypeWrapper[str]),
62015
+ 'labels': ConjureFieldDefinition('labels', List[api_Label]),
62016
+ 'properties': ConjureFieldDefinition('properties', Dict[api_PropertyName, api_PropertyValue]),
62017
+ 'origin_metadata': ConjureFieldDefinition('originMetadata', scout_video_api_VideoOriginMetadata),
62018
+ 'video_rid': ConjureFieldDefinition('videoRid', api_rids_VideoRid)
62019
+ }
62020
+
62021
+ __slots__: List[str] = ['_title', '_description', '_labels', '_properties', '_origin_metadata', '_video_rid']
62022
+
62023
+ def __init__(self, labels: List[str], origin_metadata: "scout_video_api_VideoOriginMetadata", properties: Dict[str, str], title: str, video_rid: str, description: Optional[str] = None) -> None:
62024
+ self._title = title
62025
+ self._description = description
62026
+ self._labels = labels
62027
+ self._properties = properties
62028
+ self._origin_metadata = origin_metadata
62029
+ self._video_rid = video_rid
62030
+
62031
+ @builtins.property
62032
+ def title(self) -> str:
62033
+ return self._title
62034
+
62035
+ @builtins.property
62036
+ def description(self) -> Optional[str]:
62037
+ return self._description
62038
+
62039
+ @builtins.property
62040
+ def labels(self) -> List[str]:
62041
+ return self._labels
62042
+
62043
+ @builtins.property
62044
+ def properties(self) -> Dict[str, str]:
62045
+ return self._properties
62046
+
62047
+ @builtins.property
62048
+ def origin_metadata(self) -> "scout_video_api_VideoOriginMetadata":
62049
+ return self._origin_metadata
62050
+
62051
+ @builtins.property
62052
+ def video_rid(self) -> str:
62053
+ return self._video_rid
62054
+
62055
+
62056
+ scout_video_api_CreateVideoFileRequest.__name__ = "CreateVideoFileRequest"
62057
+ scout_video_api_CreateVideoFileRequest.__qualname__ = "CreateVideoFileRequest"
62058
+ scout_video_api_CreateVideoFileRequest.__module__ = "nominal_api.scout_video_api"
62059
+
62060
+
61553
62061
  class scout_video_api_CreateVideoRequest(ConjureBeanType):
61554
62062
 
61555
62063
  @builtins.classmethod
@@ -61819,6 +62327,32 @@ scout_video_api_IngestError.__qualname__ = "IngestError"
61819
62327
  scout_video_api_IngestError.__module__ = "nominal_api.scout_video_api"
61820
62328
 
61821
62329
 
62330
+ class scout_video_api_IngestStatusResponse(ConjureBeanType):
62331
+ """
62332
+ Response containing the ingest status for a given video file.
62333
+ """
62334
+
62335
+ @builtins.classmethod
62336
+ def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
62337
+ return {
62338
+ 'ingest_status': ConjureFieldDefinition('ingestStatus', scout_video_api_DetailedIngestStatus)
62339
+ }
62340
+
62341
+ __slots__: List[str] = ['_ingest_status']
62342
+
62343
+ def __init__(self, ingest_status: "scout_video_api_DetailedIngestStatus") -> None:
62344
+ self._ingest_status = ingest_status
62345
+
62346
+ @builtins.property
62347
+ def ingest_status(self) -> "scout_video_api_DetailedIngestStatus":
62348
+ return self._ingest_status
62349
+
62350
+
62351
+ scout_video_api_IngestStatusResponse.__name__ = "IngestStatusResponse"
62352
+ scout_video_api_IngestStatusResponse.__qualname__ = "IngestStatusResponse"
62353
+ scout_video_api_IngestStatusResponse.__module__ = "nominal_api.scout_video_api"
62354
+
62355
+
61822
62356
  class scout_video_api_McapTimestampManifest(ConjureBeanType):
61823
62357
  """
61824
62358
  Timestamps are derived from the mcap file containing the video frames.
@@ -61935,54 +62469,142 @@ class scout_video_api_ScaleParameter(ConjureUnionType):
61935
62469
  self._type = 'scaleFactor'
61936
62470
 
61937
62471
  @builtins.property
61938
- def true_frame_rate(self) -> Optional[float]:
61939
- return self._true_frame_rate
62472
+ def true_frame_rate(self) -> Optional[float]:
62473
+ return self._true_frame_rate
62474
+
62475
+ @builtins.property
62476
+ def ending_timestamp(self) -> Optional["api_Timestamp"]:
62477
+ return self._ending_timestamp
62478
+
62479
+ @builtins.property
62480
+ def scale_factor(self) -> Optional[float]:
62481
+ """
62482
+ the scale factor can be used to calculate whether media duration differs from a video's | real duration, and if so, the true frame rate of the camera. The video time will thus be scaled | by the ratio of the real duration to media duration, or media frame rate to true frame rate.
62483
+ """
62484
+ return self._scale_factor
62485
+
62486
+ def accept(self, visitor) -> Any:
62487
+ if not isinstance(visitor, scout_video_api_ScaleParameterVisitor):
62488
+ raise ValueError('{} is not an instance of scout_video_api_ScaleParameterVisitor'.format(visitor.__class__.__name__))
62489
+ if self._type == 'trueFrameRate' and self.true_frame_rate is not None:
62490
+ return visitor._true_frame_rate(self.true_frame_rate)
62491
+ if self._type == 'endingTimestamp' and self.ending_timestamp is not None:
62492
+ return visitor._ending_timestamp(self.ending_timestamp)
62493
+ if self._type == 'scaleFactor' and self.scale_factor is not None:
62494
+ return visitor._scale_factor(self.scale_factor)
62495
+
62496
+
62497
+ scout_video_api_ScaleParameter.__name__ = "ScaleParameter"
62498
+ scout_video_api_ScaleParameter.__qualname__ = "ScaleParameter"
62499
+ scout_video_api_ScaleParameter.__module__ = "nominal_api.scout_video_api"
62500
+
62501
+
62502
+ class scout_video_api_ScaleParameterVisitor:
62503
+
62504
+ @abstractmethod
62505
+ def _true_frame_rate(self, true_frame_rate: float) -> Any:
62506
+ pass
62507
+
62508
+ @abstractmethod
62509
+ def _ending_timestamp(self, ending_timestamp: "api_Timestamp") -> Any:
62510
+ pass
62511
+
62512
+ @abstractmethod
62513
+ def _scale_factor(self, scale_factor: float) -> Any:
62514
+ pass
62515
+
62516
+
62517
+ scout_video_api_ScaleParameterVisitor.__name__ = "ScaleParameterVisitor"
62518
+ scout_video_api_ScaleParameterVisitor.__qualname__ = "ScaleParameterVisitor"
62519
+ scout_video_api_ScaleParameterVisitor.__module__ = "nominal_api.scout_video_api"
62520
+
62521
+
62522
+ class scout_video_api_SearchVideoFilesRequest(ConjureBeanType):
62523
+ """
62524
+ Request to get video files based on a user-provided query
62525
+ """
62526
+
62527
+ @builtins.classmethod
62528
+ def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
62529
+ return {
62530
+ 'query': ConjureFieldDefinition('query', scout_video_api_SearchVideosQuery),
62531
+ 'page_size': ConjureFieldDefinition('pageSize', OptionalTypeWrapper[int]),
62532
+ 'token': ConjureFieldDefinition('token', OptionalTypeWrapper[api_Token]),
62533
+ 'sort_options': ConjureFieldDefinition('sortOptions', scout_video_api_SortOptions),
62534
+ 'archived_statuses': ConjureFieldDefinition('archivedStatuses', OptionalTypeWrapper[List[api_ArchivedStatus]])
62535
+ }
62536
+
62537
+ __slots__: List[str] = ['_query', '_page_size', '_token', '_sort_options', '_archived_statuses']
62538
+
62539
+ def __init__(self, query: "scout_video_api_SearchVideosQuery", sort_options: "scout_video_api_SortOptions", archived_statuses: Optional[List["api_ArchivedStatus"]] = None, page_size: Optional[int] = None, token: Optional[str] = None) -> None:
62540
+ self._query = query
62541
+ self._page_size = page_size
62542
+ self._token = token
62543
+ self._sort_options = sort_options
62544
+ self._archived_statuses = archived_statuses
62545
+
62546
+ @builtins.property
62547
+ def query(self) -> "scout_video_api_SearchVideosQuery":
62548
+ return self._query
62549
+
62550
+ @builtins.property
62551
+ def page_size(self) -> Optional[int]:
62552
+ """
62553
+ Defaults to 100. Will throw if larger than 1_000.
62554
+ """
62555
+ return self._page_size
61940
62556
 
61941
62557
  @builtins.property
61942
- def ending_timestamp(self) -> Optional["api_Timestamp"]:
61943
- return self._ending_timestamp
62558
+ def token(self) -> Optional[str]:
62559
+ return self._token
61944
62560
 
61945
62561
  @builtins.property
61946
- def scale_factor(self) -> Optional[float]:
62562
+ def sort_options(self) -> "scout_video_api_SortOptions":
62563
+ return self._sort_options
62564
+
62565
+ @builtins.property
62566
+ def archived_statuses(self) -> Optional[List["api_ArchivedStatus"]]:
61947
62567
  """
61948
- the scale factor can be used to calculate whether media duration differs from a video's | real duration, and if so, the true frame rate of the camera. The video time will thus be scaled | by the ratio of the real duration to media duration, or media frame rate to true frame rate.
62568
+ Default search status is NOT_ARCHIVED if none are provided.
61949
62569
  """
61950
- return self._scale_factor
62570
+ return self._archived_statuses
61951
62571
 
61952
- def accept(self, visitor) -> Any:
61953
- if not isinstance(visitor, scout_video_api_ScaleParameterVisitor):
61954
- raise ValueError('{} is not an instance of scout_video_api_ScaleParameterVisitor'.format(visitor.__class__.__name__))
61955
- if self._type == 'trueFrameRate' and self.true_frame_rate is not None:
61956
- return visitor._true_frame_rate(self.true_frame_rate)
61957
- if self._type == 'endingTimestamp' and self.ending_timestamp is not None:
61958
- return visitor._ending_timestamp(self.ending_timestamp)
61959
- if self._type == 'scaleFactor' and self.scale_factor is not None:
61960
- return visitor._scale_factor(self.scale_factor)
61961
62572
 
62573
+ scout_video_api_SearchVideoFilesRequest.__name__ = "SearchVideoFilesRequest"
62574
+ scout_video_api_SearchVideoFilesRequest.__qualname__ = "SearchVideoFilesRequest"
62575
+ scout_video_api_SearchVideoFilesRequest.__module__ = "nominal_api.scout_video_api"
61962
62576
 
61963
- scout_video_api_ScaleParameter.__name__ = "ScaleParameter"
61964
- scout_video_api_ScaleParameter.__qualname__ = "ScaleParameter"
61965
- scout_video_api_ScaleParameter.__module__ = "nominal_api.scout_video_api"
61966
62577
 
62578
+ class scout_video_api_SearchVideoFilesResponse(ConjureBeanType):
62579
+ """
62580
+ Paginated response containing requested video file metadata.
62581
+ """
61967
62582
 
61968
- class scout_video_api_ScaleParameterVisitor:
62583
+ @builtins.classmethod
62584
+ def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
62585
+ return {
62586
+ 'results': ConjureFieldDefinition('results', List[scout_video_api_VideoFile]),
62587
+ 'next_page_token': ConjureFieldDefinition('nextPageToken', OptionalTypeWrapper[api_Token])
62588
+ }
61969
62589
 
61970
- @abstractmethod
61971
- def _true_frame_rate(self, true_frame_rate: float) -> Any:
61972
- pass
62590
+ __slots__: List[str] = ['_results', '_next_page_token']
61973
62591
 
61974
- @abstractmethod
61975
- def _ending_timestamp(self, ending_timestamp: "api_Timestamp") -> Any:
61976
- pass
62592
+ def __init__(self, results: List["scout_video_api_VideoFile"], next_page_token: Optional[str] = None) -> None:
62593
+ self._results = results
62594
+ self._next_page_token = next_page_token
61977
62595
 
61978
- @abstractmethod
61979
- def _scale_factor(self, scale_factor: float) -> Any:
61980
- pass
62596
+ @builtins.property
62597
+ def results(self) -> List["scout_video_api_VideoFile"]:
62598
+ return self._results
62599
+
62600
+ @builtins.property
62601
+ def next_page_token(self) -> Optional[str]:
62602
+ return self._next_page_token
61981
62603
 
61982
62604
 
61983
- scout_video_api_ScaleParameterVisitor.__name__ = "ScaleParameterVisitor"
61984
- scout_video_api_ScaleParameterVisitor.__qualname__ = "ScaleParameterVisitor"
61985
- scout_video_api_ScaleParameterVisitor.__module__ = "nominal_api.scout_video_api"
62605
+ scout_video_api_SearchVideoFilesResponse.__name__ = "SearchVideoFilesResponse"
62606
+ scout_video_api_SearchVideoFilesResponse.__qualname__ = "SearchVideoFilesResponse"
62607
+ scout_video_api_SearchVideoFilesResponse.__module__ = "nominal_api.scout_video_api"
61986
62608
 
61987
62609
 
61988
62610
  class scout_video_api_SearchVideosQuery(ConjureUnionType):
@@ -62609,6 +63231,32 @@ scout_video_api_UpdateIngestStatusVisitor.__qualname__ = "UpdateIngestStatusVisi
62609
63231
  scout_video_api_UpdateIngestStatusVisitor.__module__ = "nominal_api.scout_video_api"
62610
63232
 
62611
63233
 
63234
+ class scout_video_api_UpdateIngestStatusRequest(ConjureBeanType):
63235
+ """
63236
+ Request to update the ingest status for a video file.
63237
+ """
63238
+
63239
+ @builtins.classmethod
63240
+ def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
63241
+ return {
63242
+ 'updated_status': ConjureFieldDefinition('updatedStatus', scout_video_api_UpdateIngestStatus)
63243
+ }
63244
+
63245
+ __slots__: List[str] = ['_updated_status']
63246
+
63247
+ def __init__(self, updated_status: "scout_video_api_UpdateIngestStatus") -> None:
63248
+ self._updated_status = updated_status
63249
+
63250
+ @builtins.property
63251
+ def updated_status(self) -> "scout_video_api_UpdateIngestStatus":
63252
+ return self._updated_status
63253
+
63254
+
63255
+ scout_video_api_UpdateIngestStatusRequest.__name__ = "UpdateIngestStatusRequest"
63256
+ scout_video_api_UpdateIngestStatusRequest.__qualname__ = "UpdateIngestStatusRequest"
63257
+ scout_video_api_UpdateIngestStatusRequest.__module__ = "nominal_api.scout_video_api"
63258
+
63259
+
62612
63260
  class scout_video_api_UpdateTargetDurationRequest(ConjureBeanType):
62613
63261
 
62614
63262
  @builtins.classmethod
@@ -62663,6 +63311,68 @@ scout_video_api_UpdateTargetDurationResponse.__qualname__ = "UpdateTargetDuratio
62663
63311
  scout_video_api_UpdateTargetDurationResponse.__module__ = "nominal_api.scout_video_api"
62664
63312
 
62665
63313
 
63314
+ class scout_video_api_UpdateVideoFileRequest(ConjureBeanType):
63315
+ """
63316
+ Request to update metadata for a given video file.
63317
+ """
63318
+
63319
+ @builtins.classmethod
63320
+ def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
63321
+ return {
63322
+ 'video_rid': ConjureFieldDefinition('videoRid', OptionalTypeWrapper[api_rids_VideoRid]),
63323
+ 'title': ConjureFieldDefinition('title', OptionalTypeWrapper[str]),
63324
+ 'description': ConjureFieldDefinition('description', OptionalTypeWrapper[str]),
63325
+ 'labels': ConjureFieldDefinition('labels', OptionalTypeWrapper[List[api_Label]]),
63326
+ 'properties': ConjureFieldDefinition('properties', OptionalTypeWrapper[Dict[api_PropertyName, api_PropertyValue]]),
63327
+ 'starting_timestamp': ConjureFieldDefinition('startingTimestamp', OptionalTypeWrapper[api_Timestamp]),
63328
+ 'scale_parameter': ConjureFieldDefinition('scaleParameter', OptionalTypeWrapper[scout_video_api_ScaleParameter])
63329
+ }
63330
+
63331
+ __slots__: List[str] = ['_video_rid', '_title', '_description', '_labels', '_properties', '_starting_timestamp', '_scale_parameter']
63332
+
63333
+ def __init__(self, description: Optional[str] = None, labels: Optional[List[str]] = None, properties: Optional[Dict[str, str]] = None, scale_parameter: Optional["scout_video_api_ScaleParameter"] = None, starting_timestamp: Optional["api_Timestamp"] = None, title: Optional[str] = None, video_rid: Optional[str] = None) -> None:
63334
+ self._video_rid = video_rid
63335
+ self._title = title
63336
+ self._description = description
63337
+ self._labels = labels
63338
+ self._properties = properties
63339
+ self._starting_timestamp = starting_timestamp
63340
+ self._scale_parameter = scale_parameter
63341
+
63342
+ @builtins.property
63343
+ def video_rid(self) -> Optional[str]:
63344
+ return self._video_rid
63345
+
63346
+ @builtins.property
63347
+ def title(self) -> Optional[str]:
63348
+ return self._title
63349
+
63350
+ @builtins.property
63351
+ def description(self) -> Optional[str]:
63352
+ return self._description
63353
+
63354
+ @builtins.property
63355
+ def labels(self) -> Optional[List[str]]:
63356
+ return self._labels
63357
+
63358
+ @builtins.property
63359
+ def properties(self) -> Optional[Dict[str, str]]:
63360
+ return self._properties
63361
+
63362
+ @builtins.property
63363
+ def starting_timestamp(self) -> Optional["api_Timestamp"]:
63364
+ return self._starting_timestamp
63365
+
63366
+ @builtins.property
63367
+ def scale_parameter(self) -> Optional["scout_video_api_ScaleParameter"]:
63368
+ return self._scale_parameter
63369
+
63370
+
63371
+ scout_video_api_UpdateVideoFileRequest.__name__ = "UpdateVideoFileRequest"
63372
+ scout_video_api_UpdateVideoFileRequest.__qualname__ = "UpdateVideoFileRequest"
63373
+ scout_video_api_UpdateVideoFileRequest.__module__ = "nominal_api.scout_video_api"
63374
+
63375
+
62666
63376
  class scout_video_api_UpdateVideoMetadataRequest(ConjureBeanType):
62667
63377
 
62668
63378
  @builtins.classmethod
@@ -62894,6 +63604,151 @@ scout_video_api_VideoAllSegmentsMetadata.__qualname__ = "VideoAllSegmentsMetadat
62894
63604
  scout_video_api_VideoAllSegmentsMetadata.__module__ = "nominal_api.scout_video_api"
62895
63605
 
62896
63606
 
63607
+ class scout_video_api_VideoFile(ConjureBeanType):
63608
+ """
63609
+ Representation of a single user-provided video file.
63610
+ """
63611
+
63612
+ @builtins.classmethod
63613
+ def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
63614
+ return {
63615
+ 'rid': ConjureFieldDefinition('rid', api_rids_VideoFileRid),
63616
+ 'video_rid': ConjureFieldDefinition('videoRid', api_rids_VideoRid),
63617
+ 'title': ConjureFieldDefinition('title', str),
63618
+ 'description': ConjureFieldDefinition('description', OptionalTypeWrapper[str]),
63619
+ 'labels': ConjureFieldDefinition('labels', List[api_Label]),
63620
+ 'properties': ConjureFieldDefinition('properties', Dict[api_PropertyName, api_PropertyValue]),
63621
+ 'created_by': ConjureFieldDefinition('createdBy', str),
63622
+ 'created_at': ConjureFieldDefinition('createdAt', str),
63623
+ 'origin_metadata': ConjureFieldDefinition('originMetadata', scout_video_api_VideoOriginMetadata),
63624
+ 'segment_metadata': ConjureFieldDefinition('segmentMetadata', OptionalTypeWrapper[scout_video_api_VideoFileSegmentsMetadata])
63625
+ }
63626
+
63627
+ __slots__: List[str] = ['_rid', '_video_rid', '_title', '_description', '_labels', '_properties', '_created_by', '_created_at', '_origin_metadata', '_segment_metadata']
63628
+
63629
+ def __init__(self, created_at: str, created_by: str, labels: List[str], origin_metadata: "scout_video_api_VideoOriginMetadata", properties: Dict[str, str], rid: str, title: str, video_rid: str, description: Optional[str] = None, segment_metadata: Optional["scout_video_api_VideoFileSegmentsMetadata"] = None) -> None:
63630
+ self._rid = rid
63631
+ self._video_rid = video_rid
63632
+ self._title = title
63633
+ self._description = description
63634
+ self._labels = labels
63635
+ self._properties = properties
63636
+ self._created_by = created_by
63637
+ self._created_at = created_at
63638
+ self._origin_metadata = origin_metadata
63639
+ self._segment_metadata = segment_metadata
63640
+
63641
+ @builtins.property
63642
+ def rid(self) -> str:
63643
+ return self._rid
63644
+
63645
+ @builtins.property
63646
+ def video_rid(self) -> str:
63647
+ return self._video_rid
63648
+
63649
+ @builtins.property
63650
+ def title(self) -> str:
63651
+ return self._title
63652
+
63653
+ @builtins.property
63654
+ def description(self) -> Optional[str]:
63655
+ return self._description
63656
+
63657
+ @builtins.property
63658
+ def labels(self) -> List[str]:
63659
+ return self._labels
63660
+
63661
+ @builtins.property
63662
+ def properties(self) -> Dict[str, str]:
63663
+ return self._properties
63664
+
63665
+ @builtins.property
63666
+ def created_by(self) -> str:
63667
+ return self._created_by
63668
+
63669
+ @builtins.property
63670
+ def created_at(self) -> str:
63671
+ return self._created_at
63672
+
63673
+ @builtins.property
63674
+ def origin_metadata(self) -> "scout_video_api_VideoOriginMetadata":
63675
+ return self._origin_metadata
63676
+
63677
+ @builtins.property
63678
+ def segment_metadata(self) -> Optional["scout_video_api_VideoFileSegmentsMetadata"]:
63679
+ return self._segment_metadata
63680
+
63681
+
63682
+ scout_video_api_VideoFile.__name__ = "VideoFile"
63683
+ scout_video_api_VideoFile.__qualname__ = "VideoFile"
63684
+ scout_video_api_VideoFile.__module__ = "nominal_api.scout_video_api"
63685
+
63686
+
63687
+ class scout_video_api_VideoFileSegmentsMetadata(ConjureBeanType):
63688
+
63689
+ @builtins.classmethod
63690
+ def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
63691
+ return {
63692
+ 'rid': ConjureFieldDefinition('rid', api_rids_VideoFileRid),
63693
+ 'num_frames': ConjureFieldDefinition('numFrames', int),
63694
+ 'num_segments': ConjureFieldDefinition('numSegments', int),
63695
+ 'scale_factor': ConjureFieldDefinition('scaleFactor', float),
63696
+ 'min_absolute_timestamp': ConjureFieldDefinition('minAbsoluteTimestamp', api_Timestamp),
63697
+ 'max_absolute_timestamp': ConjureFieldDefinition('maxAbsoluteTimestamp', api_Timestamp),
63698
+ 'media_duration_seconds': ConjureFieldDefinition('mediaDurationSeconds', float),
63699
+ 'media_frame_rate': ConjureFieldDefinition('mediaFrameRate', float)
63700
+ }
63701
+
63702
+ __slots__: List[str] = ['_rid', '_num_frames', '_num_segments', '_scale_factor', '_min_absolute_timestamp', '_max_absolute_timestamp', '_media_duration_seconds', '_media_frame_rate']
63703
+
63704
+ def __init__(self, max_absolute_timestamp: "api_Timestamp", media_duration_seconds: float, media_frame_rate: float, min_absolute_timestamp: "api_Timestamp", num_frames: int, num_segments: int, rid: str, scale_factor: float) -> None:
63705
+ self._rid = rid
63706
+ self._num_frames = num_frames
63707
+ self._num_segments = num_segments
63708
+ self._scale_factor = scale_factor
63709
+ self._min_absolute_timestamp = min_absolute_timestamp
63710
+ self._max_absolute_timestamp = max_absolute_timestamp
63711
+ self._media_duration_seconds = media_duration_seconds
63712
+ self._media_frame_rate = media_frame_rate
63713
+
63714
+ @builtins.property
63715
+ def rid(self) -> str:
63716
+ return self._rid
63717
+
63718
+ @builtins.property
63719
+ def num_frames(self) -> int:
63720
+ return self._num_frames
63721
+
63722
+ @builtins.property
63723
+ def num_segments(self) -> int:
63724
+ return self._num_segments
63725
+
63726
+ @builtins.property
63727
+ def scale_factor(self) -> float:
63728
+ return self._scale_factor
63729
+
63730
+ @builtins.property
63731
+ def min_absolute_timestamp(self) -> "api_Timestamp":
63732
+ return self._min_absolute_timestamp
63733
+
63734
+ @builtins.property
63735
+ def max_absolute_timestamp(self) -> "api_Timestamp":
63736
+ return self._max_absolute_timestamp
63737
+
63738
+ @builtins.property
63739
+ def media_duration_seconds(self) -> float:
63740
+ return self._media_duration_seconds
63741
+
63742
+ @builtins.property
63743
+ def media_frame_rate(self) -> float:
63744
+ return self._media_frame_rate
63745
+
63746
+
63747
+ scout_video_api_VideoFileSegmentsMetadata.__name__ = "VideoFileSegmentsMetadata"
63748
+ scout_video_api_VideoFileSegmentsMetadata.__qualname__ = "VideoFileSegmentsMetadata"
63749
+ scout_video_api_VideoFileSegmentsMetadata.__module__ = "nominal_api.scout_video_api"
63750
+
63751
+
62897
63752
  class scout_video_api_VideoOriginMetadata(ConjureBeanType):
62898
63753
 
62899
63754
  @builtins.classmethod
@@ -69625,6 +70480,8 @@ scout_integrations_api_IntegrationRid = str
69625
70480
 
69626
70481
  scout_api_DataSourceRefName = str
69627
70482
 
70483
+ api_rids_VideoFileRid = str
70484
+
69628
70485
  api_Unit = str
69629
70486
 
69630
70487
  scout_versioning_api_BranchRid = str
@@ -6,6 +6,7 @@ from .._impl import (
6
6
  api_rids_DatasetRid as DatasetRid,
7
7
  api_rids_NominalDataSourceRid as NominalDataSourceRid,
8
8
  api_rids_SegmentRid as SegmentRid,
9
+ api_rids_VideoFileRid as VideoFileRid,
9
10
  api_rids_VideoRid as VideoRid,
10
11
  )
11
12
 
@@ -1,5 +1,6 @@
1
1
  # coding=utf-8
2
2
  from .._impl import (
3
+ scout_video_VideoFileService as VideoFileService,
3
4
  scout_video_VideoSegmentService as VideoSegmentService,
4
5
  scout_video_VideoService as VideoService,
5
6
  )
@@ -1,8 +1,11 @@
1
1
  # coding=utf-8
2
2
  from .._impl import (
3
+ scout_video_api_BatchGetVideoFilesRequest as BatchGetVideoFilesRequest,
4
+ scout_video_api_BatchGetVideoFilesResponse as BatchGetVideoFilesResponse,
3
5
  scout_video_api_CreateSegment as CreateSegment,
4
6
  scout_video_api_CreateSegmentsRequest as CreateSegmentsRequest,
5
7
  scout_video_api_CreateSegmentsResponse as CreateSegmentsResponse,
8
+ scout_video_api_CreateVideoFileRequest as CreateVideoFileRequest,
6
9
  scout_video_api_CreateVideoRequest as CreateVideoRequest,
7
10
  scout_video_api_DetailedIngestStatus as DetailedIngestStatus,
8
11
  scout_video_api_DetailedIngestStatusVisitor as DetailedIngestStatusVisitor,
@@ -12,10 +15,13 @@ from .._impl import (
12
15
  scout_video_api_GetVideosRequest as GetVideosRequest,
13
16
  scout_video_api_GetVideosResponse as GetVideosResponse,
14
17
  scout_video_api_IngestError as IngestError,
18
+ scout_video_api_IngestStatusResponse as IngestStatusResponse,
15
19
  scout_video_api_McapTimestampManifest as McapTimestampManifest,
16
20
  scout_video_api_NoTimestampManifest as NoTimestampManifest,
17
21
  scout_video_api_ScaleParameter as ScaleParameter,
18
22
  scout_video_api_ScaleParameterVisitor as ScaleParameterVisitor,
23
+ scout_video_api_SearchVideoFilesRequest as SearchVideoFilesRequest,
24
+ scout_video_api_SearchVideoFilesResponse as SearchVideoFilesResponse,
19
25
  scout_video_api_SearchVideosQuery as SearchVideosQuery,
20
26
  scout_video_api_SearchVideosQueryVisitor as SearchVideosQueryVisitor,
21
27
  scout_video_api_SearchVideosRequest as SearchVideosRequest,
@@ -29,12 +35,16 @@ from .._impl import (
29
35
  scout_video_api_SuccessIngestStatus as SuccessIngestStatus,
30
36
  scout_video_api_TimestampMappings as TimestampMappings,
31
37
  scout_video_api_UpdateIngestStatus as UpdateIngestStatus,
38
+ scout_video_api_UpdateIngestStatusRequest as UpdateIngestStatusRequest,
32
39
  scout_video_api_UpdateIngestStatusVisitor as UpdateIngestStatusVisitor,
33
40
  scout_video_api_UpdateTargetDurationRequest as UpdateTargetDurationRequest,
34
41
  scout_video_api_UpdateTargetDurationResponse as UpdateTargetDurationResponse,
42
+ scout_video_api_UpdateVideoFileRequest as UpdateVideoFileRequest,
35
43
  scout_video_api_UpdateVideoMetadataRequest as UpdateVideoMetadataRequest,
36
44
  scout_video_api_Video as Video,
37
45
  scout_video_api_VideoAllSegmentsMetadata as VideoAllSegmentsMetadata,
46
+ scout_video_api_VideoFile as VideoFile,
47
+ scout_video_api_VideoFileSegmentsMetadata as VideoFileSegmentsMetadata,
38
48
  scout_video_api_VideoOriginMetadata as VideoOriginMetadata,
39
49
  scout_video_api_VideoTimestampManifest as VideoTimestampManifest,
40
50
  scout_video_api_VideoTimestampManifestVisitor as VideoTimestampManifestVisitor,
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: nominal-api
3
- Version: 0.553.0
3
+ Version: 0.554.0
4
4
  Requires-Python: >=3.8
5
5
  Requires-Dist: requests
6
6
  Requires-Dist: conjure-python-client<3,>=2.8.0
@@ -1,8 +1,8 @@
1
- nominal_api/__init__.py,sha256=RpuYv4dgrOLQB8bXYvi1y11WvA-amzHj0k8PcHJc5g4,1741
2
- nominal_api/_impl.py,sha256=MZ0zXHzizun27r8KkCtXcaf3MMh6yQqAU3dDpDVPT-8,2697965
1
+ nominal_api/__init__.py,sha256=yjQQ-1E2ytN2bNTY9wnpBPKPLD4mncd4fEU7huzLHvw,1741
2
+ nominal_api/_impl.py,sha256=XEzp3OP6H1EUSpMNlRTz4SZa2goL7gYoYGHzO_s0dus,2727887
3
3
  nominal_api/py.typed,sha256=eoZ6GfifbqhMLNzjlqRDVil-yyBkOmVN9ujSgJWNBlY,15
4
4
  nominal_api/api/__init__.py,sha256=kJBEE_HLVpKYdLH12KyO-cSAVzwxYpBwaaDutCtT-LM,1236
5
- nominal_api/api_rids/__init__.py,sha256=vLyAVUPTfk7u9D_K_7MHE-2Pf8leC5JxC-o8NrrnOPk,337
5
+ nominal_api/api_rids/__init__.py,sha256=MwCU7tf4EQBdNPY12rgPdr4y11iowEXxYqtNCvw7sdo,380
6
6
  nominal_api/attachments_api/__init__.py,sha256=eQBE8xVTFDaTItCZv-WJSZqSStpgdai192n23pmVeeQ,634
7
7
  nominal_api/authentication/__init__.py,sha256=Vvna9rXXV-WMeJCk2ekq01jHzgsHHsdJl2ROtd4aRgI,272
8
8
  nominal_api/authentication_api/__init__.py,sha256=HBQrldagoqcvYES_kjB1Eh8oZTZ8SJdX85UZySJB9z0,986
@@ -49,8 +49,8 @@ nominal_api/scout_run_api/__init__.py,sha256=lTAFwaHSqRs7dx316MzdQcgdBy7Y_fe_Bbf
49
49
  nominal_api/scout_template_api/__init__.py,sha256=bsu8qPiZ4gf67G5iFvwsfkqEKJRZ7L5Wyg6qcFyogO0,1037
50
50
  nominal_api/scout_units_api/__init__.py,sha256=KxRDScfumX__0ncWJftGvgApn_LBTfnIBAvnaBrcA5A,368
51
51
  nominal_api/scout_versioning_api/__init__.py,sha256=Sf4T4t0rZXNRIZgkqLBN3yh0sAnrxiuzaTfDQVVkyO4,1323
52
- nominal_api/scout_video/__init__.py,sha256=yTmMEO1HF-vJq-Q_uuQd34CqvC_EZPVkTKARVQjKNI0,146
53
- nominal_api/scout_video_api/__init__.py,sha256=pyqUVdN3RtVKxnbeW0z0ffVc4CUYRe7l9_aNMldjP8U,2458
52
+ nominal_api/scout_video/__init__.py,sha256=zB7mM23yGAgC529rF4gjDmqcLRbsp0kJA3xef8meZko,200
53
+ nominal_api/scout_video_api/__init__.py,sha256=gafiE-WxxQLyTq4RvIZory2Z8pQccYTA9OCeNonsDwk,3160
54
54
  nominal_api/scout_workbookcommon_api/__init__.py,sha256=6Ai0cYNOOw2A6JOlKzraTbpZwolspM-WTqVGLMN2HdI,413
55
55
  nominal_api/secrets_api/__init__.py,sha256=V5BpnbNzjdMP8kgvR2N6SEVcVyXi6Vyl_lh_5fKjJzw,736
56
56
  nominal_api/storage_datasource_api/__init__.py,sha256=jh_OZE_b4nBNAvnyenBjw8aGZOnvIXR6qvUKd31fXOk,445
@@ -64,7 +64,7 @@ nominal_api/timeseries_logicalseries_api/__init__.py,sha256=KuHLafDLeHzOTl0B6j7T
64
64
  nominal_api/timeseries_seriescache/__init__.py,sha256=tFCkNuyrVMgtj-HIl1pOYPJHaL2VikI4C_x97bX_Lcs,109
65
65
  nominal_api/timeseries_seriescache_api/__init__.py,sha256=U9EhlqdF9qzD1O9al0vcvcdgS_C5lq-lN3Kmr0K3g84,1191
66
66
  nominal_api/upload_api/__init__.py,sha256=ZMudWMSqCrNozohbHaJKuxJnT9Edepe7nxxXMz_pT9k,87
67
- nominal_api-0.553.0.dist-info/METADATA,sha256=7BmpRimBEb9RhkLm7a9aB_ywsIk4s0D82DidHaPVsNI,199
68
- nominal_api-0.553.0.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
69
- nominal_api-0.553.0.dist-info/top_level.txt,sha256=gI1ZdNJbuHcJZeKtCzzBXsEtpU1GX6XJKs6ksi_gCRA,12
70
- nominal_api-0.553.0.dist-info/RECORD,,
67
+ nominal_api-0.554.0.dist-info/METADATA,sha256=dDjyKHdFCnPz5QH4nOnf30orx-LXRgqeIl14ybpNa-g,199
68
+ nominal_api-0.554.0.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
69
+ nominal_api-0.554.0.dist-info/top_level.txt,sha256=gI1ZdNJbuHcJZeKtCzzBXsEtpU1GX6XJKs6ksi_gCRA,12
70
+ nominal_api-0.554.0.dist-info/RECORD,,