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

# SDKs overview

> QWED official SDKs for Python, TypeScript, Go, and Rust. Compare features, view quick install commands, and get started with verification in minutes.

QWED provides official SDKs for 4 languages.

## Available SDKs

| Language                       | Package                      | Status   |
| ------------------------------ | ---------------------------- | -------- |
| [Python](/sdks/python)         | `qwed`                       | ✅ Stable |
| [TypeScript](/sdks/typescript) | `@qwed-ai/sdk`               | ✅ Stable |
| [Go](/sdks/go)                 | `github.com/qwed-ai/qwed-go` | ✅ Stable |
| [Rust](/sdks/rust)             | `qwed`                       | ✅ Stable |

## Feature comparison

| Feature          | Python | TypeScript | Go | Rust |
| ---------------- | ------ | ---------- | -- | ---- |
| Sync client      | ✅      | ✅          | ✅  | ✅    |
| Async client     | ✅      | ✅          | ✅  | ✅    |
| Batch operations | ✅      | ✅          | ✅  | ✅    |
| Agent API        | ✅      | ✅          | ❌  | ❌    |
| Attestations     | ✅      | ✅          | ✅  | ✅    |
| CLI              | ✅      | ❌          | ❌  | ❌    |

## Quick install

```bash theme={null}
# Python
pip install qwed

# TypeScript
npm install @qwed-ai/sdk

# Go
go get github.com/qwed-ai/qwed-go

# Rust
cargo add qwed
```

## Minimal example

<Tabs>
  <Tab title="Python">
    ```python theme={null}
    from qwed_sdk import QWEDClient

    client = QWEDClient(api_key="qwed_...")
    result = client.verify("2+2=4")
    print(result.verified)  # True
    ```
  </Tab>

  <Tab title="TypeScript">
    ```typescript theme={null}
    import { QWEDClient } from '@qwed-ai/sdk';

    const client = new QWEDClient({ apiKey: 'qwed_...' });
    const result = await client.verify('2+2=4');
    console.log(result.verified);  // true
    ```
  </Tab>

  <Tab title="Go">
    ```go theme={null}
    client := qwed.NewClient("qwed_...")
    result, _ := client.Verify(ctx, "2+2=4")
    fmt.Println(result.Verified)  // true
    ```
  </Tab>

  <Tab title="Rust">
    ```rust theme={null}
    let client = QWEDClient::new("qwed_...");
    let result = client.verify("2+2=4").await?;
    println!("{}", result.verified);  // true
    ```
  </Tab>
</Tabs>
