use conjure_http::endpoint;
#[conjure_http::conjure_client(name = "VideoService")]
pub trait VideoService<
#[request_writer]
O,
#[response_body]
I: Iterator<
Item = Result<conjure_http::private::Bytes, conjure_http::private::Error>,
>,
> {
#[endpoint(
method = GET,
path = "/video/v1/videos/{videoRid}",
name = "get",
accept = conjure_http::client::StdResponseDeserializer
)]
fn get(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
video_rid: &super::super::super::super::objects::api::rids::VideoRid,
) -> Result<
super::super::super::super::objects::scout::video::api::Video,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v1/videos/batchGet",
name = "batchGet",
accept = conjure_http::client::StdResponseDeserializer
)]
fn batch_get(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
request: &super::super::super::super::objects::scout::video::api::GetVideosRequest,
) -> Result<
super::super::super::super::objects::scout::video::api::GetVideosResponse,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v1/videos/search",
name = "search",
accept = conjure_http::client::StdResponseDeserializer
)]
fn search(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
request: &super::super::super::super::objects::scout::video::api::SearchVideosRequest,
) -> Result<
super::super::super::super::objects::scout::video::api::SearchVideosResponse,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v1/videos",
name = "create",
accept = conjure_http::client::StdResponseDeserializer
)]
fn create(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
request: &super::super::super::super::objects::scout::video::api::CreateVideoRequest,
) -> Result<
super::super::super::super::objects::scout::video::api::Video,
conjure_http::private::Error,
>;
#[endpoint(
method = PUT,
path = "/video/v1/videos/{videoRid}",
name = "updateMetadata",
accept = conjure_http::client::StdResponseDeserializer
)]
fn update_metadata(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
video_rid: &super::super::super::super::objects::api::rids::VideoRid,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
request: &super::super::super::super::objects::scout::video::api::UpdateVideoMetadataRequest,
) -> Result<
super::super::super::super::objects::scout::video::api::Video,
conjure_http::private::Error,
>;
#[endpoint(
method = PUT,
path = "/video/v1/videos/{videoRid}/ingest-status",
name = "updateIngestStatus",
accept = conjure_http::client::conjure::EmptyResponseDeserializer
)]
fn update_ingest_status(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
video_rid: &super::super::super::super::objects::api::rids::VideoRid,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
request: &super::super::super::super::objects::scout::video::api::UpdateIngestStatus,
) -> Result<(), conjure_http::private::Error>;
#[endpoint(
method = GET,
path = "/video/v1/videos/{videoRid}/ingest-status",
name = "getIngestStatus",
accept = conjure_http::client::StdResponseDeserializer
)]
fn get_ingest_status(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
video_rid: &super::super::super::super::objects::api::rids::VideoRid,
) -> Result<
super::super::super::super::objects::scout::video::api::DetailedIngestStatus,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v1/videos/batch-get-ingest-status",
name = "batchGetIngestStatus",
accept = conjure_http::client::conjure::CollectionResponseDeserializer
)]
fn batch_get_ingest_status(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
video_rids: &std::collections::BTreeSet<
super::super::super::super::objects::api::rids::VideoRid,
>,
) -> Result<
std::collections::BTreeMap<
super::super::super::super::objects::api::rids::VideoRid,
super::super::super::super::objects::scout::video::api::DetailedIngestStatus,
>,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v1/videos/enriched-ingest-status",
name = "getEnrichedIngestStatus",
accept = conjure_http::client::conjure::CollectionResponseDeserializer
)]
fn get_enriched_ingest_status(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
request: &super::super::super::super::objects::scout::video::api::GetEnrichedVideoIngestStatusRequest,
) -> Result<
Option<
super::super::super::super::objects::scout::video::api::EnrichedVideoIngestStatus,
>,
conjure_http::private::Error,
>;
#[endpoint(
method = PUT,
path = "/video/v1/videos/{videoRid}/archive",
name = "archive",
accept = conjure_http::client::conjure::EmptyResponseDeserializer
)]
fn archive(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
video_rid: &super::super::super::super::objects::api::rids::VideoRid,
) -> Result<(), conjure_http::private::Error>;
#[endpoint(
method = PUT,
path = "/video/v1/videos/{videoRid}/unarchive",
name = "unarchive",
accept = conjure_http::client::conjure::EmptyResponseDeserializer
)]
fn unarchive(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
video_rid: &super::super::super::super::objects::api::rids::VideoRid,
) -> Result<(), conjure_http::private::Error>;
#[endpoint(
method = GET,
path = "/video/v1/videos/{videoRid}/playlist",
name = "getPlaylist",
accept = conjure_http::client::conjure::BinaryResponseDeserializer
)]
fn get_playlist(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
video_rid: &super::super::super::super::objects::api::rids::VideoRid,
#[query(
name = "start",
encoder = conjure_http::client::conjure::PlainSeqEncoder
)]
start: Option<&str>,
#[query(name = "end", encoder = conjure_http::client::conjure::PlainSeqEncoder)]
end: Option<&str>,
) -> Result<I, conjure_http::private::Error>;
#[endpoint(
method = GET,
path = "/video/v1/videos/{videoRid}/segment-summaries",
name = "getSegmentSummaries",
accept = conjure_http::client::conjure::CollectionResponseDeserializer
)]
fn get_segment_summaries(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
video_rid: &super::super::super::super::objects::api::rids::VideoRid,
) -> Result<
Vec<super::super::super::super::objects::scout::video::api::SegmentSummary>,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v1/videos/{videoRid}/playlist-in-bounds",
name = "getPlaylistInBounds",
accept = conjure_http::client::conjure::BinaryResponseDeserializer
)]
fn get_playlist_in_bounds(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
video_rid: &super::super::super::super::objects::api::rids::VideoRid,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
request: &super::super::super::super::objects::scout::video::api::GetPlaylistInBoundsRequest,
) -> Result<I, conjure_http::private::Error>;
#[endpoint(
method = POST,
path = "/video/v2/videos/playlist-in-bounds",
name = "getPlaylistInBoundsV2",
accept = conjure_http::client::conjure::BinaryResponseDeserializer
)]
fn get_playlist_in_bounds_v2(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
request: &super::super::super::super::objects::scout::video::api::GetPlaylistInBoundsForChannelRequest,
) -> Result<I, conjure_http::private::Error>;
#[endpoint(
method = GET,
path = "/video/v2/videos/playlist",
name = "getPlaylistV2",
accept = conjure_http::client::conjure::BinaryResponseDeserializer
)]
fn get_playlist_v2(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[query(
name = "dataSourceRid",
encoder = conjure_http::client::conjure::PlainSeqEncoder
)]
data_source_rid: Option<
&super::super::super::super::objects::api::rids::DataSourceRid,
>,
#[query(
name = "assetRid",
encoder = conjure_http::client::conjure::PlainSeqEncoder
)]
asset_rid: Option<
&super::super::super::super::objects::scout::rids::api::AssetRid,
>,
#[query(
name = "dataScopeName",
encoder = conjure_http::client::conjure::PlainSeqEncoder
)]
data_scope_name: Option<&str>,
#[query(name = "channel", encoder = conjure_http::client::conjure::PlainEncoder)]
channel: &str,
#[query(name = "tags", encoder = conjure_http::client::conjure::PlainSeqEncoder)]
tags: Option<&str>,
#[query(name = "start", encoder = conjure_http::client::conjure::PlainEncoder)]
start: &str,
#[query(name = "end", encoder = conjure_http::client::conjure::PlainEncoder)]
end: &str,
) -> Result<I, conjure_http::private::Error>;
#[endpoint(
method = POST,
path = "/video/v1/videos/{videoRid}/segment-summaries-in-bounds",
name = "getSegmentSummariesInBounds",
accept = conjure_http::client::conjure::CollectionResponseDeserializer
)]
fn get_segment_summaries_in_bounds(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
video_rid: &super::super::super::super::objects::api::rids::VideoRid,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
request: &super::super::super::super::objects::scout::video::api::GetSegmentSummariesInBoundsRequest,
) -> Result<
Vec<super::super::super::super::objects::scout::video::api::SegmentSummary>,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v2/videos/segment-summaries-in-bounds",
name = "getSegmentSummariesInBoundsV2",
accept = conjure_http::client::conjure::CollectionResponseDeserializer
)]
fn get_segment_summaries_in_bounds_v2(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
request: &super::super::super::super::objects::scout::video::api::GetSegmentSummariesInBoundsForChannelRequest,
) -> Result<
Vec<super::super::super::super::objects::scout::video::api::SegmentSummaryV2>,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v2/videos/segment-metadata",
name = "getSegmentMetadataV2",
accept = conjure_http::client::conjure::CollectionResponseDeserializer
)]
fn get_segment_metadata_v2(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
request: &super::super::super::super::objects::scout::video::api::GetSegmentMetadataForChannelRequest,
) -> Result<
Option<
super::super::super::super::objects::scout::video::api::VideoChannelSegmentsMetadata,
>,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v2/videos/get-segment-by-timestamp",
name = "getSegmentByTimestampV2",
accept = conjure_http::client::conjure::CollectionResponseDeserializer
)]
fn get_segment_by_timestamp_v2(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
request: &super::super::super::super::objects::scout::video::api::GetSegmentByTimestampV2Request,
) -> Result<
Option<super::super::super::super::objects::scout::video::api::SegmentV2>,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v1/videos/{videoRid}/get-segment-at-or-after-timestamp",
name = "getSegmentAtOrAfterTimestamp",
accept = conjure_http::client::conjure::CollectionResponseDeserializer
)]
fn get_segment_at_or_after_timestamp(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
video_rid: &super::super::super::super::objects::api::rids::VideoRid,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
request: &super::super::super::super::objects::scout::video::api::GetSegmentAtOrAfterTimestampRequest,
) -> Result<
Option<super::super::super::super::objects::scout::video::api::Segment>,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v2/videos/get-segment-at-or-after-timestamp",
name = "getSegmentAtOrAfterTimestampV2",
accept = conjure_http::client::conjure::CollectionResponseDeserializer
)]
fn get_segment_at_or_after_timestamp_v2(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
request: &super::super::super::super::objects::scout::video::api::GetSegmentAtOrAfterTimestampV2Request,
) -> Result<
Option<super::super::super::super::objects::scout::video::api::SegmentV2>,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v1/videos/{videoRid}/get-ranges-with-existing-segment-data",
name = "getFileSummaries",
accept = conjure_http::client::StdResponseDeserializer
)]
fn get_file_summaries(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
video_rid: &super::super::super::super::objects::api::rids::VideoRid,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
request: &super::super::super::super::objects::scout::video::api::GetFileSummariesRequest,
) -> Result<
super::super::super::super::objects::scout::video::api::GetFileSummariesResponse,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v1/videos/{videoRid}/streaming/whip",
name = "generateWhipStream",
accept = conjure_http::client::StdResponseDeserializer
)]
fn generate_whip_stream(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
video_rid: &super::super::super::super::objects::api::rids::VideoRid,
) -> Result<
super::super::super::super::objects::scout::video::api::GenerateWhipStreamResponse,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v2/videos/streaming/whip",
name = "generateWhipStreamV2",
accept = conjure_http::client::StdResponseDeserializer
)]
fn generate_whip_stream_v2(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
request: &super::super::super::super::objects::scout::video::api::GenerateWhipStreamV2Request,
) -> Result<
super::super::super::super::objects::scout::video::api::GenerateWhipStreamResponse,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v1/videos/{videoRid}/streaming/whep",
name = "generateWhepStream",
accept = conjure_http::client::conjure::CollectionResponseDeserializer
)]
fn generate_whep_stream(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
video_rid: &super::super::super::super::objects::api::rids::VideoRid,
) -> Result<
Option<
super::super::super::super::objects::scout::video::api::GenerateWhepStreamResponse,
>,
conjure_http::private::Error,
>;
#[endpoint(
method = GET,
path = "/video/v1/videos/{videoRid}/streaming/streams/{streamId}",
name = "getStream",
accept = conjure_http::client::conjure::CollectionResponseDeserializer
)]
fn get_stream(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
video_rid: &super::super::super::super::objects::api::rids::VideoRid,
#[path(name = "streamId", encoder = conjure_http::client::conjure::PlainEncoder)]
stream_id: &str,
) -> Result<
Option<super::super::super::super::objects::scout::video::api::VideoStream>,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v1/videos/{videoRid}/streaming/streams-in-bounds",
name = "getStreamsInBounds",
accept = conjure_http::client::StdResponseDeserializer
)]
fn get_streams_in_bounds(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
video_rid: &super::super::super::super::objects::api::rids::VideoRid,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
request: &super::super::super::super::objects::scout::video::api::GetStreamsInBoundsRequest,
) -> Result<
super::super::super::super::objects::scout::video::api::GetStreamsInBoundsResponse,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v1/videos/{videoRid}/streaming/end",
name = "endStream",
accept = conjure_http::client::StdResponseDeserializer
)]
fn end_stream(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
video_rid: &super::super::super::super::objects::api::rids::VideoRid,
) -> Result<
super::super::super::super::objects::scout::video::api::EndStreamResponse,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v1/segment/upload",
name = "uploadSegmentFromMediaMtx",
accept = conjure_http::client::conjure::EmptyResponseDeserializer
)]
fn upload_segment_from_media_mtx(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[query(
name = "streamPath",
encoder = conjure_http::client::conjure::PlainEncoder
)]
stream_path: &str,
#[query(
name = "filePath",
encoder = conjure_http::client::conjure::PlainEncoder
)]
file_path: &str,
#[query(
name = "duration",
encoder = conjure_http::client::conjure::PlainEncoder
)]
duration: &str,
#[query(
name = "minTimestampSeconds",
encoder = conjure_http::client::conjure::PlainEncoder
)]
min_timestamp_seconds: conjure_object::SafeLong,
#[query(
name = "minTimestampNanos",
encoder = conjure_http::client::conjure::PlainEncoder
)]
min_timestamp_nanos: conjure_object::SafeLong,
#[header(
name = "Content-Length",
encoder = conjure_http::client::conjure::PlainEncoder
)]
content_length: conjure_object::SafeLong,
#[body(serializer = conjure_http::client::conjure::BinaryRequestSerializer)]
body: impl conjure_http::client::WriteBody<O>,
) -> Result<(), conjure_http::private::Error>;
}
#[conjure_http::conjure_client(name = "VideoService")]
pub trait AsyncVideoService<
#[request_writer]
O,
#[response_body]
I: conjure_http::private::Stream<
Item = Result<conjure_http::private::Bytes, conjure_http::private::Error>,
>,
> {
#[endpoint(
method = GET,
path = "/video/v1/videos/{videoRid}",
name = "get",
accept = conjure_http::client::StdResponseDeserializer
)]
async fn get(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
video_rid: &super::super::super::super::objects::api::rids::VideoRid,
) -> Result<
super::super::super::super::objects::scout::video::api::Video,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v1/videos/batchGet",
name = "batchGet",
accept = conjure_http::client::StdResponseDeserializer
)]
async fn batch_get(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
request: &super::super::super::super::objects::scout::video::api::GetVideosRequest,
) -> Result<
super::super::super::super::objects::scout::video::api::GetVideosResponse,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v1/videos/search",
name = "search",
accept = conjure_http::client::StdResponseDeserializer
)]
async fn search(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
request: &super::super::super::super::objects::scout::video::api::SearchVideosRequest,
) -> Result<
super::super::super::super::objects::scout::video::api::SearchVideosResponse,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v1/videos",
name = "create",
accept = conjure_http::client::StdResponseDeserializer
)]
async fn create(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
request: &super::super::super::super::objects::scout::video::api::CreateVideoRequest,
) -> Result<
super::super::super::super::objects::scout::video::api::Video,
conjure_http::private::Error,
>;
#[endpoint(
method = PUT,
path = "/video/v1/videos/{videoRid}",
name = "updateMetadata",
accept = conjure_http::client::StdResponseDeserializer
)]
async fn update_metadata(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
video_rid: &super::super::super::super::objects::api::rids::VideoRid,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
request: &super::super::super::super::objects::scout::video::api::UpdateVideoMetadataRequest,
) -> Result<
super::super::super::super::objects::scout::video::api::Video,
conjure_http::private::Error,
>;
#[endpoint(
method = PUT,
path = "/video/v1/videos/{videoRid}/ingest-status",
name = "updateIngestStatus",
accept = conjure_http::client::conjure::EmptyResponseDeserializer
)]
async fn update_ingest_status(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
video_rid: &super::super::super::super::objects::api::rids::VideoRid,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
request: &super::super::super::super::objects::scout::video::api::UpdateIngestStatus,
) -> Result<(), conjure_http::private::Error>;
#[endpoint(
method = GET,
path = "/video/v1/videos/{videoRid}/ingest-status",
name = "getIngestStatus",
accept = conjure_http::client::StdResponseDeserializer
)]
async fn get_ingest_status(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
video_rid: &super::super::super::super::objects::api::rids::VideoRid,
) -> Result<
super::super::super::super::objects::scout::video::api::DetailedIngestStatus,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v1/videos/batch-get-ingest-status",
name = "batchGetIngestStatus",
accept = conjure_http::client::conjure::CollectionResponseDeserializer
)]
async fn batch_get_ingest_status(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
video_rids: &std::collections::BTreeSet<
super::super::super::super::objects::api::rids::VideoRid,
>,
) -> Result<
std::collections::BTreeMap<
super::super::super::super::objects::api::rids::VideoRid,
super::super::super::super::objects::scout::video::api::DetailedIngestStatus,
>,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v1/videos/enriched-ingest-status",
name = "getEnrichedIngestStatus",
accept = conjure_http::client::conjure::CollectionResponseDeserializer
)]
async fn get_enriched_ingest_status(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
request: &super::super::super::super::objects::scout::video::api::GetEnrichedVideoIngestStatusRequest,
) -> Result<
Option<
super::super::super::super::objects::scout::video::api::EnrichedVideoIngestStatus,
>,
conjure_http::private::Error,
>;
#[endpoint(
method = PUT,
path = "/video/v1/videos/{videoRid}/archive",
name = "archive",
accept = conjure_http::client::conjure::EmptyResponseDeserializer
)]
async fn archive(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
video_rid: &super::super::super::super::objects::api::rids::VideoRid,
) -> Result<(), conjure_http::private::Error>;
#[endpoint(
method = PUT,
path = "/video/v1/videos/{videoRid}/unarchive",
name = "unarchive",
accept = conjure_http::client::conjure::EmptyResponseDeserializer
)]
async fn unarchive(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
video_rid: &super::super::super::super::objects::api::rids::VideoRid,
) -> Result<(), conjure_http::private::Error>;
#[endpoint(
method = GET,
path = "/video/v1/videos/{videoRid}/playlist",
name = "getPlaylist",
accept = conjure_http::client::conjure::BinaryResponseDeserializer
)]
async fn get_playlist(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
video_rid: &super::super::super::super::objects::api::rids::VideoRid,
#[query(
name = "start",
encoder = conjure_http::client::conjure::PlainSeqEncoder
)]
start: Option<&str>,
#[query(name = "end", encoder = conjure_http::client::conjure::PlainSeqEncoder)]
end: Option<&str>,
) -> Result<I, conjure_http::private::Error>;
#[endpoint(
method = GET,
path = "/video/v1/videos/{videoRid}/segment-summaries",
name = "getSegmentSummaries",
accept = conjure_http::client::conjure::CollectionResponseDeserializer
)]
async fn get_segment_summaries(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
video_rid: &super::super::super::super::objects::api::rids::VideoRid,
) -> Result<
Vec<super::super::super::super::objects::scout::video::api::SegmentSummary>,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v1/videos/{videoRid}/playlist-in-bounds",
name = "getPlaylistInBounds",
accept = conjure_http::client::conjure::BinaryResponseDeserializer
)]
async fn get_playlist_in_bounds(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
video_rid: &super::super::super::super::objects::api::rids::VideoRid,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
request: &super::super::super::super::objects::scout::video::api::GetPlaylistInBoundsRequest,
) -> Result<I, conjure_http::private::Error>;
#[endpoint(
method = POST,
path = "/video/v2/videos/playlist-in-bounds",
name = "getPlaylistInBoundsV2",
accept = conjure_http::client::conjure::BinaryResponseDeserializer
)]
async fn get_playlist_in_bounds_v2(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
request: &super::super::super::super::objects::scout::video::api::GetPlaylistInBoundsForChannelRequest,
) -> Result<I, conjure_http::private::Error>;
#[endpoint(
method = GET,
path = "/video/v2/videos/playlist",
name = "getPlaylistV2",
accept = conjure_http::client::conjure::BinaryResponseDeserializer
)]
async fn get_playlist_v2(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[query(
name = "dataSourceRid",
encoder = conjure_http::client::conjure::PlainSeqEncoder
)]
data_source_rid: Option<
&super::super::super::super::objects::api::rids::DataSourceRid,
>,
#[query(
name = "assetRid",
encoder = conjure_http::client::conjure::PlainSeqEncoder
)]
asset_rid: Option<
&super::super::super::super::objects::scout::rids::api::AssetRid,
>,
#[query(
name = "dataScopeName",
encoder = conjure_http::client::conjure::PlainSeqEncoder
)]
data_scope_name: Option<&str>,
#[query(name = "channel", encoder = conjure_http::client::conjure::PlainEncoder)]
channel: &str,
#[query(name = "tags", encoder = conjure_http::client::conjure::PlainSeqEncoder)]
tags: Option<&str>,
#[query(name = "start", encoder = conjure_http::client::conjure::PlainEncoder)]
start: &str,
#[query(name = "end", encoder = conjure_http::client::conjure::PlainEncoder)]
end: &str,
) -> Result<I, conjure_http::private::Error>;
#[endpoint(
method = POST,
path = "/video/v1/videos/{videoRid}/segment-summaries-in-bounds",
name = "getSegmentSummariesInBounds",
accept = conjure_http::client::conjure::CollectionResponseDeserializer
)]
async fn get_segment_summaries_in_bounds(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
video_rid: &super::super::super::super::objects::api::rids::VideoRid,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
request: &super::super::super::super::objects::scout::video::api::GetSegmentSummariesInBoundsRequest,
) -> Result<
Vec<super::super::super::super::objects::scout::video::api::SegmentSummary>,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v2/videos/segment-summaries-in-bounds",
name = "getSegmentSummariesInBoundsV2",
accept = conjure_http::client::conjure::CollectionResponseDeserializer
)]
async fn get_segment_summaries_in_bounds_v2(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
request: &super::super::super::super::objects::scout::video::api::GetSegmentSummariesInBoundsForChannelRequest,
) -> Result<
Vec<super::super::super::super::objects::scout::video::api::SegmentSummaryV2>,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v2/videos/segment-metadata",
name = "getSegmentMetadataV2",
accept = conjure_http::client::conjure::CollectionResponseDeserializer
)]
async fn get_segment_metadata_v2(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
request: &super::super::super::super::objects::scout::video::api::GetSegmentMetadataForChannelRequest,
) -> Result<
Option<
super::super::super::super::objects::scout::video::api::VideoChannelSegmentsMetadata,
>,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v2/videos/get-segment-by-timestamp",
name = "getSegmentByTimestampV2",
accept = conjure_http::client::conjure::CollectionResponseDeserializer
)]
async fn get_segment_by_timestamp_v2(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
request: &super::super::super::super::objects::scout::video::api::GetSegmentByTimestampV2Request,
) -> Result<
Option<super::super::super::super::objects::scout::video::api::SegmentV2>,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v1/videos/{videoRid}/get-segment-at-or-after-timestamp",
name = "getSegmentAtOrAfterTimestamp",
accept = conjure_http::client::conjure::CollectionResponseDeserializer
)]
async fn get_segment_at_or_after_timestamp(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
video_rid: &super::super::super::super::objects::api::rids::VideoRid,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
request: &super::super::super::super::objects::scout::video::api::GetSegmentAtOrAfterTimestampRequest,
) -> Result<
Option<super::super::super::super::objects::scout::video::api::Segment>,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v2/videos/get-segment-at-or-after-timestamp",
name = "getSegmentAtOrAfterTimestampV2",
accept = conjure_http::client::conjure::CollectionResponseDeserializer
)]
async fn get_segment_at_or_after_timestamp_v2(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
request: &super::super::super::super::objects::scout::video::api::GetSegmentAtOrAfterTimestampV2Request,
) -> Result<
Option<super::super::super::super::objects::scout::video::api::SegmentV2>,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v1/videos/{videoRid}/get-ranges-with-existing-segment-data",
name = "getFileSummaries",
accept = conjure_http::client::StdResponseDeserializer
)]
async fn get_file_summaries(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
video_rid: &super::super::super::super::objects::api::rids::VideoRid,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
request: &super::super::super::super::objects::scout::video::api::GetFileSummariesRequest,
) -> Result<
super::super::super::super::objects::scout::video::api::GetFileSummariesResponse,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v1/videos/{videoRid}/streaming/whip",
name = "generateWhipStream",
accept = conjure_http::client::StdResponseDeserializer
)]
async fn generate_whip_stream(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
video_rid: &super::super::super::super::objects::api::rids::VideoRid,
) -> Result<
super::super::super::super::objects::scout::video::api::GenerateWhipStreamResponse,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v2/videos/streaming/whip",
name = "generateWhipStreamV2",
accept = conjure_http::client::StdResponseDeserializer
)]
async fn generate_whip_stream_v2(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
request: &super::super::super::super::objects::scout::video::api::GenerateWhipStreamV2Request,
) -> Result<
super::super::super::super::objects::scout::video::api::GenerateWhipStreamResponse,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v1/videos/{videoRid}/streaming/whep",
name = "generateWhepStream",
accept = conjure_http::client::conjure::CollectionResponseDeserializer
)]
async fn generate_whep_stream(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
video_rid: &super::super::super::super::objects::api::rids::VideoRid,
) -> Result<
Option<
super::super::super::super::objects::scout::video::api::GenerateWhepStreamResponse,
>,
conjure_http::private::Error,
>;
#[endpoint(
method = GET,
path = "/video/v1/videos/{videoRid}/streaming/streams/{streamId}",
name = "getStream",
accept = conjure_http::client::conjure::CollectionResponseDeserializer
)]
async fn get_stream(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
video_rid: &super::super::super::super::objects::api::rids::VideoRid,
#[path(name = "streamId", encoder = conjure_http::client::conjure::PlainEncoder)]
stream_id: &str,
) -> Result<
Option<super::super::super::super::objects::scout::video::api::VideoStream>,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v1/videos/{videoRid}/streaming/streams-in-bounds",
name = "getStreamsInBounds",
accept = conjure_http::client::StdResponseDeserializer
)]
async fn get_streams_in_bounds(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
video_rid: &super::super::super::super::objects::api::rids::VideoRid,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
request: &super::super::super::super::objects::scout::video::api::GetStreamsInBoundsRequest,
) -> Result<
super::super::super::super::objects::scout::video::api::GetStreamsInBoundsResponse,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v1/videos/{videoRid}/streaming/end",
name = "endStream",
accept = conjure_http::client::StdResponseDeserializer
)]
async fn end_stream(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
video_rid: &super::super::super::super::objects::api::rids::VideoRid,
) -> Result<
super::super::super::super::objects::scout::video::api::EndStreamResponse,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v1/segment/upload",
name = "uploadSegmentFromMediaMtx",
accept = conjure_http::client::conjure::EmptyResponseDeserializer
)]
async fn upload_segment_from_media_mtx(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[query(
name = "streamPath",
encoder = conjure_http::client::conjure::PlainEncoder
)]
stream_path: &str,
#[query(
name = "filePath",
encoder = conjure_http::client::conjure::PlainEncoder
)]
file_path: &str,
#[query(
name = "duration",
encoder = conjure_http::client::conjure::PlainEncoder
)]
duration: &str,
#[query(
name = "minTimestampSeconds",
encoder = conjure_http::client::conjure::PlainEncoder
)]
min_timestamp_seconds: conjure_object::SafeLong,
#[query(
name = "minTimestampNanos",
encoder = conjure_http::client::conjure::PlainEncoder
)]
min_timestamp_nanos: conjure_object::SafeLong,
#[header(
name = "Content-Length",
encoder = conjure_http::client::conjure::PlainEncoder
)]
content_length: conjure_object::SafeLong,
#[body(serializer = conjure_http::client::conjure::BinaryRequestSerializer)]
body: impl conjure_http::client::AsyncWriteBody<O> + Sync + Send,
) -> Result<(), conjure_http::private::Error>;
}
#[conjure_http::conjure_client(name = "VideoService", local)]
pub trait LocalAsyncVideoService<
#[request_writer]
O,
#[response_body]
I: conjure_http::private::Stream<
Item = Result<conjure_http::private::Bytes, conjure_http::private::Error>,
>,
> {
#[endpoint(
method = GET,
path = "/video/v1/videos/{videoRid}",
name = "get",
accept = conjure_http::client::StdResponseDeserializer
)]
async fn get(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
video_rid: &super::super::super::super::objects::api::rids::VideoRid,
) -> Result<
super::super::super::super::objects::scout::video::api::Video,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v1/videos/batchGet",
name = "batchGet",
accept = conjure_http::client::StdResponseDeserializer
)]
async fn batch_get(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
request: &super::super::super::super::objects::scout::video::api::GetVideosRequest,
) -> Result<
super::super::super::super::objects::scout::video::api::GetVideosResponse,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v1/videos/search",
name = "search",
accept = conjure_http::client::StdResponseDeserializer
)]
async fn search(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
request: &super::super::super::super::objects::scout::video::api::SearchVideosRequest,
) -> Result<
super::super::super::super::objects::scout::video::api::SearchVideosResponse,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v1/videos",
name = "create",
accept = conjure_http::client::StdResponseDeserializer
)]
async fn create(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
request: &super::super::super::super::objects::scout::video::api::CreateVideoRequest,
) -> Result<
super::super::super::super::objects::scout::video::api::Video,
conjure_http::private::Error,
>;
#[endpoint(
method = PUT,
path = "/video/v1/videos/{videoRid}",
name = "updateMetadata",
accept = conjure_http::client::StdResponseDeserializer
)]
async fn update_metadata(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
video_rid: &super::super::super::super::objects::api::rids::VideoRid,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
request: &super::super::super::super::objects::scout::video::api::UpdateVideoMetadataRequest,
) -> Result<
super::super::super::super::objects::scout::video::api::Video,
conjure_http::private::Error,
>;
#[endpoint(
method = PUT,
path = "/video/v1/videos/{videoRid}/ingest-status",
name = "updateIngestStatus",
accept = conjure_http::client::conjure::EmptyResponseDeserializer
)]
async fn update_ingest_status(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
video_rid: &super::super::super::super::objects::api::rids::VideoRid,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
request: &super::super::super::super::objects::scout::video::api::UpdateIngestStatus,
) -> Result<(), conjure_http::private::Error>;
#[endpoint(
method = GET,
path = "/video/v1/videos/{videoRid}/ingest-status",
name = "getIngestStatus",
accept = conjure_http::client::StdResponseDeserializer
)]
async fn get_ingest_status(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
video_rid: &super::super::super::super::objects::api::rids::VideoRid,
) -> Result<
super::super::super::super::objects::scout::video::api::DetailedIngestStatus,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v1/videos/batch-get-ingest-status",
name = "batchGetIngestStatus",
accept = conjure_http::client::conjure::CollectionResponseDeserializer
)]
async fn batch_get_ingest_status(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
video_rids: &std::collections::BTreeSet<
super::super::super::super::objects::api::rids::VideoRid,
>,
) -> Result<
std::collections::BTreeMap<
super::super::super::super::objects::api::rids::VideoRid,
super::super::super::super::objects::scout::video::api::DetailedIngestStatus,
>,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v1/videos/enriched-ingest-status",
name = "getEnrichedIngestStatus",
accept = conjure_http::client::conjure::CollectionResponseDeserializer
)]
async fn get_enriched_ingest_status(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
request: &super::super::super::super::objects::scout::video::api::GetEnrichedVideoIngestStatusRequest,
) -> Result<
Option<
super::super::super::super::objects::scout::video::api::EnrichedVideoIngestStatus,
>,
conjure_http::private::Error,
>;
#[endpoint(
method = PUT,
path = "/video/v1/videos/{videoRid}/archive",
name = "archive",
accept = conjure_http::client::conjure::EmptyResponseDeserializer
)]
async fn archive(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
video_rid: &super::super::super::super::objects::api::rids::VideoRid,
) -> Result<(), conjure_http::private::Error>;
#[endpoint(
method = PUT,
path = "/video/v1/videos/{videoRid}/unarchive",
name = "unarchive",
accept = conjure_http::client::conjure::EmptyResponseDeserializer
)]
async fn unarchive(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
video_rid: &super::super::super::super::objects::api::rids::VideoRid,
) -> Result<(), conjure_http::private::Error>;
#[endpoint(
method = GET,
path = "/video/v1/videos/{videoRid}/playlist",
name = "getPlaylist",
accept = conjure_http::client::conjure::BinaryResponseDeserializer
)]
async fn get_playlist(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
video_rid: &super::super::super::super::objects::api::rids::VideoRid,
#[query(
name = "start",
encoder = conjure_http::client::conjure::PlainSeqEncoder
)]
start: Option<&str>,
#[query(name = "end", encoder = conjure_http::client::conjure::PlainSeqEncoder)]
end: Option<&str>,
) -> Result<I, conjure_http::private::Error>;
#[endpoint(
method = GET,
path = "/video/v1/videos/{videoRid}/segment-summaries",
name = "getSegmentSummaries",
accept = conjure_http::client::conjure::CollectionResponseDeserializer
)]
async fn get_segment_summaries(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
video_rid: &super::super::super::super::objects::api::rids::VideoRid,
) -> Result<
Vec<super::super::super::super::objects::scout::video::api::SegmentSummary>,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v1/videos/{videoRid}/playlist-in-bounds",
name = "getPlaylistInBounds",
accept = conjure_http::client::conjure::BinaryResponseDeserializer
)]
async fn get_playlist_in_bounds(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
video_rid: &super::super::super::super::objects::api::rids::VideoRid,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
request: &super::super::super::super::objects::scout::video::api::GetPlaylistInBoundsRequest,
) -> Result<I, conjure_http::private::Error>;
#[endpoint(
method = POST,
path = "/video/v2/videos/playlist-in-bounds",
name = "getPlaylistInBoundsV2",
accept = conjure_http::client::conjure::BinaryResponseDeserializer
)]
async fn get_playlist_in_bounds_v2(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
request: &super::super::super::super::objects::scout::video::api::GetPlaylistInBoundsForChannelRequest,
) -> Result<I, conjure_http::private::Error>;
#[endpoint(
method = GET,
path = "/video/v2/videos/playlist",
name = "getPlaylistV2",
accept = conjure_http::client::conjure::BinaryResponseDeserializer
)]
async fn get_playlist_v2(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[query(
name = "dataSourceRid",
encoder = conjure_http::client::conjure::PlainSeqEncoder
)]
data_source_rid: Option<
&super::super::super::super::objects::api::rids::DataSourceRid,
>,
#[query(
name = "assetRid",
encoder = conjure_http::client::conjure::PlainSeqEncoder
)]
asset_rid: Option<
&super::super::super::super::objects::scout::rids::api::AssetRid,
>,
#[query(
name = "dataScopeName",
encoder = conjure_http::client::conjure::PlainSeqEncoder
)]
data_scope_name: Option<&str>,
#[query(name = "channel", encoder = conjure_http::client::conjure::PlainEncoder)]
channel: &str,
#[query(name = "tags", encoder = conjure_http::client::conjure::PlainSeqEncoder)]
tags: Option<&str>,
#[query(name = "start", encoder = conjure_http::client::conjure::PlainEncoder)]
start: &str,
#[query(name = "end", encoder = conjure_http::client::conjure::PlainEncoder)]
end: &str,
) -> Result<I, conjure_http::private::Error>;
#[endpoint(
method = POST,
path = "/video/v1/videos/{videoRid}/segment-summaries-in-bounds",
name = "getSegmentSummariesInBounds",
accept = conjure_http::client::conjure::CollectionResponseDeserializer
)]
async fn get_segment_summaries_in_bounds(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
video_rid: &super::super::super::super::objects::api::rids::VideoRid,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
request: &super::super::super::super::objects::scout::video::api::GetSegmentSummariesInBoundsRequest,
) -> Result<
Vec<super::super::super::super::objects::scout::video::api::SegmentSummary>,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v2/videos/segment-summaries-in-bounds",
name = "getSegmentSummariesInBoundsV2",
accept = conjure_http::client::conjure::CollectionResponseDeserializer
)]
async fn get_segment_summaries_in_bounds_v2(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
request: &super::super::super::super::objects::scout::video::api::GetSegmentSummariesInBoundsForChannelRequest,
) -> Result<
Vec<super::super::super::super::objects::scout::video::api::SegmentSummaryV2>,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v2/videos/segment-metadata",
name = "getSegmentMetadataV2",
accept = conjure_http::client::conjure::CollectionResponseDeserializer
)]
async fn get_segment_metadata_v2(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
request: &super::super::super::super::objects::scout::video::api::GetSegmentMetadataForChannelRequest,
) -> Result<
Option<
super::super::super::super::objects::scout::video::api::VideoChannelSegmentsMetadata,
>,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v2/videos/get-segment-by-timestamp",
name = "getSegmentByTimestampV2",
accept = conjure_http::client::conjure::CollectionResponseDeserializer
)]
async fn get_segment_by_timestamp_v2(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
request: &super::super::super::super::objects::scout::video::api::GetSegmentByTimestampV2Request,
) -> Result<
Option<super::super::super::super::objects::scout::video::api::SegmentV2>,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v1/videos/{videoRid}/get-segment-at-or-after-timestamp",
name = "getSegmentAtOrAfterTimestamp",
accept = conjure_http::client::conjure::CollectionResponseDeserializer
)]
async fn get_segment_at_or_after_timestamp(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
video_rid: &super::super::super::super::objects::api::rids::VideoRid,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
request: &super::super::super::super::objects::scout::video::api::GetSegmentAtOrAfterTimestampRequest,
) -> Result<
Option<super::super::super::super::objects::scout::video::api::Segment>,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v2/videos/get-segment-at-or-after-timestamp",
name = "getSegmentAtOrAfterTimestampV2",
accept = conjure_http::client::conjure::CollectionResponseDeserializer
)]
async fn get_segment_at_or_after_timestamp_v2(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
request: &super::super::super::super::objects::scout::video::api::GetSegmentAtOrAfterTimestampV2Request,
) -> Result<
Option<super::super::super::super::objects::scout::video::api::SegmentV2>,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v1/videos/{videoRid}/get-ranges-with-existing-segment-data",
name = "getFileSummaries",
accept = conjure_http::client::StdResponseDeserializer
)]
async fn get_file_summaries(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
video_rid: &super::super::super::super::objects::api::rids::VideoRid,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
request: &super::super::super::super::objects::scout::video::api::GetFileSummariesRequest,
) -> Result<
super::super::super::super::objects::scout::video::api::GetFileSummariesResponse,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v1/videos/{videoRid}/streaming/whip",
name = "generateWhipStream",
accept = conjure_http::client::StdResponseDeserializer
)]
async fn generate_whip_stream(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
video_rid: &super::super::super::super::objects::api::rids::VideoRid,
) -> Result<
super::super::super::super::objects::scout::video::api::GenerateWhipStreamResponse,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v2/videos/streaming/whip",
name = "generateWhipStreamV2",
accept = conjure_http::client::StdResponseDeserializer
)]
async fn generate_whip_stream_v2(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
request: &super::super::super::super::objects::scout::video::api::GenerateWhipStreamV2Request,
) -> Result<
super::super::super::super::objects::scout::video::api::GenerateWhipStreamResponse,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v1/videos/{videoRid}/streaming/whep",
name = "generateWhepStream",
accept = conjure_http::client::conjure::CollectionResponseDeserializer
)]
async fn generate_whep_stream(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
video_rid: &super::super::super::super::objects::api::rids::VideoRid,
) -> Result<
Option<
super::super::super::super::objects::scout::video::api::GenerateWhepStreamResponse,
>,
conjure_http::private::Error,
>;
#[endpoint(
method = GET,
path = "/video/v1/videos/{videoRid}/streaming/streams/{streamId}",
name = "getStream",
accept = conjure_http::client::conjure::CollectionResponseDeserializer
)]
async fn get_stream(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
video_rid: &super::super::super::super::objects::api::rids::VideoRid,
#[path(name = "streamId", encoder = conjure_http::client::conjure::PlainEncoder)]
stream_id: &str,
) -> Result<
Option<super::super::super::super::objects::scout::video::api::VideoStream>,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v1/videos/{videoRid}/streaming/streams-in-bounds",
name = "getStreamsInBounds",
accept = conjure_http::client::StdResponseDeserializer
)]
async fn get_streams_in_bounds(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
video_rid: &super::super::super::super::objects::api::rids::VideoRid,
#[body(serializer = conjure_http::client::StdRequestSerializer)]
request: &super::super::super::super::objects::scout::video::api::GetStreamsInBoundsRequest,
) -> Result<
super::super::super::super::objects::scout::video::api::GetStreamsInBoundsResponse,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v1/videos/{videoRid}/streaming/end",
name = "endStream",
accept = conjure_http::client::StdResponseDeserializer
)]
async fn end_stream(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[path(name = "videoRid", encoder = conjure_http::client::conjure::PlainEncoder)]
video_rid: &super::super::super::super::objects::api::rids::VideoRid,
) -> Result<
super::super::super::super::objects::scout::video::api::EndStreamResponse,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/video/v1/segment/upload",
name = "uploadSegmentFromMediaMtx",
accept = conjure_http::client::conjure::EmptyResponseDeserializer
)]
async fn upload_segment_from_media_mtx(
&self,
#[auth]
auth_: &conjure_object::BearerToken,
#[query(
name = "streamPath",
encoder = conjure_http::client::conjure::PlainEncoder
)]
stream_path: &str,
#[query(
name = "filePath",
encoder = conjure_http::client::conjure::PlainEncoder
)]
file_path: &str,
#[query(
name = "duration",
encoder = conjure_http::client::conjure::PlainEncoder
)]
duration: &str,
#[query(
name = "minTimestampSeconds",
encoder = conjure_http::client::conjure::PlainEncoder
)]
min_timestamp_seconds: conjure_object::SafeLong,
#[query(
name = "minTimestampNanos",
encoder = conjure_http::client::conjure::PlainEncoder
)]
min_timestamp_nanos: conjure_object::SafeLong,
#[header(
name = "Content-Length",
encoder = conjure_http::client::conjure::PlainEncoder
)]
content_length: conjure_object::SafeLong,
#[body(serializer = conjure_http::client::conjure::BinaryRequestSerializer)]
body: impl conjure_http::client::LocalAsyncWriteBody<O>,
) -> Result<(), conjure_http::private::Error>;
}