Misiones

Listar misiones activas y su progreso.

GET/api/v1/missions

Lista las misiones activas visibles para el cliente, incluyendo progreso de cada objetivo.

Query params

ParametroTipoDescripcion

Se requiere clientId o externalUserId.

Ejemplo

curl -G https://southgames.ai/api/v1/missions \
  -H "Authorization: Bearer sg_live_xxx" \
  -H "X-Org-Id: mi-empresa" \
  -d "externalUserId=user_123"

Respuesta

{
  "missions": [
    {
      "id": "mission_abc",
      "name": "Jugador frecuente",
      "description": "Juega 5 veces para ganar 100 puntos",
      "iconUrl": null,
      "type": "single",
      "objectives": [
        {
          "id": "obj_1",
          "description": "Juega 5 partidas",
          "action": "game_play",
          "targetCount": 5,
          "current": 2,
          "completed": false
        }
      ],
      "rewards": [
        { "type": "points", "amount": 100 }
      ],
      "autoClaimReward": true,
      "startsAt": "2026-03-01T00:00:00.000Z",
      "endsAt": "2026-03-31T23:59:59.000Z",
      "status": "active",
      "completedAt": null,
      "claimedAt": null
    }
  ]
}

Tipos de mision

TipoDescripcion
singleSe completa una vez
multi_stepObjetivos secuenciales (uno a la vez)
dailySe resetea cada dia
weeklySe resetea cada semana

Acciones de objetivo

AccionDescripcion
game_playJugar una partida
game_winGanar una partida
code_redeemCanjear un codigo
custom_eventTrackear un evento custom
points_spendGastar puntos
referral_completeCompletar un referido
daily_loginLogin diario (heartbeat)
reach_tierAlcanzar un tier especifico

Filtros automaticos

  • Solo se muestran misiones con status: "active".
  • Se respeta la ventana de fechas (startsAt / endsAt).
  • Se valida el tier requerido si aplica (requiredTierId).