You can do Route model binding like Route::get('api/users/{user}', function (User $user) { … } - but not only by ID field. If you want {user} to be a username field, put this in the model:
public function getRouteKeyName() { return 'username';}
Enjoyed This Tip?
Get access to all premium tutorials, video and text courses, and exclusive Laravel resources. Join our community of 10,000+ developers.
Recent Courses
How to Build Laravel 12 API From Scratch
28 lessons
1 h 21 min
Claude Code for Laravel Projects: Crash Course
8 lessons
48 min
Laravel HTTP Client and 3rd-Party APIs
7 lessons
50 min