Stockage et persistance des réponses
Contrôler la durée de vie de vos données
La Responses API offre un mécanisme de stockage intégré : avec store: true, vos réponses sont conservées sur les serveurs xAI pendant 30 jours. Vous pouvez les récupérer, les consulter et les supprimer à tout moment via des endpoints dédiés.
store: true vs store: false
Mode stocké (store: true)
{
"model": "grok-4.20-reasoning",
"input": "Rédige un résumé de ce projet.",
"store": true
}
La réponse est persistée pendant 30 jours. Vous pouvez :
- La référencer avec
previous_response_idpour continuer la conversation - La récupérer plus tard avec
GET /v1/responses/{id} - La supprimer avec
DELETE /v1/responses/{id}
Mode privé (store: false)
{
"model": "grok-4.20-reasoning",
"input": "Analyse ces données confidentielles.",
"store": false
}
La réponse n’est pas conservée après la requête. Vous recevez toujours le résultat dans la réponse HTTP, mais il n’est plus accessible ensuite. Le chaînage via previous_response_id n’est pas possible.
Utilisez store: false pour des données sensibles ou quand vous n’avez pas besoin de poursuivre la conversation.
Récupérer une réponse stockée
curl https://api.x.ai/v1/responses/resp-abc123 \
-H "Authorization: Bearer $XAI_API_KEY"
L’API retourne l’objet réponse complet, identique à celui reçu lors de la création. C’est utile pour :
- Auditer les interactions passées
- Reconstituer un historique de conversation
- Vérifier les coûts a posteriori
En Python
# Récupérer une réponse stockée
stored = client.responses.retrieve("resp-abc123")
print(stored.output[0].content[0].text)
print(f"Coût : {stored.usage.cost_in_nano_usd / 1e9:.6f} USD")
Supprimer une réponse
curl -X DELETE https://api.x.ai/v1/responses/resp-abc123 \
-H "Authorization: Bearer $XAI_API_KEY"
La suppression est définitive. Si d’autres réponses chaînées référencent cette réponse via previous_response_id, le contexte correspondant ne sera plus disponible.
En Python
client.responses.delete("resp-abc123")
Cas d’usage du stockage
Chatbot avec historique
Activez store: true pour toutes les requêtes. L’utilisateur peut reprendre sa conversation même après avoir fermé le navigateur, tant que vous conservez le dernier response_id.
Analyse de données sensibles
Utilisez store: false pour les requêtes contenant des données personnelles ou confidentielles. La réponse est traitée en mémoire et non persistée.
Audit et conformité
Récupérez les réponses stockées pour constituer des logs d’audit. Supprimez-les quand elles ne sont plus nécessaires pour respecter les politiques de rétention.
Durée de rétention
Les réponses stockées sont automatiquement supprimées après 30 jours. Il n’est pas possible d’étendre cette durée via l’API. Si vous avez besoin d’un historique plus long, sauvegardez les réponses dans votre propre base de données.
Points clés à retenir
store: truepersiste la réponse 30 jours —store: falsene conserve rienGET /v1/responses/{id}récupère une réponse stockéeDELETE /v1/responses/{id}supprime définitivement une réponse- Le chaînage via
previous_response_idnécessite que la réponse soit stockée - Les réponses sont automatiquement purgées après 30 jours
- Utilisez
store: falsepour les données sensibles