Skip to content

GitLab:PackageRegistry

GitLab Generic Packages Repository

PUT /projects/:id/packages/generic/:package_name/:package_version/:file_name?status=:status

Attribute

Type

Required

Description

id

integer/string

yes

The ID or URL-encoded path of the project.

package_name

string

yes

The package name. It can contain only lowercase letters (a-z), uppercase letter (A-Z), numbers (0-9), dots (.), hyphens (-), or underscores (_).

package_version

string

yes

The package version. The following regex validates this: \A(\.?[\w\+-]+\.?)+\z. You can test your version strings on Rubular.

file_name

string

yes

The filename. It can contain only lowercase letters (a-z), uppercase letter (A-Z), numbers (0-9), dots (.), hyphens (-), or underscores (_).

status

string

no

The package status. It can be default (default) or hidden. Hidden packages do not appear in the UI or package API list endpoints.

select

string

no

The response payload. By default, the response is empty. Valid values are: package_file. package_file returns details of the package file record created by this request.

Example

Example request using a personal access token:

curl --header "PRIVATE-TOKEN: <your_access_token>" \
     --upload-file path/to/file.txt \
     "https://gitlab.example.com/api/v4/projects/24/packages/generic/my_package/0.0.1/file.txt"

Example response without attribute select:

{
  "message":"201 Created"
}

How To Upload Private Python Packages to Gitlab

GitLabCI:Python#How To Upload Private Python Packages to Gitlab 항목 참조.

NPM Deploy

GitLabCI:Npm#NPM Deploy 항목 참조.

See also