> ## Documentation Index
> Fetch the complete documentation index at: https://tournaments-partners.exuratech.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Configurar un torneo

> Compañía, conexión, fechas, balance inicial, métrica, reglas, premios y enlaces.

## Preparación

Un administrador con acceso a la compañía debe contar con una conexión MT5 activa. La cuenta se crea en esa conexión al inscribir a cada usuario. Confirma que `mt5_group`, moneda, apalancamiento y balance inicial correspondan a las reglas comerciales acordadas. La ruta de creación del torneo requiere bearer administrativo; la clave CRM de competencias no sirve.

Desde el panel puedes usar `/admin/tournaments`; desde un backend propio, `POST /api/v1/tournaments`. La respuesta contiene `id`, `uuid`, `url` privado y `public_url` del embed. Los enlaces se construyen con `FRONTEND_URL` del servidor; antes de compartirlos verifica que el origen sea accesible fuera de la red interna.

## Campos de creación

| Campo | Uso actual |
| - | - |
| `company_id`, `name`, `slug` | Identidad y propiedad del torneo; obligatorios |
| `ranking_metric` | `equity` (predeterminado) o `balance` |
| `status` | `AWAIT` por defecto; ciclo `AWAIT` → `LIVE` → `FINISHED` |
| `initial_balance`, `currency`, `mt5_group`, `leverage` | Configuración de cuentas creadas para el torneo |
| `registration_start_at`, `registration_end_at` | Ventana de inscripción; enviar ambos o ninguno al crear |
| `competition_start_at`, `competition_end_at` | Ventana de trading del torneo |
| `max_participants` | Cupo que se comprueba contra cuentas MT5 del torneo |
| `min_trading_days`, `max_daily_drawdown_percent`, `max_total_drawdown_percent`, `profit_target_percent`, `rules_json` | Reglas/configuración publicadas; verifica por separado cualquier evaluación automática de estas condiciones |
| `prizes` | Tramos de puestos, tipo, monto, moneda y descripción |

Todas las fechas enviadas a la API deben incluir `Z` u offset. El backend las convierte a UTC. La creación permite omitir la pareja de fechas de inscripción para el flujo histórico de dos pasos, pero sin ventana configurada **no se puede inscribir**. Configúrala con `POST` o `PUT /api/v1/tournaments/{uuid}/registration-dates`.

```json theme={"theme":{"light":"github-light","dark":"github-dark"}}
{
  "company_id": 1,
  "name": "Torneo de ejemplo",
  "slug": "torneo-ejemplo",
  "ranking_metric": "equity",
  "initial_balance": "50000.00",
  "currency": "USD",
  "mt5_group": "<grupo-configurado>",
  "competition_start_at": "2026-11-01T12:00:00Z",
  "competition_end_at": "2026-11-03T12:00:00Z",
  "registration_start_at": "2026-10-25T12:00:00Z",
  "registration_end_at": "2026-11-02T12:00:00Z",
  "max_participants": 100,
  "prizes": [{"rank_from": 1, "rank_to": 1, "prize_type": "CASH", "amount": "500.00", "currency": "USD"}]
}
```

Este ejemplo usa un grupo marcador; sustitúyelo por uno válido del servidor. El backend no debe anunciar una creación exitosa hasta que la conexión, el grupo y el flujo de cuenta hayan sido probados con una inscripción de prueba.

## Cambios posteriores

`PATCH /api/v1/tournaments/{id}` acepta campos parciales. Cuando incluye `prizes`, reemplaza la lista completa; omitirla la conserva. `PUT /api/v1/tournaments/{uuid}/registration-dates` crea o actualiza la ventana. `DELETE /api/v1/tournaments/{id}` rechaza `409` si ya hay cuentas MT5 asociadas. Revisa las implicaciones operativas antes de cambiar fechas de un torneo activo; el endpoint de edición no equivale a un flujo de reversión de operaciones MT5.

> **[Referencia de torneos](/broker/torneos-api)**
>
> Consulta permisos y rutas exactas de configuración.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.