A lightweight Laravel package for logging the requests made to your API. Each authenticated request is stored with its URL, method, IP, payload, headers, response, and duration — linked to the user that made it, with sensitive values redacted before anything hits the database.
composer require codetech/laravel-api-logsPublish the migrations:
php artisan vendor:publish --provider="CodeTech\ApiLogs\Providers\ApiLogServiceProvider" --tag=migrationsRun the migrations:
php artisan migrateAppend the middleware to the api middleware group in your bootstrap/app.php:
use CodeTech\ApiLogs\Http\Middleware\LogApiRequest;
use Illuminate\Foundation\Application;
use Illuminate\Foundation\Configuration\Middleware;
return Application::configure(basePath: dirname(__DIR__))
// ...
->withMiddleware(function (Middleware $middleware) {
$middleware->appendToGroup('api', LogApiRequest::class);
})
// ...
->create();Add the HasApiLogs trait to the model that makes the requests to browse its history:
use CodeTech\ApiLogs\Traits\HasApiLogs;
class User extends Authenticatable
{
use HasApiLogs;
}
$user->apiLogs; // all ApiLog entries for the userTo learn all about the package — configuration, guards, redaction — head over to the extensive documentation.
Upgrading from an older version? See the upgrade guide.
Every release is documented on the GitHub releases page.
Contributions are welcome! Please read the contributing guidelines before opening an issue or pull request.
If you discover a security vulnerability, please follow the security policy — do not report it publicly.
If this package helps you, consider starring the repository — it helps other developers discover it.
codetech/laravel-api-logs is open-sourced software licensed under the MIT license.
CodeTech is a web development agency based in Matosinhos, Portugal. Oh, and we LOVE Laravel!
