---
title: "Import a project from a Git URL"
method: POST
path: "/api/v4/projects/{id}/import/git"
tags: ["project_import"]
---

# Import a project from a Git URL

`POST /api/v4/projects/{id}/import/git`

## Request

- Base URL: `https://gitlab.com`
- URL: `https://gitlab.com/api/v4/projects/{id}/import/git`
- Auth: none declared

Imports a project from a specified Git URL. This feature was introduced in GitLab 18.10.

## Path parameters

- `id` string, required

## Request body

- PostApiV4ProjectsIdImportGit: Import a project from a Git URL
  - `import_url` string, required: The URL from which the project is imported
  - `import_url_user` string: Username for the import URL
  - `import_url_password` string: Password for the import URL

## Response `201`

Import a project from a Git URL

- APIEntitiesProjectImportStatus: API_Entities_ProjectImportStatus model
  - `id` integer, required
  - `description` string, required
  - `name` string, required
  - `name_with_namespace` string, required
  - `path` string, required
  - `path_with_namespace` string, required
  - `created_at` string, date-time, required
  - `import_status` string, required
  - `import_type` string, required
  - `correlation_id` string, required
  - `failed_relations` APIEntitiesProjectImportFailedRelation[], required
    - `id` integer, required
    - `created_at` string, date-time, required
    - `exception_class` string, required
    - `source` string, required
    - `exception_message` string, required
    - `relation_name` string, required
    - `line_number` integer, required
  - `import_error` string, required
  - `stats` object, required

## Other responses

- `400`: Bad request
- `401`: Unauthorized
- `403`: Forbidden
- `404`: Not found
- `409`: Conflict
- `422`: Unprocessable Entity

---

[API](https://skmtc.dev/gitlab/apis/gitlab-api.md) - [All operations](https://skmtc.dev/gitlab/apis/gitlab-api/llms.txt) - [OpenAPI document](https://skmtc.dev/gitlab/apis/gitlab-api/revisions/b234947ef3f2?raw)
