Délais d'attente
Comment Piloterr gère les requêtes longues, et comment configurer le délai d'attente côté client.
La plupart des requêtes répondent en quelques secondes, mais certains points d'accès peuvent prendre plus de temps. Cette page explique notre limite côté serveur et comment éviter que votre client ne coupe la connexion avant notre réponse.
Limite côté serveur : 60 secondes
Tous les appels d'API en temps réel ont un délai d'attente strict de 60 secondes côté serveur. Les réponses typiques sont renvoyées en 2 à 3 secondes, parfois jusqu'à 30 secondes, et la limite avant interruption est de 60 secondes.
Si vous avez besoin de lancer des requêtes qui peuvent dépasser 60 secondes, passez en mode asynchrone avec is_async=true. Voir Paramètres globaux.
Pourquoi votre requête semble expirée trop tôt
Si vous observez systématiquement des délais d'attente à exactement 15s, 30s ou toute autre valeur inférieure à 60 secondes, la connexion est presque toujours coupée par votre propre infrastructure, pas par notre API. Votre runtime annule la requête HTTP avant qu'on ait le temps de répondre.
Signes courants:
- Les erreurs surviennent à la même durée exacte à chaque essai (souvent 10s, 15s, 25s, 30s).
- Notre tableau de bord indique la requête comme
200(succès) alors que votre client signale un délai d'attente. - Les requêtes plus petites ou cachées passent, mais les plus lourdes échouent toujours.
Délais à vérifier selon votre plateforme
Voici les délais HTTP / fonction par défaut des plateformes les plus courantes. Augmentez-les à au moins 60 secondes pour correspondre à notre limite côté serveur.
Vercel Serverless et Edge Functions ont un timeout par défaut de 15s sur le plan Hobby (jusqu'à 60s), et 15s sur Pro (jusqu'à 300s, configurable par fonction).
Définissez maxDuration dans votre route ou fonction :
// app/api/my-route/route.ts (Next.js App Router sur Vercel)
export const maxDuration = 60
export async function POST(req: Request) {
// ... appel à notre API
}Ou dans vercel.json :
{
"functions": {
"app/api/**/*.ts": { "maxDuration": 60 }
}
}Référence : Vercel function duration.
Toujours des délais d'attente ?
Si votre client est configuré pour au moins 60 secondes, que le mode asynchrone ne convient pas à votre cas et que vous voyez encore des délais d'attente, ouvrez un ticket de support depuis votre tableau de bord avec : le point d'accès, un request_id d'exemple, l'horodatage, et la valeur de délai observée. Nous regarderons.
Voir Paramètres globaux pour is_async et soft_fail, Codes de statut pour les codes de réponse, et Bonnes pratiques pour les stratégies de retry.