# Dailymotion Documentation > Documentation for Dailymotion ## Guides - [Welcome](https://developers.dailymotion.com/docs/welcome.md) - [Migrating from Legacy API to API v2](https://developers.dailymotion.com/docs/migrating-from-legacy-api-to-api-v2.md): This document maps all fields from the Dailymotion Legacy API to their equivalents in API v2, and provides a per-endpoint migration guide to help you update your integration without diving into the full reference. - [Get started with Authentication](https://developers.dailymotion.com/docs/authenticate.md) - [Collect profile IDs](https://developers.dailymotion.com/docs/collect-profile-ids.md) - [Upload videos](https://developers.dailymotion.com/docs/upload-videos.md): Uploading a video on your Dailymotion account can be done programmatically using our API. - [Import content via MRSS feed ](https://developers.dailymotion.com/docs/mass-upload-mrss.md) - [Edit video metadata](https://developers.dailymotion.com/docs/edit-video-metadata.md) - [Generate metadata with AI](https://developers.dailymotion.com/docs/generate-metadata-with-ai.md) - [Browse large video catalogs via the API](https://developers.dailymotion.com/docs/browse-large-video-catalog.md) - [Webhooks](https://developers.dailymotion.com/docs/webhooks.md): Subscribe to your account's events with webhooks. - [Collect video IDs](https://developers.dailymotion.com/docs/collect-your-video-ids.md) - [Create and schedule a live event](https://developers.dailymotion.com/docs/create-and-schedule-a-live-event.md) - [Launch an ad break during a live event](https://developers.dailymotion.com/docs/launch-an-ad-break-during-a-live-event.md) - [Record your live event](https://developers.dailymotion.com/docs/record-your-live-event.md) - [Create Player](https://developers.dailymotion.com/docs/create-a-player.md) - [Vertical Player](https://developers.dailymotion.com/docs/vertical-player.md): Use aspect ratio to create a vertical Player. - [Autostart](https://developers.dailymotion.com/docs/autostart.md): How to work with autostart. - [Picture-in-Picture (PiP)](https://developers.dailymotion.com/docs/picture-in-picture-pip.md): How to work with Picture-in-Picture (PiP). - [Loop](https://developers.dailymotion.com/docs/loop.md): Work with the loop parameter. - [Chromecast & Airplay support](https://developers.dailymotion.com/docs/chromecast-airplay-support.md) - [Generate stream URLs](https://developers.dailymotion.com/docs/generate-stream-urls.md) - [Generate download URLs](https://developers.dailymotion.com/docs/generate-download-urls.md) - [Getting started (Web SDK)](https://developers.dailymotion.com/docs/getting-started-with-the-web-sdk.md) - [Player Embed Script (Web)](https://developers.dailymotion.com/docs/player-embed-script-web.md) - [Player Library Script (Web)](https://developers.dailymotion.com/docs/player-library-script.md) - [iFrame (Web)](https://developers.dailymotion.com/docs/iframe-web.md) - [Optimize Player loading (Web)](https://developers.dailymotion.com/docs/optimize-player-loading-web.md) - [Use Player methods (Web)](https://developers.dailymotion.com/docs/use-player-methods-web.md): Methods allow you to initialize and control Players behavior programmatically, customize the user experience and create dynamic interactions. - [Listen to Player events (Web)](https://developers.dailymotion.com/docs/listen-to-player-events-web.md): Work with events to capture user interactions with the Player and trigger custom actions. - [Retrieve Player state (Web)](https://developers.dailymotion.com/docs/retrieve-player-state-web.md): Retrieve data about your Player state. - [Add runtime Player parameters (Web)](https://developers.dailymotion.com/docs/add-runtime-player-parameters-web.md): In addition to Player configuration settings, you can add extra parameters that can change at runtime. - [Referrer policy and Player embedding (Web)](https://developers.dailymotion.com/docs/referrer-policy-and-player-embedding-web.md) - [Getting started (Android SDK)](https://developers.dailymotion.com/docs/getting-started-with-the-android-sdk.md) - [Use methods with Android SDK](https://developers.dailymotion.com/docs/use-methods-with-android-sdk.md): Methods allow you to initialize and control Players behavior programmatically, customize the user experience and create dynamic interactions. - [Listen to events with Android SDK](https://developers.dailymotion.com/docs/listen-to-events-with-android-sdk.md): Work with events to capture user interactions with the Player and trigger custom actions. - [Retrieve Player state with Android SDK](https://developers.dailymotion.com/docs/retrieve-player-state-with-android-sdk.md): Retrieve data about your Player state. - [Add runtime Player parameters (Android)](https://developers.dailymotion.com/docs/add-runtime-player-parameters-android.md): In addition to Player configuration settings, you can add extra parameters that can change at runtime. - [Destroy the Player with Android SDK](https://developers.dailymotion.com/docs/destroy-the-player-with-android-sdk.md) - [Out-of-the-box fullscreen implementation (Android)](https://developers.dailymotion.com/docs/out-of-the-box-fullscreen-implementation-android.md): Built-in fullscreen implementation with minimal setup. - [Custom fullscreen implementation (Android)](https://developers.dailymotion.com/docs/custom-fullscreen-implementation-android.md): Custom fullscreen implementation for advanced needs. - [Programmatic fullscreen control (Android)](https://developers.dailymotion.com/docs/programmatic-fullscreen-control-android.md): Trigger fullscreen mode programmatically, without user interaction. - [Fullscreen orientation (Android)](https://developers.dailymotion.com/docs/fullscreen-orientation-android.md) - [Chromecast (Android)](https://developers.dailymotion.com/docs/chromecast-android.md) - [Sample app (Android SDK)](https://developers.dailymotion.com/docs/sample-app-android-sdk.md): The Android SDK sample app help you learn about our Android SDK and facilitate testing: - [Getting started (iOS SDK)](https://developers.dailymotion.com/docs/getting-started-with-the-ios-sdk.md) - [Configure logs (iOS SDK)](https://developers.dailymotion.com/docs/configure-logs-ios.md) - [Errors (iOS SDK)](https://developers.dailymotion.com/docs/errors-ios-sdk.md) - [Add runtime Player parameters (iOS SDK)](https://developers.dailymotion.com/docs/add-runtime-player-parameters-ios-sdk.md): In addition to Player configuration settings, you can add extra parameters that can change at runtime. - [Listen to events (iOS SDK)](https://developers.dailymotion.com/docs/listen-to-events-ios-sdk.md): Work with events to capture user interactions with the Player and trigger custom actions. - [Retrieve Player state (iOS SDK)](https://developers.dailymotion.com/docs/retrieve-player-state-ios-sdk.md): Retrieve data about your Player state. - [Destroy the Player (iOS SDK)](https://developers.dailymotion.com/docs/destroy-the-player-ios-sdk.md) - [Preload and reuse Player (iOS SDK)](https://developers.dailymotion.com/docs/preload-and-reuse-player-ios-sdk.md) - [Handling advertising set up (iOS SDK)](https://developers.dailymotion.com/docs/handling-advertising-set-up-ios-sdk.md) - [Out-of-the-box fullscreen implementation (iOS SDK)](https://developers.dailymotion.com/docs/out-of-the-box-fullscreen-implementation-ios-sdk.md): Built-in fullscreen implementation with minimal setup. - [Custom fullscreen implementation (iOS SDK)](https://developers.dailymotion.com/docs/custom-fullscreen-implementation-ios-sdk.md): Custom fullscreen implementation for advanced needs. - [Fullscreen orientation (iOS)](https://developers.dailymotion.com/docs/fullscreen-orientation-ios.md) - [Programmatic fullscreen control (iOS SDK)](https://developers.dailymotion.com/docs/programmatic-fullscreen-control-ios-sdk.md): Trigger fullscreen mode programmatically, without user interaction. - [Check fullscreen state (iOS SDK)](https://developers.dailymotion.com/docs/check-fullscreen-state-ios-sdk.md) - [Chromecast (iOS SDK)](https://developers.dailymotion.com/docs/chromecast-ios-sdk.md) - [Sample app (iOS SDK)](https://developers.dailymotion.com/docs/sample-app-ios-sdk.md) - [Start monetizing](https://developers.dailymotion.com/docs/start-monetizing.md) - [TCF2](https://developers.dailymotion.com/docs/tcf2.md): Implement TCF2 consent banner in the Dailymotion Player - [MCM](https://developers.dailymotion.com/docs/mcm.md): Access Google MCM program and AdX via Dailymotion - [Optimize monetization](https://developers.dailymotion.com/docs/optimize-monetization.md): If you want to go further, Dailymotion enables you to refine and enhance your ad integration to maximize the revenues generated from ads. - [Ad viewability & user engagement](https://developers.dailymotion.com/docs/ad-viewability-user-engagement.md): Optimize Player for ads - [CORS Policy](https://developers.dailymotion.com/docs/cors-policy.md): Allow Dailymotion in your CORS Policy - [Contextual video matching](https://developers.dailymotion.com/docs/contextual-video-matching.md): Create more video inventory with "Contextual video matching" - [Automatic recommendations](https://developers.dailymotion.com/docs/optimize-player-with-automatic-recommendations.md): Optimize the Player with automatic recommendations. - [Playlist embed](https://developers.dailymotion.com/docs/playlist-embed.md) - [Ad tag macros](https://developers.dailymotion.com/docs/ad-tag-macros.md): Improve ad targeting using ad macros - [Ad pods](https://developers.dailymotion.com/docs/ad-pods.md): Optimize ad breaks using ad pods. - [Ad scheduling](https://developers.dailymotion.com/docs/ad-scheduling.md): Plan ad breaks with ad scheduling. - [Custom config](https://developers.dailymotion.com/docs/custom-config.md): Pass in custom ad values in your VAST tag using the Dailymotion Player - [Header bidding](https://developers.dailymotion.com/docs/header-bidding.md): Optimize the Dailymotion Player for header bidding solutions. - [Extended User IDs (EIDs)](https://developers.dailymotion.com/docs/activate-extended-user-ids-eids.md) - [Brand safety](https://developers.dailymotion.com/docs/brand-safety.md) - [Google Analytics 4 (Web)](https://developers.dailymotion.com/docs/google-analytics-4-web.md): Connect your Dailymotion analytics with Google Analytics 4 to get a full overview of your content analytics on web in real time. - [Google Analytics 4 (Android)](https://developers.dailymotion.com/docs/google-analytics-4-android.md): Dailymotion currently supports client-side integration with Google Analytics. It allows **collecting client-side events from Android apps and send them to a Google Analytics account** for further storage and analysis. - [Google Analytics 4 (iOS)](https://developers.dailymotion.com/docs/google-analytics-4-ios.md): Dailymotion currently supports client-side integration with Google Analytics. It allows **collecting client-side events from iOS apps and send them to a Google Analytics account** for further storage and analysis. - [Chartbeat](https://developers.dailymotion.com/docs/chartbeat.md): Connect your Dailymotion real-time Player data to your Chartbeat dashboard. - [Marfeel](https://developers.dailymotion.com/docs/marfeel.md): Connect your Dailymotion Player data to your Marfeel analytics dashboard. - [Embed with oEmbed](https://developers.dailymotion.com/docs/embed-with-oembed.md) ## API Reference - [Introduction](https://developers.dailymotion.com/reference/introduction.md) - [Perform an API Call](https://developers.dailymotion.com/reference/perform-an-api-call.md) - [Understand API response](https://developers.dailymotion.com/reference/understand-api-response.md) - [Understand the different data types](https://developers.dailymotion.com/reference/understand-the-different-data-types.md) - [Deprecations ⌛](https://developers.dailymotion.com/reference/deprecations.md) - [Sunset ✓](https://developers.dailymotion.com/reference/sunset.md) - [Migration guide to new embed endpoint](https://developers.dailymotion.com/reference/migration-guide-new-embed-endpoint.md) - [iOS SDK Migration guide](https://developers.dailymotion.com/reference/ios-sdk-migration-guide.md) - [Android SDK Migration guide](https://developers.dailymotion.com/reference/android-sdk-migration-guide.md) - [Rate limiting](https://developers.dailymotion.com/reference/rate-limiting.md) - [API Errors](https://developers.dailymotion.com/reference/api-errors.md): It can happen that an API request returns an error. In this article, we'll show you how a response with an error looks like, and the meaning of the most common errors received so you can troubleshoot them easily. - [API Scopes](https://developers.dailymotion.com/reference/api-scopes.md): OAuth2 scopes define the level of access granted to an API token. Scopes can be requested individually or via **bundles**, which are predefined role-oriented templates that expand to a set of scopes. - [Request access token](https://developers.dailymotion.com/reference/request-access-token.md) - [Get me](https://developers.dailymotion.com/reference/get-me.md): Return the current user's id, `username`, and the list of profiles they can manage (each entry includes at least `profile_id` and `name`). Use `fields` to limit which properties are returned. Not cacheable—always reflects the token presented on the request. Requires `account.read` [scope](https://developers.dailymotion.com/v2/reference/api-scopes) and a valid Bearer token. - [Get a profile](https://developers.dailymotion.com/reference/get-profile.md): Fetch one profile by `profile_id`. Use `fields` to limit returned properties. Requires `profile.read` [scope](https://developers.dailymotion.com/v2/reference/api-scopes). - [Update a profile](https://developers.dailymotion.com/reference/update-profile.md): Update mutable profile fields (display name, description, social links, content defaults, etc.). PATCH is partial—send only what changes. Returns **204 No Content** on success. Requires `profile.manage` [scope](https://developers.dailymotion.com/v2/reference/api-scopes). - [Get a user](https://developers.dailymotion.com/reference/get-user.md): Return one user by `user_id`. Use the `fields` query parameter to request a comma-separated subset of properties. Requires `account.read` [scope](https://developers.dailymotion.com/v2/reference/api-scopes). - [Create an upload session](https://developers.dailymotion.com/reference/create-upload-session.md): Start an upload session (no JSON body). The response contains `upload_url` (POST the file here) and `progress_url` (poll until complete). Call this before attaching the file to a video record. Requires `video.manage` [scope](https://developers.dailymotion.com/v2/reference/api-scopes) and a valid Bearer token. - [Upload a video file](https://developers.dailymotion.com/reference/upload-video-file.md): Upload using multipart/form-data. - [Get a video](https://developers.dailymotion.com/reference/get-video.md): Return a single video by `video_id`. Supports sparse field selection via `fields`. Requires `video.read` [scope](https://developers.dailymotion.com/v2/reference/api-scopes). - [List videos for a profile](https://developers.dailymotion.com/reference/list-profile-videos.md): List videos for the given `profile_id` with optional `sort`, optional filters (visibility, tags, date range, etc.), and `fields` for sparse responses. Default sort is `created_at` descending. Requires `video.read` [scope](https://developers.dailymotion.com/v2/reference/api-scopes). - [Create a video for a profile](https://developers.dailymotion.com/reference/create-profile-video.md): Create a new video under this profile. Required body fields are ``title``, ``visibility``, ``category``, ``is_for_kids``, and ``source`` (use ``source.file_url`` for upload workflows). Returns **201** with the created representation. Requires `video.manage` [scope](https://developers.dailymotion.com/v2/reference/api-scopes). - [Update a video](https://developers.dailymotion.com/reference/update-video.md): Partially update a video (PATCH). Send only fields to change; omitted fields stay unchanged. Updates return **204 No Content**. Requires `video.manage` [scope](https://developers.dailymotion.com/v2/reference/api-scopes). - [Delete a video](https://developers.dailymotion.com/reference/delete-video.md): Permanently delete a video. Idempotent in the sense that deleting an already removed resource may still return success per API rules. Requires `video.manage` [scope](https://developers.dailymotion.com/v2/reference/api-scopes). - [List videos for a playlist](https://developers.dailymotion.com/reference/list-playlist-videos.md): List videos in playlist order with optional `sort` and `fields`. Requires `playlist.read` [scope](https://developers.dailymotion.com/v2/reference/api-scopes). - [Add a video to a playlist](https://developers.dailymotion.com/reference/add-playlist-video.md): Add an existing video to the playlist, optionally before another item via `before_video_id`. Returns **201** with the playlist item row. Requires `playlist.manage` [scope](https://developers.dailymotion.com/v2/reference/api-scopes). - [Remove a video from a playlist](https://developers.dailymotion.com/reference/delete-playlist-video.md): Remove the video from this playlist without deleting the video itself. Returns **204 No Content**. Requires `playlist.manage` [scope](https://developers.dailymotion.com/v2/reference/api-scopes). - [Generate time-limited streaming URLs for playback.](https://developers.dailymotion.com/reference/generate-time-limited-stream-url.md): When ``protocol`` is omitted, all available stream formats are returned. When ``protocol`` is set, only URLs for that protocol are returned. Response URLs are time-limited and must not be cached. Requires `video.read` [scope](https://developers.dailymotion.com/v2/reference/api-scopes). - [Generate time-limited download URLs for a video.](https://developers.dailymotion.com/reference/generate-time-limited-download-url.md): When both ``video_format_id`` and ``audio_format_ids`` are omitted, all downloadable formats are returned. Otherwise, entries are filtered by the requested ids; a value matching no entry yields an empty list. Requires `video.read` [scope](https://developers.dailymotion.com/v2/reference/api-scopes). - [Get a livestream](https://developers.dailymotion.com/reference/get-livestream.md): Return a livestream by `livestream_id`, including ingest URLs, status, and advertising quota (`advertising.end_at`, `advertising.remaining`) when available. Use `fields` for sparse responses. Requires `live.read` [scope](https://developers.dailymotion.com/v2/reference/api-scopes). - [List livestreams for a profile](https://developers.dailymotion.com/reference/list-profile-livestreams.md): List livestreams with optional `sort`, filters (status, visibility, date range, tags, etc.), and `fields`. Default sort is `created_at` descending. Requires `live.read` [scope](https://developers.dailymotion.com/v2/reference/api-scopes). - [Create a livestream for a profile](https://developers.dailymotion.com/reference/create-profile-livestream.md): Create a livestream on this profile. Required body fields are ``title``, ``visibility``, ``category``, and ``is_for_kids``. Returns **201** with the new resource. Requires `live.manage` [scope](https://developers.dailymotion.com/v2/reference/api-scopes). - [Trigger a mid-roll ad break during the live event.](https://developers.dailymotion.com/reference/livestream-advertising.md): Body field ``count`` sets how many commercials to display. All viewers receive the ads simultaneously. Up to 24 commercials per hour are allowed on the account. Returns **200** with ``livestream_id`` and the updated ``advertising`` object. Requires `live.manage` [scope](https://developers.dailymotion.com/v2/reference/api-scopes). - [Update a livestream](https://developers.dailymotion.com/reference/update-livestream.md): Update scheduling, metadata, recording, geo-restriction, or embedding settings. Returns **204 No Content** on success. Requires `live.manage` [scope](https://developers.dailymotion.com/v2/reference/api-scopes). - [Delete a livestream](https://developers.dailymotion.com/reference/delete-livestream.md): Permanently delete a livestream. Returns **204 No Content** on success. Requires `live.manage`. - [Get a playlist](https://developers.dailymotion.com/reference/get-playlist.md): Fetch a playlist by `playlist_id`. Use `fields` for sparse responses. Requires `playlist.read` [scope](https://developers.dailymotion.com/v2/reference/api-scopes). - [List playlists for a profile](https://developers.dailymotion.com/reference/list-profile-playlists.md): List playlists with optional filters on creation time, `sort`, and `fields`. Requires `playlist.read` [scope](https://developers.dailymotion.com/v2/reference/api-scopes)`. - [Create a playlist for a profile](https://developers.dailymotion.com/reference/create-profile-playlist.md): Create an empty playlist on this profile. Returns **201** with the new playlist. Requires `playlist.manage` [scope](https://developers.dailymotion.com/v2/reference/api-scopes). - [Update a playlist](https://developers.dailymotion.com/reference/update-playlist.md): Update playlist title or description (PATCH). Returns **204 No Content** on success. Requires `playlist.manage` [scope](https://developers.dailymotion.com/v2/reference/api-scopes). - [Delete a playlist](https://developers.dailymotion.com/reference/delete-playlist.md): Permanently delete a playlist. Videos in the playlist are not deleted. Returns **204 No Content** on success. Requires `playlist.manage` [scope](https://developers.dailymotion.com/v2/reference/api-scopes). - [Get a player](https://developers.dailymotion.com/reference/get-player.md): Load a player by `player_id`. Embed URLs and organization feature flags are read-only. Use `fields` to trim the payload. Requires `player.read` [scope](https://developers.dailymotion.com/v2/reference/api-scopes). - [List players for a profile](https://developers.dailymotion.com/reference/list-profile-players.md): List players for the profile with optional `sort` and `fields`. Default sort is `created_at` descending. Requires `player.read` [scope](https://developers.dailymotion.com/v2/reference/api-scopes). - [Create a player for a profile](https://developers.dailymotion.com/reference/create-player.md): Create a new player configuration scoped to this profile. Returns **201** with the created player. Requires `player.manage` [scope](https://developers.dailymotion.com/v2/reference/api-scopes). - [Update a player](https://developers.dailymotion.com/reference/update-player.md): PATCH player settings (appearance, playback, monetization, PiP, etc.). Returns **204 No Content** on success. Requires `player.manage` [scope](https://developers.dailymotion.com/v2/reference/api-scopes) - [Delete a player](https://developers.dailymotion.com/reference/delete-player.md): Permanently delete a player configuration. Returns **204 No Content** on success. Requires `player.manage` [scope](https://developers.dailymotion.com/v2/reference/api-scopes). - [Web SDK - Player methods](https://developers.dailymotion.com/reference/web-sdk-player-methods.md) - [Web SDK - Player events](https://developers.dailymotion.com/reference/web-sdk-player-events.md) - [Web SDK - Player states](https://developers.dailymotion.com/reference/web-sdk-player-states.md) - [Web SDK - Player runtime parameters](https://developers.dailymotion.com/reference/web-sdk-player-runtime-parameters.md) - [Android SDK - Player methods](https://developers.dailymotion.com/reference/android-sdk-player-methods.md) - [Android SDK - Player events](https://developers.dailymotion.com/reference/android-sdk-player-events.md) - [Android SDK - Player states](https://developers.dailymotion.com/reference/android-sdk-player-states.md) - [Android SDK - Player runtime parameters](https://developers.dailymotion.com/reference/android-sdk-player-runtime-parameters.md) - [iOS SDK - Player methods](https://developers.dailymotion.com/reference/ios-sdk-player-methods.md) - [iOS SDK - Player events](https://developers.dailymotion.com/reference/ios-sdk-player-events.md) - [iOS SDK - Player states](https://developers.dailymotion.com/reference/ios-sdk-player-states.md) - [iOS SDK - Player runtime parameters](https://developers.dailymotion.com/reference/ios-sdk-player-runtime-parameters.md) ## Changelog - [Web / Android / iOS SDKs - Mute deprecation](https://developers.dailymotion.com/changelog/web-android-ios-sdks-mute-deprecation.md) - [API - vertical_thumbnail_url](https://developers.dailymotion.com/changelog/api-vertical_thumbnail_url.md) - [API - enable_hold_to_fastforward](https://developers.dailymotion.com/changelog/api-enable_hold_to_fastforward.md) - [API - ai_metadata_generation](https://developers.dailymotion.com/changelog/api-ai_metadata_generation.md) - [API - INVENTORY_POSITION_INDEX](https://developers.dailymotion.com/changelog/api-inventory_position_index.md) - [API - AVERAGE_WATCH_TIME_SEC](https://developers.dailymotion.com/changelog/api-average_watch_time_sec.md) - [API - Deprecation views_*](https://developers.dailymotion.com/changelog/api-deprecation-views-legacy-fields.md) - [iOS SDK - Version 1.4.11](https://developers.dailymotion.com/changelog/ios-sdk-version-1-4-11.md) - [Android SDK - Version 2.1.1](https://developers.dailymotion.com/changelog/android-sdk-version-2-1-1.md) - [API - enable_info deprecated](https://developers.dailymotion.com/changelog/api-enable_info-deprecated.md)