Chat Completions de OpenAI (HTTP)
El Gateway de OpenClaw puede servir un pequeño endpoint de Chat Completions compatible con OpenAI. Este endpoint está deshabilitado por defecto. Habilítelo primero en la configuración.POST /v1/chat/completions- Mismo puerto que el Gateway (multiplex WS + HTTP):
http://<gateway-host>:<port>/v1/chat/completions
openclaw agent), por lo que el enrutamiento, los permisos y la configuración coinciden con su Gateway.
Autenticación
Usa la configuración de autenticación del Gateway. Envíe un token bearer:Authorization: Bearer <token>
- Cuando
gateway.auth.mode="token", usegateway.auth.token(oOPENCLAW_GATEWAY_TOKEN). - Cuando
gateway.auth.mode="password", usegateway.auth.password(oOPENCLAW_GATEWAY_PASSWORD). - Si
gateway.auth.rateLimitestá configurado y se producen demasiados fallos de autenticación, el endpoint devuelve429conRetry-After.
Elección de un agente
No se requieren encabezados personalizados: codifique el id del agente en el campomodel de OpenAI:
model: "openclaw:<agentId>"(ejemplo:"openclaw:main","openclaw:beta")model: "agent:<agentId>"(alias)
x-openclaw-agent-id: <agentId>(predeterminado:main)
x-openclaw-session-key: <sessionKey>para controlar completamente el enrutamiento de la sesión.
Habilitar el endpoint
Establezcagateway.http.endpoints.chatCompletions.enabled en true:
Deshabilitar el endpoint
Establezcagateway.http.endpoints.chatCompletions.enabled en false:
Comportamiento de la sesión
Por defecto, el endpoint es sin estado por solicitud (se genera una nueva clave de sesión en cada llamada). Si la solicitud incluye una cadenauser de OpenAI, el Gateway deriva una clave de sesión estable a partir de ella, de modo que las llamadas repetidas pueden compartir una sesión del agente.
Streaming (SSE)
Establezcastream: true para recibir Server-Sent Events (SSE):
Content-Type: text/event-stream- Cada línea de evento es
data: <json> - El stream termina con
data: [DONE]