{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "title": "DataAsset",
  "description": "DataAsset schema from Palo Alto Networks Prisma Cloud DSPM API",
  "$id": "https://raw.githubusercontent.com/api-evangelist/palo-alto-networks/refs/heads/main/json-schema/prisma-cloud-dspm-api-data-asset-schema.json",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "Unique data asset identifier."
    },
    "dataStoreId": {
      "type": "string",
      "description": "Parent data store identifier."
    },
    "dataStoreName": {
      "type": "string",
      "description": "Name of the parent data store."
    },
    "name": {
      "type": "string",
      "description": "Name of the data asset (e.g., table name, column name, object prefix, directory name)."
    },
    "assetType": {
      "type": "string",
      "enum": [
        "table",
        "column",
        "objectPrefix",
        "directory",
        "file",
        "collection",
        "index",
        "schema"
      ],
      "description": "Type of data asset."
    },
    "path": {
      "type": "string",
      "description": "Full path to the data asset within the data store."
    },
    "classificationLabels": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Classification labels applied to this data asset."
    },
    "sensitivityLevel": {
      "type": "string",
      "enum": [
        "public",
        "internal",
        "confidential",
        "restricted"
      ],
      "description": "Sensitivity level based on the most sensitive classification."
    },
    "sampleFindings": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "classificationLabel": {
            "type": "string",
            "description": "Classification label matched."
          },
          "pattern": {
            "type": "string",
            "description": "Pattern description."
          },
          "count": {
            "type": "integer",
            "description": "Approximate number of matching records."
          },
          "sampleValue": {
            "type": "string",
            "description": "Masked sample value showing the pattern match."
          }
        }
      },
      "description": "Sample data patterns found during classification."
    },
    "recordCount": {
      "type": "integer",
      "description": "Approximate number of records in this data asset."
    },
    "discoveredAt": {
      "type": "string",
      "format": "date-time",
      "description": "Timestamp when the data asset was first discovered."
    },
    "lastScannedAt": {
      "type": "string",
      "format": "date-time",
      "description": "Timestamp of the most recent classification scan."
    }
  }
}
