{"$schema":"http://json-schema.org/draft-07/schema#","schemaId":"a1b2c3d4-e5f6-7890-abcd-ef1234567890","title":"File","type":"object","properties":{"id":{"type":"string","format":"uuid","description":"The unique identifier for the file"},"name":{"type":"string","description":"The original file name"},"displayName":{"type":"string","description":"Custom display name for the file"},"description":{"type":"string","description":"Optional description of the file"},"mimeType":{"type":"string","description":"MIME type of the file (e.g., application/pdf, image/png)"},"size":{"type":"integer","minimum":0,"description":"File size in bytes"},"md5Hash":{"type":"string","description":"MD5 hash of the file content for integrity verification"},"data":{"type":"string","format":"base64","description":"Base64-encoded file content (binary data, legacy)"},"url":{"type":["string","null"],"format":"uri","description":"URL to the file stored in S3-compatible object storage"},"ownerId":{"type":"string","format":"uuid","description":"ID of the user who owns the file"},"folderId":{"type":["string","null"],"format":"uuid","description":"ID of the folder containing the file (null for root level)"},"createdAt":{"type":"string","format":"date-time","description":"When the file was created"},"updatedAt":{"type":"string","format":"date-time","description":"When the file was last updated"}},"required":["id","name","mimeType","size","md5Hash","ownerId","createdAt"],"additionalProperties":false}