---
title: "File abstraction layer (FAL)"
manual: "TYPO3 Explained"
version: "main"
permalink: "https://docs.typo3.org/permalink/t3coreapi:fal-introduction@main"
source: "ApiOverview/Fal/Index.rst"
modified: "2026-09-16T13:05:25+00:00"
---

# File abstraction layer (FAL)

The file abstraction layer (FAL) is TYPO3's toolbox for handling media. This
chapter explains its [architecture](https://docs.typo3.org/permalink/t3coreapi:fal-architecture@main),
[concepts](https://docs.typo3.org/permalink/t3coreapi:fal-concepts@main) and details what a
[web site administrator](https://docs.typo3.org/permalink/t3coreapi:fal-administration@main) should know
about FAL [maintenance](https://docs.typo3.org/permalink/t3coreapi:fal-administration-maintenance@main) and
[permissions](https://docs.typo3.org/permalink/t3coreapi:fal-administration-permissions@main).

Content related assets - mostly videos and images - are accessible through
a *file abstraction layer* API and never referenced directly throughout
the system.

The [API](https://docs.typo3.org/permalink/t3coreapi:using-fal@main) abstracts physical file assets storage within the system. It allows to
store, manipulate and access assets with different *Digital Assets Management Systems*
transparently within the system, allows high availability cloud storages
and assets providers. Assets can be enriched with meta data like description information,
authors, and copyright. This information is stored in local database tables.
All access to files used in content elements should use the FAL API.

This chapter provides a number of examples showing how to use the
file abstraction layer in your own code.

**Contents:**

-   [Basic concepts](https://docs.typo3.org/permalink/t3coreapi:basic-concepts@main)
-   [Architecture](https://docs.typo3.org/permalink/t3coreapi:architecture@main)
    -   [Overview](https://docs.typo3.org/permalink/t3coreapi:overview@main)
    -   [Folders](https://docs.typo3.org/permalink/t3coreapi:folders@main)
    -   [Database structure](https://docs.typo3.org/permalink/t3coreapi:database-structure@main)
    -   [Components](https://docs.typo3.org/permalink/t3coreapi:components@main)
    -   [PSR-14 events](https://docs.typo3.org/permalink/t3coreapi:psr-14-events@main)
    -   [Metadata extractors for the file abstraction layer (FAL)](https://docs.typo3.org/permalink/t3coreapi:metadata-extractors-for-the-file-abstraction-layer-fal@main)
-   [Administration](https://docs.typo3.org/permalink/t3coreapi:administration@main)
    -   [Permissions](https://docs.typo3.org/permalink/t3coreapi:permissions@main)
    -   [File storages](https://docs.typo3.org/permalink/t3coreapi:file-storages@main)
    -   [Maintenance](https://docs.typo3.org/permalink/t3coreapi:maintenance@main)
-   [Using FAL](https://docs.typo3.org/permalink/t3coreapi:using-fal-1@main)
    -   [Using FAL in the frontend](https://docs.typo3.org/permalink/t3coreapi:using-fal-in-the-frontend@main)
    -   [TCA definition](https://docs.typo3.org/permalink/t3coreapi:tca-definition@main)
    -   [The StorageRepository class](https://docs.typo3.org/permalink/t3coreapi:the-storagerepository-class@main)
    -   [Working with files, folders and file references](https://docs.typo3.org/permalink/t3coreapi:working-with-files-folders-and-file-references@main)
    -   [Working with collections](https://docs.typo3.org/permalink/t3coreapi:working-with-collections@main)
    -   [Searching for files](https://docs.typo3.org/permalink/t3coreapi:searching-for-files@main)
-   [File collections](https://docs.typo3.org/permalink/t3coreapi:file-collections@main)
