Webhooks
Configurer les webhooks
Définissez notify_url dans vos Assembly Instructions, au même niveau que steps. Lorsque l’Assembly
atteint un état terminal, Transloadit envoie une requête HTTP POST à cette URL.
Tout code de statut compris entre 200 inclus et
300 exclu accuse réception de la livraison. Les redirections et les erreurs côté client ou serveur sont considérées comme des échecs. Par défaut,
Transloadit effectue 5 nouvelles tentatives en cas d’échec, avec un facteur exponentiel de 1,97.
L’accusé de réception confirme la réception, pas la réussite du traitement. Examinez
l’état ok ou le code error de la charge utile vérifiée
pour distinguer les Assemblies terminées, annulées et en échec. Un renvoi de notification
peut également transmettre un Assembly Status non terminal ; ne supposez pas que chaque livraison signifie que le traitement est terminé.
Limiter la charge utile de la notification
Par défaut, un webhook inclut l’Assembly Status complet. Définissez notification_payload sur un tableau
contenant n’importe quelle combinaison de ces filtres pris en charge :
without_params: les champs bruts de premier niveauparams,templateetmerged_paramsdes Assembly Instructions sont omis.without_result_meta_data:metaest omis de chaque fichier dansresults.without_results: l’objet de premier niveauresultsest omis.without_upload_meta_data:metaest omis de chaque fichier dansuploads.without_uploads: le tableau de premier niveauuploadsest omis.
Les renvois de notifications réutilisent les filtres fournis dans la requête initiale de création de l’Assembly. Les filtres définis uniquement
dans un Template ne sont pas conservés lors du renvoi ; un renvoi peut donc inclure des données omises de la notification
initiale. Fournissez notification_payload dans la requête initiale de création de l’Assembly lorsque les renvois doivent
utiliser les mêmes filtres.
Le schéma de charge utile ci-dessous autorise ces omissions. Le champ meta d’un fichier téléversé peut être absent même lorsque
ce fichier reste dans uploads. Les autres champs conservent leur signification dans l’Assembly Status. Acceptez les champs
supplémentaires pour assurer la compatibilité, mais ne vous appuyez pas sur les champs de diagnostic non documentés.
Vérifier la signature
Les webhooks d’Assembly utilisent le type de média application/x-www-form-urlencoded. Le
champ transloadit contient la sérialisation exacte de l’Assembly Status JSON, et le
champ signature contient son HMAC en notation hexadécimale minuscule.
Pour vérifier un webhook :
- Lisez les champs de formulaire
transloaditetsignaturesans modifier la chaîne de la charge utile. - Calculez une empreinte hexadécimale
HMAC-SHA1sur les octets exacts de la chaînetransloadit, à l’aide de l’Auth Secret de confiance sélectionné comme décrit ci-dessous. - Comparez l’empreinte calculée à
signatureen utilisant une comparaison résistante aux attaques temporelles. - Analysez
transloaditen tant que JSON uniquement après avoir confirmé que les signatures correspondent.
La notification initiale d’une Assembly utilise l’Auth Secret de l’Auth Key qui a authentifié sa
création, y compris lorsqu’elle a été créée via un Assembly Replay. Les renvois de notifications recherchent d’abord
l’Auth Key enregistrée dans l’Assembly Status sous api_auth_key_id. Si cette clé n’est pas enregistrée,
ne peut pas être retrouvée, a été supprimée ou si sa recherche échoue, le renvoi de notification utilise
à la place l’Auth Secret de l’appelant authentifié qui demande le renvoi.
Les Assembly Replays conservent la valeur historique api_auth_key_id du parent. Par exemple, si la clé A crée
une Assembly et que la clé B la réexécute, la notification initiale de la nouvelle Assembly est signée avec le
secret de B. Le renvoi de cette notification peut utiliser le secret de A, même lorsque B appelle à la fois le point de terminaison de réexécution d’Assembly
et celui de renvoi de notification, et que les deux clés restent actives. Gardez les secrets applicables du parent et de la création par réexécution à la disposition
de votre vérificateur ; ne supposez pas que toutes les livraisons concernant une même Assembly utilisent le même secret.
Sélectionnez les secrets de vérification dans une configuration de confiance côté serveur pour le Workspace et l’Assembly attendus, et non à partir de champs de la charge utile non vérifiée. Lorsque plusieurs secrets configurés sont applicables, acceptez la requête uniquement si sa signature correspond à l’un de ces secrets de confiance. Si aucun ne correspond, rejetez la requête ; ne sautez pas la vérification pour accepter un renvoi.
Contrairement aux signatures actuelles des requêtes API, le champ signature du webhook est une empreinte
sha1 sans préfixe, pour assurer la rétrocompatibilité. Considérez la charge utile comme non fiable et rejetez la requête
si l’un des deux champs est absent, si la signature est mal formée ou si la comparaison échoue.
Utilisez l’une des fonctions de vérification de nos SDK lorsqu’elle est disponible. Si vous implémentez vous-même la vérification, ne sérialisez pas à nouveau le JSON analysé avant de calculer le HMAC : les espaces et l’ordre des clés des objets font partie de la séquence d’octets signée.
import { createHmac, timingSafeEqual } from 'node:crypto'
// authSecret must come from trusted server-side configuration.
function verifyTransloaditWebhook({ authSecret, payload, signature }) {
if (typeof payload !== 'string' || typeof signature !== 'string') return false
if (!/^[0-9a-f]+$/.test(signature)) return false
const expected = createHmac('sha1', authSecret).update(payload, 'utf8').digest()
if (signature.length !== expected.length * 2) return false
const received = Buffer.from(signature, 'hex')
return received.length === expected.length && timingSafeEqual(received, expected)
}
Activer une signature plus forte
Définissez notification_signature_algo sur sha256 ou sha384 lors de la création ou de la mise à jour d’une
Auth Key. Ce paramètre est indépendant du paramètre
signature_algo de la clé, qui contrôle la signature des requêtes API. Pour les clés existantes comme pour les nouvelles, la valeur par défaut est null ;
omettre ce paramètre lors d’une mise à jour conserve sa valeur, et le définir sur null désactive l’en-tête supplémentaire.
Les clés pour lesquelles cette option est activée ajoutent un en-tête Transloadit-Signature contenant
sha256:<lowercase hex digest> ou sha384:<lowercase hex digest>. Le champ de formulaire historique signature
reste inchangé. Les deux signatures couvrent les octets UTF-8 de la chaîne JSON filtrée exacte
contenue dans le champ de formulaire décodé transloadit, avant l’encodage URL. Ne signez pas le corps HTTP encodé
et n’analysez pas le JSON pour le sérialiser à nouveau avant de le vérifier.
Les notifications initiales utilisent les paramètres de la clé chargés lors de l’authentification de l’Assembly. La modification d’une clé ne modifie pas les Assemblies déjà en cours. Les renvois explicites de notifications recherchent ensemble le secret actuel de la clé enregistrée et son algorithme de notification ; les paramètres de l’appelant sont utilisés ensemble si la recherche de la clé historique recourt à la solution de repli décrite ci-dessus. Les nouvelles tentatives automatiques conservent l’algorithme sélectionné et la charge utile sérialisée pour la livraison concernée.
Déployez un vérificateur qui prend en charge le nouvel en-tête avant de l’activer. Dès que votre intégration exige la signature plus forte, rejetez tout en-tête absent ou invalide et rejetez les algorithmes autres que celui configuré dans votre vérificateur. Ne vous rabattez jamais silencieusement sur le champ SHA-1. Lors de la migration, déployez d’abord tous les émetteurs de notifications et les gestionnaires de renvoi. Laissez aux caches des paramètres des clés le temps de se rafraîchir et aux Assemblies antérieures le temps de se terminer, puis confirmez que l’en-tête est présent dans les livraisons concernant les Assemblies créées après le changement avant de l’exiger. Dès que les récepteurs exigent l’en-tête, privilégiez le passage de l’émetteur à une version ultérieure : revenir à une version qui ne prend en charge que le format historique empêche les livraisons, sauf si les récepteurs rétablissent d’abord la compatibilité avec les notifications utilisant uniquement le format historique.
import { createHmac, timingSafeEqual } from 'node:crypto'
// expectedAlgorithm and authSecret come from trusted server-side configuration.
function verifyStrongTransloaditWebhook({ authSecret, expectedAlgorithm, payload, signature }) {
if (expectedAlgorithm !== 'sha256' && expectedAlgorithm !== 'sha384') return false
if (typeof payload !== 'string' || typeof signature !== 'string') return false
const prefix = `${expectedAlgorithm}:`
if (!signature.startsWith(prefix)) return false
const hex = signature.slice(prefix.length)
if (!/^[0-9a-f]+$/.test(hex)) return false
const expected = createHmac(expectedAlgorithm, authSecret).update(payload, 'utf8').digest()
if (hex.length !== expected.length * 2) return false
return timingSafeEqual(Buffer.from(hex, 'hex'), expected)
}
La vérification de la signature authentifie la charge utile ; elle n’empêche pas les livraisons en double. Rendez le traitement idempotent en utilisant l’identité vérifiée de l’Assembly et l’état propre à l’application.
Champs de formulaire du webhook
Schéma JSON complet
Transloadit envoie uniquement les champs répertoriés pour cet objet.
| Champ | Type et description |
|---|---|
signatureobligatoire | stringHMAC-SHA1 hexadécimal en minuscules calculé sur les octets exacts de la chaîne transloadit, sans préfixe d’algorithme. Utilisez un Auth Secret de confiance et une comparaison résistante aux attaques temporelles. Motif de validation (expression régulière)^[0-9a-f]{40}$ |
transloaditobligatoire | stringTexte JSON exact de l’Assembly Status filtré. Vérifiez la signature sur les octets exacts de cette chaîne non modifiée avant de l’analyser en tant que JSON. |
Charge utile JSON vérifiée
Schéma JSON complet
| Champ | Type et description | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
account_id | null | string | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
account_name | null | string | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
account_slug | null | string | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
api_auth_key_id | null | string | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
assemblyId | string | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
assembly_id | stringL’ID unique de cette Assembly. Vous pouvez l’enregistrer dans une base de données lorsqu’une Assembly est créée, et l’utiliser pour faire correspondre les Notifications entrantes. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
assembly_ssl_url | null | stringL’URL unique utilisée pour consulter l’état actuel de cette Assembly, mais prête à être
utilisée via SSL/HTTPS. Toutes les requêtes API envoyées à | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
assembly_url | null | stringL’URL unique utilisée pour consulter l’état actuel de cette Assembly. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
build_id | stringIdentifiant de build facultatif pour le dépannage par l’assistance. Traitez-le comme une valeur opaque ; il peut changer d’une Assembly à l’autre. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
bytes_expected | numberLe nombre d’octets que cette Assembly s’attend à recevoir par téléversement. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
bytes_received | numberLe nombre d’octets téléversés vers cette Assembly jusqu’à présent. Cette valeur est principalement utilisée par les clients pour afficher la progression du téléversement. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
bytes_usage | number | nullLe nombre total d’octets traités par cette Assembly qui sont pris en compte dans la facturation de votre utilisation.
La somme des valeurs | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
client_agent | null | stringL’agent utilisateur du client de téléversement n’est pas exposé ; ce champ obsolète vaut toujours | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
client_ip | null | stringL’adresse IP de l’auteur du téléversement n’est pas exposée ; ce champ obsolète est toujours | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
client_referer | null | stringL’URL de provenance de l’outil de téléversement n’est pas exposée ; ce champ déprécié vaut toujours | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
companion_url | null | stringL’URL du serveur Companion avec lequel cette Assembly peut communiquer. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
cron_input_file_limit | integer (minimum : 1, maximum : 1000)Nombre maximal effectif de fichiers d’entrée pour une Assembly planifiée. La récupération automatique après un plantage conserve cette limite, y compris lorsque les Instructions enregistrées sont désactivées. Les Assemblies ordinaires omettent ce champ. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
executing_jobs | Array<string>Schéma d’un élément de tableaustring | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
execution_duration | number | nullLe temps mis par Transloadit pour exécuter cette Assembly, en secondes. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
execution_start | null | string | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
expected_tus_uploads | number | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
fields | objectUn dictionnaire clé/valeur de champs de formulaire supplémentaires pour les intégrations qui ne peuvent pas utiliser l’encapsulation Schéma de la propriété supplémentairen’importe quelle valeur | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
finished_tus_uploads | number | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
has_dupe_jobs | boolean | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ignored_error_count | number | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ignored_errors | Array<object>Schéma d’un élément de tableau
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
info |
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
info. | number | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
instance | null | string | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
is_infinite | boolean | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
jobs_queue_duration | number | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
last_job_completed | null | string | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
merged_params | null | string | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
message | stringUn message lisible par un humain expliquant l’état de cette Assembly. Ce message n’est pas toujours présent. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
notify_duration | number | nullTemps écoulé pour la livraison, en secondes, y compris les nouvelles tentatives automatiques et les délais qui les séparent. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
notify_error | null | string | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
notify_response_code | number | null | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
notify_response_data | null | string | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
notify_start | null | string | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
notify_status | null | string | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
notify_url | null | string | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
num_input_files | number | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
params | null | string | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
parent_assembly_status | n’importe quelle valeur | nullN’importe lequel des schémas suivants peut s’appliquer : n’importe quelle valeurn’importe quelle valeurnull | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
parent_id | null | string | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
previousStep | stringNom du Step précédent associé à l’erreur, lorsqu’il est disponible. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
queue_duration | number | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
region | string | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
results | objectLes fichiers de résultat que Transloadit a produits jusqu’à présent. Chaque clé est le nom du Step qui a produit un fichier. Les Robots de stockage ne produisent pas de fichiers, donc leurs noms de Step sont omis. Lorsqu’une Schéma de la propriété supplémentaireArray<object>Des détails supplémentaires sur le schéma sont disponibles dans le schéma JSON complet. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
running_jobs | Array<string>Schéma d’un élément de tableaustring | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
start_date | stringLa date et l’heure auxquelles le téléversement a commencé pour cette Assembly. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
started_jobs | Array<string>Schéma d’un élément de tableaustring | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
started_tus_uploads | number | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
step | stringNom du Step associé à l’erreur, lorsqu’il est disponible. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
template | null | string | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
template_id | null | string | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
template_name | null | string | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
transloadit_client | null | string | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
tus_uploads | Array<object>Schéma d’un élément de tableau
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
tus_url | stringL’URL du serveur tus utilisé par cette Assembly pour les téléversements avec reprise. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
update_stream_url | null | stringL’URL d’un flux d’événements envoyés par le serveur, à partir duquel vous pouvez obtenir des mises à jour en temps réel de l’état de cette Assembly. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
upload_duration | numberLe temps mis par l’outil de téléversement pour téléverser les fichiers, en secondes. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
upload_meta_data_extracted | boolean | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
uploads | Array<object>Un tableau de fichiers téléversés pour cette Assembly. Pour plus d’informations, consultez la documentation sur les métadonnées. Schéma d’un élément de tableau
N’importe lequel des schémas suivants peut s’appliquer : propriétés requises : basename, ext, field, id, mime, name, size, type, url: object
Variante 2: object
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
uppyserver_url | null | string | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
usage_tags | string | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
virusname | string | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
warnings | Array<object>Schéma d’un élément de tableau
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
websocket_url | null | stringL’URL d’un serveur Websocket (utilisant Socket.IO) depuis lequel vous pouvez obtenir des mises à jour en temps réel de l’état de cette Assembly. |
N’importe lequel des schémas suivants peut s’appliquer :
ok: "ASSEMBLY_EXECUTING" | "ASSEMBLY_REPLAYING" | "ASSEMBLY_UPLOADING"
Transloadit peut envoyer des champs supplémentaires.
| Champ | Type et description |
|---|---|
error | jamaisIndique un statut d’erreur. Cette clé n’est présente que si l’Assembly a échoué. De nouveaux codes d’erreur peuvent être ajoutés. Traitez les codes non reconnus comme des échecs et conservez leurs valeurs pour permettre leur inspection par programmation. Cette valeur est interdite. |
okobligatoire | "ASSEMBLY_EXECUTING" | "ASSEMBLY_REPLAYING" | "ASSEMBLY_UPLOADING"Indique un statut de cycle de vie sans erreur, y compris les états de téléversement, d’exécution, d’abandon et d’annulation. La réussite du traitement est indiquée par |
ok: string
Transloadit peut envoyer des champs supplémentaires.
| Champ | Type et description |
|---|---|
error | jamaisIndique un statut d’erreur. Cette clé n’est présente que si l’Assembly a échoué. De nouveaux codes d’erreur peuvent être ajoutés. Traitez les codes non reconnus comme des échecs et conservez leurs valeurs pour permettre leur inspection par programmation. Cette valeur est interdite. |
okobligatoire | stringIndique un statut de cycle de vie sans erreur, y compris les états de téléversement, d’exécution, d’abandon et d’annulation. La réussite du traitement est indiquée par Valeurs autorisées (6)
|
propriétés requises : error
Transloadit peut envoyer des champs supplémentaires.
| Champ | Type et description |
|---|---|
cmd | string | Array<string | number>Détails facultatifs sur la commande de traitement pour le dépannage. Les détails de diagnostic peuvent varier ; utilisez le code N’importe lequel des schémas suivants peut s’appliquer : stringArray<string | number>Array<string | number>Schéma d’un élément de tableaustring | number |
errorobligatoire | string (longueur minimale : 1)Indique un statut d’erreur. Cette clé n’est présente que si l’Assembly a échoué. De nouveaux codes d’erreur peuvent être ajoutés. Traitez les codes non reconnus comme des échecs et conservez leurs valeurs pour permettre leur inspection par programmation. Valeurs connues (370) ; d’autres valeurs sont possibles
|
exitCode | number | nullCode de sortie facultatif d’une commande de traitement ayant échoué. Les détails de diagnostic peuvent varier ; utilisez le code |
exitSignal | null | stringSignal facultatif ayant mis fin à une commande de traitement. Les détails du diagnostic peuvent varier ; utilisez le code |
file | string |
headers | objectSchéma de la propriété supplémentairen’importe quelle valeur |
is_private_address | boolean |
name | string |
numRetries | number |
ok | null |
playwright_error_code | string |
reason | null | string | number | boolean | Array<n’importe quelle valeur> | objectDétails de diagnostic facultatifs. Ne supposez pas que cette valeur est une chaîne de caractères et ne l’affichez pas directement ; utilisez N’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 |
response_code | number | null |
retries | number |
retryable | boolean |
stderr | stringSortie de diagnostic facultative produite par une commande de traitement, destinée au dépannage. Les détails du diagnostic peuvent varier ; utilisez le code |
stdout | stringSortie standard facultative d’une commande de traitement, destinée au dépannage. Les détails de diagnostic peuvent varier ; utilisez le code |
url | string |
url_host | null | string |