> ## Documentation Index
> Fetch the complete documentation index at: https://strattumai.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Microsoft 365 (SharePoint)

> Configure o conector Microsoft 365 para indexar bibliotecas de documentos de sites do SharePoint na plataforma strattum.ai.

O conector Microsoft 365 indexa as bibliotecas de documentos de sites do SharePoint na infraestrutura strattum.ai. Você conecta uma App Registration do Azure AD, escolhe quais sites sincronizar, e os documentos passam a alimentar a indexação semântica do Knowledge.

## Capacidades

* Listar os sites do SharePoint do tenant e selecionar quais sincronizar.
* Ingerir os documentos das bibliotecas dos sites selecionados.
* Autenticação por App Registration do Azure AD (application permissions), sem depender de um usuário individual.
* Frequência de sincronização definida por conector.

## Objetos suportados

| Objeto                    | O que vem                                              |
| ------------------------- | ------------------------------------------------------ |
| Sites do SharePoint       | Sites do tenant, listados na configuração para seleção |
| Bibliotecas de documentos | Arquivos das bibliotecas dos sites selecionados        |

<Note>
  O conector cobre bibliotecas de documentos de **sites do SharePoint**. Arquivos pessoais de OneDrive não fazem parte do fluxo de seleção por site. \[verificar] cobertura de OneDrive com o time.
</Note>

## Pré-requisitos

* [ ] Tenant Microsoft 365 com sites do SharePoint.
* [ ] App Registration no Azure AD com as permissões **`Sites.Read.All`** e **`Files.Read.All`** (Microsoft Graph, application permissions com admin consent concedido).
* [ ] Tenant ID, Client ID e Client Secret dessa App Registration.
* [ ] Acesso de administrador ao workspace strattum.ai.

<Tip>
  No portal do Azure, crie um **App Registration**, gere um **Client Secret** em *Certificates & secrets*, e conceda as permissões `Sites.Read.All` e `Files.Read.All` em *API permissions → Microsoft Graph → Application permissions*, com *Grant admin consent*.
</Tip>

## Configuração

<Steps>
  <Step title="Acesse Connections no Console">
    No Console strattum.ai, clique em **Connections** → **Nova Conexão** e selecione **Microsoft 365**.
  </Step>

  <Step title="Preencha as credenciais do Azure AD">
    * **Nome do conector** — Opcional. Padrão `Microsoft 365`.
    * **Tenant ID** — Obrigatório. GUID do tenant.
    * **Client ID** — Obrigatório. GUID da App Registration.
    * **Client Secret** — Obrigatório. O segredo gerado na App Registration.
  </Step>

  <Step title="Conecte e liste os sites">
    Clique em **Conectar e listar sites**. A plataforma autentica no Microsoft Graph e retorna os sites do SharePoint do tenant.
  </Step>

  <Step title="Selecione os sites">
    Marque os sites cujas bibliotecas você quer indexar. Use o campo de filtro para localizar por nome ou URL. Defina a frequência de sincronização.
  </Step>

  <Step title="Salve o conector">
    Clique em **Salvar**. O conector inicia a sincronização das bibliotecas dos sites selecionados.
  </Step>
</Steps>

## Autenticação e escopos

| Item                | Valor                                                              |
| ------------------- | ------------------------------------------------------------------ |
| Método              | App Registration do Azure AD (OAuth client credentials)            |
| Campos obrigatórios | `Tenant ID`, `Client ID`, `Client Secret`                          |
| Escopo              | `Sites.Read.All` (Microsoft Graph, application)                    |
| Escopo              | `Files.Read.All` (Microsoft Graph, application)                    |
| Consentimento       | Admin consent no tenant é obrigatório para permissões de aplicação |

<Warning>
  As permissões `Sites.Read.All` e `Files.Read.All` dão à aplicação acesso de leitura a todos os sites e arquivos do tenant. Conceda o admin consent com esse alcance em mente. O Client Secret fica no secrets manager da instalação, nunca em plaintext.
</Warning>

## Frequência de sync

A frequência é escolhida por conector na tela de configuração: 15 minutos, horário, 6 horas, diário, semanal ou cron. Ver [Frequência de sync](/data-pipelines/sync-frequency).

## Limitações conhecidas

* O fluxo de seleção é por **site do SharePoint**. Cobertura de arquivos pessoais de OneDrive: \[verificar].
* A App Registration precisa de **application permissions** com admin consent; permissões delegadas (por usuário) não são o fluxo suportado.
* Tipos de arquivo indexáveis seguem o parsing de documentos do Knowledge (PDF, DOCX, etc.). Arquivos sem texto extraível entram no catálogo mas não geram embeddings úteis. \[verificar]

## Troubleshooting

<AccordionGroup>
  <Accordion title="Conectar e listar sites falha">
    Confirme Tenant ID, Client ID e Client Secret, e que o admin consent das permissões `Sites.Read.All` e `Files.Read.All` foi concedido no Azure AD. Sem consent, o Graph rejeita a listagem de sites.
  </Accordion>

  <Accordion title="Nenhum site aparece na lista">
    A App Registration autenticou, mas não enxerga sites. Verifique se as permissões são **application** (não delegated) e se há sites do SharePoint no tenant.
  </Accordion>

  <Accordion title="Documentos não indexam">
    A seleção de sites foi salva, mas os arquivos não chegam ao Knowledge. Verifique o status do conector no card e, em **Observability → Pipelines**, se o sync concluiu.
  </Accordion>
</AccordionGroup>

Para ver o erro específico de um sync, abra o card do conector, clique em `···` e selecione **Ver logs**.

## Próximos passos

<CardGroup cols={2}>
  <Card title="Knowledge" icon="book-open" href="/knowledge/overview">
    Como os documentos indexados abastecem a busca semântica e as respostas dos agentes.
  </Card>

  <Card title="Catálogo de conectores" icon="plug" href="/connectors/overview">
    Veja todos os conectores disponíveis na plataforma.
  </Card>
</CardGroup>
