API Reference
Pilotez vos relais RTMP, le chat, les objectifs cadeaux et la modération avec une API conçue pour le direct.
https://api.orya.live/v1Authentification
L’API Orya utilise des clés secrètes pour authentifier les requêtes. Ajoutez votre clé dans l’en-tête Authorization de chaque appel.
Ne l’exposez jamais dans du code client ou dans un dépôt public.
Authorization: Bearer orya_live_xxxxxxxxxxxx/streamsLister les streams
Retourne vos relais RTMP avec leur destination, leur état et les métriques de transport actuelles.
statusstringFiltre par état : ready, live ou offline.
limitintegerNombre de résultats, de 1 à 100. Par défaut : 20.
/streamsCréer un relais RTMP
Crée un stream et retourne le serveur ainsi que la clé RTMP à renseigner dans OBS.
Corps de la requête
destinationenumrequisLa plateforme de destination. Pour le MVP : tiktok.
titlestringoptionnelLe nom interne du live affiché dans la régie Orya.
regionenumoptionnelLa région d’ingestion la plus proche du créateur.
metadataobjectoptionnelDonnées personnalisées associées au stream.
curl --request POST \
--url https://api.orya.live/v1/streams \
--header 'Authorization: Bearer orya_live_xxx' \
--header 'Content-Type: application/json' \
--data '{
"destination": "tiktok",
"title": "Mon live du soir",
"region": "eu-west"
}'{
"id": "str_8K4mP2qL",
"status": "ready",
"ingest": {
"protocol": "rtmp",
"server": "rtmp://ingest.orya.live/live",
"stream_key": "orya_live_xxxxxxxxxxxx"
},
"destination": "tiktok",
"created_at": "2026-09-19T16:24:00Z"
}/streams/{stream_id}/eventsÉcouter le live et le chat
Ouvrez une connexion WebSocket pour recevoir l’état du flux et les interactions TikTok avec une latence minimale.
stream.health_changedLe débit, la latence ou les images perdues évoluent.
chat.messageUn nouveau message est publié dans le chat.
gift.receivedUn cadeau TikTok est reçu pendant le live.
/streams/{stream_id}/gift-goalsCréer un objectif cadeaux
Définissez un objectif en diamants, affichez sa progression dans la régie et recevez une notification lorsqu’il est atteint.
/streams/{stream_id}/moderation/actionsModérer un utilisateur
Appliquez une action mute, block ou ajoutez un utilisateur à la liste des modérateurs.
Votre endpoint webhookWebhooks
Recevez les événements importants de manière fiable, même lorsque votre application n’est pas connectée au flux WebSocket.
{
"type": "chat.message",
"created_at": 1789835040,
"data": {
"stream_id": "str_8K4mP2qL",
"user": "@lina",
"message": "Le stream est super fluide !"
}
}Codes d’erreur
Les erreurs utilisent les codes HTTP standards et incluent toujours un identifiant traçable dans le corps de la réponse.
Bad RequestParamètres invalides ou manquants.
UnauthorizedClé API absente ou invalide.
Rate LimitedTrop de requêtes sur la période.