📖

【PHP】Laravelで実装されたAPIの数を確認する方法(php artisan route:list 活用)

に公開

Laravelプロジェクトで「今いくつAPIが定義されているか?」を確認したい場面はよくあります。
特にAPI開発をチームで進めている場合や、リファクタ・仕様レビュー時に非常に役立ちます。

この記事では、Laravelで実装されたAPIルートの一覧と件数を確認する方法を、サンプル実装付きで紹介します。

✅ 1. サンプルAPIの定義

今回は「ユーザー一覧を取得するAPI」を例に使います。

📄 routes/api.php

use Illuminate\Support\Facades\Route;
use App\Http\Controllers\UserController;

Route::get('/users', [UserController::class, 'index']);

📄 app/Http/Controllers/UserController.php

<?php

namespace App\Http\Controllers;

use App\Models\User;
use Illuminate\Http\JsonResponse;

class UserController extends Controller
{
    public function index(): JsonResponse
    {
        return response()->json(User::all());
    }
}

✅ 2. APIルートを一覧表示する

Laravelには route:list という便利なコマンドがあります。すべてのルートを一覧表示できます。

php artisan route:list

✅ 3. APIルートだけを抽出する

Webルートなどが混じると見づらいため、APIルートだけに絞るには --path=api オプションを使います:

php artisan route:list --path=api

✅ 出力例

+--------+----------+------------+------+-------------------------------------------+------------+
| Domain | Method   | URI        | Name | Action                                    | Middleware |
+--------+----------+------------+------+-------------------------------------------+------------+
|        | GET|HEAD | api/users  |      | App\Http\Controllers\UserController@index | api        |
+--------+----------+------------+------+-------------------------------------------+------------+

✅ まとめ

確認したいこと コマンド例
APIルートの一覧を表示 php artisan route:list --path=api
API定義ファイルの場所 routes/api.php

📌 補足

  • Laravel Sanctumやパッケージが自動的に追加するルートも含まれるので、自作APIだけを見たい場合は注意が必要です。
  • Route::apiResource() を使うと1行で複数のルート(index/show/store/update/destroy)が定義されるため、件数を意識する際は留意してください。

LaravelでのAPI実装管理や棚卸しに、ぜひ活用してみてください!

Discussion