S
SOUTHYAI DURBAN • SA API LIVE
API PLATFORM • OPERATIONAL

API built for
South African voices.

One API for voice discovery, licensing, and delivery. R2 + D1 powered. Like ElevenLabs, but for Zulu, Xhosa, Afrikaans, and more.

View Endpoints
GET/api/voices

List all voices

Filter by language, accent, gender. Returns licensed South African voices.

curl https://southyai.co.za/api/voices
Try it →
GET/api/voices/:id

Stream preview + metadata

Get voice details, preview URL, language, accent, pricing.

curl https://southyai.co.za/api/voices/voice-thandi-sesotho
Try it →
ADMIN/api/admin/confirm-payment

Confirm payment + issue PIN

Customer pays by PayShap/EFT. Once the money lands, we confirm and a one-time PIN is emailed.

{ "voice_id": "voice-imizamo-xhosa", "customer_email": "you@company.com" }
POST/api/redeem

Redeem PIN + download

Trade your email + PIN for the licensed file. Each PIN works once.

{ "email": "you@company.com", "pin": "K7M2QX9A" }
POST/api/redeem

Secure R2 download

Validates your PIN, then streams the licensed audio straight from private R2 storage.

curl -X POST /api/redeem -d '{"email":"..","pin":".."}' -o voice.wav
ADMIN/api/admin/*

Manage catalog

/admin/voices + /admin/licenses — CRUD for team.

Requires admin token header

Licensed voices

Preview a voice, then pay via PayShap to +27-676861140@CAPITEC using your email as the reference. Email proof of payment to support@southyai.co.za and your one-time PIN is emailed to you. Redeem a PIN →

Loading voices...

Quick start - JavaScript

const res = await fetch('/api/voices');
const { voices } = await res.json();
console.log(voices[0].name, voices[0].language);
const file = await fetch('/api/redeem', {
  method: 'POST',
  headers: { 'Content-Type': 'application/json' },
  body: JSON.stringify({ email, pin })
});
const audio = await file.blob(); // your licensed voice

Python + cURL examples in docs. Full OpenAPI spec at /api/openapi.json (coming)