Introduction

Installation

This guide covers getting your API key and installing an SDK for your language.

Get your API key

Sign in to the Aether Dashboard and create an API key. Keep it out of your source code — load it from a .env file, your secrets manager, or an environment variable, and pass it to the client when you construct it:

import os
from aether import AetherClient

client = AetherClient(api_key=os.environ["AETHER_API_KEY"])

Once the key is set, every request is authenticated automatically — you never touch headers or tokens in your application code.

Zero-config shortcut

Every SDK falls back to the AETHER_API_KEY environment variable when no key is passed. If you name your variable AETHER_API_KEY, you can construct the client with no arguments (AetherClient()) and skip passing the key. Passing it in explicitly works with any key source or variable name. See Authentication for precedence rules and Environment variables for how to set one.

Agent memory shortcut

For per-user or per-agent memory in Python and TypeScript, use the Memory facade. It scopes every write, recall, list, and delete operation to one entity_id, so your app code does not have to manage tags or filters by hand. Use AetherClient directly when you need lower-level document and search control.

import os
from aether import Memory

memory = Memory("user-42", api_key=os.environ["AETHER_API_KEY"])
memory.remember("Prefers concise weekly summaries")

for item in memory.recall("communication style", k=3):
    print(item.score, item.text)

Installing the Python SDK

The Python SDK is available directly via pip.

Bash
pip install aether-ai

The package installs as aether-ai, but the import name is aetherfrom aether import AetherClient. This gives you the AetherClient class, which is how your Python code connects to the Aether API, stores documents, and runs searches. If you've used libraries like requests or openai, the pattern will feel familiar — you create a client and call methods on it.

Dependency Alert

The Python SDK requires httpx for handling HTTP requests. httpx is a modern HTTP library (similar to requests, but with async support) that the SDK uses under the hood to communicate with the Aether API. Installing the package will automatically pull in this dependency — no extra steps needed on your part.

Installing the TypeScript SDK

The TypeScript SDK is available on npm and can be added to your project via your preferred package manager.

Bash
npm install @aether-ai/sdk

This gives you the AetherClient class and full TypeScript type definitions. You'll use it to connect to the Aether API, store documents, and run vector searches — all with autocomplete and type safety in your editor.

Environment & runtime

The TypeScript SDK uses the native fetch API, so it works in Node.js 18+ and modern browsers with no extra dependencies. Pass process.env.AETHER_API_KEY to the client (or omit it to let the SDK read AETHER_API_KEY automatically). For local development, store the key in a .env file with your framework's env loader — Next.js loads .env files by default, or add dotenv for plain Node.js scripts.

Installing the Go SDK

The Go SDK can be added to your project using go get. Requires Go 1.21 or later.

Bash
go get github.com/quintessence-group/aether-sdk-go

The module path is github.com/quintessence-group/aether-sdk-go, but the package it provides is named aether. Alias the import so the name is explicit:

Go
import (
	"os"

	aether "github.com/quintessence-group/aether-sdk-go"
)

client := aether.New(aether.WithAPIKey(os.Getenv("AETHER_API_KEY")))

The SDK follows standard Go conventions — every method takes a context.Context as its first argument, returns error as the last value, and uses struct-based configuration. See the Go quickstart for a complete working example.

Installing the .NET SDK

The .NET SDK is available on NuGet and can be added to your project via the dotnet CLI.

Bash
dotnet add package AetherDb.Sdk

This gives you the AetherClient class in the Aether.Sdk namespace for storing documents and running searches from C# or any .NET language. The package id is AetherDb.Sdk; the namespace remains Aether.Sdk. The SDK supports .NET 8.0+ and .NET Standard 2.0, making it compatible with .NET Framework 4.6.1+, .NET Core 2.0+, Xamarin, and Unity.

Async by default

All .NET SDK methods are async and return Task. You must await them from an async method. For console apps, use async Task Main():

C#
using Aether.Sdk;

using var client = new AetherClient(new AetherClientOptions { ApiKey = Environment.GetEnvironmentVariable("AETHER_API_KEY") });
var doc = await client.InsertTextAsync("Hello, Aether!");
Console.WriteLine(doc.DocId);

The using var pattern ensures the client's HTTP connections are disposed when it goes out of scope.

.NET SDK status {#net-sdk-status}

The .NET SDK package (AetherDb.Sdk) exposes the Aether.Sdk namespace. All core operations — insert, list, get, delete, restore, search, retrieve, batch, async ingestion, and status — are implemented, including RetrieveAsync for single-call RAG. If you hit a behavioral gap with another SDK, please file an issue.