Transloadit
Tarifs
  • Téléversements de fichiers
  • Importation de fichiers
  • Traitement par lots (English)
  • Encodage vidéo
  • Encodage audio
  • Traitement d’images
  • Traitement de documents
  • Intelligence artificielle
  • Filtrage et sécurité des fichiers
  • Catalogage de médias
  • Compression de fichiers
  • Évaluation de code
  • Exportation de fichiers
  • Smart CDN
  • Voir tous les services
  • Explorer les intégrations (English)
  • Explorer les démos interactives (English)
  • Uppy
  • TransloaditKit
  • SDK Android
  • SDK Node.js
  • SDK Python
  • SDK Ruby
  • SDK Go
  • SDK Java
  • SDK PHP
  • Zapier
  • Serveur MCP
  • Transloadit CLI (English)
  • Terraform
  • Essentiels
  • Bonnes pratiques (English)
  • FAQ
  • Robots (English)
  • API
  • Formats (English)
  • Créer votre première application
  • À propos de Transloadit
  • Comparatifs (English)
  • Projets open source
  • Témoignages
  • Carrières (English)
  • Sécurité (English)
  • Articles (English)
  • Actus dev (English)
  • Astuces dev
  • Presse (English)
  • Recherche (English)
  • Études de cas (English)
  • Solutions (English)
  • Guides (English)
  • Glossaire (English)
  • Juridique (English)
  • Outils (English)
  • Aider Coursera à apporter l’éducation à des millions de personnes à travers le monde (English)
  • Support Transloadit
  • Support open source
  • Accord de niveau de service (English)
EssentielsRobotsEN (English)FAQAPIFormatsEN (English)Bonnes pratiquesEN (English)
Rubriques
  • Points de terminaison
  • Codes de réponse
  • Authentification
  • Webhooks
  • Métadonnées
  • Sécurité de l’API
  • Limitation du débit
  • Files d’attente
  • Téléversements avec reprise
Authentification
  • Créer un jeton porteur
  • Créer une nouvelle Auth Key
  • Récupérer la liste des Auth Keys
  • Récupérer les portées de l’Auth Key
  • Modifier une Auth Key
  • Supprimer une Auth Key
  • Récupérer le secret d’une Auth Key
Assemblies
  • Créer une nouvelle Assembly
  • Récupérer un Assembly Status
  • Créer une Assembly avec un ID fourni
  • Diffuser les modifications de l’Assembly en temps réel
  • Annuler une Assembly en cours d’exécution
  • Réexécuter une Assembly
  • Récupérer la liste des Assemblies
  • Réponse Assembly Status
  • Récupérer les statistiques des Assemblies
Webhooks
  • Récupérer les Assembly Notifications
  • Renvoyer une Assembly Notification
Facturation
  • Récupérer la facture d’un mois
Files d’attente
  • Récupérer les emplacements prioritaires de Jobs actuellement utilisés
  • Récupérer les statistiques des emplacements prioritaires pour les Jobs
Téléversements avec reprise
  • Découvrir les capacités de tus
  • Créer un téléversement tus
  • Récupérer le décalage d’un téléversement tus
  • Téléverser les octets d’un fichier tus
  • Mettre fin à un téléversement tus
  • Télécharger un téléversement tus
Informations d’identification de Template
  • Créer un nouvel ensemble d’informations d’identification de Template
  • Récupérer un ensemble d’informations d’identification de Template
  • Modifier un ensemble d’informations d’identification de Template
  • Supprimer un ensemble d’informations d’identification de Template
  • Récupérer la liste des informations d’identification de Template
  • Récupérer les types d’informations d’identification de Template
Templates
  • Créer un nouveau Template
  • Récupérer un Template
  • Modifier un Template
  • Supprimer un Template
  • Récupérer la liste des Templates
Gestion des ressources numériques
  • Déplacer ou renommer une ressource DAM alpha
  • Supprimer une ressource DAM alpha
  • Déplacer des ressources DAM en masse alpha
  • Supprimer des ressources DAM en masse alpha
  • Déplacer un fichier ou un dossier de stockage alpha
  • Récupérer une ressource de stockage
  • Lister les ressources de stockage

Créer un téléversement tus

Crée une ressource de téléversement avec reprise à partir de métadonnées d’Assembly validées.

POST{TUS_URL}
Note

Utilisez l’URL de capacité tus_url issue de la réponse validée de l’Assembly comme destination de la requête. Elle n’utilise pas les informations d’authentification implicitement disponibles associées à l’hôte API2.

Pour un téléversement normal de taille fixe, commencez par créer une Assembly avec num_expected_upload_files défini sur le nombre de fichiers. Copiez ses valeurs assembly_ssl_url et tus_url dans l’exemple ci-dessous. Ne remplacez pas le tus_url renvoyé par le nom d’hôte général de l’API.

Cet exemple réserve quatre octets, puis téléverse le texte file. Pour un fichier réel, utilisez sa taille en octets et envoyez ses octets dans la requête PATCH.

assembly_ssl_url='<assembly_ssl_url from the creation response>'
tus_url='<tus_url from the creation response>'
assembly_metadata=$(printf %s "$assembly_ssl_url" | base64 | tr -d "\n")

curl --fail-with-body -sS --include --request POST \
  --url "$tus_url" \
  --header 'tus-resumable: 1.0.0' \
  --header 'upload-length: 4' \
  --header "upload-metadata: assembly_url $assembly_metadata,filename ZmlsZS50eHQ=,fieldname ZmlsZQ=="

Une réponse de succès 201 renvoie l’URL de téléversement dans son en-tête location. Copiez cette URL ci-dessous. Conservez-la pour qu’un transfert interrompu puisse reprendre au décalage indiqué par le serveur.

upload_url='<Location response header>'
curl --fail-with-body -sS --request PATCH \
  --url "$upload_url" \
  --header 'tus-resumable: 1.0.0' \
  --header 'upload-offset: 0' \
  --header 'content-type: application/offset+octet-stream' \
  --data-binary 'file'

Consultez le guide des téléversements avec reprise pour la reprise et la finalisation. Les longueurs différées, la concaténation et la syntaxe exacte des en-têtes sont décrites ci-dessous.

Pour les téléversements parallèles, créez des ressources partielles, téléversez leurs octets, puis créez une ressource finale qui les concatène. Seul le fichier final devient une entrée d’Assembly et est traité par votre Template. Définissez num_expected_upload_files sur le nombre de fichiers finaux, et non sur le nombre de ressources partielles. Incluez les métadonnées assembly_url, filename et fieldname dans chaque requête de création de ressource partielle ou finale. Avec tus-js-client, fournissez également ces champs dans metadataForPartialUploads lorsque vous utilisez parallelUploads.

N’incluez pas Upload-Concat pour un téléversement normal. Définissez-le sur partial dans chaque requête de création de ressource partielle. Une fois tous les téléversements partiels terminés, créez la ressource finale avec :

Upload-Concat: final;<PARTIAL_UPLOAD_URL_1> <PARTIAL_UPLOAD_URL_2>

Remplacez les espaces réservés par les URL Location complètes renvoyées pour les téléversements partiels. Conservez le point-virgule immédiatement après final ; séparez les URL par des espaces. Leur ordre détermine l’ordre des octets dans le fichier final.

Authentification

Envoyez assembly_url dans l’en-tête Upload-Metadata avec la valeur de assembly_ssl_url encodée en Base64, provenant de la même réponse validée de l’Assembly.

En-têtes de requête

Schéma JSON complet

Ouvrir le JSON dans un nouvel onglet

En-têtes normalisés en minuscules pour la création de téléversements tus à longueur fixe, à longueur différée, partiels ou finaux.

ChampType et description
tus-resumable

obligatoire

string (toujours : "1.0.0")

La version tus négociée.

upload-metadata

obligatoire

string

Clés de métadonnées ASCII séparées par des virgules, avec des valeurs facultatives en Base64 standard. Les téléversements Transloadit réussis incluent filename et fieldname ; les métadonnées d’authentification sont composées par le transport.

Motif de validation (expression régulière)^[\x21-\x2b\x2d-\x7e]+(?: (?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?)?(?:,[\x21-\x2b\x2d-\x7e]+(?: (?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?)?)*$

N’importe lequel des schémas suivants peut s’appliquer :

propriétés requises : upload-length

Les champs autres que ceux répertoriés pour cet objet sont acceptés.

ChampType et description
content-type
string (toujours : "application/offset+octet-stream")
upload-concat
string (toujours : "partial")
upload-defer-length
jamais

Cette valeur est interdite.

upload-length

obligatoire

string

Un nombre d’octets canonique et non signé en base 10, compris dans la plage des entiers signés sur 64 bits, sans zéros de remplissage ni signe plus.

Motif de validation (expression régulière)^(?:0|[1-9][0-9]{0,17}|[1-8][0-9]{18}|9[0-1][0-9]{17}|92[0-1][0-9]{16}|922[0-2][0-9]{15}|9223[0-2][0-9]{14}|92233[0-6][0-9]{13}|922337[0-1][0-9]{12}|92233720[0-2][0-9]{10}|922337203[0-5][0-9]{9}|9223372036[0-7][0-9]{8}|92233720368[0-4][0-9]{7}|922337203685[0-3][0-9]{6}|9223372036854[0-6][0-9]{5}|92233720368547[0-6][0-9]{4}|922337203685477[0-4][0-9]{3}|9223372036854775[0-7][0-9]{2}|922337203685477580[0-6]|9223372036854775807)$
upload-defer-length: "1"

Les champs autres que ceux répertoriés pour cet objet sont acceptés.

ChampType et description
content-type
string (toujours : "application/offset+octet-stream")
upload-concat
string (toujours : "partial")
upload-defer-length

obligatoire

string (toujours : "1")
upload-length
jamais

Cette valeur est interdite.

propriétés requises : upload-concat

Les champs autres que ceux répertoriés pour cet objet sont acceptés.

ChampType et description
content-type
jamais

Cette valeur est interdite.

upload-concat

obligatoire

string (longueur maximale : 8192)
Motif de validation (expression régulière)^final;(?:https?:\/\/[^/\x09-\x0D\x20\xA0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u2028\u2029\u202f\u205f\u3000\ufeff]+)?\/resumable\/files\/[^/\x09-\x0D\x20\xA0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u2028\u2029\u202f\u205f\u3000\ufeff]+(?:\/[^/\x09-\x0D\x20\xA0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u2028\u2029\u202f\u205f\u3000\ufeff]+)*(?: (?:https?:\/\/[^/\x09-\x0D\x20\xA0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u2028\u2029\u202f\u205f\u3000\ufeff]+)?\/resumable\/files\/[^/\x09-\x0D\x20\xA0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u2028\u2029\u202f\u205f\u3000\ufeff]+(?:\/[^/\x09-\x0D\x20\xA0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u2028\u2029\u202f\u205f\u3000\ufeff]+)*)*$
upload-defer-length
jamais

Cette valeur est interdite.

upload-length
jamais

Cette valeur est interdite.

Corps de la requête

Corps de requête binaire. application/offset+octet-stream Le corps est facultatif.

Réponse

HTTP 201

Aucun corps de réponse.

En-têtes de réponse
Schéma JSON complet

Ouvrir le JSON dans un nouvel onglet

Les champs autres que ceux répertoriés pour cet objet sont acceptés.

ChampType et description
location

obligatoire

string (longueur minimale : 1)

L’URL de la nouvelle ressource de téléversement. Les clients doivent la valider en tant que capacité renvoyée.

tus-resumable

obligatoire

string (toujours : "1.0.0")
upload-offset
string

Un nombre d’octets canonique et non signé en base 10, compris dans la plage des entiers signés sur 64 bits, sans zéros de remplissage ni signe plus.

Motif de validation (expression régulière)^(?:0|[1-9][0-9]{0,17}|[1-8][0-9]{18}|9[0-1][0-9]{17}|92[0-1][0-9]{16}|922[0-2][0-9]{15}|9223[0-2][0-9]{14}|92233[0-6][0-9]{13}|922337[0-1][0-9]{12}|92233720[0-2][0-9]{10}|922337203[0-5][0-9]{9}|9223372036[0-7][0-9]{8}|92233720368[0-4][0-9]{7}|922337203685[0-3][0-9]{6}|9223372036854[0-6][0-9]{5}|92233720368547[0-6][0-9]{4}|922337203685477[0-4][0-9]{3}|9223372036854775[0-7][0-9]{2}|922337203685477580[0-6]|9223372036854775807)$
x-content-type-options

obligatoire

string (toujours : "nosniff")

Réponse d’erreur

Corps de la réponse au format texte. text/plain; charset=utf-8

Schéma du corps de la réponse
Schéma JSON complet

Ouvrir le JSON dans un nouvel onglet

string

N’importe lequel des schémas suivants peut s’appliquer :

Variante 1: string
string
Motif de validation (expression régulière)^ERR_[A-Z0-9_]+: [^\r\n]*\n$
Variante 2: string
string

Mise en forme d’une erreur de hook en texte brut text/plain avec une charge utile reproduite à l’identique ; structure de type JSON, mais pas nécessairement du JSON valide.

Motif de validation (expression régulière)^\{"error":"(?:[\x09-\x0D\x20\xA0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u2028\u2029\u202f\u205f\u3000\ufeff]|[^\x09-\x0D\x20\xA0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u2028\u2029\u202f\u205f\u3000\ufeff])*"\}$
En-têtes de réponse
Schéma JSON complet

Ouvrir le JSON dans un nouvel onglet

Les champs autres que ceux répertoriés pour cet objet sont acceptés.

ChampType et description
content-type

obligatoire

string (toujours : "text/plain; charset=utf-8")
tus-resumable

obligatoire

string (toujours : "1.0.0")
x-content-type-options

obligatoire

string (toujours : "nosniff")
Page précédente ← Découvrir les capacités de tusPage suivante Récupérer le décalage d’un téléversement tus →
Contacter le support⁠

TransloaditVérification de l’état…

Produit

  • Services
  • Tarifs
  • Démos EN (English)
  • Outils EN (English)
  • Sécurité EN (English)
  • Support

Entreprise

  • À propos de Transloadit/Presse EN (English)
  • Blog EN (English)/Carrières EN (English)
  • Comparatifs EN (English)/Matrice de conformité EN (English)
  • Recherche EN (English)
  • Projets open source
  • Solutions EN (English)
  • Pionniers du web EN (English)

Documentation

  • Premiers pas
  • Transcodage EN (English)
  • FAQ
  • API
  • Guides EN (English)/Astuces dev
  • Formats pris en charge EN (English)

Plus

  • État de la plateforme⁠
  • Forum de la communauté⁠
  • StackOverflow⁠
  • Uppy
  • tus⁠

© 2009–2026 Transloadit-II GmbH

Confidentialité EN (English)Conditions EN (English)Mentions légales EN (English)
EnglishDeutschEspañolFrançaisPortuguês (Brasil)