Skip to main content
POST
GPT Responses (todos los modelos, parámetros completos)
BaseURL: La BaseURL predeterminada es https://direct.evolink.ai, que ofrece mejor compatibilidad con modelos de texto y admite conexiones persistentes. https://api.evolink.ai es el endpoint principal para servicios multimodales y actúa como dirección de respaldo para los modelos de texto.
Las herramientas del lado del servidor (web_search, code_interpreter, file_search, mcp) se ejecutan en el servidor, por lo que el cliente no necesita devolver sus resultados, y solo se ofrecen en esta API. El endpoint de Chat Completions solo admite llamadas a herramientas function normales.
Nota Esta API solo admite los modos síncrono y en streaming: no admite el modo asíncrono en segundo plano con background: true ni ofrece endpoints para consultar, cancelar o eliminar una respuesta por su ID. Para generaciones largas, usa stream: true para mantener la conexión abierta.La herramienta image_generation no está disponible en esta serie de modelos; para generar imágenes, utiliza las API de los modelos de la serie de imagen.
Conversaciones de varios turnos: envía el id devuelto en el turno anterior como previous_response_id del siguiente turno para continuar el contexto. Las respuestas tienen un periodo de retención; una vez caducado, ese ID deja de ser válido y la solicitud se trata como una conversación nueva. En escenarios con requisitos estrictos de exactitud del contexto, se recomienda mantener por tu cuenta el historial completo de input.

Autorizaciones

Authorization
string
header
requerido

##Todas las APIs requieren autenticación Bearer Token##

Obtener API Key:

Visita la Página de gestión de API Key para obtener tu API Key

Agregar al encabezado de la solicitud:

Cuerpo

application/json
model
enum<string>
requerido

Modelo a invocar:

Opciones disponibles:
gpt-5.6-sol,
gpt-5.6-terra,
gpt-5.6-luna,
gpt-5.5,
gpt-5.4,
gpt-5.2,
gpt-5.1
Ejemplo:

"gpt-5.6-sol"

input
requerido

Entrada del modelo: una cadena simple o un array de elementos de entrada.

El content de un elemento de entrada admite dos tipos de bloque: input_text (texto) e input_image (imagen):

Imagen

  • Envía en image_url la URL pública de la imagen
  • image_url debe ser una cadena; escribirla como { "url": "..." } devuelve 400
  • detail está al mismo nivel que image_url (no anidado dentro de él): auto (predeterminado) / low / high / original
  • La imagen debe poder descargarse, de lo contrario se devuelve 400

Resultados de herramientas

  • El array también puede incluir elementos de resultado de herramientas del turno anterior, como function_call_output

Nota Los tipos de bloque de esta API son distintos de los de la API Chat Completions (que usa text / image_url). No pueden mezclarse; usarlos mal devuelve 400.

Ejemplo:

"Search for AI news from the past week and summarize it in three sentences."

instructions
string

Instrucciones de nivel de sistema, equivalentes a insertar un mensaje de sistema al principio de input. Al continuar la conversación con previous_response_id, este parámetro no se hereda del turno anterior y debe enviarse en cada turno.

Ejemplo:

"You are a concise assistant. Answer in no more than three sentences."

stream
boolean
predeterminado:false

Indica si se devuelve una respuesta en streaming (eventos SSE que terminan con response.completed). Predeterminado false.

Ejemplo:

false

max_output_tokens
integer

Número máximo de tokens a generar (incluidos los tokens de razonamiento). Al alcanzar el límite, status es incomplete.

Ejemplo:

2048

reasoning
object

Control del razonamiento.

Los valores posibles de effort (profundidad de razonamiento) varían según el modelo:

summary (resumen del razonamiento): auto / concise / detailed, disponible en toda la serie. Al activarlo, aparece un elemento reasoning en output.

mode (modo de razonamiento): standard / pro, solo lo admite la familia gpt-5.6.

context (alcance del contexto de razonamiento): auto / current_turn / all_turns, solo lo admite la familia gpt-5.6.

Los tokens de razonamiento se facturan como tokens de salida y se contabilizan en usage.output_tokens_details.reasoning_tokens.

text
object

Control del texto de salida:

  • format: {"type": "text"} (predeterminado), {"type": "json_object"} o {"type": "json_schema", "name": "...", "schema": {...}, "strict": true} para obtener resultados estructurados
  • verbosity: low / medium / high, controla el nivel de detalle de la respuesta
tools
object[]

Declaración de herramientas. Las herramientas del lado del servidor se ejecutan en el servidor, por lo que el cliente no necesita devolver sus resultados:

También se admiten las herramientas function normales (llamadas a funciones del lado del cliente).

Nota image_generation no está disponible en esta serie de modelos; utiliza en su lugar las API de los modelos de la serie de imagen.

Ejemplo:
tool_choice

Controla la selección de la herramienta: "auto" (predeterminado) / "none" / "required", o un objeto que fija una herramienta concreta, p. ej. {"type": "web_search"}.

Opciones disponibles:
none,
auto,
required
max_tool_calls
integer

Límite máximo del número total de llamadas a herramientas permitidas en esta respuesta.

Ejemplo:

5

parallel_tool_calls
boolean
predeterminado:true

Si el modelo puede llamar a varias herramientas en paralelo dentro de un mismo turno. El valor predeterminado es true.

Nota Solo la familia gpt-5.6 y gpt-5.5 admiten establecerlo en false; en gpt-5.4 / gpt-5.2 / gpt-5.1 este parámetro no surte efecto y siempre se comporta como true.

Ejemplo:

true

previous_response_id
string

El id de la respuesta anterior, usado para encadenar conversaciones de varios turnos sin volver a enviar el historial.

Nota Debe usarse junto con store: true (el valor predeterminado). Las respuestas tienen un periodo de retención; una vez caducado, ese ID deja de ser válido y la solicitud se trata como una conversación nueva, sin heredar el contexto. En escenarios con requisitos estrictos de exactitud del contexto, se recomienda mantener por tu cuenta el historial completo de input.

Ejemplo:

"resp_0f5c2b2c20c39e8a006a7ef545443081979e478b10927984b5"

store
boolean
predeterminado:true

Si esta respuesta se conserva en el servidor; solo las respuestas conservadas pueden referenciarse mediante previous_response_id. El valor predeterminado es true.

Nota Solo la familia gpt-5.6 y gpt-5.5 admiten establecerlo en false; en gpt-5.4 / gpt-5.2 / gpt-5.1 este parámetro no surte efecto y siempre se comporta como true. Si no quieres que se conserven, elige un modelo que permita desactivarlo.

Ejemplo:

true

include
string[]

Contenido adicional que se solicita devolver en la respuesta. Valores posibles:

  • reasoning.encrypted_content
  • message.output_text.logprobs
  • web_search_call.results
  • web_search_call.action.sources
  • file_search_call.results
  • code_interpreter_call.outputs
  • message.input_image.image_url
  • computer_call_output.output.image_url
Ejemplo:
temperature
number

Temperatura de muestreo, con valores de 0 a 2. Cuanto más bajo, más determinista es la salida.

Nota En gpt-5.4 / gpt-5.2 / gpt-5.1 el valor 0 no surte efecto (se trata como si no se enviara y se aplica el valor predeterminado 1); si necesitas una salida más determinista, usa un valor mayor que 0, como 0.01.

Rango requerido: 0 <= x <= 2
Ejemplo:

0.7

top_p
number

Parámetro de muestreo por núcleo, con valores de 0 a 1. No se recomienda ajustarlo junto con temperature.

Rango requerido: 0 <= x <= 1
Ejemplo:

0.9

top_logprobs
integer

Número de tokens candidatos devueltos en cada posición, con valores de 0 a 20; debe usarse junto con include: ["message.output_text.logprobs"].

Nota Solo lo admiten la familia gpt-5.6 y gpt-5.5; los demás modelos no admiten este parámetro.

Rango requerido: 0 <= x <= 20
Ejemplo:

2

frequency_penalty
number

Penalización por frecuencia, con valores de -2 a 2, que reduce la probabilidad de contenido repetido.

Nota Solo la admite la familia gpt-5.6; los demás modelos no admiten este parámetro.

Rango requerido: -2 <= x <= 2
Ejemplo:

0.5

presence_penalty
number

Penalización por presencia, con valores de -2 a 2, que anima al modelo a tratar temas nuevos.

Nota Solo la admite la familia gpt-5.6; los demás modelos no admiten este parámetro.

Rango requerido: -2 <= x <= 2
Ejemplo:

0.5

truncation
enum<string>
predeterminado:disabled

Cómo tratar el contexto que excede la ventana: disabled (predeterminado, devuelve un error directamente) o auto (trunca automáticamente la parte central).

Opciones disponibles:
auto,
disabled
Ejemplo:

"auto"

context_management
object[]

Configuración de compactación automática para conversaciones largas, por ejemplo [{"type": "compaction", "compact_threshold": 100000}]: cuando el contexto supera el umbral, el historial se compacta automáticamente.

Nota Solo lo admite la familia gpt-5.6; los demás modelos no admiten este parámetro.

prompt_cache_key
string

Clave de agrupación de caché. Enviar el mismo valor para solicitudes que comparten el mismo prefijo mejora la tasa de aciertos de la caché de prompts.

Ejemplo:

"app-agent-v1"

prompt_cache_retention
enum<string>

Política de retención de la caché de prompts: in_memory (predeterminado) o 24h (amplía el tiempo de retención de la caché).

Opciones disponibles:
in_memory,
24h
Ejemplo:

"in_memory"

prompt
object

Hace referencia a una plantilla de prompt ya creada, con la forma {"id": "pmpt_xxx", "version": "1", "variables": {...}}.

metadata
object

Pares clave-valor personalizados que se devuelven tal cual con la respuesta, útiles para etiquetar del lado del negocio. Tanto las claves como los valores son cadenas.

Ejemplo:
safety_identifier
string

Identificador estable del usuario final, usado para el seguimiento de abusos.

Nota Solo lo admite la familia gpt-5.6; los demás modelos no admiten este parámetro.

Ejemplo:

"user-1024"

user
string

Identificador del usuario final, usado para distinguir el origen de las llamadas.

Ejemplo:

"user-1024"

Respuesta

Respuesta generada con éxito (objeto JSON, o un flujo de eventos SSE que termina con response.completed cuando stream=true)

id
string

Identificador único de esta respuesta, que puede usarse como previous_response_id en el siguiente turno

Ejemplo:

"resp_0f5c2b2c20c39e8a006a7ef545443081979e478b10927984b5"

object
enum<string>

Tipo de respuesta

Opciones disponibles:
response
Ejemplo:

"response"

status
enum<string>

Estado de la respuesta: completed para un final normal, incomplete cuando la generación no se completó por motivos como alcanzar max_output_tokens, failed cuando la generación falló

Opciones disponibles:
completed,
incomplete,
failed
Ejemplo:

"completed"

model
string

Nombre del modelo real utilizado

Ejemplo:

"gpt-5.6-sol"

created_at
integer

Marca de tiempo de creación

Ejemplo:

1786705221

output
object[]

Elementos de salida ordenados según la generación: el elemento reasoning (resumen del razonamiento / contenido de razonamiento cifrado), los elementos de llamada a herramientas (como web_search_call o code_interpreter_call) y, por último, el elemento message con el contenido output_text.

incomplete_details
object

Explica el motivo cuando status es incomplete

usage
object

Estadísticas de uso de tokens. La caché de prompts se aplica automáticamente y los tokens de entrada servidos desde caché se facturan a la tarifa de caché, más baja.

metadata
object

Pares clave-valor personalizados enviados en la solicitud, devueltos tal cual