Kloset

Browsing a store and the snapshots inside it.

14 endpoints · Plakar Control Plane v0.18 · Base URL, authentication and errors

List the importer types in a store

GET /api/v1/kloset/{repouuid}/repository/importer-types
Badge

Path parameters

  • repouuid string<uuid> required
    The store connector.

Query parameters

  • organization_id string<uuid>
    Organization to act on, at or below the caller’s. Defaults to the caller’s.

Response 200 OK application/json

  • items array[object]
    • name string
  • total integer

Errors

  • 401 Missing, invalid or expired credentials

Every error returns the standard error body.

Request

curl 'https://pcp.example.com/api/v1/kloset/{repouuid}/repository/importer-types' \
  -H 'Authorization: Bearer <badge>'

Response 200

{
  "items": [
    {
      "name": "string"
    }
  ],
  "total": 0
}

Get information about a store

GET /api/v1/kloset/{repouuid}/repository/info
Badge

Path parameters

  • repouuid string<uuid> required
    The store connector.

Query parameters

  • organization_id string<uuid>
    Organization to act on, at or below the caller’s. Defaults to the caller’s.

Response 200 OK application/json

  • item object
    • arch string
    • browsable boolean
    • configuration object
      • chunking object
        • algorithm string
        • max_size integer
          Max: 4.294967295e+09
        • min_size integer
          Max: 4.294967295e+09
        • normal_size integer
          Max: 4.294967295e+09
      • compression object nullable
        • algorithm string
        • block_size integer
        • chunk_size integer
        • enable_CRC boolean
        • level integer
        • window_size integer
      • encryption object nullable
        • KDF_params object
          • KDF string
          • argon2id nullable
          • pbkdf2 nullable
          • salt string<byte>
          • scrypt nullable
        • canary string<byte>
        • chunk_size integer
        • data_algorithm string
        • subkey_algorithm string
      • hashing object
        • algorithm string
        • bits integer
          Max: 4.294967295e+09
      • packfile object
        • avg_size integer
          Max: 1.8446744073709552e+19
        • max_size integer
          Max: 1.8446744073709552e+19
        • min_size integer
          Max: 1.8446744073709552e+19
      • repository_id string<uuid>
      • timestamp string<date-time>
      • version integer
        Max: 4.294967295e+09
    • location string
    • os string
    • snapshots object
      • efficiency number<double>
      • logical_size integer<int64>
      • snapshots_per_day array[integer]
      • storage_size integer<int64>
      • total integer

Errors

  • 401 Missing, invalid or expired credentials

Every error returns the standard error body.

Request

curl 'https://pcp.example.com/api/v1/kloset/{repouuid}/repository/info' \
  -H 'Authorization: Bearer <badge>'

Response 200

{
  "item": {
    "arch": "string",
    "browsable": true,
    "configuration": {
      "chunking": {
        "algorithm": "string",
        "max_size": 0,
        "min_size": 0,
        "normal_size": 0
      },
      "compression": {
        "algorithm": "string",
        "block_size": 0,
        "chunk_size": 0,
        "enable_CRC": true,
        "level": 0,
        "window_size": 0
      },
      "encryption": {
        "KDF_params": {
          "KDF": "string",
          "argon2id": {},
          "pbkdf2": {},
          "salt": "U3dhZ2dlciByb2Nrcw==",
          "scrypt": {}
        },
        "canary": "U3dhZ2dlciByb2Nrcw==",
        "chunk_size": 0,
        "data_algorithm": "string",
        "subkey_algorithm": "string"
      },
      "hashing": {
        "algorithm": "string",
        "bits": 0
      },
      "packfile": {
        "avg_size": 0,
        "max_size": 0,
        "min_size": 0
      },
      "repository_id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90",
      "timestamp": "2026-01-01T00:00:00Z",
      "version": 0
    },
    "location": "string",
    "os": "string",
    "snapshots": {
      "efficiency": 0,
      "logical_size": 0,
      "snapshots_per_day": [
        0
      ],
      "storage_size": 0,
      "total": 0
    }
  }
}

Find the snapshots holding a pathname

GET /api/v1/kloset/{repouuid}/repository/locate-pathname
Badge

Path parameters

  • repouuid string<uuid> required
    The store connector.

Query parameters

  • offset integer
    Number of items to skip.
    Default: 0
  • limit integer
    Maximum number of items to return.
    Default: 50 Min: 1
  • importerType string
    Only snapshots of this importer type.
  • importerOrigin string
    Only snapshots of this origin.
  • importerDirectory string
    Only snapshots of this directory.
  • resource string
    Pathname to locate.
  • sort string
    Comma-separated sort keys. Prefix a key with - to sort in descending order.
    Default: "Timestamp"
  • organization_id string<uuid>
    Organization to act on, at or below the caller’s. Defaults to the caller’s.

Response 200 OK application/json

  • items array[object]
    • snapshot object
      • category string
      • classifications array[object]
        • analyzer string
        • classes array[object]
          • name string
          • probability number<double>
      • context array[object]
        • key string
        • value string
      • data_classes array[string]
      • dataset string
      • duration integer<int64>
      • environment string
      • identifier
      • identity object
        • identifier string<uuid>
        • public_key string<byte>
      • job string
      • name string
      • perimeter string
      • replicas integer
        Max: 4.294967295e+09
      • sources array[object]
        • context array[object]
          • key string
          • value string
        • importer object
          • directory string
          • origin string
          • type string
        • indexes array[object]
          • name string
          • type string
          • value
        • root object
          • errors
          • root
          • xattrs
        • summary object
          • below object
            • MIME_application integer
              Max: 1.8446744073709552e+19
            • MIME_audio integer
              Max: 1.8446744073709552e+19
            • MIME_image integer
              Max: 1.8446744073709552e+19
            • MIME_other integer
              Max: 1.8446744073709552e+19
            • MIME_text integer
              Max: 1.8446744073709552e+19
            • MIME_video integer
              Max: 1.8446744073709552e+19
            • children integer
              Max: 1.8446744073709552e+19
            • chunks integer
              Max: 1.8446744073709552e+19
            • devices integer
              Max: 1.8446744073709552e+19
            • directories integer
              Max: 1.8446744073709552e+19
            • errors integer
              Max: 1.8446744073709552e+19
            • files integer
              Max: 1.8446744073709552e+19
            • hi_entropy integer
              Max: 1.8446744073709552e+19
            • lo_entropy integer
              Max: 1.8446744073709552e+19
            • max_entropy number<double>
            • max_mod_time integer<int64>
            • max_size integer
              Max: 1.8446744073709552e+19
            • min_entropy number<double>
            • min_mod_time integer<int64>
            • min_size integer
              Max: 1.8446744073709552e+19
            • objects integer
              Max: 1.8446744073709552e+19
            • pipes integer
              Max: 1.8446744073709552e+19
            • setgid integer
              Max: 1.8446744073709552e+19
            • setuid integer
              Max: 1.8446744073709552e+19
            • size integer
              Max: 1.8446744073709552e+19
            • sockets integer
              Max: 1.8446744073709552e+19
            • sticky integer
              Max: 1.8446744073709552e+19
            • symlinks integer
              Max: 1.8446744073709552e+19
          • directory object
            • MIME_application integer
              Max: 1.8446744073709552e+19
            • MIME_audio integer
              Max: 1.8446744073709552e+19
            • MIME_image integer
              Max: 1.8446744073709552e+19
            • MIME_other integer
              Max: 1.8446744073709552e+19
            • MIME_text integer
              Max: 1.8446744073709552e+19
            • MIME_video integer
              Max: 1.8446744073709552e+19
            • avg_entropy number<double>
            • avg_size integer
              Max: 1.8446744073709552e+19
            • children integer
              Max: 1.8446744073709552e+19
            • chunks integer
              Max: 1.8446744073709552e+19
            • devices integer
              Max: 1.8446744073709552e+19
            • directories integer
              Max: 1.8446744073709552e+19
            • errors integer
              Max: 1.8446744073709552e+19
            • files integer
              Max: 1.8446744073709552e+19
            • hi_entropy integer
              Max: 1.8446744073709552e+19
            • lo_entropy integer
              Max: 1.8446744073709552e+19
            • max_entropy number<double>
            • max_mod_time integer<int64>
            • max_size integer
              Max: 1.8446744073709552e+19
            • min_entropy number<double>
            • min_mod_time integer<int64>
            • min_size integer
              Max: 1.8446744073709552e+19
            • objects integer
              Max: 1.8446744073709552e+19
            • pipes integer
              Max: 1.8446744073709552e+19
            • setgid integer
              Max: 1.8446744073709552e+19
            • setuid integer
              Max: 1.8446744073709552e+19
            • size integer
              Max: 1.8446744073709552e+19
            • sockets integer
              Max: 1.8446744073709552e+19
            • sticky integer
              Max: 1.8446744073709552e+19
            • sum_entropy number<double>
            • symlinks integer
              Max: 1.8446744073709552e+19
      • tags array[string]
      • timestamp string<date-time>
      • version integer
        Max: 4.294967295e+09
    • vfs_entry object
      • alternate_data_streams array[string]
      • chunks integer nullable
        Max: 1.8446744073709552e+19
      • classifications array[object]
        • analyzer string
        • classes array[string]
        • scores array[object]
          • key string
          • value number<double>
      • content_type string nullable
      • custom_metadata array[object]
        • key string
        • value string<byte>
      • entropy number<double> nullable
      • extended_attributes array[string]
      • file_attributes integer
        Max: 4.294967295e+09
      • file_info object
        • dev integer
          Max: 1.8446744073709552e+19
        • flags integer
          Max: 4.294967295e+09
        • gid integer
          Max: 1.8446744073709552e+19
        • groupname string
        • ino integer
          Max: 1.8446744073709552e+19
        • mod_time string<date-time>
        • mode integer
          Max: 4.294967295e+09
        • name string
        • nlink integer
          Max: 65535
        • size integer<int64>
        • uid integer
          Max: 1.8446744073709552e+19
        • username string
      • mac
      • object object nullable
        • contentMAC
        • content_type string
        • entropy number<double>
        • flags integer
          Max: 4.294967295e+09
        • version integer
          Max: 4.294967295e+09
      • parent_path string
      • security_descriptor string<byte>
      • summary object nullable
        • below object
          • MIME_application integer
            Max: 1.8446744073709552e+19
          • MIME_audio integer
            Max: 1.8446744073709552e+19
          • MIME_image integer
            Max: 1.8446744073709552e+19
          • MIME_other integer
            Max: 1.8446744073709552e+19
          • MIME_text integer
            Max: 1.8446744073709552e+19
          • MIME_video integer
            Max: 1.8446744073709552e+19
          • children integer
            Max: 1.8446744073709552e+19
          • chunks integer
            Max: 1.8446744073709552e+19
          • devices integer
            Max: 1.8446744073709552e+19
          • directories integer
            Max: 1.8446744073709552e+19
          • errors integer
            Max: 1.8446744073709552e+19
          • files integer
            Max: 1.8446744073709552e+19
          • hi_entropy integer
            Max: 1.8446744073709552e+19
          • lo_entropy integer
            Max: 1.8446744073709552e+19
          • max_entropy number<double>
          • max_mod_time integer<int64>
          • max_size integer
            Max: 1.8446744073709552e+19
          • min_entropy number<double>
          • min_mod_time integer<int64>
          • min_size integer
            Max: 1.8446744073709552e+19
          • objects integer
            Max: 1.8446744073709552e+19
          • pipes integer
            Max: 1.8446744073709552e+19
          • setgid integer
            Max: 1.8446744073709552e+19
          • setuid integer
            Max: 1.8446744073709552e+19
          • size integer
            Max: 1.8446744073709552e+19
          • sockets integer
            Max: 1.8446744073709552e+19
          • sticky integer
            Max: 1.8446744073709552e+19
          • symlinks integer
            Max: 1.8446744073709552e+19
        • directory object
          • MIME_application integer
            Max: 1.8446744073709552e+19
          • MIME_audio integer
            Max: 1.8446744073709552e+19
          • MIME_image integer
            Max: 1.8446744073709552e+19
          • MIME_other integer
            Max: 1.8446744073709552e+19
          • MIME_text integer
            Max: 1.8446744073709552e+19
          • MIME_video integer
            Max: 1.8446744073709552e+19
          • avg_entropy number<double>
          • avg_size integer
            Max: 1.8446744073709552e+19
          • children integer
            Max: 1.8446744073709552e+19
          • chunks integer
            Max: 1.8446744073709552e+19
          • devices integer
            Max: 1.8446744073709552e+19
          • directories integer
            Max: 1.8446744073709552e+19
          • errors integer
            Max: 1.8446744073709552e+19
          • files integer
            Max: 1.8446744073709552e+19
          • hi_entropy integer
            Max: 1.8446744073709552e+19
          • lo_entropy integer
            Max: 1.8446744073709552e+19
          • max_entropy number<double>
          • max_mod_time integer<int64>
          • max_size integer
            Max: 1.8446744073709552e+19
          • min_entropy number<double>
          • min_mod_time integer<int64>
          • min_size integer
            Max: 1.8446744073709552e+19
          • objects integer
            Max: 1.8446744073709552e+19
          • pipes integer
            Max: 1.8446744073709552e+19
          • setgid integer
            Max: 1.8446744073709552e+19
          • setuid integer
            Max: 1.8446744073709552e+19
          • size integer
            Max: 1.8446744073709552e+19
          • sockets integer
            Max: 1.8446744073709552e+19
          • sticky integer
            Max: 1.8446744073709552e+19
          • sum_entropy number<double>
          • symlinks integer
            Max: 1.8446744073709552e+19
      • symlink_target string nullable
      • tags array[string]
      • version integer
        Max: 4.294967295e+09
  • total integer

Errors

  • 401 Missing, invalid or expired credentials

Every error returns the standard error body.

Request

curl 'https://pcp.example.com/api/v1/kloset/{repouuid}/repository/locate-pathname' \
  -H 'Authorization: Bearer <badge>'

Response 200

{
  "items": [
    {
      "snapshot": {
        "category": "string",
        "classifications": [
          {
            "analyzer": "string",
            "classes": [
              {
                "name": "string",
                "probability": 0
              }
            ]
          }
        ],
        "context": [
          {
            "key": "string",
            "value": "string"
          }
        ],
        "data_classes": [
          "string"
        ],
        "dataset": "string",
        "duration": 0,
        "environment": "string",
        "identifier": {},
        "identity": {
          "identifier": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90",
          "public_key": "U3dhZ2dlciByb2Nrcw=="
        },
        "job": "string",
        "name": "string",
        "perimeter": "string",
        "replicas": 0,
        "sources": [
          {
            "context": [
              {
                "key": "string",
                "value": "string"
              }
            ],
            "importer": {
              "directory": "string",
              "origin": "string",
              "type": "string"
            },
            "indexes": [
              {
                "name": "string",
                "type": "string",
                "value": {}
              }
            ],
            "root": {
              "errors": {},
              "root": {},
              "xattrs": {}
            },
            "summary": {
              "below": {
                "MIME_application": 0,
                "MIME_audio": 0,
                "MIME_image": 0,
                "MIME_other": 0,
                "MIME_text": 0,
                "MIME_video": 0,
                "children": 0,
                "chunks": 0,
                "devices": 0,
                "directories": 0,
                "errors": 0,
                "files": 0,
                "hi_entropy": 0,
                "lo_entropy": 0,
                "max_entropy": 0,
                "max_mod_time": 0,
                "max_size": 0,
                "min_entropy": 0,
                "min_mod_time": 0,
                "min_size": 0,
                "objects": 0,
                "pipes": 0,
                "setgid": 0,
                "setuid": 0,
                "size": 0,
                "sockets": 0,
                "sticky": 0,
                "symlinks": 0
              },
              "directory": {
                "MIME_application": 0,
                "MIME_audio": 0,
                "MIME_image": 0,
                "MIME_other": 0,
                "MIME_text": 0,
                "MIME_video": 0,
                "avg_entropy": 0,
                "avg_size": 0,
                "children": 0,
                "chunks": 0,
                "devices": 0,
                "directories": 0,
                "errors": 0,
                "files": 0,
                "hi_entropy": 0,
                "lo_entropy": 0,
                "max_entropy": 0,
                "max_mod_time": 0,
                "max_size": 0,
                "min_entropy": 0,
                "min_mod_time": 0,
                "min_size": 0,
                "objects": 0,
                "pipes": 0,
                "setgid": 0,
                "setuid": 0,
                "size": 0,
                "sockets": 0,
                "sticky": 0,
                "sum_entropy": 0,
                "symlinks": 0
              }
            }
          }
        ],
        "tags": [
          "string"
        ],
        "timestamp": "2026-01-01T00:00:00Z",
        "version": 0
      },
      "vfs_entry": {
        "alternate_data_streams": [
          "string"
        ],
        "chunks": 0,
        "classifications": [
          {
            "analyzer": "string",
            "classes": [
              "string"
            ],
            "scores": [
              {
                "key": "string",
                "value": 0
              }
            ]
          }
        ],
        "content_type": "string",
        "custom_metadata": [
          {
            "key": "string",
            "value": "U3dhZ2dlciByb2Nrcw=="
          }
        ],
        "entropy": 0,
        "extended_attributes": [
          "string"
        ],
        "file_attributes": 0,
        "file_info": {
          "dev": 0,
          "flags": 0,
          "gid": 0,
          "groupname": "string",
          "ino": 0,
          "mod_time": "2026-01-01T00:00:00Z",
          "mode": 0,
          "name": "string",
          "nlink": 0,
          "size": 0,
          "uid": 0,
          "username": "string"
        },
        "mac": {},
        "object": {
          "contentMAC": {},
          "content_type": "string",
          "entropy": 0,
          "flags": 0,
          "version": 0
        },
        "parent_path": "string",
        "security_descriptor": "U3dhZ2dlciByb2Nrcw==",
        "summary": {
          "below": {
            "MIME_application": 0,
            "MIME_audio": 0,
            "MIME_image": 0,
            "MIME_other": 0,
            "MIME_text": 0,
            "MIME_video": 0,
            "children": 0,
            "chunks": 0,
            "devices": 0,
            "directories": 0,
            "errors": 0,
            "files": 0,
            "hi_entropy": 0,
            "lo_entropy": 0,
            "max_entropy": 0,
            "max_mod_time": 0,
            "max_size": 0,
            "min_entropy": 0,
            "min_mod_time": 0,
            "min_size": 0,
            "objects": 0,
            "pipes": 0,
            "setgid": 0,
            "setuid": 0,
            "size": 0,
            "sockets": 0,
            "sticky": 0,
            "symlinks": 0
          },
          "directory": {
            "MIME_application": 0,
            "MIME_audio": 0,
            "MIME_image": 0,
            "MIME_other": 0,
            "MIME_text": 0,
            "MIME_video": 0,
            "avg_entropy": 0,
            "avg_size": 0,
            "children": 0,
            "chunks": 0,
            "devices": 0,
            "directories": 0,
            "errors": 0,
            "files": 0,
            "hi_entropy": 0,
            "lo_entropy": 0,
            "max_entropy": 0,
            "max_mod_time": 0,
            "max_size": 0,
            "min_entropy": 0,
            "min_mod_time": 0,
            "min_size": 0,
            "objects": 0,
            "pipes": 0,
            "setgid": 0,
            "setuid": 0,
            "size": 0,
            "sockets": 0,
            "sticky": 0,
            "sum_entropy": 0,
            "symlinks": 0
          }
        },
        "symlink_target": "string",
        "tags": [
          "string"
        ],
        "version": 0
      }
    }
  ],
  "total": 0
}

List the snapshots in a store

GET /api/v1/kloset/{repouuid}/repository/snapshots
Badge

Path parameters

  • repouuid string<uuid> required
    The store connector.

Query parameters

  • offset integer
    Number of items to skip.
    Default: 0
  • limit integer
    Maximum number of items to return.
    Default: 50 Min: 1
  • importer string
    Only snapshots of this importer type.
  • since string
    Only snapshots taken since this time or duration.
  • sort string
    Comma-separated sort keys. Prefix a key with - to sort in descending order.
    Default: "Timestamp"
  • organization_id string<uuid>
    Organization to act on, at or below the caller’s. Defaults to the caller’s.

Response 200 OK application/json

  • items array[object]
    • legal_hold boolean
    • snapshot_header object
      • category string
      • classifications array[object]
        • analyzer string
        • classes array[object]
          • name string
          • probability number<double>
      • context array[object]
        • key string
        • value string
      • data_classes array[string]
      • dataset string
      • duration integer<int64>
      • environment string
      • identifier
      • identity object
        • identifier string<uuid>
        • public_key string<byte>
      • job string
      • name string
      • perimeter string
      • replicas integer
        Max: 4.294967295e+09
      • sources array[object]
        • context array[object]
          • key string
          • value string
        • importer object
          • directory string
          • origin string
          • type string
        • indexes array[object]
          • name string
          • type string
          • value
        • root object
          • errors
          • root
          • xattrs
        • summary object
          • below object
            • MIME_application integer
              Max: 1.8446744073709552e+19
            • MIME_audio integer
              Max: 1.8446744073709552e+19
            • MIME_image integer
              Max: 1.8446744073709552e+19
            • MIME_other integer
              Max: 1.8446744073709552e+19
            • MIME_text integer
              Max: 1.8446744073709552e+19
            • MIME_video integer
              Max: 1.8446744073709552e+19
            • children integer
              Max: 1.8446744073709552e+19
            • chunks integer
              Max: 1.8446744073709552e+19
            • devices integer
              Max: 1.8446744073709552e+19
            • directories integer
              Max: 1.8446744073709552e+19
            • errors integer
              Max: 1.8446744073709552e+19
            • files integer
              Max: 1.8446744073709552e+19
            • hi_entropy integer
              Max: 1.8446744073709552e+19
            • lo_entropy integer
              Max: 1.8446744073709552e+19
            • max_entropy number<double>
            • max_mod_time integer<int64>
            • max_size integer
              Max: 1.8446744073709552e+19
            • min_entropy number<double>
            • min_mod_time integer<int64>
            • min_size integer
              Max: 1.8446744073709552e+19
            • objects integer
              Max: 1.8446744073709552e+19
            • pipes integer
              Max: 1.8446744073709552e+19
            • setgid integer
              Max: 1.8446744073709552e+19
            • setuid integer
              Max: 1.8446744073709552e+19
            • size integer
              Max: 1.8446744073709552e+19
            • sockets integer
              Max: 1.8446744073709552e+19
            • sticky integer
              Max: 1.8446744073709552e+19
            • symlinks integer
              Max: 1.8446744073709552e+19
          • directory object
            • MIME_application integer
              Max: 1.8446744073709552e+19
            • MIME_audio integer
              Max: 1.8446744073709552e+19
            • MIME_image integer
              Max: 1.8446744073709552e+19
            • MIME_other integer
              Max: 1.8446744073709552e+19
            • MIME_text integer
              Max: 1.8446744073709552e+19
            • MIME_video integer
              Max: 1.8446744073709552e+19
            • avg_entropy number<double>
            • avg_size integer
              Max: 1.8446744073709552e+19
            • children integer
              Max: 1.8446744073709552e+19
            • chunks integer
              Max: 1.8446744073709552e+19
            • devices integer
              Max: 1.8446744073709552e+19
            • directories integer
              Max: 1.8446744073709552e+19
            • errors integer
              Max: 1.8446744073709552e+19
            • files integer
              Max: 1.8446744073709552e+19
            • hi_entropy integer
              Max: 1.8446744073709552e+19
            • lo_entropy integer
              Max: 1.8446744073709552e+19
            • max_entropy number<double>
            • max_mod_time integer<int64>
            • max_size integer
              Max: 1.8446744073709552e+19
            • min_entropy number<double>
            • min_mod_time integer<int64>
            • min_size integer
              Max: 1.8446744073709552e+19
            • objects integer
              Max: 1.8446744073709552e+19
            • pipes integer
              Max: 1.8446744073709552e+19
            • setgid integer
              Max: 1.8446744073709552e+19
            • setuid integer
              Max: 1.8446744073709552e+19
            • size integer
              Max: 1.8446744073709552e+19
            • sockets integer
              Max: 1.8446744073709552e+19
            • sticky integer
              Max: 1.8446744073709552e+19
            • sum_entropy number<double>
            • symlinks integer
              Max: 1.8446744073709552e+19
      • tags array[string]
      • timestamp string<date-time>
      • version integer
        Max: 4.294967295e+09
  • total integer

Errors

  • 401 Missing, invalid or expired credentials

Every error returns the standard error body.

Request

curl 'https://pcp.example.com/api/v1/kloset/{repouuid}/repository/snapshots' \
  -H 'Authorization: Bearer <badge>'

Response 200

{
  "items": [
    {
      "legal_hold": true,
      "snapshot_header": {
        "category": "string",
        "classifications": [
          {
            "analyzer": "string",
            "classes": [
              {
                "name": "string",
                "probability": 0
              }
            ]
          }
        ],
        "context": [
          {
            "key": "string",
            "value": "string"
          }
        ],
        "data_classes": [
          "string"
        ],
        "dataset": "string",
        "duration": 0,
        "environment": "string",
        "identifier": {},
        "identity": {
          "identifier": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90",
          "public_key": "U3dhZ2dlciByb2Nrcw=="
        },
        "job": "string",
        "name": "string",
        "perimeter": "string",
        "replicas": 0,
        "sources": [
          {
            "context": [
              {
                "key": "string",
                "value": "string"
              }
            ],
            "importer": {
              "directory": "string",
              "origin": "string",
              "type": "string"
            },
            "indexes": [
              {
                "name": "string",
                "type": "string",
                "value": {}
              }
            ],
            "root": {
              "errors": {},
              "root": {},
              "xattrs": {}
            },
            "summary": {
              "below": {
                "MIME_application": 0,
                "MIME_audio": 0,
                "MIME_image": 0,
                "MIME_other": 0,
                "MIME_text": 0,
                "MIME_video": 0,
                "children": 0,
                "chunks": 0,
                "devices": 0,
                "directories": 0,
                "errors": 0,
                "files": 0,
                "hi_entropy": 0,
                "lo_entropy": 0,
                "max_entropy": 0,
                "max_mod_time": 0,
                "max_size": 0,
                "min_entropy": 0,
                "min_mod_time": 0,
                "min_size": 0,
                "objects": 0,
                "pipes": 0,
                "setgid": 0,
                "setuid": 0,
                "size": 0,
                "sockets": 0,
                "sticky": 0,
                "symlinks": 0
              },
              "directory": {
                "MIME_application": 0,
                "MIME_audio": 0,
                "MIME_image": 0,
                "MIME_other": 0,
                "MIME_text": 0,
                "MIME_video": 0,
                "avg_entropy": 0,
                "avg_size": 0,
                "children": 0,
                "chunks": 0,
                "devices": 0,
                "directories": 0,
                "errors": 0,
                "files": 0,
                "hi_entropy": 0,
                "lo_entropy": 0,
                "max_entropy": 0,
                "max_mod_time": 0,
                "max_size": 0,
                "min_entropy": 0,
                "min_mod_time": 0,
                "min_size": 0,
                "objects": 0,
                "pipes": 0,
                "setgid": 0,
                "setuid": 0,
                "size": 0,
                "sockets": 0,
                "sticky": 0,
                "sum_entropy": 0,
                "symlinks": 0
              }
            }
          }
        ],
        "tags": [
          "string"
        ],
        "timestamp": "2026-01-01T00:00:00Z",
        "version": 0
      }
    }
  ],
  "total": 0
}

Sign a URL to read a file from a snapshot

POST /api/v1/kloset/{repouuid}/snapshot/reader-sign-url/{snapshot_path}
Badge

Path parameters

  • snapshot_path string required
  • repouuid string<uuid> required
    The store connector.

Query parameters

  • organization_id string<uuid>
    Organization to act on, at or below the caller’s. Defaults to the caller’s.

Response 200 OK application/json

  • item object
    • signature string

Errors

  • 401 Missing, invalid or expired credentials

Every error returns the standard error body.

Request

curl -X POST 'https://pcp.example.com/api/v1/kloset/{repouuid}/snapshot/reader-sign-url/{snapshot_path}' \
  -H 'Authorization: Bearer <badge>'

Response 200

{
  "item": {
    "signature": "string"
  }
}

Read a file from a snapshot

GET /api/v1/kloset/{repouuid}/snapshot/reader/{snapshot_path}
No authentication

Path parameters

  • snapshot_path string required
  • repouuid string<uuid> required
    The store connector.

Query parameters

  • signature string
    Signature from the reader-sign-url endpoint. Without it, a badge is required.
  • download boolean
    Send the file as an attachment.
    Default: false
  • render string
    How to render the file.
    Allowed: auto, text, text_styled, code Default: "auto"

Response 200 The file application/octet-stream

Request

curl 'https://pcp.example.com/api/v1/kloset/{repouuid}/snapshot/reader/{snapshot_path}'

List the children of a snapshot directory

GET /api/v1/kloset/{repouuid}/snapshot/vfs/children/{snapshot_path}
Badge

Path parameters

  • snapshot_path string required
  • repouuid string<uuid> required
    The store connector.

Query parameters

  • offset integer
    Number of items to skip.
    Default: 0
  • limit integer
    Maximum number of items to return.
    Default: 50 Min: 1
  • sort string
    Comma-separated sort keys. Prefix a key with - to sort in descending order.
    Default: "Timestamp"
  • organization_id string<uuid>
    Organization to act on, at or below the caller’s. Defaults to the caller’s.

Response 200 OK application/json

  • items array[object]
    • alternate_data_streams array[string]
    • chunks integer nullable
      Max: 1.8446744073709552e+19
    • classifications array[object]
      • analyzer string
      • classes array[string]
      • scores array[object]
        • key string
        • value number<double>
    • content_type string nullable
    • custom_metadata array[object]
      • key string
      • value string<byte>
    • entropy number<double> nullable
    • extended_attributes array[string]
    • file_attributes integer
      Max: 4.294967295e+09
    • file_info object
      • dev integer
        Max: 1.8446744073709552e+19
      • flags integer
        Max: 4.294967295e+09
      • gid integer
        Max: 1.8446744073709552e+19
      • groupname string
      • ino integer
        Max: 1.8446744073709552e+19
      • mod_time string<date-time>
      • mode integer
        Max: 4.294967295e+09
      • name string
      • nlink integer
        Max: 65535
      • size integer<int64>
      • uid integer
        Max: 1.8446744073709552e+19
      • username string
    • mac
    • object object nullable
      • contentMAC
      • content_type string
      • entropy number<double>
      • flags integer
        Max: 4.294967295e+09
      • version integer
        Max: 4.294967295e+09
    • parent_path string
    • security_descriptor string<byte>
    • summary object nullable
      • below object
        • MIME_application integer
          Max: 1.8446744073709552e+19
        • MIME_audio integer
          Max: 1.8446744073709552e+19
        • MIME_image integer
          Max: 1.8446744073709552e+19
        • MIME_other integer
          Max: 1.8446744073709552e+19
        • MIME_text integer
          Max: 1.8446744073709552e+19
        • MIME_video integer
          Max: 1.8446744073709552e+19
        • children integer
          Max: 1.8446744073709552e+19
        • chunks integer
          Max: 1.8446744073709552e+19
        • devices integer
          Max: 1.8446744073709552e+19
        • directories integer
          Max: 1.8446744073709552e+19
        • errors integer
          Max: 1.8446744073709552e+19
        • files integer
          Max: 1.8446744073709552e+19
        • hi_entropy integer
          Max: 1.8446744073709552e+19
        • lo_entropy integer
          Max: 1.8446744073709552e+19
        • max_entropy number<double>
        • max_mod_time integer<int64>
        • max_size integer
          Max: 1.8446744073709552e+19
        • min_entropy number<double>
        • min_mod_time integer<int64>
        • min_size integer
          Max: 1.8446744073709552e+19
        • objects integer
          Max: 1.8446744073709552e+19
        • pipes integer
          Max: 1.8446744073709552e+19
        • setgid integer
          Max: 1.8446744073709552e+19
        • setuid integer
          Max: 1.8446744073709552e+19
        • size integer
          Max: 1.8446744073709552e+19
        • sockets integer
          Max: 1.8446744073709552e+19
        • sticky integer
          Max: 1.8446744073709552e+19
        • symlinks integer
          Max: 1.8446744073709552e+19
      • directory object
        • MIME_application integer
          Max: 1.8446744073709552e+19
        • MIME_audio integer
          Max: 1.8446744073709552e+19
        • MIME_image integer
          Max: 1.8446744073709552e+19
        • MIME_other integer
          Max: 1.8446744073709552e+19
        • MIME_text integer
          Max: 1.8446744073709552e+19
        • MIME_video integer
          Max: 1.8446744073709552e+19
        • avg_entropy number<double>
        • avg_size integer
          Max: 1.8446744073709552e+19
        • children integer
          Max: 1.8446744073709552e+19
        • chunks integer
          Max: 1.8446744073709552e+19
        • devices integer
          Max: 1.8446744073709552e+19
        • directories integer
          Max: 1.8446744073709552e+19
        • errors integer
          Max: 1.8446744073709552e+19
        • files integer
          Max: 1.8446744073709552e+19
        • hi_entropy integer
          Max: 1.8446744073709552e+19
        • lo_entropy integer
          Max: 1.8446744073709552e+19
        • max_entropy number<double>
        • max_mod_time integer<int64>
        • max_size integer
          Max: 1.8446744073709552e+19
        • min_entropy number<double>
        • min_mod_time integer<int64>
        • min_size integer
          Max: 1.8446744073709552e+19
        • objects integer
          Max: 1.8446744073709552e+19
        • pipes integer
          Max: 1.8446744073709552e+19
        • setgid integer
          Max: 1.8446744073709552e+19
        • setuid integer
          Max: 1.8446744073709552e+19
        • size integer
          Max: 1.8446744073709552e+19
        • sockets integer
          Max: 1.8446744073709552e+19
        • sticky integer
          Max: 1.8446744073709552e+19
        • sum_entropy number<double>
        • symlinks integer
          Max: 1.8446744073709552e+19
    • symlink_target string nullable
    • tags array[string]
    • version integer
      Max: 4.294967295e+09
  • total integer

Errors

  • 401 Missing, invalid or expired credentials

Every error returns the standard error body.

Request

curl 'https://pcp.example.com/api/v1/kloset/{repouuid}/snapshot/vfs/children/{snapshot_path}' \
  -H 'Authorization: Bearer <badge>'

Response 200

{
  "items": [
    {
      "alternate_data_streams": [
        "string"
      ],
      "chunks": 0,
      "classifications": [
        {
          "analyzer": "string",
          "classes": [
            "string"
          ],
          "scores": [
            {
              "key": "string",
              "value": 0
            }
          ]
        }
      ],
      "content_type": "string",
      "custom_metadata": [
        {
          "key": "string",
          "value": "U3dhZ2dlciByb2Nrcw=="
        }
      ],
      "entropy": 0,
      "extended_attributes": [
        "string"
      ],
      "file_attributes": 0,
      "file_info": {
        "dev": 0,
        "flags": 0,
        "gid": 0,
        "groupname": "string",
        "ino": 0,
        "mod_time": "2026-01-01T00:00:00Z",
        "mode": 0,
        "name": "string",
        "nlink": 0,
        "size": 0,
        "uid": 0,
        "username": "string"
      },
      "mac": {},
      "object": {
        "contentMAC": {},
        "content_type": "string",
        "entropy": 0,
        "flags": 0,
        "version": 0
      },
      "parent_path": "string",
      "security_descriptor": "U3dhZ2dlciByb2Nrcw==",
      "summary": {
        "below": {
          "MIME_application": 0,
          "MIME_audio": 0,
          "MIME_image": 0,
          "MIME_other": 0,
          "MIME_text": 0,
          "MIME_video": 0,
          "children": 0,
          "chunks": 0,
          "devices": 0,
          "directories": 0,
          "errors": 0,
          "files": 0,
          "hi_entropy": 0,
          "lo_entropy": 0,
          "max_entropy": 0,
          "max_mod_time": 0,
          "max_size": 0,
          "min_entropy": 0,
          "min_mod_time": 0,
          "min_size": 0,
          "objects": 0,
          "pipes": 0,
          "setgid": 0,
          "setuid": 0,
          "size": 0,
          "sockets": 0,
          "sticky": 0,
          "symlinks": 0
        },
        "directory": {
          "MIME_application": 0,
          "MIME_audio": 0,
          "MIME_image": 0,
          "MIME_other": 0,
          "MIME_text": 0,
          "MIME_video": 0,
          "avg_entropy": 0,
          "avg_size": 0,
          "children": 0,
          "chunks": 0,
          "devices": 0,
          "directories": 0,
          "errors": 0,
          "files": 0,
          "hi_entropy": 0,
          "lo_entropy": 0,
          "max_entropy": 0,
          "max_mod_time": 0,
          "max_size": 0,
          "min_entropy": 0,
          "min_mod_time": 0,
          "min_size": 0,
          "objects": 0,
          "pipes": 0,
          "setgid": 0,
          "setuid": 0,
          "size": 0,
          "sockets": 0,
          "sticky": 0,
          "sum_entropy": 0,
          "symlinks": 0
        }
      },
      "symlink_target": "string",
      "tags": [
        "string"
      ],
      "version": 0
    }
  ],
  "total": 0
}

List the chunks of a snapshot file

GET /api/v1/kloset/{repouuid}/snapshot/vfs/chunks/{snapshot_path}
Badge

Path parameters

  • snapshot_path string required
  • repouuid string<uuid> required
    The store connector.

Query parameters

  • offset integer
    Number of items to skip.
    Default: 0
  • limit integer
    Maximum number of items to return.
    Default: 50 Min: 1
  • organization_id string<uuid>
    Organization to act on, at or below the caller’s. Defaults to the caller’s.

Response 200 OK application/json

  • items array[object]
    • contentMAC
    • entropy number<double>
    • flags integer
      Max: 4.294967295e+09
    • length integer
      Max: 4.294967295e+09
    • version integer
      Max: 4.294967295e+09
  • total integer

Errors

  • 401 Missing, invalid or expired credentials

Every error returns the standard error body.

Request

curl 'https://pcp.example.com/api/v1/kloset/{repouuid}/snapshot/vfs/chunks/{snapshot_path}' \
  -H 'Authorization: Bearer <badge>'

Response 200

{
  "items": [
    {
      "contentMAC": {},
      "entropy": 0,
      "flags": 0,
      "length": 0,
      "version": 0
    }
  ],
  "total": 0
}

Download prepared snapshot files as an archive

GET /api/v1/kloset/{repouuid}/snapshot/vfs/downloader-sign-url/{id}
No authentication

Path parameters

  • repouuid string<uuid> required
    The store connector.
  • id string required

Query parameters

  • name string
    Archive name, without the extension.
  • format string
    Archive format.

Response 200 The file application/octet-stream

Request

curl 'https://pcp.example.com/api/v1/kloset/{repouuid}/snapshot/vfs/downloader-sign-url/{id}'

Prepare a download of snapshot files

POST /api/v1/kloset/{repouuid}/snapshot/vfs/downloader/{snapshot_path}
Badge

Path parameters

  • snapshot_path string required
  • repouuid string<uuid> required
    The store connector.

Query parameters

  • organization_id string<uuid>
    Organization to act on, at or below the caller’s. Defaults to the caller’s.

Request body application/json required

  • items array[object]
    • pathname string
  • name string
  • rebase boolean nullable

Response 200 OK application/json

  • id string

Errors

  • 401 Missing, invalid or expired credentials

Every error returns the standard error body.

Request

curl -X POST 'https://pcp.example.com/api/v1/kloset/{repouuid}/snapshot/vfs/downloader/{snapshot_path}' \
  -H 'Authorization: Bearer <badge>' \
  -H 'Content-Type: application/json' \
  -d '{
  "items": [
    {
      "pathname": "string"
    }
  ],
  "name": "string",
  "rebase": true
}'

Response 200

{
  "id": "string"
}

List the errors recorded under a snapshot path

GET /api/v1/kloset/{repouuid}/snapshot/vfs/errors/{snapshot_path}
Badge

Path parameters

  • snapshot_path string required
  • repouuid string<uuid> required
    The store connector.

Query parameters

  • offset integer
    Number of items to skip.
    Default: 0
  • limit integer
    Maximum number of items to return.
    Default: 50 Min: 1
  • sort string
    Comma-separated sort keys. Prefix a key with - to sort in descending order.
    Default: "Timestamp"
  • organization_id string<uuid>
    Organization to act on, at or below the caller’s. Defaults to the caller’s.

Response 200 OK application/json

  • items array[object]
    • error string
    • name string
    • version integer
      Max: 4.294967295e+09
  • total integer

Errors

  • 401 Missing, invalid or expired credentials

Every error returns the standard error body.

Request

curl 'https://pcp.example.com/api/v1/kloset/{repouuid}/snapshot/vfs/errors/{snapshot_path}' \
  -H 'Authorization: Bearer <badge>'

Response 200

{
  "items": [
    {
      "error": "string",
      "name": "string",
      "version": 0
    }
  ],
  "total": 0
}

Search the files of a snapshot

GET /api/v1/kloset/{repouuid}/snapshot/vfs/search/{snapshot_path}
Badge

Path parameters

  • snapshot_path string required
  • repouuid string<uuid> required
    The store connector.

Query parameters

  • offset integer
    Number of items to skip.
    Default: 0
  • limit integer
    Maximum number of items to return.
    Default: 50 Min: 1
  • pattern string
    Pattern the names must match.
  • recursive boolean
    Search the subdirectories too.
    Default: false
  • mime array[string]
    Only files of these MIME types. At most 20.
  • organization_id string<uuid>
    Organization to act on, at or below the caller’s. Defaults to the caller’s.

Response 200 OK application/json

  • has_next boolean
  • items array[object]
    • alternate_data_streams array[string]
    • chunks integer nullable
      Max: 1.8446744073709552e+19
    • classifications array[object]
      • analyzer string
      • classes array[string]
      • scores array[object]
        • key string
        • value number<double>
    • content_type string nullable
    • custom_metadata array[object]
      • key string
      • value string<byte>
    • entropy number<double> nullable
    • extended_attributes array[string]
    • file_attributes integer
      Max: 4.294967295e+09
    • file_info object
      • dev integer
        Max: 1.8446744073709552e+19
      • flags integer
        Max: 4.294967295e+09
      • gid integer
        Max: 1.8446744073709552e+19
      • groupname string
      • ino integer
        Max: 1.8446744073709552e+19
      • mod_time string<date-time>
      • mode integer
        Max: 4.294967295e+09
      • name string
      • nlink integer
        Max: 65535
      • size integer<int64>
      • uid integer
        Max: 1.8446744073709552e+19
      • username string
    • mac
    • object object nullable
      • contentMAC
      • content_type string
      • entropy number<double>
      • flags integer
        Max: 4.294967295e+09
      • version integer
        Max: 4.294967295e+09
    • parent_path string
    • security_descriptor string<byte>
    • summary object nullable
      • below object
        • MIME_application integer
          Max: 1.8446744073709552e+19
        • MIME_audio integer
          Max: 1.8446744073709552e+19
        • MIME_image integer
          Max: 1.8446744073709552e+19
        • MIME_other integer
          Max: 1.8446744073709552e+19
        • MIME_text integer
          Max: 1.8446744073709552e+19
        • MIME_video integer
          Max: 1.8446744073709552e+19
        • children integer
          Max: 1.8446744073709552e+19
        • chunks integer
          Max: 1.8446744073709552e+19
        • devices integer
          Max: 1.8446744073709552e+19
        • directories integer
          Max: 1.8446744073709552e+19
        • errors integer
          Max: 1.8446744073709552e+19
        • files integer
          Max: 1.8446744073709552e+19
        • hi_entropy integer
          Max: 1.8446744073709552e+19
        • lo_entropy integer
          Max: 1.8446744073709552e+19
        • max_entropy number<double>
        • max_mod_time integer<int64>
        • max_size integer
          Max: 1.8446744073709552e+19
        • min_entropy number<double>
        • min_mod_time integer<int64>
        • min_size integer
          Max: 1.8446744073709552e+19
        • objects integer
          Max: 1.8446744073709552e+19
        • pipes integer
          Max: 1.8446744073709552e+19
        • setgid integer
          Max: 1.8446744073709552e+19
        • setuid integer
          Max: 1.8446744073709552e+19
        • size integer
          Max: 1.8446744073709552e+19
        • sockets integer
          Max: 1.8446744073709552e+19
        • sticky integer
          Max: 1.8446744073709552e+19
        • symlinks integer
          Max: 1.8446744073709552e+19
      • directory object
        • MIME_application integer
          Max: 1.8446744073709552e+19
        • MIME_audio integer
          Max: 1.8446744073709552e+19
        • MIME_image integer
          Max: 1.8446744073709552e+19
        • MIME_other integer
          Max: 1.8446744073709552e+19
        • MIME_text integer
          Max: 1.8446744073709552e+19
        • MIME_video integer
          Max: 1.8446744073709552e+19
        • avg_entropy number<double>
        • avg_size integer
          Max: 1.8446744073709552e+19
        • children integer
          Max: 1.8446744073709552e+19
        • chunks integer
          Max: 1.8446744073709552e+19
        • devices integer
          Max: 1.8446744073709552e+19
        • directories integer
          Max: 1.8446744073709552e+19
        • errors integer
          Max: 1.8446744073709552e+19
        • files integer
          Max: 1.8446744073709552e+19
        • hi_entropy integer
          Max: 1.8446744073709552e+19
        • lo_entropy integer
          Max: 1.8446744073709552e+19
        • max_entropy number<double>
        • max_mod_time integer<int64>
        • max_size integer
          Max: 1.8446744073709552e+19
        • min_entropy number<double>
        • min_mod_time integer<int64>
        • min_size integer
          Max: 1.8446744073709552e+19
        • objects integer
          Max: 1.8446744073709552e+19
        • pipes integer
          Max: 1.8446744073709552e+19
        • setgid integer
          Max: 1.8446744073709552e+19
        • setuid integer
          Max: 1.8446744073709552e+19
        • size integer
          Max: 1.8446744073709552e+19
        • sockets integer
          Max: 1.8446744073709552e+19
        • sticky integer
          Max: 1.8446744073709552e+19
        • sum_entropy number<double>
        • symlinks integer
          Max: 1.8446744073709552e+19
    • symlink_target string nullable
    • tags array[string]
    • version integer
      Max: 4.294967295e+09

Errors

  • 401 Missing, invalid or expired credentials

Every error returns the standard error body.

Request

curl 'https://pcp.example.com/api/v1/kloset/{repouuid}/snapshot/vfs/search/{snapshot_path}' \
  -H 'Authorization: Bearer <badge>'

Response 200

{
  "has_next": true,
  "items": [
    {
      "alternate_data_streams": [
        "string"
      ],
      "chunks": 0,
      "classifications": [
        {
          "analyzer": "string",
          "classes": [
            "string"
          ],
          "scores": [
            {
              "key": "string",
              "value": 0
            }
          ]
        }
      ],
      "content_type": "string",
      "custom_metadata": [
        {
          "key": "string",
          "value": "U3dhZ2dlciByb2Nrcw=="
        }
      ],
      "entropy": 0,
      "extended_attributes": [
        "string"
      ],
      "file_attributes": 0,
      "file_info": {
        "dev": 0,
        "flags": 0,
        "gid": 0,
        "groupname": "string",
        "ino": 0,
        "mod_time": "2026-01-01T00:00:00Z",
        "mode": 0,
        "name": "string",
        "nlink": 0,
        "size": 0,
        "uid": 0,
        "username": "string"
      },
      "mac": {},
      "object": {
        "contentMAC": {},
        "content_type": "string",
        "entropy": 0,
        "flags": 0,
        "version": 0
      },
      "parent_path": "string",
      "security_descriptor": "U3dhZ2dlciByb2Nrcw==",
      "summary": {
        "below": {
          "MIME_application": 0,
          "MIME_audio": 0,
          "MIME_image": 0,
          "MIME_other": 0,
          "MIME_text": 0,
          "MIME_video": 0,
          "children": 0,
          "chunks": 0,
          "devices": 0,
          "directories": 0,
          "errors": 0,
          "files": 0,
          "hi_entropy": 0,
          "lo_entropy": 0,
          "max_entropy": 0,
          "max_mod_time": 0,
          "max_size": 0,
          "min_entropy": 0,
          "min_mod_time": 0,
          "min_size": 0,
          "objects": 0,
          "pipes": 0,
          "setgid": 0,
          "setuid": 0,
          "size": 0,
          "sockets": 0,
          "sticky": 0,
          "symlinks": 0
        },
        "directory": {
          "MIME_application": 0,
          "MIME_audio": 0,
          "MIME_image": 0,
          "MIME_other": 0,
          "MIME_text": 0,
          "MIME_video": 0,
          "avg_entropy": 0,
          "avg_size": 0,
          "children": 0,
          "chunks": 0,
          "devices": 0,
          "directories": 0,
          "errors": 0,
          "files": 0,
          "hi_entropy": 0,
          "lo_entropy": 0,
          "max_entropy": 0,
          "max_mod_time": 0,
          "max_size": 0,
          "min_entropy": 0,
          "min_mod_time": 0,
          "min_size": 0,
          "objects": 0,
          "pipes": 0,
          "setgid": 0,
          "setuid": 0,
          "size": 0,
          "sockets": 0,
          "sticky": 0,
          "sum_entropy": 0,
          "symlinks": 0
        }
      },
      "symlink_target": "string",
      "tags": [
        "string"
      ],
      "version": 0
    }
  ]
}

Get a file or directory of a snapshot

GET /api/v1/kloset/{repouuid}/snapshot/vfs/{snapshot_path}
Badge

Path parameters

  • snapshot_path string required
  • repouuid string<uuid> required
    The store connector.

Query parameters

  • organization_id string<uuid>
    Organization to act on, at or below the caller’s. Defaults to the caller’s.

Response 200 OK application/json

  • item object nullable
    • alternate_data_streams array[string]
    • chunks integer nullable
      Max: 1.8446744073709552e+19
    • classifications array[object]
      • analyzer string
      • classes array[string]
      • scores array[object]
        • key string
        • value number<double>
    • content_type string nullable
    • custom_metadata array[object]
      • key string
      • value string<byte>
    • entropy number<double> nullable
    • extended_attributes array[string]
    • file_attributes integer
      Max: 4.294967295e+09
    • file_info object
      • dev integer
        Max: 1.8446744073709552e+19
      • flags integer
        Max: 4.294967295e+09
      • gid integer
        Max: 1.8446744073709552e+19
      • groupname string
      • ino integer
        Max: 1.8446744073709552e+19
      • mod_time string<date-time>
      • mode integer
        Max: 4.294967295e+09
      • name string
      • nlink integer
        Max: 65535
      • size integer<int64>
      • uid integer
        Max: 1.8446744073709552e+19
      • username string
    • mac
    • object object nullable
      • contentMAC
      • content_type string
      • entropy number<double>
      • flags integer
        Max: 4.294967295e+09
      • version integer
        Max: 4.294967295e+09
    • parent_path string
    • security_descriptor string<byte>
    • summary object nullable
      • below object
        • MIME_application integer
          Max: 1.8446744073709552e+19
        • MIME_audio integer
          Max: 1.8446744073709552e+19
        • MIME_image integer
          Max: 1.8446744073709552e+19
        • MIME_other integer
          Max: 1.8446744073709552e+19
        • MIME_text integer
          Max: 1.8446744073709552e+19
        • MIME_video integer
          Max: 1.8446744073709552e+19
        • children integer
          Max: 1.8446744073709552e+19
        • chunks integer
          Max: 1.8446744073709552e+19
        • devices integer
          Max: 1.8446744073709552e+19
        • directories integer
          Max: 1.8446744073709552e+19
        • errors integer
          Max: 1.8446744073709552e+19
        • files integer
          Max: 1.8446744073709552e+19
        • hi_entropy integer
          Max: 1.8446744073709552e+19
        • lo_entropy integer
          Max: 1.8446744073709552e+19
        • max_entropy number<double>
        • max_mod_time integer<int64>
        • max_size integer
          Max: 1.8446744073709552e+19
        • min_entropy number<double>
        • min_mod_time integer<int64>
        • min_size integer
          Max: 1.8446744073709552e+19
        • objects integer
          Max: 1.8446744073709552e+19
        • pipes integer
          Max: 1.8446744073709552e+19
        • setgid integer
          Max: 1.8446744073709552e+19
        • setuid integer
          Max: 1.8446744073709552e+19
        • size integer
          Max: 1.8446744073709552e+19
        • sockets integer
          Max: 1.8446744073709552e+19
        • sticky integer
          Max: 1.8446744073709552e+19
        • symlinks integer
          Max: 1.8446744073709552e+19
      • directory object
        • MIME_application integer
          Max: 1.8446744073709552e+19
        • MIME_audio integer
          Max: 1.8446744073709552e+19
        • MIME_image integer
          Max: 1.8446744073709552e+19
        • MIME_other integer
          Max: 1.8446744073709552e+19
        • MIME_text integer
          Max: 1.8446744073709552e+19
        • MIME_video integer
          Max: 1.8446744073709552e+19
        • avg_entropy number<double>
        • avg_size integer
          Max: 1.8446744073709552e+19
        • children integer
          Max: 1.8446744073709552e+19
        • chunks integer
          Max: 1.8446744073709552e+19
        • devices integer
          Max: 1.8446744073709552e+19
        • directories integer
          Max: 1.8446744073709552e+19
        • errors integer
          Max: 1.8446744073709552e+19
        • files integer
          Max: 1.8446744073709552e+19
        • hi_entropy integer
          Max: 1.8446744073709552e+19
        • lo_entropy integer
          Max: 1.8446744073709552e+19
        • max_entropy number<double>
        • max_mod_time integer<int64>
        • max_size integer
          Max: 1.8446744073709552e+19
        • min_entropy number<double>
        • min_mod_time integer<int64>
        • min_size integer
          Max: 1.8446744073709552e+19
        • objects integer
          Max: 1.8446744073709552e+19
        • pipes integer
          Max: 1.8446744073709552e+19
        • setgid integer
          Max: 1.8446744073709552e+19
        • setuid integer
          Max: 1.8446744073709552e+19
        • size integer
          Max: 1.8446744073709552e+19
        • sockets integer
          Max: 1.8446744073709552e+19
        • sticky integer
          Max: 1.8446744073709552e+19
        • sum_entropy number<double>
        • symlinks integer
          Max: 1.8446744073709552e+19
    • symlink_target string nullable
    • tags array[string]
    • version integer
      Max: 4.294967295e+09

Errors

  • 401 Missing, invalid or expired credentials

Every error returns the standard error body.

Request

curl 'https://pcp.example.com/api/v1/kloset/{repouuid}/snapshot/vfs/{snapshot_path}' \
  -H 'Authorization: Bearer <badge>'

Response 200

{
  "item": {
    "alternate_data_streams": [
      "string"
    ],
    "chunks": 0,
    "classifications": [
      {
        "analyzer": "string",
        "classes": [
          "string"
        ],
        "scores": [
          {
            "key": "string",
            "value": 0
          }
        ]
      }
    ],
    "content_type": "string",
    "custom_metadata": [
      {
        "key": "string",
        "value": "U3dhZ2dlciByb2Nrcw=="
      }
    ],
    "entropy": 0,
    "extended_attributes": [
      "string"
    ],
    "file_attributes": 0,
    "file_info": {
      "dev": 0,
      "flags": 0,
      "gid": 0,
      "groupname": "string",
      "ino": 0,
      "mod_time": "2026-01-01T00:00:00Z",
      "mode": 0,
      "name": "string",
      "nlink": 0,
      "size": 0,
      "uid": 0,
      "username": "string"
    },
    "mac": {},
    "object": {
      "contentMAC": {},
      "content_type": "string",
      "entropy": 0,
      "flags": 0,
      "version": 0
    },
    "parent_path": "string",
    "security_descriptor": "U3dhZ2dlciByb2Nrcw==",
    "summary": {
      "below": {
        "MIME_application": 0,
        "MIME_audio": 0,
        "MIME_image": 0,
        "MIME_other": 0,
        "MIME_text": 0,
        "MIME_video": 0,
        "children": 0,
        "chunks": 0,
        "devices": 0,
        "directories": 0,
        "errors": 0,
        "files": 0,
        "hi_entropy": 0,
        "lo_entropy": 0,
        "max_entropy": 0,
        "max_mod_time": 0,
        "max_size": 0,
        "min_entropy": 0,
        "min_mod_time": 0,
        "min_size": 0,
        "objects": 0,
        "pipes": 0,
        "setgid": 0,
        "setuid": 0,
        "size": 0,
        "sockets": 0,
        "sticky": 0,
        "symlinks": 0
      },
      "directory": {
        "MIME_application": 0,
        "MIME_audio": 0,
        "MIME_image": 0,
        "MIME_other": 0,
        "MIME_text": 0,
        "MIME_video": 0,
        "avg_entropy": 0,
        "avg_size": 0,
        "children": 0,
        "chunks": 0,
        "devices": 0,
        "directories": 0,
        "errors": 0,
        "files": 0,
        "hi_entropy": 0,
        "lo_entropy": 0,
        "max_entropy": 0,
        "max_mod_time": 0,
        "max_size": 0,
        "min_entropy": 0,
        "min_mod_time": 0,
        "min_size": 0,
        "objects": 0,
        "pipes": 0,
        "setgid": 0,
        "setuid": 0,
        "size": 0,
        "sockets": 0,
        "sticky": 0,
        "sum_entropy": 0,
        "symlinks": 0
      }
    },
    "symlink_target": "string",
    "tags": [
      "string"
    ],
    "version": 0
  }
}

Get the header of a snapshot

GET /api/v1/kloset/{repouuid}/snapshot/{snapshot}
Badge

Path parameters

  • repouuid string<uuid> required
    The store connector.
  • snapshot string required

Query parameters

  • organization_id string<uuid>
    Organization to act on, at or below the caller’s. Defaults to the caller’s.

Response 200 OK application/json

  • item object nullable
    • category string
    • classifications array[object]
      • analyzer string
      • classes array[object]
        • name string
        • probability number<double>
    • context array[object]
      • key string
      • value string
    • data_classes array[string]
    • dataset string
    • duration integer<int64>
    • environment string
    • identifier
    • identity object
      • identifier string<uuid>
      • public_key string<byte>
    • job string
    • name string
    • perimeter string
    • replicas integer
      Max: 4.294967295e+09
    • sources array[object]
      • context array[object]
        • key string
        • value string
      • importer object
        • directory string
        • origin string
        • type string
      • indexes array[object]
        • name string
        • type string
        • value
      • root object
        • errors
        • root
        • xattrs
      • summary object
        • below object
          • MIME_application integer
            Max: 1.8446744073709552e+19
          • MIME_audio integer
            Max: 1.8446744073709552e+19
          • MIME_image integer
            Max: 1.8446744073709552e+19
          • MIME_other integer
            Max: 1.8446744073709552e+19
          • MIME_text integer
            Max: 1.8446744073709552e+19
          • MIME_video integer
            Max: 1.8446744073709552e+19
          • children integer
            Max: 1.8446744073709552e+19
          • chunks integer
            Max: 1.8446744073709552e+19
          • devices integer
            Max: 1.8446744073709552e+19
          • directories integer
            Max: 1.8446744073709552e+19
          • errors integer
            Max: 1.8446744073709552e+19
          • files integer
            Max: 1.8446744073709552e+19
          • hi_entropy integer
            Max: 1.8446744073709552e+19
          • lo_entropy integer
            Max: 1.8446744073709552e+19
          • max_entropy number<double>
          • max_mod_time integer<int64>
          • max_size integer
            Max: 1.8446744073709552e+19
          • min_entropy number<double>
          • min_mod_time integer<int64>
          • min_size integer
            Max: 1.8446744073709552e+19
          • objects integer
            Max: 1.8446744073709552e+19
          • pipes integer
            Max: 1.8446744073709552e+19
          • setgid integer
            Max: 1.8446744073709552e+19
          • setuid integer
            Max: 1.8446744073709552e+19
          • size integer
            Max: 1.8446744073709552e+19
          • sockets integer
            Max: 1.8446744073709552e+19
          • sticky integer
            Max: 1.8446744073709552e+19
          • symlinks integer
            Max: 1.8446744073709552e+19
        • directory object
          • MIME_application integer
            Max: 1.8446744073709552e+19
          • MIME_audio integer
            Max: 1.8446744073709552e+19
          • MIME_image integer
            Max: 1.8446744073709552e+19
          • MIME_other integer
            Max: 1.8446744073709552e+19
          • MIME_text integer
            Max: 1.8446744073709552e+19
          • MIME_video integer
            Max: 1.8446744073709552e+19
          • avg_entropy number<double>
          • avg_size integer
            Max: 1.8446744073709552e+19
          • children integer
            Max: 1.8446744073709552e+19
          • chunks integer
            Max: 1.8446744073709552e+19
          • devices integer
            Max: 1.8446744073709552e+19
          • directories integer
            Max: 1.8446744073709552e+19
          • errors integer
            Max: 1.8446744073709552e+19
          • files integer
            Max: 1.8446744073709552e+19
          • hi_entropy integer
            Max: 1.8446744073709552e+19
          • lo_entropy integer
            Max: 1.8446744073709552e+19
          • max_entropy number<double>
          • max_mod_time integer<int64>
          • max_size integer
            Max: 1.8446744073709552e+19
          • min_entropy number<double>
          • min_mod_time integer<int64>
          • min_size integer
            Max: 1.8446744073709552e+19
          • objects integer
            Max: 1.8446744073709552e+19
          • pipes integer
            Max: 1.8446744073709552e+19
          • setgid integer
            Max: 1.8446744073709552e+19
          • setuid integer
            Max: 1.8446744073709552e+19
          • size integer
            Max: 1.8446744073709552e+19
          • sockets integer
            Max: 1.8446744073709552e+19
          • sticky integer
            Max: 1.8446744073709552e+19
          • sum_entropy number<double>
          • symlinks integer
            Max: 1.8446744073709552e+19
    • tags array[string]
    • timestamp string<date-time>
    • version integer
      Max: 4.294967295e+09

Errors

  • 401 Missing, invalid or expired credentials

Every error returns the standard error body.

Request

curl 'https://pcp.example.com/api/v1/kloset/{repouuid}/snapshot/{snapshot}' \
  -H 'Authorization: Bearer <badge>'

Response 200

{
  "item": {
    "category": "string",
    "classifications": [
      {
        "analyzer": "string",
        "classes": [
          {
            "name": "string",
            "probability": 0
          }
        ]
      }
    ],
    "context": [
      {
        "key": "string",
        "value": "string"
      }
    ],
    "data_classes": [
      "string"
    ],
    "dataset": "string",
    "duration": 0,
    "environment": "string",
    "identifier": {},
    "identity": {
      "identifier": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90",
      "public_key": "U3dhZ2dlciByb2Nrcw=="
    },
    "job": "string",
    "name": "string",
    "perimeter": "string",
    "replicas": 0,
    "sources": [
      {
        "context": [
          {
            "key": "string",
            "value": "string"
          }
        ],
        "importer": {
          "directory": "string",
          "origin": "string",
          "type": "string"
        },
        "indexes": [
          {
            "name": "string",
            "type": "string",
            "value": {}
          }
        ],
        "root": {
          "errors": {},
          "root": {},
          "xattrs": {}
        },
        "summary": {
          "below": {
            "MIME_application": 0,
            "MIME_audio": 0,
            "MIME_image": 0,
            "MIME_other": 0,
            "MIME_text": 0,
            "MIME_video": 0,
            "children": 0,
            "chunks": 0,
            "devices": 0,
            "directories": 0,
            "errors": 0,
            "files": 0,
            "hi_entropy": 0,
            "lo_entropy": 0,
            "max_entropy": 0,
            "max_mod_time": 0,
            "max_size": 0,
            "min_entropy": 0,
            "min_mod_time": 0,
            "min_size": 0,
            "objects": 0,
            "pipes": 0,
            "setgid": 0,
            "setuid": 0,
            "size": 0,
            "sockets": 0,
            "sticky": 0,
            "symlinks": 0
          },
          "directory": {
            "MIME_application": 0,
            "MIME_audio": 0,
            "MIME_image": 0,
            "MIME_other": 0,
            "MIME_text": 0,
            "MIME_video": 0,
            "avg_entropy": 0,
            "avg_size": 0,
            "children": 0,
            "chunks": 0,
            "devices": 0,
            "directories": 0,
            "errors": 0,
            "files": 0,
            "hi_entropy": 0,
            "lo_entropy": 0,
            "max_entropy": 0,
            "max_mod_time": 0,
            "max_size": 0,
            "min_entropy": 0,
            "min_mod_time": 0,
            "min_size": 0,
            "objects": 0,
            "pipes": 0,
            "setgid": 0,
            "setuid": 0,
            "size": 0,
            "sockets": 0,
            "sticky": 0,
            "sum_entropy": 0,
            "symlinks": 0
          }
        }
      }
    ],
    "tags": [
      "string"
    ],
    "timestamp": "2026-01-01T00:00:00Z",
    "version": 0
  }
}