# Inicio rápido

Ponte en marcha con la API MoreLogin en 5 minutos.

## Automatización del navegador (API local)

**Escenario:** Cree un perfil de navegador, ejecútelo, conéctese a través de Puppeteer para ejecutar un script y luego deténgalo.

### Requisitos previos

- Aplicación de escritorio MoreLogin **v2.15.0+** instalada y ejecutándose localmente.
- Puppeteer instalado (`npm i puppeteer-core`).


### Paso 1: crea un perfil de navegador

```bash
curl -X POST "http://127.0.0.1:40000/api/env/create/quick" \
  -H "Content-Type: application/json" \
  -d '{
    "browserTypeId": 1,
    "operatorSystemId": 1,
    "quantity": 1
  }'
```

*Este endpoint devuelve `data` como un array con los ID de los perfiles creados. Use `data[0]` como `envId` en los pasos siguientes (por ejemplo, `1993244721490239488`). Los ID de recursos son cadenas decimales.*

### Paso 2: inicie el perfil y obtenga el puerto de depuración

```bash
curl -X POST "http://127.0.0.1:40000/api/env/start" \
  -H "Content-Type: application/json" \
  -d '{"envId": "1993244721490239488"}'
```

*La respuesta incluirá `debugPort` (por ejemplo, `12345`).*

### Paso 3: Conecte Puppeteer (Node.js)

```javascript
const puppeteer = require('puppeteer-core');

(async () => {
  const browser = await puppeteer.connect({
    browserURL: 'http://127.0.0.1:12345'
  });
  const page = await browser.newPage();
  await page.goto('https://www.morelogin.com');
  console.log(await page.title());
  await browser.disconnect();
})();
```

### Paso 4: detener el perfil

```bash
curl -X POST "http://127.0.0.1:40000/api/env/close" \
  -H "Content-Type: application/json" \
  -d '{"envId": "1993244721490239488"}'
```

## Gestión de teléfonos en la nube (API abierta)

**Escenario:** Cree rápidamente un teléfono en la nube, inícielo, instale una aplicación y active una programación de RPA.

### Requisitos previos

- ID de API y clave de API desde el panel de MoreLogin.
- Los pasos 1–3 funcionan en una cuenta nueva. El paso 4 necesita al menos una aplicación en la biblioteca del equipo y el paso 5 al menos una plantilla de RPA; ninguna de las dos se crea mediante la API, así que prepárelas en el panel si las consultas devuelven una lista vacía.


### Paso 1: Obtenga el token de acceso

```bash
curl -X POST "https://api.morelogin.com/oauth2/token" \
  -H "Content-Type: application/json" \
  -d '{
    "client_id": "YOUR_API_ID",
    "client_secret": "YOUR_API_KEY",
    "grant_type": "client_credentials"
  }'
```

*Guarde el `access_token` de la respuesta.*

### Paso 2: Crear un teléfono en la nube

```bash
curl -X POST "https://api.morelogin.com/cloudphone/create" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{
    "skuId": "10002",
    "quantity": 1
  }'
```

*Guarde `data[0]` de la respuesta como ID del teléfono en la nube. Los ID de recursos son cadenas decimales.*

### Paso 3: Encender el teléfono en la nube

```bash
curl -X POST "https://api.morelogin.com/cloudphone/powerOn" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"id": "1673823102599682"}'
```

*El encendido es asíncrono. Una respuesta correcta solo acepta la solicitud; espere a que el dispositivo esté listo antes de enviar comandos que requieran conexión.*

### Paso 4: instalar una aplicación

Las aplicaciones se instalan desde la biblioteca del equipo, así que consulte primero su contenido:

```bash
curl -X POST "https://api.morelogin.com/cloudphone/app/page" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"pageNum": 1, "pageSize": 10}'
```

*Use `data.dataList[0].appVersionList[0].id` como `appVersionId`: las versiones llegan con la más reciente primero. El `id` del nivel de aplicación no es lo que espera `install`. Si `data.dataList` está vacío, suba una aplicación en el panel de MoreLogin: no existe una API para poblar la biblioteca.*

Instale con `appVersionId`, o con `packageName` más `versionCode` si solo conoce el paquete:

```bash
curl -X POST "https://api.morelogin.com/cloudphone/app/install" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{
    "id": "1673823102599682",
    "appVersionId": "1672940217990530"
  }'
```

### Paso 5: ejecutar una programación de RPA

Enumere sus plantillas y tome el `id` que quiera ejecutar:

```bash
curl -X POST "https://api.morelogin.com/cloudphone/rpa/template/personal/page" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{"pageNo": 1}'
```

*Use `data.dataList[0].id` como `templateId` a continuación. Las plantillas se crean en el panel o se toman del mercado; la API solo las enumera y las ejecuta.*

```bash
curl -X POST "https://api.morelogin.com/cloudphone/rpa/onceTask/save" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -d '{
    "cloudPhoneId": "1673823102599682",
    "scheduleName": "Daily Login Task",
    "templateId": "987654321"
  }'
```

## ¿Qué sigue?

| Objetivo | Ir a |
|  --- | --- |
| Referencia completa de la API del perfil del navegador | [API del navegador](/es/api-reference/browser/local-api) |
| Referencia completa de la API del teléfono en la nube | [API de teléfono en la nube](/es/api-reference/cloud-phone/open-api) |
| Conéctese a través de ADB | [Guía de conexión ADB](/es/api-reference/cloud-phone/adb) |