PHPackages                             arshad1114/laravel-dms-disk-server - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [File &amp; Storage](/categories/file-storage)
4. /
5. arshad1114/laravel-dms-disk-server

ActiveLibrary[File &amp; Storage](/categories/file-storage)

arshad1114/laravel-dms-disk-server
==================================

Laravel server-side receiver package for arshad1114/laravel-dms-disk. Exposes a standardized HTTP API so any consumer service can store files on this DMS using the native Storage facade.

v1.0.3(3mo ago)49MITPHPPHP ^8.1CI passing

Since Mar 15Pushed 3mo agoCompare

[ Source](https://github.com/Arshad1114/laravel-dms-disk-server)[ Packagist](https://packagist.org/packages/arshad1114/laravel-dms-disk-server)[ RSS](/packages/arshad1114-laravel-dms-disk-server/feed)WikiDiscussions main Synced 3w ago

READMEChangelogDependencies (8)Versions (6)Used By (0)

Laravel DMS Disk Server
=======================

[](#laravel-dms-disk-server)

[![Latest Version on Packagist](https://camo.githubusercontent.com/35a8503000c081afab72ec669ec37e9d2441881fee1953abb2b8d43ccfbf85f6/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f617273686164313131342f6c61726176656c2d646d732d6469736b2d7365727665722e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/arshad1114/laravel-dms-disk-server)[![Total Downloads](https://camo.githubusercontent.com/4172792062cfe07a9eb58608abc7d124620ca985ea8a597bcf1f25ee66bbc146/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f617273686164313131342f6c61726176656c2d646d732d6469736b2d7365727665722e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/arshad1114/laravel-dms-disk-server)[![License](https://camo.githubusercontent.com/01ec472a0d4d2bfcd5f4f6850c9ecfded01f62610f1e92d8c010de8a6200abc4/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f6c2f617273686164313131342f6c61726176656c2d646d732d6469736b2d7365727665722e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/arshad1114/laravel-dms-disk-server)

Laravel server-side receiver package for [arshad1114/laravel-dms-disk](https://github.com/arshad1114/laravel-dms-disk).

Install this package in your **DMS Laravel service**. It exposes a standardized HTTP API so any consumer service using `arshad1114/laravel-dms-disk` can store, retrieve and manage files on this service using the native `Storage` facade — no custom HTTP code needed on either side.

How it works
------------

[](#how-it-works)

```
Consumer service                         DMS service (this package)
────────────────                         ──────────────────────────
Storage::disk('dms')->put(...)           POST /dms-disk/upload
Storage::disk('dms')->get(...)    HTTP   GET  /dms-disk/file
Storage::disk('dms')->delete()   ────►  DELETE /dms-disk/file
...                                      ...
                                         Calls Storage::put(...)
                                         using your filesystems.php

```

Requirements
------------

[](#requirements)

- PHP 8.1+
- Laravel 10, 11, or 12

Installation
------------

[](#installation)

```
composer require arshad1114/laravel-dms-disk-server
```

The `DmsServerServiceProvider` is auto-discovered. All routes, middleware and controller are registered automatically.

Publish the config:

```
php artisan vendor:publish --tag=dms-disk-server-config
```

Configuration
-------------

[](#configuration)

Add to your DMS service `.env`:

```
DMS_SERVER_TOKEN=your-strong-secret-token
```

Set your storage disk as you normally would in any Laravel app:

```
FILESYSTEM_DISK=local
```

The package uses whatever disk you configure here — local, S3, GCS, or any other Laravel-supported driver. It has zero opinion about where files are stored.

### Full config reference

[](#full-config-reference)

All options in `config/dms-disk-server.php`:

KeyEnv variableDefaultDescription`token``DMS_SERVER_TOKEN``''`Bearer token consumers must send`max_file_size_kb``DMS_SERVER_MAX_FILE_SIZE_KB``102400`Max upload size in KB (default 100 MB)`route_prefix``DMS_SERVER_ROUTE_PREFIX``'dms-disk'`URL prefix for all endpointsAPI endpoints
-------------

[](#api-endpoints)

All endpoints are protected by bearer token authentication.

MethodEndpointDescription`POST``/dms-disk/upload`Upload a file`GET``/dms-disk/file`Download a file`DELETE``/dms-disk/file`Delete a file`GET``/dms-disk/exists`Check if a file exists`GET``/dms-disk/url`Get public URL`GET``/dms-disk/temp-url`Get temporary signed URL`POST``/dms-disk/move`Move or rename a file`GET``/dms-disk/list`List files in a directory`GET``/dms-disk/metadata`Get file metadata`POST``/dms-disk/visibility`Set file visibilityAuthentication
--------------

[](#authentication)

Every request must include the token as a bearer token:

```
Authorization: Bearer your-strong-secret-token

```

Or as a custom header:

```
X-DMS-Token: your-strong-secret-token

```

Verify installation
-------------------

[](#verify-installation)

After installing, verify all routes are registered:

```
php artisan route:list --path=dms-disk
```

You should see all 10 endpoints listed.

Troubleshooting
---------------

[](#troubleshooting)

### 401 Unauthorized

[](#401-unauthorized)

`DMS_SERVER_TOKEN` in the DMS service does not match `DMS_TOKEN` in the consumer service. Make sure both values are identical.

### 500 DMS\_SERVER\_TOKEN is not set

[](#500-dms_server_token-is-not-set)

`DMS_SERVER_TOKEN` is missing from `.env`. Add it:

```
DMS_SERVER_TOKEN=your-strong-secret-token
```

### Routes not showing up

[](#routes-not-showing-up)

```
php artisan route:clear
php artisan route:list --path=dms-disk
```

If still missing, check the provider is registered:

```
php artisan package:discover
```

Consumer package
----------------

[](#consumer-package)

Install this on every service that needs to store files on this DMS:

[arshad1114/laravel-dms-disk](https://github.com/arshad1114/laravel-dms-disk)

Contributing
------------

[](#contributing)

Contributions are welcome. Please:

1. Fork the repo
2. Create a feature branch: `git checkout -b feat/your-feature`
3. Write tests for your change
4. Make sure all tests pass: `./vendor/bin/phpunit`
5. Open a pull request

License
-------

[](#license)

MIT — see [LICENSE](LICENSE) file.

###  Health Score

38

—

LowBetter than 83% of packages

Maintenance81

Actively maintained with recent releases

Popularity9

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity47

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~0 days

Total

4

Last Release

103d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/1782336461e5d806d22b26d3ebaa4e48908cf22596c92721fce6445ddeebb53f?d=identicon)[arshad1114](/maintainers/arshad1114)

---

Top Contributors

[![Arshad1114](https://avatars.githubusercontent.com/u/48760119?v=4)](https://github.com/Arshad1114 "Arshad1114 (7 commits)")

---

Tags

dmsfilesystemlaravelmicroservicephpserverstoragefilesystemlaravelserverstoragedmsMicroservice

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/arshad1114-laravel-dms-disk-server/health.svg)

```
[![Health](https://phpackages.com/badges/arshad1114-laravel-dms-disk-server/health.svg)](https://phpackages.com/packages/arshad1114-laravel-dms-disk-server)
```

###  Alternatives

[psalm/plugin-laravel

Psalm plugin for Laravel

3345.1M337](/packages/psalm-plugin-laravel)[unisharp/laravel-filemanager

A file upload/editor intended for use with Laravel 5 to 10 and CKEditor / TinyMCE

2.1k3.4M81](/packages/unisharp-laravel-filemanager)[laravel/mcp

Rapidly build MCP servers for your Laravel applications.

76518.2M120](/packages/laravel-mcp)[roots/acorn

Framework for Roots WordPress projects built with Laravel components.

9742.3M121](/packages/roots-acorn)[api-platform/laravel

API Platform support for Laravel

59156.3k11](/packages/api-platform-laravel)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
