fourallportal / fourallportal-typo3-extension
This TYPO3 extension enables the 4allportal-typo3-connector to send files from 4ALLPORTAL to TYPO3.
Package info
github.com/4ALLPORTAL/4allportal-typo3-extension
Type:typo3-cms-extension
pkg:composer/fourallportal/fourallportal-typo3-extension
Requires
- php: >=8.2
- typo3/cms-core: ^13.4 || ^14.0
- typo3/cms-frontend: ^13.4 || ^14.0
Requires (Dev)
- laravel/pint: ^1.29
- phpmd/phpmd: ^2.15
- phpunit/phpunit: ^11
- typo3/cms-backend: ^13.4 || ^14.0
- typo3/cms-fluid: ^13.4 || ^14.0
README
4ALLPORTAL TYPO3 Extension
Share media from your 4ALLPORTAL DAM directly with your TYPO3 website: this extension is the TYPO3-side counterpart of the 4ALLPORTAL TYPO3 Connector. Assets shared in 4ALLPORTAL are pushed into the TYPO3 file abstraction layer (FAL) and kept in sync - including renames, moves, metadata updates and deletions.
What it does
The extension exposes a small JSON REST API under /api that the 4ALLPORTAL connector uses to:
- upload files into a configurable storage and folder path
- read file information
- rename, move and delete files (including cleanup of emptied folders)
- update file metadata (title, description, alternative, keywords, copyright)
Access is restricted to authenticated TYPO3 frontend users via short-lived bearer tokens.
API
| Method | Route | Purpose |
|---|---|---|
| POST | /api/auth |
Authenticate a frontend user, returns a bearer token |
| POST | /api/files |
Upload a file (multipart) |
| GET | /api/files/{uid} |
Get file information |
| PUT | /api/files/{uid} |
Update file metadata |
| DELETE | /api/files/{uid} |
Delete a file |
| POST | /api/files/{uid}/rename |
Rename a file |
| POST | /api/files/{uid}/move |
Move a file |
All routes except /api/auth require an Authorization: Bearer <token> header.
Installation
composer require fourallportal/fourallportal-typo3-extension
Also available in
the TYPO3 Extension Repository
as fourallportal_typo3_extension.
The API requires at least one frontend user (fe_users record) whose credentials are
configured in the 4ALLPORTAL connector.
Documentation
Full installation and configuration guides (including the 4ALLPORTAL side: connector setup, field mapping, download profiles and sharing triggers) are available in the official 4ALLPORTAL TYPO3 Connector documentation.
Compatibility
| Extension | TYPO3 | PHP |
|---|---|---|
| 2.x | 13.4 / 14 | >= 8.2 |
| 1.x | 13 | per TYPO3 requirements |
Version 1.x relied on the third-party extension nng/nnrestapi; since 2.0 the extension is
dependency-free apart from TYPO3 itself.
Releasing
Releases are driven by git tags following semantic versioning. Bump the
version in both composer.json and ext_emconf.php (they must match), commit, then tag.
-
Packagist picks up the new tag automatically via its GitHub webhook and publishes the version - no manual step. Consumers then get it through
composer require. -
TER (TYPO3 Extension Repository) needs an upload archive. Build it from the tag:
composer ter:zip v2.0.0
This writes
Build/dist/fourallportal_typo3_extension_<version>.zip(withext_emconf.phpat the root, dev files excluded) ready to upload at extensions.typo3.org. The command refuses to build if thecomposer.jsonandext_emconf.phpversions disagree.
