Documentación API
Integra SquadHub.GG en tus aplicaciones con nuestra API REST
Primeros Pasos
1. Obtén una Clave API
El acceso a la API está disponible para usuarios del plan Organización. Crea una clave API en la configuración de tu cuenta.
2. Autenticación
Incluye tu clave API en el encabezado Authorization de cada solicitud:
Authorization: Bearer sk_live_your_api_key_here3. URL Base
https://squadhub.gg/api/v14. Límites de Solicitudes
100 solicitudes por minuto por clave API
Endpoints de la API
GET
/api/v1/tournamentsListar todos tus torneos
read:tournaments
Parámetros de Consulta
page(number)Número de página (por defecto: 1)limit(number)Resultados por página (por defecto: 20, máx: 100)status(string)Filtrar por estado (registration, ongoing, completed)game_id(string)Filtrar por ID de juegoRespuesta
{
"success": true,
"data": [
{
"id": "uuid",
"name": "Tournament Name",
"slug": "tournament-slug",
"status": "registration",
"format": "single_elimination",
"team_size": 5,
"max_teams": 32,
...
}
],
"pagination": {
"page": 1,
"limit": 20,
"total": 45
},
"meta": {
"timestamp": "2025-12-11T...",
"api_version": "1.0"
}
}POST
/api/v1/tournamentsCrear un nuevo torneo
write:tournaments
Cuerpo de la Solicitud
{
"name": "Summer Championship 2025",
"description": "Annual summer tournament",
"game_id": "uuid",
"format": "single_elimination",
"team_size": 5,
"max_teams": 32,
"entry_fee": 0,
"prize_pool": 1000,
"starts_at": "2025-07-01T18:00:00Z",
"registration_closes": "2025-06-25T18:00:00Z",
"rules": "Standard tournament rules apply"
}Respuesta
{
"success": true,
"data": {
"id": "uuid",
"name": "Summer Championship 2025",
"slug": "summer-championship-2025-abc123",
"status": "registration",
...
},
"meta": { ... }
}GET
/api/v1/tournaments/{id}Obtener detalles del torneo
read:tournaments
Respuesta
{
"success": true,
"data": {
"id": "uuid",
"name": "Tournament Name",
...
},
"meta": { ... }
}PATCH
/api/v1/tournaments/{id}Actualizar torneo
write:tournaments
Cuerpo de la Solicitud
{
"name": "Updated Name",
"max_teams": 64,
"status": "ongoing"
}Respuesta
{
"success": true,
"data": { ... },
"meta": { ... }
}DELETE
/api/v1/tournaments/{id}Eliminar torneo
write:tournaments
Respuesta
{
"success": true,
"data": {
"message": "Tournament deleted successfully"
},
"meta": { ... }
}GET
/api/v1/tournaments/{id}/registrationsListar inscripciones del torneo
read:registrations
Parámetros de Consulta
status(string)Filtrar por estado de pagoRespuesta
{
"success": true,
"data": [
{
"id": "uuid",
"tournament_id": "uuid",
"team_id": "uuid",
"payment_status": "complete",
"registered_at": "2025-06-20T...",
"teams": {
"id": "uuid",
"name": "Team Name",
"tag": "TAG",
"logo_url": "..."
}
}
],
"meta": { ... }
}POST
/api/v1/tournaments/{id}/registrationsInscribir un equipo al torneo
write:registrations
Cuerpo de la Solicitud
{
"team_id": "uuid"
}Respuesta
{
"success": true,
"data": {
"id": "uuid",
"tournament_id": "uuid",
"team_id": "uuid",
...
},
"meta": { ... }
}GET
/api/v1/tournaments/{id}/resultsObtener resultados y clasificaciones del torneo
read:results
Respuesta
{
"success": true,
"data": {
"tournament": {
"id": "uuid",
"format": "single_elimination",
"status": "completed"
},
"matches": [ ... ],
"standings": [
{
"position": 1,
"team_id": "uuid",
"team_name": "Champions",
"team_tag": "CHM"
}
]
},
"meta": { ... }
}Códigos de Error
400Solicitud Incorrecta
Parámetros o cuerpo de solicitud inválidos
401No Autorizado
Clave API faltante o inválida
403Prohibido
Permiso requerido faltante
404No Encontrado
Recurso no encontrado
429Demasiadas Solicitudes
Límite de solicitudes excedido
500Error del Servidor
Ocurrió un error en el servidor