One brain for every channel. Call it from your app, your backend or your coding agent, and get replies in the owner's voice, with the business knowledge, rules and plan limits already applied.
curl https://api.oryksa.com/v1/chat \
-H "Authorization: Bearer oryk_live_YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{"message": "Hi! What are your opening hours?"}'const res = await fetch("https://api.oryksa.com/v1/chat", {
method: "POST",
headers: {
"Authorization": "Bearer " + process.env.ORYKSA_API_KEY,
"Content-Type": "application/json",
},
body: JSON.stringify({ message: "Hi! What are your opening hours?" }),
});
const data = await res.json();
console.log(data.reply, data.conversation_id);import os, requests
r = requests.post(
"https://api.oryksa.com/v1/chat",
headers={"Authorization": f"Bearer {os.environ['ORYKSA_API_KEY']}"},
json={"message": "Hi! What are your opening hours?"},
timeout=60,
)
data = r.json()
print(data["reply"], data["conversation_id"])<?php
$ch = curl_init("https://api.oryksa.com/v1/chat");
curl_setopt_array($ch, [
CURLOPT_POST => true,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => [
"Authorization: Bearer " . getenv("ORYKSA_API_KEY"),
"Content-Type: application/json",
],
CURLOPT_POSTFIELDS => json_encode(["message" => "Hi! What are your opening hours?"]),
]);
$data = json_decode(curl_exec($ch), true);
echo $data["reply"];import 'dart:convert';
import 'package:http/http.dart' as http;
final res = await http.post(
Uri.parse('https://api.oryksa.com/v1/chat'),
headers: {
'Authorization': 'Bearer $oryksaApiKey',
'Content-Type': 'application/json',
},
body: jsonEncode({'message': 'Hi! What are your opening hours?'}),
);
final data = jsonDecode(res.body);
print(data['reply']);val body = JSONObject(mapOf("message" to "Hi! What are your opening hours?")).toString()
val req = Request.Builder()
.url("https://api.oryksa.com/v1/chat")
.header("Authorization", "Bearer $oryksaApiKey")
.post(body.toRequestBody("application/json".toMediaType()))
.build()
OkHttpClient().newCall(req).execute().use { res ->
val data = JSONObject(res.body!!.string())
println(data.getString("reply"))
}var req = URLRequest(url: URL(string: "https://api.oryksa.com/v1/chat")!)
req.httpMethod = "POST"
req.setValue("Bearer \(oryksaApiKey)", forHTTPHeaderField: "Authorization")
req.setValue("application/json", forHTTPHeaderField: "Content-Type")
req.httpBody = try JSONSerialization.data(withJSONObject: ["message": "Hi! What are your opening hours?"])
let (data, _) = try await URLSession.shared.data(for: req)
let json = try JSONSerialization.jsonObject(with: data) as! [String: Any]
print(json["reply"] ?? "")Everything below is live today.
Send a customer message, get the AI employee's reply. Conversations keep their context.
LiveTeach pages, FAQs or a whole live site. Keep it in sync from your CMS, shop or ERP.
LiveSigned events when the AI replies, books an appointment or the plan limit is reached.
LiveClaude Code, Codex, Cursor and VS Code add the AI employee to the site they are building.
LiveOne script tag: chat and voice, the business photo, greeting and suggestions.
LiveJavaScript, React Native, Flutter, Android, iOS and desktop: the AI employee inside your app.
LiveFrom zero to your first AI reply in a few minutes.
Account > Developer in the ORYKSA app. The key is shown once.
Send pages or FAQs, or let ORYKSA read the live site.
POST /v1/chat and get the reply in a few seconds.