Aller au contenu

Licences de fonctionnalités et limites d’utilisation

L’autorisation d’exporter diffère de 500 exports par mois. RunFeature vérifie l’accès ; RunMeteredFeature confirme l’usage après réussite.

Autoriser 500 exports par mois

Ajoutez export aux fonctions, puis un quota : export, 500, Mensuel. Par défaut, l’usage est refusé après épuisement. Pour autoriser un dépassement, fixez son maximum ; le système le comptabilise pour votre système de commandes.

Quotas quotidiens et mensuels renouvelés à minuit UTC ; quotas cumulés sans remise à zéro. Changer la limite n’efface pas l’usage consommé.

Confirmer l’utilisation après un export réussi

Passez votre fonction métier au SDK. Nouveau travail : nouvel ID ; reprise : mêmes ID, fonction et quantité. Ne lancez pas le même ID dans plusieurs processus.

LangueAppel d’opération comptée
Goclient.RunMeteredFeature(ctx, "export", 1, jobID, exportReport)
Javaclient.runMeteredFeature("export", 1, jobID, this::exportReport)
Node.jsawait client.runMeteredFeature("export", 1, jobID, exportReport)
Pythonclient.run_metered_feature("export", 1, job_id, export_report)
C#await client.RunMeteredFeature("export", 1, jobID, ExportReport)
C++client.RunMeteredFeature("export", 1, jobID, exportReport)
Rustclient.run_metered_feature("export", 1, &job_id, || export_report())?
Rubyclient.run_metered_feature("export", 1, job_id) { export_report }
Cln_run_metered_feature(client, "export", 1, job_id, export_report, context)

Configure a meter for the actual feature in your policy, then generate the AI integration prompt. AI should use the language's RunMeteredFeature with a stable business operation ID, preserving that ID when retrying the same task.

Le SDK conserve les confirmations en attente.

Si le travail réussit mais pas la confirmation, une reprise ne fait que confirmer. Un crash pendant le travail bloque la répétition automatique. Vérifiez le résultat durable puis utilisez ResolveMeteredFeature. L’usage distant et le travail local ne forment pas une transaction unique.

Pour contrôler vous-même les réservations
  1. Créez et conservez un identifiant de tâche pour cet export.
  2. Réservez une unité et exportez seulement après pending. committed indique une tâche déjà terminée ; ne la répétez pas.
  3. Après un export réussi et l’enregistrement du résultat, appelez Commit pour confirmer l’utilisation.
  4. Si l’export échoue avant la fin, appelez Cancel pour libérer la réservation sans débiter d’unités.

Une réservation dure 15 minutes par défaut, raccourcies au changement de période UTC. L’API permet reservation_seconds de 30 à 3600 secondes.

LangueRéserverConfirmer / Annuler
GoReserve(ctx, "export", 1, jobID)Commit / Cancel(ctx, hold.ID, jobID)
Java / Node.jsreserve("export", 1, jobID)commit / cancel(id, jobID)
Cln_reserve(client, "export", 1, jobID)ln_commit / ln_cancel(client, id, jobID)
C++ / C#Reserve("export", 1, jobID)Commit / Cancel(id, jobID)
Pythonreserve("export", 1, jobID)commit / cancel(id, jobID)

Comment lire les champs de réponse ?

ChampSignification
reservation_id / operation_idIdentifiant de réservation et de tâche d’origine ; conservez les mêmes valeurs lors des reprises.
status / expires_atÉtat et échéance : pending attend la fin, committed est débité, canceled est libéré, expired a expiré.
consumption.used / reservedUtilisations confirmées sur la période / unités réservées par toutes les tâches valides.
consumption.limit / remainingQuota de base / unités de base disponibles. remaining = max(0, limit - used - reserved), hors dépassement autorisé.
consumption.quantity / overageUnités de cette tâche / unités confirmées au-delà du quota de base ; aucun paiement client n’est encaissé.
consumption.period / reset_atPériode UTC / prochaine remise à zéro ; un quota à vie a reset_at = null.

Pour les requêtes, réponses et types de champs, consultez Reserve, Commit et Cancel dans la référence de l’API d’exécution.

Après un délai de confirmation dépassé, réessayez uniquement la confirmation.

Après réussite, n’annulez pas et ne répétez pas l’export. Conservez identifiants et résultat puis réessayez Commit. Si la réservation a expiré, gardez la tâche pour rapprochement. Le débit distant et l’action locale ne partagent pas une transaction atomique.

Consume débite toujours immédiatement. Utilisez la réservation pour ne pas facturer une action échouée. Tous les compteurs fonctionnels exigent une connexion et sont exclus des quatre appels API facturables de la plateforme.