> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.6mm.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.6mm.com/_mcp/server.

# Recomendaciones de integración

> Aplica las prácticas recomendadas de 6MM para autenticación, reintentos, idempotencia, registro, gestión de tasas, monitorización, seguridad y preparación para el lanzamiento.

Utiliza estas recomendaciones como referencia para la preparación para la producción. Complementan la referencia del endpoint y ayudan a las integraciones a recuperarse de forma segura de tiempos de espera, reconexiones, solicitudes duplicadas e incidentes de credenciales.

<h2 id="authentication-and-secrets">
  Autenticación y secretos
</h2>

* Prefiere [API Key firma](/es-ES/developer-api/authentication) para programas de trading en servidor y JWT para acciones de frontend impulsadas por el usuario.
* Mantén `apiSecret` en la gestión de secretos del backend. Solo se muestra una vez y nunca debe enviarse a un navegador o cliente móvil.
* Aplicar los permisos mínimos requeridos de API Key y restringir las IPs de origen cuando el entorno de integración soporte direcciones de salida estables.
* Desactivar o eliminar inmediatamente una clave filtrada y luego revisar los registros de solicitudes antes de emitir un reemplazo.

<h2 id="request-validation-and-idempotency">
  Validación de solicitudes e idempotencia
</h2>

* Antes de realizar pedidos, consulta `/v1/public/market/symbols` y valida `tickSize`, `stepSize`, valor mínimo nominal y cantidad máxima localmente.
* Generar un `clientOrderId` único para cada escritura de orden para que las solicitudes puedan conciliarse tras una desconexión.
* Preservar el identificador original cuando un resultado HTTP es incierto. Consulta el pedido existente antes de crear una solicitud de reemplazo.
* Tratar las cantidades y precios decimales como cadenas o tipos decimales, no como valores binarios de punto flotante.

<h2 id="order-and-websocket-state">
  Orden y estado WebSocket
</h2>

* Determinar el estado final tras las operaciones de cancelación, cancelación total o modificación de [eventos de WebSocket privados](/es-ES/developer-api/websocket/private-user-channel) o una consulta REST .
* Tratar cada reconexión como una nueva sesión WebSocket y restaurar todas las suscripciones necesarias.
* Comprobar la continuidad del libro de pedidos con `endVersion`. Si aparece un hueco en la versión, descarta el libro local y suscríbete de nuevo para obtener una nueva instantánea.
* Deduplicar eventos privados de órdenes y cuentas antes de aplicarlos a saldos, posiciones o registros de socios.

<h2 id="logging-monitoring-and-retries">
  Registro, monitorización y repeticiones
</h2>

* Registrar ID de solicitud, ID de pedido del cliente, estado HTTP , código API negocio, latencia y conteo de reintentos sin registrar secretos ni tokens completos.
* Reintentar solo operaciones documentadas como seguras, usando retroceso exponencial acotado y jitter.
* Alerta en fallos de autenticación, errores de firma, respuestas de límite de tasa, bucles de reconexión WebSocket , brechas de secuencia y diferencias de conciliación de órdenes.
* Mantener sincronizados los relojes del servidor porque la autenticación y la firma dependen de las marcas de tiempo.

<h2 id="before-production">
  Antes de la producción
</h2>

* Ejercicios de tiempo de espera, petición duplicada, reconexión, rotación de claves y escenarios de reintento con webhook en un entorno no productivo.
* Asignar propietarios para la rotación de credenciales, incidentes de intercambio, fallos de webhooks y conciliación.
* Completar la [lista de verificación de lanzamiento en producción](/es-ES/resources/production-launch-checklist) y utilizar la [plantilla de solicitud de soporte](/es-ES/resources/support-request-template) cuando sea necesaria la escalada.