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

# API tous modèles GLM - Démarrage rapide Chat Completions

> - Appelez les modèles de la série GLM via le protocole OpenAI Chat Completions, le modèle précis étant choisi avec le paramètre `model`
- Les deux paramètres `model` et `messages` suffisent
- Fenêtre de contexte de 1M tokens sur toute la série, jusqu'à 131 072 tokens en sortie
- La réflexion approfondie est active par défaut sur toute la série et le raisonnement est renvoyé dans `reasoning_content`
- Pour le streaming, les appels d'outils, le réglage de l'intensité de réflexion, l'entrée image et les autres capacités, consultez la page « Référence complète »

<Note>
  **BaseURL** : la BaseURL par défaut est `https://direct.evolink.ai`, qui offre une meilleure prise en charge des modèles textuels et des connexions de longue durée. `https://api.evolink.ai` est le point de terminaison principal pour les services multimodaux et sert d'adresse de repli pour les modèles textuels.
</Note>


## OpenAPI

````yaml fr/api-manual/language-series/glm/chat-completions/chat-completions-quickstart.json POST /v1/chat/completions
openapi: 3.1.0
info:
  title: API tous modèles GLM - Démarrage rapide Chat Completions
  description: >-
    Exemple de démarrage rapide pour appeler les modèles de texte Zhipu GLM via
    l'API Chat Completions compatible OpenAI. `model` et `messages` suffisent
    pour lancer une conversation ; pour l'ensemble des paramètres, consultez la
    page « Référence complète ».
  license:
    name: MIT
  version: 1.0.0
servers:
  - url: https://direct.evolink.ai
    description: Production (recommandée)
  - url: https://api.evolink.ai
    description: URL alternative
security:
  - bearerAuth: []
tags:
  - name: Complétion de chat
    description: Points de terminaison liés à la génération de conversation par IA
paths:
  /v1/chat/completions:
    post:
      tags:
        - Complétion de chat
      summary: Conversation rapide GLM (tous modèles)
      description: >-
        - Appelez les modèles de la série GLM via le protocole OpenAI Chat
        Completions, le modèle précis étant choisi avec le paramètre `model`

        - Les deux paramètres `model` et `messages` suffisent

        - Fenêtre de contexte de 1M tokens sur toute la série, jusqu'à 131 072
        tokens en sortie

        - La réflexion approfondie est active par défaut sur toute la série et
        le raisonnement est renvoyé dans `reasoning_content`

        - Pour le streaming, les appels d'outils, le réglage de l'intensité de
        réflexion, l'entrée image et les autres capacités, consultez la page «
        Référence complète »
      operationId: glmChatCompletionsQuick
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ChatCompletionQuickRequest'
            examples:
              simple:
                summary: Appel minimal
                value:
                  model: glm-5.3
                  messages:
                    - role: user
                      content: Bonjour, présentez-vous en une phrase
              flash:
                summary: Passer au modèle léger
                description: >-
                  `glm-5.3-flash` coûte bien moins cher que `glm-5.3` et
                  convient aux appels fréquents.
                value:
                  model: glm-5.3-flash
                  messages:
                    - role: user
                      content: Expliquez en une phrase ce qu'est HTTP
              multi_turn:
                summary: Conversation multi-tours
                value:
                  model: glm-5.3
                  messages:
                    - role: user
                      content: >-
                        Recommandez un langage de programmation adapté aux
                        débutants
                    - role: assistant
                      content: >-
                        Je recommande Python : syntaxe concise et écosystème
                        riche.
                    - role: user
                      content: Combien de temps faut-il environ pour l'apprendre ?
      responses:
        '200':
          description: Génération de conversation réussie
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ChatCompletionResponse'
        '400':
          description: Paramètres de requête invalides
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: 400
                  message: Invalid request parameters
                  type: invalid_request_error
        '401':
          description: Non autorisé, jeton invalide ou expiré
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: 401
                  message: Invalid or expired token
                  type: authentication_error
        '402':
          description: Quota insuffisant, recharge requise
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: 402
                  message: Insufficient quota
                  type: insufficient_quota_error
                  fallback_suggestion: https://evolink.ai/dashboard/billing
        '403':
          description: Accès refusé
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: 403
                  message: Access denied for this model
                  type: permission_error
                  param: model
        '404':
          description: Ressource introuvable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: 404
                  message: Specified model not found
                  type: not_found_error
                  param: model
                  fallback_suggestion: glm-5.3
        '429':
          description: Limite de débit dépassée
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: 429
                  message: Rate limit exceeded
                  type: rate_limit_error
                  fallback_suggestion: retry after 60 seconds
        '500':
          description: Erreur interne du serveur
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: 500
                  message: Internal server error
                  type: internal_server_error
                  fallback_suggestion: try again later
        '502':
          description: Erreur du service en amont
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: 502
                  message: Upstream AI service unavailable
                  type: upstream_error
                  fallback_suggestion: try different model
        '503':
          description: Service temporairement indisponible
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: 503
                  message: Service temporarily unavailable
                  type: service_unavailable_error
                  fallback_suggestion: retry after 30 seconds
components:
  schemas:
    ChatCompletionQuickRequest:
      title: Chat Completion Quick Request
      type: object
      required:
        - model
        - messages
      properties:
        model:
          type: string
          description: >
            Modèle à appeler :


            | ID du modèle | Positionnement |

            |---|---|

            | `glm-5.3` | Modèle phare, progression générale sur l'ingénierie
            logicielle complexe et les tâches d'agent ; contexte de 1M |

            | `glm-5.3-flash` | Modèle multimodal léger, coût très faible,
            entrée image native ; contexte de 1M |

            | `glm-5.2` | Modèle phare de la génération précédente, raisonnement
            complexe et contexte très long ; contexte de 1M |
          enum:
            - glm-5.3
            - glm-5.3-flash
            - glm-5.2
          default: glm-5.3
          example: glm-5.3
        messages:
          type: array
          description: >-
            Liste des messages de la conversation, dans l'ordre chronologique.
            Au moins un message est requis.
          minItems: 1
          items:
            $ref: '#/components/schemas/MessageSimple'
    ChatCompletionResponse:
      type: object
      properties:
        id:
          type: string
          description: '`ID` de la tâche'
          example: chatcmpl-a6613b56-c61c-94ba-9a9f-43d4cdc7d77a
        object:
          type: string
          description: Type de réponse
          enum:
            - chat.completion
          example: chat.completion
        request_id:
          type: string
          description: >-
            `ID` de la requête (retransmis lorsque `request_id` est fourni dans
            la requête)
          example: req-7f3a2c1e8b9d4f0a
        created:
          type: integer
          description: Heure de création de la requête, horodatage `Unix` (secondes)
          example: 1777021417
        model:
          type: string
          description: Nom du modèle
          example: glm-5.3
        choices:
          type: array
          description: Liste des réponses du modèle
          items:
            $ref: '#/components/schemas/Choice'
        usage:
          $ref: '#/components/schemas/Usage'
        content_filter:
          type: array
          description: Informations relatives à la sécurité du contenu
          items:
            $ref: '#/components/schemas/ContentFilter'
    ErrorResponse:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: integer
              description: Code d'erreur de statut HTTP
            message:
              type: string
              description: Description de l'erreur
            type:
              type: string
              description: Type d'erreur
            param:
              type: string
              description: Nom du paramètre concerné
            fallback_suggestion:
              type: string
              description: Suggestion lorsqu'une erreur se produit
    MessageSimple:
      title: Message
      type: object
      required:
        - role
        - content
      properties:
        role:
          type: string
          enum:
            - system
            - user
            - assistant
          description: >-
            Rôle du message


            - `system` : invite système

            - `user` : entrée de l'utilisateur

            - `assistant` : réponse du modèle (incluse lors des conversations
            multi-tours)
          example: user
        content:
          type: string
          description: Contenu du message (texte brut)
          example: Bonjour, présentez-vous en une phrase
    Choice:
      type: object
      properties:
        index:
          type: integer
          description: Index du résultat
          example: 0
        message:
          $ref: '#/components/schemas/AssistantMessage'
        finish_reason:
          type: string
          description: >-
            Raison de fin du raisonnement


            - `stop` : fin naturelle ou déclenchement d'un mot d'arrêt

            - `tool_calls` : le modèle a invoqué une fonction (appel d'outil)

            - `length` : limite de longueur de tokens atteinte

            - `sensitive` : contenu intercepté par la modération de sécurité
            (veuillez juger et décider de retirer ou non le contenu public)

            - `network_error` : anomalie d'inférence du modèle

            - `model_context_window_exceeded` : dépassement de la fenêtre de
            contexte du modèle
          enum:
            - stop
            - tool_calls
            - length
            - sensitive
            - network_error
            - model_context_window_exceeded
          example: stop
    Usage:
      type: object
      description: Statistiques d'utilisation des tokens renvoyées à la fin de l'appel
      properties:
        prompt_tokens:
          type: integer
          description: Nombre de tokens en entrée de l'utilisateur
          example: 24
        completion_tokens:
          type: integer
          description: >-
            Nombre de tokens en sortie (y compris la partie `reasoning_tokens`
            de la chaîne de pensée)
          example: 346
        total_tokens:
          type: integer
          description: Nombre total de tokens = prompt_tokens + completion_tokens
          example: 370
        prompt_tokens_details:
          type: object
          description: Détail des tokens d'entrée
          properties:
            cached_tokens:
              type: integer
              description: Nombre de tokens ayant été trouvés en cache
              example: 0
        completion_tokens_details:
          type: object
          description: Détail des tokens de sortie
          properties:
            reasoning_tokens:
              type: integer
              description: >-
                Nombre de tokens produits par la chaîne de pensée (réflexion
                approfondie), comptabilisés dans `completion_tokens`
              example: 321
    ContentFilter:
      type: object
      description: Informations de sécurité du contenu
      properties:
        role:
          type: string
          description: |-
            Étape d'application de la sécurité

            - `assistant` : inférence du modèle
            - `user` : entrée de l'utilisateur
            - `history` : contexte historique
          enum:
            - assistant
            - user
            - history
        level:
          type: integer
          description: >-
            Niveau de gravité `0-3`, `0` indique le plus grave, `3` indique le
            plus léger
          minimum: 0
          maximum: 3
    AssistantMessage:
      type: object
      properties:
        role:
          type: string
          description: Rôle de la conversation en cours, par défaut `assistant`
          enum:
            - assistant
          example: assistant
        content:
          type:
            - string
            - 'null'
          description: >-
            Contenu textuel de la conversation


            **Remarques** : peut être `null` lors de l'appel d'outils
            (`tool_calls`), sinon renvoie le contenu de la réponse du modèle
          example: >-
            Bonjour ! Je suis GLM-5.3, et je peux vous aider à réaliser diverses
            tâches comme la conversation, le raisonnement, la rédaction, le
            code, etc.
        reasoning_content:
          type: string
          description: >-
            Contenu de la chaîne de pensée


            **Remarques** : renvoyé lorsque `thinking` est activé, enregistre le
            processus de raisonnement du modèle
          example: Laissez-moi d'abord analyser ce problème...
        tool_calls:
          type: array
          description: >-
            Informations sur les appels d'outils générés (renvoyées lorsque le
            modèle décide d'appeler un outil)
          items:
            type: object
            properties:
              id:
                type: string
                description: Identifiant unique de l'appel d'outil
              type:
                type: string
                description: Type d'appel d'outil
                enum:
                  - function
              function:
                type: object
                description: >-
                  Informations sur l'appel de fonction (contient le nom de
                  fonction généré et les arguments au format JSON)
                properties:
                  name:
                    type: string
                    description: Nom de la fonction générée
                  arguments:
                    type: string
                    description: >-
                      Chaîne au format JSON des arguments de l'appel de
                      fonction, veuillez valider les arguments avant d'appeler
                      la fonction
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: >-
        ##Toutes les API nécessitent une authentification par Bearer Token##


        **Obtenir une clé API :**


        Visitez la [page de gestion des clés
        API](https://evolink.ai/dashboard/keys) pour obtenir votre clé API


        **Ajouter à l'en-tête de requête :**

        ```

        Authorization: Bearer YOUR_API_KEY

        ```

````