> ## Documentation Index
> Fetch the complete documentation index at: https://ekso.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Retrieves a single file's metadata by its identifier. Useful when you have the
file id (e.g. from an upload response) and want to verify existence or fetch
metadata without listing the owner's full file list.



## OpenAPI

````yaml /api-reference/openapi.json get /api/file/{id}
openapi: 3.1.1
info:
  title: EKSO.API
  description: >-
    REST API for EKSO — ticketing, help desk, project management, resource
    planning, and time tracking.
  contact:
    name: Ekso
    url: https://ekso.dev
  version: v1
servers:
  - url: https://{install}
    description: Your self-hosted Ekso install
    variables:
      install:
        default: your-ekso-install.example.com
        description: Your install hostname (the PublicUrl set in /startup)
security: []
tags:
  - name: Clock
  - name: Process
  - name: Rule
  - name: Watch
  - name: User
  - name: UserGroup
  - name: Time
  - name: AppSetting
  - name: Hook
  - name: Tenant
  - name: OutboundStorage
  - name: Plan
  - name: Notification
  - name: MailGeneral
  - name: Mailbox
  - name: OutboundMail
  - name: Ticket
  - name: Link
  - name: Item
  - name: Screen
  - name: BudgetReason
  - name: CostCenter
  - name: Crm
  - name: JobRole
  - name: NonBillable
  - name: Reporting
  - name: Sku
  - name: File
  - name: Docs
  - name: Constraint
  - name: ContentTemplate
  - name: Field
  - name: Area
  - name: Container
  - name: Label
  - name: Board
  - name: Cycle
  - name: AccessControl
  - name: Config
  - name: EntraMeta
  - name: Meta
  - name: Annotation
  - name: Chat
  - name: ApiKey
paths:
  /api/file/{id}:
    get:
      tags:
        - File
      summary: >-
        Retrieves a single file's metadata by its identifier. Useful when you
        have the

        file id (e.g. from an upload response) and want to verify existence or
        fetch

        metadata without listing the owner's full file list.
      operationId: File_getFile
      parameters:
        - name: id
          in: path
          description: The unique identifier of the file.
          required: true
          schema:
            type: string
      responses:
        '200':
          description: The file metadata.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DataFile'
        '400':
          description: Validation error — field-level errors in Fields[]
        '403':
          description: Permission denied — insufficient permissions
        '422':
          description: Business rule violation — logic error
        '500':
          description: Internal server error
      security:
        - Bearer: []
components:
  schemas:
    DataFile:
      type: object
      properties:
        entity:
          type:
            - 'null'
            - string
        owner:
          $ref: '#/components/schemas/ContentOwner'
        ownerId:
          type: string
        uid:
          type: string
        filename:
          type: string
        mimeType:
          type: string
        length:
          type: integer
          format: int64
        tenantId:
          type: string
        id:
          type: string
        created:
          type: string
          format: date-time
        createdBy:
          type: string
        updated:
          type: string
          format: date-time
        updatedBy:
          type: string
        deleted:
          type: boolean
    ContentOwner:
      type: integer
  securitySchemes:
    Bearer:
      type: http
      description: JWT Bearer token. Obtain via the OAuth 2.0 token endpoint.
      scheme: bearer
      bearerFormat: JWT

````