Skip to main content
La API REST de 4casters te permite iniciar sesión, consultar juegos y el libro de órdenes, colocar / editar / cancelar órdenes y leer tu historial de apuestas de forma programática. Es la misma API que impulsa la aplicación web de 4casters.

URL base

Todos los endpoints de esta sección tienen como raíz:

Convenciones

  • Transporte: solo HTTPS.
  • Codificación: JSON. Envía Content-Type: application/json en cada solicitud que tenga cuerpo.
  • Envoltorio de respuesta: Con un par de excepciones bien marcadas (/affiliate/getAffiliateCommission, /exchange/getOddsForAveragePrice), cada respuesta exitosa va envuelta: { "data": <payload> }.
  • Identificadores: los ids de juego, de participante y de orden son cadenas ObjectID de MongoDB (hex de 24 caracteres).
  • Cuotas: todas las cuotas están en formato americano (negativas para favoritos, positivas para no favoritos) salvo que se indique lo contrario.
  • Tiempo: todas las marcas de tiempo son ISO 8601 con Z (UTC).

Autenticación

Casi todos los endpoints requieren autenticación. Inicia sesión una vez con POST /user/login y luego envía el token de autenticación devuelto en cada solicitud: consulta Autenticación para más detalles.

Errores por orden frente a errores HTTP

Los endpoints de “colocar” y “editar” aceptan lotes y devuelven resultados por orden. Una respuesta HTTP 200 exitosa puede contener fallos individuales de órdenes dentro de data.createdSessions[i]. Consulta la forma de error por orden en la página de cada endpoint. Los errores a nivel HTTP (4xx, 5xx) se devuelven como { "error": "<message>" }.

Limitación de tasa

Aplican tres capas de limitación de tasa:
  • Global, por IP — cada solicitud a la API cuenta contra un presupuesto por IP de 3,000 solicitudes por ventana móvil de 60 segundos (unas ~50 solicitudes/segundo sostenidas). Superarlo devuelve 429 con un encabezado Retry-After (segundos) y el cuerpo { "error": "Too many requests. Please try again later." }.
  • Rutas de autenticación (/user/login, restablecimiento de contraseña, registro) tienen un throttling adicional por IP y por cuenta.
  • Rutas de colocar / editar / cancelar están además limitadas por cuenta.
Los endpoints de lectura no tienen límite por cuenta: solo aplica el techo global por IP.

Tiempos de espera

Las solicitudes que tardan más de 15 segundos en el servidor se abortan y devuelven 503 con el cuerpo { "error": { "message": "Network Error", "code": 503 } }.

Actualizaciones en tiempo real

La API REST se complementa con la API de streaming WebSocket para ticks del libro de órdenes en tiempo real y eventos de cruce / liquidación por cuenta. El token de autenticación que devuelve /user/login sirve para ambas.

Índice de endpoints

Autenticación

Inicia sesión y obtén un token de autenticación.

Usuario

Información de cuenta, saldo, apuestas y órdenes.

Órdenes

Coloca, edita, consulta y cancela órdenes.

Mercados

Explora ligas, juegos, participantes y el libro de órdenes.

Afiliados

Comisión de afiliado.

Colección heredada de Postman

La documentación previa vivía como una colección de Postman. Se conserva como referencia, pero estas docs de Mintlify son ahora la fuente de verdad: la colección de Postman puede quedar atrás en endpoints, parámetros o formas de respuesta nuevos.

4Casters API — colección de Postman

Ver la documentación heredada de Postman