{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/imagekit/main/json-schema/imagekit-metadata.json",
  "title": "Metadata",
  "description": "JSON object containing metadata.",
  "type": "object",
  "additionalProperties": true,
  "properties": {
    "height": {
      "type": "integer",
      "description": "The height of the image or video in pixels."
    },
    "width": {
      "type": "integer",
      "description": "The width of the image or video in pixels."
    },
    "size": {
      "type": "integer",
      "description": "The file size in bytes."
    },
    "format": {
      "type": "string",
      "description": "The format of the file (e.g., 'jpg', 'mp4')."
    },
    "hasColorProfile": {
      "type": "boolean",
      "description": "Indicates if the image has a color profile."
    },
    "quality": {
      "type": "integer",
      "description": "The quality indicator of the image."
    },
    "density": {
      "type": "integer",
      "description": "The density of the image in DPI."
    },
    "hasTransparency": {
      "type": "boolean",
      "description": "Indicates if the image contains transparent areas."
    },
    "pHash": {
      "type": "string",
      "description": "Perceptual hash of the image."
    },
    "bitRate": {
      "type": "integer",
      "description": "The bit rate of the video in kbps (only for video)."
    },
    "duration": {
      "type": "integer",
      "description": "The duration of the video in seconds (only for video)."
    },
    "audioCodec": {
      "type": "string",
      "description": "The audio codec used in the video (only for video)."
    },
    "videoCodec": {
      "type": "string",
      "description": "The video codec used in the video (only for video)."
    },
    "exif": {
      "type": "object",
      "additionalProperties": true,
      "properties": {
        "image": {
          "$ref": "#/components/schemas/ExifImage"
        },
        "thumbnail": {
          "$ref": "#/components/schemas/Thumbnail"
        },
        "exif": {
          "$ref": "#/components/schemas/ExifDetails"
        },
        "gps": {
          "$ref": "#/components/schemas/Gps"
        },
        "interoperability": {
          "$ref": "#/components/schemas/Interoperability"
        },
        "makernote": {
          "type": "object",
          "additionalProperties": true
        }
      }
    }
  }
}