¿Cómo usar la API de Respuestas de OpenAI?

La API de Respuestas de OpenAI explicada: /v1/responses, herramientas integradas, estado, vs. Completions de Chat, además de cómo llamarla, afirmarla y simularla en Apidog.

INEZA Felin-Michel

INEZA Felin-Michel

26 June 2026

¿Cómo usar la API de Respuestas de OpenAI?

Apidog para empresas

Despliegue local

SSO & RBAC

Conforme con SOC 2

Explorar Apidog Enterprise

Esta guía le explica cómo usar la API de respuestas de OpenAI de principio a fin: cuando termine, podrá enviar una solicitud a POST /v1/responses, leer la salida anidada que devuelve, activar herramientas integradas, mantener el estado de la conversación entre llamadas y verificar todo el contrato dentro de Apidog. La API de respuestas es la interfaz más reciente de OpenAI para generar la salida del modelo, y la guía oficial de respuestas explica por qué OpenAI ahora dirige los nuevos proyectos hacia ella. Si ya prueba el punto final anterior, puede reutilizar la mayor parte de esa configuración, de manera muy similar al flujo de trabajo en nuestra guía de prueba de la API de ChatGPT con Apidog.

botón

Lo que necesita primero

Antes de enviar una solicitud, asegúrese de tener algunas cosas en su lugar:

También ayuda saber qué hace el punto final antes de llamarlo. La API de respuestas expone un único punto final, POST /v1/responses. Usted envía un nombre de modelo y una input, y obtiene un objeto de respuesta que puede contener texto sin formato, llamadas a funciones y los resultados de herramientas alojadas por OpenAI como búsqueda web o búsqueda de archivos. Una llamada puede ejecutar un turno completo de varios pasos: el modelo decide buscar en la web, lee los resultados, luego escribe una respuesta, y la respuesta registra cada paso que tomó.

Dos cosas la distinguen de un punto final de texto sin formato. Primero, puede ejecutar herramientas integradas en el lado del servidor, por lo que no tiene que conectar su propia búsqueda o sandbox. Segundo, tiene estado por defecto. Cada respuesta obtiene un id, y puede pasar ese id a la siguiente solicitud para que OpenAI mantenga el historial de la conversación por usted. OpenAI describe la API de respuestas como la evolución de las finalizaciones de chat y la recomienda para nuevos proyectos, incorporando lecciones de la beta de la API de Asistentes. Así que en lugar de tres modelos mentales, obtiene uno.

Cómo difiere de las finalizaciones de chat

Si ha utilizado POST /v1/chat/completions, el cambio es principalmente en la forma y el estado. Las finalizaciones de chat toman una matriz de messages y devuelven choices. Usted mismo gestiona la transcripción completa, reenviando cada turno anterior en cada llamada. Las herramientas son algo que usted implementa por su cuenta.

La API de respuestas toma una input (una cadena o una lista de elementos tipados) y devuelve una output (una lista de elementos tipados). Puede almacenar el turno por usted y ejecutar herramientas alojadas sin necesidad de cableado adicional.

Aquí está la comparación práctica:

Aspecto Finalizaciones de chat API de respuestas
Punto final POST /v1/chat/completions POST /v1/responses
Cuerpo de la solicitud Matriz de messages input (cadena o elementos) + instructions
Forma de salida choices[].message Lista de output de elementos tipados
Estado de la conversación Usted reenvía el historial completo store + previous_response_id
Herramientas integradas Usted las construye web_search, file_search, code_interpreter y más
Estado Compatible, no se ha anunciado depreciación Recomendado para nuevos proyectos

Las finalizaciones de chat no van a desaparecer. OpenAI dice que seguirán siendo compatibles, y usted puede migrar un flujo de usuario a la vez en lugar de reescribir todo a la vez. La API de Asistentes es la que tiene un plazo: OpenAI la ha deprecado el 26 de agosto de 2025, con un fin de vida declarado para el 26 de agosto de 2026, por lo que el nuevo trabajo de agentes debe comenzar en Responses.

Haga su primera solicitud

Aquí hay una llamada mínima. Cambie el nombre del modelo por el que tenga acceso su cuenta y mantenga su clave fuera del comando mismo.

curl https://api.openai.com/v1/responses \
  -H "Authorization: Bearer $OPENAI_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-5.5",
    "input": "Write one sentence describing what an API mock server does.",
    "instructions": "You are a concise technical writer. No marketing language.",
    "store": true
  }'

Aquí se pasan tres cosas importantes: el model, la input (su instrucción), y las instructions (la dirección a nivel de sistema). Al establecer store en true, le dice a OpenAI que guarde la respuesta para que pueda continuar el hilo más tarde.

Lea la respuesta

Una respuesta recortada se ve así:

{
  "id": "resp_abc123",
  "object": "response",
  "status": "completed",
  "model": "gpt-5.5",
  "output": [
    {
      "type": "message",
      "role": "assistant",
      "content": [
        {
          "type": "output_text",
          "text": "A mock server returns predefined API responses so clients can be developed and tested before the real backend exists."
        }
      ]
    }
  ],
  "usage": {
    "input_tokens": 28,
    "output_tokens": 24,
    "total_tokens": 52
  }
}

Observe la estructura, porque es la parte que confunde a la gente. El texto que desea se encuentra en output[0].content[0].text, no en un campo de nivel superior. Los SDK oficiales agregan un accesor de conveniencia output_text que agrega todos los elementos de texto en una sola cadena, pero esa propiedad es una ayuda del SDK, no parte del JSON HTTP sin procesar. Cuando llama directamente al punto final, lee la ruta anidada. El id de nivel superior es lo que reutilizará para el estado, y usage.total_tokens le indica el costo de la llamada.

Añada herramientas integradas

La característica principal es que OpenAI ejecuta ciertas herramientas por usted. Las enumera en una matriz tools y el modelo decide cuándo llamarlas. Los tipos integrados verificados incluyen:

Activar una es una pequeña adición al cuerpo:

{
  "model": "gpt-5.5",
  "input": "What changed in the latest OpenAPI release? Cite sources.",
  "tools": [{ "type": "web_search" }]
}

Cuando el modelo utiliza una herramienta, la matriz output gana entradas que documentan el paso, como un elemento web_search_call junto con el message final. Esto es útil más adelante: puede verificar que una herramienta realmente se activó, no solo que regresó texto.

Continúe la conversación entre llamadas

El estado funciona a través de dos parámetros. store se establece en verdadero por defecto, lo que significa que OpenAI guarda el objeto de respuesta (retenido por 30 días por defecto) y devuelve un id. Pase ese id como previous_response_id en su próxima llamada y el modelo continuará el hilo sin que usted reenvíe la transcripción:

{
  "model": "gpt-5.5",
  "input": "Now rewrite that for a non-technical audience.",
  "previous_response_id": "resp_abc123"
}

Si prefiere mantener las cosas sin estado, o si tiene un requisito de retención de datos cero, establezca store en falso y gestione el contexto usted mismo. Para flujos de voz y audio en tiempo real y de baja latencia, OpenAI utiliza una superficie diferente; nuestra guía de la API en tiempo real de GPT cubre ese caso. Y si está orquestando agentes de varios pasos además de todo esto, los patrones se alinean con el SDK de Agentes de OpenAI.

Cómo probarlo en Apidog

Apidog es una plataforma de prueba, diseño y simulación de API. No es un SDK de OpenAI ni una biblioteca de código, por lo que no escribirá Python contra ella. Lo que sí hace: construye la solicitud HTTP sin procesar a /v1/responses, la envía y escribe aserciones sobre el JSON que regresa. Ese es exactamente el tipo de verificación de contrato que detecta una integración rota antes que sus usuarios.

Aquí está la configuración, paso a paso.

Guarde la clave en una variable de entorno

En Apidog, cree un entorno (por ejemplo, "OpenAI Producción") y agregue una variable como OPENAI_API_KEY. Mantenga el valor en el entorno, no en la solicitud, para que el secreto nunca se confirme en una colección compartida. Luego, cree una nueva solicitud POST a https://api.openai.com/v1/responses y agregue el encabezado Authorization: Bearer {{OPENAI_API_KEY}}. Apidog sustituye la variable en el momento del envío.

Establezca el cuerpo en JSON y pegue la solicitud anterior. Presione enviar. Verá el objeto de respuesta completo, formateado, con la matriz output anidada.

Afirmar sobre los campos de la respuesta

Un 200 exitoso no es prueba de que la respuesta tenga la forma que su aplicación espera. Agregue aserciones para que una regresión falle ruidosamente. Verificaciones útiles contra una respuesta a /v1/responses:

El constructor de aserciones visuales de Apidog le permite apuntar a esas rutas JSON sin escribir scripts de prueba, y nuestra plantilla de caso de prueba de API muestra cómo estructurar estas verificaciones. Guarde la solicitud en una colección y se convertirá en una prueba repetible que puede ejecutar en CI.

Simule la respuesta para el desarrollo sin conexión

Las llamadas a OpenAI cuestan dinero y necesitan acceso a la red, lo que resulta incómodo cuando está construyendo la interfaz de usuario que consume la respuesta o ejecutando pruebas en una canalización que no debería acceder a una API de pago. La función de simulación de Apidog resuelve eso. Guarde una carga útil representativa de /v1/responses como una simulación, dirija su aplicación a la URL de simulación de Apidog y su frontend obtendrá la forma JSON correcta con cero gasto de tokens. Cuando el punto final real cambia, actualiza una simulación en lugar de perseguir fallos en cada prueba. Nuestro explicación de la API simulada detalla el enfoque general.

Esta división es importante. Usted prueba contra el punto final en vivo para verificar el contrato de OpenAI, y lo simula para un desarrollo rápido, sin conexión y determinista. Ambos se ejecutan desde el mismo proyecto de Apidog.

Preguntas frecuentes

¿La API de respuestas reemplazará a las finalizaciones de chat?

No por la fuerza. OpenAI llama a Responses la evolución de Chat Completions y la recomienda para nuevos proyectos, pero Chat Completions sigue siendo compatible sin una fecha de depreciación anunciada. Puede migrar un flujo a la vez. La API de Asistentes es la que se retirará, con una fecha de finalización en 2026.

¿Cuál es la diferencia entre store y previous_response_id?

store controla si OpenAI guarda el objeto de respuesta (por defecto es true y lo retiene durante 30 días). previous_response_id es cómo vincula una nueva solicitud a una almacenada para que el modelo continúe la conversación en el lado del servidor. Los usa juntos para hilos con estado, y desactiva store cuando desea un comportamiento sin estado.

¿Qué modelos soportan la API de respuestas?

Los modelos de propósito general actuales de OpenAI están diseñados para funcionar con la API de respuestas, pero la disponibilidad depende de su cuenta y del modelo que elija. En lugar de codificar un nombre de modelo, verifique la lista de modelos en su panel de OpenAI y luego confírmela con el punto final. Enviar una solicitud rápida a través de Apidog y leer el campo model en la respuesta es una forma rápida de verificar lo que su clave puede llamar realmente.

¿Puedo probar las herramientas integradas sin escribir código?

Sí. Agregue una matriz tools al cuerpo JSON en Apidog, envíe la solicitud y afirme que el elemento de llamada de herramienta coincidente (como web_search_call) aparece en la matriz output. Está verificando el comportamiento de OpenAI a través de HTTP, por lo que no se requiere ningún SDK. Para probar las llamadas a herramientas de agente de manera más amplia, vea cómo generar colecciones de pruebas de API a partir de especificaciones OpenAPI.

Conclusión

Ahora tiene el ciclo completo: un único punto final, POST /v1/responses, que maneja texto, herramientas alojadas y estado de conversación en el servidor. Envíe una solicitud, lea la output anidada, agregue una matriz tools cuando necesite búsqueda o ejecución de código, y encadene previous_response_id para mantener un hilo de conversación. Dado que la forma es diferente a la de Chat Completions, la medida más segura es verificar el contrato usted mismo en lugar de confiar en su memoria de la API anterior.

Ahí es donde encaja Apidog. Construya la solicitud, almacene su clave como una variable de entorno, afirme sobre los campos output anidados y simule la respuesta para el trabajo sin conexión, todo en un solo proyecto. Descargue Apidog y apunte una prueba a /v1/responses para ver exactamente lo que recibe su integración. Puede realizar toda la configuración en Apidog sin escribir una sola línea de código de prueba.

botón

Practica el diseño de API en Apidog

Descubre una forma más fácil de construir y usar APIs