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.

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

Example request:

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

Example response:

[
  {
    "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.

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:

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.

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:

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.

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:

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.

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:

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.