HiAPI
Blog

Tutoriel

HiAPI invalid_request : comment corriger une mauvaise utilisation de l'endpoint du modèle ?

Vérifiez l'ID du modèle, les endpoints pris en charge et le corps de la requête, distinguez les erreurs d'endpoint, de paramètres et de clé, avec un code de diagnostic en lecture seule.

Oct 25, 2026
HiAPI invalid_request : comment corriger une mauvaise utilisation de l'endpoint du modèle ?

TL;DR

invalid_request est une erreur de type requête. Un mauvais choix d'endpoint est une cause possible ; il faut aussi vérifier le corps de la requête et l'ID du modèle à la lumière du message d'erreur. Vérifiez d'abord les endpoints pris en charge par le modèle, puis organisez les champs selon cet endpoint.

Avant d'exécuter l'exemple Python, lancez python -m pip install requests dans le même environnement Python.

Comment choisir parmi les trois endpoints

Voici les trois endpoints de génération couramment utilisés par HiAPI ; pour savoir quels endpoints un modèle donné prend en charge, consultez sa page modèle et le catalogue public des modèles.

Endpoint Points clés du corps de requête Usage
/v1/tasks model + input Tâches d'image, de vidéo et d'audio
/v1/chat/completions model + messages Modèles prenant en charge le protocole de chat
/v1/responses model + input Modèles prenant en charge Responses

Les valeurs task, openai et openai-response de supported_endpoint_types correspondent respectivement aux trois endpoints ci-dessus. Le catalogue peut aussi contenir d'autres types de protocoles ; si vous rencontrez un type non listé, ouvrez la documentation d'intégration du modèle concerné.

Vérification en lecture seule des endpoints pris en charge par le modèle

Définissez HIAPI_MODEL sur l'ID complet du modèle indiqué sur sa page, puis exécutez le script suivant. Il ne fait que lire le catalogue public et ne soumet aucune tâche de génération.

import os
import requests

model_id = os.environ["HIAPI_MODEL"]
response = requests.get("https://api.hiapi.ai/api/pricing", timeout=30)
response.raise_for_status()
models = response.json()["data"]
model = next((m for m in models if m.get("model_name") == model_id), None)
if model is None:
    raise SystemExit("Model not present in the public catalog; check its exact model ID")
print("model:", model["model_name"])
print("supported_endpoint_types:", model.get("supported_endpoint_types", []))

Quatre étapes pour corriger la requête

  1. Vérifiez le domaine et le chemin réellement appelés, et assurez-vous que l'URL de base ne concatène pas /v1 en double.
  2. Comparez avec l'ID complet et les endpoints pris en charge indiqués sur la page du modèle ; le nom d'affichage ne remplace pas directement l'ID de modèle de l'API.
  3. Ajustez également le corps de la requête : les messages du chat ne peuvent pas être copiés tels quels dans l'endpoint de tâche ; les paramètres de tâche doivent être placés dans input.
  4. Relisez le statut HTTP et les champs d'erreur renvoyés ; en cas d'échec persistant, conservez l'ID de requête, l'ID de modèle, le chemin de l'endpoint et le corps de requête expurgé.

Distinguer les erreurs d'endpoint, de paramètres et de clé

Symptôme Étape suivante
400, requête jugée invalide Vérifiez l'endpoint, le JSON, les champs obligatoires et les types de champs
Message indiquant explicitement que le protocole actuel n'est pas pris en charge Utilisez l'endpoint déclaré comme pris en charge par le modèle
401, clé invalide ou absente Vérifiez l'en-tête Bearer et les variables d'environnement d'exécution
L'endpoint de tâche renvoie MODEL_UNAVAILABLE Vérifiez l'ID du modèle, son état de disponibilité et les droits d'accès du compte

La réponse de refus de l'endpoint de tâche peut contenir un error_code de premier niveau ; d'autres endpoints peuvent utiliser error.code. Ne vous fiez pas à un seul champ pour juger de toutes les erreurs.

Questions fréquentes

invalid_request signifie-t-il toujours un mauvais choix d'endpoint ?

Pas nécessairement. Des champs de requête, un JSON ou l'absence de champs obligatoires peuvent aussi entraîner le rejet de la requête. Lisez d'abord le message, puis vérifiez l'endpoint.

Suffit-il de modifier l'URL pour corriger le problème ?

Il faut aussi adapter le corps de la requête à l'endpoint correspondant. La structure des messages diffère de celle de input de l'endpoint de tâche.

Que faire si le modèle n'est pas dans le catalogue public ?

Vérifiez l'ID complet, la page du modèle et la portée de visibilité du compte ; ne le remplacez pas automatiquement par un modèle au nom similaire.

Ce code de vérification génère-t-il du contenu ?

Non. Le code ne fait que lire le catalogue public ; le processus de tâche ne démarre qu'à la soumission effective d'une requête de génération.

Poursuivre le dépannage

Articles similaires

Voir tous les articles →

Commencez avec des artefacts IA persistants

Obtenez votre clé API et appelez des modèles d'image, de vidéo et d'audio via une API unique basée sur les tasks.

Lire la documentation de l'API