Passer au contenu principal

Vue d’ensemble

La Management API permet de gérer les API Keys d’organisation et de consulter l’usage ainsi que la facturation par clé, sans utiliser de clé d’inférence classique. Les management tokens peuvent être créés et rotés depuis la page Settings du Dashboard.
Authorization: Bearer mt-your-management-token
Les management tokens sont différents des API Keys d’inférence. Utilisez mt-... pour /v1/management/* et sk-... pour les endpoints de modèle comme /v1/responses.

Endpoints disponibles

EndpointMethodDescription
/v1/management/api-keysGETListe les API Keys utilisateur de l’organisation courante
/v1/management/api-keysPOSTCrée une nouvelle API Key utilisateur
/v1/management/api-keys/{keyId}PATCHMet à jour le nom, le plafond, les modèles autorisés, l’expiration ou le statut
/v1/management/api-keys/{keyId}/usageGETRetourne les détails d’usage paginés pour une clé
/v1/management/api-keys/{keyId}/billingGETRetourne un découpage agrégé de facturation pour une clé

Contrat des filtres d’usage

GET /v1/management/api-keys/{keyId}/usage prend en charge les paramètres de requête suivants :
ParamètreTypeValeurs par défaut / limitesDescription
pageintegervaleur par défaut 1, min. 1Numéro de page à partir de 1
limitintegervaleur par défaut 50, min. 1, max. 100Nombre d’éléments par page
logicalModelstringlongueur maximale 100Nom du modèle logique demandé
modelVendorstringlongueur maximale 100Fournisseur public du modèle
sceneenum-chat, image, audio, video, embedding, rerank, translation, music, 3d
accessChannelenum-platform ou byok
startDatestring-Borne inférieure incluse ; accepte RFC3339 avec fuseau horaire ou YYYY-MM-DD
endDatestring-Borne supérieure incluse ; accepte RFC3339 avec fuseau horaire ou YYYY-MM-DD
Si startDate et endDate sont fournis ensemble, startDate doit être antérieur ou égal à endDate.

Contrat du body API Key

POST /v1/management/api-keys

ChampTypeValeurs par défaut / limitesDescription
namestringrequis, valeur par défaut Default Key, longueur 1-50Nom affiché ; les espaces de début et de fin sont retirés côté serveur
limitAmountnumber | nullmin. 0, max. 100000null ou omis = illimité, 0 = aucun budget exploitable, valeur positive = plafond en USD
limitCurrencyenumvaleur par défaut USDOptionnel : USD ou CNY. Si défini sur CNY, limitAmount est interprété en RMB puis converti en USD côté serveur avant le stockage
modelsstring[]valeur par défaut []Liste d’autorisation optionnelle des modèles logiques
expiresAtstring | nulldatetime RFC3339null signifie sans date d’expiration

PATCH /v1/management/api-keys/

ChampTypeValeurs par défaut / limitesDescription
statusenum-active, inactive, revoked
namestringlongueur 1-50Nom affiché mis à jour
limitAmountnumber | nullmin. 0, max. 100000null = illimité, 0 = aucun budget exploitable
limitCurrencyenumvaleur par défaut USDOptionnel : USD ou CNY. Si défini sur CNY, limitAmount est interprété en RMB puis converti en USD côté serveur avant le stockage
modelsstring[]-Liste d’autorisation des modèles logiques mise à jour
expiresAtstring | nulldatetime RFC3339null efface la date d’expiration
Au moins un champ doit être fourni dans la requête PATCH.

Contrat monétaire

  • Par défaut, limitAmount côté requête est interprété en USD. Définissez limitCurrency: "CNY" pour envoyer un plafond en RMB ; le serveur le convertira en USD avec le taux actuel avant le stockage.
  • Les champs monétaires de la réponse conservent la valeur d’origine en USD et ajoutent un équivalent RMB avec le suffixe _cny.
  • exchange_rate est renvoyé avec les métadonnées de l’API key et représente le taux USD→CNY utilisé pour chaque valeur *_cny de cette réponse.

Sémantique des rapports

  • logicalModel désigne le modèle logique public demandé par l’appelant.
  • modelVendor désigne le fournisseur public du modèle, et non la route physique cachée.
  • scene correspond à la scène publique de la requête, dérivée de l’endpoint ou du type de tâche.
  • accessChannel=platform signifie que la requête a été facturée via le canal plateforme de LemonData.
  • accessChannel=byok signifie que la requête a utilisé votre propre clé de fournisseur upstream.
Les réponses n’exposent que des champs publics de billing et de reporting ; les détails de routage interne et les métadonnées physiques restent masqués.

Note sur la pagination billing

/usage est paginé. /billing est actuellement un endpoint agrégé et ne renvoie pas de métadonnées de pagination de type page / limit. Pour des enregistrements ligne à ligne, utilisez /usage.

Exemple rapide

Commencez par lister les API Keys disponibles pour le management token courant :
curl "https://api.lemondata.cc/v1/management/api-keys" \
  -H "Authorization: Bearer mt-your-management-token"
{
  "object": "list",
  "data": [
    {
      "id": "key_abc123def456",
      "name": "Backend Worker",
      "key_prefix": "sk-abc123...",
      "status": "active",
      "limit_amount": 500.0,
      "limit_amount_cny": 3600.0,
      "used_amount": 148.25,
      "used_amount_cny": 1067.4,
      "exchange_rate": 7.2,
      "models": ["gpt-4o-mini", "claude-3-7-sonnet"],
      "expires_at": "2026-04-30T00:00:00.000Z",
      "last_used_at": "2026-03-27T08:12:45.000Z",
      "created_at": "2026-03-01T10:00:00.000Z"
    }
  ]
}

Étapes suivantes