> ## Documentation Index
> Fetch the complete documentation index at: https://www.ayrshare.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Integração de API para Empresas

> Permita que Seus Usuários Conectem Suas Contas de Redes Sociais

Uma parte importante da integração do Plano Business ou do [Plano Launch](/multiple-users/business-launch-overview) consiste em criar novas contas de perfil na Ayrshare para seus usuários ou clientes e permitir que seus usuários vinculem suas redes sociais na [página de vinculação social](/multiple-users/user-integration).
Cada um de seus usuários é configurado como um perfil de usuário Ayrshare. Um perfil de usuário obtém uma conexão para cada rede social.

<Note>
  **Esta é a forma padrão de fazer o onboarding de clientes.** Seus usuários conectam suas próprias
  contas sociais por meio da página de conexão via URL JWT com marca personalizada descrita abaixo —
  eles nunca fazem login na Ayrshare e nunca acessam seu dashboard. O
  [dashboard](/multiple-users/manage-user-profiles#using-the-dashboard) é reservado à sua
  equipe interna (criação e gerenciamento de perfis, testes e publicação em nome de um
  cliente).
</Note>

## Fluxo de Trabalho de Integração

Para integrar a Ayrshare à sua aplicação, você precisará fazer duas chamadas de API:

1. Chame o [endpoint Create Profiles](/apis/profiles/create-profile) para criar um novo perfil Ayrshare para o seu usuário.
2. Chame o [endpoint Generate JWT](/apis/profiles/generate-jwt) para obter uma URL JWT.

A URL JWT permite que o seu usuário acesse com segurança a página de vinculação social por meio de autenticação single sign-on.
Você exibirá essa página em uma nova aba, janela ou view controller para permitir que os usuários conectem suas contas de redes sociais.

<img src="https://mintcdn.com/ayrshare-docs/6mPR4kmwNEz1kMbX/images/multiple-users/linking-flow.webp?fit=max&auto=format&n=6mPR4kmwNEz1kMbX&q=85&s=5a6d2569f89cefbb3ce85837bbd2a9c3" alt="Fluxo de conexão de perfis de usuário" width="3408" height="2069" data-path="images/multiple-users/linking-flow.webp" />

Depois que seu usuário vincular suas contas de redes sociais, você poderá publicar posts, obter análises e gerenciar suas contas via API.

<Note>
  Por motivos de segurança, as plataformas de redes sociais exigem que os usuários se autentiquem pelo navegador,
  o que não pode ser feito por chamadas do servidor backend. Isso garante que seus usuários possam conectar com segurança
  suas contas de redes sociais fazendo login diretamente na página oficial de login de cada plataforma.
  As redes sociais restringem a autenticação apenas a domínios de parceiros autorizados,
  como a Ayrshare. Elas também bloqueiam iFrames, o que significa que você não pode incorporar ou exibir a
  página de vinculação da Ayrshare em um iFrame no seu site.
</Note>

## Criar um Perfil de Usuário Ayrshare

### Criar um Perfil com a API

Quando um novo usuário se registra no seu sistema ou quando seu cliente clica no link de rede social no seu app, crie uma nova conta de perfil Ayrshare chamando o endpoint RESTful [/profiles/create-profile](/apis/profiles/create-profile) ou usando os pacotes [NPM](/packages-guides/nodejs) ou [PyPi](/packages-guides/python).

<Card title="Perfis" icon="code" href="/apis/profiles/overview" horizontal />

O retorno dessa chamada será a *PROFILE KEY* do seu usuário. Essa chave será usada para publicar em nome do seu usuário e gerenciar sua conta. Você deve armazená-la em um local seguro.

### Criar um Perfil com o Dashboard (Equipe Interna)

Sua equipe interna também pode criar Perfis de Usuário diretamente no **Developer Dashboard** — útil para testes, onboarding manual de um perfil ou administração pontual. Esta é uma ferramenta da equipe, não um fluxo voltado ao cliente: seus clientes nunca recebem acesso ao dashboard e são sempre integrados por meio da [página de conexão via URL JWT](#single-sign-on-with-jwt-authentication). Para onboarding em produção, crie perfis programaticamente com a [API](/apis/profiles/create-profile) para que cada novo usuário seja provisionado automaticamente.

<Card title="Gerenciar Perfis de Usuário no Dashboard" icon="link" href="/multiple-users/manage-user-profiles#using-the-dashboard" horizontal />

### Pacote de Integração

Durante o seu onboarding como cliente do Plano Business ou Launch, você recebeu um pacote de integração personalizado com informações importantes de configuração e domínio, exemplos de chamadas de endpoint e muito mais. Consulte o titular principal da sua conta para obter essas informações.

Você também pode recuperar ou redefinir o pacote de integração no dashboard, na página API. Certifique-se de primeiro alternar para o seu Perfil Primário.

<img src="https://mintcdn.com/ayrshare-docs/6mPR4kmwNEz1kMbX/images/multiple-users/integration.webp?fit=max&auto=format&n=6mPR4kmwNEz1kMbX&q=85&s=ce8b1f0b733f87ad61d75f66029b84df" alt="Pacote de Integração Ayrshare" width="900" height="200" data-path="images/multiple-users/integration.webp" />

## Single Sign-On com Autenticação JWT

A Ayrshare usa um JWT (JSON Web Token) para autenticar seu usuário e realizar Single Sign-On à página de vinculação social. Um JWT é um mecanismo seguro para transmitir informações assinadas digitalmente e permite que a Ayrshare autentique você e seu usuário.

### Gerar um JWT

Seu aplicativo construirá um JWT composto pela sua API Key, Profile Key do usuário e alguns outros parâmetros. Ele será assinado com sua chave privada de 1024 bits.

<Note>
  O token JWT é válido por 5 minutos. Consulte o [Max Pack](/additional/maxpack) para um tempo de expiração
  maior.
</Note>

Use o [endpoint Generate JWT](/apis/profiles/generate-jwt) para que a Ayrshare crie o token e a URL de vinculação social. Abra a URL de vinculação social em uma nova aba ou janela, permitindo que seus usuários [vinculem facilmente suas redes sociais](/multiple-users/user-integration).

<Note>
  A URL JWT é o caminho de onboarding recomendado para todos os clientes. Seus usuários se autenticam
  diretamente em cada rede social por conta própria — você nunca coleta ou armazena suas credenciais
  sociais. Se sua equipe precisar vincular uma conta manualmente durante testes, pode fazer isso pelo
  dashboard, mas trata-se de uma conveniência interna e não é assim que os clientes devem ser integrados.
</Note>

### White-Label da Página de Conexão de Contas

Como a página de conexão aberta pela URL JWT é a única interface Ayrshare que seus usuários verão, você deve personalizá-la com sua marca. Adicione seu logotipo e cabeçalhos personalizados, escolha quais redes sociais aparecem, defina o idioma da página e use seus próprios links de ajuda — e, com o [Max Pack](/additional/maxpack), aplique um arquivo CSS totalmente personalizado, favicon, título de página e rodapé. Essas opções são configuradas uma única vez pela sua equipe a partir do Perfil Primário e se aplicam a todas as URLs JWT que você gerar.

<Card title="White-Label da Página de Conexão de Contas" icon="palette" href="/multiple-users/manage-user-profiles#white-label-the-connect-accounts-page" horizontal>
  Veja todas as opções de branding e personalização da página de conexão.
</Card>

### Logout Automático de uma Sessão de Perfil

<Warning>
  **Como Fazer Logout Automático da Sessão do Perfil Ativo**

  Se um perfil já estiver logado, enviar o JWT de um perfil diferente não trocará de perfis. Isso é feito para tornar a experiência mais rápida para usuários já logados. Ao testar, faça logout do perfil atual antes de fazer uma chamada SSO com um perfil diferente. Perfis logados permanecem logados até fazerem logout explicitamente.

  No entanto, se você tiver uma necessidade de negócio, como seus usuários terem vários perfis que acessam com frequência, ou se você quiser testar, inclua o parâmetro de URL na URL do SSO:

  `logout=true`

  Por exemplo:

  `https://profile.ayrshare.com?domain=[domain id]&jwt=[jwt token]&logout=true`

  Isso força um logout e depois faz login no novo perfil.

  Consulte também o [endpoint Generate JWT](/apis/profiles/generate-jwt) para adicionar o logout automaticamente.

  **Aviso**: Usar o logout automático causa um atraso de desempenho para o seu usuário, portanto, a menos que você precise, sugerimos não forçar o logout e não usá-lo em produção.
</Warning>

## Abrindo e Fechando a URL de Vinculação Social

A página de Contas Sociais tem um botão "Fechar" que fecha a janela e retorna o usuário ao seu site.

### Abrindo a URL de Vinculação Social

Ao abrir a URL de vinculação social, recomendamos usar a função `window.open()` do JavaScript em vez de um href de âncora.
O botão "Fechar" usa JavaScript para fechar a janela, e a maioria dos navegadores só permite que janelas abertas por script sejam fechadas.
Você pode usar o código de exemplo a seguir no seu site para iniciar a janela de vinculação social.

```html Window Open theme={"system"}
<div onclick="window.open('https://profile.ayrshare.com?domain...', '_blank')">
  Link Social Networks
</div>
```

ou

```html Window Open Function theme={"system"}
<button onclick="openNewTabAndRedirect()">Open New Tab and Redirect</button>
<script>
  function openNewTabAndRedirect() {
    // Open a new tab
    var newTab = window.open("https://profile.ayrshare.com?domain...");

    // Optional: Focus on the new tab
    newTab.focus();
  }
</script>
```

Você pode controlar o botão "Fechar" para redirecionar a aba de vinculação social para uma página de sua escolha ou redirecionar a aba/janela original e fechar a aba de vinculação social.
Isso pode ser feito usando o parâmetro redirect e adicionando `origin=true` aos parâmetros de query da URL de redirecionamento.
Consulte o [endpoint Generate JWT](/apis/profiles/generate-jwt) para mais detalhes.

### Redirecionando ao Fechar

Além disso, se você quiser que o botão `Fechar` redirecione de volta para sua página (geralmente útil em dispositivos móveis), passe o parâmetro GET `redirect` como uma string *URL encoded* iniciando com https.
Consulte os [parâmetros do endpoint Generate JWT](/apis/profiles/generate-jwt#body-parameters) para mais detalhes.

```javascript JWT URL theme={"system"}
https://profile.ayrshare.com?domain=[domain id]&jwt=[jwt token]&redirect=https%3A%2F%2Fmywebsite.com
```

O redirecionamento será salvo para aquele perfil e usado em chamadas SSO subsequentes mesmo que o parâmetro `redirect` não seja passado.
Para redefinir o botão `Fechar` de volta para fechar, passe o parâmetro `redirect=null`.

## Mais Informações

### Notificações de Vinculação ou Desvinculação de Usuário

Quando um usuário vincula ou desvincula uma rede social, você pode receber uma notificação via webhook. Consulte a página [Social Action Webhooks](/apis/webhooks/actions#social-action) para mais informações.

Você também pode usar o [endpoint user](/apis/user/profile-details) para obter as redes sociais conectadas a um perfil de usuário.

### Múltiplos Conjuntos de Contas Sociais

#### Visão Geral

Cada Perfil de Usuário tem um conjunto de contas de redes sociais e pode criar uma conexão para cada rede social.
Se seus usuários ou clientes tiverem múltiplos conjuntos de contas de redes sociais, como duas Páginas do Facebook, duas contas do Instagram e dois canais do YouTube, você pode gerenciar esses múltiplos conjuntos de contas seguindo estas etapas:

1. **Crie múltiplos Perfis de Usuário** - [Crie Perfis de Usuário separados](/apis/profiles/create-profile) no sistema Ayrshare para cada conjunto de contas sociais que seu usuário ou cliente precise gerenciar.

2. **Armazene Profile Keys únicas** - Cada Perfil de Usuário terá sua própria Profile Key única, retornada pelo endpoint de criação de Perfil de Usuário.

3. **Rotule seus perfis** - Use [title](/apis/profiles/create-profile#param-title) ou [tag](/apis/profiles/create-profile#param-tags) em cada Perfil de Usuário para identificar claramente quais contas de redes sociais eles estão associados (por exemplo, "Página do Facebook A" e "Página do Facebook B").

4. **Mapeie no seu banco de dados** - No seu próprio sistema, associe todas as Profile Keys relevantes ao respectivo usuário ou cliente.

5. **Use a Profile Key apropriada** - Ao publicar conteúdo ou recuperar análises para uma conta social específica, use a Profile Key associada a essa conta. Por exemplo, para publicar na Página do Facebook A, use a Profile Key do Perfil de Usuário conectado à Página do Facebook A.

#### Exemplo

Vamos considerar um cenário prático para múltiplas contas de clientes:

<ul className="custom-bullets">
  <li>**Cliente:** Rede de Restaurantes do Joe com duas unidades</li>
</ul>

Joe precisa de contas de redes sociais separadas para cada unidade do restaurante:

**Unidade 1:**

<ul className="custom-bullets">
  <li>Página do Facebook: "Joe's Downtown Bistro"</li>
  <li>Instagram: @joesdowntownbistro</li>
  <li>LinkedIn: Página empresarial do Joe's Downtown Bistro</li>
</ul>

**Unidade 2:**

<ul className="custom-bullets">
  <li>Página do Facebook: "Joe's Seaside Grill"</li>
  <li>Instagram: @joesseasidegrill</li>
  <li>LinkedIn: Página empresarial do Joe's Seaside Grill</li>
</ul>

**Solução de implementação:**

1. Crie dois Perfis de Usuário separados na Ayrshare:

<ul className="custom-bullets">
  <li>Perfil de Usuário 1: Intitulado "Contas do Joe's Downtown Bistro"</li>
  <li>Perfil de Usuário 2: Intitulado "Contas do Joe's Seaside Grill"</li>
</ul>

2. Conecte as contas sociais apropriadas a cada perfil:

<ul className="custom-bullets">
  <li>Perfil 1: Vincula Facebook, Instagram e LinkedIn do Downtown Bistro</li>
  <li>Perfil 2: Vincula Facebook, Instagram e LinkedIn do Seaside Grill</li>
</ul>

3. Armazene ambas as Profile Keys no seu banco de dados, associando-as à conta do Joe:

   ```
   Cliente: Rede de Restaurantes do Joe
   - Profile Key 1: abc123... (unidade Downtown)
   - Profile Key 2: xyz789... (unidade Seaside)
   ```

4. Ao publicar uma atualização especial de cardápio para a unidade Downtown, use a Profile Key 1 nas chamadas de API. Ao publicar sobre uma promoção de frutos do mar na unidade Seaside, use a Profile Key 2.

Ao criar múltiplos Perfis de Usuário, [titulando](/apis/profiles/create-profile#param-title) ou [marcando com tags](/apis/profiles/create-profile#param-tags) apropriadamente e associando-os a um único usuário ou cliente no seu sistema, você pode gerenciar suas múltiplas contas de redes sociais nas mesmas plataformas usando a Ayrshare.
Essa abordagem permite publicações direcionadas e recuperação de análises para cada conta específica.

### Próximos Passos

Consulte aqui para mais detalhes sobre a experiência do usuário:

<Card title="Integração do Usuário" icon="link" href="/multiple-users/user-integration" horizontal />

Assim que seu usuário configurar seus links de redes sociais, você poderá começar a publicar em nome dele usando
os endpoints /post e /profile.

<Card title="API de Post" icon="code" href="/apis/post/overview" horizontal />

<Card title="API de Perfis" icon="code" href="/apis/profiles/overview" horizontal />
