Download the PHP package codebar-ag/laravel-m-files without Composer
On this page you can find all versions of the php package codebar-ag/laravel-m-files. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download codebar-ag/laravel-m-files
More information about codebar-ag/laravel-m-files
Files in codebar-ag/laravel-m-files
Package laravel-m-files
Short Description M-Files integration with Laravel
License MIT
Homepage https://github.com/codebar-ag/laravel-m-files
Informations about the package laravel-m-files

Laravel M-Files Integration
A Laravel package providing DTOs and requests for integrating with M-Files REST API.
Installation
You can install the package via composer:
Configuration
Publish the configuration file:
Add your M-Files authentication credentials to your .env
file:
Configuration Options
The package supports the following configuration options:
M_FILES_URL
- Your M-Files server URLM_FILES_USERNAME
- Your M-Files usernameM_FILES_PASSWORD
- Your M-Files passwordM_FILES_VAULT_GUID
- The vault GUID to connect toM_FILES_CACHE_DRIVER
- Cache driver for storing authentication tokens (default: file)
Authentication
The package provides automatic authentication token management with caching support.
M-Files Connector
Authentication
Authentication is handled automatically by the MFilesConnector
. When you create a connector instance with your credentials, it will automatically:
- Cache authentication tokens - Tokens are cached for 1 hour to avoid repeated login requests
- Include authentication headers - The
X-Authentication
header is automatically added to all requests - Handle token refresh - When tokens expire, new ones are automatically obtained
Requests
Authentication Requests
LogInToVaultRequest
Gets an authentication token using username/password credentials.
Constructor Parameters:
url
(string) - M-Files server URLvaultGuid
(string) - Vault GUIDusername
(string) - M-Files usernamepassword
(string) - M-Files password
Request:
Response:
File Requests
UploadFileRequest
Uploads a file to M-Files.
Constructor Parameters:
fileContent
(string) - File contentfileName
(string) - File name
Request:
Response:
CreateSingleFileDocumentRequest
Creates a single file document in M-Files.
Constructor Parameters:
title
(string) - Document titlefiles
(array) - Array of uploaded file informationpropertyValues
(array) - Array of SetProperty objects for custom properties
Request:
Response:
With Custom Property Values:
DownloadFileRequest
Downloads a file from M-Files.
Constructor Parameters:
objectType
(int) - Object type IDobjectId
(int) - Object IDobjectVersion
(int) - Object versionfileId
(int) - File ID
Request:
Response:
Property Requests
GetObjectInformationRequest
Retrieves object information and properties from M-Files.
Constructor Parameters:
objectType
(int) - Object type IDobjectId
(int) - Object IDobjectVersion
(int) - Object version
Request:
Response:
SetPropertiesRequest
Sets properties for an existing object in M-Files.
Constructor Parameters:
objectType
(int) - Object type IDobjectId
(int) - Object IDobjectVersion
(int) - Object version (-1 for latest)propertyValues
(array) - Array of SetProperty objects
Request:
Response:
DTOs
Configuration DTOs
ConfigWithCredentials
Represents M-Files configuration with authentication credentials.
Properties:
url
(string) - M-Files server URLvaultGuid
(string) - Vault GUIDusername
(string) - M-Files usernamepassword
(string) - M-Files passwordcacheDriver
(string|null) - Cache driver for tokens
Methods:
fromArray(array $data): self
- Static factory methodtoArray(): array
- Converts to array format
Usage:
File DTOs
File
Represents a file in M-Files.
Properties:
id
(int) - File IDname
(string) - File nameextension
(string|null) - File extensionversion
(int|null) - File versionsize
(int|null) - File size in bytes
Methods:
fromArray(array $data): self
- Static factory methodtoArray(): array
- Converts to array format
Usage:
DownloadedFile
Represents a downloaded file with content and metadata.
Properties:
name
(string|null) - File nameextension
(string|null) - File extensionsize
(int|null) - File size in bytescontentType
(string|null) - MIME content typecontent
(string) - File content
Methods:
fromArray(array $data): self
- Static factory methodtoArray(): array
- Converts to array format
Usage:
Property DTOs
SetProperty
Represents a property value for creating documents.
Properties:
propertyDef
(int) - Property definition IDdataType
(MFDataTypeEnum) - Property data typevalue
(mixed) - Property valuedisplayValue
(mixed) - Display value (optional)
Methods:
fromArray(int $propertyDef, MFDataTypeEnum $dataType, mixed $value, mixed $displayValue = null): self
- Static factory methodtoArray(): array
- Converts to array format for API requests
Usage:
GetProperty
Represents a property retrieved from M-Files.
Properties:
propertyDef
(int) - Property definition IDdataType
(MFDataTypeEnum) - Property data typevalue
(mixed) - Property valuedisplayValue
(mixed) - Display value
Methods:
fromArray(array $data): self
- Static factory methodtoArray(): array
- Converts to array format
Usage:
ObjectProperties
Represents object properties in M-Files.
Properties:
classId
(int) - Class IDobjectId
(int) - Object IDobjectTypeId
(int) - Object type IDobjectVersionId
(int) - Object version IDlastModifiedAt
(CarbonImmutable) - Last modified timestampproperties
(Collection) - Collection of GetProperty objectsfiles
(Collection) - Collection of File objects
Methods:
fromArray(array $data): self
- Static factory methodtoArray(): array
- Converts to array format
Usage:
Enums
MFDataTypeEnum
Represents data types in M-Files.
Available Values:
UNINITIALIZED
(0) - Document/ObjectTEXT
(1) - TextINTEGER
(2) - A 32-bit integerFLOATING
(3) - A double-precision floating pointDATE
(5) - DateTIME
(6) - TimeTIMESTAMP
(7) - TimestampBOOLEAN
(8) - BooleanLOOKUP
(9) - Lookup (from a value list)MULTISELECTLOOKUP
(10) - Multiple selection from a value listINTEGER64
(11) - A 64-bit integerFILETIME
(12) - FILETIME (a 64-bit integer)MULTILINETEXT
(13) - Multi-line textACL
(14) - The access control list (ACL)
Usage:
Testing
Changelog
Please see CHANGELOG for more information on what has changed recently.
Contributing
Please see CONTRIBUTING for details.
Security
If you discover any security related issues, please email [email protected] instead of using the issue tracker.
Credits
- Codebar Solutions AG
- All Contributors
License
The MIT License (MIT). Please see License File for more information.
All versions of laravel-m-files with dependencies
guzzlehttp/guzzle Version ^7.8
illuminate/contracts Version ^12.0
nesbot/carbon Version ^3.8
saloonphp/cache-plugin Version ^3.0
saloonphp/laravel-plugin Version ^3.0
saloonphp/saloon Version ^3.10.1
spatie/laravel-package-tools Version ^1.19
spatie/laravel-ray Version ^1.40