> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.apologist.ai/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.apologist.ai/_mcp/server.

# SDKs

Use the official Agent API SDKs to call chat completions, corpus search, evaluators, CTAs, and other endpoints from your application.

Generated with [Fern](https://buildwithfern.com/) from the same OpenAPI definition as the API Reference.

## TypeScript / JavaScript

```bash
npm install apologist
```

```typescript
import { ApologistAgentClient } from "apologist";

const client = new ApologistAgentClient({
  domain: process.env.APOLOGIST_AGENT_DOMAIN,
  apiKey: process.env.APOLOGIST_API_KEY,
});
```

Package: [https://www.npmjs.com/package/apologist](https://www.npmjs.com/package/apologist)

Class: `ApologistAgentClient`

Repository: [apologist-project/apg-sdk-js](https://github.com/apologist-project/apg-sdk-js)

## Python

```bash
pip install apologist
```

```python
import os
from apologist import ApologistAgentClient

client = ApologistAgentClient(
    domain=os.environ["APOLOGIST_AGENT_DOMAIN"],
    api_key=os.environ["APOLOGIST_API_KEY"],
)
```

Package: [https://pypi.org/project/apologist/](https://pypi.org/project/apologist/)

Class: `ApologistAgentClient`

Repository: [apologist-project/apg-sdk-python](https://github.com/apologist-project/apg-sdk-python)

## Go

```bash
go get github.com/apologist-project/apg-sdk-go
```

```go
import (
	"os"

	"github.com/apologist-project/apg-sdk-go/client"
	"github.com/apologist-project/apg-sdk-go/option"
)

c := client.NewApologistAgentClient(
	option.WithDomain(os.Getenv("APOLOGIST_AGENT_DOMAIN")),
	option.WithAPIKey(os.Getenv("APOLOGIST_API_KEY")),
)
```

Package: [https://pkg.go.dev/github.com/apologist-project/apg-sdk-go](https://pkg.go.dev/github.com/apologist-project/apg-sdk-go)

Class: `client.ApologistAgentClient`

Repository: [apologist-project/apg-sdk-go](https://github.com/apologist-project/apg-sdk-go)

## Java

Maven coordinate: `ai.apologist:apologist`

```java
import ai.apologist.AgentClient;

AgentClient client = AgentClient.builder()
    .domain(System.getenv("APOLOGIST_AGENT_DOMAIN"))
    .apiKey(System.getenv("APOLOGIST_API_KEY"))
    .build();
```

Package: [https://central.sonatype.com/artifact/ai.apologist/apologist](https://central.sonatype.com/artifact/ai.apologist/apologist)

Class: `ai.apologist.AgentClient`

Repository: [apologist-project/apg-sdk-java](https://github.com/apologist-project/apg-sdk-java)

## .NET / C\#

```bash
dotnet add package apologist
```

```csharp
using Apologist;

var client = new ApologistAgentClient(
    Environment.GetEnvironmentVariable("APOLOGIST_API_KEY")!,
    new ClientOptions
    {
        Domain = Environment.GetEnvironmentVariable("APOLOGIST_AGENT_DOMAIN"),
    }
);
```

Package: [https://www.nuget.org/packages/apologist](https://www.nuget.org/packages/apologist)

Class: `Apologist.ApologistAgentClient`

Repository: [apologist-project/apg-sdk-csharp](https://github.com/apologist-project/apg-sdk-csharp)

## PHP

```bash
composer require apologist/apologist
```

```php
<?php

use Apologist\ApologistAgentClient;

$client = new ApologistAgentClient(
    apiKey: getenv('APOLOGIST_API_KEY') ?: null,
    domain: getenv('APOLOGIST_AGENT_DOMAIN') ?: null,
);
```

Package: [https://packagist.org/packages/apologist/apologist](https://packagist.org/packages/apologist/apologist)

Class: `Apologist\ApologistAgentClient`

Repository: [apologist-project/apg-sdk-php](https://github.com/apologist-project/apg-sdk-php)

## Ruby

```bash
gem install apologist
```

```ruby
require "apologist"

client = Apologist::AgentClient.new(
  api_key: ENV.fetch("APOLOGIST_API_KEY"),
  domain: ENV.fetch("APOLOGIST_AGENT_DOMAIN"),
)
```

Package: [https://rubygems.org/gems/apologist](https://rubygems.org/gems/apologist)

Class: `Apologist::AgentClient`

Repository: [apologist-project/apg-sdk-ruby](https://github.com/apologist-project/apg-sdk-ruby)

## Swift

```swift
// Package.swift dependency:
.package(url: "https://github.com/apologist-project/apg-sdk-swift.git", from: "0.1.0")
```

```swift
import Foundation
import Apologist

guard
    let domain = ProcessInfo.processInfo.environment["APOLOGIST_AGENT_DOMAIN"],
    let apiKey = ProcessInfo.processInfo.environment["APOLOGIST_API_KEY"]
else {
    fatalError("APOLOGIST_AGENT_DOMAIN and APOLOGIST_API_KEY are required")
}

let client = ApologistAgentClient(
    baseURL: "https://\(domain)/api/v1",
    apiKey: apiKey
)
```

Class: `ApologistAgentClient`

Repository: [apologist-project/apg-sdk-swift](https://github.com/apologist-project/apg-sdk-swift)

## Rust

```bash
cargo add apologist
```

```rust
use apologist::prelude::*;
use std::env;

let domain = env::var("APOLOGIST_AGENT_DOMAIN").expect("APOLOGIST_AGENT_DOMAIN");
let api_key = env::var("APOLOGIST_API_KEY").expect("APOLOGIST_API_KEY");

let config = ClientConfig {
    base_url: format!("https://{domain}/api/v1"),
    api_key: Some(api_key),
    ..Default::default()
};
let client = ApologistAgentClient::new(config).expect("Failed to build client");
```

Package: [https://crates.io/crates/apologist](https://crates.io/crates/apologist)

Class: `ApologistAgentClient`

Repository: [apologist-project/apg-sdk-rust](https://github.com/apologist-project/apg-sdk-rust)

## Next steps

Browse the API Reference for endpoint details. Endpoint pages include SDK snippets for supported languages once generation has run.