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

# Create Message

> Anthropic Messages API를 통해 Claude와 상호작용합니다.

**엔드포인트:** `POST /messages`

Messages API로 Claude에 메시지를 보냅니다.

<Note>
  대부분의 연동에는 여전히 [Create Chat Completion](/ko/api-reference/chat/create) 사용을 권장합니다. Anthropic 네이티브 Messages 요청 형식이 반드시 필요할 때만 이 인터페이스를 사용하세요.
</Note>

<CodeGroup>
  ```python Python theme={null}
  import os
  import requests

  response = requests.post(
      "https://api.yourouter.ai/v1/messages",
      headers={
          "Authorization": f"Bearer {os.environ['YOUROUTER_API_KEY']}",
          "Content-Type": "application/json",
          "anthropic-version": "2023-06-01",
          "vendor": "anthropic"
      },
      json={
          "model": "claude-3-5-sonnet-20240620",
          "messages": [{"role": "user", "content": "Hello"}]
      }
  )
  print(response.json())
  ```

  ```bash cURL theme={null}
  curl https://api.yourouter.ai/v1/messages \
    -H "Authorization: Bearer $YOUROUTER_API_KEY" \
    -H "Content-Type: application/json" \
    -H "anthropic-version: 2023-06-01" \
    -H "vendor: anthropic" \
    -d '{"model": "claude-3-5-sonnet-20240620", "messages": [{"role": "user", "content": "Hello"}]}'
  ```
</CodeGroup>

## 매개변수

<ResponseField name="model" type="string" required>
  대상 모델 ID.
</ResponseField>

<ResponseField name="messages" type="array" required>
  Claude Messages 형식의 대화 기록.
</ResponseField>

<ResponseField name="stream" type="boolean" default="false">
  true이면 SSE로 결과를 반환합니다.
</ResponseField>

## 이미지 입력

Claude 비전 모델의 경우 `messages` 배열에 이미지 콘텐츠 블록을 포함하세요.

```bash theme={null}
curl https://api.yourouter.ai/v1/messages \
  -H "Authorization: Bearer $YOUROUTER_API_KEY" \
  -H "Content-Type: application/json" \
  -H "anthropic-version: 2023-06-01" \
  -H "vendor: anthropic" \
  -d '{
    "model": "claude-sonnet-4-20250514",
    "max_tokens": 300,
    "messages": [
      {
        "role": "user",
        "content": [
          { "type": "text", "text": "Describe this image in one sentence." },
          {
            "type": "image",
            "source": {
              "type": "base64",
              "media_type": "image/jpeg",
              "data": "<BASE64_IMAGE>"
            }
          }
        ]
      }
    ]
  }'
```

## PDF 입력

PDF를 지원하는 Claude 모델에서는 `document` 콘텐츠 블록을 보내고 `source.media_type`을 `application/pdf`로 설정하세요. `data` 필드에는 PDF 원본 바이트를 base64로 인코딩한 값을 넣습니다.

```bash theme={null}
curl https://api.yourouter.ai/v1/messages \
  -H "Authorization: Bearer $YOUROUTER_API_KEY" \
  -H "Content-Type: application/json" \
  -H "anthropic-version: 2023-06-01" \
  -H "vendor: anthropic" \
  -d '{
    "model": "claude-sonnet-4-20250514",
    "max_tokens": 1024,
    "messages": [
      {
        "role": "user",
        "content": [
          {
            "type": "document",
            "source": {
              "type": "base64",
              "media_type": "application/pdf",
              "data": "<BASE64_PDF>"
            }
          },
          {
            "type": "text",
            "text": "Summarize this PDF and list risks to watch."
          }
        ]
      }
    ]
  }'
```

<Note>
  Claude PDF 지원은 구체적인 모델에 따라 다릅니다. 표준이며 암호화되지 않은 PDF를 사용하고 요청 본문 크기와 페이지 수를 관리하세요. 큰 문서는 나누어 처리하는 것이 좋습니다.
</Note>

더 자세한 연동은 [멀티모달 가이드](/ko/guides/multimodal)를 참고하세요.
