Skip to main content

Registrar um serviço externo

Objetivos de aprendizagem

Neste projeto, você vai:

  • Definir uma credencial nomeada para seu serviço Web externo.
  • Adicionar um serviço Web externo usando uma especificação da API fornecida.
  • Explicar como as ações do Serviço externo se relacionam com a definição de esquema dentro da sua especificação da API.
  • Encontrar as ações dos Serviços externos na caixa de ferramentas do Flow Builder.
  • Criar um fluxo simples com suas ações dos Serviços externos.
Nota

Nota

Deseja aprender em português (Brasil)? Comece o desafio em um Trailhead Playground de português (Brasil) e use as traduções fornecidas entre parênteses para navegar. Copie e cole somente os valores em inglês porque as validações dos desafios dependem de dados em inglês. Se você não passar no desafio em sua organização de português (Brasil), recomendamos que (1) mude o local para os Estados Unidos, (2) mude o idioma para inglês, seguindo as instruções aqui, e (3) clique novamente no botão “Validar o desafio”.

Consulte o emblema Trailhead no seu idioma para saber mais sobre como aproveitar a experiência de Trailhead em outros idiomas.

Pré-requisitos

Antes de obter este emblema, recomendamos que você complete o seguinte.

  • Complete o módulo Serviços externos. Este módulo fornece uma visão geral avançada dos Serviços externos.

Criar um novo Trailhead Playground

Para este projeto, é preciso criar um novo Trailhead Playground. Role até à parte inferior desta página, clique na seta para baixo ao lado de Launch (Iniciar) e selecione Create Playground (Criar Playground). Normalmente, leva de 3 a 4 minutos para criar um novo Trailhead Playground.

Nota

Sim, estamos falando de um Trailhead Playground totalmente novo! Se você estiver usando uma organização ou um playground existente, poderá ter problemas na hora de concluir os desafios.

Introdução

No módulo Serviços externos, você viu como uma API bancária baseada em REST pode ser usada para definir um esquema. Agora vamos usar esse exemplo para oferecer uma experiência mais personalizada ao seu banco fictício. E depois mostrar como o Salesforce pode ser usado para rastrear atividades de vendas em contas bancárias. 

O novo processo de negócios do banco deve permitir que os representantes bancários adicionem contas bancárias no Salesforce. Ele deve garantir que os detalhes da conta bancária, como tipo de conta bancária e ID da conta bancária, sejam sincronizados entre o registro de usuário do Salesforce e o serviço de back-end do banco. Mais de um representante adicionará contas. Portanto, sua lógica de negócios precisa ser capaz de verificar uma conta bancária existente ou criar uma nova.

Para automatizar esse processo, você irá registrar o serviço Web do banco como um serviço externo. Depois que seu serviço bancário é registrado, as operações da API de conta do serviço bancário (adicionar, atualizar, recuperar) ficam visíveis e acessíveis para uso no Salesforce com a ferramenta Flow Builder. 

Neste momento, você tem tudo o que você precisa! Você cria um fluxo que adiciona automaticamente uma nova conta bancária ou atualiza os detalhes de uma conta bancária existente. E ele envia novas informações do serviço bancário para o Salesforce sempre que um representante do banco acessa a conta. 

Etapas para concluir este fluxo

Antes de começar, vamos dar uma olhada nos estágios e na lógica para que você possa ver como as informações fluem. Observe as cinco “etapas” que executaremos para completar o fluxo.

Tela do Flow Builder com um fluxo concluído

  1. Screen (Tela): Bank Account Record (Registro de conta bancária). Captura o nome da conta e o tipo de conta das informações que o representante do banco insere na tela.
  2. Action (Ação): Add Bank Account (Adicionar conta bancária). Com o registro da especificação da API do serviço bancário nos Serviços externos, todas as operações de API definidas em nossa especificação estão agora disponíveis para uso dentro do fluxo como ações correspondentes. Usamos a ação addAccount e especificamos as entradas e saídas da API que atribuiremos a variáveis para uso entre a organização do Salesforce e o serviço bancário.
  3. Decision (Decisão): Bank Account Updated? (Conta bancária atualizada?) A lógica avalia se uma conta bancária existe e precisa de atualização, ou cria uma nova conta bancária, se necessário.
  4. Assignment (Atribuição): Assign Existing Bank Account ID (Atribuir ID da conta bancária existente). Se existe uma conta bancária, a lógica atribui a ID de conta da conta bancária existente e usa esse valor para atualizar a conta de usuário do Salesforce.
  5. Update Records (Atualizar registros): Update Salesforce User Record (Atualizar registro de usuário do Salesforce). Se o sobrenome do usuário do Salesforce corresponder a um registro de conta bancária, nosso fluxo atualiza o registro de usuário do Salesforce com o tipo de conta bancária e a ID de conta bancária. Se nenhuma correspondência de sobrenome for encontrada no serviço bancário e um novo registro de conta bancária for criado, ele atualiza o registro de usuário do Salesforce (se houver um nome correspondente no Salesforce) com o novo tipo de conta bancária e a ID da conta bancária.

Assista a este vídeo para ver um guia passo a passo detalhado de todo o projeto, do início ao fim.

Credenciais nomeadas e acesso do ponto de extremidade

No módulo Serviços externos, você abordou as especificações de API e o que constitui uma API válida e compatível com os Serviços externos. Além de um esquema válido e compatível, você precisa de uma maneira simples de proteger seus serviços Web externos e sua organização do Salesforce. Para essa tarefa, você pode usar Credenciais nomeadas para autenticar suas chamadas para os pontos de extremidade do serviço bancário. 

Tipicamente, o provedor de serviços da Web externo fornece os elementos de uma Credencial nomeada. Esses elementos incluem tanto a URL de um ponto de extremidade de chamada quanto seus parâmetros de autenticação obrigatórios. No emblema Serviços externos, você aprendeu que as especificações da API contêm as informações do ponto de extremidade e os parâmetros de autenticação para os serviços Web da API baseada em REST. Você vai usar essas informações para definir uma Credencial nomeada para sua organização. 

  1. Em Setup (Configuração), insira Named Credentials (Credenciais nomeadas) na caixa Quick Find (Busca rápida) e selecione Named Credentials (Credenciais nomeadas).
  2. No menu suspenso ao lado do botão New (Novo), selecione New Legacy (Novo legado).
  3. Em Label (Rótulo), insira Bank (Banco).
  4. Em Name (Nome), insira Bank (em inglês).
  5. Em URL, insira https://th-external-services.herokuapp.com
  6. Deixe os outros campos como estão e clique em Save (Salvar).

Observe que, em um exemplo do mundo real, você definiria também o Authentication Protocol (Protocolo de autenticação) em Named Credentials (Credenciais nomeadas) e especificaria sua definição de Auth Provider (Provedor de autenticação), ambos definidos em Setup (Configuração).

Registrar seu serviço da Web usando o assistente de serviços externos

Agora que você tem uma especificação de API válida, adicionar o serviço externo do seu banco em External Services (Serviços externos) informa ao Salesforce como ele interage.  

  1. Em Setup (Configuração), insira External Services (Serviços externos) na caixa Quick Find (Busca rápida) e selecione External Services (Serviços externos).
  2. Clique em Add an External Service (Adicionar um serviço externo).
  3. Na página Select an API Source (Selecionar uma origem de API), selecione From API Specification (Da especificação da API).
  4. Clique em Next (Avançar).
  5. Em External Service Name (Nome do serviço externo), insira BankService (sem espaço).
  6. Em Select a Named Credential (Selecionar uma credencial nomeada), selecione Bank (Banco) (a credencial nomeada que acabamos de criar).
  7. Em Service Schema (Esquema do serviço), selecione Relative URL (URL relativa).
  8. Em URL, insira /accounts/schema. Essa sequência é adicionada à Credencial nomeada que acabamos de criar. É a URL relativa que aponta para a especificação da API. Juntas, elas formam a URL completa do nosso provedor de serviços. Por exemplo: https://th-external-services.herokuapp.com/accounts/schema.
  9. Clique em Save & Next (Salvar e avançar).
  10. Selecione todas as operações.
  11. Clique em Next (Avançar). Uma lista dos Serviços externos aparece. Agora, essas ações estão disponíveis para você no Flow Builder. Use a barra de rolagem para visualizar todas elas. As operações na sua especificação de API tornaram-se ações invocáveis no Salesforce.
  12. Clique em Finish (Concluir).

Aqui está um exemplo da página External Service Actions (Ações de serviços externos).

Ação getAccount na janela External Service Actions (Ações de serviços externos)

Você também pode visualizar a lista de ações clicando em BankService na página principal External Services (Serviços externos). 

Vejamos a ação getAccount e alguns de seus parâmetros.

  • A ação getAccount recupera informações da conta.
  • O parâmetro accountName especifica a conta.
  • Existem vários parâmetros de saída para a ação getAccount também. Os códigos, como 200, se correlacionam a códigos de resposta específicos definidos na especificação da API. Falaremos mais sobre eles na próxima unidade, mas você também pode ver essas definições bem formatadas no Swagger Editor quando validar o esquema da especificação da API.

Em seguida, você criará um fluxo simples e aprenderá como encontrar as ações na paleta do Flow. 

Recursos

Compartilhe seu feedback do Trailhead usando a Ajuda do Salesforce.

Queremos saber sobre sua experiência com o Trailhead. Agora você pode acessar o novo formulário de feedback, a qualquer momento, no site Ajuda do Salesforce.

Saiba mais Continue compartilhando feedback