Ir para conteúdo principal

Aplicações para programadores, chaves de API e webhooks

Crie aplicações e chaves de API, teste num sandbox, envie webhooks, instale aplicações de outras empresas e consulte os registos de pedidos e os gastos por chave.

Escrito por Sarah Chen

As definições de Programador são onde liga o Exayard ao seu próprio código e às aplicações desenvolvidas por outras empresas. Abra Definições e depois Programador. Apenas os administradores da empresa veem esta opção no menu de Definições. Um membro que abra a página pode consultá-la, mas não pode alterar nada.

As aplicações, as chaves de API, os webhooks e os registos estão incluídos em todos os planos, incluindo o Free. Apenas o trabalho de IA é cobrado.

Aplicações

Uma aplicação é uma das suas integrações, como "Orçamentista Acme" ou "Sincronização noturna". Cada chave de API pertence a uma aplicação. Aplicações é a primeira secção da página. Todos os membros a podem consultar. Apenas os administradores criam ou alteram aplicações.

Clique em Nova aplicação e preencha os campos Nome, Descrição, Página inicial, Email de suporte e Âmbitos. Os âmbitos dividem-se em leitura e escrita por recurso, como read:projects e write:estimates. As aplicações não podem pedir o âmbito admin:org. Uma empresa pode ter até 25 aplicações.

Cada aplicação mostra quando foi criada e o respetivo limite de pedidos, como "Até 60 pedidos por minuto por empresa e 600 no total". O menu Mais ações da aplicação reúne:

  • Editar altera os detalhes e os âmbitos da aplicação.

  • Webhook define o único endereço que recebe eventos de todas as empresas que instalaram a aplicação.

  • Eliminar aplicação remove a aplicação e revoga todas as respetivas chaves. Todas as empresas que a instalaram perdem o acesso.

Chaves de API

Uma chave de API permite que o seu próprio código chame a API do Exayard. As chaves ficam dentro de uma aplicação, em Chaves. Uma chave funciona na empresa da própria aplicação, pelo que não é necessário indicar qualquer ID de empresa.

Para criar uma, clique em Nova chave na aplicação. Atribua um Nome à chave, como "Produção". Em Âmbitos, escolha Todos para conceder todos os âmbitos da aplicação, ou Específicos para escolher menos. Defina uma data opcional em Expira se a chave se destinar a um trabalho de curta duração. A chave funciona até ao final desse dia. Clique em Criar.

O Exayard mostra a chave completa uma única vez. Copie-a nesse momento, porque nunca voltará a ser apresentada. O Exayard guarda apenas uma cópia codificada, pelo que uma chave perdida não pode ser recuperada. Crie uma nova e revogue a antiga.

Uma chave começa por exa_live_. Uma chave criada num sandbox começa por exa_test_. Depois de a criar, a chave mostra o seu nome, uma pré-visualização como exa_live_...AbCd e Última utilização ou Nunca utilizada. Uma chave com data de expiração mostra Expira e a respetiva data, e uma chave expirada mostra Expirada.

Uma aplicação pode ter até 25 chaves ativas. Uma chave expirada continua a contar até a revogar. Para mudar de chave sem interrupções, crie uma segunda chave, passe os seus servidores para ela e depois revogue a primeira.

Abra o menu Ações da chave de uma chave para Mudar o nome ou Revogar. A revogação não pode ser anulada e a chave deixa de funcionar em 30 segundos.

Se uma chave aparecer num local público, como um repositório de código público, o Exayard revoga-a, envia um email aos seus administradores e mantém-na na lista com a indicação Encontrada em público, revogada.

Quando outra empresa instalou a sua aplicação, a caixa de diálogo de nova chave mostra também Funciona em. Esta empresa é a opção predefinida. Todas as empresas que a instalaram cria uma chave que o seu servidor utiliza em cada uma dessas empresas. Cada chamada identifica então a respetiva empresa no cabeçalho Exayard-Organization-Id.

As mesmas chaves ligam as ferramentas sem código. Consulte Ligar o Exayard ao Zapier, Ligar o Exayard ao Make e Ligar o Exayard ao n8n. Para assistentes de IA, consulte Ligar o Exa ao seu assistente de IA.

Chaves antigas

As chaves criadas antes de as chaves ficarem dentro das aplicações começam por ak_. Continuam a funcionar, mas não é possível criar novas. Aparecem em Chaves antigas, no fundo da página, apenas enquanto existirem.

Cada administrador vê aí todas as chaves da empresa, seja quem for que as criou. Uma chave criada por outra pessoa mostra Criada por e o nome dessa pessoa. Cada pessoa vê também as suas próprias chaves pessoais. Clique no ícone do caixote do lixo para Revogar uma chave. Deixa de funcionar de imediato.

Sandboxes

Um sandbox é uma empresa de teste ligada à sua. Utilize-o para criar e testar uma integração sem mexer nos seus projetos reais. Apenas os administradores veem Sandboxes.

Clique em Novo sandbox, atribua-lhe um Nome e clique em Criar. Uma empresa pode ter até 5 sandboxes. Abrir muda para o sandbox, onde o seletor de empresas o marca como Sandbox. Crie aí uma aplicação e uma chave como habitualmente. As respetivas chaves começam por exa_test_. Para passar a produção, crie a mesma aplicação e a mesma chave na sua empresa real e substitua a chave no seu código.

Um sandbox segue o plano da sua empresa, e a sua empresa paga a respetiva utilização. Não tem faturação própria nem recebe utilização mensal de IA própria. Os webhooks e as integrações funcionam como na sua empresa real.

Um sandbox não envia emails de partilha de propostas nem cópias assinadas a pessoas fora dele, e não envia SMS. Estes aparecem como "Não enviado porque esta empresa é um sandbox". Os convites para aderir ao sandbox são enviados como habitualmente.

As medições e as leituras de ficheiros num sandbox devolvem resultados copiados do nosso projeto de exemplo, sem custo. A medição, as respetivas páginas e o webhook de conclusão da medição são marcados como exemplos. Os orçamentos, as propostas, a pesquisa de elementos e o chat também respondem com exemplos, sem custo.

Para remover um sandbox, clique em Eliminar na respetiva linha e depois em Eliminar sandbox. O sandbox é encerrado, as respetivas chaves deixam de funcionar e os respetivos dados são apagados mais tarde.

Webhooks

Um webhook indica ao Exayard que deve notificar o seu servidor quando algo acontece na sua empresa. Todos os membros podem consultar a lista. Apenas os administradores adicionam ou alteram webhooks.

Clique em Criar webhook, introduza o URL que deve receber as entregas e adicione uma Descrição opcional. Escolha os Eventos a enviar. Selecione Todos para receber todos os eventos, incluindo os novos, ou Específicos para escolher a partir da lista. Todos os eventos e o respetivo conteúdo estão listados no catálogo de eventos de webhook.

Quando cria um webhook, o Exayard mostra o respetivo Segredo de assinatura uma única vez. Copie-o nesse momento, porque não voltará a ser apresentado.

Abra o menu Mais ações de um webhook para o resto:

  • Editar altera o URL, a descrição e os eventos, e define o respetivo Estado como Ativo ou Em pausa. Um webhook em pausa não recebe entregas. A caixa de diálogo tem também Renovar segredo. O segredo antigo deixa de funcionar de imediato, por isso atualize primeiro o seu servidor.

  • Enviar evento de teste envia um evento do Tipo de evento que escolher. A caixa de diálogo aguarda a resposta do seu servidor e mostra o resultado e o código de resposta. Um evento de teste inclui "test": true.

  • Entregas lista as últimas 25 entregas com o respetivo evento, estado, código de resposta e número de tentativas. Uma entrega está Pendente, A tentar novamente, Entregue ou Falhou. Os administradores podem clicar em Reenviar para enviar novamente uma entrega.

  • Eliminar webhook termina todas as entregas para esse URL.

Um evento de teste e um reenvio são enviados uma vez e nunca são repetidos.

Proteger as entregas de webhooks

Cada entrega inclui um cabeçalho Exayard-Signature no formato t=<unix>,v1=<digest>. O Exayard constrói a assinatura juntando o carimbo temporal e o corpo do pedido e assinando-os depois com HMAC-SHA256, utilizando o segredo do seu webhook.

Cada entrega inclui também os cabeçalhos Exayard-Event-Id, Exayard-Event-Type e Exayard-Organization-Id. O corpo JSON tem um campo organizationId que identifica a empresa de onde veio o evento. O cabeçalho contém o mesmo ID, pelo que pode encaminhar uma entrega antes de ler o corpo. A assinatura abrange todo o corpo, incluindo o organizationId.

Como cada entrega identifica a respetiva empresa, um único endereço recetor pode servir várias empresas. Registe o mesmo URL em cada empresa e encaminhe cada entrega pelo organizationId. Cada webhook tem o seu próprio segredo, por isso escolha o segredo pelo Exayard-Organization-Id antes de efetuar a verificação.

Para verificar uma entrega, volte a calcular a assinatura com o seu segredo, confirme que o carimbo temporal está dentro de cinco minutos em relação ao momento atual e compare os resumos.

Uma entrega falhada é tentada até 10 vezes no total, ao longo de cerca de 80 horas, com intervalos cada vez maiores entre tentativas. Cada tentativa envia o mesmo corpo e o mesmo ID de evento. Um redirecionamento conta como falha.

Permitir que outras empresas instalem a sua aplicação

A sua aplicação funciona na sua própria empresa assim que a cria. Cada aplicação tem também uma parte Permitir que outras empresas instalem esta aplicação. Esta mostra se a aplicação está Revista, com Revisão pedida ou Não revista, os respetivos Endereços de início de sessão, o ID de cliente e quantas empresas a podem instalar.

Os administradores abrem o menu Ações de instalação para estas opções:

  • Editar endereços de início de sessão define os endereços para onde o Exayard reencaminha as pessoas quando a sua aplicação inicia a sessão delas com a respetiva conta Exayard. Introduza um endereço por linha, até 10. Cada um tem de começar por https://, ou por http://localhost enquanto faz testes. Na primeira vez que guarda endereços de início de sessão, o Exayard mostra o Segredo de cliente da aplicação uma única vez.

  • Copiar ligação de instalação copia uma ligação que pode enviar a qualquer empresa. Esta abre a caixa de diálogo de instalação para o administrador dessa empresa.

  • Pedir revisão envia a aplicação ao suporte do Exayard para revisão.

Uma aplicação nova pode ser instalada em até 25 empresas além da sua e não aparece em Encontrar aplicações. As empresas em Contas para os seus clientes não contam para esse limite. Depois de aprovada, a aplicação aparece como Revista e o limite de instalações é levantado. Utilize Mostrar em Encontrar aplicações para a incluir no diretório de todas as empresas, ou Ocultar de Encontrar aplicações para a retirar. Uma aplicação Suspensa não pode chamar o Exayard até o suporte levantar a suspensão, e as respetivas instalações são mantidas.

Quando remove âmbitos de uma aplicação, todas as instalações perdem-nos de imediato. Quando adiciona âmbitos, cada empresa mantém o acesso atual até um dos respetivos administradores aprovar os novos âmbitos.

Webhook da aplicação

Abra o menu Mais ações da aplicação e clique em Webhook. Introduza o URL e clique em Criar e, depois, copie o Segredo de assinatura, que o Exayard só mostra uma vez. Cada empresa que instalou a aplicação envia os eventos abrangidos pelos âmbitos que concedeu. A sua aplicação recebe também app.installed, app.scopes_approved e app.uninstalled quando uma empresa a instala, aprova um acesso mais amplo ou a remove. As entregas identificam a respetiva empresa e são assinadas da mesma forma que os outros webhooks.

A mesma caixa de diálogo permite Pausar e Retomar as entregas, Renovar segredo e Eliminar webhook.

Aplicações ligadas

Aplicações ligadas apresenta as aplicações instaladas na sua empresa. Todos os membros a podem ver. Apenas os administradores instalam, removem ou aprovam.

Cada linha mostra o nome da aplicação, se está Revista, a empresa que a desenvolveu, quem a instalou e quando, e os âmbitos que lhe foram concedidos.

Instalar uma aplicação

Abra a ligação de instalação da aplicação, ou clique em Instalar ao lado dela em Encontrar aplicações. A caixa de diálogo mostra quem desenvolveu a aplicação, se está revista e os âmbitos que pede. Depois escolha:

  • Empresa: qualquer empresa em que seja administrador. Uma empresa que já tem a aplicação aparece marcada como (instalada). Instalar novamente guarda as suas novas escolhas.

  • Projetos: Todos os projetos, ou Apenas estes projetos e marque aqueles a que a aplicação pode aceder, até 500. A aplicação não pode aceder a nenhum outro projeto da empresa.

  • Limite mensal de IA: o valor máximo que o trabalho de IA da aplicação pode custar à sua empresa em cada mês de faturação, na sua moeda de faturação. Deixe o campo vazio para Sem limite.

Clique em Instalar. Se a aplicação iniciar a sua sessão, o Exayard leva-o depois a concluir o início de sessão na aplicação. Se for membro mas não administrador, a caixa de diálogo indica-lhe qual o administrador da empresa que a pode instalar. Clique em Copiar ligação para lha enviar.

Para alterar os projetos mais tarde, abra novamente a ligação de instalação e instale com a nova escolha.

Aprovar mais acesso

Quando uma aplicação pede mais âmbitos, a respetiva linha mostra Pede mais acesso com os novos âmbitos. Um administrador clica em Aprovar para os conceder. Até lá, a aplicação mantém o acesso que tinha.

Remover uma aplicação

Abra o menu Mais ações da aplicação, clique em Remover e confirme. A aplicação perde de imediato o acesso à sua empresa e os respetivos webhooks param. O trabalho de IA que já tinha iniciado continua até terminar.

Encontrar aplicações

Encontrar aplicações aparece dentro de Aplicações ligadas. Apresenta as aplicações revistas que os respetivos criadores optaram por listar. Uma aplicação que a sua empresa já tem aparece como Instalada. Clique em Instalar em qualquer outra aplicação para abrir a caixa de diálogo de instalação.

As suas ligações pessoais

As suas ligações pessoais apresenta as ferramentas de IA e outras aplicações que ligou à sua própria conta Exayard, como o ChatGPT ou o Claude. Aparece no topo de Aplicações ligadas, e só o utilizador vê as suas próprias ligações. Uma ligação pessoal atua em seu nome, pelo que pode aceder a tudo aquilo a que o utilizador tem acesso.

Cada ligação mostra quando foi utilizada pela primeira e pela última vez, e as empresas em que foi utilizada. Para terminar uma, abra o respetivo menu Mais ações, clique em Remover e confirme. A chamada seguinte dessa ligação é recusada. A ligação permanece na lista marcada como Removida, e Permitir novamente volta a dar-lhe acesso. Para ligar uma nova ferramenta, consulte Ligar o Exa ao seu assistente de IA.

Contas para os seus clientes

A sua aplicação pode criar empresas Exayard através da API para clientes que utilizam o Exayard apenas através do seu produto. A sua empresa é proprietária destas empresas e paga o trabalho de IA executado nelas. Não têm membros próprios, e as suas aplicações são instaladas nelas automaticamente.

Contas para os seus clientes apresenta-as aos administradores, com o Nome de cada empresa e a data em que foi Criada. Clique em Libertar e confirme para encerrar uma. Todas as aplicações nessa empresa perdem o acesso.

Começar

O cartão Início rápido contém um prompt pronto a usar para um editor de IA como o Claude ou o Cursor. Clique em Copiar prompt e cole-o no seu editor. O prompt inclui o URL base da API, o formato de autenticação, os âmbitos e o esquema de assinatura dos webhooks, para que a IA possa criar uma integração funcional e pedir-lhe os detalhes de que necessita. Apenas os administradores veem este cartão, porque é necessária uma chave de API.

O cartão Documentação tem ligações para a documentação completa para programadores, através de Abrir documentação, e para a Especificação OpenAPI, que descreve todas as rotas e esquemas. Os administradores veem também Ligar ao Claude ou ao Cursor, que abre a configuração para ligar assistentes de IA ao Exayard.

Registos

Registos mostra os pedidos feitos à API, dos mais recentes para os mais antigos. Cada linha mostra o Método, o Caminho, o Estado, a Hora e a Latência. Clique em Carregar mais no fundo para ver pedidos mais antigos.

Os administradores veem todos os pedidos. Os membros veem apenas os pedidos que não vieram através de uma aplicação.

Os administradores podem filtrar por Aplicação e depois por uma das chaves dessa aplicação. Qualquer pessoa pode escrever um Utilizador final para ver apenas os pedidos desse cliente. Um utilizador final é o seu próprio ID para um dos seus clientes. O seu código envia-o com cada pedido no cabeçalho Exayard-End-User. Nunca utilize um endereço de email como ID.

Selecione uma linha para ver todos os detalhes, incluindo o ID do pedido, a aplicação e o utilizador final, e o Corpo do pedido e o Corpo da resposta. Utilize os registos para confirmar que uma chamada funcionou ou para descobrir porque é que uma integração falha.

Gastos por chave e por utilizador final

Os administradores veem quanto cada aplicação gastou este mês em Gastos por aplicação, em Definições e depois Utilização. As suas próprias aplicações também aparecem aí. Em cada aplicação, Por chave mostra quanto cada chave gastou e Principais utilizadores finais mostra os cinco utilizadores finais que mais gastaram. Os gastos não associados a uma das chaves da aplicação aparecem como Outro.

Limite mensal de IA

O limite mensal de IA de uma aplicação é o valor máximo que o respetivo trabalho de IA pode custar à sua empresa em cada mês de faturação. Para o definir, abra o menu Mais ações da aplicação em Gastos por aplicação e clique em Definir limite mensal de IA. Introduza um valor na sua moeda de faturação e clique em Guardar. Guarde o campo vazio para remover o limite.

Quando a aplicação atinge o seu limite, o respetivo trabalho de IA é recusado durante o resto do mês de faturação, mesmo que a sua empresa ainda tenha utilização de IA disponível. Os limites da própria empresa continuam a aplicar-se. O trabalho de IA que as pessoas iniciam elas próprias nunca conta para o limite de uma aplicação.

Isto respondeu à sua pergunta?