Login do Facebook para Empresas

O Login do Facebook para Empresas é a solução de autorização e autenticação mais escolhida entre os provedores de tecnologia que desenvolvem integrações com as ferramentas corporativas da Meta para criar soluções de marketing, mensagens e vendas.

O Login do Facebook para Empresas permite que você crie uma experiência de login no Painel de Apps da Meta com base nas necessidades do app. É possível especificar o tipo de token de acesso, permissões e ativos necessários e salvar essas escolhas como uma configuração. Durante o login, essa configuração é apresentada aos usuários do app, permitindo que eles concedam ao seu app acesso aos ativos de negócios deles.

Requisitos

  • Seu app da Meta deve ser do tipo Empresa
  • Todas permissões que seu app solicitar durante o login deverão ser concedidas pelo usuário. Caso contrário, nenhuma permissão será concedida ao app.
  • As permissões email e public_profile são concedidas automaticamente a todos os apps, mas pelo menos uma outra permissão compatível deve ser incluída em cada instalação de app.
  • Para exibir empresas que você não possui nem gerencia, o app precisa ser aprovado para acesso avançado pela análise do app da Meta
  • Os apps com acesso avançado precisam passar por análise contínua para manter o acesso. Entretanto, os apps que usam o Login do Facebook para Empresas têm menos requisitos em algumas análises contínuas de conformidade, pois acessam apenas recursos e permissões das empresas.

Permissões compatíveis

A tabela a seguir mostra as permissões disponíveis no Login do Facebook para Empresas.

Permissões disponíveisTokens de acesso do usuárioTokens de acesso do usuário do sistema de integração comercial (WhatsApp)
ads_management

ads_read

business_management

catalog_management

commerce_account_manage_orders

commerce_account_read_orders

commerce_account_read_reports

commerce_account_read_settings

commerce_manage_accounts

email

N/A

instagram_basic

instagram_content_publish

instagram_manage_comments

instagram_manage_insights

instagram_manage_messages

instagram_shopping_tag_products

leads_retrieval

manage_app_solutions

manage_fundraisers

pages_manage_cta

page_events

pages_manage_ads

pages_manage_engagement

pages_manage_instant_articles

pages_manage_metadata

pages_manage_posts

pages_messaging

pages_read_engagement

pages_read_user_content

pages_show_list

private_computation_access

public_profile

N/A

publish_video

read_insights

read_audience_network_insights

whatsapp_business_management

whatsapp_business_messaging

Referência de recursos

  • Acesso Padrão ao Gerenciamento de Anúncios
  • Acesso ao Perfil do Usuário de Ativo de Negócios
  • Human Agent
  • Acesso ao Conteúdo Público do Instagram
  • API de Vídeo ao Vivo
  • Menções da Página
  • Acesso ao Conteúdo Público da Página
  • Acesso a Metadados Públicos da Página

Tokens de acesso compatíveis

É possível usar o Login do Facebook para Empresas a fim de obter tokens de acesso do usuário do sistema de integração comercial ou tokens de acesso do usuário.

Tokens de acesso do usuário

Os tokens de acesso do usuário devem ser usados em apps que realizam ações em tempo real, com base na entrada do usuário. Por exemplo, use um token de acesso do usuário se o app exigir que o usuário insira um texto e clique em um botão para publicar conteúdo na Página dele. Os tokens de acesso do usuário também devem ser usados quando você precisa de uma API que exige permissões de administrador em um portfólio empresarial.

Tokens de acesso do usuário do sistema de integração comercial

Os tokens de acesso do usuário do sistema de integração comercial devem ser usados em apps que executam ações programáticas e automatizadas nos ativos dos seus clientes empresariais sem depender de uma entrada do usuário do app nem exigir uma nova autenticação em uma data futura. Por exemplo:

  • Chamadas automáticas da API de Conversões de servidor para servidor por hora
  • Envio de respostas automáticas como uma Página do Facebook ou um portfólio empresarial do WhatsApp
  • Atualizações contínuas e automáticas em inventários de catálogos de produtos
  • Recuperação automática de insights sobre anúncios

Requisitos

Para obter os tokens de acesso do usuário do sistema de integração comercial dos seus clientes:

  • Seu app só pode solicitar login em superfícies da web.
  • As empresas que integram seu app devem ter ou estar dispostas a criar um portfólio empresarial.
  • O app precisa estar associado a um portfólio empresarial, sobre o qual você tenha controle total e que não seja o pertencente ao cliente.

Para testar o fluxo do token de acesso do usuário do sistema de integração comercial, a pessoa deve ter uma função no app e controle total da empresa do cliente.

Tokens de acesso do usuário do sistema de integração comercial detalhados

Caso você precise de configurações de acesso específicas para finalidades ou departamentos diferentes, será possível usar vários tokens de acesso do usuário do sistema de integração comercial detalhados por cliente para melhorar a escalabilidade e a segurança das suas integrações.

Os tokens de acesso detalhados ainda são específicos para o portfólio empresarial de um cliente. Eles não podem ser compartilhados nem acessados por diferentes empresas clientes. O escopo e a lista de ativos relacionados a esses tokens são um subconjunto do token de acesso do usuário do sistema de integração comercial original.

Se você isolar incidentes de segurança em potencial no caso de um token comprometido, apenas essa empresa específica será afetada, e não todos os portfólios empresariais em todas as empresas do cliente.

API de gerenciamento de token de acesso do usuário do sistema de integração comercial

Quando uma empresa instalar um app por meio do Login do Facebook para Empresas e gerar um token de acesso do usuário do sistema de integração comercial, o token incluirá uma identificação da empresa do cliente. Esse código representa o negócio do cliente e é usado pelo seu app para fazer chamadas de API.

O ponto de extremidade /<CLIENT_BUSINESS_ID>/system_user_access_tokens permite gerenciar seus tokens de acesso do usuário do sistema de integração comercial existentes. Ações possíveis:

  • Gerar tokens de acesso do usuário do sistema de integração comercial detalhados a partir de tokens existentes
  • Buscar tokens de acesso do usuário do sistema de integração comercial existentes
Parâmetros
ObjetoDescrição

access_tokenstring

Obrigatório. Esse token de acesso requer a permissão business_management.

appsecret_proofstring

Obrigatório. A appsecret_proof é um hash sha256 do seu token de acesso, garantindo que as chamadas de API via servidor sejam feitas com mais segurança.

assetnúmero inteiro

Opcional. Para gerar um token mais detalhado, defina uma lista de números de identificação asset, separados por vírgula. A lista de ativos precisa ser um subconjunto de ativos do token de acesso original.

fetch_onlybooliano

Opcional. A sinalização que você deve usar para buscar o token existente e indicar que a operação é de somente leitura.

scopebooliano

Opcional. Para gerar um token mais detalhado, defina uma lista de números de identificação scope, separados por uma vírgula. A lista de ativos precisa ser um subconjunto de escopos do token de acesso original.

set_token_expires_in_60_daysbooliano

Opcional. Ao gerar um novo token, defina como true para que a expiração ocorra em 60 dias.

system_user_idnúmero inteiro

Opcional. O número de identificação do usuário do sistema incluído no token de acesso.

Exemplo de solicitação

Texto formatado para facilitar a leitura.

curl -i -X POST "https://graph.facebook.com/v21.0/<CLIENT_BUSINESS_ID>/system_user_access_tokens
    ?appsecret_proof=<APPSECRET_PROOF_HASH>
    &access_token=<ACCESS_TOKEN>
    &system_user_id=<SYSTEM_USER_ID>
    &fetch_only=true"

Se a operação for bem-sucedida, o app receberá uma resposta JSON com um novo token de acesso para ser usado em chamadas de API subsequentes.

{
  "access_token": "<NEW_ACCESS_TOKEN>" 
}

Comparação

Tokens de acesso do usuário do sistema de integração comercialTokens de acesso do usuário

Designações de acesso

O acesso é designado explicitamente no momento da autorização. O app só pode acessar os ativos que foram designados pelo cliente comercial após ele concluir o fluxo do Login do Facebook para Empresas. Somente Provedores de Tecnologia.

O acesso é herdado da conta atual do usuário do app. Ou seja, o app pode acessar os mesmos ativos de negócios aos quais o usuário do app tem acesso.

Associação à conta

Associado ao portfólio empresarial do cliente, não a um usuário específico. Qualquer administrador no grupo de administradores do cliente pode conceder um token de acesso de usuário do sistema ao app.

Associado à conta do Facebook pessoal do usuário do app.

Expiração e atualização

Definido por padrão como nunca expira para a comunicação offline comum de servidor para servidor.

Um token de curta duração para atividades online, como navegadores da web.

Tipo de concessão OAuth

Somente concessão de código de autorização.

A concessão é implícita por padrão e pode apoiar a concessão do código de autorização para melhorar a segurança. Usada principalmente para clientes baseados no agente do usuário, como navegadores da web e apps para celular.

Representação

Parte da infraestrutura de integração do provedor de tecnologia, inicializada pela empresa do cliente por meio da instalação do app do provedor.

Representa servidores ou softwares que fazem chamadas de API para ativos pertencentes a ou gerenciados por um Gerenciador de Negócios.

Invalidação de token

Os clientes empresariais podem invalidar os tokens de acesso do usuário do sistema de integração comercial. Para isso, basta acessar Gerenciador de Negócios > Configurações > Configurações do negócio > Integrações > Apps conectados e remover seu app.

Para invalidar os tokens de acesso do usuário, eles podem acessar o Facebook e navegar até Configurações e privacidade > Configurações > Segurança e login > Integrações comerciais e remover o app.

Experiência de fluxo de login

Fluxo de login do token de acesso do usuárioFluxo de login do token de acesso do usuário de integração comercial
Ocorreu um erro
Estamos tendo problemas ao reproduzir este vídeo.
Ocorreu um erro
Estamos tendo problemas ao reproduzir este vídeo.

Primeiros passos

Caso você ainda não tenha um app, estas serão as etapas necessárias para configurar o Login do Facebook para Empresas.

Criar um app

  1. No Painel de Apps da Meta, crie um app do tipo Empresa.
  2. Adicione o produto Login do Facebook para Empresas.
  3. No menu esquerdo, selecione Configurações.
  4. Você pode escolher + Criar configuração ou Criar a partir de modelo para selecionar uma das configurações predefinidas da Meta. É possível criar diversas configurações e apresentá-las a diferentes conjuntos de usuários.
  5. Defina um nome para a configuração.
  6. Escolha o tipo de token de acesso que deseja solicitar aos clientes da sua empresa, um token de acesso do usuário ou token de acesso do usuário do sistema, e a expiração do token. Se você escolher token de acesso do usuário, os usuários do app farão login usando a conta pessoal do Facebook. Se escolher token de acesso do usuário do sistema, os usuários do app serão solicitados a fazer login usando um portfólio empresarial. Isso só será necessário se a configuração precisar de acesso contínuo aos ativos de negócios, como Páginas do Facebook, contas de anúncios ou contas do Instagram.
  7. Selecione todos os ativos que precisam ser acessados pelo app.
  8. Selecione as permissões exigidas pelo seu app e clique em Criar.

Você receberá uma identificação de configuração, que deverá ser usada no seu código para invocar o diálogo Entrar.

Criar uma configuração de Cadastro Incorporado na Plataforma do WhatsApp Business

Para criar uma configuração de Cadastro Incorporado do WhatsApp, consulte Cadastro Incorporado.

Criar uma configuração da API de Conversões para mensagens empresariais

Para criar uma configuração da API de Conversões para mensagens empresariais, consulte API de Conversões para mensagens empresariais.

Criar uma configuração da Graph API do Instagram

Para criar uma configuração da Graph API do Instagram, consulte Graph API do Instagram.

Invocar o diálogo Entrar

Invoque o diálogo Entrar usando um dos nossos SDKs (recomendado) ou crie manualmente o fluxo de login.

Invocação com SDKs

É possível usar qualquer um dos nossos SDKs para invocar o diálogo Entrar. Para isso, basta substituir a lista de escopos (permissões) necessários ao app pelo ID da sua configuração e o tipo de concessão OAuth do token de acesso.

Caso você não conheça nossos SDKs, instale primeiro o SDK do JavaScript e use-o com o produto Login do Facebook para consumidores antes de prosseguir, já que os exemplos a seguir fazem referência a esse SDK.

Configurações do token de acesso do usuário do sistema de integração comercial

Veja um exemplo do método FB.login() do SDK do JavaScript modificado para usar uma configuração do token de acesso do usuário do sistema. A config_id substituiu scope (que não deve ser usado). Além disso, o response_type foi definido como code, já que os tokens exigem o tipo de concessão de código de autorização, e override_default_response_type precisa ser definido como true. Se for verdadeiro, todos os tipos de resposta transmitidos no response_type terão precedência sobre os tipos-padrão.

FB.login(
  function(response) [
    console.log(response);
  ],
  [
    config_id: '<CONFIG_ID>',
    response_type: 'code',
    override_default_response_type: true
  ]
);

Quando o usuário concluir o fluxo do diálogo Entrar, o redirecionaremos para sua URL e incluiremos um código. Depois, você precisará trocar o código por um token de acesso fazendo uma chamada de servidor para servidor aos nossos servidores.

GET https://graph.facebook.com/v21.0/oauth/access_token?
  client_id=<APP_ID>
  &client_secret=<APP_SECRET>
  &code=<CODE>

Consulte Como trocar um código por um token de acesso para saber mais sobre essa etapa.

Configurações do token de acesso do usuário

Veja um exemplo do método FB.login() do SDK do JavaScript modificado para usar uma configuração do token de acesso do usuário. A config_id substituiu o scope. Embora scope ainda possa ser incluído, recomendamos que ele não seja usado.

FB.login(
  function(response) {
    console.log(response);
  },
  {
    config_id: '<CONFIG_ID>' // configuration ID goes here
  }
);

Veja um exemplo do botão Entrar do SDK do JavaScript modificado para usar uma configuração do token de acesso do usuário:

<fb:login-button config_id="<CONFIG_ID>" onlogin="checkLoginState();"></fb:login-button>

Criar um fluxo de login manualmente

Consulte Criar manualmente um fluxo de login para saber como invocar o diálogo Entrar de forma manual. Ao invocar o diálogo Entrar e definir o URL de redirecionamento, inclua o ID da sua configuração como um parâmetro opcional. Embora o escopo possa ser incluído, recomendamos que ele não seja usado.

config_id=<CONFIG_ID>

Trocar para o Login do Facebook para Empresas

Recomendamos que você faça testes e identifique possíveis problemas antes de migrar para o Login do Facebook para Empresas.

O Login do Facebook para Empresas está disponível para apps do tipo Empresa.

Caso seu app esteja qualificado, você verá uma banner para aceitar o uso do recurso seguindo estas etapas:

  1. Selecionar o app no Painel de Apps
  2. Acessar ou adicionar o produto Login do Facebook
  3. Clique em Configurações ou Início rápido no menu do lado esquerdo.
  4. Clique no botão "Começar a usar o Login do Facebook para Empresas" na parte superior da página.

Seus tokens de acesso atuais não serão afetados com a troca para o Login do Facebook para Empresas. Além disso, qualquer app de teste associado a este app também será trocado para o Login do Facebook para Empresas.

Após a troca, seu app terá o tipo Empresa. Caso não esteja funcionando conforme o esperado, o app poderá ser revertido para o Login do Facebook em até 30 dias após a troca.

Solução de problemas

Clientes empresariais podem encontrar mensagens de erro pelos seguintes motivos:

  • O número de identificação da configuração é inválido.
  • O token de acesso do usuário do sistema da empresa não é compatível com dispositivos móveis.
  • O token de acesso do usuário do sistema da empresa está configurado com response_type incorreto.

Possíveis alterações urgentes:

  • Caso seu app esteja atualmente categorizado como Nenhum, migrar para o Login do Facebook para Empresas alterará o tipo dele para Empresa. Isso significa que você manterá o acesso somente às permissões, aos recursos e aos produtos listados acima.
  • Caso você solicite permissões ou recursos de clientes empresariais incompatíveis com o Login do Facebook para Empresas, essas permissões e esses recursos serão revogados imediatamente ao trocar o app para o Login do Facebook para Empresas.
  • Se você solicitar apenas email e/ou public_profile dos seus clientes empresariais, a troca do app para o Login do Facebook para Empresas levará à invalidação de todos os tokens instalados anteriormente para esses clientes.
  • Caso o app tenha o Login do Facebook para Empresas e a Extensão da Meta para Empresas, a experiência da Extensão da Meta para Empresas será limitada às permissões compatíveis com o Login do Facebook para Empresas.
  • O Acesso ao Perfil do Usuário de Ativo de Negócios pode afetar a forma como os dados do perfil do usuário são acessados e gerenciados por meio das nossas APIs.
  • Se o diálogo Entrar do Login do Facebook para Empresas for invocado pelo número de identificação da configuração e você tiver decidido reverter para o Login do Facebook, o diálogo Entrar poderá não carregar, já que o Login do Facebook não é compatível com o parâmetro config_id. Nesse caso, você precisará substituir o parâmetro config_id por scope.

Saiba mais sobre a Extensão da Meta para Empresas.

Voltar a usar o Login do Facebook

Disponível somente quando um app tiver migrado para o Login do Facebook para Empresas. Os apps do tipo "Empresa" recém-criados não podem retornar ao Login do Facebook.

Caso seu app não esteja funcionando como esperado depois de mudar para o Login do Facebook para Empresas, você poderá voltar a usar o Login do Facebook. Para isso, basta acessar o Painel de Apps > Login do Facebook para Empresas > Configurações e clicar no link Mudar para Login do Facebook. Solicitaremos que você responda a uma pesquisa para nos ajudar a melhorar a experiência de configuração do Login do Facebook para Empresas. Cada app poderá ser revertido para o Login do Facebook em até 30 dias após a troca.

Perguntas frequentes

The easiest way to add Facebook Login for Business is to create a new Business Type app, where Facebook Login for Business is automatically available, and request supported business permissions through Meta App Review. If you want to use it for an existing None type app, your app must have advanced access to at least one supported business permission.

If you are not a Tech Provider building solutions using Meta’s business APIs, Facebook Login is recommended for consumer authentication.

Only request the minimum permissions necessary for your app's functionality. Be transparent with users about why you need each permissions and features. Note that the email and public_profile permissions must be requested with at least one other supported business permission.

Yes, advanced access to the public_profile permission is required for Facebook Login for Business apps before they go live. This requirement is crucial to ensure that the app can support authorization from users who do not have an app role, commonly referred to as external users.