88API88API
User GuideAI ApplicationsAPI ReferenceHelp & Support
API Module Guide

Module de statistiques de données

Description des fonctionnalités

Le préfixe de l'API est uniformément http(s)://<your-domain>

HTTPS doit être utilisé dans les environnements de production pour sécuriser les jetons d'authentification. HTTP n'est recommandé que pour les environnements de développement.

Un système de statistiques agrégées pour les données d'utilisation. Les administrateurs peuvent afficher des statistiques à l'échelle du site et les utilisateurs peuvent afficher des statistiques personnelles. Les données sont regroupées par modèle et par date, utilisées pour générer des graphiques et des rapports et surveiller les tendances d'utilisation du système.

🔐 Authentification de l'utilisateur

Mes statistiques d'utilisation par date

  • Nom de l'interface: Mes statistiques d'utilisation par date
  • Méthode HTTP: GET
  • Chemin: /api/data/self
  • Exigence d'authentification: Utilisateur
  • Description: récupère les données d'utilisation de l'utilisateur actuel agrégées par date, prenant en charge les requêtes de plage horaire.

💡 Exemple de demande:

const response = await fetch('/api/data/self?start_timestamp=1640908800&end_timestamp=1640995200', {
  method: 'GET',
  headers: {
    'Content-Type': 'application/json',
    'Authorization': 'Bearer your_user_token',
    'New-Api-User': 'your_user_id'
  }
});
const data = await response.json();

✅ Exemple de réponse réussie:

{
  "success": true,
  "message": "",
  "data": [
    {
      "model_name": "gpt-3.5-turbo",
      "count": 25,
      "quota": 12500,
      "token_used": 2000,
      "created_at": 1640995200,
      "user_id": 1,
      "username": "testuser"
    },
    {
      "model_name": "gpt-4",
      "count": 10,
      "quota": 30000,
      "token_used": 1500,
      "created_at": 1640995200,
      "user_id": 1,
      "username": "testuser"
    }
  ]
}

❗ Exemple de réponse en cas d'échec:

{
  "success": false,
  "message": "Failed to retrieve personal statistics data"
}

🧾 Description du champ:

  • start_timestamp (Numéro): horodatage de début, en option
  • end_timestamp (Numéro): Horodatage de fin, facultatif
  • data (Array) : Liste des données statistiques personnelles
  • model_name (String): Nom du modèle
  • count (Numéro): Nombre de demandes
  • quota (Nombre): Quota de consommation
  • token_used (Nombre): Utilisation du jeton
  • created_at (Numéro): horodatage de la date des statistiques
  • user_id (Numéro): ID utilisateur
  • username (Chaîne) : Nom d'utilisateur

🔐 Authentification de l'administrateur

Statistiques d'utilisation à l'échelle du site par date

  • Nom de l'interface: statistiques d'utilisation à l'échelle du site par date
  • Méthode HTTP: GET
  • Chemin: /api/data/
  • Exigence d'authentification: Administrateur
  • Description: récupère les données d'utilisation du système à l'échelle du site, agrégées par date, en prenant en charge le filtrage par nom d'utilisateur et requêtes de plage horaire.

💡 Exemple de demande:

const response = await fetch('/api/data/?start_timestamp=1640908800&end_timestamp=1640995200&username=testuser', {
  method: 'GET',
  headers: {
    'Content-Type': 'application/json',
    'Authorization': 'Bearer your_admin_token',
    'New-Api-User': 'your_user_id'
  }
});
const data = await response.json();

✅ Exemple de réponse réussie:

{
  "success": true,
  "message": "",
  "data": [
    {
      "model_name": "gpt-3.5-turbo",
      "count": 150,
      "quota": 75000,
      "token_used": 12500,
      "created_at": 1640995200
    },
    {
      "model_name": "gpt-4",
      "count": 50,
      "quota": 150000,
      "token_used": 8000,
      "created_at": 1640995200
    }
  ]
}

❗ Exemple de réponse en cas d'échec:

{
  "success": false,
  "message": "Failed to retrieve statistics data"
}

🧾 Description du champ:

  • start_timestamp (Numéro): horodatage de début, en option
  • end_timestamp (Numéro): Horodatage de fin, facultatif
  • username (String): Filtre de nom d'utilisateur, facultatif
  • data (Array) : Liste des données statistiques, agrégées par modèle et date
  • model_name (String): Nom du modèle
  • count (Nombre): nombre total de demandes
  • quota (Nombre): Consommation totale des quotas
  • token_used (Nombre): utilisation totale du jeton
  • created_at (Numéro): horodatage de la date des statistiques