and though bugs are the bane of my existence, rest assured the wretched thing will get the best of care here

Project Aliases API (PREMIUM SELF)

Introduced in GitLab Premium 12.1.

All methods require administrator authorization.

List all project aliases

Get a list of all project aliases:

GET /project_aliases
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/project_aliases"

Example response:

[
  {
    "id": 1,
    "project_id": 1,
    "name": "gitlab-foss"
  },
  {
    "id": 2,
    "project_id": 2,
    "name": "gitlab"
  }
]

Get project alias' details

Get details of a project alias:

GET /project_aliases/:name
Attribute Type Required Description
name string yes The name of the alias
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/project_aliases/gitlab"

Example response:

{
  "id": 1,
  "project_id": 1,
  "name": "gitlab"
}

Create a project alias

Add a new alias for a project. Responds with a 201 when successful, 400 when there are validation errors (e.g. alias already exists):

POST /project_aliases
Attribute Type Required Description
project_id integer/string yes The ID or path of the project.
name string yes The name of the alias. Must be unique.
curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/project_aliases" --form "project_id=1" --form "name=gitlab"

or

curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/project_aliases" --form "project_id=gitlab-org/gitlab" --form "name=gitlab"

Example response:

{
  "id": 1,
  "project_id": 1,
  "name": "gitlab"
}

Delete a project alias

Removes a project aliases. Responds with a 204 when project alias exists, 404 when it doesn't:

DELETE /project_aliases/:name
Attribute Type Required Description
name string yes The name of the alias
curl --request DELETE --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/project_aliases/gitlab"