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

# Model Catalog

> Browse all available AI models with pricing, capabilities, and context windows

Access 195+ AI models from leading providers through a single API. All models support the OpenAI-compatible chat completions format.

<Card title="Browse Models" icon="table" href="https://case.dev/models">
  **Visual Model Catalog** — Search, filter, and compare all 195+ models with real-time pricing, context windows, and capabilities.
</Card>

***

## Using a Model

To use any model, pass its ID to the chat completions endpoint:

<CodeGroup>
  ```bash title="cURL" theme={"theme":{"light":"github-light","dark":"one-dark-pro"}}
  curl https://api.case.dev/llm/v1/chat/completions \
    -H "Authorization: Bearer sk_case_YOUR_API_KEY" \
    -H "Content-Type: application/json" \
    -d '{
      "model": "anthropic/claude-sonnet-4.5",
      "messages": [{"role": "user", "content": "Hello!"}]
    }'
  ```

  ```bash title="CLI" theme={"theme":{"light":"github-light","dark":"one-dark-pro"}}
  casedev llm:v1:chat create-completion \
    --model anthropic/claude-sonnet-4.5 \
    --message '{role: user, content: "Hello!"}'
  ```

  ```typescript title="Typescript" theme={"theme":{"light":"github-light","dark":"one-dark-pro"}}
  import Casedev from 'casedev';

  const client = new Casedev({ apiKey: 'sk_case_YOUR_API_KEY' });

  const response = await client.llm.v1.chat.createCompletion({
    model: 'anthropic/claude-sonnet-4.5',
    messages: [{ role: 'user', content: 'Hello!' }]
  });

  console.log(response.choices[0].message.content);
  ```

  ```python title="Python" theme={"theme":{"light":"github-light","dark":"one-dark-pro"}}
  import casedev

  client = casedev.Casedev(api_key='sk_case_YOUR_API_KEY')

  response = client.llm.v1.chat.create_completion(
      model='anthropic/claude-sonnet-4.5',
      messages=[{'role': 'user', 'content': 'Hello!'}]
  )

  print(response.choices[0].message.content)
  ```

  ```go title="Go" theme={"theme":{"light":"github-light","dark":"one-dark-pro"}}
  resp, _ := client.Llm.V1.Chat.NewCompletion(ctx, casedev.LlmV1ChatNewCompletionParams{
  	Model: casedev.F("anthropic/claude-sonnet-4.5"),
  	Messages: casedev.F([]casedev.LlmV1ChatNewCompletionParamsMessage{{
  		Role:    casedev.F(casedev.LlmV1ChatNewCompletionParamsMessagesRoleUser),
  		Content: casedev.F("Hello!"),
  	}}),
  })
  fmt.Println(resp.Choices[0].Message.Content)
  ```
</CodeGroup>

***

## Programmatic Access

Get the complete model list via API:

<CodeGroup>
  ```bash title="cURL" theme={"theme":{"light":"github-light","dark":"one-dark-pro"}}
  curl https://api.case.dev/llm/v1/models \
    -H "Authorization: Bearer sk_case_YOUR_API_KEY"
  ```

  ```bash title="CLI" theme={"theme":{"light":"github-light","dark":"one-dark-pro"}}
  casedev llm:v1 list-models
  ```

  ```typescript title="Typescript" theme={"theme":{"light":"github-light","dark":"one-dark-pro"}}
  import Casedev from 'casedev';

  const client = new Casedev({ apiKey: 'sk_case_YOUR_API_KEY' });

  const { data: models } = await client.llm.v1.listModels();

  for (const model of models) {
    console.log(`${model.id}: $${model.pricing.input}/input, $${model.pricing.output}/output`);
  }
  ```

  ```python title="Python" theme={"theme":{"light":"github-light","dark":"one-dark-pro"}}
  import casedev

  client = casedev.Casedev(api_key='sk_case_YOUR_API_KEY')

  result = client.llm.v1.list_models()

  for model in result.data:
      print(f'{model.id}: ${model.pricing.input}/input, ${model.pricing.output}/output')
  ```

  ```go title="Go" theme={"theme":{"light":"github-light","dark":"one-dark-pro"}}
  result, _ := client.Llm.V1.ListModels(ctx)
  for _, model := range result.Data {
  	fmt.Printf("%s: $%s/input, $%s/output\n", model.ID, model.Pricing.Input, model.Pricing.Output)
  }
  ```
</CodeGroup>

Response includes all models with current pricing, context windows, and capabilities.
