> ## Documentation Index
> Fetch the complete documentation index at: https://dev-docs.trychainshift.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# 답변 객체

> Answer 응답의 필드 구성, 빈 값 규칙, 모델별 제공 범위

답변 조회 API가 반환하는 Answer 객체의 필드 규칙입니다. 스키마 자체는 각 엔드포인트 페이지에서 확인하고, 이 페이지는 "언제 무엇이 비는지"를 설명합니다.

## 필드 구성

| 필드                   | 설명                                   |
| -------------------- | ------------------------------------ |
| `id`                 | 답변 ID (22자)                          |
| `runID`              | 답변을 생성한 실행 요청의 ID. 없을 수 있습니다(`null`) |
| `promptID` / `query` | 실행된 프롬프트의 ID와 원문                     |
| `model` / `region`   | 답변을 수집한 AI 모델과 지역                    |
| `status`             | `PENDING` → `SUCCESS` 또는 `FAILED`    |
| `content`            | 답변 본문 텍스트                            |
| `sources`            | AI가 인용한 출처 목록 (URL · 제목 · 도메인)       |
| `fanouts`            | AI가 내부적으로 던진 검색 쿼리 목록                |
| `markdownURL`        | 답변 원문 마크다운 파일 URL                    |
| `createdAt`          | 생성 일시 (RFC3339)                      |

## 빈 값 규칙

문제가 아니라 정상 동작인 경우가 많습니다. 순서대로 확인하세요.

* **`fanouts`가 빈 배열** — fan-out은 ChatGPT · Perplexity · Claude에서만 수집됩니다. 나머지 모델은 항상 `[]`입니다. [지원 모델](/models) 참고.
* **`sources`가 빈 배열** — 모델이 해당 답변에 출처를 제공하지 않은 경우입니다. 모델 측 동작이며 Chainshift는 수집된 결과를 그대로 반환합니다.
* **`markdownURL`이 없음** — 값이 없으면 `null`이 아니라 **필드 자체가 생략**됩니다.
* **`content`가 비어 있음** — `status`를 확인하세요. `PENDING`(수집 중)이거나 `FAILED`(수집 실패)면 본문이 없습니다.

## 자주 묻는 질문

**같은 프롬프트인데 답변이 매번 다릅니다.**
AI 답변은 비결정적입니다. 같은 프롬프트 × 모델 조합도 실행마다 내용과 출처가 달라질 수 있으며, 이것이 `repeatCount` 반복 실행이 존재하는 이유입니다.

**출처에서 실제 인용된 문장을 보고 싶습니다.**
[인용 URL 통계](/api-reference/statistics/source-urls)에서 `include=quotes`를 사용하세요.
