予算API

作品ごとの予算の状態(発注済み・着地見込みのそれぞれで判定)と工程の進捗を読み取るAPIエンドポイントです。 予算の設定はアプリの画面から行います(APIでは提供していません)。予算を超えたことを知らせる Webhook はまだありません。

GET /api/v1/budgets

作品ごとの予算の状態・着地見込みの状態・工程の進捗を取得します(全作品)。

必要なスコープ: budgets:read

レスポンス

{
  "object": "list",
  "data": [
    {
      "object": "budget",
      "id": "clxxx...",
      "project_id": "clxxx...",
      "project_name": "作品名",
      "has_budget": true,
      "status": "warning",
      "forecast_status": "over",
      "progress": { "percent": 42, "total_processes": 1200, "completed_processes": 504 },
      "amounts": {
        "currency": "JPY",
        "budget": 30000000,
        "ordered": 25000000,
        "paid": 12000000,
        "remaining": 5000000,
        "consumption_rate": 83.3,
        "internal_accrued": 1500000,
        "unordered_estimate": 6000000,
        "forecast": 32500000
      }
    }
  ],
  "has_more": false,
  "next_cursor": null
}
  • ●ページ分けはしません(全作品を1回で返します)。
  • ●status は発注済みの額、forecast_status は着地見込み(発注済み+内製の報酬+未発注の見込み)で判定した予算の状態です。none(予算未設定)/ ok / warning(80%以上)/ over(100%以上)。
  • ●予算は作品の予算、無ければ話数の予算の合計です。
  • ●金額(amounts)は amounts:read スコープを持つキーにだけ返します。予算・着地見込みは保存された値ではなく、呼び出しのたびに画面の予算一覧と同じ計算で出します(未発注の見込みは基準単価からの概算)。
  • ●集計が重いため、組織ごとに1分あたり10回までです(超えると 429 RATE_LIMITED)。

GET /api/v1/projects/[id]/budget

作品1件の予算を、話数ごとの内訳とあわせて取得します。

必要なスコープ: budgets:read

レスポンス

{
  "data": {
    "object": "budget",
    "id": "clxxx...",
    "project_id": "clxxx...",
    "project_name": "作品名",
    "has_budget": true,
    "status": "ok",
    "forecast_status": "warning",
    "amounts": { "currency": "JPY", "budget": 30000000, "ordered": 20000000, "…": "一覧と同じ項目" },
    "episodes": [
      {
        "object": "episode_budget",
        "episode_id": "clxxx...",
        "episode_number": "1",
        "episode_title": "第1話",
        "has_budget": true,
        "status": "ok",
        "forecast_status": "ok",
        "order_count": 48,
        "amounts": { "currency": "JPY", "budget": 2500000, "ordered": 1800000, "…": "一覧と同じ項目" }
      }
    ]
  }
}
  • ●パスパラメータ id は作品ID。APIキーの組織に属さない作品は 404 になります。
  • ●話数の status は話数の予算で判定します(話数に予算が無ければ none)。
  • ●金額(amounts)は amounts:read スコープを持つキーにだけ返します。組織ごとに1分あたり10回まで(GET /api/v1/budgets と合わせて数えます)。