Getting started
Sign up, get approved, create a key, and make your first ASAS API call in under 10 minutes.
مرحباً بك في توثيق أساس
الشرح هنا بالإنجليزية (اللغة الأساسية للتوثيق) مع أمثلة أكواد تُقرأ من اليسار إلى اليمين. واجهة المنصة ولوحة التحكم عربيةٌ أولاً. ابدأ بأول استدعاء ناجح خلال أقل من 10 دقائق.
The ASAS API gives you Arabic-first text-to-speech, speech-to-text, and retrieval-augmented search over your own documents, through one authenticated, metered gateway that runs entirely inside KSA regions.
Everything is versioned under /v1 and authenticated with a Bearer API key. This
guide takes you from zero to your first synthesized audio clip.
Before you start
ASAS launches in a controlled mode, so access is granted, not instant:
- Sign up at app.asas.flitc.tech and verify your email.
- Wait for approval. New organizations start as
pending_approval. A super admin approves your organization and grants your initial credits. You will get an email when you are approved. - Once approved, API key creation, playgrounds, and API access unlock.
You can see the dashboard shell while pending, but keys and API calls stay locked until approval. This gate is how ASAS controls abuse at launch — see Rate limits.
1. Create an API key
In the dashboard, open API keys → Create key, name it, and choose scopes
(tts:speak, stt:transcribe, rag:query).
The full key is shown once, at creation. ASAS stores only a keyed hash of it. If you lose it, revoke it and create a new one. Revocation is immediate and also tears down any live streaming sessions.
Keys look like this — asas_live_… for production, asas_test_… for test mode:
asas_live_9fK2p…7Kf2Keep keys server-side. Never ship them in a browser or mobile bundle.
2. Make your first call
Send up to 500 characters of Arabic text to the streaming TTS endpoint and save the audio. Pass your key as a Bearer token.
curl https://api.asas.flitc.tech/v1/tts/stream \
-H "Authorization: Bearer $ASAS_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"voice": "layan",
"text": "أهلاً بك في أساس",
"quality": "standard"
}' \
--output speech.mp3Or with the TypeScript SDK (@asas/sdk, a typed client — currently v0):
import { AsasClient } from "@asas/sdk";
const asas = new AsasClient({ apiKey: process.env.ASAS_API_KEY! });
// Streams chunked audio; begins before synthesis finishes.
const audio = await asas.tts.stream({
voice: "layan",
text: "أهلاً بك في أساس",
quality: "standard",
});
await Bun.write("speech.mp3", audio); // or pipe `audio` to any WritableStreamThat's it — you just spent a few credits and got back Arabic speech. Check your Usage page in the dashboard; the request and its credit cost appear within seconds.
Core concepts
- Base URL —
https://api.asas.flitc.tech/v1. All paths are versioned under/v1. - Auth —
Authorization: Bearer asas_live_…. See Authentication. - Errors — RFC 9457
application/problem+jsonwithcode+request_id. See Errors. - Credits — one unified balance, decremented per product at published rates. Your balance, rates, and consumption are always visible in the dashboard.
- Test mode —
asas_test_…keys hit the real models with tiny throttled quotas and are excluded from billing.
Next steps
Authentication
API keys, Bearer tokens, scopes, and test mode.
Text to Speech
Voices, quality tiers, and streaming synthesis.
Speech to Text
Batch and realtime transcription (preview).
Ask your documents
Search modes over your document tenant.
API reference
Every endpoint, generated from the OpenAPI spec.
Webhooks
Event catalog and signature verification.