---
title: "Get Usage By Mode"
method: GET
path: "/api/billing/usage-by-mode"
tags: ["Billing"]
---

# Get Usage By Mode

`GET /api/billing/usage-by-mode`

## Request

- Base URL: `https://api.soeru.biz` (the document declares no server; this is the origin it was published from)
- URL: `https://api.soeru.biz/api/billing/usage-by-mode`
- Auth: none declared. Required headers: `authorization`

Wave 4 (2026-05-06): 当月の instant vs reflective 内訳を返す.

課金ページの「料金内訳」セクションで使用. message_history.engine_metadata.mode
を集計する. mode 未セットの行 (Wave 4 以前 / 移行漏れ) は instant 扱い.

Returns:
    {
      "instant": {"count": int, "amount_jpy": int, "unit_price": int},
      "reflective": {"count": int, "amount_jpy": int, "unit_price": int},
      "total_count": int,
      "total_amount_jpy": int,
      "period_start": iso str | null,
    }

## Headers

- `authorization` string, required: Bearer <token>

## Response `200`

Successful Response

- unknown

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/soeru/apis/soeru-api.md) · [All operations](https://skmtc.dev/soeru/apis/soeru-api/llms.txt) · [OpenAPI document](https://skmtc.dev/soeru/apis/soeru-api/revisions/63f8d371abed?raw)
