Cloudsmith packages API

The packages API from Cloudsmith — 70 operation(s) for packages.

Operations 71

GET /packages/{owner}/{repo}/ Get a list of all packages associated with repository. #
GET /packages/{owner}/{repo}/groups/ Return a list of Package Groups in a repository. #
POST /packages/{owner}/{repo}/upload/alpine/ Create a new Alpine package #
POST /packages/{owner}/{repo}/upload/cargo/ Create a new Cargo package #
POST /packages/{owner}/{repo}/upload/cocoapods/ Create a new CocoaPods package #
POST /packages/{owner}/{repo}/upload/composer/ Create a new Composer package #
POST /packages/{owner}/{repo}/upload/conan/ Create a new Conan package #
POST /packages/{owner}/{repo}/upload/conda/ Create a new Conda package #
POST /packages/{owner}/{repo}/upload/cran/ Create a new CRAN package #
POST /packages/{owner}/{repo}/upload/dart/ Create a new Dart package #
POST /packages/{owner}/{repo}/upload/deb/ Create a new Debian package #
POST /packages/{owner}/{repo}/upload/docker/ Create a new Docker package #
POST /packages/{owner}/{repo}/upload/generic/ Create a new Generic package #
POST /packages/{owner}/{repo}/upload/go/ Create a new Go package #
POST /packages/{owner}/{repo}/upload/helm/ Create a new Helm package #
POST /packages/{owner}/{repo}/upload/hex/ Create a new Hex package #
POST /packages/{owner}/{repo}/upload/huggingface/ Create a new HuggingFace package #
POST /packages/{owner}/{repo}/upload/luarocks/ Create a new LuaRocks package #
POST /packages/{owner}/{repo}/upload/maven/ Create a new Maven package #
POST /packages/{owner}/{repo}/upload/mcp/ Create a new MCP package #
POST /packages/{owner}/{repo}/upload/npm/ Create a new npm package #
POST /packages/{owner}/{repo}/upload/nuget/ Create a new NuGet package #
POST /packages/{owner}/{repo}/upload/p2/ Create a new P2 package #
POST /packages/{owner}/{repo}/upload/python/ Create a new Python package #
POST /packages/{owner}/{repo}/upload/raw/ Create a new Raw package #
POST /packages/{owner}/{repo}/upload/rpm/ Create a new RedHat package #
POST /packages/{owner}/{repo}/upload/ruby/ Create a new Ruby package #
POST /packages/{owner}/{repo}/upload/swift/ Create a new Swift package #
POST /packages/{owner}/{repo}/upload/terraform/ Create a new Terraform package #
POST /packages/{owner}/{repo}/upload/vagrant/ Create a new Vagrant package #
POST /packages/{owner}/{repo}/upload/vsx/ Create a new VSX package #
POST /packages/{owner}/{repo}/validate-upload/alpine/ Validate parameters for create Alpine package #
POST /packages/{owner}/{repo}/validate-upload/cargo/ Validate parameters for create Cargo package #
POST /packages/{owner}/{repo}/validate-upload/cocoapods/ Validate parameters for create CocoaPods package #
POST /packages/{owner}/{repo}/validate-upload/composer/ Validate parameters for create Composer package #
POST /packages/{owner}/{repo}/validate-upload/conan/ Validate parameters for create Conan package #
POST /packages/{owner}/{repo}/validate-upload/conda/ Validate parameters for create Conda package #
POST /packages/{owner}/{repo}/validate-upload/cran/ Validate parameters for create CRAN package #
POST /packages/{owner}/{repo}/validate-upload/dart/ Validate parameters for create Dart package #
POST /packages/{owner}/{repo}/validate-upload/deb/ Validate parameters for create Debian package #
POST /packages/{owner}/{repo}/validate-upload/docker/ Validate parameters for create Docker package #
POST /packages/{owner}/{repo}/validate-upload/generic/ Validate parameters for create Generic package #
POST /packages/{owner}/{repo}/validate-upload/go/ Validate parameters for create Go package #
POST /packages/{owner}/{repo}/validate-upload/helm/ Validate parameters for create Helm package #
POST /packages/{owner}/{repo}/validate-upload/hex/ Validate parameters for create Hex package #
POST /packages/{owner}/{repo}/validate-upload/huggingface/ Validate parameters for create HuggingFace package #
POST /packages/{owner}/{repo}/validate-upload/luarocks/ Validate parameters for create LuaRocks package #
POST /packages/{owner}/{repo}/validate-upload/maven/ Validate parameters for create Maven package #
POST /packages/{owner}/{repo}/validate-upload/mcp/ Validate parameters for create MCP package #
POST /packages/{owner}/{repo}/validate-upload/npm/ Validate parameters for create npm package #
POST /packages/{owner}/{repo}/validate-upload/nuget/ Validate parameters for create NuGet package #
POST /packages/{owner}/{repo}/validate-upload/p2/ Validate parameters for create P2 package #
POST /packages/{owner}/{repo}/validate-upload/python/ Validate parameters for create Python package #
POST /packages/{owner}/{repo}/validate-upload/raw/ Validate parameters for create Raw package #
POST /packages/{owner}/{repo}/validate-upload/rpm/ Validate parameters for create RedHat package #
POST /packages/{owner}/{repo}/validate-upload/ruby/ Validate parameters for create Ruby package #
POST /packages/{owner}/{repo}/validate-upload/swift/ Validate parameters for create Swift package #
POST /packages/{owner}/{repo}/validate-upload/terraform/ Validate parameters for create Terraform package #
POST /packages/{owner}/{repo}/validate-upload/vagrant/ Validate parameters for create Vagrant package #
POST /packages/{owner}/{repo}/validate-upload/vsx/ Validate parameters for create VSX package #
GET /packages/{owner}/{repo}/{identifier}/ Get a specific package in a repository. #
DELETE /packages/{owner}/{repo}/{identifier}/ Delete a specific package in a repository. #
POST /packages/{owner}/{repo}/{identifier}/copy/ Copy a package to another repository. #
GET /packages/{owner}/{repo}/{identifier}/dependencies/ Get the list of dependencies for a package. Transitive dependencies are included where supported. #
POST /packages/{owner}/{repo}/{identifier}/move/ Move a package to another repository. #
POST /packages/{owner}/{repo}/{identifier}/quarantine/ Quarantine or release a package. #
POST /packages/{owner}/{repo}/{identifier}/resync/ Schedule a package for resynchronisation. #
POST /packages/{owner}/{repo}/{identifier}/scan/ Schedule a package for scanning. #
GET /packages/{owner}/{repo}/{identifier}/status/ Get the synchronization status for a package. #
POST /packages/{owner}/{repo}/{identifier}/tag/ Add/Replace/Remove tags for a package. #
PATCH /packages/{owner}/{repo}/{identifier}/update-license/ Update the license for a package. #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/cloudsmith-packages-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

cloudsmith-packages-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Cloudsmith API (v1) audit-log Packages API
  description: The API to the Cloudsmith Service
  termsOfService: https://help.cloudsmith.io
  contact:
    name: Cloudsmith Support
    url: https://help.cloudsmith.io
    email: support@cloudsmith.io
  license:
    name: MIT
    url: https://opensource.org/licenses/MIT
  version: v1
servers:
- url: https://api.cloudsmith.io/
security:
- apikey: []
- basic: []
tags:
- name: packages
paths:
  /packages/{owner}/{repo}/:
    parameters:
    - name: owner
      in: path
      required: true
      schema:
        type: string
    - name: repo
      in: path
      required: true
      schema:
        type: string
    get:
      operationId: packages_list
      summary: Get a list of all packages associated with repository.
      description: Get a list of all packages associated with repository.
      parameters:
      - name: page
        in: query
        description: A page number within the paginated result set.
        required: false
        schema:
          type: integer
      - name: page_size
        in: query
        description: Number of results to return per page.
        required: false
        schema:
          type: integer
      - name: query
        in: query
        description: A search term for querying names, filenames, versions, distributions, architectures, formats or statuses of packages.
        required: false
        schema:
          type: string
          default: ''
      - name: sort
        in: query
        description: A field for sorting objects in ascending or descending order.
        required: false
        schema:
          type: string
          default: -date
      responses:
        '200':
          description: Retrieved the list of packages
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Package'
        '400':
          description: Request could not be processed (see detail).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
        '422':
          description: Missing or invalid parameters (see detail).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
      tags:
      - packages
      x-simplified: fields[packages]=stage_str,stage_updated_at,status_reason,status_str,status_updated_at,is_sync_completed,is_sync_failed,is_sync_in_progress,is_copyable,is_deleteable,is_downloadable,is_moveable,is_quarantined,sync_finished_at,sync_progress,distro,distro_version,downloads,cdn_url,filename,format,freeable_storage,license,name,num_files,package_type,policy_violated,repository,security_scan_status,security_scan_completed_at,size,slug,slug_perm,uploaded_at,uploader,version,vulnerability_scan_results_url&fields[distributions]=slug,name
  /packages/{owner}/{repo}/groups/:
    parameters:
    - name: owner
      in: path
      required: true
      schema:
        type: string
    - name: repo
      in: path
      required: true
      schema:
        type: string
    get:
      operationId: packages_groups_list
      summary: Return a list of Package Groups in a repository.
      description: Return a list of Package Groups in a repository.
      parameters:
      - name: page
        in: query
        description: A page number within the paginated result set.
        required: false
        schema:
          type: integer
      - name: page_size
        in: query
        description: Number of results to return per page.
        required: false
        schema:
          type: integer
      - name: group_by
        in: query
        description: 'A field to group packages by. Available options: name, backend_kind.'
        required: false
        schema:
          type: string
          default: name
      - name: hide_subcomponents
        in: query
        description: Whether to hide packages which are subcomponents of another package in the results
        required: false
        schema:
          type: boolean
          default: false
      - name: query
        in: query
        description: A search term for querying names, filenames, versions, distributions, architectures, formats, or statuses of packages.
        required: false
        schema:
          type: string
          default: ''
      - name: sort
        in: query
        description: 'A field for sorting objects in ascending or descending order. Use `-` prefix for descending order (e.g., `-name`). Available options: name, count, num_downloads, size, last_push, backend_kind.'
        required: false
        schema:
          type: string
          default: name
      responses:
        '200':
          description: Retrieved the list of package groups.
          content:
            application/json:
              schema:
                required:
                - results
                type: object
                properties:
                  results:
                    type: array
                    items:
                      $ref: '#/components/schemas/PackageGroup'
        '404':
          description: Owner namespace or repository not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
        '400':
          description: Request could not be processed (see detail).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
        '422':
          description: Missing or invalid parameters (see detail).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
      tags:
      - packages
  /packages/{owner}/{repo}/upload/alpine/:
    parameters:
    - name: owner
      in: path
      required: true
      schema:
        type: string
    - name: repo
      in: path
      required: true
      schema:
        type: string
    post:
      operationId: packages_upload_alpine
      summary: Create a new Alpine package
      description: Create a new Alpine package
      responses:
        '201':
          description: Upload acknowledged and queued for synchronization.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AlpinePackageUpload'
        '404':
          description: Namespace (owner) or repository not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
        '400':
          description: Request could not be processed (see detail).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
        '422':
          description: Missing or invalid parameters (see detail).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
      tags:
      - packages
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AlpinePackageUploadRequest'
  /packages/{owner}/{repo}/upload/cargo/:
    parameters:
    - name: owner
      in: path
      required: true
      schema:
        type: string
    - name: repo
      in: path
      required: true
      schema:
        type: string
    post:
      operationId: packages_upload_cargo
      summary: Create a new Cargo package
      description: Create a new Cargo package
      responses:
        '201':
          description: Upload acknowledged and queued for synchronization.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CargoPackageUpload'
        '404':
          description: Namespace (owner) or repository not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
        '400':
          description: Request could not be processed (see detail).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
        '422':
          description: Missing or invalid parameters (see detail).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
      tags:
      - packages
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CargoPackageUploadRequest'
  /packages/{owner}/{repo}/upload/cocoapods/:
    parameters:
    - name: owner
      in: path
      required: true
      schema:
        type: string
    - name: repo
      in: path
      required: true
      schema:
        type: string
    post:
      operationId: packages_upload_cocoapods
      summary: Create a new CocoaPods package
      description: Create a new CocoaPods package
      responses:
        '201':
          description: Upload acknowledged and queued for synchronization.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CocoapodsPackageUpload'
        '404':
          description: Namespace (owner) or repository not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
        '400':
          description: Request could not be processed (see detail).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
        '422':
          description: Missing or invalid parameters (see detail).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
      tags:
      - packages
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CocoapodsPackageUploadRequest'
  /packages/{owner}/{repo}/upload/composer/:
    parameters:
    - name: owner
      in: path
      required: true
      schema:
        type: string
    - name: repo
      in: path
      required: true
      schema:
        type: string
    post:
      operationId: packages_upload_composer
      summary: Create a new Composer package
      description: Create a new Composer package
      responses:
        '201':
          description: Upload acknowledged and queued for synchronization.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ComposerPackageUpload'
        '404':
          description: Namespace (owner) or repository not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
        '400':
          description: Request could not be processed (see detail).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
        '422':
          description: Missing or invalid parameters (see detail).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
      tags:
      - packages
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ComposerPackageUploadRequest'
  /packages/{owner}/{repo}/upload/conan/:
    parameters:
    - name: owner
      in: path
      required: true
      schema:
        type: string
    - name: repo
      in: path
      required: true
      schema:
        type: string
    post:
      operationId: packages_upload_conan
      summary: Create a new Conan package
      description: Create a new Conan package
      responses:
        '201':
          description: Upload acknowledged and queued for synchronization.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConanPackageUpload'
        '404':
          description: Namespace (owner) or repository not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
        '400':
          description: Request could not be processed (see detail).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
        '422':
          description: Missing or invalid parameters (see detail).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
      tags:
      - packages
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConanPackageUploadRequest'
  /packages/{owner}/{repo}/upload/conda/:
    parameters:
    - name: owner
      in: path
      required: true
      schema:
        type: string
    - name: repo
      in: path
      required: true
      schema:
        type: string
    post:
      operationId: packages_upload_conda
      summary: Create a new Conda package
      description: Create a new Conda package
      responses:
        '201':
          description: Upload acknowledged and queued for synchronization.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CondaPackageUpload'
        '404':
          description: Namespace (owner) or repository not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
        '400':
          description: Request could not be processed (see detail).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
        '422':
          description: Missing or invalid parameters (see detail).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
      tags:
      - packages
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CondaPackageUploadRequest'
  /packages/{owner}/{repo}/upload/cran/:
    parameters:
    - name: owner
      in: path
      required: true
      schema:
        type: string
    - name: repo
      in: path
      required: true
      schema:
        type: string
    post:
      operationId: packages_upload_cran
      summary: Create a new CRAN package
      description: Create a new CRAN package
      responses:
        '201':
          description: Upload acknowledged and queued for synchronization.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CranPackageUpload'
        '404':
          description: Namespace (owner) or repository not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
        '400':
          description: Request could not be processed (see detail).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
        '422':
          description: Missing or invalid parameters (see detail).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
      tags:
      - packages
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CranPackageUploadRequest'
  /packages/{owner}/{repo}/upload/dart/:
    parameters:
    - name: owner
      in: path
      required: true
      schema:
        type: string
    - name: repo
      in: path
      required: true
      schema:
        type: string
    post:
      operationId: packages_upload_dart
      summary: Create a new Dart package
      description: Create a new Dart package
      responses:
        '201':
          description: Upload acknowledged and queued for synchronization.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DartPackageUpload'
        '404':
          description: Namespace (owner) or repository not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
        '400':
          description: Request could not be processed (see detail).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
        '422':
          description: Missing or invalid parameters (see detail).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
      tags:
      - packages
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DartPackageUploadRequest'
  /packages/{owner}/{repo}/upload/deb/:
    parameters:
    - name: owner
      in: path
      required: true
      schema:
        type: string
    - name: repo
      in: path
      required: true
      schema:
        type: string
    post:
      operationId: packages_upload_deb
      summary: Create a new Debian package
      description: Create a new Debian package
      responses:
        '201':
          description: Upload acknowledged and queued for synchronization.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DebPackageUpload'
        '404':
          description: Namespace (owner) or repository not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
        '400':
          description: Request could not be processed (see detail).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
        '422':
          description: Missing or invalid parameters (see detail).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
      tags:
      - packages
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DebPackageUploadRequest'
  /packages/{owner}/{repo}/upload/docker/:
    parameters:
    - name: owner
      in: path
      required: true
      schema:
        type: string
    - name: repo
      in: path
      required: true
      schema:
        type: string
    post:
      operationId: packages_upload_docker
      summary: Create a new Docker package
      description: Create a new Docker package
      responses:
        '201':
          description: Upload acknowledged and queued for synchronization.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DockerPackageUpload'
        '404':
          description: Namespace (owner) or repository not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
        '400':
          description: Request could not be processed (see detail).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
        '422':
          description: Missing or invalid parameters (see detail).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
      tags:
      - packages
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DockerPackageUploadRequest'
  /packages/{owner}/{repo}/upload/generic/:
    parameters:
    - name: owner
      in: path
      required: true
      schema:
        type: string
    - name: repo
      in: path
      required: true
      schema:
        type: string
    post:
      operationId: packages_upload_generic
      summary: Create a new Generic package
      description: Create a new Generic package
      responses:
        '201':
          description: Upload acknowledged and queued for synchronization.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GenericPackageUpload'
        '404':
          description: Namespace (owner) or repository not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
        '400':
          description: Request could not be processed (see detail).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
        '422':
          description: Missing or invalid parameters (see detail).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
      tags:
      - packages
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GenericPackageUploadRequest'
  /packages/{owner}/{repo}/upload/go/:
    parameters:
    - name: owner
      in: path
      required: true
      schema:
        type: string
    - name: repo
      in: path
      required: true
      schema:
        type: string
    post:
      operationId: packages_upload_go
      summary: Create a new Go package
      description: Create a new Go package
      responses:
        '201':
          description: Upload acknowledged and queued for synchronization.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GoPackageUpload'
        '404':
          description: Namespace (owner) or repository not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
        '400':
          description: Request could not be processed (see detail).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
        '422':
          description: Missing or invalid parameters (see detail).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
      tags:
      - packages
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GoPackageUploadRequest'
  /packages/{owner}/{repo}/upload/helm/:
    parameters:
    - name: owner
      in: path
      required: true
      schema:
        type: string
    - name: repo
      in: path
      required: true
      schema:
        type: string
    post:
      operationId: packages_upload_helm
      summary: Create a new Helm package
      description: Create a new Helm package
      responses:
        '201':
          description: Upload acknowledged and queued for synchronization.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HelmPackageUpload'
        '404':
          description: Namespace (owner) or repository not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
        '400':
          description: Request could not be processed (see detail).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
        '422':
          description: Missing or invalid parameters (see detail).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
      tags:
      - packages
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/HelmPackageUploadRequest'
  /packages/{owner}/{repo}/upload/hex/:
    parameters:
    - name: owner
      in: path
      required: true
      schema:
        type: string
    - name: repo
      in: path
      required: true
      schema:
        type: string
    post:
      operationId: packages_upload_hex
      summary: Create a new Hex package
      description: Create a new Hex package
      responses:
        '201':
          description: Upload acknowledged and queued for synchronization.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HexPackageUpload'
        '404':
          description: Namespace (owner) or repository not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
        '400':
          description: Request could not be processed (see detail).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
        '422':
          description: Missing or invalid parameters (see detail).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
      tags:
      - packages
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/HexPackageUploadRequest'
  /packages/{owner}/{repo}/upload/huggingface/:
    parameters:
    - name: owner
      in: path
      required: true
      schema:
        type: string
    - name: repo
      in: path
      required: true
      schema:
        type: string
    post:
      operationId: packages_upload_huggingface
      summary: Create a new HuggingFace package
      description: Create a new HuggingFace package
      responses:
        '201':
          description: Upload acknowledged and queued for synchronization.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HuggingfacePackageUpload'
        '404':
          description: Namespace (owner) or repository not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
        '400':
          description: Request could not be processed (see detail).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
        '422':
          description: Missing or invalid parameters (see detail).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
      tags:
      - packages
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/HuggingfacePackageUploadRequest'
  /packages/{owner}/{repo}/upload/luarocks/:
    parameters:
    - name: owner
      in: path
      required: true
      schema:
        type: string
    - name: repo
      in: path
      required: true
      schema:
        type: string
    post:
      operationId: packages_upload_luarocks
      summary: Create a new LuaRocks package
      description: Create a new LuaRocks package
      responses:
        '201':
          description: Upload acknowledged and queued for synchronization.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LuarocksPackageUpload'
        '404':
          description: Namespace (owner) or repository not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
        '400':
          description: Request could not be processed (see detail).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
        '422':
          description: Missing or invalid parameters (see detail).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
      tags:
      - packages
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/LuarocksPackageUploadRequest'
  /packages/{owner}/{repo}/upload/maven/:
    parameters:
    - name: owner
      in: path
      required: true
      schema:
        type: string
    - name: repo
      in: path
      required: true
      schema:
        type: string
    post:
      operationId: packages_upload_maven
      summary: Create a new Maven package
      description: Create a new Maven package
      responses:
        '201':
          description: Upload acknowledged and queued for synchronization.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MavenPackageUpload'
        '404':
          description: Namespace (owner) or repository not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
        '400':
          description: Request could not be processed (see detail).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
        '422':
          description: Missing or invalid parameters (see detail).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
      tags:
      - packages
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MavenPackageUploadRequest'
  /packages/{owner}/{repo}/upload/mcp/:
    parameters:
    - name: owner
      in: path
      required: true
      schema:
        type: string
    - name: repo
      in: path
      required: true
      schema:
        type: string
    post:
      operationId: packages_upload_mcp
      summary: Create a new MCP package
      description: Create a new MCP package
      responses:
        '201':
          description: Upload acknowledged and queued for synchronization.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/McpPackageUpload'
        '404':
          description: Namespace (owner) or repository not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
        '400':
          description: Request could not be processed (see detail).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
        '422':
          description: Missing or invalid parameters (see detail).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
      tags:
      - packages
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/McpPackageUploadRequest'
  /packages/{owner}/{repo}/upload/npm/:
    parameters:
    - name: owner
      in: path
      required: true
      schema:
        type: string
    - name: repo
      in: path
      required: true
      schema:
        type: string
    post:
      operationId: packages_upload_npm
      summary: Create a new npm package
      description: Create a new npm package
      responses:
        '201':
          description: Upload acknowledged and queued for synchronization.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NpmPackageUpload'
        '404':
          description: Namespace (owner) or repository not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
        '400':
          description: Request could not be processed (see detail).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDetail'
        '422':
          description: Missing or invalid parameters (see detail).
          content:
            application/jso

# --- truncated at 32 KB (568 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/cloudsmith/refs/heads/main/openapi/cloudsmith-packages-api-openapi.yml