Updates Portal API

Updates Portalは、独自のシステムからstatusのポーリング、changelogエントリの取り込み、roadmapの監視、既知の問題の確認を行えるように、公開のJSON APIを提供しています。認証は不要です。

Base URL

https://updates.foura.ai

Service Status

GET /api/v1/status

すべてのFourAサービスのライブ稼働statusと、アクティブおよび最近のインシデントを返します。サーバー側で15秒間キャッシュされるため、これより頻繁にポーリングしても同じペイロードが返されます。

curl https://updates.foura.ai/api/v1/status
{
  "overall": "operational",
  "services": [
    {
      "slug": "api",
      "name": "API",
      "description": "...",
      "status": "operational",
      "daily": [
        { "date": "2026-05-19", "status": "operational", "major_outage_minutes": 0, "partial_outage_minutes": 0, "degraded_minutes": 0, "internal_degraded_minutes": 0 }
      ]
    }
  ],
  "active_incidents": [],
  "recent_incidents": [
    { "id": "...", "service_slug": "api", "service_name": "API", "impact": "minor", "started_at": "...", "resolved_at": "..." }
  ]
}
トップレベルフィールド 説明
overall string すべてのサービスが正常な場合はoperational、それ以外の場合はサービスstatus値のいずれか
services array 監視対象サービスごとのエントリ。slugnamedescription、現在のstatus、およびdaily履歴(最大90日間)を含みます
active_incidents array 現在オープン状態のインシデント
recent_incidents array 過去14日間に解決されたインシデント

サービスのstatus値:operationaldegradedpartial_outagemajor_outagemaintenance

インシデントのimpact値:minor(パフォーマンス低下)、major(部分的な中断)、critical(サービス中断)。

ポーリングパターン

このendpointを使用して、FourAのstatusを独自のダッシュボードやページングシステムに連携します。

import requests

def check_foura():
    r = requests.get("https://updates.foura.ai/api/v1/status", timeout=5)
    r.raise_for_status()
    data = r.json()
    if data["overall"] != "operational":
        # Page on-call, post to Slack, flip a feature flag, etc.
        for svc in data["services"]:
            if svc["status"] != "operational":
                print(f"{svc['name']}: {svc['status']}")
    return data

レガシーなGET /api/status410 Goneを返し、呼び出し元をここに誘導します。

Changelog

GET /api/changelog

公開されたchangelogエントリを逆時系列順で返します。

curl "https://updates.foura.ai/api/changelog?limit=20"

クエリパラメータ:

パラメータ デフォルト 説明
page integer 1 1から始まるページ番号
limit integer 20 1ページあたりのエントリ数(最大50)
category string - newimproved、またはfixedでフィルタリング
{
  "entries": [
    {
      "id": 42,
      "title": "...",
      "body": "Markdown body",
      "category": "new",
      "published_at": "2026-05-19T12:00:00Z",
      "tags": "[\"api\", \"dashboard\"]"
    }
  ],
  "total": 137,
  "page": 1,
  "limit": 20
}

RSS

完全なchangelog(最新の30エントリ)は、以下のRSSとしても公開されています。

https://updates.foura.ai/rss

Feedly、Miniflux、Thunderbird、または任意のリーダーで購読してください。フィードの本文は、HTMLにレンダリングされたMarkdownを含むchangelogの本文と一致します。

Roadmap

GET /api/roadmap

すべてのroadmapアイテムを、投票数、作成日時の順にソートして返します。

curl https://updates.foura.ai/api/roadmap
{
  "items": [
    {
      "id": 12,
      "title": "...",
      "description": "...",
      "category": "API",
      "status": "planned",
      "votes": 23,
      "target_date": "Q3 2026"
    }
  ]
}

アイテムのstatus値:plannedin_progressdonecancelled

投票

POST /api/roadmap/:id/vote

単一のroadmapアイテムに対する投票を切り替えます。投票は匿名であり、呼び出し元のIPとUser-Agentに関連付けられます。再度呼び出すと投票が削除されます。

curl -X POST https://updates.foura.ai/api/roadmap/12/vote
{ "votes": 24, "voted": true }

votedは呼び出し後の状態を報告します。投票が追加された場合はtrue、削除された場合はfalseになります。

Known Issues

GET /api/issues

FourAサポートによって追跡されている問題を返します。

curl "https://updates.foura.ai/api/issues?tab=open"

クエリパラメータ:

パラメータ デフォルト 説明
tab string open アクティブな問題の場合はopen、解決済み/クローズ済みの場合はresolved
{
  "issues": [
    {
      "id": 5,
      "title": "...",
      "body": "Markdown description",
      "severity": "medium",
      "status": "investigating",
      "service_id": "api",
      "opened_at": "2026-05-18T09:00:00Z",
      "resolved_at": null,
      "resolution": null
    }
  ]
}

severity値:lowmediumhighcriticalstatus値:openinvestigatingresolvedclosed

注意事項

  • すべてのendpointは公開されています。APIキーは不要ですが、送信元IPごとに緩やかなrate limitが適用されます。
  • responseはHTTPS経由のJSONです。roadmapや既知の問題(issues)にはページネーションはありません。リストのサイズが小さいためです。
  • フリーテキストまたは生のHTMLバージョンのchangelogについては、/api/changelogの代わりに/rssフィードを使用してください。

関連情報

  • Service Status: ブラウザで同じデータを表示する
  • Changelog: フィルターとページネーションを使用してエントリを閲覧する
  • Roadmap: UI上でアイテムに投票する
  • Known Issues: 未解決および解決済みの問題を表示する
  • Updates Portal: セクションの概要
最終更新日: 2026年5月20日