Modifier un ensemble d’informations d’identification de Template
Met à jour un ensemble d’informations d’identification de Template à l’aide de son ID stable.
https://api2.transloadit.com/ template_credentials/ {templateCredentialId}Met à jour l’ensemble d’informations d’identification de Template représenté par TEMPLATE_CREDENTIAL_ID (son ID stable)
en lui attribuant un nouveau nom et, éventuellement, en mettant à jour son contenu. Renvoyez son type existant sans le modifier ;
changer de service nécessite de créer un autre ensemble d’informations d’identification de Template.
Cet exemple renomme un ensemble existant d’informations d’identification S3 sans modifier son contenu. Définissez
TEMPLATE_CREDENTIAL_ID sur l’ID de cet ensemble. Pour un autre service, utilisez son type
existant à la place de s3.
Les URL existantes basées sur le nom restent prises en charge pour assurer la compatibilité. Utilisez l’ID stable pour les nouvelles intégrations afin que les changements de nom ou les noms ambigus ne modifient pas l’ensemble d’informations d’identification ciblé.
Lors de la mise à jour de content :
- Omettez
contentou envoyeznullpour conserver tout le contenu existant. Une chaîne vide n’est pas du JSON valide, ni une instruction demandant d’effacer le contenu. - Un objet fourni est validé avant d’être fusionné avec le contenu enregistré. Incluez tous les
champs marqués
requiredOnUpdatedans le type d’informations d’identification. Les autres champs omis conservent leurs valeurs enregistrées. - Pour un champ configuré nommé
secret, l’omission, une chaîne vide ounullconserve le secret enregistré ; une valeur non vide le remplace. Cette exception ne s’applique pas aux autres champs tels quepasswordoukey_file_contents, dont les valeurs fournies remplacent les valeurs enregistrées après validation.
Exemple de requête
Définissez TEMPLATE_CREDENTIAL_ID sur la valeur de votre ressource sans lui appliquer d’encodage pour cent.
Exécutez cette requête dans un shell côté serveur avec curl et un jeton porteur approprié dans TRANSLOADIT_TOKEN. Si vous avez besoin d’un jeton, développez la section de configuration ci-dessous.
Besoin d’un jeton porteur ?
Dans un shell de confiance côté serveur disposant de curl et de jq, définissez TRANSLOADIT_KEY et TRANSLOADIT_SECRET sur votre Auth Key et votre Auth Secret. Gardez les deux informations d’identification et le jeton obtenu secrets ; n’exécutez jamais cette configuration dans du code de navigateur.
Créez d’abord un jeton avec les portées requises par ce point de terminaison. Votre Auth Key doit déjà accorder ces portées.
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=template_credentials: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
Gardez ce shell ouvert et exécutez la requête ci-dessous. Réutilisez le jeton tant qu’il reste valide.
curl --fail-with-body -sS --request PUT \
--url "https://api2.transloadit.com/template_credentials/${TEMPLATE_CREDENTIAL_ID:?Set TEMPLATE_CREDENTIAL_ID}" \
--header "Authorization: Bearer ${TRANSLOADIT_TOKEN:?Set TRANSLOADIT_TOKEN}" \
--data-urlencode 'params={"name":"s3-renamed","type":"s3"}'
Authentification
Ce point de terminaison accepte des params signés ou un jeton porteur. Consultez la section Authentification pour les instructions de configuration.
Portée requise pour l’Auth Key ou le jeton porteur : template_credentials:write.
Les requêtes signées nécessitent à la fois une signature et un horodatage params.auth.expires situé dans le futur. Les jetons porteurs ne nécessitent ni l’un ni l’autre.
Paramètres de chemin
templateCredentialId(segment de chemin), obligatoire. motif :^[0-9a-f]{32}$, longueur minimale : 32, longueur maximale : 32
Champs de formulaire
Type de contenu : application/x-www-form-urlencoded
params(Chaîne JSON), obligatoire. Un objet encodé en JSON dont les clés prises en charge sont répertoriées ci-dessous.signature(chaîne de caractères). Obligatoire pour les requêtes signées. Omettez ce champ lorsque vous utilisez un jeton porteur.
Clés prises en charge dans le champ params
Les champs d’authentification de cette liste s’appliquent aux requêtes signées. Avec un jeton porteur, vous pouvez omettre params.auth et le champ distinct signature. Comparez les paramètres de requête spécifiques à l’authentification ci-dessous.
Schéma JSON complet
params: Seuls les champs répertoriés pour cet objet sont acceptés.
| Champ | Type et description |
|---|---|
params.obligatoire pour les requêtes signées ; facultatif avec un jeton porteur | Contient la clé d’API Transloadit et les métadonnées d’authentification par signature d’une requête portant sur les informations d’identification de Template.
|
params.obligatoire | stringHorodatage d’expiration au format ISO 8601 situé dans le futur. Obligatoire lorsqu’une requête est signée ou nécessite Signature Authentication ; les requêtes authentifiées par jeton porteur peuvent l’omettre. |
params.obligatoire | stringClé API Transloadit utilisée pour authentifier les requêtes |
params. | object | string | nullOmettez ce champ ou envoyez N’importe lequel des schémas suivants peut s’appliquer : objectobjectSchéma de la propriété supplémentairen’importe quelle valeurstringnull |
params.obligatoire | stringNom de l’ensemble d’informations d’identification de Template. Doit comporter entre 3 et 255 caractères et ne contenir que des lettres, des chiffres, des tirets, des traits de soulignement et des points. Motif de validation (expression régulière)^[A-Za-z\u212a0-9._-]{3,255}$ |
params. | string | integerValeur unique et aléatoire incluse dans les paramètres de la requête signée pour rendre chaque signature unique et empêcher la réutilisation accidentelle d’une signature. |
params.obligatoire | stringLe service auquel appartiennent ces informations d’identification. Lors d’une mise à jour, renvoyez le type existant sans le modifier. Pour utiliser un autre service, créez un autre ensemble d’informations d’identification de Template. Valeurs autorisées (22)
|
Paramètres de requête par méthode d’authentification
Avec des paramètres signés
Incluez votre Auth Key dans params.auth.key. Lors de la signature de la requête, incluez un horodatage futur dans params.auth.expires et envoyez la signature dans le champ distinct signature. Les définitions des champs ci-dessous utilisent des chemins à l’intérieur de params.
Schéma JSON complet
params: Seuls les champs répertoriés pour cet objet sont acceptés.
Utilise les définitions des champs ci-dessus : params.auth, params.content, params.name, params.nonce, params.type
Avec un jeton porteur
Envoyez le jeton porteur dans l’en-tête Authorization. Vous pouvez omettre params.auth et le champ distinct signature. Les autres paramètres obligatoires restent requis. Les définitions des champs ci-dessous utilisent des chemins à l’intérieur de params.
Schéma JSON complet
params: Seuls les champs répertoriés pour cet objet sont acceptés.
Utilise les définitions des champs ci-dessus : params.content, params.name, params.nonce, params.type
| Champ | Type et description |
|---|---|
params. | Contient la clé d’API Transloadit et les métadonnées d’authentification par signature d’une requête portant sur les informations d’identification de Template.
|
params. | stringHorodatage d’expiration au format ISO 8601 situé dans le futur. Obligatoire lorsqu’une requête est signée ou nécessite Signature Authentication ; les requêtes authentifiées par jeton porteur peuvent l’omettre. |
params. | stringClé API Transloadit utilisée pour authentifier les requêtes |
Réponse
Voici un exemple de corps de réponse :
{
"credential": {
"account_id": "72a70fba93ce41cba617cfd7c2a44b1a",
"content": {
"bucket": "your-bucket",
"bucket_region": "us-east-1",
"key": "YOUR_S3_KEY",
"secret": "YOUR_S3_SECRET"
},
"created": "2026-09-12T10:00:00.000Z",
"deleted": null,
"id": "ca7644b763c848e6af4f4ccf3eaea622",
"modified": "2026-09-12T10:05:00.000Z",
"name": "s3-renamed",
"stringified": "{\"key\":\"YOUR_S3_KEY\",\"secret\":\"YOUR_S3_SECRET\",\"bucket\":\"your-bucket\",\"bucket_region\":\"us-east-1\"}",
"type": "s3"
},
"message": "Your Template Credentials were successfully updated.",
"ok": "TEMPLATE_CREDENTIALS_UPDATED"
}Succès 2xx
Corps de la réponse JSON. application/json text/plain; charset=utf-8
Schéma du corps de la réponse
Schéma JSON complet
La réponse peut contenir des champs supplémentaires.
| Champ | Type et description |
|---|---|
credentialobligatoire |
|
credential.obligatoire | string |
credential.obligatoire | object | Array<n’importe quelle valeur> | string | number | boolean | nullDes détails supplémentaires sur le schéma sont disponibles dans le schéma JSON complet. |
credential.obligatoire | number | string | nullN’importe lequel des schémas suivants peut s’appliquer : number | stringnumber | stringnull |
credential.obligatoire | number | string | nullN’importe lequel des schémas suivants peut s’appliquer : number | stringnumber | stringnull |
credential.obligatoire | string |
credential.obligatoire | number | string | nullN’importe lequel des schémas suivants peut s’appliquer : number | stringnumber | stringnull |
credential.obligatoire | string |
credential.obligatoire | string |
credential.obligatoire | string |
messageobligatoire | string (longueur minimale : 1) |
okobligatoire | string (toujours : "TEMPLATE_CREDENTIALS_UPDATED") |
Réponse d’erreur
Corps de la réponse JSON. application/json text/plain; charset=utf-8
Schéma du corps de la réponse
Schéma JSON complet
La réponse peut contenir des champs supplémentaires.
| Champ | Type et description |
|---|---|
assembly_id | string |
error | string (longueur minimale : 1) |
http_code | number | string
|
message | stringExplication de l’erreur destinée à être lue par un humain. Sa formulation peut varier ; utilisez le code |
reason | null | string | number | boolean | Array<n’importe quelle valeur> | objectN’importe lequel des schémas suivants peut s’appliquer : nullstringnumberbooleanArray<n’importe quelle valeur>Array<n’importe quelle valeur>Schéma d’un élément de tableaun’importe quelle valeurobjectobjectSchéma de la propriété supplémentairen’importe quelle valeur |
HTTP 400
Corps de la réponse JSON. application/json text/plain; charset=utf-8
Schéma du corps de la réponse
Schéma JSON complet
Erreurs nommées et format général des erreurs
error: "TEMPLATE_CREDENTIALS_NOT_UPDATED"
Vos informations d’identification de Template n’ont pas pu être mises à jour.
La réponse peut contenir des champs supplémentaires.