# Inicio rápido

Este inicio rápido supone que ya ha instalado `ml-cli` (consulte [Descarga e instalación](/es/cli#download--installation)) y que el cliente MoreLogin se está ejecutando localmente.

## 1. Verifique el servicio

Confirme que se puede acceder al `httpServer` local:

```bash
ml-cli status
```

Si MoreLogin no se está ejecutando, la CLI fallará durante la resolución del puerto.

## 2. Autenticar

Si el punto final requiere autenticación, inicie sesión primero:

```bash
ml-cli login --api-id your-api-id --api-key your-api-key
```

También puedes proporcionar el token a través de una variable de entorno:

```bash
export ML_API_KEY=your-token
ml-cli env list
```

## 3. Listar perfiles de navegador

Listar entornos de navegador:

```bash
ml-cli env list
ml-cli env list --page-no 1 --page-size 20
ml-cli env list --env-name test
```

## 4. Inicie un perfil de navegador

Puede iniciar un entorno con `id`, `envId` o `uniqueId/sn`:

```bash
ml-cli env start --id 1001
ml-cli env start --env-id 1868548141708648448
ml-cli env start --unique-id SN001
```

## 5. Cree y asigne un proxy

Primero crea un proxy:

```bash
ml-cli proxy create \
  --proxy-name local-http \
  --proxy-ip 127.0.0.1 \
  --proxy-port 7890 \
  --proxy-type 0 \
  --proxy-provider 0
```

Luego asígnalo a un entorno:

```bash
ml-cli env set-proxy \
  --env-ids 1001 \
  --proxy-ip 127.0.0.1 \
  --proxy-port 7890 \
  --proxy-type 0 \
  --proxy-provider 0 \
  --proxy-name local-http
```

## 6. Trabajar con teléfonos en la nube

Lista de teléfonos en la nube:

```bash
ml-cli cloudphone list
```

Crea un teléfono en la nube:

```bash
ml-cli cloudphone create --sku-id 10004 --quantity 1
```

Obtener detalles:

```bash
ml-cli cloudphone info --id 123456
```

## 7. Horarios de consultas

Lista de plantillas de programación y tareas:

```bash
ml-cli schedule template-market --page-no 1 --page-size 20
ml-cli schedule list --page-no 1 --page-size 20
```

Crea una tarea única:

```bash
ml-cli schedule create-once-task \
  --cloud-phone-id 123456 \
  --schedule-name once-task-demo \
  --template-id 888 \
  --template-parameter '{}'
```

## 8. Utilice `--json-data`

Para puntos finales con muchos campos, pasar JSON sin formato suele ser más rápido:

```bash
ml-cli env create-advanced \
  --json-data '{"browserTypeId":1,"operatorSystemId":1,"envName":"cli-adv-test"}'
```

Los indicadores CLI y `--json-data` se pueden combinar. Los indicadores explícitos anulan las claves coincidentes de la carga útil JSON:

```bash
ml-cli env set-proxy \
  --env-ids 1001 \
  --json-data '{"proxy":{"proxyProvider":"0","proxyIp":"1.1.1.1"}}' \
  --proxy-ip 127.0.0.1
```

## 9. Tubería a `jq`

La CLI imprime JSON sin formato, que funciona bien con canalizaciones de shell:

```bash
ml-cli status | jq '.status'
ml-cli env processes | jq '.data[].pid'
```

## 10. Casos de fallas comunes

- `Could not detect MoreLogin port`: MoreLogin no se está ejecutando, IPC no está disponible o no se proporcionó ningún `--port`
- Fallo empresarial con código de salida `0`: la solicitud HTTP se realizó correctamente, pero la respuesta JSON contiene un error a nivel de aplicación.
- `ml-cli env arrange` en Linux: la implementación actual no lo admite y sale inmediatamente