업데이트 포털 API

Updates Portal은 소규모 공개 JSON API를 제공하므로, 자체 시스템에서 상태를 폴링하고, 변경 로그 항목을 수집하고, 로드맵을 확인하며, 알려진 문제를 확인할 수 있습니다. 인증이 필요하지 않습니다.

기본 URL

https://updates.foura.ai

서비스 상태

GET /api/v1/status

모든 FourA 서비스의 실시간 운영 상태와 진행 중이거나 최근에 발생한 인시던트를 반환합니다. 서버 측에서 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, 그렇지 않으면 서비스 상태 값 중 하나
services array slug, name, description, 현재 statusdaily 내역(최대 90일)을 포함하는 모니터링 대상 서비스당 하나의 항목
active_incidents array 현재 진행 중인 인시던트
recent_incidents array 지난 14일 동안 해결된 인시던트

서비스 status 값: operational, degraded, partial_outage, major_outage, maintenance.

인시던트 impact 값: minor(성능 저하), major(부분 중단), critical(서비스 중단).

폴링 패턴

이 endpoint를 사용하여 FourA 상태를 자체 대시보드 또는 페이징 시스템에 연결하세요.

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을 반환하며 호출자를 여기로 안내합니다.

변경 로그

GET /api/changelog

게시된 변경 로그 항목을 역순으로 반환합니다.

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

쿼리 파라미터:

파라미터 유형 기본값 설명
page integer 1 1부터 시작하는 페이지 번호
limit integer 20 페이지당 항목 수(최대 50개)
category string - new, improved 또는 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

전체 변경 로그(최근 30개 항목)는 다음 위치에 RSS로도 게시됩니다.

https://updates.foura.ai/rss

Feedly, Miniflux, Thunderbird 또는 모든 리더기에서 구독하세요. 피드 본문은 HTML로 렌더링된 마크다운을 포함하여 변경 로그 본문과 일치합니다.

로드맵

GET /api/roadmap

모든 로드맵 항목을 투표 수, 생성 시간 순으로 정렬하여 반환합니다.

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

항목 status 값: planned, in_progress, done, cancelled.

투표

POST /api/roadmap/:id/vote

단일 로드맵 항목에 대한 투표를 토글합니다. 투표는 익명이며 호출자의 IP 및 User-Agent에 연결됩니다. 다시 호출하면 투표가 제거됩니다.

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

voted은 호출 후 상태를 보고합니다. 투표가 추가된 경우 true, 제거된 경우 false입니다.

알려진 문제

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 값: low, medium, high, critical. status 값: open, investigating, resolved, closed.

참고

  • 모든 endpoint는 공개되어 있습니다. API 키는 필요하지 않지만 소스 IP당 넉넉한 rate limit이 적용될 수 있습니다.
  • 응답은 HTTPS를 통한 JSON입니다. 로드맵이나 문제에는 페이지 네이션이 없습니다. 목록이 작기 때문입니다.
  • 자유 텍스트 또는 원시 HTML 버전의 변경 로그의 경우 /api/changelog 대신 /rss 피드를 사용하세요.

관련 항목

  • Service Status: 브라우저에서 동일한 데이터를 읽습니다.
  • Changelog: 필터 및 페이지 네이션을 사용하여 항목을 찾아봅니다.
  • Roadmap: UI에서 항목에 투표합니다.
  • Known Issues: 진행 중이거나 해결된 문제를 읽습니다.
  • Updates Portal: 섹션 개요
최근 업데이트: 2026년 5월 20일