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

# Introduction

> Get started with the CheckThat AI API for advanced claim normalization and fact-checking

## Welcome to CheckThat AI API

CheckThat AI provides a **unified LLM access platform** that connects you to 11+ models from leading AI providers through a single API. Built with integrated fact-checking and claim normalization capabilities, it's the perfect solution for applications requiring both AI power and truth verification.

<CardGroup cols={2}>
  <Card title="CheckThat AI Platform" icon="shield-check" href="https://www.checkthat-ai.com">
    Visit the main platform to get started
  </Card>

  <Card title="Python SDK" icon="code" href="https://pypi.org/project/checkthat-ai/">
    Install our Python SDK for easy integration
  </Card>
</CardGroup>

## Base URL

All API requests should be made to the following base URL:

```
https://api.checkthat-ai.com/v1
```

## Platform Features

<CardGroup cols={2}>
  <Card title="Unified LLM Access" icon="network-wired">
    Access 11+ models from OpenAI, Anthropic, Google Gemini, xAI, and Together AI through one API
  </Card>

  <Card title="Fact-Checking Built-in" icon="shield-check">
    Every response includes built-in claim verification and evidence sourcing
  </Card>

  <Card title="OpenAI Compatible" icon="robot">
    Drop-in replacement for OpenAI SDK - no code changes required
  </Card>

  <Card title="Multiple Providers" icon="globe">
    Switch between providers seamlessly: OpenAI, Anthropic, Google, xAI, Together AI
  </Card>
</CardGroup>

## Supported Providers & Models

<Tabs>
  <Tab title="OpenAI">
    **Latest Models:**

    * GPT-5
    * GPT-5 nano
    * o3
    * o4-mini
    * GPT-4o
  </Tab>

  <Tab title="Anthropic">
    **Claude Models:**

    * Claude Sonnet 4
    * Sonnet Opus 4.1
    * Claude 3.5 Sonnet
  </Tab>

  <Tab title="Google">
    **Gemini Models:**

    * Gemini 2.5 Pro
    * Gemini 2.5 Flash
    * Gemini Pro
  </Tab>

  <Tab title="xAI">
    **Grok Models:**

    * Grok 4
    * Grok 3
    * Grok 3 Mini
  </Tab>

  <Tab title="Together AI">
    **Open Source Models:**

    * Llama 3.3 70B
    * Deepseek R1 Distill Llama 70B
  </Tab>
</Tabs>

## Authentication

<Warning>
  CheckThat AI uses your existing provider API keys. You need API keys from the providers whose models you want to use (OpenAI, Anthropic, Google, etc.).
</Warning>

Authentication is handled using your provider-specific API keys:

<Tabs>
  <Tab title="Environment Variables">
    Set your provider API keys as environment variables:

    ```bash theme={null}
    export OPENAI_API_KEY="your-openai-key"
    export ANTHROPIC_API_KEY="your-anthropic-key"  
    export GEMINI_API_KEY="your-gemini-key"
    export XAI_API_KEY="your-xai-key"
    export TOGETHER_API_KEY="your-together-key"
    ```
  </Tab>

  <Tab title="Python SDK">
    Pass your API key to the CheckThat AI client:

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

    # Use your OpenAI key for OpenAI models
    client = CheckThatAI(api_key="your-openai-key")
    ```
  </Tab>

  <Tab title="Direct API Calls">
    Include the API key in your requests:

    ```bash theme={null}
    curl -X POST 'https://api.checkthat-ai.com/v1/chat/completions' \
      -H 'Content-Type: application/json' \
      -d '{
        "api_key": "your-provider-key",
        "model": "gpt-4o",
        "messages": [{"role": "user", "content": "Hello!"}]
      }'
    ```
  </Tab>
</Tabs>

<Info>
  You only need API keys for the providers whose models you plan to use. Get API keys directly from: [OpenAI](https://openai.com), [Anthropic](https://anthropic.com), [Google AI](https://ai.google.dev), [xAI](https://x.ai), [Together AI](https://together.ai).
</Info>

## Rate Limiting

The API implements rate limiting to ensure fair usage across all users. Rate limits are applied per API key and vary based on your subscription plan.

<Tip>
  Monitor the response headers for rate limit information:

  * `X-RateLimit-Limit`: Maximum requests per time window
  * `X-RateLimit-Remaining`: Remaining requests in current window
  * `X-RateLimit-Reset`: Time when the rate limit window resets
</Tip>

## Getting Started

<Steps>
  <Step title="Install the Python SDK">
    Install CheckThat AI Python SDK via pip:

    ```bash theme={null}
    pip install checkthat-ai
    ```

    <Check>
      The SDK is compatible with Python 3.8+ and provides full type hints.
    </Check>
  </Step>

  <Step title="Get provider API keys">
    Obtain API keys from the providers you want to use:

    * **OpenAI**: [platform.openai.com](https://platform.openai.com)
    * **Anthropic**: [console.anthropic.com](https://console.anthropic.com)
    * **Google AI**: [ai.google.dev](https://ai.google.dev)
    * **xAI**: [x.ai](https://x.ai)
    * **Together AI**: [together.ai](https://together.ai)
  </Step>

  <Step title="Make your first request">
    Use CheckThat AI exactly like the OpenAI SDK:

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

    client = CheckThatAI(api_key="your-openai-key")

    response = client.chat.completions.create(
        model="gpt-4o",
        messages=[
            {"role": "user", "content": "Fact-check: The Earth is round"}
        ]
    )

    print(response.choices[0].message.content)
    ```
  </Step>
</Steps>

## Error Handling

The API returns standard HTTP status codes and detailed error messages:

* **200**: Success
* **400**: Bad Request - Invalid parameters
* **401**: Unauthorized - Invalid or missing API key
* **422**: Validation Error - Request data validation failed
* **429**: Too Many Requests - Rate limit exceeded
* **500**: Internal Server Error - Server-side error

<Accordion title="Common Error Response Format">
  ```json theme={null}
  {
    "detail": [
      {
        "loc": ["body", "model"],
        "msg": "field required",
        "type": "value_error.missing"
      }
    ]
  }
  ```
</Accordion>
