Start a new GitLab Migration

POST /bulk_imports

This feature was introduced in GitLab 14.2.

application/x-www-form-urlencoded

Body Required

  • configuration[url] string Required

    Source GitLab instance URL

  • configuration[access_token] string Required

    Access token to the source GitLab instance

  • entities[source_type] array[string] Required

    Source entity type

    Values are group_entity or project_entity.

  • entities[source_full_path] array[string] Required

    Relative path of the source entity to import

  • entities[destination_namespace] array[string] Required

    Destination namespace for the entity

  • entities[destination_slug] array[string]

    Destination slug for the entity

  • entities[destination_name] array[string]

    Deprecated: Use :destination_slug instead. Destination slug for the entity

  • entities[migrate_projects] array[boolean]

    Indicates group migration should include nested projects

Responses

  • 200 application/json

    Start a new GitLab Migration

    Hide response attributes Show response attributes object
    • id integer(int32)
    • status string

      Values are created, started, finished, timeout, or failed.

    • source_type string
    • created_at string(date-time)
    • updated_at string(date-time)
  • 400

    Bad request

  • 401

    Unauthorized

  • 404

    Not found

  • 422

    Unprocessable entity

  • 503

    Service unavailable

POST /bulk_imports
curl \
 --request POST 'https://www.gitlab.com/api/v4/bulk_imports' \
 --header "Private-Token: $API_KEY" \
 --header "Content-Type: application/x-www-form-urlencoded" \
 --data 'configuration%5Burl%5D=string&configuration%5Baccess_token%5D=string&entities%5Bsource_type%5D=group_entity&entities%5Bsource_full_path%5D=string&entities%5Bdestination_namespace%5D=string&entities%5Bdestination_slug%5D=string&entities%5Bdestination_name%5D=string&entities%5Bmigrate_projects%5D=true'
Response examples (200)
{
  "id": 1,
  "status": "finished",
  "source_type": "gitlab",
  "created_at": "2012-05-28T04:42:42-07:00",
  "updated_at": "2012-05-28T04:42:42-07:00"
}