Notas de quickstart
Por qué tu consulta de cuotas devuelve un tablero vacío
Un 200 con un array de eventos vacío es una respuesta válida, no un bug. Las cuatro causas comunes, y cómo probar que el tablero está vivo en dos llamadas.
Llamas al endpoint de mercados y recibes un 200 con un array de eventos vacío. Esa es una respuesta válida, no un feed roto: el sobre trae events más el cursor last, como muestra el quickstart de curl, y un array vacío simplemente significa que este tablero no tiene nada ahora mismo. El trabajo es averiguar por qué, y hay cuatro sospechosos habituales.
El tablero es real y está tranquilo
Un tablero de fútbol en vivo a las 6 de la mañana puede estar vacío porque nada se está jugando. Un tablero prepartido en una semana de off-season puede estar vacío porque nada está programado. Esta es la causa más común y la más fácil de confirmar: la misma llamada devuelve eventos unas horas después, cuando hay partidos.
Antes de depurar cualquier otra cosa, comprueba la hora y el calendario del deporte que pediste.
Pediste el deporte equivocado
El endpoint selecciona por ID de deporte, y la página inicial lista los trece IDs de deporte que el feed cotiza. Un error de tipeo, o un ID copiado del mapeo de otro sistema, devuelve un tablero vacío válido para siempre. Imprime el ID que enviaste y compáralo con la lista documentada antes de culpar al feed.
Pediste la fase equivocada
En vivo y prepartido son llamadas separadas con la misma forma, y un tablero puede estar vacío en una fase mientras está lleno en la otra. El lado prepartido toma el parámetro event_type, como lo usa el quickstart de Sheets, verificado el 2026-10-10. Si tu tablero está vacío, llama a la otra fase: la diferencia entre las dos respuestas te dice en qué tablero están tus partidos.
Te filtraste a ti mismo hasta el vacío
Si filtras eventos por liga o equipo en tu propio código, un filtro con una cadena equivocada no devuelve nada en un tablero lleno. Prueba primero la respuesta sin filtrar; si viene llena, el bug está en tu filtro, no en la API.
Pruébalo en dos llamadas
La prueba de dos llamadas resuelve todo tablero vacío. Primero, llama a un deporte que sabes que tiene partidos hoy, en vivo si se está jugando, prepartido si no. Si llegan eventos, la API y tu clave están bien, y el vacío pertenece al tablero o al momento de la primera llamada. Segundo, revisa los códigos de estado cuando las cosas fallan: las notas del quickstart de curl sobre lo que significan los otros estados distinguen un 200 vacío válido de un fallo de autenticación o de límite de tasa, que se ven completamente diferentes.
Un tablero vacío es una respuesta sobre el tablero, no sobre tu código. Prueba la viveza con un deporte ocupado, luego revisa fase, ID de deporte y tus propios filtros, en ese orden.