JFrog · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for JFrog Artifactory REST Artifacts & Storage API

9 actions 9 updates phrasing extends openapi/jfrog-artifacts-storage-api-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for JFrog's API. It is a proposal applied on top of the contract, not a document JFrog publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-phrasing

Targets 9

$.info
$.paths['/api/storage/{repoKey}/{itemPath}'].get
$.paths['/api/storage/{repoKey}'].get
$.paths['/api/storageinfo'].get
$.paths['/{repoKey}/{itemPath}'].get
$.paths['/{repoKey}/{itemPath}'].put
$.paths['/{repoKey}/{itemPath}'].delete
$.paths['/api/copy/{srcRepoKey}/{srcItemPath}'].post
$.paths['/api/move/{srcRepoKey}/{srcItemPath}'].post

OpenAPI Overlay

Raw ↑
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
  title: API Evangelist conversational phrasing for JFrog Artifactory REST Artifacts & Storage API
  version: 1.0.0
extends: openapi/jfrog-artifacts-storage-api-openapi.yml
actions:
- target: $.info
  update:
    x-apievangelist-phrasing:
      method: generated
      generated: '2026-10-01'
      generator: build-phrasing.py
      label: Generated by API Evangelist
      operations: 8
- target: $.paths['/api/storage/{repoKey}/{itemPath}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get file or folder storage info
      effect: read
      questions:
      - What are the checksums and size of a file stored in Artifactory?
      - Can I see a folder's metadata without downloading anything?
      instructions:
      - text: Get storage info for {itemPath} in repository {repoKey}.
        slots:
          itemPath: path.itemPath
          repoKey: path.repoKey
      - text: Show me the size and checksums of {itemPath} in {repoKey}.
        slots:
          itemPath: path.itemPath
          repoKey: path.repoKey
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/storage/{repoKey}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a repository's storage summary
      effect: read
      questions:
      - How much storage is one repository using?
      - Can I get a storage summary for a single repository?
      instructions:
      - text: Get the storage summary for repository {repoKey}.
        slots:
          repoKey: path.repoKey
      - text: Show me how much space repository {repoKey} takes up.
        slots:
          repoKey: path.repoKey
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/storageinfo'].get
  update:
    x-apievangelist-phrasing:
      intent: Get the instance-wide storage summary
      effect: read
      questions:
      - How much binary and file store space is my whole instance using?
      - Which repositories take up the most storage overall?
      instructions:
      - text: Get the storage summary across all repositories, binaries and the file store.
      - text: Show me overall storage usage for the instance.
      method: generated
      generated: '2026-10-01'
- target: $.paths['/{repoKey}/{itemPath}'].get
  update:
    x-apievangelist-phrasing:
      intent: Download an artifact
      effect: read
      questions:
      - How do I download a file from a repository?
      - What do I get back if the path I fetch is a folder rather than a file?
      instructions:
      - text: Download {itemPath} from repository {repoKey}.
        slots:
          itemPath: path.itemPath
          repoKey: path.repoKey
      - text: Fetch the artifact at {itemPath} in {repoKey}.
        slots:
          itemPath: path.itemPath
          repoKey: path.repoKey
      method: generated
      generated: '2026-10-01'
- target: $.paths['/{repoKey}/{itemPath}'].put
  update:
    x-apievangelist-phrasing:
      intent: Upload (deploy) an artifact
      effect: write
      questions:
      - How do I upload a build artifact to a repository path?
      - Can I send a SHA-256 checksum along with an upload to verify it?
      instructions:
      - text: Deploy a file to {itemPath} in repository {repoKey}.
        slots:
          itemPath: path.itemPath
          repoKey: path.repoKey
      - text: Upload to {repoKey}/{itemPath} with SHA-256 checksum {sha256}.
        slots:
          repoKey: path.repoKey
          itemPath: path.itemPath
          sha256: header.X-Checksum-Sha256
      method: generated
      generated: '2026-10-01'
- target: $.paths['/{repoKey}/{itemPath}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete an artifact or folder
      effect: destructive
      questions:
      - Can I delete a whole folder from a repository, not just a single file?
      - How do I remove an old artifact from a repo?
      instructions:
      - text: Delete {itemPath} from repository {repoKey}.
        slots:
          itemPath: path.itemPath
          repoKey: path.repoKey
      - text: Remove the folder {itemPath} in {repoKey}.
        slots:
          itemPath: path.itemPath
          repoKey: path.repoKey
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/copy/{srcRepoKey}/{srcItemPath}'].post
  update:
    x-apievangelist-phrasing:
      intent: Copy an artifact or folder
      effect: write
      questions:
      - Can I do a dry run of copying an artifact to another repository first?
      - How do I duplicate a folder into a different repo while keeping the original?
      instructions:
      - text: Copy {srcItemPath} from {srcRepoKey} to {to}.
        slots:
          srcItemPath: path.srcItemPath
          srcRepoKey: path.srcRepoKey
          to: query.to
      - text: Dry-run copying {srcRepoKey}/{srcItemPath} to {to} with dry set to {dry}.
        slots:
          srcRepoKey: path.srcRepoKey
          srcItemPath: path.srcItemPath
          to: query.to
          dry: query.dry
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/move/{srcRepoKey}/{srcItemPath}'].post
  update:
    x-apievangelist-phrasing:
      intent: Move an artifact or folder
      effect: write
      questions:
      - How do I relocate an artifact to another repository so it leaves the old path?
      - Can a move stop on the first failure instead of continuing?
      instructions:
      - text: Move {srcItemPath} from {srcRepoKey} to {to}.
        slots:
          srcItemPath: path.srcItemPath
          srcRepoKey: path.srcRepoKey
          to: query.to
      - text: Move {srcRepoKey}/{srcItemPath} to {to} and fail fast set to {failFast}.
        slots:
          srcRepoKey: path.srcRepoKey
          srcItemPath: path.srcItemPath
          to: query.to
          failFast: query.failFast
      method: generated
      generated: '2026-10-01'