dogukantokgoz / route-to-postman
Generate Postman collections directly from Laravel routes with structured grouping and documentation.
Installs: 17
Dependents: 0
Suggesters: 0
Security: 0
Stars: 4
Watchers: 0
Forks: 0
pkg:composer/dogukantokgoz/route-to-postman
Requires
- php: ^8.1
- illuminate/support: ^10.0|^11.0|^12.0
- symfony/console: ^6.0|^7.0
This package is not auto-updated.
Last update: 2025-12-28 20:05:45 UTC
README
Generate organized Postman collections directly from your Laravel routes with intelligent automation.
Features
📂 Smart File Structure
The package automatically organizes your Postman collection based on your route prefixes.
- Folders: Created based on the route prefix (e.g.,
api/users->usersfolder). - Requests: Named using the controller method in PascalCase (e.g.,
UserController@store->Store). - Filtering: Routes defined in
routes/api.phpthat do not have a valid controller method are automatically skipped to keep your collection clean.
📝 Intelligent Body Generation
The package analyzes your code to generate sample request bodies for POST, PUT, and PATCH requests.
- FormRequest: If a method uses a
FormRequest, validation rules are used to generate the body. - Model Inference: If no
FormRequestis used, the package infers the Model from the Controller name (e.g.,ProductController->Productmodel). It then uses the model'sfillableattributes to generate the request body.
🔐 Automated Authentication
Forget about manually copying and pasting tokens!
- Login Detection: The package automatically finds routes ending in
loginor containingauth/login. - Auto-Script Injection: A Postman test script is injected into the login request to capture the token.
- Smart Bearer Token Assignment: Bearer token is automatically added to routes that have middleware assigned. Public routes (without middleware) and excluded routes will not receive bearer token authentication.
Expected Login Response:
The script expects the token to be in data.token. Example:
{
"success": true,
"message": "Login successful",
"data": {
"token": "your_generated_token_here"
}
}
Once you run the Login request in Postman, the token is automatically saved and used for all other requests.
Bearer Token Rules:
- ✅ Added to: Routes with any middleware (except
apimiddleware which is automatically added by Laravel) - ❌ Not added to:
- Routes without middleware (public routes)
- Routes matching patterns in
excluded_routesconfig (login, register, password reset, email verification, etc.)
Excluded Routes Configuration:
You can configure which routes should not receive bearer token in config/postman.php:
'excluded_routes' => [ // Authentication routes 'login', 'register', 'auth/google', 'auth/facebook', // Password reset routes 'password-reset', 'password/reset', 'password/email', '/password/reset', 'forgot-password', 'forgotpassword', 'reset-password', 'resetpassword', // Email verification routes 'email/verify', 'email/resend', '/email/verify', '/email/resend', ],
⚙️ Configuration
- Collection Name: The Postman collection name is taken from your
APP_NAMEenvironment variable (defaults to 'Laravel Routes').
Installation
composer require dogukantokgoz/route-to-postman
Publish the configuration file:
php artisan vendor:publish --provider="dogukantokgoz\Route2Postman\PostmanServiceProvider" --tag=postman-config
Usage
Run the command to generate your collection:
php artisan route:export
The collection will be saved to storage/postman/route_collection.json. Import this file into Postman.