Fonctionnement d’un sous-compte
- Ses propres clés et résultats. Une clé de sous-compte soumet et lit tâches, lots et
moniteurs comme n’importe quelle clé, et ne voit que son propre travail. Une tâche créée avec la clé d’Acme
renvoie
404à la clé de Globex et à vos propres clés. - Vos crédits. Ses tâches sont facturées sur votre solde. Un sous-compte n’a pas de solde : ses clés
reçoivent
403 SUB_ACCOUNT_FORBIDDENsurGET /v1/creditsetGET /v1/usage. - Votre capacité. La limite de concurrence de votre plan ou de votre contrat couvre vos propres tâches et
celles de tous les sous-comptes ensemble : les sous-comptes n’ajoutent jamais de capacité.
GET /v1/async/statuscompte cette file partagée avec votre clé, et la clé d’un sous-compte y reçoit403 SUB_ACCOUNT_FORBIDDEN. - Vos limites de moniteurs. La limite
monitorsdeGET /v1/monitors/capabilitiescompte vos moniteurs et ceux de tous les sous-comptes ensemble, et les limitespromptsettasksPerRuns’appliquent aux moniteurs d’un sous-compte comme aux vôtres. - Ses propres limites.
monthlyCreditLimitplafonne ce qui peut lui être facturé au cours d’un mois civil UTC.concurrencyLimitplafonne ses tâches en file et en cours à l’intérieur de votre limite. Les deux sont facultatives. - Un seul niveau. Un sous-compte ne peut pas avoir de sous-comptes. Les e-mails d’alerte de ses moniteurs sont envoyés aux administrateurs de votre compte.
Qui peut gérer les sous-comptes
Appelez les endpoints/v1/sub-accounts avec l’une de vos propres clés d’API, sans restriction de moteurs
ni limite de crédits quotidienne. Toute autre clé reçoit 403 SUB_ACCOUNT_FORBIDDEN, car une clé restreinte
pourrait sinon émettre des clés sans ses propres restrictions. Les clés d’un sous-compte reçoivent la même
erreur.
Créer un sous-compte et une clé
201 :
Tout autre champ renvoie
400 VALIDATION_ERROR : une limite mal orthographiée ne laisse jamais un
client sans plafond.
Émettez ensuite une clé pour le sous-compte :
name (1 à 64 caractères,
default par défaut), allowedTaskTypes, dailyCreditLimit et expiresAt (de 5 minutes à 2 ans
dans le futur). N’envoyez aucun corps pour une clé sans restriction.
Un sous-compte peut détenir jusqu’à 5 clés actives ; les clés révoquées et expirées ne comptent pas. Une sixième
renvoie 409 KEY_LIMIT. Révoquez-en une d’abord.
La clé de votre client fonctionne sur tous les endpoints comme n’importe quelle autre clé :
Gérer les clés
GET /v1/sub-accounts/{id}/keys liste toutes les clés que le sous-compte a eues, de la plus récente à la plus
ancienne, y compris les clés révoquées et expirées. Vérifiez revokedAt et expiresAt pour repérer les clés
actives.
DELETE /v1/sub-accounts/{id}/keys/{keyId} révoque une clé et renvoie
{"success": true, "data": {"revoked": "<keyId>"}}. Une clé déjà révoquée, ou qui n’appartient pas
au sous-compte, renvoie 404 NOT_FOUND.
Limites
Seul le sous-compte qui a atteint sa propre limite est refusé ; vos autres clients continuent de
fonctionner. Une limite relevée s’applique dès la requête suivante.
retryAfterSec compte jusqu’au début du mois UTC suivant, quand le décompte mensuel repart
de zéro. Voir Crédits et limites pour les limites de l’ensemble du compte.
Consulter un sous-compte maintenant
GET /v1/sub-accounts/{id} renvoie le sous-compte avec la consommation du mois et
activeTasks, le nombre de ses tâches en file ou en cours à cet instant. Comparez-le à
concurrencyLimit pour voir à quel point le client est proche de son plafond.
usage, credits et tasks correspondent à ce qui a été facturé ce
mois UTC, et reservedCredits aux crédits réservés par les tâches encore en cours.
Consommation et facturation
Chaque facturation apparaît aussi dans votre propre relevé de facturation ; ces endpoints la répartissent par client. Les tâches en échec ne sont jamais facturées et ne comptent jamais. Les montants en crédits comportent jusqu’à deux décimales.GET /v1/sub-accountsliste vos sous-comptes, du plus ancien au plus récent, chacun avec leusagedu mois. Paginez aveclimit(100 par défaut, au plus 1 000) et renvoyeznextCursorcommecursor.GET /v1/sub-accounts/usagetotalise chaque sous-compte sur une plage de dates UTC.GET /v1/sub-accounts/{id}/usagedonne les facturations d’un sous-compte par jour et par moteur.
from et to au format YYYY-MM-DD, bornes incluses. from vaut par défaut le
premier jour du mois UTC en cours et to aujourd’hui ; une plage couvre au plus 366 jours.
Tous les sous-comptes
Un sous-compte
creditsettasksau premier niveau sont les totaux dedays.dayscontient une ligne par date UTC et par moteur ayant eu une facturation, triée par date, puis partaskType. Les jours sans facturation n’ont pas de ligne.taskType: "OTHER"est une facturation qui n’est pas une tâche, comme la lecture des concurrents d’un moniteur. Elle ajoute des crédits mais aucunetasks.
Suspendre et réactiver
- Ses clés renvoient
401en moins de cinq secondes. - Ses moniteurs cessent de s’exécuter, et les éléments de lot non démarrés se terminent en
API_KEY_INACTIVE. - Les tâches déjà en file ou en cours se terminent et sont facturées.
{"status": "active"} rétablit ses clés et ses moniteurs. Chaque moniteur s’exécute une fois à son retour
au lieu de rattraper les exécutions manquées. Le même PATCH modifie name, externalId,
monthlyCreditLimit et concurrencyLimit ; null supprime une limite ou l’externalId. Un
sous-compte ne peut pas être supprimé ; suspendez-le plutôt.