Back to Gitlabhq

Group Markdown uploads API

doc/api/group_markdown_uploads.md

18.11.25.5 KB
Original Source

{{< details >}}

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

{{< /details >}}

Use this API to manage Markdown uploads that can be referenced in Markdown text in epics or wiki pages.

List all uploads for a group

{{< history >}}

{{< /history >}}

Lists all uploads for a specified group sorted by created_at in descending order.

You must have the Maintainer or Owner role to use this endpoint.

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

Example request:

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

Example response:

json
[
  {
    "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 >}}

{{< /history >}}

Downloads an uploaded file with the specified ID. You must have the Maintainer or Owner role to use this endpoint.

plaintext
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:

shell
curl --header "PRIVATE-TOKEN: <your_access_token>" \
  --url "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 >}}

{{< /history >}}

Downloads an uploaded file with the specified secret and filename. You must have the Guest, Planner, Reporter, Developer, Maintainer, or Owner role to use this endpoint.

plaintext
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:

shell
curl --header "PRIVATE-TOKEN: <your_access_token>" \
  --url "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 >}}

{{< /history >}}

Deletes an uploaded file with the specified ID. You must have the Maintainer or Owner role to use this endpoint.

plaintext
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:

shell
curl --request DELETE \
  --header "PRIVATE-TOKEN: <your_access_token>" \
  --url "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 >}}

{{< /history >}}

Deletes an uploaded file with the specified secret and filename. You must have the Maintainer or Owner role to use this endpoint.

plaintext
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:

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

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