Uploader des fichiers avec la Files API
Donner des documents a Grok
La Files API de xAI vous permet d’uploader des fichiers directement dans l’ecosysteme Grok. Plutot que de copier-coller du texte dans vos prompts, vous envoyez le document original et le modele l’analyse en profondeur. Cette approche preserve la structure, les tableaux et la mise en page du contenu source.
L’endpoint principal est POST /v1/files. Vous envoyez votre fichier en multipart/form-data avec un parametre purpose fixe a "assistants". L’API retourne un identifiant unique (file_id) que vous reutiliserez dans toutes vos requetes.
Envoyer votre premier fichier
La requete d’upload utilise multipart/form-data, pas du JSON. Voici l’appel avec curl :
curl -X POST https://api.x.ai/v1/files \
-H "Authorization: Bearer $XAI_API_KEY" \
-F "[email protected]" \
-F "purpose=assistants"
La reponse contient l’identifiant du fichier :
{
"id": "file_abc123xyz",
"object": "file",
"bytes": 2458901,
"created_at": 1710000000,
"filename": "rapport-annuel.pdf",
"purpose": "assistants"
}
Le file_id retourne (file_abc123xyz dans cet exemple) est votre reference permanente. Conservez-le : vous en aurez besoin pour interroger le fichier, le supprimer ou l’ajouter a une collection.
Parametres de l’upload
L’endpoint accepte deux parametres obligatoires :
- file : le contenu binaire du fichier, envoye en multipart. La taille maximale est de 48 MB
- purpose : toujours
"assistants". C’est la seule valeur acceptee actuellement. Elle indique que le fichier sera utilise dans le contexte des interactions avec le modele
Authentification
Toutes les requetes vers la Files API necessitent votre cle API standard dans le header Authorization: Bearer. Cette cle est differente de la Management API Key que vous utiliserez pour les collections.
Utiliser le fichier dans l’API Responses
Une fois le fichier uploade, vous pouvez le referencer dans vos requetes via input_file :
{
"model": "grok-3",
"input": [
{
"type": "input_file",
"file_id": "file_abc123xyz"
},
{
"type": "input_text",
"text": "Resume les points cles de ce document."
}
]
}
Grok recoit le fichier, active automatiquement l’outil attachment_search cote serveur, extrait le contenu pertinent et genere sa reponse. Vous n’avez pas besoin d’activer manuellement cet outil.
Points cles a retenir
- L’endpoint
POST /v1/filesaccepte des fichiers jusqu’a 48 MB en multipart/form-data - Le parametre
purposedoit etre"assistants" - Le
file_idretourne est votre reference pour toutes les operations ulterieures - L’outil
attachment_searchs’active automatiquement quand un fichier est reference dans une requete - Le cout est de $10 par 1 000 appels d’attachement