Referencia de API
Crear conversación de chat
/v1/chat/completionsEndpoint compatible de texto/herramientas OpenAI Chat Completions. image_url solo está disponible en modelos con entrada de imágenes. La salida es texto/herramientas; capacidades, campos opcionales y precios dependen del modelo. stream=true devuelve SSE, puede incluir uso final y termina con data: [DONE].
Autenticación y permisos
Usa tu clave actual de GloopAPI. Los modelos, capacidades y permisos dependen de su catálogo y de la documentación del endpoint.
Authorization: Bearer $GLOOP_API_KEYEsquemas de autenticación: BearerAuth
Solicitud
Cuerpo de solicitud · application/json
- Tipo
- object
- Campos obligatorios
modelmessages
Cuerpo de solicitud obligatorio
modelstringObligatorioID del modelo
messagesarrayObligatorioLista de mensajes de conversación
Campos secundarios de messages (1)
[]objectOpcionalCampos secundarios de [] (6)
rolestringObligatorioRol del mensaje
- Enumeración
["system","user","assistant","tool","developer"]
contentunionObligatorioContenido del mensaje
Rama oneOf 1
Tipo: string
Rama oneOf 2
Tipo: array
[]objectOpcionalCampos secundarios de [] (6)
typestringOpcional- Enumeración
["text","image_url","input_audio","file","video_url"]
textstringOpcionalimage_urlunionOpcionalAdmite URL/Base64 como cadena u objeto {url, detail} en wire; solo modelos con imágenes. No garantiza visión en todos los modelos.
Rama oneOf 1
URL de imagen o URL de datos Base64.
Tipo: string
input_audioobjectOpcionalfileobjectOpcionalvideo_urlstringOpcionalLa entrada wire real que lee Message.ParseContent es una cadena URL de vídeo, solo para modelos con entrada de vídeo. Un objeto {url: ...} no entra en los resultados de contenido/medición de ese parser y no se publica como contrato utilizable.
namestringOpcionalNombre del remitente
tool_callsarrayOpcionaltool_call_idstringOpcionalID de llamada de herramienta (mensajes con rol tool)
reasoning_contentstringOpcionalContenido de razonamiento
temperaturenumberOpcionalTemperatura de muestreo. Soporte y límites según modelo; sin valores predeterminados uniformes garantizados.
top_pnumberOpcionalParámetro de muestreo de núcleo. Soporte y límites según modelo; no se garantizan valores predeterminados uniformes.
nintegerOpcionalCantidad que generar. Soporte y límites según modelo; no se garantizan valores predeterminados uniformes.
streambooleanOpcionalSi la respuesta es en streaming
- Valor predeterminado
false
stream_optionsobjectOpcionalOpciones de uso en el flujo de Chat; la compatibilidad y la devolución de datos de uso dependen del modelo elegido.
Campos secundarios de stream_options (1)
include_usagebooleanOpcional
stopunionOpcionalSecuencias de parada
Rama oneOf 1
Tipo: string
max_tokensintegerOpcionalMáximo de tokens generados. Soporte y límites según modelo; no se garantizan valores predeterminados uniformes.
max_completion_tokensintegerOpcionalMáximo de tokens de compleción. Soporte y límites según modelo; no se garantizan valores predeterminados uniformes.
presence_penaltynumberOpcionalEl soporte y los límites dependen del modelo elegido; no se garantizan valores predeterminados uniformes.
frequency_penaltynumberOpcionalEl soporte y los límites dependen del modelo elegido; no se garantizan valores predeterminados uniformes.
logit_biasobjectOpcionalCampos secundarios de logit_bias (1)
[key]numberOpcional
userstringOpcionaltoolsarrayOpcionalCampos secundarios de tools (1)
[]objectOpcionalCampos secundarios de [] (2)
typestringOpcionalfunctionobjectOpcionalCampos secundarios de function (3)
namestringOpcionaldescriptionstringOpcionalparametersobjectOpcionalDefinición de parámetros en formato JSON Schema
tool_choiceunionOpcionalRama oneOf 1
Tipo: string
Enumeración:
["none","auto","required"]response_formatobjectOpcionalCampos secundarios de response_format (2)
typestringOpcional- Enumeración
["text","json_object","json_schema"]
json_schemaobjectOpcionalDefinición JSON Schema
seedintegerOpcionalEl soporte y los límites dependen del modelo elegido; no se garantizan valores predeterminados uniformes.
reasoning_effortstringOpcionalIntensidad de razonamiento (modelos compatibles). Soporte y límites según modelo, sin valores predeterminados uniformes garantizados.
modalitiesarrayOpcionalCampos secundarios de modalities (1)
[]stringOpcional- Enumeración
["text","audio"]
audioobjectOpcionalparallel_tool_callsbooleanOpcionalLas llamadas paralelas a herramientas dependen del modelo elegido. Chat acepta un booleano; Responses acepta valores JSON del protocolo compatible.
storebooleanOpcionalLa posibilidad de guardar solicitudes y respuestas depende del modelo elegido y de las capacidades admitidas del servicio. Esto no ofrece una API general de almacenamiento de conversaciones.
prompt_cache_keystringOpcionalIdentificador de correlación de caché de prompt del servicio; depende del modelo, sin garantía de acierto o soporte. Chat acepta cadenas; Responses, valores JSON del protocolo del servicio.
prompt_cache_retentionunknownOpcionalValor JSON de control de retención de caché del prompt del servicio; depende del modelo. No hay enumeración, valor predeterminado ni garantía de retención uniformes.
service_tierunknownOpcionalNivel de servicio solicitado, que puede afectar al coste. Se ignora de forma predeterminada y solo se aplica si está admitido. Los valores dependen del modelo elegido.
Respuestas y errores
HTTP 200
Respuesta creada correctamente
application/json
- Tipo
- object
- Propiedades adicionales
- false
idstringOpcionalobjectstringOpcionalcreatedintegerOpcionalmodelstringOpcionalchoicesarrayOpcionalCampos secundarios de choices (1)
[]objectOpcional- Propiedades adicionales
false
Campos secundarios de [] (3)
indexintegerOpcionalmessageobjectOpcional- Propiedades adicionales
false
Campos secundarios de message (5)
rolestringObligatorio- Enumeración
["assistant"]
Contenido textual de la respuesta.
tool_callsarrayOpcional
finish_reasonstringOpcional- Enumeración
["stop","length","tool_calls","content_filter"]
usageobjectOpcionalCampos secundarios de usage (5)
prompt_tokensintegerOpcionalTokens del prompt
completion_tokensintegerOpcionalTokens de compleción
total_tokensintegerOpcionalTotal de tokens
prompt_tokens_detailsobjectOpcionalCampos secundarios de prompt_tokens_details (4)
cached_tokensintegerOpcionaltext_tokensintegerOpcionalaudio_tokensintegerOpcionalimage_tokensintegerOpcional
completion_tokens_detailsobjectOpcionalCampos secundarios de completion_tokens_details (3)
text_tokensintegerOpcionalaudio_tokensintegerOpcionalreasoning_tokensintegerOpcional
system_fingerprintstringOpcional
text/event-stream
- Tipo
- string
- Descripción
- Flujo de eventos SSE; eventos, uso y marcadores finales dependen del endpoint. Puede haber errores dentro del flujo.
{
"type": "string",
"description": "SSE 事件流,协议事件/用量/结束符取当前接口,错误可能在流内。"
}HTTP 400
Parámetros de solicitud incorrectos
application/json
- Tipo
- object
errorobjectOpcional
HTTP 401
La clave falta, no es válida, caducó o fue revocada.
application/json
- Tipo
- object
- Campos obligatorios
error
errorobjectObligatorioCampos secundarios de error (4)
codestringOpcionalmessagestringOpcionaltypestringOpcionalrequest_idstringOpcional
HTTP 403
Permisos insuficientes de IP, cuenta, modelo o herramienta.
application/json
- Tipo
- object
- Campos obligatorios
error
errorobjectObligatorioCampos secundarios de error (4)
codestringOpcionalmessagestringOpcionaltypestringOpcionalrequest_idstringOpcional
HTTP 429
Límite de frecuencia de solicitudes
application/json
- Tipo
- object
errorobjectOpcional
HTTP 500
Fallo interno de autenticación o almacenamiento de datos.
application/json
- Tipo
- object
- Campos obligatorios
error
errorobjectObligatorioCampos secundarios de error (4)
codestringOpcionalmessagestringOpcionaltypestringOpcionalrequest_idstringOpcional