# API Local de Telefone em Nuvem

Gerencie instâncias de telefones em nuvem através da API Local do MoreLogin. URL base: http://127.0.0.1:40000. A API Local é executada em sua máquina junto com o aplicativo desktop MoreLogin. Todas as solicitações devem ser originadas da mesma máquina.

Version: 1.0.0

## Servers

MoreLogin  Local endpoint
```
http://127.0.0.1:40000
```

## Security

## Download OpenAPI description

[API Local de Telefone em Nuvem](https://guide.morelogin.com/_bundle/@l10n/pt/API%20Reference/Cloud%20Phone/local-api.yaml)

## Cloud Phone Management

### Obtendo uma lista de perfis de telefones na nuvem

 - [POST /api/cloudphone/page](https://guide.morelogin.com/pt/api-reference/cloud-phone/local-api/cloud-phone-management/pageusingpost.md)

### Criando um perfil de telefone na nuvem

 - [POST /api/cloudphone/create](https://guide.morelogin.com/pt/api-reference/cloud-phone/local-api/cloud-phone-management/createusingpost.md)

### Telefone em nuvem para startups

 - [POST /api/cloudphone/powerOn](https://guide.morelogin.com/pt/api-reference/cloud-phone/local-api/cloud-phone-management/poweronusingpost.md)

### Desligue o telefone na nuvem

 - [POST /api/cloudphone/powerOff](https://guide.morelogin.com/pt/api-reference/cloud-phone/local-api/cloud-phone-management/poweroffusingpost.md)

### Modificar o perfil do telefone na nuvem

 - [POST /api/cloudphone/edit/batch](https://guide.morelogin.com/pt/api-reference/cloud-phone/local-api/cloud-phone-management/editbatchusingpost.md)

### Configurar proxy do telefone na nuvem

 - [POST /api/cloudphone/setProxy](https://guide.morelogin.com/pt/api-reference/cloud-phone/local-api/cloud-phone-management/setproxy.md): Set proxy settings for one or more cloud phones. Supports binding proxyId directly, or adding/modifying detailed proxy parameters. The request payload format is identical to browser proxy configuration, and settings are synchronized to channel providers in real-time.

### Excluir perfil do telefone na nuvem

 - [POST /api/cloudphone/delete/batch](https://guide.morelogin.com/pt/api-reference/cloud-phone/local-api/cloud-phone-management/deleteusingpost.md)

### Novo telefone na nuvem com um clique

 - [POST /api/cloudphone/newMachine](https://guide.morelogin.com/pt/api-reference/cloud-phone/local-api/cloud-phone-management/onenewusingpost.md)

### Detalhes do telefone na nuvem

 - [POST /api/cloudphone/info](https://guide.morelogin.com/pt/api-reference/cloud-phone/local-api/cloud-phone-management/infousingpost.md)

### Get Cloud Phone Details By AndroidId

 - [POST /api/cloudphone/queryByAndroidId](https://guide.morelogin.com/pt/api-reference/cloud-phone/local-api/cloud-phone-management/querybyandroidid.md): Query the cloud phone ID associated with a specific androidId under the current team. Returns the single cloud phone ID if found.

### Habilitar ou desabilitar ROOT global

 - [POST /api/cloudphone/enableRoot](https://guide.morelogin.com/pt/api-reference/cloud-phone/local-api/cloud-phone-management/enableroot.md): Enable or disable the global system-level ROOT permission on a single cloud phone.

### Captura de tela do telefone na nuvem

 - [POST /api/cloudphone/screenCap](https://guide.morelogin.com/pt/api-reference/cloud-phone/local-api/cloud-phone-management/screencap.md): Get the real-time screen capture of the specified cloud phone instance. Supports returning a temporary signed URL with an expiration timestamp.

### Lista de marcas e modelos da consulta

 - [POST /api/cloudphone/brand/models](https://guide.morelogin.com/pt/api-reference/cloud-phone/local-api/cloud-phone-management/paths/~1api~1cloudphone~1brand~1models/post.md): Consultar a lista de marcas e modelos disponíveis para a versão do Android especificada.

## ADB

### Atualizar o status ADB do telefone na nuvem

 - [POST /api/cloudphone/updateAdb](https://guide.morelogin.com/pt/api-reference/cloud-phone/local-api/adb/updateadbusingpost.md)

### Batch Query ADB Info

 - [POST /api/cloudphone/batchAdbInfo](https://guide.morelogin.com/pt/api-reference/cloud-phone/local-api/adb/batchadbinfo.md): Batch query cloud phone ADB connection info.
- The envIds list supports a maximum of 200 items
- Supports mixed queries across wuin and arm providers; the API internally groups by provider and merges results
- ADB info is only available when the phone is powered on (envStatus >= 4); it cannot be queried when powered off or booting

### Executar comando do shell

 - [POST /api/cloudphone/exeCommand](https://guide.morelogin.com/pt/api-reference/cloud-phone/local-api/adb/executeshellcommand.md)

## Files

### Carregar arquivos

 - [POST /api/cloudphone/uploadFile](https://guide.morelogin.com/pt/api-reference/cloud-phone/local-api/files/fileuploadusing.md)

### Obtenha o URL temporário para upload de arquivos.

 - [POST /api/cloudphone/upload/file/signedUrl](https://guide.morelogin.com/pt/api-reference/cloud-phone/local-api/files/paths/~1api~1cloudphone~1upload~1file~1signedurl/post.md): Faça o upload de arquivos temporários por meio desta interface e o sistema os excluirá automaticamente após 7 dias.

### Fazer upload do arquivo para URL

 - [POST /api/cloudphone/upload/file](https://guide.morelogin.com/pt/api-reference/cloud-phone/local-api/files/paths/~1api~1cloudphone~1upload~1file/post.md)

### Resultado do upload do arquivo

 - [POST /api/cloudphone/upload/file/result](https://guide.morelogin.com/pt/api-reference/cloud-phone/local-api/files/paths/~1api~1cloudphone~1upload~1file~1result/post.md)

### Download do arquivo

 - [POST /api/cloudphone/download](https://guide.morelogin.com/pt/api-reference/cloud-phone/local-api/files/paths/~1api~1cloudphone~1download/post.md)

### Resultado do download do arquivo

 - [POST /api/cloudphone/download/result](https://guide.morelogin.com/pt/api-reference/cloud-phone/local-api/files/paths/~1api~1cloudphone~1download~1result/post.md)

### Conjunto de caixa de chaves

 - [POST /api/cloudphone/setKeyBox](https://guide.morelogin.com/pt/api-reference/cloud-phone/local-api/files/paths/~1api~1cloudphone~1setkeybox/post.md)

## Apps

### Instale o aplicativo no celular na nuvem.

 - [POST /api/cloudphone/app/install](https://guide.morelogin.com/pt/api-reference/cloud-phone/local-api/apps/paths/~1api~1cloudphone~1app~1install/post.md)

### Obtenha a lista de aplicativos.

 - [POST /api/cloudphone/app/page](https://guide.morelogin.com/pt/api-reference/cloud-phone/local-api/apps/paths/~1api~1cloudphone~1app~1page/post.md): Obter lista de aplicativos

### Listar aplicativos da equipe

 - [POST /api/cloudphone/team/app/page](https://guide.morelogin.com/pt/api-reference/cloud-phone/local-api/apps/paths/~1api~1cloudphone~1team~1app~1page/post.md): Obtém a lista de aplicativos da equipe.

### Consultar lista de aplicativos instalados

 - [POST /api/cloudphone/app/installedList](https://guide.morelogin.com/pt/api-reference/cloud-phone/local-api/apps/paths/~1api~1cloudphone~1app~1installedlist/post.md): Consultar a lista de aplicativos instalados em um telefone na nuvem.

### Iniciar aplicativo

 - [POST /api/cloudphone/app/start](https://guide.morelogin.com/pt/api-reference/cloud-phone/local-api/apps/paths/~1api~1cloudphone~1app~1start/post.md): Inicie um aplicativo instalado no telefone em nuvem.

### Reinicie o aplicativo

 - [POST /api/cloudphone/app/restart](https://guide.morelogin.com/pt/api-reference/cloud-phone/local-api/apps/paths/~1api~1cloudphone~1app~1restart/post.md)

### Pare o aplicativo

 - [POST /api/cloudphone/app/stop](https://guide.morelogin.com/pt/api-reference/cloud-phone/local-api/apps/paths/~1api~1cloudphone~1app~1stop/post.md)

### Desinstalar aplicativo

 - [POST /api/cloudphone/app/uninstall](https://guide.morelogin.com/pt/api-reference/cloud-phone/local-api/apps/paths/~1api~1cloudphone~1app~1uninstall/post.md)

### Habilitar ROOT do aplicativo

 - [POST /api/cloudphone/app/openRoot](https://guide.morelogin.com/pt/api-reference/cloud-phone/local-api/apps/appopenroot.md): Enable ROOT permission for a specific app package on a single cloud phone.

### Configurar aplicativo de acessibilidade oculto

 - [POST /api/cloudphone/app/setHideAccessibilityApp](https://guide.morelogin.com/pt/api-reference/cloud-phone/local-api/apps/paths/~1api~1cloudphone~1app~1sethideaccessibilityapp/post.md): Compatível apenas com Android 13, Android 14 e Android 15A.

## Schedules

### Obtenha páginas de modelo de mercado

 - [POST /api/cloudphone/rpa/template/market/page](https://guide.morelogin.com/pt/api-reference/cloud-phone/local-api/schedules/paths/~1api~1cloudphone~1rpa~1template~1market~1page/post.md): Modelo de mercado de agendamentos de consultas, o nome do modelo suporta consultas aproximadas.

### Obtenha páginas de modelo personalizadas

 - [POST /api/cloudphone/rpa/template/personal/page](https://guide.morelogin.com/pt/api-reference/cloud-phone/local-api/schedules/paths/~1api~1cloudphone~1rpa~1template~1personal~1page/post.md): Modelo de mercado de agendamentos de consultas, o nome do modelo suporta consultas aproximadas.

### Obtenha uma lista de horários

 - [POST /api/cloudphone/rpa/task/page](https://guide.morelogin.com/pt/api-reference/cloud-phone/local-api/schedules/paths/~1api~1cloudphone~1rpa~1task~1page/post.md)

### Criar um cronograma único

 - [POST /api/cloudphone/rpa/onceTask/save](https://guide.morelogin.com/pt/api-reference/cloud-phone/local-api/schedules/paths/~1api~1cloudphone~1rpa~1oncetask~1save/post.md): Salvar na nuvem do celular após a tarefa agendada.

Especificação de Parâmetros do TemplateParameter
1. __Origem dos Parâmetros__
As chaves dos parâmetros devem ser extraídas do campo parameter retornado pelas seguintes APIs:
- Obter páginas de modelos de mercado
- Obter páginas de modelos pessoais
2. __Estrutura de Dados__
- Enviar parâmetros no formato de objeto JSON: {"key1": "value1", "key2": "value2"}
- Os valores finais dos parâmetros devem ser desserializados de acordo com a lógica de negócios antes do uso.
3. __Parâmetros de Tipo Comum__
Para os seguintes tipos de parâmetros, passe os valores diretamente no formato correspondente:
- string: {"name": "John"}
- decimal / number: {"amount": 100.50}
- boolean: {"enabled": true}
4. __Parâmetros de Tipo de Mídia__
Para parâmetros de mídia, como imagem (pic) ou vídeo (video), além das informações básicas, uma chave fixa "__Extra__" deve ser incluída. Exemplo de formato:
json
{

"__Extra__": {

"pic": {

"name": "pic_name",

"size": 204800
},

"video": {
"name": "video_name",

"size": 204800000
}

},

"pic": "https://get.morelogin.com/prod/cloudPhoneTaskVideo/1556061681934880/1c62314c7e2b4d298abe8d5452d7c050/test.png",
"video": "https://get.morelogin.com/pre/cloudPhoneTaskVideo/1542431036481556/4c4fed83685345ae8f1505fbe0c2f123/baby.mp4"
}

5. __Exemplo de Configuração de Parâmetros__
O exemplo a seguir demonstra como configurar o parâmetro templateParameter ao salvar um plano usando um modelo de mercado:
- __Etapa 1: Recuperar Parâmetros do Modelo__
Chame a API do Modelo de Mercado:
GET /api/cloudphone/rpa/template/market/page
Extraia o campo parameter da resposta, por exemplo:

json
"parameter": "{\"videoDownloadUrl\":{\"type\":\"video\",\"extra\":{\"name\":\"Select Vídeo\",\"tipo\":\"vídeo\",\"obrigatório\":true,\"valorPadrão\":{\"habilitado\":false},\"índice\":1,\"limiteDeTamanho\":{\"valor\":200,\"unidade\":\"MB\"},\"tipoDeFormato\":[\"mp4\",\"mov\"]}},\"descriçãoDoVídeo\":{\"tipo\":\"string\",\"extra\":{\"nome\":\"Vídeo Legenda\",\"tipo\":\"string\",\"obrigatório\":false,\"caractereValido\":{\"habilitado\":true,\"valor\":1000},\"multilinha\":{\"habilitado\":true,\"valor\":3},\"valorPadrão\":{\"habilitado\":false},\"índice\":2}},\"URLDaCapa\":{\"tipo\":\"imagem\",\"extra\":{\"nome\":\"Capa Image\",\"type\":\"image\",\"required\":false,\"defaultValue\":{\"enabled\":false},\"index\":3,\"sizeLimit\":{\"value\":5,\"unit\":\"MB\"},\"formatType\":[\"jpg\",\"png\",\"jpeg\"]}},\"enableAIGC\":{\"type\":\"boolean\",\"extra\":{\"name\":\"AI Label\",\"type\":\"boolean\",\"required\":false,\"defaultValue\":{\"enabled\":false},\"index\":4}},\"productId\":{\"type\":\"string\",\"extra\":{\"name\":\"Product ID\",\"type\":\"string\",\"required\":false,\"charValid\":{\"enabled\":true,\"value\":50},\"placeholder\":\"Product ID only supports digits, with a maximum of 50 caracteres.\",\"valorPadrão\":{\"habilitado\":false},\"índice\":5}},\"títuloDoProduto\":{\"tipo\":\"string\",\"extra\":{\"nome\":\"Título do Produto\",\"tipo\":\"string\",\"obrigatório\":false,\"caractereValível\":{\"habilitado\":true,\"valor\":30},\"valorPadrão\":{\"habilitado\":false},\"índice\":6}},\"obterLeads\":{\"tipo\":\"booleano\",\"extra\":{\"nome\":\"Obter Leads\",\"type\":\"boolean\",\"required\":false,\"defaultValue\":{\"enabled\":false},\"index\":7}},\"comment\":{\"type\":\"string\",\"extra\":{\"name\":\"Comment\",\"type\":\"string\",\"required\":false,\"charValid\":{\"enabled\":true,\"value\":200},\"multiline\":{\"enabled\":true,\"value\":3},\"defaultValue\":{\"enabled\":false},\"index\":8}}}"

- __Etapa 2: Construir o JSON de Parâmetros__
Construa o objeto JSON de acordo com Requisitos dos parâmetros:
json
{
"__Extra__": {

"videoDownloadUrl": {

"name": "video_name.mp4",

"size": 204800000
}

},

"videoDownloadUrl": "https://get.morelogin.com/pre/cloudPhoneTaskVideo/1542431036481556/4c4fed83685345ae8f1505fbe0c2f123/baby.mp4"
}

- __Etapa 3: Escapar a string JSON__
Converta o objeto JSON em um formato de string escapada:
json
"{\"__Extra__\": {\"videoDownloadUrl\": {\"name\": \"video_name.mp4\",\"size\": 204800000}},\"videoDownloadUrl\": \"https://get.morelogin.com/pre/cloudPhoneTaskVideo/1542431036481556/4c4fed83685345ae8f1505fbe0c2f123/baby.mp4\"}"

- __Etapa 4: Chamada à API__
Passe a string escapada como o valor do parâmetro templateParameter para a API de destino.

### Cancelar agendamento

 - [POST /api/cloudphone/rpa/task/cancel](https://guide.morelogin.com/pt/api-reference/cloud-phone/local-api/schedules/paths/~1api~1cloudphone~1rpa~1task~1cancel/post.md)

### Registro de execuções de tarefas de consulta de página

 - [POST /api/cloudphone/rpa/subTask/page](https://guide.morelogin.com/pt/api-reference/cloud-phone/local-api/schedules/paths/~1api~1cloudphone~1rpa~1subtask~1page/post.md): Modelo de mercado de agendamentos de consultas, o nome do modelo suporta consultas aproximadas.

### Obter a execução de uma tarefa

 - [POST /api/cloudphone/rpa/subTask/detail/{id}](https://guide.morelogin.com/pt/api-reference/cloud-phone/local-api/schedules/paths/~1api~1cloudphone~1rpa~1subtask~1detail~1%7Bid%7D/post.md): Modelo de mercado de agendamentos de consultas, o nome do modelo suporta consultas aproximadas.

### Cancelar execução

 - [POST /api/cloudphone/rpa/subTask/cancel/{id}](https://guide.morelogin.com/pt/api-reference/cloud-phone/local-api/schedules/paths/~1api~1cloudphone~1rpa~1subtask~1cancel~1%7Bid%7D/post.md)

## Touch

### Toque - Clique

 - [POST /api/cloudphone/touch/click](https://guide.morelogin.com/pt/api-reference/cloud-phone/local-api/touch/touchclick.md): Simula um toque único na tela do telefone na nuvem nas coordenadas especificadas.
O sistema de coordenadas usa o canto superior esquerdo da tela como origem (0, 0), com o eixo X se estendendo para a direita e o eixo Y se estendendo para baixo.

### Toque - Duplo clique

 - [POST /api/cloudphone/touch/doubleClick](https://guide.morelogin.com/pt/api-reference/cloud-phone/local-api/touch/touchdoubleclick.md): Simula um toque duplo na tela do telefone na nuvem nas coordenadas especificadas.
O sistema de coordenadas usa o canto superior esquerdo da tela como origem (0, 0), com o eixo X se estendendo para a direita e o eixo Y se estendendo para baixo.

### Toque - Pressão longa

 - [POST /api/cloudphone/touch/longClick](https://guide.morelogin.com/pt/api-reference/cloud-phone/local-api/touch/touchlongclick.md): Simula uma pressão longa na tela do telefone na nuvem nas coordenadas especificadas.
Use o parâmetro duration para personalizar a duração da pressão (em milissegundos). Se omitido, a duração padrão é usada.
O sistema de coordenadas usa o canto superior esquerdo da tela como origem (0, 0), com o eixo X se estendendo para a direita e o eixo Y se estendendo para baixo.

### Toque - Deslizar

 - [POST /api/cloudphone/touch/swipe](https://guide.morelogin.com/pt/api-reference/cloud-phone/local-api/touch/touchswipe.md): Simula um deslizar do dedo das coordenadas iniciais até as coordenadas finais.
Use o parâmetro duration para controlar a velocidade do deslizamento (em milissegundos). Um valor maior resulta em um deslizamento mais lento.
O sistema de coordenadas usa o canto superior esquerdo da tela como origem (0, 0), com o eixo X se estendendo para a direita e o eixo Y se estendendo para baixo.

### Toque - Arrastar

 - [POST /api/cloudphone/touch/drag](https://guide.morelogin.com/pt/api-reference/cloud-phone/local-api/touch/touchdrag.md): Simula um arrastar do dedo das coordenadas iniciais até as coordenadas finais. Semelhante ao deslizar, mas arrastar é tipicamente usado para mover ícones, elementos de UI, etc.
Use o parâmetro duration para controlar a velocidade do arrasto (em milissegundos). Um valor maior resulta em um arrasto mais lento.
O sistema de coordenadas usa o canto superior esquerdo da tela como origem (0, 0), com o eixo X se estendendo para a direita e o eixo Y se estendendo para baixo.

