Usiamo i cookie. Cookie e memoria del browser ti mantengono connesso e ricordano le tue preferenze. Con il tuo consenso misuriamo anche come viene usato il sito. Puoi in qualsiasi momento. Consulta la nostra cookie policy.

Responses

Endpoint

Responses

Usa POST /responses con il formato della Responses API di OpenAI sugli stessi modelli di chat completions, con parametri, risposta, streaming ed errori.

Provalo nel playground

L'endpoint Responses accetta il formato della Responses API di OpenAI, quindi client.responses.create(...) negli SDK ufficiali funziona senza modifiche. Gira sugli stessi modelli di Chat completions. api14 inoltra il corpo all'upstream senza modificarlo e fattura l'usage restituito.

POST https://api14.com/api/v1/responses
Authorization: Bearer sk-api14-...
Content-Type: application/json

Richiesta

ParametroTipoDescrizione
modelstring, obbligatorioId del modello, ad es. openai/gpt-5-mini.
inputstring | array, obbligatorioUna stringa di prompt o un array di elementi di input (messaggi { role, content }, function_call_output, …).
instructionsstringIstruzioni a livello di sistema.
streambooleanRiceve eventi semantici (response.output_text.delta, response.completed, …) via SSE.
max_output_tokensintegerLimite massimo di token generati.
temperature, top_pnumberControlli di campionamento.
tools, tool_choice, parallel_tool_callsStrumenti di tipo funzione. La ricerca web è disponibile anche come strumento o tramite plugins.
textobjectFormato di output, ad es. { "format": { "type": "json_schema", "name": "...", "schema": {...} } }.
reasoningobject{ "effort": "low" | "medium" | "high" }. Vedi Reasoning.
provider, models, pluginsLe stesse estensioni del gateway di chat completions.

Il gateway non memorizza le tue conversazioni, quindi passa il contesto completo in input a ogni chiamata. Le opzioni stateful come previous_response_id potrebbero non essere supportate.

import OpenAI from "openai";

const client = new OpenAI({
  baseURL: "https://api14.com/api/v1",
  apiKey: process.env.API14_API_KEY,
});

const result = await client.chat.completions.create({
  "model": "openai/gpt-5-mini",
  "messages": [
    {
      "role": "user",
      "content": "Explain vector databases in two sentences."
    }
  ]
});
console.log(result.choices[0].message.content);

L'esempio qui sopra usa chat completions. Con l'SDK Node, l'equivalente per Responses è questo:

const response = await client.responses.create({
  model: "openai/gpt-5-mini",
  input: "Write a haiku about APIs.",
});
console.log(response.output_text);

Risposta

{
  "id": "resp-1760000000-abc123",
  "object": "response",
  "created_at": 1760000000,
  "model": "openai/gpt-5-mini",
  "status": "completed",
  "output": [
    {
      "type": "message",
      "role": "assistant",
      "content": [{ "type": "output_text", "text": "Requests in flight,\nJSON answers drifting back,\none key opens all." }]
    }
  ],
  "usage": {
    "input_tokens": 14,
    "output_tokens": 22,
    "total_tokens": 36,
    "input_tokens_details": { "cached_tokens": 0 },
    "output_tokens_details": { "reasoning_tokens": 0 },
    "cost": 0.0000475
  }
}

Il gateway legge usage dall'oggetto finale, o dall'evento response.completed in streaming, e scala cost in USD dal tuo saldo.

Errori

Gli stessi di chat completions: 400 model_required, 400 invalid_json, 401 invalid_api_key, 402 insufficient_balance, 403 model_not_allowed / plan_required, 404 model_not_found, 413 payload_too_large, 429 rate_limited / daily_limit_reached, 502 upstream_unavailable. Vedi Errori.