Limites de débit

Deux familles de limites - ce que le plan autorise et à quelle vitesse on peut appeler un endpoint - avec les chiffres servis par l'API qui les applique.

cmssy applique deux types de limites, et elles répondent à des questions différentes. Un quota de plan dit combien de produit votre organisation a acheté : pages, stockage, requêtes delivery par mois. Un garde-fou dit à quelle vitesse n'importe qui peut appeler un endpoint, quel que soit le plan. Une requête peut tenir largement dans votre quota et être quand même refusée par un garde-fou, et c'est lui qui répond 429.

Ce que signifie un 429

Chaque garde-fou refuse de la même façon : HTTP 429 avec un en-tête Retry-After qui porte le nombre de secondes avant la réouverture de la fenêtre. Attendez ce délai, puis réessayez.

La fenêtre est fixe, ce n'est pas un seau qui se vide pendant que vous frappez. Un client qui traite 429 comme un 500 et réessaie aussitôt reste refusé jusqu'à la fin de la fenêtre, et y brûle sa propre capacité. Lisez l'en-tête.

Le delivery est budgété par espace

L'API delivery est celle que vous appelez depuis votre propre serveur : son budget est donc par espace de travail, pas par appelant. Chaque visiteur de votre site est rendu depuis une poignée de vos IP régionales, et un crawler qui réchauffe un cache froid épuiserait un budget par appelant en quelques secondes. La seconde ligne delivery est ce filet anti-abus plus large, compté par adresse - l'adresse qui nous atteint, quel que soit le jeton - et non le budget sur lequel tourne votre site.

Un site rendu sur son propre serveur peut nous dire pour quel visiteur est une requête : envoyez l'adresse du visiteur dans x-cmssy-client-ip avec un jeton API limité à l'espace de travail dans x-cmssy-api-token, et chaque budget par adresse - delivery, panier, connexion des membres, envois de formulaires - est compté par visiteur et non par serveur. La paire n'est honorée que si le jeton appartient à cet espace de travail et que son propriétaire y a toujours accès ; gardez-le côté serveur, jamais dans un navigateur. Le jeton est vérifié une fois par minute et par serveur, et cette vérification coûte à votre serveur un slot de son propre budget delivery. Tant que la paire est honorée, Retry-After et les en-têtes X-RateLimit-* décrivent le seau du visiteur, et X-RateLimit-Scope nomme la portée qui a répondu : workspace ou caller.

Chaque lecture compte, mise en cache ou non. Un CDN devant votre site est précisément ce qui vous maintient dans le budget, parce qu'il coupe les lectures qui nous parviennent - mais une lecture qui nous parvient est comptée, que vous mettiez la réponse en cache ou non.

La profondeur n'est pas un débit

Deux garde-fous se mesurent en niveaux, pas en requêtes : une requête imbriquée plus profondément que la limite est rejetée immédiatement, et attendre n'y change rien. Aplatissez la requête.

Les quotas mensuels sont mutualisés

Les quotas de plan appartiennent à l'organisation, pas à un espace de travail. Les requêtes delivery et la bande passante sont mutualisées sur tous les espaces de l'organisation, et comptées sur le mois calendaire.

Lire les tableaux

Les deux tableaux ci-dessous sont servis par l'API qui applique ces chiffres : cette page ne peut donc pas diverger du produit. Les lignes marquées comme ajustables sont celles qu'un opérateur peut déplacer pour un déploiement ; tout autre chiffre est le même pour tout le monde.

Ce que chaque plan autorise

Mutualisé sur tous les espaces de l'organisation et compté sur le mois calendaire. Lu depuis la table que la facturation applique.

HobbyProEnterprise
Requêtes delivery / mois100K2M20M
Bande passante / mois50 GB200 GB1000 GB
Pages25IllimitéIllimité
Stockage1 GB30 GB250 GB
Plus gros envoi50 MB500 MB2 GB
Espaces de travail1550
Membres1550

Garde-fous

Lus depuis le limiteur qui les applique, famille par famille.

API delivery

L'API publique que votre serveur appelle. Budget par espace de travail ; la ligne par appelant est un filet anti-abus plus large. Chaque lecture compte, mise en cache ou non : un CDN devant votre site coupe les lectures qui nous parviennent, il n'étire pas le budget.

EndpointCompté parLimite
Lectures deliveryespace de travail1 200 requêtes / minuteajustable
Lectures deliveryappelant (jeton + IP)600 requêtes / minuteajustable
Coût de requête deliveryrequête20 000 unités de coût / requêteajustable
Coût par lecture comptéerequête500 unités de coût / requête
Modèles par espace de travailespace de travail25 modèles / liste
Champs par modèlerequête30 champs / liste
Régions de mise en page par pagerequête20 régions / liste
Blocs par région de mise en pagerequête20 blocs / liste
Options par variante de produitrequête20 choix / liste
Paliers de prix par produitrequête10 paliers / liste
Profondeur de requête deliveryrequête10 niveaux de profondeur / requête

Panier, paiement et commandes

EndpointCompté parLimite
order-field-definitionsrequête30 champs / liste
Modifications du panieradresse IP30 écritures / minute
Paiementadresse IP10 écritures / minute
Commandes publiquesadresse IP20 écritures / minute
Modifications de commandeadresse IP30 écritures / minute

Envois de formulaires

EndpointCompté parLimite
Champs par formulairerequête50 champs / liste
Choix par champ de formulairerequête500 choix / liste
Champs par envoirequête100 champs / requête
Taille d'une valeur envoyéerequête10 000 octets / requête
Taille d'un envoirequête100 000 octets / requête
Envois de formulaireadresse IP5 envois / minute
Requêtes d'envoi de formulaireadresse IP10 requêtes / minute

Médias

EndpointCompté parLimite
Autorisations d'envoicompte30 requêtes / minute
Signatures d'URL médiacompte120 URL signées / minute
Signatures d'URL médiaadresse IP300 URL signées / minute

IA et assistant

EndpointCompté parLimite
Tests de connexion IAadresse IP10 requêtes / minute
Listes de modèles IAadresse IP20 requêtes / minute
mcp-authadresse IP300 tentatives / 15 minutes
mcp-connectioncompte120 requêtes / minute
Chat Spotlightcompte20 requêtes / minute
Envois Spotlightcompte30 requêtes / minute

API d'administration

L'API authentifiée qu'appellent l'admin et vos jetons d'API.

EndpointCompté parLimite
Écritures d'enregistrementsespace de travail3 000 enregistrements / minuteajustable
Profondeur de requête adminrequête20 niveaux de profondeur / requête

Connexion à l'admin

EndpointCompté parLimite
Connexion adminadresse IP10 tentatives / 15 minutes
Connexion admincompte5 tentatives / 15 minutes
Codes à deux facteurs admincompte10 tentatives / 15 minutes
admin-password-changecompte5 tentatives / 15 minutes
admin-email-changecompte5 tentatives / heure
admin-email-change-confirmadresse IP20 tentatives / 15 minutes
admin-avatar-uploadcompte20 URL signées / heure
admin-password-reset-requestadresse IP5 tentatives / 15 minutes
admin-password-reset-requestcompte3 tentatives / heure
admin-password-resetadresse IP10 tentatives / 15 minutes
admin-verify-emailadresse IP20 tentatives / 15 minutes
admin-verification-resendcompte3 tentatives / heure
Inscription adminadresse IP5 tentatives / 15 minutes
Inscription admincompte3 tentatives / heure
Requêtes de rafraîchissementadresse IP300 requêtes / 15 minutes
Rafraîchissements de jetonadresse IP120 tentatives / 15 minutes
Connexion OAuthadresse IP20 tentatives / 15 minutes
Démarrage SSOadresse IP20 tentatives / 15 minutes
oauth-authorizeadresse IP60 tentatives / 15 minutes
oauth-tokenadresse IP3 000 tentatives / 15 minutes
oauth-revokeadresse IP600 tentatives / 15 minutes
Retour SSOadresse IP20 tentatives / 15 minutes

Membres du site

Les comptes que votre propre site connecte, pas des comptes cmssy.

EndpointCompté parLimite
Inscription de membreadresse IP5 tentatives / 15 minutes
Inscription de membrecompte3 tentatives / heure
Connexion de membreadresse IP10 tentatives / 15 minutes
Connexion de membrecompte5 tentatives / 15 minutes
Demandes de réinitialisationadresse IP5 tentatives / 15 minutes
Demandes de réinitialisationcompte3 tentatives / heure
E-mails de compte envoyés à un membrecompte5 tentatives / heure
Réinitialisations de mot de passeadresse IP10 tentatives / 15 minutes
Vérifications d'e-mailadresse IP20 tentatives / 15 minutes
member-profilecompte30 tentatives / 15 minutes
member-credentialcompte10 tentatives / 15 minutes
member-login-changecompte5 tentatives / heure
member-login-changeadresse IP20 tentatives / 15 minutes

Chaque chiffre est le budget d'une fenêtre ; un appel au-delà est refusé avec un 429 et un en-tête Retry-After.