Group Markdown uploads API

  • Tier: Free, Premium, Ultimate
  • Offering: GitLab.com, GitLab Self-Managed, GitLab Dedicated

Markdown uploads are files uploaded to a group that can be referenced in Markdown text in an epic or a wiki page.

List uploads

History

Get all uploads of the group sorted by created_at in descending order.

You must have at least the Maintainer role to use this endpoint.

Copy to clipboard
GET /groups/:id/uploads
AttributeTypeRequiredDescription
idinteger or stringYesThe ID or URL-encoded path of the group.

Example request:

Copy to clipboard
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/groups/5/uploads"

Example response:

Copy to clipboard
[
  {
    "id": 1,
    "size": 1024,
    "filename": "image.png",
    "created_at":"2024-06-20T15:53:03.067Z",
    "uploaded_by": {
      "id": 18,
      "name" : "Alexandra Bashirian",
      "username" : "eileen.lowe"
    }
  },
  {
    "id": 2,
    "size": 512,
    "filename": "other-image.png",
    "created_at":"2024-06-19T15:53:03.067Z",
    "uploaded_by": null
  }
]

Download an uploaded file by ID

History

You must have at least the Maintainer role to use this endpoint.

Copy to clipboard
GET /groups/:id/uploads/:upload_id

Supported attributes:

AttributeTypeRequiredDescription
idinteger or stringYesThe ID or URL-encoded path of the group.
upload_idintegerYesThe ID of the upload.

Example request:

Copy to clipboard
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/groups/5/uploads/1"

If successful, returns 200 and the uploaded file in the response body.

Download an uploaded file by secret and filename

History

You must have at least the Guest role to use this endpoint.

Copy to clipboard
GET /groups/:id/uploads/:secret/:filename

Supported attributes:

AttributeTypeRequiredDescription
idinteger or stringYesThe ID or URL-encoded path of the group.
secretstringYesThe 32-character secret of the upload.
filenamestringYesThe filename of the upload.

Example request:

Copy to clipboard
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/groups/5/uploads/648d97c6eef5fc5df8d1004565b3ee5a/sample.jpg"

If successful, returns 200 and the uploaded file in the response body.

Delete an uploaded file by ID

History

You must have at least the Maintainer role to use this endpoint.

Copy to clipboard
DELETE /groups/:id/uploads/:upload_id

Supported attributes:

AttributeTypeRequiredDescription
idinteger or stringYesThe ID or URL-encoded path of the group.
upload_idintegerYesThe ID of the upload.

Example request:

Copy to clipboard
curl --request DELETE --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/groups/5/uploads/1"

If successful, returns 204 status code without any response body.

Delete an uploaded file by secret and filename

History

You must have at least the Maintainer role to use this endpoint.

Copy to clipboard
DELETE /groups/:id/uploads/:secret/:filename

Supported attributes:

AttributeTypeRequiredDescription
idinteger or stringYesThe ID or URL-encoded path of the group.
secretstringYesThe 32-character secret of the upload.
filenamestringYesThe filename of the upload.

Example request:

Copy to clipboard
curl --request DELETE --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/groups/5/uploads/648d97c6eef5fc5df8d1004565b3ee5a/sample.jpg"

If successful, returns 204 status code without any response body.