> ## Documentation Index
> Fetch the complete documentation index at: https://docs.olostep.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Créer un Téléversement de Fichier

> Générer une URL pré-signée pour téléverser un fichier JSON. Après le téléversement, vous devez appeler le [point de terminaison de finalisation](/api-reference/files/complete) pour finaliser le téléversement.



## OpenAPI

````yaml fr/openapi/files.json POST /v1/files
openapi: 3.0.3
info:
  title: API de Fichiers
  version: 1.0.0
servers:
  - url: https://api.olostep.com
security: []
paths:
  /v1/files:
    post:
      summary: Créer un Téléchargement de Fichier
      description: >-
        Génère une URL pré-signée pour télécharger un fichier JSON. Après le
        téléchargement, tu dois appeler le point de terminaison complet pour
        finaliser le téléchargement. L'URL de téléchargement expire dans 10
        minutes.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                filename:
                  type: string
                  description: Le nom du fichier. Doit se terminer par l'extension .json.
                  pattern: \.json$
                purpose:
                  type: string
                  description: >-
                    Le but du fichier. Valeurs supportées : 'context' ou
                    'batch'. Par défaut, c'est 'context'.
                  enum:
                    - context
                    - batch
                  default: context
              required:
                - filename
      responses:
        '200':
          description: Réponse réussie avec l'URL de téléchargement.
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                    description: ID du Fichier
                  object:
                    type: string
                    description: >-
                      Le type d'objet. "file.upload" pour ce point de
                      terminaison.
                  created:
                    type: integer
                    description: Horodatage epoch créé
                  upload_url:
                    type: string
                    format: uri
                    description: >-
                      URL pré-signée pour télécharger le fichier. Expire dans 10
                      minutes.
                  expires_in:
                    type: integer
                    description: >-
                      Nombre de secondes avant l'expiration de l'URL de
                      téléchargement (600 secondes = 10 minutes)
        '400':
          description: >-
            Mauvaise requête. Nom de fichier manquant ou type de fichier
            invalide (seuls les fichiers .json sont supportés).
        '401':
          description: Clé API invalide
        '500':
          description: Erreur interne du serveur
      security:
        - Authorization: []
components:
  securitySchemes:
    Authorization:
      type: http
      scheme: bearer
      description: >-
        En-tête d'authentification Bearer sous la forme Bearer <token>, où
        <token> est ton jeton d'authentification.

````