Transloadit
Tarifs
  • Téléversements de fichiers
  • Importation de fichiers
  • Traitement par lots
  • 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
  • Terraform
  • Essentiels
  • Bonnes pratiques
  • FAQ
  • Robots
  • API
  • Formats
  • Créer votre première application
  • À propos de Transloadit
  • Comparatifs
  • Projets open source
  • Témoignages
  • Carrières (English)
  • Sécurité
  • Articles
  • Actus dev (English)
  • Astuces dev
  • Presse (English)
  • Recherche (English)
  • Études de cas
  • Solutions
  • Guides
  • Glossaire
  • Juridique (English)
  • Outils
  • Aider Coursera à former des millions de personnes dans le monde
  • Support Transloadit
  • Support open source
  • Accord de niveau de service (English)
EssentielsRobotsFAQAPIFormatsBonnes pratiques
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
  • Récupérer l’historique des exécutions du Template cron alpha
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 jeton porteur

Échange les informations d’authentification d’une Auth Key contre un jeton porteur à portée définie.

POSThttps://api2.transloadit.com/token

Il s’agit du point de terminaison de jetons OAuth 2.0. Les clients sans interface graphique échangent leur Auth Key et leur Auth Secret contre un jeton porteur de courte durée avec le type d’octroi client_credentials, pris en charge directement par l’API Transloadit. Les clients MCP qui se sont connectés par URL échangent le code d’autorisation provenant de l’écran de consentement de la Console avec le type d’octroi authorization_code (PKCE S256, sans informations d’identification HTTP Basic) et effectuent la rotation du jeton de rafraîchissement obtenu avec le type d’octroi refresh_token.

Sur /token, les erreurs d’octroi OAuth pour authorization_code et refresh_token utilisent le corps standard contenant error et error_description. Les limites de débit renvoient RATE_LIMIT_REACHED (429), et les défaillances internes inattendues renvoient SERVER_500 (500). Les requêtes mal formées rejetées avant l’identification du type d’octroi peuvent recevoir une demande d’authentification HTTP Basic (401), ou TOKEN_INVALID_REQUEST si des informations d’identification Basic ont été fournies.

Les jetons obtenus avec les informations d’identification du client sont générés côté serveur à l’aide de votre Auth Key et de votre Auth Secret. Si vous exposez la création de jetons via une interface utilisateur, appelez /token depuis votre backend (jamais directement depuis le navigateur).

Les Workspaces résiliés ne peuvent pas créer de nouveaux jetons porteurs. Pour les points de terminaison dont la documentation autorise explicitement les lectures après résiliation, utilisez plutôt la procédure de lecture signée avec une Auth Key active existante. La facturation dispose de sa propre procédure de facturation signée.

Les requêtes doivent utiliser application/x-www-form-urlencoded ; le type d’octroi client_credentials nécessite également l’authentification HTTP Basic :

Dans un shell de confiance côté serveur disposant de curl et de jq, définissez TRANSLOADIT_KEY et TRANSLOADIT_SECRET avec les valeurs de votre Auth Key et de votre Auth Secret. Gardez secrets les deux informations d’identification et le jeton obtenu ; ne procédez jamais à cette configuration dans du code de navigateur.

Cet exemple demande un accès en lecture et en écriture aux Assemblies et enregistre la valeur access_token renvoyée dans TRANSLOADIT_TOKEN pour les requêtes suivantes dans le même shell. Pour un autre point de terminaison, utilisez plutôt les portées qui y sont indiquées ; l’Auth Key doit déjà les accorder. Les points de terminaison authentifiés par une Auth Key ou un jeton porteur incluent la configuration de jeton appropriée dans leurs exemples de requêtes.

if ! TOKEN_RESPONSE="$(curl --fail-with-body -sS \
  --request POST \
  --url 'https://api2.transloadit.com/token' \
  --user "${TRANSLOADIT_KEY:?Set TRANSLOADIT_KEY}:${TRANSLOADIT_SECRET:?Set TRANSLOADIT_SECRET}" \
  --header 'Content-Type: application/x-www-form-urlencoded' \
  --data-urlencode 'grant_type=client_credentials' \
  --data-urlencode 'aud=api2' \
  --data-urlencode 'scope=assemblies:read assemblies:write')"; then
  printf '%s\n' "$TOKEN_RESPONSE" >&2
  exit 1
fi
TRANSLOADIT_TOKEN="$(printf '%s' "$TOKEN_RESPONSE" |
  jq -er '.access_token | strings | select(length > 0)')" || exit 1

Authentification

L’authentification HTTP Basic avec votre Auth Key et votre secret est requise pour les valeurs suivantes de grant_type : client_credentials. Les autres valeurs prises en charge ne nécessitent pas d’informations d’identification de compte. N’envoyez pas d’en-tête Authorization pour ces requêtes ; la preuve spécifique à leur autorisation reste requise.

Champs de formulaire

Type de contenu : application/x-www-form-urlencoded

Les champs suivants peuvent être envoyés au maximum une fois : aud, client_assertion, client_assertion_type, client_id, code, code_verifier, grant_type, redirect_uri, refresh_token, resource, scope.

Schéma JSON complet

Ouvrir le JSON dans un nouvel onglet

Formulaire de demande de jeton OAuth 2.0 pour les types d’octroi par informations d’identification du client, par code d’autorisation et par jeton de rafraîchissement.

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

ChampType et description
aud
string

Valeur d’audience facultative pour client_credentials. Si elle est omise, la valeur par défaut configurée pour le déploiement est utilisée (api2, sauf configuration contraire). Les autres types d’octroi déterminent l’audience à partir de resource.

client_assertion
string

Un JWT signé avec l’une des clés publiées par le client (RFC 7523), provenant de clients dont les métadonnées autorisent private_key_jwt. Dès qu’une requête de jeton pour une autorisation en a inclus un, chaque requête ultérieure pour cette autorisation doit également en inclure un. Ses champs iss et sub ont pour valeur l’identifiant du client. Son champ aud a pour valeur une URL de point de terminaison de jetons configurée pour ce déploiement ou l’origine de cette URL (sans barre oblique finale), et ce JWT expire dans les cinq minutes. Chaque jti n’est accepté qu’une fois par client et par région tant que l’assertion reste valide. Utilisez un nouveau jti pour chaque requête.

client_assertion_type
string

Toujours urn:ietf:params:oauth:client-assertion-type:jwt-bearer lorsque client_assertion est envoyé.

client_id
string

L’identifiant du client issu de l’enregistrement dynamique ou l’URL HTTPS du document de métadonnées du client. Obligatoire pour authorization_code et refresh_token, sauf si une client_assertion identifie le client.

code
string

Le code d’autorisation à usage unique transmis à l’URI de redirection du client après consentement. Obligatoire pour authorization_code.

code_verifier
string

Le vérificateur de code PKCE dont l’empreinte SHA-256 a été envoyée dans code_challenge au début de l’autorisation. Requis pour authorization_code.

grant_type

obligatoire

"authorization_code" | "client_credentials" | "refresh_token"

Le type d’octroi OAuth 2.0 à exécuter. client_credentials échange les informations d’identification de l’Auth Key fournies via l’authentification HTTP Basic, authorization_code échange un code émis après consentement dans la Console, accompagné de son vérificateur PKCE, et refresh_token effectue la rotation d’un jeton de rafraîchissement. Les deux types d’octroi destinés aux clients publics n’envoient aucune information d’identification HTTP Basic.

redirect_uri
string

L’URI de redirection utilisé dans la requête d’autorisation. Obligatoire pour authorization_code.

refresh_token
string

Le jeton de renouvellement à remplacer. Obligatoire pour refresh_token ; le jeton présenté cesse de fonctionner dès qu’une nouvelle paire est émise.

resource
string

La ressource protégée à laquelle le jeton est destiné : le point de terminaison MCP hébergé (aud=mcp) ou l’origine de l’API elle-même (aud=api2). En cas d’omission, la ressource pour laquelle le code d’autorisation ou le jeton de rafraîchissement a été émis est utilisée ; sinon, la ressource indiquée doit lui correspondre.

scope
string

Liste facultative de portées pour client_credentials, séparées par des espaces ou des virgules. Si cette liste est omise, le jeton hérite de toutes les portées accordées à votre Auth Key. Les autres types d’octroi conservent les portées accordées lors du consentement.

Utiliser le jeton

Passez le jeton sous la forme Authorization: Bearer <access_token> dans les requêtes API. Lorsqu’une requête est authentifiée avec un jeton porteur valide, API2 considère l’exigence de Signature Authentication comme satisfaite et ignore la validation de la signature. Signature Authentication n’est exigée que pour les requêtes avec clé/secret. Les vérifications de portée continuent de s’appliquer. L’audience par défaut api2 est acceptée par les points de terminaison API2 ordinaires et est valide pendant 21 600 secondes par défaut. L’audience mcp est acceptée par le serveur MCP, qui la relaie à API2 avec des informations d’identification de service ; elle est rejetée par les points de terminaison API2 ordinaires lorsqu’elle est présentée directement, et est valide pendant 604 800 secondes par défaut. Considérez la valeur expires_in de la réponse comme faisant autorité.

Réponse

Voici un exemple de corps de réponse :

{
  "access_token": "opaque-token",
  "expires_in": 21600,
  "scope": "assemblies:read assemblies:write",
  "token_type": "Bearer"
}

Succès 2xx

Corps de la réponse JSON. application/json

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

Ouvrir le JSON dans un nouvel onglet

La réponse contient uniquement les champs répertoriés pour cet objet.

ChampType et description
access_token

obligatoire

string (longueur minimale : 1)

Le jeton à envoyer dans l’en-tête Authorization des requêtes API suivantes. Gardez-le secret.

expires_in

obligatoire

integer (minimum exclusif : 0)

Durée de validité du jeton en secondes à compter de son émission. Demandez un nouveau jeton après son expiration.

refresh_token
string (longueur minimale : 1)

Renvoyé par les types d’octroi authorization_code et refresh_token. Transmettez-le à POST /token avec grant_type=refresh_token pour obtenir une nouvelle paire ; chaque utilisation entraîne sa rotation et la réutilisation d’un jeton ayant déjà fait l’objet d’une rotation révoque toute sa lignée.

scope

obligatoire

string (longueur minimale : 1, longueur maximale : 512)

Portées accordées à ce jeton, séparées par des espaces.

Motif de validation (expression régulière)^(?:read|write|auth_keys:write|auth_keys:read|assemblies:write|assemblies:read|assembly_notifications:write|dam:read|dam:write|template_credentials:read|template_credentials:write|billing:read|queues:read|smart_cdn:sign|templates:read|templates:write|storage_grants:write)(?: (?:read|write|auth_keys:write|auth_keys:read|assemblies:write|assemblies:read|assembly_notifications:write|dam:read|dam:write|template_credentials:read|template_credentials:write|billing:read|queues:read|smart_cdn:sign|templates:read|templates:write|storage_grants:write))*$
token_type

obligatoire

string (toujours : "Bearer")

HTTP 400

Corps de la réponse JSON. application/json

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

Ouvrir le JSON dans un nouvel onglet

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

error: "GET_ACCOUNT_UNKNOWN_AUTH_KEY"

Impossible de récupérer le Workspace, cette Auth Key est inconnue.

La réponse peut contenir des champs supplémentaires.

ChampType et description
error

obligatoire

string (toujours : "GET_ACCOUNT_UNKNOWN_AUTH_KEY")
http_code
number (toujours : 400)
message
string

Explication de l’erreur destinée à être lue par un humain. Sa formulation peut varier ; utilisez le code error pour gérer un échec spécifique.

error: "TOKEN_INVALID_GRANT_TYPE"

Type d’octroi non valide.

La réponse peut contenir des champs supplémentaires.

ChampType et description
error

obligatoire

string (toujours : "TOKEN_INVALID_GRANT_TYPE")
http_code
number (toujours : 400)
message
string

Explication de l’erreur destinée à être lue par un humain. Sa formulation peut varier ; utilisez le code error pour gérer un échec spécifique.

error: "TOKEN_INVALID_REQUEST"

La demande de jeton n’est pas valide.

La réponse peut contenir des champs supplémentaires.

ChampType et description
error

obligatoire

string (toujours : "TOKEN_INVALID_REQUEST")
http_code
number (toujours : 400)
message
string

Explication de l’erreur destinée à être lue par un humain. Sa formulation peut varier ; utilisez le code error pour gérer un échec spécifique.

propriétés requises : error

La réponse peut contenir des champs supplémentaires.

ChampType et description
error

obligatoire

string

Un code d’erreur défini dans les RFC 6749, 7591 ou 8707, tel que invalid_grant.

Motif de validation (expression régulière)^(?:access_denied|invalid_client|invalid_client_metadata|invalid_grant|invalid_redirect_uri|invalid_request|invalid_scope|invalid_target|server_error|unauthorized_client|unsupported_grant_type)$
error_description
string

Une explication compréhensible par un humain qui ne nomme jamais de compte.

HTTP 401

Corps de la réponse JSON. application/json

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

Ouvrir le JSON dans un nouvel onglet

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

error: "SERVER_401"

Autorisation requise.

La réponse peut contenir des champs supplémentaires.

ChampType et description
error

obligatoire

string (toujours : "SERVER_401")
http_code
number (toujours : 401)
message
string

Explication de l’erreur destinée à être lue par un humain. Sa formulation peut varier ; utilisez le code error pour gérer un échec spécifique.

error: "TOKEN_INVALID_CREDENTIALS"

Informations d’authentification du client invalides.

La réponse peut contenir des champs supplémentaires.

ChampType et description
error

obligatoire

string (toujours : "TOKEN_INVALID_CREDENTIALS")
http_code
number (toujours : 401)
message
string

Explication de l’erreur destinée à être lue par un humain. Sa formulation peut varier ; utilisez le code error pour gérer un échec spécifique.

propriétés requises : error

La réponse peut contenir des champs supplémentaires.

ChampType et description
error

obligatoire

string

Un code d’erreur défini dans les RFC 6749, 7591 ou 8707, tel que invalid_grant.

Motif de validation (expression régulière)^(?:access_denied|invalid_client|invalid_client_metadata|invalid_grant|invalid_redirect_uri|invalid_request|invalid_scope|invalid_target|server_error|unauthorized_client|unsupported_grant_type)$
error_description
string

Une explication compréhensible par un humain qui ne nomme jamais de compte.

HTTP 403

Corps de la réponse JSON. application/json

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

Ouvrir le JSON dans un nouvel onglet

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

error: "TOKEN_INVALID_AUDIENCE"

Audience invalide.

La réponse peut contenir des champs supplémentaires.

ChampType et description
error

obligatoire

string (toujours : "TOKEN_INVALID_AUDIENCE")
http_code
number (toujours : 403)
message
string

Explication de l’erreur destinée à être lue par un humain. Sa formulation peut varier ; utilisez le code error pour gérer un échec spécifique.

error: "TOKEN_INVALID_SCOPE"

Portée invalide ou non autorisée.

La réponse peut contenir des champs supplémentaires.

ChampType et description
error

obligatoire

string (toujours : "TOKEN_INVALID_SCOPE")
http_code
number (toujours : 403)
message
string

Explication de l’erreur destinée à être lue par un humain. Sa formulation peut varier ; utilisez le code error pour gérer un échec spécifique.

HTTP 429

Corps de la réponse JSON. application/json

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

Ouvrir le JSON dans un nouvel onglet

Limite de requêtes atteinte.

La réponse peut contenir des champs supplémentaires.

ChampType et description
error

obligatoire

string (toujours : "RATE_LIMIT_REACHED")
http_code
number (toujours : 429)
message
string

Explication de l’erreur destinée à être lue par un humain. Sa formulation peut varier ; utilisez le code error pour gérer un échec spécifique.

HTTP 500

Corps de la réponse JSON. application/json

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

Ouvrir le JSON dans un nouvel onglet

Erreur inattendue.

La réponse peut contenir des champs supplémentaires.

ChampType et description
error

obligatoire

string (toujours : "SERVER_500")
http_code
number (toujours : 500)
message
string

Explication de l’erreur destinée à être lue par un humain. Sa formulation peut varier ; utilisez le code error pour gérer un échec spécifique.

Page précédente ← Téléversements avec reprisePage suivante Créer une nouvelle Auth Key →
Contacter le support⁠

TransloaditVérification de l’état…

Produit

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

Entreprise

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

Documentation

  • Premiers pas
  • Transcodage
  • FAQ
  • API
  • Guides/Astuces dev
  • Formats pris en charge

Plus

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

© 2009–2026 Transloadit-II GmbH

Confidentialité EN (English)Conditions EN (English)Mentions légales EN (English)Marques déposées EN (English)Politique DMCA EN (English)
EnglishDeutschEspañolFrançaisPortuguês (Brasil)

Transloadit®, tus® et Uppy® sont des marques déposées de Transloadit-II GmbH aux États-Unis.