Aller au contenu principal

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_id pour 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: true persiste la réponse 30 jours — store: false ne conserve rien
  • GET /v1/responses/{id} récupère une réponse stockée
  • DELETE /v1/responses/{id} supprime définitivement une réponse
  • Le chaînage via previous_response_id nécessite que la réponse soit stockée
  • Les réponses sont automatiquement purgées après 30 jours
  • Utilisez store: false pour les données sensibles