HiAPI
Blog

Tutoriale

HiAPI invalid_request: come correggere l'uso errato dell'interfaccia del modello?

Verifica model ID, endpoint supportati e corpo della richiesta, distingui errori di endpoint, parametri e chiave, con codice diagnostico in sola lettura.

Oct 25, 2026
HiAPI invalid_request: come correggere l'uso errato dell'interfaccia del modello?

TL;DR

invalid_request è un errore di tipo richiesta. Un endpoint scelto male è una possibile causa, ma occorre anche controllare il corpo della richiesta e il model ID in base al messaggio di errore. Verifica prima gli endpoint supportati dal modello, poi struttura i campi secondo quell'endpoint.

Prima di eseguire l'esempio Python, esegui python -m pip install requests nello stesso ambiente Python.

Come scegliere tra i tre endpoint

Di seguito i tre endpoint di generazione più usati di HiAPI; per sapere quali endpoint supporta un singolo modello, consulta la sua pagina modello e il catalogo pubblico dei modelli.

Endpoint Aspetti chiave del corpo della richiesta Utilizzo
/v1/tasks model + input Attività di immagini, video e audio
/v1/chat/completions model + messages Modelli che supportano il protocollo chat
/v1/responses model + input Modelli che supportano Responses

I valori task, openai e openai-response in supported_endpoint_types corrispondono rispettivamente ai tre endpoint sopra. Il catalogo può contenere anche altri tipi di protocollo; se incontri un tipo non elencato, apri la documentazione di integrazione di quel modello.

Verifica in sola lettura degli endpoint supportati dal modello

Imposta HIAPI_MODEL con l'ID completo del modello indicato nella pagina del modello ed esegui lo script seguente. Legge solo il catalogo pubblico e non invia attività di generazione.

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", []))

Quattro passi per correggere la richiesta

  1. Controlla il dominio e il percorso della richiesta effettiva, verificando che il Base URL non concateni /v1 in modo duplicato.
  2. Confronta l'ID completo e gli endpoint supportati nella pagina del modello; il nome visualizzato non può sostituire direttamente il model ID dell'API.
  3. Adatta di conseguenza il corpo della richiesta: i messages della chat non si possono copiare tali e quali nell'endpoint delle attività; i parametri dell'attività vanno inseriti in input.
  4. Rileggi lo stato HTTP e i campi di errore restituiti; se il problema persiste, conserva il request ID, il model ID, il percorso dell'endpoint e il corpo della richiesta con i dati sensibili oscurati.

Distinguere errori di endpoint, parametri e chiave

Sintomo Prossimo passo
400, richiesta non valida Controlla endpoint, JSON, campi obbligatori e tipi dei campi
Messaggio esplicito di protocollo non supportato Usa l'endpoint dichiarato come supportato dal modello
401, chiave non valida o mancante Controlla l'header Bearer e le variabili d'ambiente a runtime
L'endpoint delle attività restituisce MODEL_UNAVAILABLE Controlla il model ID, lo stato di disponibilità e i permessi di accesso dell'account

La risposta di rifiuto dell'endpoint delle attività può includere un error_code di primo livello; altri endpoint possono usare error.code. Non giudicare tutti gli errori basandoti su un solo campo.

Domande frequenti

invalid_request indica sempre un endpoint scelto male?

Non necessariamente. Anche campi della richiesta, JSON o campi obbligatori mancanti possono causare il rifiuto. Leggi prima il message, poi controlla l'endpoint.

Basta cambiare l'URL per risolvere?

Devi anche adattare il corpo della richiesta all'endpoint corrispondente. messages e input dell'endpoint delle attività hanno strutture diverse.

Cosa fare se il modello non è nel catalogo pubblico?

Verifica l'ID completo, la pagina del modello e l'ambito di visibilità dell'account; non sostituirlo automaticamente con un modello dal nome simile.

Questo codice di verifica genera contenuti?

No. Il codice legge solo il catalogo pubblico; il flusso di attività inizia solo quando si invia effettivamente una richiesta di generazione.

Approfondimenti

Inizia a creare con artefatti IA persistenti

Ottieni la tua chiave API e chiama modelli di immagini, video e audio tramite un'unica API basata sui task.

Leggi la documentazione API