Crédits prépayés
Le modèle prépayé de xAI
Les crédits prépayés vous permettent d’acheter un solde à l’avance, consommé au fil de vos appels API. Ce modèle est idéal pour contrôler vos dépenses : vous ne dépensez que ce que vous avez acheté, sans surprise en fin de mois. Les crédits sont utilisés en priorité avant la facturation mensuelle.
Consulter le solde
Pour connaître votre solde de crédits prépayés et l’historique des transactions :
curl "https://management-api.x.ai/v1/billing/teams/$TEAM_ID/prepaid/balance" \
-H "Authorization: Bearer $MANAGEMENT_API_KEY"
La réponse contient :
- Le solde actuel en dollars
- L’historique des recharges (top-ups) avec dates et montants
- L’historique de consommation par période
Acheter des crédits (top-up)
Pour recharger votre solde de crédits :
curl -X POST "https://management-api.x.ai/v1/billing/teams/$TEAM_ID/prepaid/top-up" \
-H "Authorization: Bearer $MANAGEMENT_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"amount": 100.00
}'
Points importants sur les crédits
- Les crédits sont facturés immédiatement au moment de l’achat sur votre moyen de paiement par défaut
- Les crédits prépayés ne sont pas remboursables (sauf obligation légale dans votre juridiction)
- Les crédits sont consommés en priorité avant la facturation mensuelle postpaid
- Il n’y a pas de date d’expiration mentionnée pour les crédits — ils restent disponibles tant qu’ils ne sont pas consommés
Flux de facturation avec crédits
Lorsque vous effectuez un appel API, le système suit cette logique :
- Crédits prépayés disponibles : les tokens sont déduits du solde prépayé
- Crédits épuisés : la consommation bascule en facturation mensuelle (postpaid)
- Limite de dépenses atteinte : les requêtes sont refusées
Stratégies d’utilisation des crédits
Budget fixe mensuel
Si vous souhaitez un budget prévisible, achetez un montant fixe chaque mois et n’activez pas la facturation mensuelle :
import requests
from datetime import datetime
MANAGEMENT_API = "https://management-api.x.ai"
MGMT_KEY = "xai-mgmt-..."
TEAM_ID = "team-..."
# Vérifier le solde
balance_resp = requests.get(
f"{MANAGEMENT_API}/v1/billing/teams/{TEAM_ID}/prepaid/balance",
headers={"Authorization": f"Bearer {MGMT_KEY}"}
)
balance = balance_resp.json().get("balance", 0)
# Recharger si le solde est bas
MONTHLY_BUDGET = 200.00
RECHARGE_THRESHOLD = 50.00
if balance < RECHARGE_THRESHOLD:
top_up_amount = MONTHLY_BUDGET - balance
requests.post(
f"{MANAGEMENT_API}/v1/billing/teams/{TEAM_ID}/prepaid/top-up",
headers={
"Authorization": f"Bearer {MGMT_KEY}",
"Content-Type": "application/json"
},
json={"amount": top_up_amount}
)
print(f"Rechargé de ${top_up_amount:.2f}")
Provision pour un projet
Pour un projet avec un budget défini, achetez les crédits correspondants en amont :
# Budget projet : 500 $ sur 3 mois
curl -X POST "https://management-api.x.ai/v1/billing/teams/$TEAM_ID/prepaid/top-up" \
-H "Authorization: Bearer $MANAGEMENT_API_KEY" \
-H "Content-Type: application/json" \
-d '{"amount": 500.00}'
Surveillez ensuite la consommation via les analytics (lecon suivante) pour vous assurer que le budget est respecté.
Suivi du solde
Alerte de solde bas
#!/bin/bash
BALANCE=$(curl -s "https://management-api.x.ai/v1/billing/teams/$TEAM_ID/prepaid/balance" \
-H "Authorization: Bearer $MANAGEMENT_API_KEY" | python3 -c "import sys,json; print(json.load(sys.stdin).get('balance', 0))")
THRESHOLD=20.00
if (( $(echo "$BALANCE < $THRESHOLD" | bc -l) )); then
echo "ALERTE : solde prépayé bas ($BALANCE $)"
# Envoyer une notification
fi
Dashboard de consommation
Combinez le solde prépayé avec l’aperçu des charges postpaid pour avoir une vue complète de vos coûts :
# Solde prépayé
echo "=== Crédits prépayés ==="
curl -s "https://management-api.x.ai/v1/billing/teams/$TEAM_ID/prepaid/balance" \
-H "Authorization: Bearer $MANAGEMENT_API_KEY" | python3 -m json.tool
# Charges postpaid en cours
echo "=== Charges postpaid ==="
curl -s "https://management-api.x.ai/v1/billing/teams/$TEAM_ID/postpaid/invoice/preview" \
-H "Authorization: Bearer $MANAGEMENT_API_KEY" | python3 -m json.tool
Points clés à retenir
GET /v1/billing/teams/{teamId}/prepaid/balanceretourne le solde et l’historiquePOST /v1/billing/teams/{teamId}/prepaid/top-upachète des crédits (facturés immédiatement)- Les crédits prépayés ne sont pas remboursables
- Les crédits sont consommés en priorité avant la facturation mensuelle
- Automatisez les recharges avec un seuil minimum pour éviter les interruptions
- Combinez crédits prépayés et limites de dépenses pour un contrôle total des coûts