/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ import { analyticsMediaGetAnalyticsMediasMediaId } from "../funcs/analyticsMediaGetAnalyticsMediasMediaId.js"; import { analyticsMediaGetAnalyticsMediasMediaIdConversions } from "../funcs/analyticsMediaGetAnalyticsMediasMediaIdConversions.js"; import { analyticsMediaGetAnalyticsMediasMediaIdEmbedLocations } from "../funcs/analyticsMediaGetAnalyticsMediasMediaIdEmbedLocations.js"; import { analyticsMediaGetAnalyticsMediasMediaIdLanguages } from "../funcs/analyticsMediaGetAnalyticsMediasMediaIdLanguages.js"; import { analyticsMediaGetAnalyticsMediasMediaIdTimeseries } from "../funcs/analyticsMediaGetAnalyticsMediasMediaIdTimeseries.js"; import { analyticsMediaGetAnalyticsMediasMediaIdTraffic } from "../funcs/analyticsMediaGetAnalyticsMediasMediaIdTraffic.js"; import { ClientSDK, RequestOptions } from "../lib/sdks.js"; import * as operations from "../models/operations/index.js"; import { unwrapAsync } from "../types/fp.js"; export class AnalyticsMedia extends ClientSDK { /** * Show Media Analytics * * @remarks * Retrieve aggregate analytics for a video over a date range. This endpoint provides * Bottler-powered analytics including plays, loads, engagement rate, play rate, and * conversion metrics. * * The date range between `start_date` and `end_date` must not exceed 2 years. * * * ## Requires api token with one of the following permissions * ``` * Read detailed stats * ``` * */ async getAnalyticsMediasMediaId( request: operations.GetAnalyticsMediasMediaIdRequest, options?: RequestOptions, ): Promise { return unwrapAsync(analyticsMediaGetAnalyticsMediasMediaId( this, request, options, )); } /** * Show Media Analytics Timeseries * * @remarks * Retrieve analytics timeseries data for a video over a date range with configurable * granularity. Returns an array of timestamped metric buckets. * * The date range between `start_date` and `end_date` must not exceed 2 years. * * * ## Requires api token with one of the following permissions * ``` * Read detailed stats * ``` * */ async getAnalyticsMediasMediaIdTimeseries( request: operations.GetAnalyticsMediasMediaIdTimeseriesRequest, options?: RequestOptions, ): Promise> { return unwrapAsync(analyticsMediaGetAnalyticsMediasMediaIdTimeseries( this, request, options, )); } /** * Show Media Embed Locations * * @remarks * Retrieve embed location analytics for a video. Returns a list of pages where the * video is embedded, ranked by the chosen metric. * * The date range between `start_date` and `end_date` must not exceed 2 years. * * * ## Requires api token with one of the following permissions * ``` * Read detailed stats * ``` * */ async getAnalyticsMediasMediaIdEmbedLocations( request: operations.GetAnalyticsMediasMediaIdEmbedLocationsRequest, options?: RequestOptions, ): Promise< Array > { return unwrapAsync(analyticsMediaGetAnalyticsMediasMediaIdEmbedLocations( this, request, options, )); } /** * Show Media Traffic Breakdown * * @remarks * Retrieve traffic breakdown analytics for a video, grouped by a specified dimension * such as UTM campaign, UTM source, UTM medium, referrer domain, or viewer screen size. * * The date range between `start_date` and `end_date` must not exceed 2 years. * * * ## Requires api token with one of the following permissions * ``` * Read detailed stats * ``` * */ async getAnalyticsMediasMediaIdTraffic( request: operations.GetAnalyticsMediasMediaIdTrafficRequest, options?: RequestOptions, ): Promise> { return unwrapAsync(analyticsMediaGetAnalyticsMediasMediaIdTraffic( this, request, options, )); } /** * Show Media Form Conversions * * @remarks * Retrieve form conversion data for a video. Returns a paginated list of form * submissions with visitor details and timestamps. * * The date range between `start_date` and `end_date` must not exceed 2 years. * * * ## Requires api token with one of the following permissions * ``` * Read detailed stats * ``` * */ async getAnalyticsMediasMediaIdConversions( request: operations.GetAnalyticsMediasMediaIdConversionsRequest, options?: RequestOptions, ): Promise { return unwrapAsync(analyticsMediaGetAnalyticsMediasMediaIdConversions( this, request, options, )); } /** * Show Media Languages * * @remarks * Retrieve language analytics for a video. Returns a breakdown of plays by * viewer browser language, sorted by number of plays in descending order. * * The date range between `start_date` and `end_date` must not exceed 2 years. * * * ## Requires api token with one of the following permissions * ``` * Read detailed stats * ``` * */ async getAnalyticsMediasMediaIdLanguages( request: operations.GetAnalyticsMediasMediaIdLanguagesRequest, options?: RequestOptions, ): Promise> { return unwrapAsync(analyticsMediaGetAnalyticsMediasMediaIdLanguages( this, request, options, )); } }