project_import

Import a project from a local archive

Imports a project from a local archive.

post/api/v4/projects/import

Request

  • Base URL
    https://gitlab.com
  • Auth
    none declared

Request body multipart/form-data

pathstring required

The new project path and name

filestring binary required

The project export file to be imported

namestring

The name of the project to be imported. Defaults to the path of the project if not provided.

namespacestring

(deprecated) The ID or path of the namespace to import the project to. Defaults to the current user's namespace.

namespace_idinteger

The ID of the namespace that the project will be imported into. Defaults to the current user's namespace.

namespace_pathstring

The path of the namespace that the project will be imported into. Defaults to the current user's namespace.

overwriteboolean

If there is a project in the same namespace and with the same name overwrite it

override_params[description]string

The description of the project

override_params[build_git_strategy]'fetch' | 'clone'

The Git strategy. Defaults to fetch

override_params[build_timeout]integer

Build timeout

override_params[auto_cancel_pending_pipelines]'disabled' | 'enabled'

Auto-cancel pending pipelines

override_params[ci_config_path]string

The path to CI config file. Defaults to .gitlab-ci.yml

override_params[service_desk_enabled]boolean

Disable or enable the service desk

override_params[issues_enabled]boolean

Flag indication if the issue tracker is enabled

override_params[merge_requests_enabled]boolean

Flag indication if merge requests are enabled

override_params[wiki_enabled]boolean

Flag indication if the wiki is enabled

override_params[jobs_enabled]boolean

Flag indication if jobs are enabled

override_params[snippets_enabled]boolean

Flag indication if snippets are enabled

override_params[issues_access_level]'disabled' | 'private' | 'enabled'

Issues access level. One of disabled, private or enabled

override_params[repository_access_level]'disabled' | 'private' | 'enabled'

Repository access level. One of disabled, private or enabled

override_params[merge_requests_access_level]'disabled' | 'private' | 'enabled'

Merge requests access level. One of disabled, private or enabled

override_params[forking_access_level]'disabled' | 'private' | 'enabled'

Forks access level. One of disabled, private or enabled

override_params[wiki_access_level]'disabled' | 'private' | 'enabled'

Wiki access level. One of disabled, private or enabled

override_params[builds_access_level]'disabled' | 'private' | 'enabled'

Builds access level. One of disabled, private or enabled

override_params[snippets_access_level]'disabled' | 'private' | 'enabled'

Snippets access level. One of disabled, private or enabled

override_params[package_registry_access_level]'disabled' | 'private' | 'enabled' | 'public'

Controls visibility of the package registry. One of disabled, private, enabled or public. private will make the package registry accessible only to project members (reporter role and above). enabled will make the package registry accessible to everyone who has access to the project. public will make the package registry accessible to everyone. disabled will disable the package registry

override_params[pages_access_level]'disabled' | 'private' | 'enabled' | 'public'

Pages access level. One of disabled, private, enabled or public

override_params[analytics_access_level]'disabled' | 'private' | 'enabled'

Analytics access level. One of disabled, private or enabled

override_params[container_registry_access_level]'disabled' | 'private' | 'enabled'

Controls visibility of the container registry. One of disabled, private or enabled. private will make the container registry accessible only to project members (reporter role and above). enabled will make the container registry accessible to everyone who has access to the project. disabled will disable the container registry

override_params[security_and_compliance_access_level]'disabled' | 'private' | 'enabled'

Security and compliance access level. One of disabled, private or enabled

override_params[releases_access_level]'disabled' | 'private' | 'enabled'

Releases access level. One of disabled, private or enabled

override_params[environments_access_level]'disabled' | 'private' | 'enabled'

Environments access level. One of disabled, private or enabled

override_params[feature_flags_access_level]'disabled' | 'private' | 'enabled'

Feature flags access level. One of disabled, private or enabled

override_params[infrastructure_access_level]'disabled' | 'private' | 'enabled'

Infrastructure access level. One of disabled, private or enabled

override_params[monitor_access_level]'disabled' | 'private' | 'enabled'

Monitor access level. One of disabled, private or enabled

override_params[model_experiments_access_level]'disabled' | 'private' | 'enabled'

Model experiments access level. One of disabled, private or enabled

override_params[model_registry_access_level]'disabled' | 'private' | 'enabled'

Model registry access level. One of disabled, private or enabled

override_params[emails_disabled]boolean

Deprecated: Use emails_enabled instead.

override_params[emails_enabled]boolean

Enable email notifications

override_params[show_default_award_emojis]boolean

Show default award emojis

override_params[show_diff_preview_in_email]boolean

Include the code diff preview in merge request notification emails

override_params[warn_about_potentially_unwanted_characters]boolean

Warn about potentially unwanted characters

override_params[enforce_auth_checks_on_uploads]boolean

Enforce auth check on uploads

override_params[shared_runners_enabled]boolean

Flag indication if shared runners are enabled for that project

override_params[group_runners_enabled]boolean

Flag indication if group runners are enabled for that project

override_params[resource_group_default_process_mode]'unordered' | 'oldest_first' | 'newest_first' | 'newest_ready_first'

The process mode of the resource group

override_params[resolve_outdated_diff_discussions]boolean

Automatically resolve merge request diff threads on lines changed with a push

override_params[remove_source_branch_after_merge]boolean

Remove the source branch by default after merge

override_params[packages_enabled]boolean

Deprecated: Use :package_registry_access_level instead. Enable project packages feature

override_params[container_registry_enabled]boolean

Deprecated: Use :container_registry_access_level instead. Flag indication if the container registry is enabled for that project

override_params[container_expiration_policy_attributes][cadence]string

Container expiration policy cadence for recurring job

override_params[container_expiration_policy_attributes][keep_n]integer

Container expiration policy number of images to keep

override_params[container_expiration_policy_attributes][older_than]string

Container expiration policy remove images older than value

override_params[container_expiration_policy_attributes][name_regex]string

Container expiration policy regex for image removal

override_params[container_expiration_policy_attributes][name_regex_keep]string

Container expiration policy regex for image retention

override_params[container_expiration_policy_attributes][enabled]boolean

Flag indication if container expiration policy is enabled

override_params[lfs_enabled]boolean

Flag indication if Git LFS is enabled for that project

override_params[visibility]'private' | 'internal' | 'public'

The visibility of the project.

override_params[public_builds]boolean

Deprecated: Use public_jobs instead.

override_params[public_jobs]boolean

Perform public builds

override_params[request_access_enabled]boolean

Allow users to request member access

override_params[only_allow_merge_if_pipeline_succeeds]boolean

Only allow to merge if builds succeed

override_params[allow_merge_on_skipped_pipeline]boolean

Allow to merge if pipeline is skipped

override_params[only_allow_merge_if_all_discussions_are_resolved]boolean

Only allow to merge if all threads are resolved

override_params[tag_list]string[]

Deprecated: Use :topics instead

override_params[topics]string[]

The list of topics for a project

override_params[avatar]string binary

Avatar image for project

override_params[printing_merge_request_link_enabled]boolean

Show link to create/view merge request when pushing from the command line

override_params[merge_method]'ff' | 'rebase_merge' | 'merge'

The merge method used when merging merge requests

override_params[suggestion_commit_message]string

The commit message used to apply merge request suggestions

override_params[merge_commit_template]string

Template used to create merge commit message

override_params[squash_commit_template]string

Template used to create squash commit message

override_params[issue_branch_template]string

Template used to create a branch from an issue

override_params[auto_devops_enabled]boolean

Flag indication if Auto DevOps is enabled

override_params[auto_devops_deploy_strategy]'continuous' | 'manual' | 'timed_incremental'

Auto Deploy strategy

override_params[autoclose_referenced_issues]boolean

Flag indication if referenced issues auto-closing is enabled

override_params[repository_storage]string

Which storage shard the repository is on. Available only to admins

override_params[squash_option]'never' | 'always' | 'default_on' | 'default_off'

Squash default for project. One of never, always, default_on, or default_off.

override_params[mr_default_target_self]boolean

Merge requests of this forked project targets itself by default

override_params[mr_default_title_template]string

Template used to generate the default merge request title. Maximum 100 characters.

override_params[cicd_catalog_enabled]boolean

Set whether the project is a CI/CD catalog project

override_params[only_allow_merge_if_all_status_checks_passed]boolean

Blocks merge requests from merging unless all status checks have passed

override_params[approvals_before_merge]integer

How many approvers should approve merge request by default

override_params[mirror]boolean

[Deprecated] Enables pull mirroring in a project

override_params[mirror_trigger_builds]boolean

[Deprecated] Pull mirroring triggers builds

override_params[external_authorization_classification_label]string

The classification label for the project

override_params[requirements_access_level]'disabled' | 'private' | 'enabled'

Requirements feature access level. One of disabled, private or enabled

override_params[prevent_merge_without_jira_issue]boolean

Require an associated issue from Jira

override_params[auto_duo_code_review_enabled]boolean

Enable automatic reviews by GitLab Duo on merge requests

override_params[duo_remote_flows_enabled]boolean

Enable GitLab Duo remote flows for this project

override_params[duo_sast_fp_detection_enabled]boolean

Enable GitLab Duo SAST false positive detection for this project

override_params[duo_secret_detection_fp_enabled]boolean

Enable GitLab Duo Secret Detection false positive detection for this project

override_params[duo_dependency_bump_breaking_changes_enabled]boolean

Turn on Agentic Breaking Change Resolution for this project

override_params[duo_sast_vr_workflow_enabled]boolean

Enable GitLab Duo SAST vulnerability resolution workflow for this project

override_params[spp_repository_pipeline_access]boolean

Grant read-only access to security policy configurations for enforcement in linked CI/CD projects

override_params[merge_request_title_regex]string

The regex the Merge Request must adhere to

override_params[merge_request_title_regex_description]string

The description for the regex the Merge Request must adhere to

file.pathstring

Path to locally stored body (generated by Workhorse)

file.namestring

Real filename as send in Content-Disposition (generated by Workhorse)

file.typestring

Real content type as send in Content-Type (generated by Workhorse)

file.sizeinteger

Real size of file (generated by Workhorse)

file.md5string

MD5 checksum of the file (generated by Workhorse)

file.sha1string

SHA1 checksum of the file (generated by Workhorse)

file.sha256string

SHA256 checksum of the file (generated by Workhorse)

file.etagstring

Etag of the file (generated by Workhorse)

file.remote_idstring

Remote_id of the file (generated by Workhorse)

file.remote_urlstring

Remote_url of the file (generated by Workhorse)

Example request

{
  "namespace_id": 1,
  "namespace_path": "new_path/gitlab"
}

Response

Import a project from a local archive

idinteger required
descriptionstring required
namestring required
name_with_namespacestring required
pathstring required
path_with_namespacestring required
created_atstring date-time required
import_statusstring required
import_typestring required
correlation_idstring required
import_errorstring required
statsobject required

Example response

{
  "id": 1,
  "description": "desc",
  "name": "project1",
  "name_with_namespace": "John Doe / project1",
  "path": "project1",
  "path_with_namespace": "namespace1/project1",
  "created_at": "2020-05-07T04:27:17.016Z",
  "import_status": "scheduled",
  "import_type": "gitlab_project",
  "correlation_id": "dfcf583058ed4508e4c7c617bd7f0edd",
  "failed_relations": [
    {
      "id": 1,
      "created_at": "2012-05-28T04:42:42-07:00",
      "exception_class": "StandardError",
      "source": "ImportRepositoryWorker",
      "relation_name": "issues",
      "line_number": 1
    }
  ],
  "import_error": "Error message"
}

Changes

No recorded changes to this operation across all 5 revisions of this API.