Start Here
Quickstart
Generate your API key, make your first authenticated call, and run an agent session.
Get started with Omni in three steps using your developer API key.
Prerequisites
| Requirement | Source | Description |
|---|---|---|
| API Key | Developer Console | Key prefixed with omni_sk_live_ |
| Base URL | https://edge.omnistatic.com | Primary developer API origin |
Export your API key into your terminal environment:
export OMNI_API_KEY="omni_sk_live_..."
export OMNI_BASE_URL="https://edge.omnistatic.com"1. Verify Your Credential
Verify your token and inspect your account identity:
curl -sS "$OMNI_BASE_URL/v1/me" \
-H "Authorization: Bearer $OMNI_API_KEY"const res = await fetch("https://edge.omnistatic.com/v1/me", {
headers: {
Authorization: `Bearer ${process.env.OMNI_API_KEY}`,
},
});
const data = await res.json();
console.log("Authenticated as:", data.userId);import os
import requests
res = requests.get(
"https://edge.omnistatic.com/v1/me",
headers={"Authorization": f"Bearer {os.environ['OMNI_API_KEY']}"}
)
print("Authenticated as:", res.json().get("userId"))Response:
{
"ok": true,
"userId": "usr_94a645d99c3a",
"profile": {
"userName": "developer",
"display_name": "Dev User"
},
"verifiedAt": "2026-08-16T00:00:00.000Z"
}2. Store a Semantic Memory
Save a piece of knowledge into your agent's persistent memory bank:
curl -sS -X POST "$OMNI_BASE_URL/v1/memories" \
-H "Authorization: Bearer $OMNI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"content": "Project Phoenix launch is scheduled for September 1st, 2026."
}'const res = await fetch("https://edge.omnistatic.com/v1/memories", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.OMNI_API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
content: "Project Phoenix launch is scheduled for September 1st, 2026.",
}),
});
const memory = await res.json();
console.log("Memory saved with ID:", memory.id);import os
import requests
res = requests.post(
"https://edge.omnistatic.com/v1/memories",
headers={
"Authorization": f"Bearer {os.environ['OMNI_API_KEY']}",
"Content-Type": "application/json"
},
json={"content": "Project Phoenix launch is scheduled for September 1st, 2026."}
)
print("Memory ID:", res.json().get("id"))Response:
{
"id": "mem_01jze9m2xw",
"ownerId": "usr_94a645d99c3a",
"content": "Project Phoenix launch is scheduled for September 1st, 2026.",
"createdAt": "2026-08-16T00:00:00.000Z"
}3. Run an Agent Chat Session
Send a prompt to the model. Relevant memories are automatically retrieved and injected into the context window:
curl -sS -X POST "$OMNI_BASE_URL/v1/chat/completions" \
-H "Authorization: Bearer $OMNI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-4o-mini",
"messages": [
{ "role": "user", "content": "When is the launch of Project Phoenix?" }
]
}'const res = await fetch("https://edge.omnistatic.com/v1/chat/completions", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.OMNI_API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
model: "gpt-4o-mini",
messages: [
{ role: "user", content: "When is the launch of Project Phoenix?" },
],
}),
});
const reader = res.body?.getReader();
const decoder = new TextDecoder();
while (reader) {
const { done, value } = await reader.read();
if (done) break;
console.log(decoder.decode(value));
}import os
import requests
res = requests.post(
"https://edge.omnistatic.com/v1/chat/completions",
headers={
"Authorization": f"Bearer {os.environ['OMNI_API_KEY']}",
"Content-Type": "application/json"
},
json={
"model": "gpt-4o-mini",
"messages": [{"role": "user", "content": "When is the launch of Project Phoenix?"}]
},
stream=True
)
for line in res.iter_lines():
if line:
print(line.decode('utf-8'))The agent inspects memory, finds the fact, and replies with index-grounded certainty.
Troubleshooting & Failure Modes
| Status Code | Cause | Recommended Action |
|---|---|---|
401 Unauthorized | Invalid key or missing Bearer header | Verify that OMNI_API_KEY is exported and valid. |
403 Forbidden | Key lacks required scope or account not in allowlist | Check scopes at /dev/keys or ensure key has chat and memory:read. |
429 Too Many Requests | Exceeded 60 req/min key limit or 600 req/hr UID limit | Implement exponential backoff retry. |
429 Quota Exceeded | Monthly token allowance or credit ceiling reached | Inspect current consumption via GET /v1/credits. |
500 Upstream Error | Upstream model provider temporarily unreachable | Retry with backoff using the same payload. |
Coding Agent Instruction Block
Paste this prompt into Claude Code, Cursor, or Codex to have an assistant set up your integration:
Connect to the Omni Developer API at https://edge.omnistatic.com using the Bearer token in OMNI_API_KEY.
1. Verify connectivity with GET /v1/me.
2. Ingest contextual facts using POST /v1/memories {"content": "<text>"}.
3. Execute chat completions via POST /v1/chat/completions with standard OpenAI message payloads.
Handle 429 rate limits with exponential backoff.