# 언어 지원

AstroWay는 **다국어 API**를 구축하고 있습니다 — 텍스트 해석, 리포트, 일일 운세를 사용자의 언어로 제공합니다. 공개 목록은 점성술 시장 수요 조사(검색량, 경쟁사 커버리지, 수익 잠재력)를 바탕으로 선정한 20개 언어입니다.

<Aside type="tip">
**작동 방식.** 언어는 요청 본문의 `language` 필드 — 또는 URL의 `?lang=<code>`, 아니면 `Accept-Language` 헤더 — 를 통해 `/v1/interpret/*`, `/v1/horoscope/*`, `/v1/reports/*`에 전달합니다. 언어가 활성 상태이면 해당 언어로 텍스트가 반환됩니다(Beta 언어는 복잡한 용어에서 부정확할 수 있으며, 이 경우 영어로 폴백됩니다). 언어가 비활성 상태이면 `/horoscope/*`와 `/reports/*`(엄격한 enum)는 `400 INVALID_INPUT`을 반환하고, `/interpret/*`는 영어로 폴백됩니다.
</Aside>

## 현재 상태

각 언어에는 번역 **상태(Status)**와 로드맵 **수요 점수(Demand score)**(우선순위, 48~95+)가 부여됩니다.

| # | Code | Language | Status | Demand | Reports | Site |
|---|------|----------|--------|--------|---------|------|
| 1  | `uk` | 우크라이나어 | ✅ Source | — | ✅ | ✅ |
| 2  | `en` | 영어 | ✅ Reference | **95+** | ✅ | ✅ |
| 3  | `de` | 독일어 | 🚧 Auto | 72 | 📋 | ✅ |
| 4  | `pl` | 폴란드어 | 🚧 Auto | 64 | 📋 | ✅ |
| 5  | `es` | 스페인어 | 🚧 Auto | **88** | 📋 | ✅ |
| 6  | `pt` | 포르투갈어 | 🚧 Auto | **84** | 📋 | ✅ |
| 7  | `hi` | 힌디어 | 🚧 Auto | **81** | 📋 | ✅ |
| 8  | `fr` | 프랑스어 | 🚧 Auto | **78** | 📋 | ✅ |
| 9  | `ko` | 한국어 | 🚧 Auto | **77** | 📋 | ✅ |
| 10 | `it` | 이탈리아어 | 🚧 Auto | 73 | 📋 | ✅ |
| 11 | `ja` | 일본어 | 🚧 Auto | 67 | 📋 | ✅ |
| 12 | `id` | 인도네시아어 | 🚧 Auto | 62 | 📋 | ✅ |
| 13 | `tr` | 튀르키예어 | 🚧 Auto | 60 | 📋 | ✅ |
| 14 | `nl` | 네덜란드어 | 🚧 Auto | 58 | 📋 | ✅ |
| 15 | `cs` | 체코어 | 🚧 Auto | 56 | 📋 | ✅ |
| 16 | `ro` | 루마니아어 | 🚧 Auto | 54 | 📋 | ✅ |
| 17 | `vi` | 베트남어 | 🚧 Auto | 53 | 📋 | ✅ |
| 18 | `ar` | 아랍어 | 🚧 Auto | 52 | 📋 | ✅ |
| 19 | `el` | 그리스어 | 🚧 Auto | 50 | 📋 | ✅ |
| 20 | `hu` | 헝가리어 | 🚧 Auto | 48 | 📋 | ✅ |

**범례:**
- **Status** — ✅ Source / Reference = 사람이 직접 작성·관리(uk, en). 🚧 Auto = 공유 용어집을 기준으로 자동 번역하고 시간이 지나면서 다듬어 나감(아직 문자열별 수동 검토는 진행하지 않아 미묘한 용어는 다소 거칠게 읽힐 수 있으며, 누락된 문자열은 영어로 폴백).
- **Site** — ✅ 제공됨(UI + 문서) · 📋 계획됨.
- **Reports** — ✅ 제공됨 · 📋 계획됨.

## 번역 생성 방식

우크라이나어가 소스 언어이고 영어가 관리되는 레퍼런스입니다 — 둘 다 사람이 직접 작성합니다. 그 외 모든 언어는 공유 점성술 용어집(약 800개 용어)을 기준으로 자동 번역되며 시간이 지나면서 다듬어집니다. 아직 문자열별 수동 검토는 진행하지 않았으므로, 복잡한 용어에 대해서는 Beta로 간주하고 문자열이 누락된 부분은 영어로 폴백합니다. 사이트 UI와 문서는 현재 나열된 모든 언어를 지원합니다. 현지화된 PDF 리포트는 현재 우크라이나어와 영어로 제공되며, 수요에 따라 나머지 언어로 순차 확대됩니다.

## 수요 점수 — 산출 방법

다음 요소들로 구성된 종합 지표입니다:
- 해당 국가에서 점성술 키워드에 대한 Google 트렌드 12개월 검색량
- 상위 5개 경쟁사(Co–Star, AstroSeek, Astro.com, Prokerala, DivineAPI)의 커버리지
- 추정 인구 × 추정 유료 앱 보급률
- 사용자당 수익 차이(구매력 평가로 보정)

정밀한 지표가 아니라, 인상이 아닌 객관적 기준으로 "다음에 무엇을 할지"를 정하는 데 도움을 주는 **순위화된 우선순위**입니다.

## 호출 방법

```bash
curl -X POST https://api.astroway.info/v1/interpret/aspects \
  -H "X-Api-Key: aw_live_..." \
  -H "Content-Type: application/json" \
  -d '{
    "language": "es",
    "aspects": [
      { "body1": "Sun", "body2": "Moon", "type": "conjunction", "orb": 2.1 }
    ]
  }'
```

응답(`language=es` 예시):

```json
{
  "ok": true,
  "data": {
    "interpretation": "El aspecto Sol-Luna en conjunción simboliza...",
    "language": "es"
  }
}
```

응답의 `language` 필드는 적용된 언어를 그대로 돌려줍니다(UX 표시 용도로 유용함). 번역 품질 상태는 위 표에 있으며, API 응답에서는 **반환되지 않습니다**.

## 목록에 없는 언어가 필요한 경우

수요 근거(샘플 사용자, 예상 볼륨)와 함께 [hello@astroway.info](mailto:hello@astroway.info)로 이메일을 보내주세요. 목록은 **분기별**로 검토하며, 실제 외부 수요가 있는 언어는 Tier 4(옵트인)로 추가될 수 있습니다.

쇼트리스트의 일부 언어는 **영구적으로 제외**됩니다 — `da, fi, no, bg, sk, hr, zh-CN, fa, tl` — 시장이 작거나 점성술 전통이 없기 때문입니다. 이 언어들은 비활성 상태이며, `/horoscope/*`와 `/reports/*`는 `400 INVALID_INPUT`을 반환하고 `/interpret/*`는 영어로 폴백됩니다.

## 관련

- [계산 정확도](/ko/accuracy/) — 수치 계산은 **언어 중립적**이며, 텍스트만 현지화됩니다
- [리포트](/ko/products/) — 다국어 PDF 리포트
- [멱등성](/ko/idempotency/) — 캐시 할인은 `lang`과 독립적으로 작동합니다
