Cloudsmith packages API

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

OpenAPI Specification

cloudsmith-packages-api-openapi.yml Raw ↑
swagger: '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
host: api.cloudsmith.io
basePath: /
schemes:
- https
consumes:
- application/json
produces:
- application/json
security:
- apikey: []
- basic: []
tags:
- name: packages
paths:
  /packages/{owner}/{repo}/:
    parameters:
    - name: owner
      in: path
      required: true
      type: string
    - name: repo
      in: path
      required: true
      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
        type: integer
      - name: page_size
        in: query
        description: Number of results to return per page.
        required: false
        type: integer
      - name: query
        in: query
        description: A search term for querying names, filenames, versions, distributions, architectures, formats or statuses of packages.
        required: false
        type: string
        default: ''
      - name: sort
        in: query
        description: A field for sorting objects in ascending or descending order.
        required: false
        type: string
        default: -date
      responses:
        '200':
          description: Retrieved the list of packages
          schema:
            type: array
            items:
              $ref: '#/definitions/Package'
        '400':
          description: Request could not be processed (see detail).
          schema:
            $ref: '#/definitions/ErrorDetail'
        '422':
          description: Missing or invalid parameters (see detail).
          schema:
            $ref: '#/definitions/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
      type: string
    - name: repo
      in: path
      required: true
      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
        type: integer
      - name: page_size
        in: query
        description: Number of results to return per page.
        required: false
        type: integer
      - name: group_by
        in: query
        description: 'A field to group packages by. Available options: name, backend_kind.'
        required: false
        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
        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
        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
        type: string
        default: name
      responses:
        '200':
          description: Retrieved the list of package groups.
          schema:
            required:
            - results
            type: object
            properties:
              results:
                type: array
                items:
                  $ref: '#/definitions/PackageGroup'
        '404':
          description: Owner namespace or repository not found
          schema:
            $ref: '#/definitions/ErrorDetail'
        '400':
          description: Request could not be processed (see detail).
          schema:
            $ref: '#/definitions/ErrorDetail'
        '422':
          description: Missing or invalid parameters (see detail).
          schema:
            $ref: '#/definitions/ErrorDetail'
      tags:
      - packages
  /packages/{owner}/{repo}/upload/alpine/:
    parameters:
    - name: owner
      in: path
      required: true
      type: string
    - name: repo
      in: path
      required: true
      type: string
    post:
      operationId: packages_upload_alpine
      summary: Create a new Alpine package
      description: Create a new Alpine package
      parameters:
      - name: data
        in: body
        required: false
        schema:
          $ref: '#/definitions/AlpinePackageUploadRequest'
      responses:
        '201':
          description: Upload acknowledged and queued for synchronization.
          schema:
            $ref: '#/definitions/AlpinePackageUpload'
        '404':
          description: Namespace (owner) or repository not found
          schema:
            $ref: '#/definitions/ErrorDetail'
        '400':
          description: Request could not be processed (see detail).
          schema:
            $ref: '#/definitions/ErrorDetail'
        '422':
          description: Missing or invalid parameters (see detail).
          schema:
            $ref: '#/definitions/ErrorDetail'
      tags:
      - packages
  /packages/{owner}/{repo}/upload/cargo/:
    parameters:
    - name: owner
      in: path
      required: true
      type: string
    - name: repo
      in: path
      required: true
      type: string
    post:
      operationId: packages_upload_cargo
      summary: Create a new Cargo package
      description: Create a new Cargo package
      parameters:
      - name: data
        in: body
        required: false
        schema:
          $ref: '#/definitions/CargoPackageUploadRequest'
      responses:
        '201':
          description: Upload acknowledged and queued for synchronization.
          schema:
            $ref: '#/definitions/CargoPackageUpload'
        '404':
          description: Namespace (owner) or repository not found
          schema:
            $ref: '#/definitions/ErrorDetail'
        '400':
          description: Request could not be processed (see detail).
          schema:
            $ref: '#/definitions/ErrorDetail'
        '422':
          description: Missing or invalid parameters (see detail).
          schema:
            $ref: '#/definitions/ErrorDetail'
      tags:
      - packages
  /packages/{owner}/{repo}/upload/cocoapods/:
    parameters:
    - name: owner
      in: path
      required: true
      type: string
    - name: repo
      in: path
      required: true
      type: string
    post:
      operationId: packages_upload_cocoapods
      summary: Create a new CocoaPods package
      description: Create a new CocoaPods package
      parameters:
      - name: data
        in: body
        required: false
        schema:
          $ref: '#/definitions/CocoapodsPackageUploadRequest'
      responses:
        '201':
          description: Upload acknowledged and queued for synchronization.
          schema:
            $ref: '#/definitions/CocoapodsPackageUpload'
        '404':
          description: Namespace (owner) or repository not found
          schema:
            $ref: '#/definitions/ErrorDetail'
        '400':
          description: Request could not be processed (see detail).
          schema:
            $ref: '#/definitions/ErrorDetail'
        '422':
          description: Missing or invalid parameters (see detail).
          schema:
            $ref: '#/definitions/ErrorDetail'
      tags:
      - packages
  /packages/{owner}/{repo}/upload/composer/:
    parameters:
    - name: owner
      in: path
      required: true
      type: string
    - name: repo
      in: path
      required: true
      type: string
    post:
      operationId: packages_upload_composer
      summary: Create a new Composer package
      description: Create a new Composer package
      parameters:
      - name: data
        in: body
        required: false
        schema:
          $ref: '#/definitions/ComposerPackageUploadRequest'
      responses:
        '201':
          description: Upload acknowledged and queued for synchronization.
          schema:
            $ref: '#/definitions/ComposerPackageUpload'
        '404':
          description: Namespace (owner) or repository not found
          schema:
            $ref: '#/definitions/ErrorDetail'
        '400':
          description: Request could not be processed (see detail).
          schema:
            $ref: '#/definitions/ErrorDetail'
        '422':
          description: Missing or invalid parameters (see detail).
          schema:
            $ref: '#/definitions/ErrorDetail'
      tags:
      - packages
  /packages/{owner}/{repo}/upload/conan/:
    parameters:
    - name: owner
      in: path
      required: true
      type: string
    - name: repo
      in: path
      required: true
      type: string
    post:
      operationId: packages_upload_conan
      summary: Create a new Conan package
      description: Create a new Conan package
      parameters:
      - name: data
        in: body
        required: false
        schema:
          $ref: '#/definitions/ConanPackageUploadRequest'
      responses:
        '201':
          description: Upload acknowledged and queued for synchronization.
          schema:
            $ref: '#/definitions/ConanPackageUpload'
        '404':
          description: Namespace (owner) or repository not found
          schema:
            $ref: '#/definitions/ErrorDetail'
        '400':
          description: Request could not be processed (see detail).
          schema:
            $ref: '#/definitions/ErrorDetail'
        '422':
          description: Missing or invalid parameters (see detail).
          schema:
            $ref: '#/definitions/ErrorDetail'
      tags:
      - packages
  /packages/{owner}/{repo}/upload/conda/:
    parameters:
    - name: owner
      in: path
      required: true
      type: string
    - name: repo
      in: path
      required: true
      type: string
    post:
      operationId: packages_upload_conda
      summary: Create a new Conda package
      description: Create a new Conda package
      parameters:
      - name: data
        in: body
        required: false
        schema:
          $ref: '#/definitions/CondaPackageUploadRequest'
      responses:
        '201':
          description: Upload acknowledged and queued for synchronization.
          schema:
            $ref: '#/definitions/CondaPackageUpload'
        '404':
          description: Namespace (owner) or repository not found
          schema:
            $ref: '#/definitions/ErrorDetail'
        '400':
          description: Request could not be processed (see detail).
          schema:
            $ref: '#/definitions/ErrorDetail'
        '422':
          description: Missing or invalid parameters (see detail).
          schema:
            $ref: '#/definitions/ErrorDetail'
      tags:
      - packages
  /packages/{owner}/{repo}/upload/cran/:
    parameters:
    - name: owner
      in: path
      required: true
      type: string
    - name: repo
      in: path
      required: true
      type: string
    post:
      operationId: packages_upload_cran
      summary: Create a new CRAN package
      description: Create a new CRAN package
      parameters:
      - name: data
        in: body
        required: false
        schema:
          $ref: '#/definitions/CranPackageUploadRequest'
      responses:
        '201':
          description: Upload acknowledged and queued for synchronization.
          schema:
            $ref: '#/definitions/CranPackageUpload'
        '404':
          description: Namespace (owner) or repository not found
          schema:
            $ref: '#/definitions/ErrorDetail'
        '400':
          description: Request could not be processed (see detail).
          schema:
            $ref: '#/definitions/ErrorDetail'
        '422':
          description: Missing or invalid parameters (see detail).
          schema:
            $ref: '#/definitions/ErrorDetail'
      tags:
      - packages
  /packages/{owner}/{repo}/upload/dart/:
    parameters:
    - name: owner
      in: path
      required: true
      type: string
    - name: repo
      in: path
      required: true
      type: string
    post:
      operationId: packages_upload_dart
      summary: Create a new Dart package
      description: Create a new Dart package
      parameters:
      - name: data
        in: body
        required: false
        schema:
          $ref: '#/definitions/DartPackageUploadRequest'
      responses:
        '201':
          description: Upload acknowledged and queued for synchronization.
          schema:
            $ref: '#/definitions/DartPackageUpload'
        '404':
          description: Namespace (owner) or repository not found
          schema:
            $ref: '#/definitions/ErrorDetail'
        '400':
          description: Request could not be processed (see detail).
          schema:
            $ref: '#/definitions/ErrorDetail'
        '422':
          description: Missing or invalid parameters (see detail).
          schema:
            $ref: '#/definitions/ErrorDetail'
      tags:
      - packages
  /packages/{owner}/{repo}/upload/deb/:
    parameters:
    - name: owner
      in: path
      required: true
      type: string
    - name: repo
      in: path
      required: true
      type: string
    post:
      operationId: packages_upload_deb
      summary: Create a new Debian package
      description: Create a new Debian package
      parameters:
      - name: data
        in: body
        required: false
        schema:
          $ref: '#/definitions/DebPackageUploadRequest'
      responses:
        '201':
          description: Upload acknowledged and queued for synchronization.
          schema:
            $ref: '#/definitions/DebPackageUpload'
        '404':
          description: Namespace (owner) or repository not found
          schema:
            $ref: '#/definitions/ErrorDetail'
        '400':
          description: Request could not be processed (see detail).
          schema:
            $ref: '#/definitions/ErrorDetail'
        '422':
          description: Missing or invalid parameters (see detail).
          schema:
            $ref: '#/definitions/ErrorDetail'
      tags:
      - packages
  /packages/{owner}/{repo}/upload/docker/:
    parameters:
    - name: owner
      in: path
      required: true
      type: string
    - name: repo
      in: path
      required: true
      type: string
    post:
      operationId: packages_upload_docker
      summary: Create a new Docker package
      description: Create a new Docker package
      parameters:
      - name: data
        in: body
        required: false
        schema:
          $ref: '#/definitions/DockerPackageUploadRequest'
      responses:
        '201':
          description: Upload acknowledged and queued for synchronization.
          schema:
            $ref: '#/definitions/DockerPackageUpload'
        '404':
          description: Namespace (owner) or repository not found
          schema:
            $ref: '#/definitions/ErrorDetail'
        '400':
          description: Request could not be processed (see detail).
          schema:
            $ref: '#/definitions/ErrorDetail'
        '422':
          description: Missing or invalid parameters (see detail).
          schema:
            $ref: '#/definitions/ErrorDetail'
      tags:
      - packages
  /packages/{owner}/{repo}/upload/generic/:
    parameters:
    - name: owner
      in: path
      required: true
      type: string
    - name: repo
      in: path
      required: true
      type: string
    post:
      operationId: packages_upload_generic
      summary: Create a new Generic package
      description: Create a new Generic package
      parameters:
      - name: data
        in: body
        required: false
        schema:
          $ref: '#/definitions/GenericPackageUploadRequest'
      responses:
        '201':
          description: Upload acknowledged and queued for synchronization.
          schema:
            $ref: '#/definitions/GenericPackageUpload'
        '404':
          description: Namespace (owner) or repository not found
          schema:
            $ref: '#/definitions/ErrorDetail'
        '400':
          description: Request could not be processed (see detail).
          schema:
            $ref: '#/definitions/ErrorDetail'
        '422':
          description: Missing or invalid parameters (see detail).
          schema:
            $ref: '#/definitions/ErrorDetail'
      tags:
      - packages
  /packages/{owner}/{repo}/upload/go/:
    parameters:
    - name: owner
      in: path
      required: true
      type: string
    - name: repo
      in: path
      required: true
      type: string
    post:
      operationId: packages_upload_go
      summary: Create a new Go package
      description: Create a new Go package
      parameters:
      - name: data
        in: body
        required: false
        schema:
          $ref: '#/definitions/GoPackageUploadRequest'
      responses:
        '201':
          description: Upload acknowledged and queued for synchronization.
          schema:
            $ref: '#/definitions/GoPackageUpload'
        '404':
          description: Namespace (owner) or repository not found
          schema:
            $ref: '#/definitions/ErrorDetail'
        '400':
          description: Request could not be processed (see detail).
          schema:
            $ref: '#/definitions/ErrorDetail'
        '422':
          description: Missing or invalid parameters (see detail).
          schema:
            $ref: '#/definitions/ErrorDetail'
      tags:
      - packages
  /packages/{owner}/{repo}/upload/helm/:
    parameters:
    - name: owner
      in: path
      required: true
      type: string
    - name: repo
      in: path
      required: true
      type: string
    post:
      operationId: packages_upload_helm
      summary: Create a new Helm package
      description: Create a new Helm package
      parameters:
      - name: data
        in: body
        required: false
        schema:
          $ref: '#/definitions/HelmPackageUploadRequest'
      responses:
        '201':
          description: Upload acknowledged and queued for synchronization.
          schema:
            $ref: '#/definitions/HelmPackageUpload'
        '404':
          description: Namespace (owner) or repository not found
          schema:
            $ref: '#/definitions/ErrorDetail'
        '400':
          description: Request could not be processed (see detail).
          schema:
            $ref: '#/definitions/ErrorDetail'
        '422':
          description: Missing or invalid parameters (see detail).
          schema:
            $ref: '#/definitions/ErrorDetail'
      tags:
      - packages
  /packages/{owner}/{repo}/upload/hex/:
    parameters:
    - name: owner
      in: path
      required: true
      type: string
    - name: repo
      in: path
      required: true
      type: string
    post:
      operationId: packages_upload_hex
      summary: Create a new Hex package
      description: Create a new Hex package
      parameters:
      - name: data
        in: body
        required: false
        schema:
          $ref: '#/definitions/HexPackageUploadRequest'
      responses:
        '201':
          description: Upload acknowledged and queued for synchronization.
          schema:
            $ref: '#/definitions/HexPackageUpload'
        '404':
          description: Namespace (owner) or repository not found
          schema:
            $ref: '#/definitions/ErrorDetail'
        '400':
          description: Request could not be processed (see detail).
          schema:
            $ref: '#/definitions/ErrorDetail'
        '422':
          description: Missing or invalid parameters (see detail).
          schema:
            $ref: '#/definitions/ErrorDetail'
      tags:
      - packages
  /packages/{owner}/{repo}/upload/huggingface/:
    parameters:
    - name: owner
      in: path
      required: true
      type: string
    - name: repo
      in: path
      required: true
      type: string
    post:
      operationId: packages_upload_huggingface
      summary: Create a new HuggingFace package
      description: Create a new HuggingFace package
      parameters:
      - name: data
        in: body
        required: false
        schema:
          $ref: '#/definitions/HuggingfacePackageUploadRequest'
      responses:
        '201':
          description: Upload acknowledged and queued for synchronization.
          schema:
            $ref: '#/definitions/HuggingfacePackageUpload'
        '404':
          description: Namespace (owner) or repository not found
          schema:
            $ref: '#/definitions/ErrorDetail'
        '400':
          description: Request could not be processed (see detail).
          schema:
            $ref: '#/definitions/ErrorDetail'
        '422':
          description: Missing or invalid parameters (see detail).
          schema:
            $ref: '#/definitions/ErrorDetail'
      tags:
      - packages
  /packages/{owner}/{repo}/upload/luarocks/:
    parameters:
    - name: owner
      in: path
      required: true
      type: string
    - name: repo
      in: path
      required: true
      type: string
    post:
      operationId: packages_upload_luarocks
      summary: Create a new LuaRocks package
      description: Create a new LuaRocks package
      parameters:
      - name: data
        in: body
        required: false
        schema:
          $ref: '#/definitions/LuarocksPackageUploadRequest'
      responses:
        '201':
          description: Upload acknowledged and queued for synchronization.
          schema:
            $ref: '#/definitions/LuarocksPackageUpload'
        '404':
          description: Namespace (owner) or repository not found
          schema:
            $ref: '#/definitions/ErrorDetail'
        '400':
          description: Request could not be processed (see detail).
          schema:
            $ref: '#/definitions/ErrorDetail'
        '422':
          description: Missing or invalid parameters (see detail).
          schema:
            $ref: '#/definitions/ErrorDetail'
      tags:
      - packages
  /packages/{owner}/{repo}/upload/maven/:
    parameters:
    - name: owner
      in: path
      required: true
      type: string
    - name: repo
      in: path
      required: true
      type: string
    post:
      operationId: packages_upload_maven
      summary: Create a new Maven package
      description: Create a new Maven package
      parameters:
      - name: data
        in: body
        required: false
        schema:
          $ref: '#/definitions/MavenPackageUploadRequest'
      responses:
        '201':
          description: Upload acknowledged and queued for synchronization.
          schema:
            $ref: '#/definitions/MavenPackageUpload'
        '404':
          description: Namespace (owner) or repository not found
          schema:
            $ref: '#/definitions/ErrorDetail'
        '400':
          description: Request could not be processed (see detail).
          schema:
            $ref: '#/definitions/ErrorDetail'
        '422':
          description: Missing or invalid parameters (see detail).
          schema:
            $ref: '#/definitions/ErrorDetail'
      tags:
      - packages
  /packages/{owner}/{repo}/upload/mcp/:
    parameters:
    - name: owner
      in: path
      required: true
      type: string
    - name: repo
      in: path
      required: true
      type: string
    post:
      operationId: packages_upload_mcp
      summary: Create a new MCP package
      description: Create a new MCP package
      parameters:
      - name: data
        in: body
        required: false
        schema:
          $ref: '#/definitions/McpPackageUploadRequest'
      responses:
        '201':
          description: Upload acknowledged and queued for synchronization.
          schema:
            $ref: '#/definitions/McpPackageUpload'
        '404':
          description: Namespace (owner) or repository not found
          schema:
            $ref: '#/definitions/ErrorDetail'
        '400':
          description: Request could not be processed (see detail).
          schema:
            $ref: '#/definitions/ErrorDetail'
        '422':
          description: Missing or invalid parameters (see detail).
          schema:
            $ref: '#/definitions/ErrorDetail'
      tags:
      - packages
  /packages/{owner}/{repo}/upload/npm/:
    parameters:
    - name: owner
      in: path
      required: true
      type: string
    - name: repo
      in: path
      required: true
      type: string
    post:
      operationId: packages_upload_npm
      summary: Create a new npm package
      description: Create a new npm package
      parameters:
      - name: data
        in: body
        required: false
        schema:
          $ref: '#/definitions/NpmPackageUploadRequest'
      responses:
        '201':
          description: Upload acknowledged and queued for synchronization.
          schema:
            $ref: '#/definitions/NpmPackageUpload'
        '404':
          description: Namespace (owner) or repository not found
          schema:
            $ref: '#/definitions/ErrorDetail'
        '400':
          description: Request could not be processed (see detail).
          schema:
            $ref: '#/definitions/ErrorDetail'
        '422':
          description: Missing or invalid parameters (see detail).
          schema:
            $ref: '#/definitions/ErrorDetail'
      tags:
      - packages
  /packages/{owner}/{repo}/upload/nuget/:
    parameters:
    - name: owner
      in: path
      required: true
      type: string
    - name: repo
      in: path
      required: true
      type: string
    post:
      operationId: packages_upload_nuget
      summary: Create a new NuGet package
      description: Create a new NuGet package
      parameters:
      - name: data
        in: body
        required: false
        schema:
          $ref: '#/definitions/NugetPackageUploadRequest'
      responses:
        '201':
          description: Upload acknowledged and queued for synchronization.
          schema:
            $ref: '#/definitions/NugetPackageUpload'
        '404':
          description: Namespace (owner) or repository not found
          schema:
            $ref: '#/definitions/ErrorDetail'
        '400':
          description: Request could not be processed (see detail).
          schema:
            $ref: '#/definitions/ErrorDetail'
        '422':
          description: Missing or invalid parameters (see detail).
          schema:
            $ref: '#/definitions/ErrorDetail'
      tags:
      - packages
  /packages/{owner}/{repo}/upload/p2/:
    parameters:
    - name: owner
      in: path
      required: true
      type: string
    - name: repo
      in: path
      required: true
      type: string
    post:
      operationId: packages_upload_p2
      summary: Create a new P2 package
      description: Create a new P2 package
      parameters:
      - name: data
        in: body
        required: false
        schema:
          $ref: '#/definitions/P2PackageUploadRequest'
      responses:
        '201':
          description: Upload acknowledged and queued for synchronization.
          schema:
            $ref: '#/definitions/P2PackageUpload'
        '404':
          description: Namespace (owner) or repository not found
          schema:
            $ref: '#/definitions/ErrorDetail'
        '400':
          description: Request could not be processed (see detail).
          schema:
            $ref: '#/definitions/ErrorDetail'
        '422':
          description: Missing or invalid parameters (see detail).
          schema:
            $ref: '#/definitions/ErrorDetail'
      tags:
      - packages
  /packages/{owner}/{repo}/upload/python/:
    parameters:
    - name: owner
      in: path
      required: true
      type: string
    - name: repo
      in: path
      required: true
      type: string
    post:
      operationId: packages_upload_python
      summary: Create a new Python package
      description: Create a new Python package
      parameters:
      - name: data
        in: body
        required: false
        schema:
          $ref: '#/definitions/PythonPackageUploadRequest'
      responses:
        '201':
          description: Upload acknowledged and queued for synchronization.
          schema:
            $ref: '#/definitions/PythonPackageUpload'
        '404':
          description: Namespace (owner) or repository not found
          schema:
            $ref: '#/definitions/ErrorDetail'
        '400':
          description: Request could not be processed (see detail).
          schema:
            $ref: '#/definitions/ErrorDetail'
        '422':
          description: Missing or invalid parameters (see detail).
          schema:
            $ref: '#/definitions/ErrorDetail'
      tags:
      - packages
  /packages/{owner}/{repo}/upload/raw/:
    parameters:
    - name: owner
      in: path
      required: true
      type: string
    - name: repo
      in: path
      required: true
      type: string
    post:
      operationId: packages_upload_raw
      summary: Create a new Raw package
      description: Create a new Raw package
      parameters:
      - name: data
        in: body
        required: false
        schema:
          $ref: '#/definitions/RawPackageUploadRequest'
      responses:
        '201':
          description: Upload acknowledged and queued for synchronization.
          schema:
            $ref: '#/definitions/RawPackageUpload'
        '404':
          description: Namespace (owner) or repository not found
          schema:
            $ref: '#/definitions/ErrorDetail'
        '400':
          description: Request could not be processed (see detail).
          schema:
            $ref: '#/definitions/ErrorDetail'
        '422':
          description: Missing or invalid parameters (see detail).
          schema:
            $ref: '#/definitions/ErrorDetail'
      tags:
      - packages
  /packages/{owner}/{repo}/upload/rpm/:
    parameters:
    - name: owner
      in: path
      required: true
      type: string
    - name: repo
      in: path
      required: true
      type: string
    post:
      operationId: packages_upload_rpm
      summary: Create a new RedHat package
      description: Create a new RedHat package
      parameters:
      - name: data
        in: body
        required: false
        schema:
          $ref: '#/definitions/RpmPackageUploadRequest'
      responses:
        '201':
          description: Upload acknowledged and queued for synchronization.
          schema:
            $ref: '#/definitions/RpmPackageUpload'
        '404':
          description: Namespace (owner) or repository not found
          schema:
            $ref: '#/definitions/ErrorDetail'
        '400':
          description: Request could not be processed (see detail).
          schema:
            $ref: '#/definitions/ErrorDetail'
        '422':
          description: Missing or invalid parameters (see detail).
          schema:
            $ref: '#/definitions/ErrorDetail'
      tags:
      - packages
  /packages/{owner}/{repo}/upload/ruby/:
    parameters:
    - name: owner
      in: path
      required: true
      type: string
    - name: repo
      in: path
      required: true
      type: string
    post:
      operationId: packages_u

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