Limites
Le service se protège, ainsi que chaque boutique, par des plafonds fixes. Les nombres ci-dessous sont lus dans la configuration avec laquelle le service s’exécute ; une limite atteinte répond 429 avec Retry-After, 413 ou 400 limit_exceeded.
Les chemins, noms de champs, codes d’erreur, noms d’en-têtes et exemples de code restent en anglais : ils font partie du contrat.
Les plafonds
La configuration de votre propre boutique fixe les limites de travail d’une commande (limits.maxParts, les tailles des pièces, les lignes par commande) ; elles sont à votre choix et apparaissent dans GET /cfg/v1/config/public. Une boutique bac à sable reçoit les valeurs plus basses du bac à sable.
Service
| Limite | Valeur | Appliquée par |
|---|---|---|
| Requêtes par adresse client, toutes routes confondues | 120 / min | cfg-limits.json service.ipPerMinute |
| Requêtes par boutique, toutes routes de la page boutique confondues | 1200 / min | cfg-limits.json service.tenantPerMinute |
| Corps de requête d’un appel de la page boutique | 1,000,000 B | CFG_MAX_BODY_BYTES |
| Corps de requête de la vérification du devis | 64,000 B | server.ts handleQuoteVerify |
| Durée de vie du jeton de devis | 7 d | CFG_QUOTE_TTL_S |
| Plans résolus simultanément + en attente dans la file | 2 + 16 | CFG_MAX_CONCURRENT_SOLVES + CFG_MAX_SOLVE_QUEUE |
| Attente maximale d’un plan du moteur max | 90 s | CFG_MAX_ENGINE_WAIT_MS |
Taille de commande
| Limite | Valeur | Appliquée par |
|---|---|---|
| Lignes de liste de découpe dans une commande | 2000 | ORDER_LIMITS.cutList |
| Lignes de panneaux entiers dans une commande | 500 | ORDER_LIMITS.fullSheets |
| Lignes de quincaillerie dans une commande | 500 | ORDER_LIMITS.hardware |
| Lignes de devis dans une commande | 5000 | ORDER_LIMITS.lines |
| Taille d’un document de commande | 16,777,216 B | ORDER_LIMITS.documentBytes |
| Pièces, lignes et tailles de pièces : fixées par la configuration de votre boutique | limits.* | tenant config |
Clés de test
| Limite | Valeur | Appliquée par |
|---|---|---|
| Durée de vie d’une clé de test | 30 d | cfg-limits.json testKeys.ttlDays |
| Requêtes par clé de test | 60 / min | cfg-limits.json testKeys.requestsPerMinute |
| Devis par boutique avec des clés de test | 200 / d | cfg-limits.json testKeys.quotesPerDay |
| Commandes par boutique avec des clés de test | 50 / d | cfg-limits.json testKeys.ordersPerDay |
Boutique bac à sable
| Limite | Valeur | Appliquée par |
|---|---|---|
| Durée de vie du bac à sable | 14 d | cfg-limits.json sandbox.lifetimeDays |
| Requêtes par boutique bac à sable | 60 / min | cfg-limits.json sandbox.requestsPerMinute |
| Aperçus en direct par boutique bac à sable | 20 / min | cfg-limits.json sandbox.previewPerMinute |
| Pièces par tâche dans un bac à sable | 100 | cfg-limits.json sandbox.maxParts |
| Commandes par bac à sable sur la fenêtre glissante | 100 / 30 d | cfg-limits.json sandbox.ordersPerWindow |
| Endpoints de webhook d’un bac à sable | 2 | cfg-limits.json sandbox.webhooksMax |
Projets enregistrés et recherche
| Limite | Valeur | Appliquée par |
|---|---|---|
| Corps d’un projet enregistré | 65,536 B | cfg-limits.json projects.maxBodyBytes |
| Projets enregistrés par boutique | 2000 | cfg-limits.json projects.perTenant |
| Taille totale des projets enregistrés d’une boutique | 50,000,000 B | cfg-limits.json projects.bytesPerTenant |
| Projets dans une liste « mes projets » | 100 | projects.ts PROJECT_LIST_LIMIT |
| Taille de page de la recherche dans le catalogue (par défaut / maximum) | 24 / 100 | catalog/search.ts SEARCH_LIMITS |
Il n’y a volontairement pas de bouton « essayer » ici : la clé secrète appartient à votre serveur, jamais à un navigateur. La boutique de démonstration montre l’intégration et la transmission de la commande de bout en bout.
Mentions légalesConditions du configurateur (EN) ·Accord de traitement des données (EN) ·Notice de confidentialité pour les acheteurs ·Licences tierces (EN)