CLOUSD
Criar conta
AprenderBenchmarkComo os agentes se saem nos celulares ClousdBlogEm breveGuias, análises e notas de campoCompararEm breveA Clousd ao lado das alternativas
DesenvolverIntegraçõesEm breveMCP, Claude Code, Codex, Cursor, n8nGitHubSDK, servidor MCP e exemplos
Ler a documentação

Referência da API da Clousd.

Todas as rotas da API v1 da Clousd, 71 operações, agrupadas do jeito que você vai usá-las. Parâmetros, corpos de requisição e respostas estão no arquivo OpenAPI.

Toda requisição
# base URL
https://api.clousd.com/v1

# header
Authorization: Bearer cl_live_your_key

# errors are JSON
{ "error": "busy", "message": "…" }

Básico

O quêValorObservações
URL basehttps://api.clousd.com/v1Só HTTPS, JSON na entrada e na saída
AutenticaçãoAuthorization: Bearer cl_live_…As chaves são criadas no painel, com escopo read ou control e uma lista de aparelhos
Operações longas202 Accepted → GET /v1/jobs/{id}Criar, iniciar, restaurar e chamadas parecidas retornam um job para consultar
Erros{ "error": "busy", "message": "…" }Um código curto para o seu código decidir e uma mensagem para pessoas
Especificação completaopenapi-v1.yamlOpenAPI 3.1 com parâmetros, corpos e respostas

Tarefas

MétodoRotaO que faz
GET/v1/schedulesAgendas desta chave
POST/v1/schedulesUma tarefa que roda sozinha: todo dia, de hora em hora ou quando você chamar
POST/v1/schedules/{id}/togglePausar ou retomar uma agenda
POST/v1/schedules/{id}/deleteExcluir uma agenda
POST/v1/runsDar a um ou vários celulares uma tarefa em palavras simples
GET/v1/runsExecuções desta chave, as mais novas primeiro
GET/v1/runs/{id}Uma execução: status, answer, structured_output e o card em que ela espera
DELETE/v1/runs/{id}Excluir uma execução concluída com seus passos e capturas de tela
GET/v1/runs/{id}/eventsEventos ao vivo via Server-Sent Events
GET/v1/runs/{id}/trajectoryCada passo: ferramenta, alvo, resultado e se a tela foi guardada
GET/v1/runs/{id}/steps/{n}.jpgA tela antes do passo n
POST/v1/runs/{id}/answerResponder ao card da execução: uma pergunta (answer) ou uma permissão (allow / decline)
POST/v1/runs/{id}/messageDizer algo ao agente em execução; ele lê antes do próximo passo
POST/v1/runs/{id}/cancelInterromper a execução
POST/v1/schedules/{id}/runIniciar uma agenda agora: o gatilho para trigger=api
GET/v1/credentialsLogins salvos: pacote, nome e quais campos estão preenchidos; os valores nunca são retornados
POST/v1/credentialsSalvar um login para um app
POST/v1/credentials/{id}/fieldsDefinir um campo de um login
DELETE/v1/credentials/{id}/fields/{type}Remover um campo de um login
DELETE/v1/credentials/{id}Excluir um login

Aparelhos

MétodoRotaO que faz
GET/v1/devicesAparelhos que esta chave vê
POST/v1/devicesCriar um aparelho (cobrado da conta da chave de API)
GET/v1/devices/{name}Um aparelho
POST/v1/devices/{name}/startIniciar o aparelho
POST/v1/devices/{name}/stopParar o aparelho (o estado é mantido; um aparelho parado não custa nada)
POST/v1/devices/{name}/restartReiniciar o aparelho
GET/v1/devices/{name}/iceServidores ICE para um visualizador WebRTC deste aparelho: o TURN do host do aparelho com uma credencial temporária (basta uma chave read)
GET/v1/devices/{name}/qualityQualidade por categoria (última medição)
POST/v1/devices/{name}/resetRedefinir o aparelho para um estado limpo: apps e dados são apagados e o celular volta como novo (mesmo modelo e Android, 1-5 min)
GET/v1/devices/{name}/screenrecordGravar a tela por alguns segundos
POST/v1/devices/{name}/labelDar ao celular um nome que pessoas e agentes consigam distinguir (“Pixel QA”); vazio = volta a “Modelo #N”
GET/v1/balanceO dinheiro da conta: saldo, gasto por dia, horas restantes, renovações e avisos para mostrar ao usuário
GET/v1/modelsModelos a partir dos quais você pode criar aparelhos

Agentes de IA

MétodoRotaO que faz
GET/v1/devices/{name}/observeUm olhar novo no celular: captura de tela, árvore da interface e o app na tela em uma só chamada
POST/v1/devices/{name}/actUma ação e depois esperar a tela estabilizar
POST/v1/devices/{name}/opUma primitiva do núcleo (o protocolo do núcleo Lusiesta, um para um)

Tela e entrada

MétodoRotaO que faz
GET/v1/devices/{name}/screenshotTela em PNG; com w, um JPEG menor (em cache por até 10 s; use /observe para um quadro novo)
POST/v1/devices/{name}/actionUma ação no celular (sem esperar)
POST/v1/devices/{name}/inputToque, tecla, texto, rolagem, área de transferência, rotação (precisa de uma sessão de transmissão ao vivo)
GET/v1/devices/{name}/logsÚltimas linhas do logcat
GET/v1/devices/{name}/streamNúmeros da transmissão ao vivo: fps, taxa de bits, atraso do visualizador, degrau do ABR (basta uma chave read)
POST/v1/devices/{name}/streamWebRTC: entra uma oferta SDP, sai uma resposta SDP; um corpo com bitrate_kbps fixa o degrau de qualidade em vez disso (chave control)
POST/v1/devices/{name}/stream/probeTeste de latência para um visualizador ao vivo: puxa a aba de notificações por 600 ms e retorna o relógio do gateway (chave control, no máximo uma vez a cada 5 s por aparelho)

Rede

MétodoRotaO que faz
GET/v1/devices/{name}/networkPaís de rede do aparelho
POST/v1/devices/{name}/networkDefinir o país de onde o aparelho se conecta (fuso horário e idioma acompanham)
GET/v1/network/optionsO que pode ser escolhido agora ao criar um aparelho: países e planos

Apps

MétodoRotaO que faz
POST/v1/devices/{name}/apkInstalar um APK
GET/v1/appsCatálogo de apps: o que pode ser instalado agora
GET/v1/devices/{name}/appsApps do catálogo instalados no aparelho
POST/v1/devices/{name}/appsInstalar um app do catálogo (chave control)

ADB

MétodoRotaO que faz
GET/v1/devices/{name}/adbStatus da sessão ADB
POST/v1/devices/{name}/adbAbrir uma sessão ADB pelo relay (código
DELETE/v1/devices/{name}/adbFechar a sessão ADB

Arquivos e mídia

MétodoRotaO que faz
PUT/v1/devices/{name}/filesColocar um arquivo no celular (push): o corpo é o arquivo, caminho em /sdcard/ ou /data/local/tmp/
POST/v1/devices/{name}/mediaMídia da biblioteca no celular como se tivesse sido feita com ele (push), remover o que colocamos (clean) ou listar
GET/v1/mediaA biblioteca de mídia: fotos e vídeos com seus ids
POST/v1/mediaEnviar uma foto ou um vídeo: {name, data_b64, folder}, até 25 MB
POST/v1/media/sendCopiar arquivos da biblioteca para as galerias dos celulares

Webhooks

MétodoRotaO que faz
GET/v1/webhooksWebhooks desta chave e os eventos que você pode assinar (run.completed / failed / cancelled / waiting, device.problem / resolved)
POST/v1/webhooksAssinar uma URL https
GET/v1/webhooks/{id}Um webhook
DELETE/v1/webhooks/{id}Excluí-lo
POST/v1/webhooks/{id}/rotateSegredo novo (mostrado uma vez)
POST/v1/webhooks/{id}/togglePausar ou retomar as entregas
POST/v1/webhooks/{id}/testEnviar um evento de teste agora
GET/v1/webhooks/{id}/deliveriesEntregas recentes com status e tempo de resposta

Conta

MétodoRotaO que faz
GET/v1/usageMinutos ligados por aparelho por dia (UTC) em um mês
GET/v1/incidentsIncidentes nos seus aparelhos (os últimos 100, os mais novos primeiro)
GET/v1/healthSaúde dos seus aparelhos (medida a cada 5 minutos)
GET/v1/jobsÚltimos 50 jobs dos seus aparelhos
GET/v1/jobs/{id}Estado de uma operação longa