Documentation API
Authentification
L'API DeepVidFlow utilise des clés API pour sécuriser l'accès aux endpoints. Chaque requête doit inclure votre clé API personnelle dans l'en-tête HTTP. Cette clé permet d'identifier votre compte, de suivre votre utilisation et de gérer vos crédits.
Obtention de votre clé API
Pour obtenir votre clé API, vous devez avoir un compte DeepVidFlow. Le processus est simple et rapide :
Depuis votre espace personnel, vous pourrez gérer toutes vos clés API
- Connectez-vous ou créez un compte
Un compte gratuit vous permet de tester l'API avec des crédits de bienvenue
- Dans la section "API Keys", cliquez sur "Générer une nouvelle clé"
Vous pouvez générer plusieurs clés pour différents projets ou environnements (développement, production)
- Copiez et sécurisez votre clé API
La clé ne sera affichée qu'une seule fois. Conservez-la dans un endroit sûr
Utilisation de la clé API
Pour authentifier vos requêtes, incluez votre clé API dans l'en-tête HTTP "X-API-Key". Exemple d'en-tête :
X-API-Key: votre_clé_api_ici
- Ne partagez jamais votre clé API publiquement
- Chaque clé est liée à votre compte et à vos crédits
- Vous pouvez révoquer une clé à tout moment depuis votre tableau de bord
- Les requêtes sans clé API valide seront rejetées avec une erreur 401
Bonnes pratiques de sécurité
- Utilisez des variables d'environnement pour stocker vos clés API
- Créez des clés différentes pour le développement et la production
- Surveillez régulièrement l'utilisation de vos clés dans le tableau de bord
- Renouvelez vos clés périodiquement pour plus de sécurité
- Limitez les permissions de chaque clé selon vos besoins
Codes d'erreur
401
Clé API invalide ou manquante402
Crédits insuffisants pour cette opération403
Accès non autorisé pour cette ressource429
Trop de requêtes - Limite de taux atteinteExemples de Code
Traitement Vidéo (URL)
Exemple
# Create a task
curl -X POST "https://api.deepvidflow.xyz/v1/tasks" \
-H "X-API-Key: your-api-key" \
-H "Content-Type: application/json" \
-d '{
"video_url": "https://www.tiktok.com/@username/video/1234567890",
"mode": "splitflow",
"voice_id": "fr_fr_remymultilingualneural"
}'
Traitement Vidéo
Endpoints pour le traitement et la manipulation de vidéos
Créer une tâche vidéo
/v1/tasks
Crée une nouvelle tâche de traitement vidéo
Paramètres de requête
{ "video_url": "URL de la vidéo à traiter", "mode": "Mode de traitement (splitflow, smartflow, cropflow, glitchflow)", "voice_id": "ID de la voix à utiliser" }
Réponse
{ "task_id": "ID unique de la tâche", "status": "État de la tâche", "worker_id": "ID du worker assigné" }
Traitement Texte
Endpoints pour le traitement de texte et la génération de contenu
Upload de texte
/v1/tasks/upload-text
Crée une tâche à partir d'un fichier texte
Paramètres de requête
{ "file": "Fichier texte (multipart/form-data)", "mode": "Mode de traitement", "voice_id": "ID de la voix" }
Gestion des Tâches
Endpoints pour gérer et suivre les tâches
Statut de la tâche
/v1/tasks/{task_id}
Obtient le statut d'une tâche
Annuler une tâche
/v1/tasks/{task_id}/cancel
Annule une tâche en cours
Relancer une tâche
/v1/tasks/{task_id}/retry
Relance une tâche échouée
Génération de Voix
Endpoints pour la génération et la manipulation de voix
Générer une voix
/v1/tasks/{task_id}/generate_voice
Génère la voix pour une tâche
Gestion des Workers
Endpoints pour gérer les workers de traitement
Supprimer un worker
/v1/workers/{worker_id}
Supprime un worker et ses fichiers associés
Gestion des Crédits
Endpoints pour gérer les crédits utilisateur
Vérifier les crédits
/v1/credits
Obtient le solde de crédits actuel
Upload de Vidéo
Endpoints pour l'upload direct de fichiers vidéo
Upload de vidéo
/v1/tasks/upload-video
Upload direct d'un fichier vidéo
Paramètres de requête
{ "file": "Fichier vidéo (multipart/form-data)", "mode": "Mode de traitement (splitflow, smartflow, cropflow, glitchflow)", "voice_id": "ID de la voix à utiliser (optionnel)" }
Réponse
{ "task_id": "ID unique de la tâche", "status": "État initial de la tâche", "upload_url": "URL pour l'upload du fichier" }
Webhooks
Endpoints pour la gestion des notifications webhook
Configurer un webhook
/v1/webhooks
Configure une URL de callback pour les notifications
Paramètres de requête
{ "url": "URL de callback", "events": "Liste des événements à notifier (task.completed, task.failed, etc.)", "secret": "Clé secrète pour la signature des webhooks" }
Lister les webhooks
/v1/webhooks
Récupère la liste des webhooks configurés
Supprimer un webhook
/v1/webhooks/{webhook_id}
Supprime un webhook existant
Modèles
Endpoints pour la gestion des modèles d'IA
Lister les modèles
/v1/models
Récupère la liste des modèles disponibles
Réponse
{ "models": "Liste des modèles avec leurs caractéristiques", "total": "Nombre total de modèles" }
Détails d'un modèle
/v1/models/{model_id}
Récupère les détails d'un modèle spécifique
Réponse
{ "id": "Identifiant du modèle", "name": "Nom du modèle", "description": "Description détaillée", "capabilities": "Liste des capacités", "parameters": "Paramètres acceptés" }