Différer un appel HTTP
Faites appeler votre URL après le délai que vous choisissez, de quelques secondes à 30 jours : un rappel 24 heures avant la fin d'un essai ou une facture impayée annulée après 30 jours, sans planificateur à vous. Vous payez à l'usage, sans abonnement.
Le service garde la minuterie et émet le rappel au bon moment, sans que vous ayez à maintenir un compteur.
Un rappel qui arrive plus tard
Certaines actions gagnent à attendre : relancer un panier abandonné une heure après, vérifier l’état d’un traitement quelques minutes plus tard, envoyer un message de suivi le lendemain. Coder cette attente soi-même oblige à maintenir un processus qui compte le temps. Ce service s’en charge : vous indiquez l’URL à rappeler et le délai, il attend, puis émet l’appel.
Entre-temps, rien à surveiller de votre côté.
Délai unique, pas récurrence
Différer un appel, ce n’est pas le répéter. Ici, le rappel est unique : il part une fois, une fois le délai écoulé. Pour une action qui doit revenir à intervalle régulier, c’est la planification par cron qui convient, décrite par ailleurs.
Le délai se compte en minutes, en heures ou en jours ; vous fournissez, avec l’appel, les données que votre URL recevra au moment du rappel, comme une requête ordinaire.
Facturé au rappel
Vous ne payez que les rappels réellement émis. Les données jointes à votre appel ne sont conservées que le temps d’attendre le délai et d’émettre le rappel.
Cas d’usage
Relance de panier
Une boutique programme un rappel une heure après un panier laissé de côté, pour relancer le client.
Vérification différée
Un développeur demande un rappel dix minutes après le lancement d’un traitement, pour en contrôler l’issue.
Message de suivi
Atelier Garnier SARL déclenche un e-mail de suivi le lendemain d’une livraison, via un rappel à vingt-quatre heures.
Temporisation entre étapes
Studio Lumen SAS insère une pause d’une heure entre deux étapes d’un flux automatisé.
Questions fréquentes
Quels délais puis-je fixer ?
De quelques minutes à plusieurs jours. Vous indiquez la durée d’attente ; à son terme, le service appelle votre URL avec les données que vous avez jointes.
Mes données sont-elles gardées pendant l’attente ?
Seulement le temps du délai, via un canal chiffré, afin de pouvoir émettre le rappel. Une fois l’appel effectué, elles ne sont pas conservées à d’autres fins.
Que se passe-t-il si mon URL est indisponible au moment du rappel ?
L’échec est noté. Une nouvelle tentative peut être prévue selon votre besoin ; précisez-le à la mise en place pour définir le comportement souhaité.
Combien ça coûte ?
Vous ne réglez que les rappels réellement envoyés, par un achat direct.
Faut-il un serveur pour maintenir le délai ?
Non. Le service garde la minuterie à votre place ; vous n’avez aucun processus à laisser tourner pour compter le temps d’attente.
Outils associés
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
Un POST authentifié crée la tâche ; le résultat arrive par webhook ou par un lien signé. Cette capacité est disponible par API, pas comme outil web interactif.
Appeler depuis votre stack
curl -X POST https://api.kit.forhosting.com/dev/delay \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"webhook_url":"https://example.com/hook"}'const res = await fetch("https://api.kit.forhosting.com/dev/delay", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"webhook_url": "https://example.com/hook"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/dev/delay",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"webhook_url": "https://example.com/hook"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/dev/delay", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"webhook_url":"https://example.com/hook"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"webhook_url":"https://example.com/hook"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/dev/delay", 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
{
"webhook_url": "https://example.com/hook"
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "dev.delay",
"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. |
Notes techniques
Différer un appel HTTP consiste à demander qu’une URL soit appelée non pas tout de suite, mais après un délai que vous fixez : dans dix minutes, dans deux heures, demain.
Facturé au rappel
Le service tourne sur notre infrastructure et se facture à l’usage : $0.002 par rappel, en dollars US, sans abonnement ni compte. La mise en place se fait depuis cette page comme par API et, à terme, par d’autres canaux.
Questions techniques
En quoi est-ce différent d’un webhook planifié ?
Le délai est ponctuel : le rappel part une seule fois, après l’attente demandée. Le webhook planifié, lui, se répète selon un horaire. Ici, il s’agit d’un décalage unique, pas d’une récurrence.