Documentação Getno Assist

    Introdução

    A Getno permite criar automações de navegador com apoio de um Agent LLM apenas no momento da gravação (design do fluxo). Depois, as execuções ocorrem de forma determinística, rápida e sem LLM por trás, garantindo custo previsível e estabilidade.

    Nossa documentação traz:

    • Conceitos essenciais (Organização, Sites, Automações)
    • Orientações para Engenharia de Prompts
    • Padrões e Referência de API com exemplos cURL, request/response e gerador de cURL dinâmico
    • Webhooks e Autorreparo

    Conceitos: Organização & Sites

    🏢 Organização

    Escopo que isola tudo — créditos, sites, automações, API Keys, chaves de LLM, etc.

    🌐 Site

    Cadastro simples composto por nome e baseURL. Ao criar um site, a plataforma já cria um environment default por baixo dos panos.

    Ambientes

    Toda execução operacional ocorre dentro de um environment. Um site sempre possui pelo menos um ambiente e, se você não enviar environmentSlug na API, a execução usa automaticamente o environment default do site.

    O que fica no Site

    • • Nome e metadados do site
    • • Guidelines globais
    • • Conjunto de automações

    O que fica no Environment

    • baseUrl
    • proxyId
    • defaultCredentialId
    • • Estado operacional por automação (envState)

    Como as automações são criadas e executadas

    1

    Você define nome, objetivo, tipo de saída, instruções detalhadas, parâmetros de entrada (com valores padrão) e, se necessário, um JSON Schema (para saída JSON Object). Credenciais, proxy e URL base são resolvidos por environment.

    2

    O Agent LLM (OpenAI) usa suas instruções para gravar um fluxo de ações determinísticas (cliques, inputs, navegação, etc.) no site real.

    3

    Depois de criada, a automação pode ser executada em escala via API, reproduzindo exatamente o que foi gravado, sem uso adicional de LLM.

    Tipos de saída & JSON Schema

    Tipo de saída de uma automação define o que cada execução retorna:

    Nenhum

    Apenas executa as ações, sem retorno consumível.

    Arquivo

    A execução baixa um arquivo. O resultado da API será uma URL (com expiração) para baixar o arquivo, sempre comprimido em .zst (Zstandard), com originalName e metadados de expiração.

    JSON Object

    A execução extrai informações e retorna um JSON estruturado conforme seu JSON Schema.

    JSON Schema

    Descreve a forma do JSON de saída (campos, tipos, obrigatoriedade).

    Referência oficial: json-schema.org (especificação e exemplos práticos).

    📖Learn More

    Parâmetros de entrada (dinâmicos)

    Parâmetros de entrada representam valores que mudam a cada execução. Durante a criação da automação, cada parâmetro deve ter um valor padrão válido (usado apenas no momento da gravação).

    Como usar nas instruções (prompt)

    Especifique claramente onde o parâmetro entra, usando a sintaxe {{nomeDoParametro}}.

    Exemplo:

    "No campo 'Pesquisa por CPF e telefone', digite {{cpf}}, {{telefone}} e confirme."

    Na execução (via API), você enviará:

    {
      "inputParameters": {
        "cpf": "12345678901",
        "telefone": "11988887777"
      }
    }

    O executor substituirá {{cpf}}, {{telefone}}, etc., exatamente nos pontos definidos.

    Engenharia de Prompts (boas práticas)

    Prompts de gravação guiam o Agent LLM a produzir um fluxo determinístico. O agent é inteligente e pode executar ações complexas diretamente quando bem instruído.

    🎯 Princípios Fundamentais

    • Seja muito específico: diga exatamente onde clicar, qual campo usar, nome do campo sempre, e alguma referência visual
    • Passo a passo, click a click: detalhe cada ação sequencialmente
    • Sempre determinístico: evite instruções condicionais ou variáveis
    • Deixe tudo explícito: inclusive onde e quando finalizar
    • Encerramento claro: sinalize quando o agent deve parar

    🤖 Ações Avançadas do Agent

    O agent pode executar comandos complexos diretamente

    🌐 Navegação

    • • Navegar para URLs específicas
    • • Atualizar a página
    • • Voltar/avançar no histórico
    • • Gerenciar abas (abrir/fechar/trocar)

    ⌨️ Interações

    • • Scroll para elementos específicos
    • • Envio de teclas individuais
    • • Aguardar tempos específicos
    • • Combinações de teclas

    💡 Exemplos Práticos:

    Navegação direta:

    "Navegue até a URL https://example.com/dashboard e clique no botão 'Relatórios'"

    Aguardar:

    "Após clicar em 'Processar', espere 10 segundos para o sistema processar"

    Scroll específico:

    "Scroll para baixo até encontrar o texto 'Download CSV' e clique nele"

    Teclas:

    "Digite a tecla 'K' para abrir o menu de busca, depois digite 'J' para selecionar"

    ⚡ Otimização e Eficiência

    🚀 Corte etapas navegando diretamente

    Se a URL da página de destino não é protegida por ação, navegue diretamente para ela.

    ❌ Ineficiente:

    "Clique em 'Menu', depois em 'Relatórios', depois em 'Vendas', depois em 'Mensal'"

    ✅ Eficiente:

    "Navegue até https://app.com/relatorios/vendas/mensal e clique em 'Gerar Relatório'"

    🔄 Parâmetros Dinâmicos

    Use parâmetros sempre que algo deve variar entre execuções

    Quando valores precisam mudar a cada execução, use parâmetros de entrada com a sintaxe {{nomeParametro}}.

    Exemplo de prompt com parâmetros:

    "No campo 'Pesquisa por CPF', digite {{cpf}}. No campo 'Telefone', digite {{telefone}}. Clique no botão 'Buscar' e aguarde o resultado carregar. Após os dados aparecerem na tela, clique em 'Exportar PDF' e encerre a tarefa."

    Execução via API:

    {
      "inputParameters": {
        "cpf": "12345678901",
        "telefone": "11988887777"
      }
    }

    🎲 Instruções Determinísticas

    Evite instruções condicionais ou variáveis que podem gerar comportamentos diferentes.

    ❌ Evite (não determinístico):

    • • "Se existir o botão 2, clique nele"
    • • "Clique no primeiro resultado que aparecer"
    • • "Se houver erro, tente novamente"
    • • "Procure por qualquer botão de download"

    ✅ Prefira (determinístico):

    • • "Clique no botão 'Confirmar Pedido'"
    • • "Clique no link com texto 'João Silva'"
    • • "Digite {{senha}} no campo 'Password'"
    • • "Clique no botão 'Download PDF'"

    🏁 Finalização Explícita

    Sempre indique quando e como o agent deve encerrar a tarefa.

    Exemplos de finalização:

    "Após o download do arquivo ser concluído, encerre a tarefa.""Quando aparecer a mensagem 'Pedido criado com sucesso', finalize a execução.""Após clicar em 'Salvar' e ver a confirmação na tela, encerre."

    Webhooks

    Configure webhooks para ser notificado automaticamente quando uma execução finalizar.

    Configuração

    • • Máximo de 5 webhooks por automação
    • • Disparados quando uma run finaliza
    • • Header x-webhook-secret para autenticação
    • Timeout: 10 segundos
    Exemplo de payload
    {
      "id": "DPD9oUHTmpV8dIsLrORO",
      "deliveryDate": "2025-09-09T01:32:05.356711+00:00",
      "run": {
        "id": "iuCFO7yUk2pyAsMFPKyI",
        "runMode": "bot",
        "requestedBy": "gta_pMu************************************kUCY",
        "startedAt": "2025-09-09T01:31:14.040000+00:00",
        "status": "succeeded",
        "attempts": 1,
        "errorMessage": null
      }
    }

    Autorreparo de Automação

    Se o site mudar e algum elemento não for encontrado, a automação entra em autorreparo automaticamente.

    🔧 Processo Automático

    • Não é necessário pausar o envio de runs
    • • Runs recebidas durante o autorreparo são enfileiradas
    • • Executadas assim que o reparo finalizar
    • • O processo é interno e não necessita de ação externa

    Padrões da API

    Nossa API segue padrões RESTful com arquitetura de URLs aninhadas previsível e legível.

    Estrutura de URLs

    Hierarquia padrão:
    /organizations/{orgId}
    /sites/{siteId}
    /automations/{automationId}
    /runs/{runId}
    /result

    📄 Recursos Individuais

    • /runs/{runId} → retorna uma run
    • /automations/{automationId} → dados da automação
    • /sites/{siteId} → dados do site

    📋 Coleções

    • /runslista de runs
    • /automations → lista de automações
    • /sites → lista de sites

    Características da API

    • Versão: /v1 - versionamento explícito
    • Autenticação: Header x-api-key: YOUR_API_KEY em todas as chamadas
    • Arquitetura aninhada: URLs seguem a hierarquia lógica dos recursos
    • Environment-first: endpoints operacionais aceitam environmentSlug; se omitido, usam o environment default
    • Previsibilidade: Padrões consistentes facilitam o desenvolvimento

    Referência de Endpoints

    POST
    Criar Run

    Executa a automação com parâmetros opcionais

    GET
    Buscar Run por ID

    Verifica status da execução

    GET
    Buscar Resultado da Run

    Obtém arquivo ou JSON extraído