The Drupal Migrate API and related tools are used to import data such as content, users, and configuration values into Drupal. The system consists of three core modules: Migrate, Migrate Drupal, and Migrate Drupal UI. A growing number of contributed modules also aid in writing and executing a migration. In Drupal 7 the migration API is provided by the Migrate contributed module.
As a developer you'll use the Migrate API in Drupal 9 to write migration plugins that extract data from a defined source, transform it to match with your Drupal data model, and then load it into Drupal via the Entity or Config APIs. You'll then use one or more contributed modules to execute, rollback, and debug your data migration.
- Import data from a CSV file, MySQL database, or other source into Drupal
- Migrate from WordPress or another CMS to Drupal
- Provide an update path for users of your module when porting it to Drupal 9
As of Drupal 8.5.x the core Migrate API is considered stable and no major backwards compatibility breaking changes are expected. If you're writing custom migrations, you're good to go. Resources labeled for Drupal 8 should apply to Drupal 9.
Our extensive migration guide covers everything you need to know to get started writing, executing, and debugging Drupal migrations. We recommend the following starting points: