Crear chat completion
post/v1/chat/completions
Crea una respuesta del modelo a partir de un historial de conversación. Se admiten respuestas en flujo y sin flujo.
Compatible con la API Chat Completions de OpenAI.
Autenticación
Envía tu clave de API de OLETOKEN como token Bearer. Las claves se crean en la página Claves de API de la consola.
Authorization: Bearer $OLETOKEN_API_KEYCuerpo de la solicitud
Content-Type:application/json
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| model | string | ID del modelo | |
| messages | Message[] | Los mensajes de la conversación | |
| role | stringsystemuserassistanttooldeveloper | Rol del mensaje | |
| content | string | MessageContent[] | Contenido del mensaje | |
| type | stringtextimage_urlinput_audiofilevideo_url | — | — |
| text | string | — | — |
| image_url | object | — | — |
| url | string | — | URL de la imagen o datos en base64 |
| detail | stringlowhighauto | — | — |
| input_audio | object | — | — |
| data | string | — | Datos de audio codificados en Base64 |
| format | stringwavmp3 | — | — |
| file | object | — | — |
| filename | string | — | — |
| file_data | string | — | — |
| file_id | string | — | — |
| video_url | object | — | — |
| url | string | — | — |
| name | string | — | Nombre del remitente |
| tool_calls | ToolCall[] | — | — |
| id | string | — | — |
| type | string | — | — |
| function | object | — | — |
| name | string | — | — |
| arguments | string | — | — |
| tool_call_id | string | — | ID de la llamada a herramienta (para mensajes con el rol tool) |
| reasoning_content | string | — | Contenido de razonamiento |
| temperature | number0–2default: 1 | — | Temperatura de muestreo |
| top_p | number0–1default: 1 | — | Parámetro de muestreo nucleus |
| n | integer≥ 1default: 1 | — | Número de completaciones que se van a generar |
| stream | booleandefault: false | — | Indica si se debe transmitir la respuesta en flujo |
| stream_options | object | — | — |
| include_usage | boolean | — | — |
| stop | string | string[] | — | Secuencias de parada |
| max_tokens | integer | — | Número máximo de tokens que se van a generar |
| max_completion_tokens | integer | — | Número máximo de tokens de completación |
| presence_penalty | number-2–2default: 0 | — | — |
| frequency_penalty | number-2–2default: 0 | — | — |
| logit_bias | object | — | — |
| user | string | — | — |
| tools | Tool[] | — | — |
| type | string | — | — |
| function | object | — | — |
| name | string | — | — |
| description | string | — | — |
| parameters | object | — | Definiciones de parámetros en formato JSON Schema |
| tool_choice | string | objectnoneautorequired | — | — |
| type | string | — | — |
| function | object | — | — |
| name | string | — | — |
| response_format | ResponseFormat | — | — |
| type | stringtextjson_objectjson_schema | — | — |
| json_schema | object | — | Definición de JSON Schema |
| seed | integer | — | — |
| reasoning_effort | stringlowmediumhigh | — | Esfuerzo de razonamiento (para modelos que admiten razonamiento) |
| modalities | string[] | — | — |
| audio | object | — | — |
| voice | string | — | — |
| format | string | — | — |
Respuestas
200Respuesta creada
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| id | string | — | — |
| object | string | — | — |
| created | integer | — | — |
| model | string | — | — |
| choices | object[] | — | — |
| index | integer | — | — |
| message | Message | — | — |
| role | stringsystemuserassistanttooldeveloper | Rol del mensaje | |
| content | string | MessageContent[] | Contenido del mensaje | |
| type | stringtextimage_urlinput_audiofilevideo_url | — | — |
| text | string | — | — |
| image_url | object | — | — |
| url | string | — | URL de la imagen o datos en base64 |
| detail | stringlowhighauto | — | — |
| input_audio | object | — | — |
| data | string | — | Datos de audio codificados en Base64 |
| format | stringwavmp3 | — | — |
| file | object | — | — |
| filename | string | — | — |
| file_data | string | — | — |
| file_id | string | — | — |
| video_url | object | — | — |
| url | string | — | — |
| name | string | — | Nombre del remitente |
| tool_calls | ToolCall[] | — | — |
| id | string | — | — |
| type | string | — | — |
| function | object | — | — |
| name | string | — | — |
| arguments | string | — | — |
| tool_call_id | string | — | ID de la llamada a herramienta (para mensajes con el rol tool) |
| reasoning_content | string | — | Contenido de razonamiento |
| finish_reason | stringstoplengthtool_callscontent_filter | — | — |
| usage | Usage | — | — |
| prompt_tokens | integer | — | Número de tokens del prompt |
| completion_tokens | integer | — | Número de tokens de completación |
| total_tokens | integer | — | Número total de tokens |
| prompt_tokens_details | object | — | — |
| cached_tokens | integer | — | — |
| text_tokens | integer | — | — |
| audio_tokens | integer | — | — |
| image_tokens | integer | — | — |
| completion_tokens_details | object | — | — |
| text_tokens | integer | — | — |
| audio_tokens | integer | — | — |
| reasoning_tokens | integer | — | — |
| system_fingerprint | string | — | — |
400Parámetros de solicitud no válidos
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| error | object | — | — |
| message | string | — | Mensaje de error |
| type | string | — | Tipo de error |
| param | string | null | — | El parámetro implicado |
| code | string | null | — | Código de error |
429Se superó el límite de solicitudes
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| error | object | — | — |
| message | string | — | Mensaje de error |
| type | string | — | Tipo de error |
| param | string | null | — | El parámetro implicado |
| code | string | null | — | Código de error |
Solicitud de ejemplo
curl -X POST 'https://api.oletoken.ai/v1/chat/completions' \
-H "Authorization: Bearer $OLETOKEN_API_KEY" \
-H 'Content-Type: application/json' \
-d '{
"model": "gpt-4",
"messages": []
}'
