Crear una finalización de chat
API Chat Completions compatible con OpenAI. Establece stream=true para recibir Server-Sent Events. El envoltorio de respuesta y de error sigue la forma de Chat Completions compatible con OpenAI.
- Tipo: stringX
- Felo - Channel Códigos de canal públicos separados por comas y en orden. Omite este encabezado para usar default; default debe usarse solo. En modo monedero, default recorre en orden inverso el orden efectivo de canales públicos del modelo, omite los canales no publicados o no disponibles y selecciona el proveedor del primer canal disponible. Incluye los endpoints disponibles de ese proveedor con el mismo ID de modelo upstream y el mismo nivel de servicio. Los canales explícitos se validan en el orden indicado por el cliente; solo se envía el grupo de proveedores del primer canal. No hay respaldo automático a otros proveedores. Los encabezados de proveedor heredados no pueden anular el enrutamiento por canales.
- Tipo: array object[] · ChatMessage[] 1…messagesobligatorio
- contentadmite nullobligatorio
- Tipo: string
- roleTipo: string enumobligatoriovalores
- system
- developer
- user
- assistant
- tool
- nameTipo: string
- toolTipo: string
_call _id - toolTipo: array object[]
_calls - propertyTipo: anything
Name
- propertyTipo: anything
Name
- Tipo: stringmodelobligatorio
- Tipo: integermax
_completion _tokens mín.:1Integer numbers.
- Tipo: integermax
_tokens mín.:1Integer numbers.
- Tipo: integernmín.:1
Integer numbers.
- Tipo: objectresponse
_format - propertyTipo: anything
Name
- Tipo: string | nullservice
_tier Actualmente solo se admite default (estándar). Si se omite, es null, es un alias o es una cadena no admitida, se usa default; otros tipos devuelven HTTP 400. Los canales y precios configurados no cambian. Las API de texto envían el valor estándar del proveedor; las API Decisions y de generación omiten el campo upstream.
- admite nullstop
- Tipo: string
- Tipo: booleanstream
- Tipo: numbertemperaturemín.:0
- tool
_choice - Tipo: string
- Tipo: array object[]tools
- propertyTipo: anything
Name
- Tipo: anythingproperty
Name
- Tipo: numbertop
_p mín.:0máx.:1 - Tipo: stringuser
- Tipo: anythingproperty
Name
- Tipo: object · ChatCompletionResponse200
Finalización de chat o respuesta en streaming
- Tipo: array object[] · ChatChoice[]choicesobligatorio
- finishTipo: string | null
_reason - indexTipo: integer
Integer numbers.
- logprobsTipo: object | null
- propertyTipo: anything
Name
- messageTipo: object · ChatMessage
- contentadmite nullobligatorio
- Tipo: string
- roleTipo: string enumobligatoriovalores
- system
- developer
- user
- assistant
- tool
- nameTipo: string
- toolTipo: string
_call _id - toolTipo: array object[]
_calls - propertyTipo: anything
Name
- propertyTipo: anything
Name
- propertyTipo: anything
Name
- Tipo: stringidobligatorio
- Tipo: stringobjectobligatorio
Normalmente chat.completion en respuestas sin streaming.
- Tipo: integer Formato: int64created
Signed 64-bit integers (long type).
- Tipo: stringmodel
- Tipo: stringsystem
_fingerprint - Tipo: object · Usageusage
Objeto de uso del proveedor. Los campos varían según el endpoint y el proveedor.
- propertyTipo: anything
Name
- Tipo: anythingproperty
Name
- Tipo: object · OpenAIErrorResponse400
Solicitud, modelo o asignación de proveedor no válidos
Envoltorio de error compatible con OpenAI. El Router puede incluir code y message sin todos los campos upstream opcionales.
- Tipo: objecterrorobligatorio
- messageTipo: stringobligatorio
- codeTipo: string | null
- paramTipo: string | null
- typeTipo: string
Tipo de error compatible con OpenAI cuando se proporciona.
- propertyTipo: anything
Name
- Tipo: anythingproperty
Name
application/json - Tipo: object · OpenAIErrorResponse401
Clave de API de Felo no válida o ausente
Envoltorio de error compatible con OpenAI. El Router puede incluir code y message sin todos los campos upstream opcionales.
- Tipo: objecterrorobligatorio
- messageTipo: stringobligatorio
- codeTipo: string | null
- paramTipo: string | null
- typeTipo: string
Tipo de error compatible con OpenAI cuando se proporciona.
- propertyTipo: anything
Name
- Tipo: anythingproperty
Name
application/json - Tipo: object · OpenAIErrorResponse402
Saldo insuficiente
Envoltorio de error compatible con OpenAI. El Router puede incluir code y message sin todos los campos upstream opcionales.
- Tipo: objecterrorobligatorio
- messageTipo: stringobligatorio
- codeTipo: string | null
- paramTipo: string | null
- typeTipo: string
Tipo de error compatible con OpenAI cuando se proporciona.
- propertyTipo: anything
Name
- Tipo: anythingproperty
Name
application/json - Tipo: object · OpenAIErrorResponse403
La cuenta no tiene permiso para usar el modelo. Los modelos deshabilitados también se rechazan antes de las llamadas upstream. Las solicitudes y tareas ya aceptadas continúan.
Envoltorio de error compatible con OpenAI. El Router puede incluir code y message sin todos los campos upstream opcionales.
- Tipo: objecterrorobligatorio
- messageTipo: stringobligatorio
- codeTipo: string | null
- paramTipo: string | null
- typeTipo: string
Tipo de error compatible con OpenAI cuando se proporciona.
- propertyTipo: anything
Name
- Tipo: anythingproperty
Name
application/json - Tipo: object · OpenAIErrorResponse429
Se alcanzó el límite de gasto o de solicitudes
Envoltorio de error compatible con OpenAI. El Router puede incluir code y message sin todos los campos upstream opcionales.
- Tipo: objecterrorobligatorio
- messageTipo: stringobligatorio
- codeTipo: string | null
- paramTipo: string | null
- typeTipo: string
Tipo de error compatible con OpenAI cuando se proporciona.
- propertyTipo: anything
Name
- Tipo: anythingproperty
Name
application/json - Tipo: object · OpenAIErrorResponse502
Error en la solicitud al proveedor upstream
Envoltorio de error compatible con OpenAI. El Router puede incluir code y message sin todos los campos upstream opcionales.
- Tipo: objecterrorobligatorio
- messageTipo: stringobligatorio
- codeTipo: string | null
- paramTipo: string | null
- typeTipo: string
Tipo de error compatible con OpenAI cuando se proporciona.
- propertyTipo: anything
Name
- Tipo: anythingproperty
Name
application/json - Tipo: object · OpenAIErrorResponse503
El proveedor o el servicio de facturación no está disponible
Envoltorio de error compatible con OpenAI. El Router puede incluir code y message sin todos los campos upstream opcionales.
- Tipo: objecterrorobligatorio
- messageTipo: stringobligatorio
- codeTipo: string | null
- paramTipo: string | null
- typeTipo: string
Tipo de error compatible con OpenAI cuando se proporciona.
- propertyTipo: anything
Name
- Tipo: anythingproperty
Name
application/json
curl https://openapi.felo.ai/api/v1/chat/completions \
--request POST \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer YOUR_SECRET_TOKEN' \
--data '{
"model": "gpt-5.5",
"messages": [
{
"role": "user",
"content": "Write a one-sentence greeting."
}
],
"stream": false
}'
{
"id": "string",
"object": "string",
"created": 1,
"model": "string",
"choices": [
{
"index": 1,
"message": {
"role": "system",
"content": "string",
"name": "string",
"tool_call_id": "string",
"tool_calls": [
{
"additionalProperty": "anything"
}
],
"additionalProperty": "anything"
},
"finish_reason": null,
"logprobs": null,
"additionalProperty": "anything"
}
],
"usage": {
"additionalProperty": "anything"
},
"system_fingerprint": "string",
"additionalProperty": "anything"
}