Obtenir la répartition de l'utilisation des crédits de l'organisation
Obtenez le classement de la proportion de crédits ou de tokens de l'organisation par Agent / Workflow, ainsi que la tendance quotidienne, hebdomadaire et mensuelle. Il est possible de regarder uniquement Agent ou uniquement Workflow.
Remarque : il est possible de consulter des données sur un maximum de 92 jours ; seules les données des espaces de développement sont comptabilisées, la portée statistique est décrite ci-dessous sous « Portée de la statistique ».
Méthode de requête
GET
URL d'appel
https://api-${endpoint}.gptbots.ai/v1/org/usage/distribution
Vérification d'appel
Utilisez l'authentification Basic avec le DevKey / DevSecret au niveau du compte : Authorization: Basic ${BASIC_TOKEN}, où ${BASIC_TOKEN} est l'encodage Base64 de DevKey:DevSecret.
- Le compte appelant doit être membre de l'organisation correspondant à
org_idet avoir l'autorisation « Voir l'utilisation » (les propriétaires et administrateurs de l'organisation l'ont par défaut). - Veuillez appeler l'adresse du centre de données où se trouve l'organisation,
${endpoint}correspond àregionrenvoyé par Lister les organisations (SG→sg,TH→th,JP→jp). Appeler un autre centre de données renverra « Pas membre de cette organisation ».
Fréquence d'appel
- Chaque clé développeur peut appeler cette API au maximum 10 fois par minute.
- Chaque appel est également compté dans le quota par minute du « API statistique » du forfait organisation, partagé avec l’API statistique Agent Key.
- Les résultats des requêtes sont mis en cache pendant 10 minutes, il est recommandé d’appeler une fois par jour.
Requête
Exemple de requête
curl -X GET 'https://api-${endpoint}.gptbots.ai/v1/org/usage/distribution?org_id=${org_id}&start_time=1792425600000&end_time=1792684800000&agent_type=WORKFLOW&granularity=DAY' \
-H 'Authorization: Basic ${BASIC_TOKEN}'
En-tête de la requête
| Champ | Type | Description |
|---|---|---|
| Authorization | Basic ${BASIC_TOKEN} | Utiliser le token Basic après DevKey:DevSecret en Base64. |
Paramètres de la requête
| Champ | Type | Requis | Description |
|---|---|---|---|
| org_id | String | Oui | ID de l'organisation. |
| start_time | Long | Oui | Heure de début, timestamp en millisecondes. Étendu au 0h du jour selon le fuseau horaire de l'organisation. |
| end_time | Long | Oui | Heure de fin (non incluse), timestamp en millisecondes. La période maximale est de 92 jours. |
| metric | String | Non | CREDITS (crédits, par défaut) ou TOKENS. |
| granularity | String | Non | Granularité temporelle de la tendance : DAY (par défaut), WEEK (commençant le lundi), MONTH. |
| agent_type | String | Non | AGENT pour voir uniquement Agents, WORKFLOW pour voir uniquement Workflow ; si non fourni, les deux types sont classés ensemble. |
| top_n | Integer | Non | Nombre d'éléments conservés dans la série de tendances, de 1 à 50, par défaut 50, le reste regroupé en une ligne OTHER. |
Réponse
Exemple de réponse
{
"code": 0,
"message": "OK",
"data": {
"timezone": "+07:00",
"data_since": "2026-10-15",
"buckets": ["2026-10-16", "2026-10-17", "2026-10-18"],
"total": 812.4411,
"series": [
{
"row_type": "ITEM",
"agent_id": "65f0c2a1b4e8d93a1c7e5b2a",
"name": "订单查询",
"agent_type": "WORKFLOW",
"total": 402.1200,
"share": 49.49,
"points": [130.5000, 141.0200, 130.6000]
},
{
"row_type": "OTHER",
"agent_id": null,
"name": null,
"agent_type": null,
"total": 410.3211,
"share": 50.51,
"points": [120.1000, 150.2000, 140.0211]
}
],
"ranking": [
{
"row_type": "ITEM",
"agent_id": "65f0c2a1b4e8d93a1c7e5b2a",
"name": "订单查询",
"agent_type": "WORKFLOW",
"total": 402.1200,
"share": 49.49
}
]
}
}
Réponse réussie
| Champ | Type | Description |
|---|---|---|
| timezone | String | Fuseau horaire de l'organisation (décalage UTC, comme +07:00). |
| data_since | String | La date à partir de laquelle les données de crédits sont disponibles (yyyy-MM-dd), les périodes antérieures sont incomplètes ; si aucune donnée n'est encore disponible, null. |
| buckets | String[] | Dates de début des intervalles de temps, par ordre croissant : par jour le jour même, par semaine le lundi (yyyy-MM-dd), par mois yyyy-MM. points correspond dans cet ordre. |
| total | Number | Quantité totale dans l'intervalle (crédits ou tokens, selon metric). |
| series | Object[] | Les top_n premières lignes pour la tendance, triées par quantité totale décroissante, le reste est fusionné en une ligne row_type = OTHER. |
| ranking | Object[] | Classement complet, maximum 500 lignes, le surplus est fusionné en une ligne OTHER. Ne contient pas points. |
| series[].row_type / ranking[].row_type | String | ITEM un Agent ou Workflow ; OTHER élément fusionné ; UNATTRIBUTED consommation n'appartenant à aucun Agent (comme stockage de base de connaissances, reconnaissance vocale), ne renvoie pas cette ligne si agent_type est fourni. |
| series[].agent_id / ranking[].agent_id | String | ID de l'Agent ou Workflow ; OTHER / UNATTRIBUTED lignes en tant que null. |
| series[].name / ranking[].name | String | Nom ; OTHER / UNATTRIBUTED lignes en tant que null. |
| series[].agent_type / ranking[].agent_type | String | AGENT ou WORKFLOW ; OTHER / UNATTRIBUTED comportement null. |
| series[].total / ranking[].total | Number | Quantité totale de l'intervalle, avec 4 décimales. |
| series[].share / ranking[].share | Number | Pourcentage de la quantité totale de l'intervalle, de 0 à 100, avec 2 décimales. |
| series[].points | Number[] | Valeur de chaque tranche temporelle. |
Réponse en cas d'échec
| Champ | Type | Description |
|---|---|---|
| code | Integer | Code d'erreur. |
| message | String | Détails de l'erreur. |
Codes d'erreur
Le code HTTP correspond aux trois premiers chiffres du code d'erreur, par exemple 40000 correspond à 400, 40100 à 401, 403132 à 403.
| Code d'erreur | Description |
|---|---|
| 40000 | Erreur de paramètre, comme l'absence de paramètre obligatoire ou une valeur de paramètre invalide. |
| 40001 | Appel trop fréquent : la clé développeur a dépassé la limite par minute de cette interface. |
| 40008 | Limite de l'abonnement organisationnel pour les « API statistiques » dépassée par minute. |
| 40010 | Interface temporairement fermée, veuillez réessayer plus tard. |
| 40100 | Pas de permission : absence de droits de consultation. |
| 40105 | Pas membre de l'organisation ou appel à une autre adresse du centre de données. |
| 40324 | DevKey ou DevSecret incorrect. |
| 403132 | Plage horaire invalide : l'heure de début n'est pas antérieure à l'heure de fin ou dépasse la plage maximale. |
Périmètre statistique
- Portée des statistiques : seules les zones de développement sont comptées, y compris API, pages de partage, intégrations web, composants de bulles, LiveDesk ainsi que tous les canaux de messagerie instantanée et d'appel, ainsi que les Workflows de l'espace de développement ; l'utilisation des espaces de travail (GWork) n'est pas incluse, et la partie utilisée par un Agent publié dans un espace de travail n'est pas non plus incluse. Par conséquent, le total peut être légèrement inférieur à celui affiché dans la page « Organisation → Utilisation » de la console pour la même période.
- Crédits : tous les types de consommation (à l'exception de l'expiration des crédits et du paiement par abonnement) ; la consommation des Workflows est enregistrée sous le nom du Workflow lui-même.
- Point de départ des données : disponible à partir de la date de mise en ligne de la fonctionnalité (
data_since), sans rétroaction historique. - Fréquence de mise à jour : mise à jour en temps réel.
