Helm API

This is the API documentation for Helm.

caution
This API is used by the Helm-related package clients such as Helm and helm-push, and is generally not meant for manual consumption.

For instructions on how to upload and install Helm packages from the GitLab Package Registry, see the Helm registry documentation.

note
These endpoints do not adhere to the standard API authentication methods. See the Helm registry documentation for details on which headers and token types are supported.

Download a chart index

Introduced in GitLab 14.1.

Download a chart index:

GET projects/:id/packages/helm/:channel/index.yaml
Attribute Type Required Description
id string yes The ID or full path of the project.
channel string yes Helm repository channel.
curl --user <username>:<personal_access_token> \
     "https://gitlab.example.com/api/v4/projects/1/packages/helm/stable/index.yaml"

Write the output to a file:

curl --user <username>:<personal_access_token> \
     "https://gitlab.example.com/api/v4/projects/1/packages/helm/stable/index.yaml" \
     --remote-name

Download a chart

Introduced in GitLab 14.0.

Download a chart:

GET projects/:id/packages/helm/:channel/charts/:file_name.tgz
Attribute Type Required Description
id string yes The ID or full path of the project.
channel string yes Helm repository channel.
file_name string yes Chart filename.
curl --user <username>:<personal_access_token> \
     "https://gitlab.example.com/api/v4/projects/1/packages/helm/stable/charts/mychart.tgz" \
     --remote-name

Upload a chart

Introduced in GitLab 14.1.

Upload a chart:

POST projects/:id/packages/helm/api/:channel/charts
Attribute Type Required Description
id string yes The ID or full path of the project.
channel string yes Helm repository channel.
chart file yes Chart (as multipart/form-data).
curl --request POST \
     --form 'chart=@mychart.tgz' \
     --user <username>:<personal_access_token> \
     "https://gitlab.example.com/api/v4/projects/1/packages/helm/api/stable/charts"