---
title: "Create a new Helm package"
method: POST
path: "/packages/{owner}/{repo}/upload/helm/"
tags: ["packages"]
---

# Create a new Helm package

`POST /packages/{owner}/{repo}/upload/helm/`

Create a new Helm package

## Request body

- HelmPackageUploadRequest
  - `package_file` string, required — The primary file for the package.
  - `provenance_file` string, nullable — The provenance file containing the signature for the chart. If one is not provided, it will be generated automatically.
  - `republish` boolean — If true, the uploaded package will overwrite any others with the same attributes (e.g. same version); otherwise, it will be flagged as a duplicate.
  - `tags` string, nullable — A comma-separated values list of tags to add to the package.

## Response `201`

Upload acknowledged and queued for synchronization.

- HelmPackageUpload
  - `architectures` Architecture[]
    - `description` string, nullable
    - `name` string, required
  - `cdn_url` string, nullable
  - `checksum_md5` string
  - `checksum_sha1` string
  - `checksum_sha256` string
  - `checksum_sha512` string
  - `dependencies_checksum_md5` string, nullable — A checksum of all of the package's dependencies.
  - `dependencies_url` string, uri
  - `description` string, nullable — A textual description of this package.
  - `display_name` string
  - `distro` Distribution, nullable — The distributions supported by this package format
    - `name` string, required
    - `self_url` string, uri
    - `slug` string — The slug identifier for this distribution
    - `variants` string, nullable
  - `distro_version` DistributionVersion — A list of the versions for this distribution
    - `name` string — The textual name for this version.
    - `slug` string — The slug identifier for this version
  - `downloads` integer
  - `epoch` integer, nullable — The epoch of the package version (if any).
  - `extension` string
  - `filename` string
  - `files` PackageFile[]
    - `cdn_url` string, nullable
    - `checksum_md5` string, nullable
    - `checksum_sha1` string, nullable
    - `checksum_sha256` string, nullable
    - `checksum_sha512` string, nullable
    - `downloads` integer
    - `filename` string
    - `is_downloadable` boolean
    - `is_primary` boolean
    - `is_synchronised` boolean
    - `signature_url` string, nullable
    - `size` integer — The calculated size of the file.
    - `slug_perm` string, slug
    - `tag` string, nullable — Freeform descriptor that describes what the file is.
  - `format` string
  - `format_url` string, uri
  - `freeable_storage` integer — Amount of storage that will be freed if this package is deleted
  - `fully_qualified_name` string, nullable
  - `identifier_perm` string — Unique and permanent identifier for the package.
  - `identifiers` object — Return a map of identifier field names and their values.
  - `indexed` boolean
  - `is_cancellable` boolean
  - `is_copyable` boolean
  - `is_deleteable` boolean
  - `is_downloadable` boolean
  - `is_hidden` boolean
  - `is_moveable` boolean
  - `is_quarantinable` boolean
  - `is_quarantined` boolean
  - `is_resyncable` boolean
  - `is_security_scannable` boolean
  - `is_sync_awaiting` boolean
  - `is_sync_completed` boolean
  - `is_sync_failed` boolean
  - `is_sync_in_flight` boolean
  - `is_sync_in_progress` boolean
  - `license` string, nullable — The license of this package.
  - `name` string, nullable — The name of this package.
  - `namespace` string
  - `namespace_url` string, uri
  - `num_files` integer
  - `origin_repository` string
  - `origin_repository_url` string, uri
  - `osi_approved` boolean — Whether the package's SPDX license is OSI-approved.
  - `package_type` 1 | 2 | 3 | 9 — The type of package contents.
  - `policy_violated` boolean — Whether or not the package has violated any policy.
  - `raw_license` string, nullable — The raw license string.
  - `release` string, nullable — The release of the package version (if any).
  - `repository` string
  - `repository_url` string, uri
  - `security_scan_completed_at` string, date-time, nullable — The datetime the security scanning was completed.
  - `security_scan_started_at` string, date-time, nullable — The datetime the security scanning was started.
  - `security_scan_status` 'Awaiting Security Scan' | 'Security Scanning in Progress' | 'Scan Detected Vulnerabilities' | 'Scan Detected No Vulnerabilities' | 'Security Scanning Disabled' | 'Security Scanning Failed' | 'Security Scanning Skipped' | 'Security Scanning Not Supported', nullable
  - `security_scan_status_updated_at` string, date-time, nullable — The datetime the security scanning status was updated.
  - `self_html_url` string
  - `self_url` string, uri
  - `self_webapp_url` string
  - `signature_url` string, nullable
  - `size` integer — The calculated size of the package.
  - `slug` string, slug — The public unique identifier for the package.
  - `slug_perm` string, slug
  - `spdx_license` string, nullable — The SPDX license identifier for this package.
  - `stage` 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 — The synchronisation (in progress) stage of the package.
  - `stage_str` string
  - `stage_updated_at` string, date-time — The datetime the package stage was updated at.
  - `status` 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 — The synchronisation status of the package.
  - `status_reason` string, nullable — A textual description for the synchronous status reason (if any
  - `status_str` string
  - `status_updated_at` string, date-time — The datetime the package status was updated at.
  - `status_url` string, uri
  - `store_path` string, nullable — Absolute store path for the package, including store hash and name.
  - `subtype` string
  - `summary` string, nullable — A one-liner synopsis of this package.
  - `sync_finished_at` string, date-time, nullable — The datetime the package sync was finished at.
  - `sync_progress` integer — Synchronisation progress (from 0-100)
  - `tags_automatic` Tags — All tags on the package, grouped by tag type. This includes immutable tags, but doesn't distinguish them from mutable. To see which tags are immutable specifically, see the tags_immutable field.
  - `tags_immutable` Tags — All tags on the package, grouped by tag type. This includes immutable tags, but doesn't distinguish them from mutable. To see which tags are immutable specifically, see the tags_immutable field.
  - `tags_static` object — All static tags on the package, grouped by context. Static tags are derived from the package's properties at request time and carry a 'context' (rather than a tag type). Includes format-specific badges and the package's architecture, subtype, and extension.
  - `type_display` string
  - `uploaded_at` string, date-time — The date this package was uploaded.
  - `uploader` string
  - `uploader_url` string, uri
  - `version` string, nullable — The raw version for this package.
  - `version_orig` string
  - `vulnerability_scan_results_url` string, uri

## Other responses

- `400` — Request could not be processed (see detail).
- `404` — Namespace (owner) or repository not found
- `422` — Missing or invalid parameters (see detail).

---

[API](https://skmtc.dev/cloudsmith/apis/cloudsmith-api-v1.md) · [All operations](https://skmtc.dev/cloudsmith/apis/cloudsmith-api-v1/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/cloudsmith/cloudsmith-api-v1/revisions/4d7879df9b2f/schema)
