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

# 빠른 시작

> 몇 분 안에 첫 번째 Factagora API 요청을 만들어보세요

<Info>
  **무료 API 키 발급**: 무료로 100 API 크레딧을 제공합니다. 신용카드가 필요 없습니다. [시작하기](https://factagora.com/ko/playground)
</Info>

## Step 1: 로그인

[로그인](https://factagora.com/login)에서 무료 계정을 만들거나 로그인하세요. 신용카드 없이 **100 웰컴 크레딧**이 자동으로 지급됩니다.

## Step 2: API 키 발급

[설정 → API Keys](https://factagora.com/ko/playground/tokens)로 이동해 새 API 키를 생성하세요.

API 키는 아래와 같은 형식입니다:

```
fag_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
```

<Warning>
  API 키는 반드시 비밀로 유지하세요. 클라이언트 사이드 코드나 공개 저장소에 노출하지 마세요.
</Warning>

## Step 3: 첫 번째 요청 보내기

Fact Search API를 사용해 최신 뉴스 기사를 검색해보세요.

<CodeGroup>
  ```bash cURL theme={null}
  curl -X GET "https://api.factagora.com/api/v1/fact-search?q=인공지능" \
    -H "Authorization: Bearer fag_your_api_key"
  ```

  ```python Python theme={null}
  import requests

  response = requests.get(
      "https://api.factagora.com/api/v1/fact-search",
      params={"q": "인공지능"},
      headers={"Authorization": "Bearer fag_your_api_key"}
  )
  print(response.json())
  ```

  ```typescript TypeScript theme={null}
  const response = await fetch(
    "https://api.factagora.com/api/v1/fact-search?q=인공지능",
    {
      headers: { Authorization: "Bearer fag_your_api_key" },
    }
  );
  const data = await response.json();
  console.log(data);
  ```
</CodeGroup>

## Step 4: 응답 이해하기

성공적인 응답은 메타데이터와 함께 뉴스 기사 목록을 반환합니다:

```json theme={null}
{
  "articles": [
    {
      "title": "OpenAI, 새로운 모델 출시",
      "url": "https://example.com/article",
      "source": "TechCrunch",
      "publishedAt": "2025-03-30T12:00:00Z",
      "summary": "OpenAI가 발표한..."
    }
  ],
  "total": 42
}
```

## Step 5: 콘텐츠에 Fingerprint 삽입

보이지 않는 워터마크를 삽입하여 콘텐츠를 보호하세요. Fingerprint API는 TKG(Temporal Knowledge Graph)를 추출하고 콘텐츠의 인과 구조를 기반으로 제로 너비 유니코드 워터마크를 삽입합니다.

<CodeGroup>
  ```bash cURL theme={null}
  curl -X POST "https://api.factagora.com/api/v1/fingerprint/embed" \
    -H "Authorization: Bearer fag_your_api_key" \
    -H "Content-Type: application/json" \
    -d '{
      "content": "한국은행이 지속적인 인플레이션을 이유로 기준금리를 25bp 인상했다.",
      "content_type": "news"
    }'
  ```

  ```python Python theme={null}
  response = requests.post(
      "https://api.factagora.com/api/v1/fingerprint/embed",
      headers={"Authorization": "Bearer fag_your_api_key"},
      json={
          "content": "한국은행이 지속적인 인플레이션을 이유로 기준금리를 25bp 인상했다.",
          "content_type": "news"
      }
  )
  print(response.json())
  ```

  ```typescript TypeScript theme={null}
  const response = await fetch(
    "https://api.factagora.com/api/v1/fingerprint/embed",
    {
      method: "POST",
      headers: {
        Authorization: "Bearer fag_your_api_key",
        "Content-Type": "application/json",
      },
      body: JSON.stringify({
        content: "한국은행이 지속적인 인플레이션을 이유로 기준금리를 25bp 인상했다.",
        content_type: "news",
      }),
    }
  );
  const data = await response.json();
  console.log(data);
  ```
</CodeGroup>

응답에는 `watermarked_content`(원본 대신 이것을 배포하세요), `fingerprint_id`(이후 감지를 위해 저장하세요), 그리고 추출된 엔티티, 타임라인, 논증 체인을 보여주는 `tkg_snapshot`이 포함됩니다.

이후 의심스러운 콘텐츠를 발견했을 때 `/fingerprint/detect`로 확인하세요:

```bash theme={null}
curl -X POST "https://api.factagora.com/api/v1/fingerprint/detect" \
  -H "Authorization: Bearer fag_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{"content": "한국 중앙은행이 인플레이션 우려로 금리를 25bp 올렸다."}'
```

문장이 완전히 다르더라도 API는 기저의 인과 구조를 매칭하여 신뢰도 점수와 함께 원본 `fingerprint_id`를 반환합니다. 전체 사용 방법은 [Fingerprint 가이드](/ko/guides/factagora/fingerprint/overview)를 참고하세요.

## 다음 단계

이것으로 Factagora API 사용을 시작하기 위한 모든 준비가 완료되었습니다!

더 나아가려면 [API 레퍼런스](/ko/api-reference/introduction) 페이지에서 전체 엔드포인트 목록을 확인하세요. 사용량 측정 방식을 이해하려면 [크레딧 & 요금제](/ko/credits-pricing)를, 연동 시 한도를 확인하려면 [요청 제한](/ko/rate-limits)을 참고하세요.
