# Швидкий старт

Почніть роботу з MoreLogin API за 5 хвилин.

## Автоматизація браузера (локальний API)

**Сценарій:** Створіть профіль браузера, запустіть його, підключіться через Puppeteer, щоб запустити сценарій, а потім зупиніть його.

### передумови

- Настільна програма MoreLogin **v2.15.0+** встановлена та працює локально.
- Puppeteer встановлено (`npm i puppeteer-core`).


### Крок 1: Створіть профіль браузера

```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
  }'
```

*Цей ендпоінт повертає `data` як масив ідентифікаторів створених профілів. Використовуйте `data[0]` як `envId` для наступних кроків (наприклад, `1993244721490239488`). Ідентифікатори ресурсів передаються десятковими рядками.*

### Крок 2. Запустіть профіль і отримайте порт налагодження

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

*Відповідь міститиме `debugPort` (наприклад, `12345`).*

### Крок 3. Підключіть 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();
})();
```

### Крок 4: Зупиніть профіль

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

## Хмарне керування телефоном (відкритий API)

**Сценарій:** швидко створіть хмарний телефон, запустіть його, інсталюйте програму та запустіть розклад RPA.

### передумови

- Ідентифікатор API та ключ API з інформаційної панелі MoreLogin.
- Кроки 1–3 виконуються на новому акаунті. Крок 4 потребує щонайменше одного застосунку в бібліотеці команди, а крок 5 — щонайменше одного шаблону RPA; ні те, ні інше не створюється через API, тому підготуйте їх в інформаційній панелі, якщо запити повернуть порожній список.


### Крок 1: Отримайте маркер доступу

```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"
  }'
```

*Збережіть `access_token` із відповіді.*

### Крок 2: Створіть Cloud Phone

```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
  }'
```

*Збережіть `data[0]` із відповіді як ідентифікатор Cloud Phone. Ідентифікатори ресурсів передаються десятковими рядками.*

### Крок 3. Увімкніть Cloud Phone

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

*Увімкнення виконується асинхронно. Успішна відповідь лише підтверджує прийняття запиту; дочекайтеся готовності пристрою перед командами, що потребують онлайн-стану.*

### Крок 4. Встановіть додаток

Застосунки встановлюються з бібліотеки команди, тому спершу перевірте, що в ній є:

```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}'
```

*Використовуйте `data.dataList[0].appVersionList[0].id` як `appVersionId` — версії повертаються новішими спершу. Ідентифікатор рівня застосунку — не те, що очікує `install`. Якщо `data.dataList` порожній, спочатку завантажте застосунок в інформаційній панелі MoreLogin: API для наповнення бібліотеки немає.*

Встановлюйте за `appVersionId` або за `packageName` разом із `versionCode`, якщо відома лише назва пакета:

```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"
  }'
```

### Крок 5. Запустіть розклад RPA

Виведіть свої шаблони та візьміть потрібний `id`:

```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}'
```

*Використовуйте `data.dataList[0].id` як `templateId` нижче. Шаблони створюються в інформаційній панелі або беруться з маркету; API лише перелічує та запускає їх.*

```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"
  }'
```

## Що далі?

| Мета | Перейти до |
|  --- | --- |
| Повна довідка про API профілю браузера | [API веб-переглядача](/uk/api-reference/browser/local-api) |
| Повна довідка про Cloud Phone API | [Cloud Phone API](/uk/api-reference/cloud-phone/open-api) |
| Підключення через ADB | [Посібник із підключення ADB](/uk/api-reference/cloud-phone/adb) |