Traitement par lots
Cette capacité applique une même opération à une liste entière d’éléments : convertir cent images, résumer cinquante textes, vérifier mille adresses. Vous fournissez la liste et l’opération à répéter ; le KIT la passe sur chaque élément et regroupe les résultats. Elle sert quand le travail n’est pas compliqué mais nombreux.
La même opération, sur toute une liste
Répéter cent fois la même action à la main use la patience et multiplie les fautes d’inattention. Le traitement par lots prend en charge cette répétition : vous choisissez l’opération une fois, vous donnez la liste, et le KIT l’applique à chaque élément sans que vous ayez à recommencer. Que la liste compte dix entrées ou mille, le principe est le même. Vous décrivez le geste ; c’est la machine qui le répète, à l’identique, du premier au dernier élément.
Un résultat par élément, un bilan d’ensemble
Chaque élément de la liste produit son propre résultat, rattaché à son entrée d’origine, si bien que vous savez toujours quelle sortie correspond à quelle donnée. À la fin, un bilan récapitule ce qui a réussi et ce qui a échoué : un élément mal formé n’interrompt pas le reste du lot, il est simplement signalé. Vous récupérez ainsi l’essentiel du travail même si quelques entrées posent problème, et vous savez exactement lesquelles reprendre plutôt que de tout relancer.
Lancer et combiner
Vous préparez le lot depuis cette page ou via l’API, en indiquant la liste et l’opération à répéter. Le traitement par lots se combine avec l’exécution en parallèle pour aller plus vite, avec les tâches programmées pour tourner régulièrement, et avec une notification pour être prévenu quand le lot est terminé. Les applications iOS et Android, l’e-mail et Telegram font partie des canaux du KIT en cours d’ouverture, utiles pour recevoir le bilan de fin de lot.
Cas d’usage
Convertir une bibliothèque de photos
Studio Lumen SAS convertit d’un seul lot les centaines d’images d’un site dans un format plus léger, au lieu de les traiter une par une.
Vérifier une liste d’adresses e-mail
Atelier Garnier SARL passe l’ensemble de son fichier clients au contrôle de validité, chaque adresse recevant son verdict et les erreurs étant listées à part.
Renommer et normaliser des données
Menuiserie Rousseau & Fils applique la même mise en forme à toute une liste de références produits, obtenue propre et homogène en une opération.
Questions fréquentes
Qu’arrive-t-il si un élément de la liste est invalide ?
Il est signalé dans le bilan, mais il n’interrompt pas le lot : les autres éléments sont traités normalement. Vous récupérez tous les résultats valides et la liste précise des entrées à corriger, sans avoir à tout relancer.
Combien d’éléments un lot peut-il contenir ?
La liste s’adapte à votre besoin, de quelques éléments à un grand nombre. Pour un volume important, associer le lot à l’exécution en parallèle accélère nettement le traitement en menant plusieurs éléments de front.
Comment le prix d’un lot est-il calculé ?
Le lancement du lot coûte $0.002, en dollars US ; à cela s’ajoute le prix de l’opération appliquée à chaque élément, selon le tarif de la capacité utilisée. Vous multipliez donc ce tarif par le nombre d’éléments pour estimer le total d’avance.
Puis-je être prévenu quand le lot est terminé ?
Oui. En reliant le traitement par lots à une notification — e-mail, message vers un salon — vous recevez le bilan de fin de lot sans avoir à surveiller son avancement à l’écran.
Les fichiers du lot passent-ils par vos serveurs ?
Oui : le traitement par lots s’exécute côté serveur, chaque élément y étant traité tour à tour ou de front. Les données servent à produire les résultats demandés, sans autre usage. N’incluez dans le lot que ce qui est nécessaire, conformément au RGPD.
Puis-je relancer seulement les éléments en échec ?
Oui. Le bilan identifie précisément les entrées qui ont échoué ; vous pouvez constituer un nouveau lot avec elles seules après correction, plutôt que de retraiter l’ensemble de la liste.
Pour les développeurs — accès API
Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.
Endpoint
Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.
Appeler depuis votre stack
curl -X POST https://api.kit.forhosting.com/flow/batch \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"items":["valor-1","valor-2"]}'const res = await fetch("https://api.kit.forhosting.com/flow/batch", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"items": [
"valor-1",
"valor-2"
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/flow/batch",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"items": [
"valor-1",
"valor-2"
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/flow/batch", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"items":["valor-1","valor-2"]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"items":["valor-1","valor-2"]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/flow/batch", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemple de requête
{
"items": [
"valor-1",
"valor-2"
]
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "flow.batch",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.
Tarifs
Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.
Erreurs
| HTTP | Code | Signification |
|---|---|---|
401 | unauthorized | Clé API absente ou invalide : vérifiez l’en-tête Authorization. |
402 | insufficient_balance | Solde insuffisant : rechargez votre compte pour lancer cette tâche. |
404 | unknown_type | Type de tâche inconnu : vérifiez le champ type de votre requête. |
429 | rate_limited | Trop de requêtes : ralentissez la cadence, puis réessayez. |