https://gateway.streamfizz.live/api/upload/initInitie un upload de fichier média (vidéo, audio ou image). L'endpoint retourne une URL presignée qui permet d'uploader le fichier directement vers le stockage StreamFizz.
| Header | Type | Requis | Description |
|---|---|---|---|
x-api-key | string | Oui | Clé API du compte |
| Champ | Type | Requis | Description |
|---|---|---|---|
filename | string | Oui | Nom original du fichier (extension requise) |
mimeType | string | Oui | Type MIME du fichier |
size | number | Oui | Taille du fichier en octets (≤ 5 Go pour ce mode) |
{
"success": true,
"mode": "single",
"key": "{accountId}/api-uploads/media/{uuid}/video.mp4",
"uploadUrl": "https://s3.fr-par.scw.cloud/...?AWSAccessKeyId=...",
"downloadUrl": "https://storage.streamfizz.live/...?token=...",
"expiresIn": 86400
}| Champ | Type | Description |
|---|---|---|
success | boolean | true si l'init a réussi |
mode | "single" | Mode d'upload (toujours "single" ici) |
key | string | Clé S3 de destination |
uploadUrl | string | URL presignée pour le PUT direct (validité 1h) |
downloadUrl | string | URL de téléchargement presignée (validité 24h, active dès que le PUT a réussi) |
expiresIn | number | Durée de validité du downloadUrl en secondes |
| Code HTTP | Code | Description |
|---|---|---|
400 | INVALID_BODY | Corps de la requête invalide ou champ manquant (filename, mimeType) |
400 | INVALID_SIZE | size absent ou non positif |
400 | INVALID_MIME_TYPE | Type de fichier non autorisé |
401 | UNAUTHORIZED | Clé API manquante ou invalide |
413 | FILE_TOO_LARGE | Le fichier dépasse la taille maximale autorisée de 100 Go |
429 | RATE_LIMITED | Trop de requêtes |
500 | INIT_FAILED | Échec de l'initialisation de l'upload |
5 requêtes par minute par clé API (appliqué sur /init)
En cas de dépassement, une erreur 429 Too Many Requests est retournée avec un champ retryAfter indiquant le délai en secondes.