Модуль Storage API является фреймворком для файловых хранилищ и обслуживания потоков промышленного уровня. Он обладает следующими характеристиками:
В Друпале 7, модуль можно использовать для хранения данных полей File и Image.
Контейнеры создаются управляющим сайтом и в них хранятся файлы. Каждый контейнер является единицей обслуживания, в нём хранится информация, которая описывает определённые параметры обслуживания файлов. Для локального хранилища это локальный путь, для Amazon S3 это полномочия и название «bucket» и так далее.
Классы тоже создаются управляющим сайтом. Класс содержит любое количество контейнеров и контейнеры одного класса имеют установленный между собой приоритет. Ближние к клиенту контейнеры находятся вверху, ближние к серверу, находятся внизу.
Модули, использующие Storage API, могут добавлять различные классы, которые используются для файлов, имеющих различные цели использования. Например, некоторые файлы могут нуждаться в резервировании по FTP, в то время как другие могут восстанавливаться на лету.
Первоначально, файлы сохраняются в контейнере с низким приоритетом (ближним к серверу). В процессе работы cron, Storage API пытается размножить файлы в каждый контейнер класса. Файлы получаются из контейнера с наивысшим приоритетом, который содержит нужный файл.