Integrações de Parceiros do Launch Pad
Opção de Integração para Parceiros 2 de 4

Lançamento em Um Clique, em Detalhe

Seu produto envia um limite e abre o Launch Pad já autenticado naquele talhão. Seu usuário planeja no editor de rotas do Launch Pad e o Projeto de Linhas finalizado volta para o seu produto. Esta página é a referência completa: modelo de contas, fluxo de ponta a ponta, URL de redirecionamento e caminhos de retorno.

Visão Geral

O Lançamento em Um Clique permite que seu produto incorpore planejamento de linhas sem construir um planejador. Seu backend faz algumas chamadas REST para provisionar o usuário e enviar um limite, e então abre o Launch Pad já autenticado no talhão certo. O editor de rotas, o armazenamento e a exportação dos planos são tarefa do Launch Pad. O Projeto de Linhas finalizado retorna ao seu produto.

O Lançamento em Um Clique é a segunda das quatro opções de integração para parceiros, e aquela pela qual a maioria dos parceiros começa. As seções abaixo descrevem o que seus usuários finais vivenciam, o que você ganha como negócio e como o lançamento remove o atrito. A seção Detalhe Técnico, mais abaixo, contém a especificação de engenharia.

2 de 4
Opção de Integração
3
Passos até o Primeiro Lançamento
REST
Estilo de API
OAuth 2.0
Padrão de Auth
Recurso Complementar

Portal do Desenvolvedor & Referência da API

Referência completa da API REST, padrões de autenticação e guias de introdução à API pública do Launch Pad. Recorra a ela quando começar a dimensionar uma integração mais profunda via API, ou sempre que precisar de detalhes no nível de endpoint além do que esta página cobre.

Acessar o Portal do Desenvolvedor

O Que Seus Usuários Experimentam

Com o Lançamento em Um Clique, o Launch Pad atua como um app companion do seu produto. Ele abre em uma nova janela do navegador, ou em um iframe dentro da sua interface, com toda a configuração feita em segundo plano, para que o usuário comece a trabalhar imediatamente.

Sem Novo Cadastro

Os usuários não criam uma conta no Launch Pad. A identidade deles vem do seu produto.

Sem Segundo Login

Os usuários são autenticados automaticamente quando abrem o Launch Pad a partir do seu aplicativo.

Sem Upload de Arquivos Para Começar

O talhão certo e seu contorno já estão carregados quando o usuário chega. A manipulação de talhões é um dos maiores obstáculos quando produtores adotam ferramentas agrícolas externas; um fluxo "hyperlink, fazer login, subir arquivo" desperdiça a maior parte do valor que uma integração deveria entregar.

Viagem de Volta (Manual no Começo)

Quando os usuários terminam, baixam o arquivo do Projeto de Linhas do Launch Pad e fazem upload no seu produto. Um ponto natural para automatizar depois via webhook ou uma integração de envio personalizado, reaproveitando o cliente de API que você já constrói para o lançamento.

O Que Você Ganha Como Parceiro

Feito para empresas e equipes de engenharia que querem incorporar roteirização de precisão sem precisar montar a infraestrutura que a sustenta.

Uma Identidade de Administrador

Um único usuário administrador é sua identidade dentro do Launch Pad. Esse mesmo usuário detém a API key para chamadas servidor-a-servidor e também pode entrar diretamente no Launch Pad para inspecionar, auditar ou dar suporte a um cliente.

Faturamento Consolidado

Todo o uso é consolidado em uma única conta de faturamento do parceiro. Usuários finais nunca veem saldos de créditos ou faturas dentro do Launch Pad. Você é a parte cobrada; o preço é por volume e negociado.

Visão de Admin Entre Clientes

Seu admin vê uso, planos, talhões e atividade por usuário de cada cliente que você cadastra, tudo em um só lugar. Essa é a visibilidade que você precisa para dar suporte aos clientes e reconciliar o faturamento.

Onde o Lançamento em Um Clique Se Encaixa

A Verge oferece quatro formas de adicionar o Launch Pad ao seu produto, em ordem crescente de esforço. O Lançamento em Um Clique é a segunda, e aquela pela qual a maioria dos parceiros começa. Compare as quatro opções.

  1. Opção 1
    White Label

    Sem código. Seu logo, subdomínio e faturamento no Launch Pad como ele é.

  2. Você Está Aqui
    Opção 2
    Lançamento em Um Clique

    Poucas chamadas de API. O editor de rotas do Launch Pad faz o planejamento e o plano volta para você.

  3. Opção 3
    Integração via API

    Sua interface, nosso motor. Você mesmo renderiza e despacha o plano.

  4. Opção 4
    Enterprise

    Um projeto conjunto. Launch Pad embutido nativamente no seu FMIS.

Em Detalhe

Como o Lançamento em Um Clique Remove o Atrito

Por Que o Lançamento em Um Clique Existe

O Lançamento em Um Clique é a diferença entre uma integração e um hyperlink. Da perspectiva do usuário, o Planejamento de Linhas é parte do seu produto: ele clica em um botão, faz a tarefa e traz o resultado de volta.

Para isso funcionar, ele remove os dois momentos de maior atrito na adoção de uma ferramenta agrícola externa:

  1. Configuração de conta (cadastro, login, seleção de empresa). Seu backend cria e autentica o usuário nos bastidores.
  2. Upload do limite. Seu backend envia o limite ao Launch Pad pela API antes de abrir a janela, para que o usuário chegue com o talhão certo já na tela.

O tratamento do limite é o mais impactante dos dois. É um dos maiores bloqueios quando produtores adotam ferramentas agrícolas externas.

Modelo de Conta

Um engajamento de Lançamento em Um Clique é organizado assim:

Sua identidade no Launch Pad é um único usuário administrador

Esse usuário detém sua API key, tem visibilidade administrativa em todas as organizações de cliente que você criar e também pode entrar diretamente no Launch Pad para inspecionar, auditar ou dar suporte a um cliente. Os usuários finais nunca veem esse usuário.

Cada cliente se torna sua própria organização dentro do Launch Pad

Povoada com os usuários finais que você cria. Um usuário final só enxerga a própria organização; nunca vê os dados de clientes de outros parceiros.

O faturamento é consolidado na sua conta de cobrança

Usuários finais nunca veem saldos de créditos ou faturas dentro do Launch Pad; você é a parte cobrada.

Visão de admin entre clientes

Seu usuário administrador vê uso por organização de cliente, contagens de planos e talhões e atividade por usuário de cada cliente em um só lugar. Essa é a visibilidade que você precisa para dar suporte aos clientes e reconciliar o faturamento.

O Que os Usuários Veem no Launch Pad

Quando um usuário abre o Launch Pad por um lançamento de parceiro, algumas opções do Launch Pad não se aplicam e ficam ocultas:

  • Sem troca de senha, sem gerenciamento de e-mail ou conta, sem cadastro. O usuário não tem senha do Launch Pad; o login vem do seu produto. A tela de troca de senha mostra uma mensagem "Senha gerenciada pelo [Parceiro]", igual à forma como o Launch Pad já lida com usuários que entram via John Deere, Trimble ou CNH.
  • Sem seletor de empresa. A sessão fica travada em uma única organização de cliente para aquela visita.
  • Logout é substituído por "Voltar para [Parceiro]", que fecha a aba ou envia o usuário de volta a uma URL que você fornece, em vez de deixá-lo na tela de login do Launch Pad.

O menu principal de trabalho (Planos, Planejamento de Linhas, Equipamentos, Comparar) continua disponível porque os usuários precisam dele para fazer a tarefa. Só ficam ocultas as opções de identidade, faturamento, administração e gestão de conta.

Devolução do Projeto de Linhas

Depois que um usuário finaliza um Projeto de Linhas no Launch Pad, o resultado precisa voltar para o seu produto. Há quatro opções disponíveis, e elas funcionam com qualquer opção de integração. As opções de envio (push) são fortemente preferíveis à consulta (polling).

Padrão do Lançamento em Um Clique

Download / Upload Manual

O usuário clica em Baixar no Launch Pad e depois faz upload do arquivo no seu produto.

Melhor quando: for o caminho mais rápido para começar.

Recomendado para Produção

Webhook Push

O Launch Pad envia cada plano finalizado para uma URL que você fornece, assinado com HMAC.

Melhor quando: você quer entrega em tempo real e pode hospedar um endpoint genérico de webhook.

Engenharia Por Parceiro

Custom Push

A Verge escreve uma integração sob medida que entrega os planos finalizados diretamente na sua API existente.

Melhor quando: você tem uma API de entrada que aceita credenciais, mas não quer construir um receptor de webhook.

Use com Parcimônia

Polling Pull

Seu backend busca periodicamente os planos finalizados na API do Launch Pad.

Melhor quando: nenhuma opção de push é viável. A cadência precisa ser conservadora.

Pré-requisito obrigatório para download/upload manual: seu fluxo de importação precisa aceitar pelo menos um formato emitido pelo Launch Pad (ISOXML, Shapefile, KML ou formatos específicos do parceiro; confirmado durante o dimensionamento). Sem essa sobreposição, o Lançamento em Um Clique não consegue entregar um fluxo de ponta a ponta utilizável.

Para Desenvolvedores

Detalhes Técnicos

Quem não é técnico pode parar por aqui. O restante desta página é a especificação de engenharia: fluxo ponta a ponta, anatomia da URL de redirecionamento e mecânica da devolução.

Fluxo Ponta a Ponta

O que acontece, passo a passo, quando um usuário do parceiro abre o Launch Pad:

sequenceDiagram
    autonumber
    participant YU as UI do Parceiro
    participant YB as Backend do Parceiro
    participant LA as Launch Pad API
    participant LU as Launch Pad UI

    YU->>YB: usuário clica em "Abrir Projeto de Linhas"

    note over YB,LA: Etapa 1: criar usuário do LP se não existir
    YB->>LA: POST /api/users (idempotente em externalUserId)
    YB->>LA: POST /api/company-accesses (idempotente em usuário + org)

    note over YB,LA: Etapa 2 (opcional): enviar um talhão
    YB->>LA: POST /api/vBoundary/upsert

    note over YB,LA: Etapa 3: solicitar um código de lançamento
    YB->>LA: POST /api/partner/launch ({ userId, companyId, returnUrl })
    LA-->>YB: { code, expiresInSec: 600 }

    YB-->>YU: 302 redireciona para https://your-app.vergeag.com/launch?code=...
    YU->>LU: navegador navega para /launch?code=...
    LU->>LA: POST /api/partner/launch/{code}/exchange
    LA-->>LU: JWT + refresh token
    note over LU: armazena JWT no localStorage,
remove o código da URL,
navega para returnUrl

Propriedades Principais

  • Você autentica servidor-a-servidor com uma credencial de longa duração (a API key do seu usuário administrador). O navegador nunca vê a API key.
  • O navegador só vê um código opaco, de uso único e curta duração na URL (time-to-live de 10 minutos, consumido na troca).
  • O endpoint de troca não exige login; o próprio código é a credencial. A UI do Launch Pad o chama assim que o usuário chega.
  • O Launch Pad emite uma sessão de usuário normal (JWT + refresh token), armazena no localStorage e direciona o usuário para a URL que você especificou.

Alinhamento com Padrões

O padrão é o OAuth 2.0 Authorization Code Grant, com a tela interativa de consentimento substituída por uma chamada de autorização servidor-a-servidor do seu backend. A terminologia moderna do OAuth chama essa variante de back-channel de Pre-Authorized Code Flow (introduzido na spec OpenID for Verifiable Credential Issuance).

O código de curta duração na URL e a troca por um JWT pelo canal de fundo se comportam exatamente como no OAuth de livro-texto; o consentimento é estabelecido pelo acordo de parceria em vez de um diálogo de consentimento por lançamento.

Como É a URL de Redirecionamento

O que o navegador do usuário recebe (uma linha, como cabeçalho Location:):

https://your-app.vergeag.com/launch?code=lc_R3w9q-Kx7VtNm2bH8sLpYj4eQ6gZc1aXfU0dT5nMoP&returnUrl=%2Fpath-planning%2Fboundary%2Fb3f47e1c-8a02-4d59-9c6e-2f7a8b1d6e09

Decodificada para leitura:

Componente Valor Notas
Origem https://your-app.vergeag.com A Verge fornece a origem de produção durante o onboarding. HTTPS é obrigatório; HTTP puro é recusado.
Caminho /launch Rota pública e não autenticada. Nenhuma sessão prévia do Launch Pad é necessária.
code lc_R3w9q-... O prefixo lc_ marca esse valor como código de lançamento (distinto de uma API key LP- nos logs). O payload é de 32 bytes aleatórios criptográficos, codificado em base64url. Uso único, TTL de 10 minutos, vinculado no momento da emissão a um usuário, uma org e um returnUrl.
returnUrl /path-planning/boundary/... O caminho relativo do Launch Pad para onde o usuário é enviado depois que o JWT é emitido. Usa segmentos de rota (ex.: /path-planning/boundary/:id) para que o talhão carregue automaticamente. Precisa começar com /. URLs absolutas, URLs relativas a protocolo //host e \ são rejeitadas na emissão.

O Que a UI do Launch Pad Faz ao Chegar

Você não implementa isso; está aqui só como referência para você raciocinar sobre o que seus usuários veem entre o clique e o talhão renderizado:

  1. code e returnUrl da query string.
  2. Troca o código com o Launch Pad por uma sessão de usuário.
  3. Autentica o usuário na organização de cliente correta.
  4. Remove o código da barra de endereço para que ele não fique no histórico do navegador.
  5. Envia o usuário para o returnUrl que você especificou.

Se code estiver ausente, expirado ou já consumido, o usuário vai parar em uma página de erro que pede para voltar ao seu produto e tentar de novo.

Opções de Devolução em Detalhe

Download / Upload Manual

O usuário clica em Download no Launch Pad, o arquivo chega ao dispositivo dele e ele faz upload no seu produto pelo seu fluxo atual de importação de arquivos. É o padrão do Lançamento em Um Clique. Nenhuma infraestrutura nova do seu lado. Exige que seu fluxo de importação aceite pelo menos um formato emitido pelo Launch Pad (ISOXML, Shapefile, KML ou formatos específicos do parceiro).

Webhook Push

O Launch Pad envia POSTs HTTPS para uma URL que você fornece. Cada requisição carrega uma assinatura HMAC-SHA256, calculada contra um segredo compartilhado que a Verge emite no onboarding. Você verifica a assinatura, processa o payload e responde com 2xx em até 10 segundos.

Propriedades Principais

  • Você não se autentica no Launch Pad para esse fluxo. Sem handshake OAuth, sem JWT, sem API key do Launch Pad do seu lado. O segredo HMAC compartilhado é todo o modelo de autenticação.
  • Um segredo por assinatura, rotacionável. Emitido uma vez no onboarding. A rotação usa uma janela de sobreposição entre dois segredos, para que as entregas não falhem durante o cutover.
  • A entrega de arquivo escala com o tamanho do payload. Artefatos pequenos (menos de 1 MB) vão inline em base64 dentro do corpo do webhook. Artefatos maiores vão como uma URL presigned de download de curta duração embutida no corpo; você faz GET nessa URL diretamente, sem credenciais do Launch Pad.
  • Entrega at-least-once. O Launch Pad faz retry com backoff exponencial em respostas não-2xx e timeouts. Cada evento carrega um cabeçalho Verge-Webhook-Id para que você possa fazer deduplicação.

O Que Você Constrói

  • Um endpoint HTTPS público que aceita POSTs. Nenhum login ou sessão é exigida no endpoint além da verificação da assinatura.
  • Verificação HMAC com o segredo compartilhado (cerca de dez linhas de código em qualquer linguagem).
  • Um teste de idempotência no Verge-Webhook-Id para que um retry nunca processe duas vezes.
  • Uma resposta 2xx rápida. Processe qualquer trabalho pesado de forma assíncrona para que timeouts não disparem chuvas de retry.

O Que a Verge Opera

  • O emissor de saída e a fila de retry.
  • Tratamento de dead-letter para entregas permanentemente falhadas.
  • Uma UI administrativa onde você consulta logs de entrega e reaplica eventos que falharam.
  • Uma lista publicada de faixas de IP de saída que você pode liberar no firewall.

Custom Push (engenharia por parceiro)

Se você já tem uma API de entrada autenticada, mas não quer construir um receptor genérico de webhook, a Verge pode escrever uma integração de push sob medida que chama a sua API diretamente. Você compartilha credenciais seguras com a Verge (preferencialmente uma API key); o emissor da Verge se autentica em você a cada push.

Esta opção existe por causa de uma assimetria na direção da confiança. Para grandes parceiros FMIS (John Deere, Trimble, CNH), os usuários finais se autenticam no Launch Pad com a conta do OEM, então o Launch Pad já possui tokens seguros para devolver dados. O Launch Pad opera esse modelo de envio pelo OEM hoje. Em uma integração de Lançamento em Um Clique a direção da confiança se inverte (você se autentica no Launch Pad), então o Launch Pad não tem nenhuma credencial prévia para o seu sistema. O envio personalizado fecha essa lacuna com um arranjo sob medida.

Trade-offs

  • Engenharia sob medida do lado da Verge. A API de cada parceiro é diferente. É trabalho por parceiro, não um recurso genérico, e o preço reflete isso.
  • Arranjo de parceiro de confiança. Você compartilha uma API key (ou credencial segura equivalente) com a Verge e opera essa credencial do seu lado.
  • Manutenção conjunta. Os dois lados mantêm a integração funcionando através de mudanças de API e rotações de credenciais.

Adequado quando você já tem uma API de entrada, não quer construir um receptor genérico de webhook e está comprometido o suficiente para bancar o trabalho por parceiro.

Polling Pull (use com parcimônia; push é preferido)

Se nenhuma opção de push for viável, seu backend pode chamar periodicamente a API do Launch Pad (usando a mesma X-API-KEY já emitida para provisionamento) para buscar Projetos de Linhas publicados ou atualizados desde a última consulta.

Trate isso como recuperação em lote eventualmente consistente, não como entrega em tempo real. Uma cadência típica é horária ou menos frequente. Polling de alta frequência que pareça um busy-wait contra uma ação do usuário não é suportado e pode sofrer rate limit. Ficar fazendo polling por horas esperando um único evento iniciado pelo usuário é exatamente o padrão que essa opção não atende.

  • O que você constrói: um loop de polling com cadência conservadora, deduplicação por ID de Projeto de Linhas e ingestão no seu armazenamento de arquivos.
  • Trade-off: latência significativa entre a ação do usuário e a chegada do dado; carga adicional sobre a API do Launch Pad.
  • Push é fortemente preferido. Use polling apenas quando nem Webhook push nem Custom push forem viáveis.

Outras Opções de Integração

Esta página é a referência completa do Lançamento em Um Clique. Se o seu produto precisa de menos, ou de mais:

White Label (menos trabalho)

Nada para construir. Seus clientes usam o Launch Pad diretamente com o seu logo e subdomínio, sob o seu faturamento consolidado. Leia sobre White Label.

Integração via API (mais controle)

O esquema da API pública está em vergeag.com/developers. Com o Lançamento em Um Clique no lugar, você pode expandir chamando mais da API diretamente com a mesma chave e renderizando Projetos de Linhas na sua própria interface. Leia sobre Integração via API.

Enterprise (totalmente personalizado)

Launch Pad embutido no seu FMIS como se fosse nativo: seu design system, login único com OpenID Connect, caminhos de retorno personalizados para as suas APIs. Dimensionado em conjunto como um projeto conjunto. Leia sobre Enterprise.

Vamos Conversar Sobre uma Integração de Parceiro

As integrações para parceiros são dimensionadas por parceiro. Entre em contato e vamos percorrer juntos a escolha da opção, os caminhos de retorno e o onboarding.

Falar com a Verge Ag