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

# List Available Models

Retrieve a list of all AI models available for use with the CheckThat AI platform. This endpoint helps you discover which models you can specify in chat and completion requests.

<Info>
  This endpoint is also available at `/v1/models` for compatibility with OpenAI-style integrations.
</Info>

## Use Cases

* **Model discovery**: Find out which AI models are available for your requests
* **Capability planning**: Choose the right model based on your specific use case
* **Integration setup**: Configure your application with the correct model names
* **Cost optimization**: Select models based on performance vs. cost trade-offs

## Authentication

<Warning>
  This endpoint requires authentication. Include your API key in the Authorization header.
</Warning>

## Response Format

The endpoint returns a structured list of all available models organized by provider:

<ResponseExample>
  ```json Success Response theme={null}
  {
    "models_list": [
      {
        "provider": "OpenAI",
        "available_models": [
          {
            "name": "GPT-4o",
            "model_id": "gpt-4o-2024-11-20"
          },
          {
            "name": "GPT-5",
            "model_id": "gpt-5-2025-04-14"
          },
          {
            "name": "o4-mini",
            "model_id": "o4-mini-2025-04-16"
          }
        ]
      },
      {
        "provider": "Anthropic",
        "available_models": [
          {
            "name": "Claude Sonnet 4",
            "model_id": "claude-sonnet-4-2025-03-10"
          },
          {
            "name": "Sonnet Opus 4.1",
            "model_id": "claude-opus-4.1-2025-05-20"
          }
        ]
      },
      {
        "provider": "Google",
        "available_models": [
          {
            "name": "Gemini 2.5 Pro",
            "model_id": "gemini-2.5-pro-002"
          },
          {
            "name": "Gemini 2.5 Flash",
            "model_id": "gemini-2.5-flash-002"
          }
        ]
      },
      {
        "provider": "xAI",
        "available_models": [
          {
            "name": "Grok 4",
            "model_id": "grok-4-2025-01-15"
          },
          {
            "name": "Grok 3 Mini",
            "model_id": "grok-3-mini-2024-12-10"
          }
        ]
      },
      {
        "provider": "Together AI",
        "available_models": [
          {
            "name": "Llama 3.3 70B",
            "model_id": "meta-llama/llama-3.3-70b-instruct"
          },
          {
            "name": "Deepseek R1 Distill Llama 70B",
            "model_id": "deepseek-ai/deepseek-r1-distill-llama-70b"
          }
        ]
      }
    ]
  }
  ```
</ResponseExample>

<ResponseField name="models_list" type="array" required>
  Array of provider objects, each containing their available models.

  <Expandable title="Provider object properties">
    <ResponseField name="provider" type="string" required>
      Name of the AI provider (e.g., "OpenAI", "Anthropic", "Google", "xAI", "Together AI").
    </ResponseField>

    <ResponseField name="available_models" type="array" required>
      Array of models available from this provider.

      <Expandable title="Model properties">
        <ResponseField name="name" type="string" required>
          Human-readable name of the model (e.g., "GPT-4o", "Claude Sonnet 4").
        </ResponseField>

        <ResponseField name="model_id" type="string" required>
          Unique model identifier to use in API requests (e.g., "gpt-4o-2024-11-20").
        </ResponseField>
      </Expandable>
    </ResponseField>
  </Expandable>
</ResponseField>

## Example Usage

<CodeGroup>
  ```bash cURL theme={null}
  curl -X GET 'https://api.checkthat-ai.com/v1/models' \
    -H 'Content-Type: application/json' \
    -d '{"api_key": "your-provider-api-key"}'
  ```

  ```python Python SDK theme={null}
  from checkthat_ai import CheckThatAI

  # Initialize with your provider API key
  client = CheckThatAI(api_key="your-openai-key")

  # List available models
  models = client.models.list()
  for provider in models.models_list:
      print(f"\n{provider['provider']} Models:")
      for model in provider['available_models']:
          print(f"  - {model['name']} ({model['model_id']})")
  ```

  ```python Direct API theme={null}
  import requests

  response = requests.get(
      'https://api.checkthat-ai.com/v1/models',
      json={'api_key': 'your-provider-api-key'}
  )

  models_data = response.json()
  for provider in models_data['models_list']:
      print(f"{provider['provider']}:")
      for model in provider['available_models']:
          print(f"  {model['name']}")
  ```
</CodeGroup>

## Model Selection Guidelines

<Tabs>
  <Tab title="High Accuracy">
    For complex claims requiring detailed analysis:

    * **GPT-4**: Best for nuanced fact-checking and complex reasoning
    * Higher cost but superior accuracy
    * Ideal for sensitive or controversial claims
  </Tab>

  <Tab title="Speed & Volume">
    For high-volume processing or simple claims:

    * **GPT-3.5 Turbo**: Faster processing with good accuracy
    * Lower cost per request
    * Suitable for basic claim extraction
  </Tab>

  <Tab title="Specialized Tasks">
    Task-specific model recommendations:

    * **Scientific claims**: Use GPT-4 for better source evaluation
    * **Political statements**: GPT-4 for bias detection
    * **Health information**: GPT-4 for medical accuracy
  </Tab>
</Tabs>

<Tip>
  Start with the `default_model` returned by this endpoint if you're unsure which model to choose. You can always switch models based on your specific requirements.
</Tip>


## OpenAPI

````yaml GET /models
openapi: 3.1.0
info:
  title: CheckThat AI - Advanced Claim Normalization & Fact-Checking Platform
  description: API for the CheckThat AI Platform - https://www.checkthat-ai.com
  version: 1.0.0
servers: []
security: []
paths:
  /models:
    get:
      tags:
        - models
      summary: List Models
      operationId: list_models_models_get
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}

````