Drupal is a registered trademark of Dries Buytaert
cms 2.1.2 Update released for Drupal core (2.1.2)! drupal 11.1.10 Update released for Drupal core (11.1.10)! drupal 10.5.10 Update released for Drupal core (10.5.10)! drupal 10.4.10 Update released for Drupal core (10.4.10)! drupal 11.2.12 Update released for Drupal core (11.2.12)! drupal 11.3.10 Update released for Drupal core (11.3.10)! drupal 10.6.9 Update released for Drupal core (10.6.9)! drupal 10.6.8 Update released for Drupal core (10.6.8)! drupal 11.3.9 Update released for Drupal core (11.3.9)! drupal 11.3.8 Update released for Drupal core (11.3.8)! drupal 11.3.7 Update released for Drupal core (11.3.7)! drupal 11.2.11 Update released for Drupal core (11.2.11)! drupal 10.6.7 Update released for Drupal core (10.6.7)! drupal 10.5.9 Update released for Drupal core (10.5.9)! cms 2.1.1 Update released for Drupal core (2.1.1)! drupal 11.3.6 Update released for Drupal core (11.3.6)! drupal 10.6.6 Update released for Drupal core (10.6.6)! cms 2.1.0 Update released for Drupal core (2.1.0)! linkit 7.0.15 Minor update available for module linkit (7.0.15). views_data_export 8.x-1.10 Minor update available for module views_data_export (8.x-1.10).

migrate_youtube

1 sites Security covered
View on drupal.org

Migrate Youtube

INTRODUCTION

This module provides a set of two migrate source plugin to migrate Youtube videos and playlists.

REQUIREMENTS

This module requires the following module:

* Migrate - https://www.drupal.org/project/migrate
* Migrate Plus - https://www.drupal.org/project/migrate_plus

RECOMMENDED MODULES

* Migrate Tools - https://www.drupal.org/project/migrate_tools

CONFIGURATION

1. In your local settings.php file, add your Youtube API key as follow:

    $settings['youtube_api_key'] = 'your-own-1234567-API-KEY-here';

Migrating videos

Use the 'migrate_youtube_api_playlist_items' source plugin to retrieve videos,
you can pass any Youtube playlist ID as migrate source.

    source:
      plugin: migrate_youtube_api_playlist_items
      playlist_id: youtube-account-playlist-id

Every youtube account has a main playlist containing all its videos (https://developers.google.com/youtube/v3/docs).

Because of API calls limitations with your key, this source tries to be as
efficient as possible.
Additional calls are needed to retrieve video duration, if needed, set the
contentDetails key to true

    source:
      plugin: migrate_youtube_api_playlist_items
      playlist_id: whatever-playlist-id-here
      contentDetails: true

Then add the duration to your destination as follow

    process:
      ...
      field_duration: duration

See the provided example in migration_examples/youtube_video_to_media.yml

Playlist migration is also available.
Learn more about this module's (source fields, maintenance) in its README.md file.

Activity

Total releases
2
First release
Apr 2026
Latest release
1 month ago
Release cadence
0 days
Stability
100% stable

Releases

Version Type Release date
2.0.0 Stable Apr 2, 2026
1.0.3 Stable Apr 2, 2026