認証
すべてのAPIエンドポイント(/api/auth/login を除く)は認証が必要です。以下の2つの方法が使えます。
① Bearer トークン(セッション用)
curl -X POST http://45.76.103.28/api/auth/login \
-d "username=YOUR_USERNAME&password=YOUR_PASSWORD"
# レスポンス
{ "access_token": "eyJ...", "token_type": "bearer" }
# 以降のリクエストで使用
curl http://45.76.103.28/api/summary?month=2026-04 \
-H "Authorization: Bearer eyJ..."
② API キー(AIエージェント・外部ツール推奨)
アプリ設定画面でAPIキーを発行し、X-API-Key ヘッダーで渡します。
curl http://45.76.103.28/api/summary?month=2026-04 \
-H "X-API-Key: kk_xxxxxxxxxxxxxxxx..."
エンドポイント一覧
サマリー・予測
GET
/api/summary?month=YYYY-MM
月次サマリー。予算合計・支出見込み・実績・カテゴリ別内訳を返します。
支出予定
GET
/api/events?month=YYYY-MM
指定月の支出予定一覧。カテゴリ・予定金額・紐付け実績金額・紐付け件数を含みます。
POST
/api/events
支出予定を手動作成。event_date・title は必須。
PATCH
/api/events/{id}
支出予定を更新。category_id・planned_amount・is_expense_target を変更可。手動追加は event_date・title も変更可。
DELETE
/api/events/{id}
支出予定を削除(手動追加のみ)。
POST
/api/events/sync?month=YYYY-MM
Googleカレンダーと同期。追加・更新件数を返します。
GET
/api/events/{id}/links
支出予定に紐付いたマネーフォワード明細一覧と合計金額。
POST
/api/events/{id}/links
明細を支出予定に紐付け。transaction_id を指定。
DELETE
/api/events/{id}/links/{link_id}
紐付けを解除。
マネーフォワード明細
GET
/api/transactions?month=YYYY-MM
明細一覧。クエリパラメータ: date_from・date_to・mf_source・linked=false(未紐付けのみ)
POST
/api/transactions/import
マネーフォワードCSVをインポート。multipart/form-data で file フィールドにCSVを添付。
カテゴリ・予算
GET
/api/categories
カテゴリ一覧。main_category・sub_category・expense_type(固定費/変動費)を含みます。
GET
/api/budgets?month=YYYY-MM
月次予算一覧。カテゴリごとの月次予算・特別予算を返します。
レスポンス例(GET /api/summary)
{
"month": "2026-04",
"expense": {
"budget_total": 350000,
"forecast_total": 312000,
"actual_total": 180000,
"by_category": [
{
"main_category": "食費",
"sub_category": "外食",
"expense_type": "変動費",
"budget": 50000,
"forecast": 42000,
"actual": 28000
}
]
}
}
金額の符号について
支出明細の amount フィールドは支出がマイナス、収入がプラスで格納されています。サマリーの forecast・actual はいずれもプラス表示(支出額)に変換済みです。