> ## 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.

# 요청 전달(투명 포워딩)

> YouRouter는 요청 본문 전체와 Authorization을 제외한 모든 요청 헤더를 상위 제공업체로 그대로 전달합니다.

## 개요

YouRouter의 핵심 원칙 중 하나는 가능한 한 **유연성과 투명성**을 제공하는 것입니다. 이를 위해 다음 규칙을 따릅니다.

**YouRouter는 전체 요청 본문과 `Authorization`을 제외한 모든 요청 헤더를 상위 제공업체로 직접 전달합니다.**

유일하게 변경하는 부분은, YouRouter로 보낸 `Authorization` 헤더를 해당 상위 제공업체에 필요한 API 키로 교체하는 것입니다.

이 설계 덕분에 상위 제공업체가 새 매개변수나 특수 기능을 출시하면, YouRouter 플랫폼이 먼저 별도 업데이트를 하기 전이라도 대개 즉시 YouRouter를 통해 사용할 수 있습니다. 상위 제공업체에서 지원하면 호출할 수 있습니다.

## 예시: 제공업체별 전용 매개변수

예를 들어 OpenAI의 `logprobs` 같은 전용 기능을 쓰고 싶다고 해도, 이 매개변수는 공통 호환 기능 집합에 포함되지 않을 수 있습니다. 그럼에도 YouRouter에서는 OpenAI에 직접 연결할 때와 같이 요청 본문에 넣을 수 있습니다.

<CodeGroup>
  ```bash cURL theme={null}
  # 비표준 매개변수 `logprobs`를 포함한 요청 예시입니다.
  curl https://api.yourouter.ai/v1/chat/completions \
    -H "Authorization: Bearer $YOUROUTER_API_KEY" \
    -H "Content-Type: application/json" \
    -H "vendor: openai" \
    -d '{
      "model": "gpt-4o",
      "messages": [{"role": "user", "content": "Hello world!"}],
      "logprobs": true,
      "top_logprobs": 5
    }'
  ```

  ```python Python theme={null}
  import os
  from openai import OpenAI

  client = OpenAI(
      api_key=os.environ["YOUROUTER_API_KEY"],
      base_url="https://api.yourouter.ai/v1"
  )

  # create 호출에 제공업체 전용 매개변수를 그대로 넘길 수 있습니다.
  # OpenAI Python SDK는 이를 요청 본문에 그대로 기록합니다.
  response = client.chat.completions.create(
      model="gpt-4o",
      messages=[{"role": "user", "content": "Hello world!"}],
      logprobs=True,
      top_logprobs=5,
      extra_headers={"vendor": "openai"}
  )

  logprobs = response.choices[0].logprobs
  print(logprobs)
  ```
</CodeGroup>

YouRouter는 본문의 `logprobs: true`와 `top_logprobs: 5`를 수정하지 않고 OpenAI로 전달하며, 응답도 가능한 한 해당 상위 제공업체에 직접 연결했을 때와 일치하도록 유지합니다.

상위 제공업체가 지원하는 사용자 정의 요청 헤더나 본문 필드에도 동일하게 적용됩니다.
