$schema: https://json-schema.org/draft/2020-12/schema
$id: File.yaml
type: object
properties:
  downloadUrl:
    type: string
    format: uri
    description: The file's download URL.
  name:
    type: string
    description: The file's name.
  description:
    type: string
    description: The file's description.
  sizeInBytes:
    type: number
    description: The file's size in bytes.
  mimeType:
    type: string
    description: The file's MIME type.
  createdAt:
    type: string
    format: date-time
    description: The timestamp (in UTC) at which the record was created.
  lastModifiedAt:
    type: string
    format: date-time
    description: The timestamp (in UTC) at which the record was last modified.
required:
  - downloadUrl
  - name
  - createdAt
  - lastModifiedAt
unevaluatedProperties:
  not: {}
examples:
  - downloadUrl: https://example.com/file.pdf
    name: example.pdf
    description: A PDF file with instructions
    sizeInBytes: 1000
    mimeType: application/pdf
    createdAt: '2025-01-01T17:01:01.000Z'
    lastModifiedAt: '2025-01-02T17:30:00.000Z'
  - downloadUrl: https://example.com/image.png
    name: image.png
    sizeInBytes: 1000
    mimeType: image/png
    createdAt: '2025-01-01T17:01:01.000Z'
    lastModifiedAt: '2025-01-02T17:30:00.000Z'
description: A field representing a downloadable file.
