1use conjure_http::endpoint;
2#[conjure_http::conjure_client(name = "VideoService")]
4pub trait VideoService<
5 #[request_writer]
6 O,
7 #[response_body]
8 I: Iterator<
9 Item = Result<conjure_http::private::Bytes, conjure_http::private::Error>,
10 >,
11> {
12 #[endpoint(
14 method = GET,
15 path = "/video/v1/videos/{videoRid}",
16 name = "get",
17 accept = conjure_http::client::StdResponseDeserializer
18 )]
19 fn get(
20 &self,
21 #[auth]
22 auth_: &conjure_object::BearerToken,
23 #[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
24 video_rid: &conjure_object::ResourceIdentifier,
25 ) -> Result<
26 super::super::super::super::objects::scout::video::api::Video,
27 conjure_http::private::Error,
28 >;
29 #[endpoint(
31 method = POST,
32 path = "/video/v1/videos/batchGet",
33 name = "batchGet",
34 accept = conjure_http::client::StdResponseDeserializer
35 )]
36 fn batch_get(
37 &self,
38 #[auth]
39 auth_: &conjure_object::BearerToken,
40 #[body(serializer = conjure_http::client::StdRequestSerializer)]
41 request: &super::super::super::super::objects::scout::video::api::GetVideosRequest,
42 ) -> Result<
43 super::super::super::super::objects::scout::video::api::GetVideosResponse,
44 conjure_http::private::Error,
45 >;
46 #[endpoint(
48 method = POST,
49 path = "/video/v1/videos/search",
50 name = "search",
51 accept = conjure_http::client::StdResponseDeserializer
52 )]
53 fn search(
54 &self,
55 #[auth]
56 auth_: &conjure_object::BearerToken,
57 #[body(serializer = conjure_http::client::StdRequestSerializer)]
58 request: &super::super::super::super::objects::scout::video::api::SearchVideosRequest,
59 ) -> Result<
60 super::super::super::super::objects::scout::video::api::SearchVideosResponse,
61 conjure_http::private::Error,
62 >;
63 #[endpoint(
65 method = POST,
66 path = "/video/v1/videos",
67 name = "create",
68 accept = conjure_http::client::StdResponseDeserializer
69 )]
70 fn create(
71 &self,
72 #[auth]
73 auth_: &conjure_object::BearerToken,
74 #[body(serializer = conjure_http::client::StdRequestSerializer)]
75 request: &super::super::super::super::objects::scout::video::api::CreateVideoRequest,
76 ) -> Result<
77 super::super::super::super::objects::scout::video::api::Video,
78 conjure_http::private::Error,
79 >;
80 #[endpoint(
82 method = PUT,
83 path = "/video/v1/videos/{videoRid}",
84 name = "updateMetadata",
85 accept = conjure_http::client::StdResponseDeserializer
86 )]
87 fn update_metadata(
88 &self,
89 #[auth]
90 auth_: &conjure_object::BearerToken,
91 #[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
92 video_rid: &conjure_object::ResourceIdentifier,
93 #[body(serializer = conjure_http::client::StdRequestSerializer)]
94 request: &super::super::super::super::objects::scout::video::api::UpdateVideoMetadataRequest,
95 ) -> Result<
96 super::super::super::super::objects::scout::video::api::Video,
97 conjure_http::private::Error,
98 >;
99 #[endpoint(
100 method = PUT,
101 path = "/video/v1/videos/{videoRid}/ingest-status",
102 name = "updateIngestStatus",
103 accept = conjure_http::client::conjure::EmptyResponseDeserializer
104 )]
105 fn update_ingest_status(
106 &self,
107 #[auth]
108 auth_: &conjure_object::BearerToken,
109 #[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
110 video_rid: &conjure_object::ResourceIdentifier,
111 #[body(serializer = conjure_http::client::StdRequestSerializer)]
112 request: &super::super::super::super::objects::scout::video::api::UpdateIngestStatus,
113 ) -> Result<(), conjure_http::private::Error>;
114 #[endpoint(
115 method = GET,
116 path = "/video/v1/videos/{videoRid}/ingest-status",
117 name = "getIngestStatus",
118 accept = conjure_http::client::StdResponseDeserializer
119 )]
120 fn get_ingest_status(
121 &self,
122 #[auth]
123 auth_: &conjure_object::BearerToken,
124 #[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
125 video_rid: &conjure_object::ResourceIdentifier,
126 ) -> Result<
127 super::super::super::super::objects::scout::video::api::DetailedIngestStatus,
128 conjure_http::private::Error,
129 >;
130 #[endpoint(
131 method = POST,
132 path = "/video/v1/videos/batch-get-ingest-status",
133 name = "batchGetIngestStatus",
134 accept = conjure_http::client::conjure::CollectionResponseDeserializer
135 )]
136 fn batch_get_ingest_status(
137 &self,
138 #[auth]
139 auth_: &conjure_object::BearerToken,
140 #[body(serializer = conjure_http::client::StdRequestSerializer)]
141 video_rids: &std::collections::BTreeSet<conjure_object::ResourceIdentifier>,
142 ) -> Result<
143 std::collections::BTreeMap<
144 conjure_object::ResourceIdentifier,
145 super::super::super::super::objects::scout::video::api::DetailedIngestStatus,
146 >,
147 conjure_http::private::Error,
148 >;
149 #[endpoint(
150 method = POST,
151 path = "/video/v1/videos/enriched-ingest-status",
152 name = "getEnrichedIngestStatus",
153 accept = conjure_http::client::conjure::CollectionResponseDeserializer
154 )]
155 fn get_enriched_ingest_status(
156 &self,
157 #[auth]
158 auth_: &conjure_object::BearerToken,
159 #[body(serializer = conjure_http::client::StdRequestSerializer)]
160 request: &super::super::super::super::objects::scout::video::api::GetEnrichedVideoIngestStatusRequest,
161 ) -> Result<
162 Option<
163 super::super::super::super::objects::scout::video::api::EnrichedVideoIngestStatus,
164 >,
165 conjure_http::private::Error,
166 >;
167 #[endpoint(
170 method = PUT,
171 path = "/video/v1/videos/{videoRid}/archive",
172 name = "archive",
173 accept = conjure_http::client::conjure::EmptyResponseDeserializer
174 )]
175 fn archive(
176 &self,
177 #[auth]
178 auth_: &conjure_object::BearerToken,
179 #[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
180 video_rid: &conjure_object::ResourceIdentifier,
181 ) -> Result<(), conjure_http::private::Error>;
182 #[endpoint(
184 method = PUT,
185 path = "/video/v1/videos/{videoRid}/unarchive",
186 name = "unarchive",
187 accept = conjure_http::client::conjure::EmptyResponseDeserializer
188 )]
189 fn unarchive(
190 &self,
191 #[auth]
192 auth_: &conjure_object::BearerToken,
193 #[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
194 video_rid: &conjure_object::ResourceIdentifier,
195 ) -> Result<(), conjure_http::private::Error>;
196 #[endpoint(
204 method = GET,
205 path = "/video/v1/videos/{videoRid}/playlist",
206 name = "getPlaylist",
207 accept = conjure_http::client::conjure::BinaryResponseDeserializer
208 )]
209 fn get_playlist(
210 &self,
211 #[auth]
212 auth_: &conjure_object::BearerToken,
213 #[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
214 video_rid: &conjure_object::ResourceIdentifier,
215 #[query(
216 name = "start",
217 encoder = conjure_http::client::conjure::PlainSeqEncoder
218 )]
219 start: Option<&str>,
220 #[query(name = "end", encoder = conjure_http::client::conjure::PlainSeqEncoder)]
221 end: Option<&str>,
222 ) -> Result<I, conjure_http::private::Error>;
223 #[endpoint(
226 method = GET,
227 path = "/video/v1/videos/{videoRid}/segment-summaries",
228 name = "getSegmentSummaries",
229 accept = conjure_http::client::conjure::CollectionResponseDeserializer
230 )]
231 fn get_segment_summaries(
232 &self,
233 #[auth]
234 auth_: &conjure_object::BearerToken,
235 #[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
236 video_rid: &conjure_object::ResourceIdentifier,
237 ) -> Result<
238 Vec<super::super::super::super::objects::scout::video::api::SegmentSummary>,
239 conjure_http::private::Error,
240 >;
241 #[endpoint(
246 method = POST,
247 path = "/video/v1/videos/{videoRid}/playlist-in-bounds",
248 name = "getPlaylistInBounds",
249 accept = conjure_http::client::conjure::BinaryResponseDeserializer
250 )]
251 fn get_playlist_in_bounds(
252 &self,
253 #[auth]
254 auth_: &conjure_object::BearerToken,
255 #[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
256 video_rid: &conjure_object::ResourceIdentifier,
257 #[body(serializer = conjure_http::client::StdRequestSerializer)]
258 request: &super::super::super::super::objects::scout::video::api::GetPlaylistInBoundsRequest,
259 ) -> Result<I, conjure_http::private::Error>;
260 #[endpoint(
262 method = POST,
263 path = "/video/v2/videos/playlist-in-bounds",
264 name = "getPlaylistInBoundsV2",
265 accept = conjure_http::client::conjure::BinaryResponseDeserializer
266 )]
267 fn get_playlist_in_bounds_v2(
268 &self,
269 #[auth]
270 auth_: &conjure_object::BearerToken,
271 #[body(serializer = conjure_http::client::StdRequestSerializer)]
272 request: &super::super::super::super::objects::scout::video::api::GetPlaylistInBoundsForChannelRequest,
273 ) -> Result<I, conjure_http::private::Error>;
274 #[endpoint(
279 method = GET,
280 path = "/video/v2/videos/playlist",
281 name = "getPlaylistV2",
282 accept = conjure_http::client::conjure::BinaryResponseDeserializer
283 )]
284 fn get_playlist_v2(
285 &self,
286 #[auth]
287 auth_: &conjure_object::BearerToken,
288 #[query(
289 name = "dataSourceRid",
290 encoder = conjure_http::client::conjure::PlainSeqEncoder
291 )]
292 data_source_rid: Option<&conjure_object::ResourceIdentifier>,
293 #[query(
294 name = "assetRid",
295 encoder = conjure_http::client::conjure::PlainSeqEncoder
296 )]
297 asset_rid: Option<
298 &super::super::super::super::objects::scout::rids::api::AssetRid,
299 >,
300 #[query(
301 name = "dataScopeName",
302 encoder = conjure_http::client::conjure::PlainSeqEncoder
303 )]
304 data_scope_name: Option<&str>,
305 #[query(name = "channel", encoder = conjure_http::client::conjure::PlainEncoder)]
306 channel: &str,
307 #[query(name = "tags", encoder = conjure_http::client::conjure::PlainSeqEncoder)]
308 tags: Option<&str>,
309 #[query(name = "start", encoder = conjure_http::client::conjure::PlainEncoder)]
310 start: &str,
311 #[query(name = "end", encoder = conjure_http::client::conjure::PlainEncoder)]
312 end: &str,
313 ) -> Result<I, conjure_http::private::Error>;
314 #[endpoint(
317 method = POST,
318 path = "/video/v1/videos/{videoRid}/segment-summaries-in-bounds",
319 name = "getSegmentSummariesInBounds",
320 accept = conjure_http::client::conjure::CollectionResponseDeserializer
321 )]
322 fn get_segment_summaries_in_bounds(
323 &self,
324 #[auth]
325 auth_: &conjure_object::BearerToken,
326 #[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
327 video_rid: &conjure_object::ResourceIdentifier,
328 #[body(serializer = conjure_http::client::StdRequestSerializer)]
329 request: &super::super::super::super::objects::scout::video::api::GetSegmentSummariesInBoundsRequest,
330 ) -> Result<
331 Vec<super::super::super::super::objects::scout::video::api::SegmentSummary>,
332 conjure_http::private::Error,
333 >;
334 #[endpoint(
337 method = POST,
338 path = "/video/v2/videos/segment-summaries-in-bounds",
339 name = "getSegmentSummariesInBoundsV2",
340 accept = conjure_http::client::conjure::CollectionResponseDeserializer
341 )]
342 fn get_segment_summaries_in_bounds_v2(
343 &self,
344 #[auth]
345 auth_: &conjure_object::BearerToken,
346 #[body(serializer = conjure_http::client::StdRequestSerializer)]
347 request: &super::super::super::super::objects::scout::video::api::GetSegmentSummariesInBoundsForChannelRequest,
348 ) -> Result<
349 Vec<super::super::super::super::objects::scout::video::api::SegmentSummaryV2>,
350 conjure_http::private::Error,
351 >;
352 #[endpoint(
355 method = POST,
356 path = "/video/v2/videos/segment-metadata",
357 name = "getSegmentMetadataV2",
358 accept = conjure_http::client::conjure::CollectionResponseDeserializer
359 )]
360 fn get_segment_metadata_v2(
361 &self,
362 #[auth]
363 auth_: &conjure_object::BearerToken,
364 #[body(serializer = conjure_http::client::StdRequestSerializer)]
365 request: &super::super::super::super::objects::scout::video::api::GetSegmentMetadataForChannelRequest,
366 ) -> Result<
367 Option<
368 super::super::super::super::objects::scout::video::api::VideoChannelSegmentsMetadata,
369 >,
370 conjure_http::private::Error,
371 >;
372 #[endpoint(
374 method = POST,
375 path = "/video/v2/videos/get-segment-by-timestamp",
376 name = "getSegmentByTimestampV2",
377 accept = conjure_http::client::conjure::CollectionResponseDeserializer
378 )]
379 fn get_segment_by_timestamp_v2(
380 &self,
381 #[auth]
382 auth_: &conjure_object::BearerToken,
383 #[body(serializer = conjure_http::client::StdRequestSerializer)]
384 request: &super::super::super::super::objects::scout::video::api::GetSegmentByTimestampV2Request,
385 ) -> Result<
386 Option<super::super::super::super::objects::scout::video::api::SegmentV2>,
387 conjure_http::private::Error,
388 >;
389 #[endpoint(
393 method = POST,
394 path = "/video/v1/videos/{videoRid}/get-segment-at-or-after-timestamp",
395 name = "getSegmentAtOrAfterTimestamp",
396 accept = conjure_http::client::conjure::CollectionResponseDeserializer
397 )]
398 fn get_segment_at_or_after_timestamp(
399 &self,
400 #[auth]
401 auth_: &conjure_object::BearerToken,
402 #[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
403 video_rid: &conjure_object::ResourceIdentifier,
404 #[body(serializer = conjure_http::client::StdRequestSerializer)]
405 request: &super::super::super::super::objects::scout::video::api::GetSegmentAtOrAfterTimestampRequest,
406 ) -> Result<
407 Option<super::super::super::super::objects::scout::video::api::Segment>,
408 conjure_http::private::Error,
409 >;
410 #[endpoint(
414 method = POST,
415 path = "/video/v2/videos/get-segment-at-or-after-timestamp",
416 name = "getSegmentAtOrAfterTimestampV2",
417 accept = conjure_http::client::conjure::CollectionResponseDeserializer
418 )]
419 fn get_segment_at_or_after_timestamp_v2(
420 &self,
421 #[auth]
422 auth_: &conjure_object::BearerToken,
423 #[body(serializer = conjure_http::client::StdRequestSerializer)]
424 request: &super::super::super::super::objects::scout::video::api::GetSegmentAtOrAfterTimestampV2Request,
425 ) -> Result<
426 Option<super::super::super::super::objects::scout::video::api::SegmentV2>,
427 conjure_http::private::Error,
428 >;
429 #[endpoint(
433 method = POST,
434 path = "/video/v1/videos/{videoRid}/get-ranges-with-existing-segment-data",
435 name = "getFileSummaries",
436 accept = conjure_http::client::StdResponseDeserializer
437 )]
438 fn get_file_summaries(
439 &self,
440 #[auth]
441 auth_: &conjure_object::BearerToken,
442 #[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
443 video_rid: &conjure_object::ResourceIdentifier,
444 #[body(serializer = conjure_http::client::StdRequestSerializer)]
445 request: &super::super::super::super::objects::scout::video::api::GetFileSummariesRequest,
446 ) -> Result<
447 super::super::super::super::objects::scout::video::api::GetFileSummariesResponse,
448 conjure_http::private::Error,
449 >;
450 #[endpoint(
453 method = POST,
454 path = "/video/v1/videos/{videoRid}/streaming/whip",
455 name = "generateWhipStream",
456 accept = conjure_http::client::StdResponseDeserializer
457 )]
458 fn generate_whip_stream(
459 &self,
460 #[auth]
461 auth_: &conjure_object::BearerToken,
462 #[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
463 video_rid: &conjure_object::ResourceIdentifier,
464 ) -> Result<
465 super::super::super::super::objects::scout::video::api::GenerateWhipStreamResponse,
466 conjure_http::private::Error,
467 >;
468 #[endpoint(
472 method = POST,
473 path = "/video/v2/videos/streaming/whip",
474 name = "generateWhipStreamV2",
475 accept = conjure_http::client::StdResponseDeserializer
476 )]
477 fn generate_whip_stream_v2(
478 &self,
479 #[auth]
480 auth_: &conjure_object::BearerToken,
481 #[body(serializer = conjure_http::client::StdRequestSerializer)]
482 request: &super::super::super::super::objects::scout::video::api::GenerateWhipStreamV2Request,
483 ) -> Result<
484 super::super::super::super::objects::scout::video::api::GenerateWhipStreamResponse,
485 conjure_http::private::Error,
486 >;
487 #[endpoint(
491 method = POST,
492 path = "/video/v1/videos/{videoRid}/streaming/whep",
493 name = "generateWhepStream",
494 accept = conjure_http::client::conjure::CollectionResponseDeserializer
495 )]
496 fn generate_whep_stream(
497 &self,
498 #[auth]
499 auth_: &conjure_object::BearerToken,
500 #[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
501 video_rid: &conjure_object::ResourceIdentifier,
502 ) -> Result<
503 Option<
504 super::super::super::super::objects::scout::video::api::GenerateWhepStreamResponse,
505 >,
506 conjure_http::private::Error,
507 >;
508 #[endpoint(
512 method = POST,
513 path = "/video/v2/videos/streaming/whep",
514 name = "generateWhepStreamV2",
515 accept = conjure_http::client::conjure::CollectionResponseDeserializer
516 )]
517 fn generate_whep_stream_v2(
518 &self,
519 #[auth]
520 auth_: &conjure_object::BearerToken,
521 #[body(serializer = conjure_http::client::StdRequestSerializer)]
522 request: &super::super::super::super::objects::scout::video::api::GenerateWhepStreamV2Request,
523 ) -> Result<
524 Option<
525 super::super::super::super::objects::scout::video::api::GenerateWhepStreamResponse,
526 >,
527 conjure_http::private::Error,
528 >;
529 #[endpoint(
532 method = GET,
533 path = "/video/v1/videos/{videoRid}/streaming/streams/{streamId}",
534 name = "getStream",
535 accept = conjure_http::client::conjure::CollectionResponseDeserializer
536 )]
537 fn get_stream(
538 &self,
539 #[auth]
540 auth_: &conjure_object::BearerToken,
541 #[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
542 video_rid: &conjure_object::ResourceIdentifier,
543 #[path(name = "streamId", encoder = conjure_http::client::conjure::PlainEncoder)]
544 stream_id: &str,
545 ) -> Result<
546 Option<super::super::super::super::objects::scout::video::api::VideoStream>,
547 conjure_http::private::Error,
548 >;
549 #[endpoint(
553 method = POST,
554 path = "/video/v1/videos/{videoRid}/streaming/streams-in-bounds",
555 name = "getStreamsInBounds",
556 accept = conjure_http::client::StdResponseDeserializer
557 )]
558 fn get_streams_in_bounds(
559 &self,
560 #[auth]
561 auth_: &conjure_object::BearerToken,
562 #[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
563 video_rid: &conjure_object::ResourceIdentifier,
564 #[body(serializer = conjure_http::client::StdRequestSerializer)]
565 request: &super::super::super::super::objects::scout::video::api::GetStreamsInBoundsRequest,
566 ) -> Result<
567 super::super::super::super::objects::scout::video::api::GetStreamsInBoundsResponse,
568 conjure_http::private::Error,
569 >;
570 #[endpoint(
574 method = POST,
575 path = "/video/v2/videos/streaming/streams-in-bounds",
576 name = "getStreamsInBoundsV2",
577 accept = conjure_http::client::StdResponseDeserializer
578 )]
579 fn get_streams_in_bounds_v2(
580 &self,
581 #[auth]
582 auth_: &conjure_object::BearerToken,
583 #[body(serializer = conjure_http::client::StdRequestSerializer)]
584 request: &super::super::super::super::objects::scout::video::api::GetStreamsInBoundsForChannelRequest,
585 ) -> Result<
586 super::super::super::super::objects::scout::video::api::GetStreamsInBoundsV2Response,
587 conjure_http::private::Error,
588 >;
589 #[endpoint(
595 method = POST,
596 path = "/video/v2/videos/channel-dataset-files",
597 name = "listVideoChannelDatasetFiles",
598 accept = conjure_http::client::StdResponseDeserializer
599 )]
600 fn list_video_channel_dataset_files(
601 &self,
602 #[auth]
603 auth_: &conjure_object::BearerToken,
604 #[body(serializer = conjure_http::client::StdRequestSerializer)]
605 request: &super::super::super::super::objects::scout::video::api::ListVideoChannelDatasetFilesRequest,
606 ) -> Result<
607 super::super::super::super::objects::scout::video::api::ListVideoChannelDatasetFilesResponse,
608 conjure_http::private::Error,
609 >;
610 #[endpoint(
618 method = POST,
619 path = "/video/v2/videos/channel-dataset-files/batch-update",
620 name = "batchUpdateVideoChannelDatasetFiles",
621 accept = conjure_http::client::StdResponseDeserializer
622 )]
623 fn batch_update_video_channel_dataset_files(
624 &self,
625 #[auth]
626 auth_: &conjure_object::BearerToken,
627 #[body(serializer = conjure_http::client::StdRequestSerializer)]
628 request: &super::super::super::super::objects::scout::video::api::BatchUpdateVideoChannelDatasetFilesRequest,
629 ) -> Result<
630 super::super::super::super::objects::scout::video::api::BatchUpdateVideoChannelDatasetFilesResponse,
631 conjure_http::private::Error,
632 >;
633 #[endpoint(
637 method = POST,
638 path = "/video/v1/videos/{videoRid}/streaming/end",
639 name = "endStream",
640 accept = conjure_http::client::StdResponseDeserializer
641 )]
642 fn end_stream(
643 &self,
644 #[auth]
645 auth_: &conjure_object::BearerToken,
646 #[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
647 video_rid: &conjure_object::ResourceIdentifier,
648 ) -> Result<
649 super::super::super::super::objects::scout::video::api::EndStreamResponse,
650 conjure_http::private::Error,
651 >;
652 #[endpoint(
655 method = POST,
656 path = "/video/v1/segment/upload",
657 name = "uploadSegmentFromMediaMtx",
658 accept = conjure_http::client::conjure::EmptyResponseDeserializer
659 )]
660 fn upload_segment_from_media_mtx(
661 &self,
662 #[auth]
663 auth_: &conjure_object::BearerToken,
664 #[query(
665 name = "streamPath",
666 encoder = conjure_http::client::conjure::PlainEncoder
667 )]
668 stream_path: &str,
669 #[query(
670 name = "filePath",
671 encoder = conjure_http::client::conjure::PlainEncoder
672 )]
673 file_path: &str,
674 #[query(
675 name = "duration",
676 encoder = conjure_http::client::conjure::PlainEncoder
677 )]
678 duration: &str,
679 #[query(
680 name = "minTimestampSeconds",
681 encoder = conjure_http::client::conjure::PlainEncoder
682 )]
683 min_timestamp_seconds: conjure_object::SafeLong,
684 #[query(
685 name = "minTimestampNanos",
686 encoder = conjure_http::client::conjure::PlainEncoder
687 )]
688 min_timestamp_nanos: conjure_object::SafeLong,
689 #[header(
690 name = "Content-Length",
691 encoder = conjure_http::client::conjure::PlainEncoder
692 )]
693 content_length: conjure_object::SafeLong,
694 #[body(serializer = conjure_http::client::conjure::BinaryRequestSerializer)]
695 body: impl conjure_http::client::WriteBody<O>,
696 ) -> Result<(), conjure_http::private::Error>;
697}
698#[conjure_http::conjure_client(name = "VideoService")]
700pub trait AsyncVideoService<
701 #[request_writer]
702 O,
703 #[response_body]
704 I: conjure_http::private::Stream<
705 Item = Result<conjure_http::private::Bytes, conjure_http::private::Error>,
706 >,
707> {
708 #[endpoint(
710 method = GET,
711 path = "/video/v1/videos/{videoRid}",
712 name = "get",
713 accept = conjure_http::client::StdResponseDeserializer
714 )]
715 async fn get(
716 &self,
717 #[auth]
718 auth_: &conjure_object::BearerToken,
719 #[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
720 video_rid: &conjure_object::ResourceIdentifier,
721 ) -> Result<
722 super::super::super::super::objects::scout::video::api::Video,
723 conjure_http::private::Error,
724 >;
725 #[endpoint(
727 method = POST,
728 path = "/video/v1/videos/batchGet",
729 name = "batchGet",
730 accept = conjure_http::client::StdResponseDeserializer
731 )]
732 async fn batch_get(
733 &self,
734 #[auth]
735 auth_: &conjure_object::BearerToken,
736 #[body(serializer = conjure_http::client::StdRequestSerializer)]
737 request: &super::super::super::super::objects::scout::video::api::GetVideosRequest,
738 ) -> Result<
739 super::super::super::super::objects::scout::video::api::GetVideosResponse,
740 conjure_http::private::Error,
741 >;
742 #[endpoint(
744 method = POST,
745 path = "/video/v1/videos/search",
746 name = "search",
747 accept = conjure_http::client::StdResponseDeserializer
748 )]
749 async fn search(
750 &self,
751 #[auth]
752 auth_: &conjure_object::BearerToken,
753 #[body(serializer = conjure_http::client::StdRequestSerializer)]
754 request: &super::super::super::super::objects::scout::video::api::SearchVideosRequest,
755 ) -> Result<
756 super::super::super::super::objects::scout::video::api::SearchVideosResponse,
757 conjure_http::private::Error,
758 >;
759 #[endpoint(
761 method = POST,
762 path = "/video/v1/videos",
763 name = "create",
764 accept = conjure_http::client::StdResponseDeserializer
765 )]
766 async fn create(
767 &self,
768 #[auth]
769 auth_: &conjure_object::BearerToken,
770 #[body(serializer = conjure_http::client::StdRequestSerializer)]
771 request: &super::super::super::super::objects::scout::video::api::CreateVideoRequest,
772 ) -> Result<
773 super::super::super::super::objects::scout::video::api::Video,
774 conjure_http::private::Error,
775 >;
776 #[endpoint(
778 method = PUT,
779 path = "/video/v1/videos/{videoRid}",
780 name = "updateMetadata",
781 accept = conjure_http::client::StdResponseDeserializer
782 )]
783 async fn update_metadata(
784 &self,
785 #[auth]
786 auth_: &conjure_object::BearerToken,
787 #[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
788 video_rid: &conjure_object::ResourceIdentifier,
789 #[body(serializer = conjure_http::client::StdRequestSerializer)]
790 request: &super::super::super::super::objects::scout::video::api::UpdateVideoMetadataRequest,
791 ) -> Result<
792 super::super::super::super::objects::scout::video::api::Video,
793 conjure_http::private::Error,
794 >;
795 #[endpoint(
796 method = PUT,
797 path = "/video/v1/videos/{videoRid}/ingest-status",
798 name = "updateIngestStatus",
799 accept = conjure_http::client::conjure::EmptyResponseDeserializer
800 )]
801 async fn update_ingest_status(
802 &self,
803 #[auth]
804 auth_: &conjure_object::BearerToken,
805 #[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
806 video_rid: &conjure_object::ResourceIdentifier,
807 #[body(serializer = conjure_http::client::StdRequestSerializer)]
808 request: &super::super::super::super::objects::scout::video::api::UpdateIngestStatus,
809 ) -> Result<(), conjure_http::private::Error>;
810 #[endpoint(
811 method = GET,
812 path = "/video/v1/videos/{videoRid}/ingest-status",
813 name = "getIngestStatus",
814 accept = conjure_http::client::StdResponseDeserializer
815 )]
816 async fn get_ingest_status(
817 &self,
818 #[auth]
819 auth_: &conjure_object::BearerToken,
820 #[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
821 video_rid: &conjure_object::ResourceIdentifier,
822 ) -> Result<
823 super::super::super::super::objects::scout::video::api::DetailedIngestStatus,
824 conjure_http::private::Error,
825 >;
826 #[endpoint(
827 method = POST,
828 path = "/video/v1/videos/batch-get-ingest-status",
829 name = "batchGetIngestStatus",
830 accept = conjure_http::client::conjure::CollectionResponseDeserializer
831 )]
832 async fn batch_get_ingest_status(
833 &self,
834 #[auth]
835 auth_: &conjure_object::BearerToken,
836 #[body(serializer = conjure_http::client::StdRequestSerializer)]
837 video_rids: &std::collections::BTreeSet<conjure_object::ResourceIdentifier>,
838 ) -> Result<
839 std::collections::BTreeMap<
840 conjure_object::ResourceIdentifier,
841 super::super::super::super::objects::scout::video::api::DetailedIngestStatus,
842 >,
843 conjure_http::private::Error,
844 >;
845 #[endpoint(
846 method = POST,
847 path = "/video/v1/videos/enriched-ingest-status",
848 name = "getEnrichedIngestStatus",
849 accept = conjure_http::client::conjure::CollectionResponseDeserializer
850 )]
851 async fn get_enriched_ingest_status(
852 &self,
853 #[auth]
854 auth_: &conjure_object::BearerToken,
855 #[body(serializer = conjure_http::client::StdRequestSerializer)]
856 request: &super::super::super::super::objects::scout::video::api::GetEnrichedVideoIngestStatusRequest,
857 ) -> Result<
858 Option<
859 super::super::super::super::objects::scout::video::api::EnrichedVideoIngestStatus,
860 >,
861 conjure_http::private::Error,
862 >;
863 #[endpoint(
866 method = PUT,
867 path = "/video/v1/videos/{videoRid}/archive",
868 name = "archive",
869 accept = conjure_http::client::conjure::EmptyResponseDeserializer
870 )]
871 async fn archive(
872 &self,
873 #[auth]
874 auth_: &conjure_object::BearerToken,
875 #[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
876 video_rid: &conjure_object::ResourceIdentifier,
877 ) -> Result<(), conjure_http::private::Error>;
878 #[endpoint(
880 method = PUT,
881 path = "/video/v1/videos/{videoRid}/unarchive",
882 name = "unarchive",
883 accept = conjure_http::client::conjure::EmptyResponseDeserializer
884 )]
885 async fn unarchive(
886 &self,
887 #[auth]
888 auth_: &conjure_object::BearerToken,
889 #[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
890 video_rid: &conjure_object::ResourceIdentifier,
891 ) -> Result<(), conjure_http::private::Error>;
892 #[endpoint(
900 method = GET,
901 path = "/video/v1/videos/{videoRid}/playlist",
902 name = "getPlaylist",
903 accept = conjure_http::client::conjure::BinaryResponseDeserializer
904 )]
905 async fn get_playlist(
906 &self,
907 #[auth]
908 auth_: &conjure_object::BearerToken,
909 #[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
910 video_rid: &conjure_object::ResourceIdentifier,
911 #[query(
912 name = "start",
913 encoder = conjure_http::client::conjure::PlainSeqEncoder
914 )]
915 start: Option<&str>,
916 #[query(name = "end", encoder = conjure_http::client::conjure::PlainSeqEncoder)]
917 end: Option<&str>,
918 ) -> Result<I, conjure_http::private::Error>;
919 #[endpoint(
922 method = GET,
923 path = "/video/v1/videos/{videoRid}/segment-summaries",
924 name = "getSegmentSummaries",
925 accept = conjure_http::client::conjure::CollectionResponseDeserializer
926 )]
927 async fn get_segment_summaries(
928 &self,
929 #[auth]
930 auth_: &conjure_object::BearerToken,
931 #[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
932 video_rid: &conjure_object::ResourceIdentifier,
933 ) -> Result<
934 Vec<super::super::super::super::objects::scout::video::api::SegmentSummary>,
935 conjure_http::private::Error,
936 >;
937 #[endpoint(
942 method = POST,
943 path = "/video/v1/videos/{videoRid}/playlist-in-bounds",
944 name = "getPlaylistInBounds",
945 accept = conjure_http::client::conjure::BinaryResponseDeserializer
946 )]
947 async fn get_playlist_in_bounds(
948 &self,
949 #[auth]
950 auth_: &conjure_object::BearerToken,
951 #[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
952 video_rid: &conjure_object::ResourceIdentifier,
953 #[body(serializer = conjure_http::client::StdRequestSerializer)]
954 request: &super::super::super::super::objects::scout::video::api::GetPlaylistInBoundsRequest,
955 ) -> Result<I, conjure_http::private::Error>;
956 #[endpoint(
958 method = POST,
959 path = "/video/v2/videos/playlist-in-bounds",
960 name = "getPlaylistInBoundsV2",
961 accept = conjure_http::client::conjure::BinaryResponseDeserializer
962 )]
963 async fn get_playlist_in_bounds_v2(
964 &self,
965 #[auth]
966 auth_: &conjure_object::BearerToken,
967 #[body(serializer = conjure_http::client::StdRequestSerializer)]
968 request: &super::super::super::super::objects::scout::video::api::GetPlaylistInBoundsForChannelRequest,
969 ) -> Result<I, conjure_http::private::Error>;
970 #[endpoint(
975 method = GET,
976 path = "/video/v2/videos/playlist",
977 name = "getPlaylistV2",
978 accept = conjure_http::client::conjure::BinaryResponseDeserializer
979 )]
980 async fn get_playlist_v2(
981 &self,
982 #[auth]
983 auth_: &conjure_object::BearerToken,
984 #[query(
985 name = "dataSourceRid",
986 encoder = conjure_http::client::conjure::PlainSeqEncoder
987 )]
988 data_source_rid: Option<&conjure_object::ResourceIdentifier>,
989 #[query(
990 name = "assetRid",
991 encoder = conjure_http::client::conjure::PlainSeqEncoder
992 )]
993 asset_rid: Option<
994 &super::super::super::super::objects::scout::rids::api::AssetRid,
995 >,
996 #[query(
997 name = "dataScopeName",
998 encoder = conjure_http::client::conjure::PlainSeqEncoder
999 )]
1000 data_scope_name: Option<&str>,
1001 #[query(name = "channel", encoder = conjure_http::client::conjure::PlainEncoder)]
1002 channel: &str,
1003 #[query(name = "tags", encoder = conjure_http::client::conjure::PlainSeqEncoder)]
1004 tags: Option<&str>,
1005 #[query(name = "start", encoder = conjure_http::client::conjure::PlainEncoder)]
1006 start: &str,
1007 #[query(name = "end", encoder = conjure_http::client::conjure::PlainEncoder)]
1008 end: &str,
1009 ) -> Result<I, conjure_http::private::Error>;
1010 #[endpoint(
1013 method = POST,
1014 path = "/video/v1/videos/{videoRid}/segment-summaries-in-bounds",
1015 name = "getSegmentSummariesInBounds",
1016 accept = conjure_http::client::conjure::CollectionResponseDeserializer
1017 )]
1018 async fn get_segment_summaries_in_bounds(
1019 &self,
1020 #[auth]
1021 auth_: &conjure_object::BearerToken,
1022 #[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
1023 video_rid: &conjure_object::ResourceIdentifier,
1024 #[body(serializer = conjure_http::client::StdRequestSerializer)]
1025 request: &super::super::super::super::objects::scout::video::api::GetSegmentSummariesInBoundsRequest,
1026 ) -> Result<
1027 Vec<super::super::super::super::objects::scout::video::api::SegmentSummary>,
1028 conjure_http::private::Error,
1029 >;
1030 #[endpoint(
1033 method = POST,
1034 path = "/video/v2/videos/segment-summaries-in-bounds",
1035 name = "getSegmentSummariesInBoundsV2",
1036 accept = conjure_http::client::conjure::CollectionResponseDeserializer
1037 )]
1038 async fn get_segment_summaries_in_bounds_v2(
1039 &self,
1040 #[auth]
1041 auth_: &conjure_object::BearerToken,
1042 #[body(serializer = conjure_http::client::StdRequestSerializer)]
1043 request: &super::super::super::super::objects::scout::video::api::GetSegmentSummariesInBoundsForChannelRequest,
1044 ) -> Result<
1045 Vec<super::super::super::super::objects::scout::video::api::SegmentSummaryV2>,
1046 conjure_http::private::Error,
1047 >;
1048 #[endpoint(
1051 method = POST,
1052 path = "/video/v2/videos/segment-metadata",
1053 name = "getSegmentMetadataV2",
1054 accept = conjure_http::client::conjure::CollectionResponseDeserializer
1055 )]
1056 async fn get_segment_metadata_v2(
1057 &self,
1058 #[auth]
1059 auth_: &conjure_object::BearerToken,
1060 #[body(serializer = conjure_http::client::StdRequestSerializer)]
1061 request: &super::super::super::super::objects::scout::video::api::GetSegmentMetadataForChannelRequest,
1062 ) -> Result<
1063 Option<
1064 super::super::super::super::objects::scout::video::api::VideoChannelSegmentsMetadata,
1065 >,
1066 conjure_http::private::Error,
1067 >;
1068 #[endpoint(
1070 method = POST,
1071 path = "/video/v2/videos/get-segment-by-timestamp",
1072 name = "getSegmentByTimestampV2",
1073 accept = conjure_http::client::conjure::CollectionResponseDeserializer
1074 )]
1075 async fn get_segment_by_timestamp_v2(
1076 &self,
1077 #[auth]
1078 auth_: &conjure_object::BearerToken,
1079 #[body(serializer = conjure_http::client::StdRequestSerializer)]
1080 request: &super::super::super::super::objects::scout::video::api::GetSegmentByTimestampV2Request,
1081 ) -> Result<
1082 Option<super::super::super::super::objects::scout::video::api::SegmentV2>,
1083 conjure_http::private::Error,
1084 >;
1085 #[endpoint(
1089 method = POST,
1090 path = "/video/v1/videos/{videoRid}/get-segment-at-or-after-timestamp",
1091 name = "getSegmentAtOrAfterTimestamp",
1092 accept = conjure_http::client::conjure::CollectionResponseDeserializer
1093 )]
1094 async fn get_segment_at_or_after_timestamp(
1095 &self,
1096 #[auth]
1097 auth_: &conjure_object::BearerToken,
1098 #[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
1099 video_rid: &conjure_object::ResourceIdentifier,
1100 #[body(serializer = conjure_http::client::StdRequestSerializer)]
1101 request: &super::super::super::super::objects::scout::video::api::GetSegmentAtOrAfterTimestampRequest,
1102 ) -> Result<
1103 Option<super::super::super::super::objects::scout::video::api::Segment>,
1104 conjure_http::private::Error,
1105 >;
1106 #[endpoint(
1110 method = POST,
1111 path = "/video/v2/videos/get-segment-at-or-after-timestamp",
1112 name = "getSegmentAtOrAfterTimestampV2",
1113 accept = conjure_http::client::conjure::CollectionResponseDeserializer
1114 )]
1115 async fn get_segment_at_or_after_timestamp_v2(
1116 &self,
1117 #[auth]
1118 auth_: &conjure_object::BearerToken,
1119 #[body(serializer = conjure_http::client::StdRequestSerializer)]
1120 request: &super::super::super::super::objects::scout::video::api::GetSegmentAtOrAfterTimestampV2Request,
1121 ) -> Result<
1122 Option<super::super::super::super::objects::scout::video::api::SegmentV2>,
1123 conjure_http::private::Error,
1124 >;
1125 #[endpoint(
1129 method = POST,
1130 path = "/video/v1/videos/{videoRid}/get-ranges-with-existing-segment-data",
1131 name = "getFileSummaries",
1132 accept = conjure_http::client::StdResponseDeserializer
1133 )]
1134 async fn get_file_summaries(
1135 &self,
1136 #[auth]
1137 auth_: &conjure_object::BearerToken,
1138 #[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
1139 video_rid: &conjure_object::ResourceIdentifier,
1140 #[body(serializer = conjure_http::client::StdRequestSerializer)]
1141 request: &super::super::super::super::objects::scout::video::api::GetFileSummariesRequest,
1142 ) -> Result<
1143 super::super::super::super::objects::scout::video::api::GetFileSummariesResponse,
1144 conjure_http::private::Error,
1145 >;
1146 #[endpoint(
1149 method = POST,
1150 path = "/video/v1/videos/{videoRid}/streaming/whip",
1151 name = "generateWhipStream",
1152 accept = conjure_http::client::StdResponseDeserializer
1153 )]
1154 async fn generate_whip_stream(
1155 &self,
1156 #[auth]
1157 auth_: &conjure_object::BearerToken,
1158 #[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
1159 video_rid: &conjure_object::ResourceIdentifier,
1160 ) -> Result<
1161 super::super::super::super::objects::scout::video::api::GenerateWhipStreamResponse,
1162 conjure_http::private::Error,
1163 >;
1164 #[endpoint(
1168 method = POST,
1169 path = "/video/v2/videos/streaming/whip",
1170 name = "generateWhipStreamV2",
1171 accept = conjure_http::client::StdResponseDeserializer
1172 )]
1173 async fn generate_whip_stream_v2(
1174 &self,
1175 #[auth]
1176 auth_: &conjure_object::BearerToken,
1177 #[body(serializer = conjure_http::client::StdRequestSerializer)]
1178 request: &super::super::super::super::objects::scout::video::api::GenerateWhipStreamV2Request,
1179 ) -> Result<
1180 super::super::super::super::objects::scout::video::api::GenerateWhipStreamResponse,
1181 conjure_http::private::Error,
1182 >;
1183 #[endpoint(
1187 method = POST,
1188 path = "/video/v1/videos/{videoRid}/streaming/whep",
1189 name = "generateWhepStream",
1190 accept = conjure_http::client::conjure::CollectionResponseDeserializer
1191 )]
1192 async fn generate_whep_stream(
1193 &self,
1194 #[auth]
1195 auth_: &conjure_object::BearerToken,
1196 #[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
1197 video_rid: &conjure_object::ResourceIdentifier,
1198 ) -> Result<
1199 Option<
1200 super::super::super::super::objects::scout::video::api::GenerateWhepStreamResponse,
1201 >,
1202 conjure_http::private::Error,
1203 >;
1204 #[endpoint(
1208 method = POST,
1209 path = "/video/v2/videos/streaming/whep",
1210 name = "generateWhepStreamV2",
1211 accept = conjure_http::client::conjure::CollectionResponseDeserializer
1212 )]
1213 async fn generate_whep_stream_v2(
1214 &self,
1215 #[auth]
1216 auth_: &conjure_object::BearerToken,
1217 #[body(serializer = conjure_http::client::StdRequestSerializer)]
1218 request: &super::super::super::super::objects::scout::video::api::GenerateWhepStreamV2Request,
1219 ) -> Result<
1220 Option<
1221 super::super::super::super::objects::scout::video::api::GenerateWhepStreamResponse,
1222 >,
1223 conjure_http::private::Error,
1224 >;
1225 #[endpoint(
1228 method = GET,
1229 path = "/video/v1/videos/{videoRid}/streaming/streams/{streamId}",
1230 name = "getStream",
1231 accept = conjure_http::client::conjure::CollectionResponseDeserializer
1232 )]
1233 async fn get_stream(
1234 &self,
1235 #[auth]
1236 auth_: &conjure_object::BearerToken,
1237 #[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
1238 video_rid: &conjure_object::ResourceIdentifier,
1239 #[path(name = "streamId", encoder = conjure_http::client::conjure::PlainEncoder)]
1240 stream_id: &str,
1241 ) -> Result<
1242 Option<super::super::super::super::objects::scout::video::api::VideoStream>,
1243 conjure_http::private::Error,
1244 >;
1245 #[endpoint(
1249 method = POST,
1250 path = "/video/v1/videos/{videoRid}/streaming/streams-in-bounds",
1251 name = "getStreamsInBounds",
1252 accept = conjure_http::client::StdResponseDeserializer
1253 )]
1254 async fn get_streams_in_bounds(
1255 &self,
1256 #[auth]
1257 auth_: &conjure_object::BearerToken,
1258 #[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
1259 video_rid: &conjure_object::ResourceIdentifier,
1260 #[body(serializer = conjure_http::client::StdRequestSerializer)]
1261 request: &super::super::super::super::objects::scout::video::api::GetStreamsInBoundsRequest,
1262 ) -> Result<
1263 super::super::super::super::objects::scout::video::api::GetStreamsInBoundsResponse,
1264 conjure_http::private::Error,
1265 >;
1266 #[endpoint(
1270 method = POST,
1271 path = "/video/v2/videos/streaming/streams-in-bounds",
1272 name = "getStreamsInBoundsV2",
1273 accept = conjure_http::client::StdResponseDeserializer
1274 )]
1275 async fn get_streams_in_bounds_v2(
1276 &self,
1277 #[auth]
1278 auth_: &conjure_object::BearerToken,
1279 #[body(serializer = conjure_http::client::StdRequestSerializer)]
1280 request: &super::super::super::super::objects::scout::video::api::GetStreamsInBoundsForChannelRequest,
1281 ) -> Result<
1282 super::super::super::super::objects::scout::video::api::GetStreamsInBoundsV2Response,
1283 conjure_http::private::Error,
1284 >;
1285 #[endpoint(
1291 method = POST,
1292 path = "/video/v2/videos/channel-dataset-files",
1293 name = "listVideoChannelDatasetFiles",
1294 accept = conjure_http::client::StdResponseDeserializer
1295 )]
1296 async fn list_video_channel_dataset_files(
1297 &self,
1298 #[auth]
1299 auth_: &conjure_object::BearerToken,
1300 #[body(serializer = conjure_http::client::StdRequestSerializer)]
1301 request: &super::super::super::super::objects::scout::video::api::ListVideoChannelDatasetFilesRequest,
1302 ) -> Result<
1303 super::super::super::super::objects::scout::video::api::ListVideoChannelDatasetFilesResponse,
1304 conjure_http::private::Error,
1305 >;
1306 #[endpoint(
1314 method = POST,
1315 path = "/video/v2/videos/channel-dataset-files/batch-update",
1316 name = "batchUpdateVideoChannelDatasetFiles",
1317 accept = conjure_http::client::StdResponseDeserializer
1318 )]
1319 async fn batch_update_video_channel_dataset_files(
1320 &self,
1321 #[auth]
1322 auth_: &conjure_object::BearerToken,
1323 #[body(serializer = conjure_http::client::StdRequestSerializer)]
1324 request: &super::super::super::super::objects::scout::video::api::BatchUpdateVideoChannelDatasetFilesRequest,
1325 ) -> Result<
1326 super::super::super::super::objects::scout::video::api::BatchUpdateVideoChannelDatasetFilesResponse,
1327 conjure_http::private::Error,
1328 >;
1329 #[endpoint(
1333 method = POST,
1334 path = "/video/v1/videos/{videoRid}/streaming/end",
1335 name = "endStream",
1336 accept = conjure_http::client::StdResponseDeserializer
1337 )]
1338 async fn end_stream(
1339 &self,
1340 #[auth]
1341 auth_: &conjure_object::BearerToken,
1342 #[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
1343 video_rid: &conjure_object::ResourceIdentifier,
1344 ) -> Result<
1345 super::super::super::super::objects::scout::video::api::EndStreamResponse,
1346 conjure_http::private::Error,
1347 >;
1348 #[endpoint(
1351 method = POST,
1352 path = "/video/v1/segment/upload",
1353 name = "uploadSegmentFromMediaMtx",
1354 accept = conjure_http::client::conjure::EmptyResponseDeserializer
1355 )]
1356 async fn upload_segment_from_media_mtx(
1357 &self,
1358 #[auth]
1359 auth_: &conjure_object::BearerToken,
1360 #[query(
1361 name = "streamPath",
1362 encoder = conjure_http::client::conjure::PlainEncoder
1363 )]
1364 stream_path: &str,
1365 #[query(
1366 name = "filePath",
1367 encoder = conjure_http::client::conjure::PlainEncoder
1368 )]
1369 file_path: &str,
1370 #[query(
1371 name = "duration",
1372 encoder = conjure_http::client::conjure::PlainEncoder
1373 )]
1374 duration: &str,
1375 #[query(
1376 name = "minTimestampSeconds",
1377 encoder = conjure_http::client::conjure::PlainEncoder
1378 )]
1379 min_timestamp_seconds: conjure_object::SafeLong,
1380 #[query(
1381 name = "minTimestampNanos",
1382 encoder = conjure_http::client::conjure::PlainEncoder
1383 )]
1384 min_timestamp_nanos: conjure_object::SafeLong,
1385 #[header(
1386 name = "Content-Length",
1387 encoder = conjure_http::client::conjure::PlainEncoder
1388 )]
1389 content_length: conjure_object::SafeLong,
1390 #[body(serializer = conjure_http::client::conjure::BinaryRequestSerializer)]
1391 body: impl conjure_http::client::AsyncWriteBody<O> + Sync + Send,
1392 ) -> Result<(), conjure_http::private::Error>;
1393}
1394#[conjure_http::conjure_client(name = "VideoService", local)]
1396pub trait LocalAsyncVideoService<
1397 #[request_writer]
1398 O,
1399 #[response_body]
1400 I: conjure_http::private::Stream<
1401 Item = Result<conjure_http::private::Bytes, conjure_http::private::Error>,
1402 >,
1403> {
1404 #[endpoint(
1406 method = GET,
1407 path = "/video/v1/videos/{videoRid}",
1408 name = "get",
1409 accept = conjure_http::client::StdResponseDeserializer
1410 )]
1411 async fn get(
1412 &self,
1413 #[auth]
1414 auth_: &conjure_object::BearerToken,
1415 #[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
1416 video_rid: &conjure_object::ResourceIdentifier,
1417 ) -> Result<
1418 super::super::super::super::objects::scout::video::api::Video,
1419 conjure_http::private::Error,
1420 >;
1421 #[endpoint(
1423 method = POST,
1424 path = "/video/v1/videos/batchGet",
1425 name = "batchGet",
1426 accept = conjure_http::client::StdResponseDeserializer
1427 )]
1428 async fn batch_get(
1429 &self,
1430 #[auth]
1431 auth_: &conjure_object::BearerToken,
1432 #[body(serializer = conjure_http::client::StdRequestSerializer)]
1433 request: &super::super::super::super::objects::scout::video::api::GetVideosRequest,
1434 ) -> Result<
1435 super::super::super::super::objects::scout::video::api::GetVideosResponse,
1436 conjure_http::private::Error,
1437 >;
1438 #[endpoint(
1440 method = POST,
1441 path = "/video/v1/videos/search",
1442 name = "search",
1443 accept = conjure_http::client::StdResponseDeserializer
1444 )]
1445 async fn search(
1446 &self,
1447 #[auth]
1448 auth_: &conjure_object::BearerToken,
1449 #[body(serializer = conjure_http::client::StdRequestSerializer)]
1450 request: &super::super::super::super::objects::scout::video::api::SearchVideosRequest,
1451 ) -> Result<
1452 super::super::super::super::objects::scout::video::api::SearchVideosResponse,
1453 conjure_http::private::Error,
1454 >;
1455 #[endpoint(
1457 method = POST,
1458 path = "/video/v1/videos",
1459 name = "create",
1460 accept = conjure_http::client::StdResponseDeserializer
1461 )]
1462 async fn create(
1463 &self,
1464 #[auth]
1465 auth_: &conjure_object::BearerToken,
1466 #[body(serializer = conjure_http::client::StdRequestSerializer)]
1467 request: &super::super::super::super::objects::scout::video::api::CreateVideoRequest,
1468 ) -> Result<
1469 super::super::super::super::objects::scout::video::api::Video,
1470 conjure_http::private::Error,
1471 >;
1472 #[endpoint(
1474 method = PUT,
1475 path = "/video/v1/videos/{videoRid}",
1476 name = "updateMetadata",
1477 accept = conjure_http::client::StdResponseDeserializer
1478 )]
1479 async fn update_metadata(
1480 &self,
1481 #[auth]
1482 auth_: &conjure_object::BearerToken,
1483 #[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
1484 video_rid: &conjure_object::ResourceIdentifier,
1485 #[body(serializer = conjure_http::client::StdRequestSerializer)]
1486 request: &super::super::super::super::objects::scout::video::api::UpdateVideoMetadataRequest,
1487 ) -> Result<
1488 super::super::super::super::objects::scout::video::api::Video,
1489 conjure_http::private::Error,
1490 >;
1491 #[endpoint(
1492 method = PUT,
1493 path = "/video/v1/videos/{videoRid}/ingest-status",
1494 name = "updateIngestStatus",
1495 accept = conjure_http::client::conjure::EmptyResponseDeserializer
1496 )]
1497 async fn update_ingest_status(
1498 &self,
1499 #[auth]
1500 auth_: &conjure_object::BearerToken,
1501 #[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
1502 video_rid: &conjure_object::ResourceIdentifier,
1503 #[body(serializer = conjure_http::client::StdRequestSerializer)]
1504 request: &super::super::super::super::objects::scout::video::api::UpdateIngestStatus,
1505 ) -> Result<(), conjure_http::private::Error>;
1506 #[endpoint(
1507 method = GET,
1508 path = "/video/v1/videos/{videoRid}/ingest-status",
1509 name = "getIngestStatus",
1510 accept = conjure_http::client::StdResponseDeserializer
1511 )]
1512 async fn get_ingest_status(
1513 &self,
1514 #[auth]
1515 auth_: &conjure_object::BearerToken,
1516 #[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
1517 video_rid: &conjure_object::ResourceIdentifier,
1518 ) -> Result<
1519 super::super::super::super::objects::scout::video::api::DetailedIngestStatus,
1520 conjure_http::private::Error,
1521 >;
1522 #[endpoint(
1523 method = POST,
1524 path = "/video/v1/videos/batch-get-ingest-status",
1525 name = "batchGetIngestStatus",
1526 accept = conjure_http::client::conjure::CollectionResponseDeserializer
1527 )]
1528 async fn batch_get_ingest_status(
1529 &self,
1530 #[auth]
1531 auth_: &conjure_object::BearerToken,
1532 #[body(serializer = conjure_http::client::StdRequestSerializer)]
1533 video_rids: &std::collections::BTreeSet<conjure_object::ResourceIdentifier>,
1534 ) -> Result<
1535 std::collections::BTreeMap<
1536 conjure_object::ResourceIdentifier,
1537 super::super::super::super::objects::scout::video::api::DetailedIngestStatus,
1538 >,
1539 conjure_http::private::Error,
1540 >;
1541 #[endpoint(
1542 method = POST,
1543 path = "/video/v1/videos/enriched-ingest-status",
1544 name = "getEnrichedIngestStatus",
1545 accept = conjure_http::client::conjure::CollectionResponseDeserializer
1546 )]
1547 async fn get_enriched_ingest_status(
1548 &self,
1549 #[auth]
1550 auth_: &conjure_object::BearerToken,
1551 #[body(serializer = conjure_http::client::StdRequestSerializer)]
1552 request: &super::super::super::super::objects::scout::video::api::GetEnrichedVideoIngestStatusRequest,
1553 ) -> Result<
1554 Option<
1555 super::super::super::super::objects::scout::video::api::EnrichedVideoIngestStatus,
1556 >,
1557 conjure_http::private::Error,
1558 >;
1559 #[endpoint(
1562 method = PUT,
1563 path = "/video/v1/videos/{videoRid}/archive",
1564 name = "archive",
1565 accept = conjure_http::client::conjure::EmptyResponseDeserializer
1566 )]
1567 async fn archive(
1568 &self,
1569 #[auth]
1570 auth_: &conjure_object::BearerToken,
1571 #[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
1572 video_rid: &conjure_object::ResourceIdentifier,
1573 ) -> Result<(), conjure_http::private::Error>;
1574 #[endpoint(
1576 method = PUT,
1577 path = "/video/v1/videos/{videoRid}/unarchive",
1578 name = "unarchive",
1579 accept = conjure_http::client::conjure::EmptyResponseDeserializer
1580 )]
1581 async fn unarchive(
1582 &self,
1583 #[auth]
1584 auth_: &conjure_object::BearerToken,
1585 #[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
1586 video_rid: &conjure_object::ResourceIdentifier,
1587 ) -> Result<(), conjure_http::private::Error>;
1588 #[endpoint(
1596 method = GET,
1597 path = "/video/v1/videos/{videoRid}/playlist",
1598 name = "getPlaylist",
1599 accept = conjure_http::client::conjure::BinaryResponseDeserializer
1600 )]
1601 async fn get_playlist(
1602 &self,
1603 #[auth]
1604 auth_: &conjure_object::BearerToken,
1605 #[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
1606 video_rid: &conjure_object::ResourceIdentifier,
1607 #[query(
1608 name = "start",
1609 encoder = conjure_http::client::conjure::PlainSeqEncoder
1610 )]
1611 start: Option<&str>,
1612 #[query(name = "end", encoder = conjure_http::client::conjure::PlainSeqEncoder)]
1613 end: Option<&str>,
1614 ) -> Result<I, conjure_http::private::Error>;
1615 #[endpoint(
1618 method = GET,
1619 path = "/video/v1/videos/{videoRid}/segment-summaries",
1620 name = "getSegmentSummaries",
1621 accept = conjure_http::client::conjure::CollectionResponseDeserializer
1622 )]
1623 async fn get_segment_summaries(
1624 &self,
1625 #[auth]
1626 auth_: &conjure_object::BearerToken,
1627 #[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
1628 video_rid: &conjure_object::ResourceIdentifier,
1629 ) -> Result<
1630 Vec<super::super::super::super::objects::scout::video::api::SegmentSummary>,
1631 conjure_http::private::Error,
1632 >;
1633 #[endpoint(
1638 method = POST,
1639 path = "/video/v1/videos/{videoRid}/playlist-in-bounds",
1640 name = "getPlaylistInBounds",
1641 accept = conjure_http::client::conjure::BinaryResponseDeserializer
1642 )]
1643 async fn get_playlist_in_bounds(
1644 &self,
1645 #[auth]
1646 auth_: &conjure_object::BearerToken,
1647 #[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
1648 video_rid: &conjure_object::ResourceIdentifier,
1649 #[body(serializer = conjure_http::client::StdRequestSerializer)]
1650 request: &super::super::super::super::objects::scout::video::api::GetPlaylistInBoundsRequest,
1651 ) -> Result<I, conjure_http::private::Error>;
1652 #[endpoint(
1654 method = POST,
1655 path = "/video/v2/videos/playlist-in-bounds",
1656 name = "getPlaylistInBoundsV2",
1657 accept = conjure_http::client::conjure::BinaryResponseDeserializer
1658 )]
1659 async fn get_playlist_in_bounds_v2(
1660 &self,
1661 #[auth]
1662 auth_: &conjure_object::BearerToken,
1663 #[body(serializer = conjure_http::client::StdRequestSerializer)]
1664 request: &super::super::super::super::objects::scout::video::api::GetPlaylistInBoundsForChannelRequest,
1665 ) -> Result<I, conjure_http::private::Error>;
1666 #[endpoint(
1671 method = GET,
1672 path = "/video/v2/videos/playlist",
1673 name = "getPlaylistV2",
1674 accept = conjure_http::client::conjure::BinaryResponseDeserializer
1675 )]
1676 async fn get_playlist_v2(
1677 &self,
1678 #[auth]
1679 auth_: &conjure_object::BearerToken,
1680 #[query(
1681 name = "dataSourceRid",
1682 encoder = conjure_http::client::conjure::PlainSeqEncoder
1683 )]
1684 data_source_rid: Option<&conjure_object::ResourceIdentifier>,
1685 #[query(
1686 name = "assetRid",
1687 encoder = conjure_http::client::conjure::PlainSeqEncoder
1688 )]
1689 asset_rid: Option<
1690 &super::super::super::super::objects::scout::rids::api::AssetRid,
1691 >,
1692 #[query(
1693 name = "dataScopeName",
1694 encoder = conjure_http::client::conjure::PlainSeqEncoder
1695 )]
1696 data_scope_name: Option<&str>,
1697 #[query(name = "channel", encoder = conjure_http::client::conjure::PlainEncoder)]
1698 channel: &str,
1699 #[query(name = "tags", encoder = conjure_http::client::conjure::PlainSeqEncoder)]
1700 tags: Option<&str>,
1701 #[query(name = "start", encoder = conjure_http::client::conjure::PlainEncoder)]
1702 start: &str,
1703 #[query(name = "end", encoder = conjure_http::client::conjure::PlainEncoder)]
1704 end: &str,
1705 ) -> Result<I, conjure_http::private::Error>;
1706 #[endpoint(
1709 method = POST,
1710 path = "/video/v1/videos/{videoRid}/segment-summaries-in-bounds",
1711 name = "getSegmentSummariesInBounds",
1712 accept = conjure_http::client::conjure::CollectionResponseDeserializer
1713 )]
1714 async fn get_segment_summaries_in_bounds(
1715 &self,
1716 #[auth]
1717 auth_: &conjure_object::BearerToken,
1718 #[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
1719 video_rid: &conjure_object::ResourceIdentifier,
1720 #[body(serializer = conjure_http::client::StdRequestSerializer)]
1721 request: &super::super::super::super::objects::scout::video::api::GetSegmentSummariesInBoundsRequest,
1722 ) -> Result<
1723 Vec<super::super::super::super::objects::scout::video::api::SegmentSummary>,
1724 conjure_http::private::Error,
1725 >;
1726 #[endpoint(
1729 method = POST,
1730 path = "/video/v2/videos/segment-summaries-in-bounds",
1731 name = "getSegmentSummariesInBoundsV2",
1732 accept = conjure_http::client::conjure::CollectionResponseDeserializer
1733 )]
1734 async fn get_segment_summaries_in_bounds_v2(
1735 &self,
1736 #[auth]
1737 auth_: &conjure_object::BearerToken,
1738 #[body(serializer = conjure_http::client::StdRequestSerializer)]
1739 request: &super::super::super::super::objects::scout::video::api::GetSegmentSummariesInBoundsForChannelRequest,
1740 ) -> Result<
1741 Vec<super::super::super::super::objects::scout::video::api::SegmentSummaryV2>,
1742 conjure_http::private::Error,
1743 >;
1744 #[endpoint(
1747 method = POST,
1748 path = "/video/v2/videos/segment-metadata",
1749 name = "getSegmentMetadataV2",
1750 accept = conjure_http::client::conjure::CollectionResponseDeserializer
1751 )]
1752 async fn get_segment_metadata_v2(
1753 &self,
1754 #[auth]
1755 auth_: &conjure_object::BearerToken,
1756 #[body(serializer = conjure_http::client::StdRequestSerializer)]
1757 request: &super::super::super::super::objects::scout::video::api::GetSegmentMetadataForChannelRequest,
1758 ) -> Result<
1759 Option<
1760 super::super::super::super::objects::scout::video::api::VideoChannelSegmentsMetadata,
1761 >,
1762 conjure_http::private::Error,
1763 >;
1764 #[endpoint(
1766 method = POST,
1767 path = "/video/v2/videos/get-segment-by-timestamp",
1768 name = "getSegmentByTimestampV2",
1769 accept = conjure_http::client::conjure::CollectionResponseDeserializer
1770 )]
1771 async fn get_segment_by_timestamp_v2(
1772 &self,
1773 #[auth]
1774 auth_: &conjure_object::BearerToken,
1775 #[body(serializer = conjure_http::client::StdRequestSerializer)]
1776 request: &super::super::super::super::objects::scout::video::api::GetSegmentByTimestampV2Request,
1777 ) -> Result<
1778 Option<super::super::super::super::objects::scout::video::api::SegmentV2>,
1779 conjure_http::private::Error,
1780 >;
1781 #[endpoint(
1785 method = POST,
1786 path = "/video/v1/videos/{videoRid}/get-segment-at-or-after-timestamp",
1787 name = "getSegmentAtOrAfterTimestamp",
1788 accept = conjure_http::client::conjure::CollectionResponseDeserializer
1789 )]
1790 async fn get_segment_at_or_after_timestamp(
1791 &self,
1792 #[auth]
1793 auth_: &conjure_object::BearerToken,
1794 #[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
1795 video_rid: &conjure_object::ResourceIdentifier,
1796 #[body(serializer = conjure_http::client::StdRequestSerializer)]
1797 request: &super::super::super::super::objects::scout::video::api::GetSegmentAtOrAfterTimestampRequest,
1798 ) -> Result<
1799 Option<super::super::super::super::objects::scout::video::api::Segment>,
1800 conjure_http::private::Error,
1801 >;
1802 #[endpoint(
1806 method = POST,
1807 path = "/video/v2/videos/get-segment-at-or-after-timestamp",
1808 name = "getSegmentAtOrAfterTimestampV2",
1809 accept = conjure_http::client::conjure::CollectionResponseDeserializer
1810 )]
1811 async fn get_segment_at_or_after_timestamp_v2(
1812 &self,
1813 #[auth]
1814 auth_: &conjure_object::BearerToken,
1815 #[body(serializer = conjure_http::client::StdRequestSerializer)]
1816 request: &super::super::super::super::objects::scout::video::api::GetSegmentAtOrAfterTimestampV2Request,
1817 ) -> Result<
1818 Option<super::super::super::super::objects::scout::video::api::SegmentV2>,
1819 conjure_http::private::Error,
1820 >;
1821 #[endpoint(
1825 method = POST,
1826 path = "/video/v1/videos/{videoRid}/get-ranges-with-existing-segment-data",
1827 name = "getFileSummaries",
1828 accept = conjure_http::client::StdResponseDeserializer
1829 )]
1830 async fn get_file_summaries(
1831 &self,
1832 #[auth]
1833 auth_: &conjure_object::BearerToken,
1834 #[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
1835 video_rid: &conjure_object::ResourceIdentifier,
1836 #[body(serializer = conjure_http::client::StdRequestSerializer)]
1837 request: &super::super::super::super::objects::scout::video::api::GetFileSummariesRequest,
1838 ) -> Result<
1839 super::super::super::super::objects::scout::video::api::GetFileSummariesResponse,
1840 conjure_http::private::Error,
1841 >;
1842 #[endpoint(
1845 method = POST,
1846 path = "/video/v1/videos/{videoRid}/streaming/whip",
1847 name = "generateWhipStream",
1848 accept = conjure_http::client::StdResponseDeserializer
1849 )]
1850 async fn generate_whip_stream(
1851 &self,
1852 #[auth]
1853 auth_: &conjure_object::BearerToken,
1854 #[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
1855 video_rid: &conjure_object::ResourceIdentifier,
1856 ) -> Result<
1857 super::super::super::super::objects::scout::video::api::GenerateWhipStreamResponse,
1858 conjure_http::private::Error,
1859 >;
1860 #[endpoint(
1864 method = POST,
1865 path = "/video/v2/videos/streaming/whip",
1866 name = "generateWhipStreamV2",
1867 accept = conjure_http::client::StdResponseDeserializer
1868 )]
1869 async fn generate_whip_stream_v2(
1870 &self,
1871 #[auth]
1872 auth_: &conjure_object::BearerToken,
1873 #[body(serializer = conjure_http::client::StdRequestSerializer)]
1874 request: &super::super::super::super::objects::scout::video::api::GenerateWhipStreamV2Request,
1875 ) -> Result<
1876 super::super::super::super::objects::scout::video::api::GenerateWhipStreamResponse,
1877 conjure_http::private::Error,
1878 >;
1879 #[endpoint(
1883 method = POST,
1884 path = "/video/v1/videos/{videoRid}/streaming/whep",
1885 name = "generateWhepStream",
1886 accept = conjure_http::client::conjure::CollectionResponseDeserializer
1887 )]
1888 async fn generate_whep_stream(
1889 &self,
1890 #[auth]
1891 auth_: &conjure_object::BearerToken,
1892 #[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
1893 video_rid: &conjure_object::ResourceIdentifier,
1894 ) -> Result<
1895 Option<
1896 super::super::super::super::objects::scout::video::api::GenerateWhepStreamResponse,
1897 >,
1898 conjure_http::private::Error,
1899 >;
1900 #[endpoint(
1904 method = POST,
1905 path = "/video/v2/videos/streaming/whep",
1906 name = "generateWhepStreamV2",
1907 accept = conjure_http::client::conjure::CollectionResponseDeserializer
1908 )]
1909 async fn generate_whep_stream_v2(
1910 &self,
1911 #[auth]
1912 auth_: &conjure_object::BearerToken,
1913 #[body(serializer = conjure_http::client::StdRequestSerializer)]
1914 request: &super::super::super::super::objects::scout::video::api::GenerateWhepStreamV2Request,
1915 ) -> Result<
1916 Option<
1917 super::super::super::super::objects::scout::video::api::GenerateWhepStreamResponse,
1918 >,
1919 conjure_http::private::Error,
1920 >;
1921 #[endpoint(
1924 method = GET,
1925 path = "/video/v1/videos/{videoRid}/streaming/streams/{streamId}",
1926 name = "getStream",
1927 accept = conjure_http::client::conjure::CollectionResponseDeserializer
1928 )]
1929 async fn get_stream(
1930 &self,
1931 #[auth]
1932 auth_: &conjure_object::BearerToken,
1933 #[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
1934 video_rid: &conjure_object::ResourceIdentifier,
1935 #[path(name = "streamId", encoder = conjure_http::client::conjure::PlainEncoder)]
1936 stream_id: &str,
1937 ) -> Result<
1938 Option<super::super::super::super::objects::scout::video::api::VideoStream>,
1939 conjure_http::private::Error,
1940 >;
1941 #[endpoint(
1945 method = POST,
1946 path = "/video/v1/videos/{videoRid}/streaming/streams-in-bounds",
1947 name = "getStreamsInBounds",
1948 accept = conjure_http::client::StdResponseDeserializer
1949 )]
1950 async fn get_streams_in_bounds(
1951 &self,
1952 #[auth]
1953 auth_: &conjure_object::BearerToken,
1954 #[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
1955 video_rid: &conjure_object::ResourceIdentifier,
1956 #[body(serializer = conjure_http::client::StdRequestSerializer)]
1957 request: &super::super::super::super::objects::scout::video::api::GetStreamsInBoundsRequest,
1958 ) -> Result<
1959 super::super::super::super::objects::scout::video::api::GetStreamsInBoundsResponse,
1960 conjure_http::private::Error,
1961 >;
1962 #[endpoint(
1966 method = POST,
1967 path = "/video/v2/videos/streaming/streams-in-bounds",
1968 name = "getStreamsInBoundsV2",
1969 accept = conjure_http::client::StdResponseDeserializer
1970 )]
1971 async fn get_streams_in_bounds_v2(
1972 &self,
1973 #[auth]
1974 auth_: &conjure_object::BearerToken,
1975 #[body(serializer = conjure_http::client::StdRequestSerializer)]
1976 request: &super::super::super::super::objects::scout::video::api::GetStreamsInBoundsForChannelRequest,
1977 ) -> Result<
1978 super::super::super::super::objects::scout::video::api::GetStreamsInBoundsV2Response,
1979 conjure_http::private::Error,
1980 >;
1981 #[endpoint(
1987 method = POST,
1988 path = "/video/v2/videos/channel-dataset-files",
1989 name = "listVideoChannelDatasetFiles",
1990 accept = conjure_http::client::StdResponseDeserializer
1991 )]
1992 async fn list_video_channel_dataset_files(
1993 &self,
1994 #[auth]
1995 auth_: &conjure_object::BearerToken,
1996 #[body(serializer = conjure_http::client::StdRequestSerializer)]
1997 request: &super::super::super::super::objects::scout::video::api::ListVideoChannelDatasetFilesRequest,
1998 ) -> Result<
1999 super::super::super::super::objects::scout::video::api::ListVideoChannelDatasetFilesResponse,
2000 conjure_http::private::Error,
2001 >;
2002 #[endpoint(
2010 method = POST,
2011 path = "/video/v2/videos/channel-dataset-files/batch-update",
2012 name = "batchUpdateVideoChannelDatasetFiles",
2013 accept = conjure_http::client::StdResponseDeserializer
2014 )]
2015 async fn batch_update_video_channel_dataset_files(
2016 &self,
2017 #[auth]
2018 auth_: &conjure_object::BearerToken,
2019 #[body(serializer = conjure_http::client::StdRequestSerializer)]
2020 request: &super::super::super::super::objects::scout::video::api::BatchUpdateVideoChannelDatasetFilesRequest,
2021 ) -> Result<
2022 super::super::super::super::objects::scout::video::api::BatchUpdateVideoChannelDatasetFilesResponse,
2023 conjure_http::private::Error,
2024 >;
2025 #[endpoint(
2029 method = POST,
2030 path = "/video/v1/videos/{videoRid}/streaming/end",
2031 name = "endStream",
2032 accept = conjure_http::client::StdResponseDeserializer
2033 )]
2034 async fn end_stream(
2035 &self,
2036 #[auth]
2037 auth_: &conjure_object::BearerToken,
2038 #[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
2039 video_rid: &conjure_object::ResourceIdentifier,
2040 ) -> Result<
2041 super::super::super::super::objects::scout::video::api::EndStreamResponse,
2042 conjure_http::private::Error,
2043 >;
2044 #[endpoint(
2047 method = POST,
2048 path = "/video/v1/segment/upload",
2049 name = "uploadSegmentFromMediaMtx",
2050 accept = conjure_http::client::conjure::EmptyResponseDeserializer
2051 )]
2052 async fn upload_segment_from_media_mtx(
2053 &self,
2054 #[auth]
2055 auth_: &conjure_object::BearerToken,
2056 #[query(
2057 name = "streamPath",
2058 encoder = conjure_http::client::conjure::PlainEncoder
2059 )]
2060 stream_path: &str,
2061 #[query(
2062 name = "filePath",
2063 encoder = conjure_http::client::conjure::PlainEncoder
2064 )]
2065 file_path: &str,
2066 #[query(
2067 name = "duration",
2068 encoder = conjure_http::client::conjure::PlainEncoder
2069 )]
2070 duration: &str,
2071 #[query(
2072 name = "minTimestampSeconds",
2073 encoder = conjure_http::client::conjure::PlainEncoder
2074 )]
2075 min_timestamp_seconds: conjure_object::SafeLong,
2076 #[query(
2077 name = "minTimestampNanos",
2078 encoder = conjure_http::client::conjure::PlainEncoder
2079 )]
2080 min_timestamp_nanos: conjure_object::SafeLong,
2081 #[header(
2082 name = "Content-Length",
2083 encoder = conjure_http::client::conjure::PlainEncoder
2084 )]
2085 content_length: conjure_object::SafeLong,
2086 #[body(serializer = conjure_http::client::conjure::BinaryRequestSerializer)]
2087 body: impl conjure_http::client::LocalAsyncWriteBody<O>,
2088 ) -> Result<(), conjure_http::private::Error>;
2089}