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

# 모델 목록 조회

> Google Gemini API 형식을 사용하여 사용 가능한 모델 목록을 조회합니다.

Google Gemini API 형식으로 사용 가능한 모델 목록을 반환합니다.

## 쿼리 파라미터

<ParamField query="pageSize" type="integer">
  반환할 모델의 최대 개수입니다. 기본값: `1000`, 최대값: `1000`.
</ParamField>

<ParamField query="pageToken" type="string">
  이전 페이지가 반환한 이어받기 토큰입니다. 그대로 다시 보내면 다음 구간을 가져옵니다.
</ParamField>

## 인증

공개 모델 카탈로그 읽기 엔드포인트에서는 인증이 필요하지 않습니다.

Gemini 스타일의 `?key=` 또는 `x-goog-api-key` 힌트는 이곳의 응답 계약을 바꾸지 않습니다.

## 응답

<ResponseField name="models" type="array">
  모델 객체의 배열입니다.
</ResponseField>

<ResponseField name="nextPageToken" type="string">
  더 많은 모델이 있을 때 반환됩니다. 이어서 조회하려면 이 값을 `pageToken`으로 전달하세요.
</ResponseField>

## 오류

* 잘못된 `pageToken` 은 `400 INVALID_ARGUMENT` 를 반환합니다.
* 예상치 못한 목록 조회 실패는 `500 INTERNAL` 을 반환합니다.

<RequestExample>
  ```bash cURL theme={null}
  curl "https://api.tokenlab.sh/v1beta/models?pageSize=5" \
    -H "x-goog-api-key: sk-your-api-key"
  ```

  ```python Python theme={null}
  import google.generativeai as genai

  genai.configure(
      api_key="sk-your-api-key",
      transport="rest",
      client_options={"api_endpoint": "api.tokenlab.sh"}
  )

  for model in genai.list_models():
      print(model.name)
  ```

  ```javascript JavaScript theme={null}
  const response = await fetch(
    "https://api.tokenlab.sh/v1beta/models?pageSize=5",
    { headers: { "x-goog-api-key": "sk-your-api-key" } }
  );
  const { models } = await response.json();
  models.forEach(m => console.log(m.name));
  ```
</RequestExample>

<ResponseExample>
  ```json Response theme={null}
  {
    "models": [
      {
        "name": "models/gemini-2.5-pro",
        "version": "1.0",
        "displayName": "gemini-2.5-pro",
        "description": "gemini-2.5-pro model available via TokenLab",
        "inputTokenLimit": 1048576,
        "outputTokenLimit": 65536,
        "supportedGenerationMethods": ["generateContent", "countTokens"],
        "temperature": 1.0,
        "topP": 0.95,
        "topK": 40,
        "maxTemperature": 2.0
      },
      {
        "name": "models/gemini-3.5-flash",
        "version": "1.0",
        "displayName": "gemini-3.5-flash",
        "description": "gemini-3.5-flash model available via TokenLab",
        "inputTokenLimit": 1048576,
        "outputTokenLimit": 65536,
        "supportedGenerationMethods": ["generateContent", "countTokens"],
        "temperature": 1.0,
        "topP": 0.95,
        "topK": 40,
        "maxTemperature": 2.0
      }
    ]
  }
  ```
</ResponseExample>
