Documentation
Documentation
https://docs.gitlab.com/api/
APIReference
https://docs.gitlab.com/api/api_resources/
Authentication
https://docs.gitlab.com/api/rest/authentication/
swagger: '2.0'
info:
title: GitLab access_requests packages API
version: v4
description: Operations related to access requests
host: gitlab.com
produces:
- application/json
tags:
- name: packages
description: Operations about packages
paths:
/api/v4/groups/{id}/-/packages/debian/dists/*distribution/Release.gpg:
get:
summary: The Release file signature
description: This feature was introduced in GitLab 13.5
produces:
- application/json
parameters:
- in: path
name: id
description: The group ID or full group path.
type: string
required: true
- in: query
name: distribution
description: The Debian Codename or Suite
type: string
required: true
example: my-distro
responses:
'200':
description: The Release file signature
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
tags:
- packages
operationId: getApiV4GroupsIdPackagesDebianDists*distributionReleaseGpg
/api/v4/groups/{id}/-/packages/debian/dists/*distribution/Release:
get:
summary: The unsigned Release file
description: This feature was introduced in GitLab 13.5
produces:
- application/json
parameters:
- in: path
name: id
description: The group ID or full group path.
type: string
required: true
- in: query
name: distribution
description: The Debian Codename or Suite
type: string
required: true
example: my-distro
responses:
'200':
description: The unsigned Release file
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
tags:
- packages
operationId: getApiV4GroupsIdPackagesDebianDists*distributionRelease
/api/v4/groups/{id}/-/packages/debian/dists/*distribution/InRelease:
get:
summary: The signed Release file
description: This feature was introduced in GitLab 13.5
produces:
- application/json
parameters:
- in: path
name: id
description: The group ID or full group path.
type: string
required: true
- in: query
name: distribution
description: The Debian Codename or Suite
type: string
required: true
example: my-distro
responses:
'200':
description: The signed Release file
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
tags:
- packages
operationId: getApiV4GroupsIdPackagesDebianDists*distributionInrelease
/api/v4/groups/{id}/-/packages/debian/dists/*distribution/{component}/debian-installer/binary-{architecture}/Packages:
get:
summary: The installer (udeb) binary files index
description: This feature was introduced in GitLab 15.4
produces:
- application/json
parameters:
- in: path
name: id
description: The group ID or full group path.
type: string
required: true
- in: query
name: distribution
description: The Debian Codename or Suite
type: string
required: true
example: my-distro
- in: path
name: component
description: The Debian Component
type: string
required: true
example: main
- in: path
name: architecture
description: The Debian Architecture
type: string
required: true
example: binary-amd64
responses:
'200':
description: The installer (udeb) binary files index
'202':
description: The installer (udeb) binary files index
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
tags:
- packages
operationId: getApiV4GroupsIdPackagesDebianDists*distributionComponentDebianInstallerBinaryArchitecturePackages
? /api/v4/groups/{id}/-/packages/debian/dists/*distribution/{component}/debian-installer/binary-{architecture}/by-hash/SHA256/{file_sha256}
: get:
summary: The installer (udeb) binary files index by hash
description: This feature was introduced in GitLab 15.4
produces:
- application/json
parameters:
- in: path
name: id
description: The group ID or full group path.
type: string
required: true
- in: query
name: distribution
description: The Debian Codename or Suite
type: string
required: true
example: my-distro
- in: path
name: component
description: The Debian Component
type: string
required: true
example: main
- in: path
name: architecture
description: The Debian Architecture
type: string
required: true
example: binary-amd64
- in: path
name: file_sha256
type: integer
format: int32
required: true
responses:
'200':
description: The installer (udeb) binary files index by hash
'202':
description: The installer (udeb) binary files index by hash
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
tags:
- packages
operationId: getApiV4GroupsIdPackagesDebianDists*distributionComponentDebianInstallerBinaryArchitectureByHashSha256FileSha256
/api/v4/groups/{id}/-/packages/debian/dists/*distribution/{component}/source/Sources:
get:
summary: The source files index
description: This feature was introduced in GitLab 15.4
produces:
- application/json
parameters:
- in: path
name: id
description: The group ID or full group path.
type: string
required: true
- in: query
name: distribution
description: The Debian Codename or Suite
type: string
required: true
example: my-distro
- in: path
name: component
description: The Debian Component
type: string
required: true
example: main
responses:
'200':
description: The source files index
'202':
description: The source files index
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
tags:
- packages
operationId: getApiV4GroupsIdPackagesDebianDists*distributionComponentSourceSources
/api/v4/groups/{id}/-/packages/debian/dists/*distribution/{component}/source/by-hash/SHA256/{file_sha256}:
get:
summary: The source files index by hash
description: This feature was introduced in GitLab 15.4
produces:
- application/json
parameters:
- in: path
name: id
description: The group ID or full group path.
type: string
required: true
- in: query
name: distribution
description: The Debian Codename or Suite
type: string
required: true
example: my-distro
- in: path
name: component
description: The Debian Component
type: string
required: true
example: main
- in: path
name: file_sha256
type: integer
format: int32
required: true
responses:
'200':
description: The source files index by hash
'202':
description: The source files index by hash
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
tags:
- packages
operationId: getApiV4GroupsIdPackagesDebianDists*distributionComponentSourceByHashSha256FileSha256
/api/v4/groups/{id}/-/packages/debian/dists/*distribution/{component}/binary-{architecture}/Packages:
get:
summary: The binary files index
description: This feature was introduced in GitLab 13.5
produces:
- application/json
parameters:
- in: path
name: id
description: The group ID or full group path.
type: string
required: true
- in: query
name: distribution
description: The Debian Codename or Suite
type: string
required: true
example: my-distro
- in: path
name: component
description: The Debian Component
type: string
required: true
example: main
- in: path
name: architecture
description: The Debian Architecture
type: string
required: true
example: binary-amd64
responses:
'200':
description: The binary files index
'202':
description: The binary files index
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
tags:
- packages
operationId: getApiV4GroupsIdPackagesDebianDists*distributionComponentBinaryArchitecturePackages
/api/v4/groups/{id}/-/packages/debian/dists/*distribution/{component}/binary-{architecture}/by-hash/SHA256/{file_sha256}:
get:
summary: The binary files index by hash
description: This feature was introduced in GitLab 15.4
produces:
- application/json
parameters:
- in: path
name: id
description: The group ID or full group path.
type: string
required: true
- in: query
name: distribution
description: The Debian Codename or Suite
type: string
required: true
example: my-distro
- in: path
name: component
description: The Debian Component
type: string
required: true
example: main
- in: path
name: architecture
description: The Debian Architecture
type: string
required: true
example: binary-amd64
- in: path
name: file_sha256
type: integer
format: int32
required: true
responses:
'200':
description: The binary files index by hash
'202':
description: The binary files index by hash
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
tags:
- packages
operationId: getApiV4GroupsIdPackagesDebianDists*distributionComponentBinaryArchitectureByHashSha256FileSha256
? /api/v4/groups/{id}/-/packages/debian/pool/{distribution}/{project_id}/{letter}/{package_name}/{package_version}/{file_name}
: get:
summary: Download Debian package
description: This feature was introduced in GitLab 14.2
produces:
- application/json
parameters:
- in: path
name: id
description: The group ID or full group path.
type: string
required: true
- in: path
name: project_id
description: The Project Id
type: integer
format: int32
required: true
- in: path
name: distribution
description: The Debian Codename or Suite
type: string
required: true
example: my-distro
- in: path
name: letter
description: The Debian Classification (first-letter or lib-first-letter)
type: string
required: true
example: a
- in: path
name: package_name
description: The Debian Source Package Name
type: string
required: true
example: my-pkg
- in: path
name: package_version
description: The Debian Source Package Version
type: string
required: true
example: 1.0.0
- in: path
name: file_name
description: The Debian File Name
type: string
required: true
example: example_1.0.0~alpha2_amd64.deb
responses:
'200':
description: Download Debian package
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
tags:
- packages
operationId: getApiV4GroupsIdPackagesDebianPoolDistributionProjectIdLetterPackageNamePackageVersionFileName
/api/v4/groups/{id}/-/debian_distributions:
post:
summary: Create a Debian Distribution
description: This feature was introduced in 14.0
produces:
- application/json
consumes:
- application/json
parameters:
- in: path
name: id
description: The ID or URL-encoded path of the group
type: string
required: true
- name: postApiV4GroupsIdDebianDistributions
in: body
required: true
schema:
$ref: '#/definitions/postApiV4GroupsIdDebianDistributions'
responses:
'201':
description: Create a Debian Distribution
schema:
$ref: '#/definitions/API_Entities_Packages_Debian_Distribution'
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
tags:
- packages
operationId: postApiV4GroupsIdDebianDistributions
get:
summary: Get a list of Debian Distributions
description: This feature was introduced in 14.0
produces:
- application/json
parameters:
- in: path
name: id
description: The ID or URL-encoded path of the group
type: string
required: true
- in: query
name: page
description: Current page number
type: integer
format: int32
default: 1
required: false
example: 1
- in: query
name: per_page
description: Number of items per page
type: integer
format: int32
default: 20
required: false
example: 20
- in: query
name: codename
description: The Debian Codename
type: string
required: false
example: sid
- in: query
name: suite
description: The Debian Suite
type: string
required: false
example: unstable
- in: query
name: origin
description: The Debian Origin
type: string
required: false
example: Grep
- in: query
name: label
description: The Debian Label
type: string
required: false
example: grep.be
- in: query
name: version
description: The Debian Version
type: string
required: false
example: '12'
- in: query
name: description
description: The Debian Description
type: string
required: false
example: My description
- in: query
name: valid_time_duration_seconds
description: The duration before the Release file should be considered expired by the client
type: integer
format: int32
required: false
example: 604800
- in: query
name: components
description: The list of Components
type: array
items:
type: string
required: false
example: main
- in: query
name: architectures
description: The list of Architectures
type: array
items:
type: string
required: false
example: amd64
responses:
'200':
description: Get a list of Debian Distributions
schema:
$ref: '#/definitions/API_Entities_Packages_Debian_Distribution'
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
tags:
- packages
operationId: getApiV4GroupsIdDebianDistributions
/api/v4/groups/{id}/-/debian_distributions/{codename}:
get:
summary: Get a Debian Distribution
description: This feature was introduced in 14.0
produces:
- application/json
parameters:
- in: path
name: id
description: The ID or URL-encoded path of the group
type: string
required: true
- in: path
name: codename
description: The Debian Codename
type: string
required: true
example: sid
responses:
'200':
description: Get a Debian Distribution
schema:
$ref: '#/definitions/API_Entities_Packages_Debian_Distribution'
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
tags:
- packages
operationId: getApiV4GroupsIdDebianDistributionsCodename
put:
summary: Update a Debian Distribution
description: This feature was introduced in 14.0
produces:
- application/json
consumes:
- application/json
parameters:
- in: path
name: id
description: The ID or URL-encoded path of the group
type: string
required: true
- in: path
name: codename
description: The Debian Codename
type: string
required: true
example: sid
- name: putApiV4GroupsIdDebianDistributionsCodename
in: body
required: true
schema:
$ref: '#/definitions/putApiV4GroupsIdDebianDistributionsCodename'
responses:
'200':
description: Update a Debian Distribution
schema:
$ref: '#/definitions/API_Entities_Packages_Debian_Distribution'
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
tags:
- packages
operationId: putApiV4GroupsIdDebianDistributionsCodename
delete:
summary: Delete a Debian Distribution
description: This feature was introduced in 14.0
produces:
- application/json
parameters:
- in: path
name: id
description: The ID or URL-encoded path of the group
type: string
required: true
- in: path
name: codename
description: The Debian Codename
type: string
required: true
example: sid
- in: query
name: suite
description: The Debian Suite
type: string
required: false
example: unstable
- in: query
name: origin
description: The Debian Origin
type: string
required: false
example: Grep
- in: query
name: label
description: The Debian Label
type: string
required: false
example: grep.be
- in: query
name: version
description: The Debian Version
type: string
required: false
example: '12'
- in: query
name: description
description: The Debian Description
type: string
required: false
example: My description
- in: query
name: valid_time_duration_seconds
description: The duration before the Release file should be considered expired by the client
type: integer
format: int32
required: false
example: 604800
- in: query
name: components
description: The list of Components
type: array
items:
type: string
required: false
example: main
- in: query
name: architectures
description: The list of Architectures
type: array
items:
type: string
required: false
example: amd64
responses:
'202':
description: Delete a Debian Distribution
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
tags:
- packages
operationId: deleteApiV4GroupsIdDebianDistributionsCodename
/api/v4/groups/{id}/-/debian_distributions/{codename}/key.asc:
get:
summary: Get a Debian Distribution Key
description: This feature was introduced in 14.4
produces:
- application/json
parameters:
- in: path
name: id
description: The ID or URL-encoded path of the group
type: string
required: true
- in: path
name: codename
description: The Debian Codename
type: string
required: true
example: sid
responses:
'200':
description: Get a Debian Distribution Key
schema:
$ref: '#/definitions/API_Entities_Packages_Debian_Distribution'
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
tags:
- packages
operationId: getApiV4GroupsIdDebianDistributionsCodenameKeyAsc
/api/v4/groups/{id}/packages:
get:
summary: List packages within a group
description: Get a list of project packages at the group level. This feature was introduced in GitLab 12.5
produces:
- application/json
parameters:
- in: path
name: id
description: ID or URL-encoded path of the group
type: string
required: true
- in: query
name: exclude_subgroups
description: Determines if subgroups should be excluded
type: boolean
default: false
required: false
- in: query
name: page
description: Current page number
type: integer
format: int32
default: 1
required: false
example: 1
- in: query
name: per_page
description: Number of items per page
type: integer
format: int32
default: 20
required: false
example: 20
- in: query
name: order_by
description: Return packages ordered by `created_at`, `name`, `version` or `type` fields.
type: string
default: created_at
enum:
- created_at
- name
- version
- type
- project_path
required: false
- in: query
name: sort
description: Return packages sorted in `asc` or `desc` order.
type: string
default: asc
enum:
- asc
- desc
required: false
- in: query
name: package_type
description: Return packages of a certain type
type: string
enum:
- maven
- npm
- conan
- nuget
- pypi
- composer
- generic
- golang
- debian
- rubygems
- helm
- terraform_module
- rpm
- ml_model
- cargo
required: false
- in: query
name: package_name
description: Return packages with this name
type: string
required: false
- in: query
name: package_version
description: Return packages with this version
type: string
required: false
- in: query
name: include_versionless
description: Returns packages without a version
type: boolean
required: false
- in: query
name: status
description: Return packages with specified status
type: string
enum:
- default
- hidden
- processing
- error
- pending_destruction
- deprecated
required: false
responses:
'200':
description: List packages within a group
schema:
type: array
items:
$ref: '#/definitions/API_Entities_Package'
'401':
description: Unauthorized
'404':
description: Group Not Found
tags:
- packages
operationId: getApiV4GroupsIdPackages
/api/v4/groups/{id}/-/packages/maven/*path/{file_name}:
get:
summary: Download the maven package file at a group level
description: This feature was introduced in GitLab 11.7
produces:
- application/json
parameters:
- in: path
name: id
description: The ID or URL-encoded path of the group
type: string
required: true
- in: query
name: path
description: Package path
type: string
required: true
example: foo/bar/mypkg/1.0-SNAPSHOT
- in: path
name: file_name
description: Package file name
type: string
required: true
example: mypkg-1.0-SNAPSHOT.jar
responses:
'200':
description: Download the maven package file at a group level
'302':
description: Download the maven package file at a group level
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
tags:
- packages
operationId: getApiV4GroupsIdPackagesMaven*pathFileName
/api/v4/groups/{id}/-/packages/npm/-/package/*package_name/dist-tags:
get:
summary: Get all tags for a given an NPM package
description: This feature was introduced in GitLab 12.7
produces:
- application/json
parameters:
- in: path
name: id
description: The ID or URL-encoded path of the group
type: string
required: true
- in: query
name: package_name
description: Package name
type: string
required: true
responses:
'200':
description: Get all tags for a given an NPM package
schema:
$ref: '#/definitions/API_Entities_NpmPackageTag'
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
tags:
- packages
operationId: getApiV4GroupsIdPackagesNpmPackage*packageNameDistTags
/api/v4/groups/{id}/-/packages/npm/-/package/*package_name/dist-tags/{tag}:
put:
summary: Create or Update the given tag for the given NPM package and version
description: This feature was introduced in GitLab 12.7
produces:
- application/json
consumes:
- application/json
parameters:
- in: path
name: id
description: The ID or URL-encoded path of the group
type: string
required: true
- in: path
name: tag
description: Package dist-tag
type: string
required: true
- name: putApiV4GroupsIdPackagesNpmPackage*packageNameDistTagsTag
in: body
required: true
schema:
$ref: '#/definitions/putApiV4GroupsIdPackagesNpmPackage*packageNameDistTagsTag'
responses:
'204':
description: Create or Update the given tag for the given NPM package and version
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
tags:
- packages
operationId: putApiV4GroupsIdPackagesNpmPackage*packageNameDistTagsTag
delete:
summary: Deletes the given tag
description: This feature was introduced in GitLab 12.7
produces:
- application/json
parameters:
- in: path
name: id
description: The ID or URL-encoded path of the group
type: string
required: true
- in: query
name: package_name
description: Package name
type: string
required: true
- in: path
name: tag
description: Package dist-tag
type: string
required: true
responses:
'204':
description: Deletes the given tag
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
tags:
- packages
operationId: deleteApiV4GroupsIdPackagesNpmPackage*packageNameDistTagsTag
/api/v4/groups/{id}/-/packages/npm/-/npm/v1/security/advisories/bulk:
post:
summary: NPM registry bulk advisory endpoint
description: This feature was introduced in GitLab 15.6
produces:
- application/json
consumes:
- application/json
parameters:
- in: path
name: id
description: The ID or URL-encoded path of the group
type: string
required: true
responses:
'200':
description: Ok
'307':
description: Temporary Redirect
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
tags:
- packages
operationId: postApiV4GroupsIdPackagesNpmNpmV1SecurityAdvisoriesBulk
/api/v4/groups/{id}/-/packages/npm/-/npm/v1/security/audits/quick:
post:
summary: NPM registry quick audit endpoint
description: This feature was introduced in GitLab 15.6
produces:
- application/json
consumes:
- application/json
parameters:
- in: path
name: id
description: The ID or URL-encoded path of the group
type: string
required: true
responses:
'200':
description: Ok
'307':
description: Temporary Redirect
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
tags:
- packages
operationId: postApiV4GroupsIdPackagesNpmNpmV1SecurityAuditsQuick
/api/v4/groups/{id}/-/packages/npm/*package_name:
get:
summary: NPM registry metadata endpoint
description: This feature was introduced in GitLab 11.8
produces:
- application/json
parameters:
- in: path
name: id
description: The ID or URL-encoded path of the group
type: string
required: true
- in: query
name: package_name
description: Package name
type: string
required: true
example: mypackage
responses:
'200':
description: Ok
schema:
$ref: '#/definitions/API_Entities_NpmPackage'
'302':
description: Found (redirect)
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'404':
description: Not Found
tags:
- packages
operationId: getApiV4GroupsIdPackagesNpm*packageName
/api/v4/groups/{id}/-/packages/nuget/index:
get:
summary: The NuGet V3 Feed Service Index
description: This feature was introduced in GitLab 12.6
produces:
- application/json
parameters:
- in: path
name: id
description: The group ID or full group path.
type: integer
format: int32
required: true
responses:
'200':
description: The NuGet V3 Feed Service Index
schema:
$ref: '#/definitions/API_Entities_Nuget_ServiceIndex'
'404':
description: Not Found
tags:
- packages
operationId: getApiV4GroupsIdPackagesNugetIndex
/api/v4/groups/{id}/-/packages/nuget/symbolfiles/*file_name/*signature/*s
# --- truncated at 32 KB (263 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/gitlab-ci/refs/heads/main/openapi/gitlab-ci-packages-api-openapi.yml