Add these imports and methods/casts to app/Models/User.php: use Illuminate\Database\Eloquent\Relations\HasOne; protected function casts(): array { return [ 'email_verified_at' => 'datetime', 'password' => 'hashed', 'last_heartbeat_at' => 'datetime', 'last_location_at' => 'datetime', 'gps_enabled' => 'boolean', 'tracking_enabled' => 'boolean', 'is_online' => 'boolean', ]; } public function latestLocation(): HasOne { return $this->hasOne(\App\Models\LocationPoint::class)->latestOfMany('captured_at'); } Also ensure HasApiTokens is used: use Laravel\Sanctum\HasApiTokens; class User extends Authenticatable { use HasApiTokens, HasFactory, Notifiable; }