플랫폼
특징
상담원 스튜디오
신속한 에이전트 구축 및 사용자 지정
자율 엔진
LLMs 사용하여 대화 및 작업 안내
지식 베이스
사용자 지정 지식 소스로 봇을 학습시키세요
테이블
대화 데이터 저장 및 관리
채널
Whatsapp 엠블럼
WhatsApp
Instagram 엠블럼
Instagram
Facebook Messenger 로고
Messenger
Slack 로고
Slack
모든 채널
통합
허브스팟 로고
HubSpot
Notion 로고
Notion
Jira 로고
Jira
Calendly 로고
Calendly
모든 통합
LLM 공급자
OpenAI 로고
OpenAI
Anthropic 로고
Anthropic
Groq 로고
Groq
허깅페이스 로고
Hugging Face
모두 LLMs
솔루션
For
엔터프라이즈
미션 크리티컬 프로덕션 워크플로우 자동화
대행사
정교한 상담원 서비스 제공
개발자
상담원 개발을 위한 강력한 API 살펴보기
고객 사례
성공적인 고객 사례를 통해 Botpress 이 전 세계 비즈니스를 어떻게 혁신하고 있는지 알아보세요.
산업별
전자 상거래
교육
금융
호스피탈리티
모든 산업
부서별
판매
엔지니어링
제품
ITSM
모든 부서
사용 사례별
쇼핑 도우미
리드 생성
직원 경험
티켓 관리
모든 사용 사례
자원
필수
Academy
선별된 강좌를 통해 빌드 배우기
라이브러리
AI 워크플로우를 개선하기 위한 리소스
블로그
Botpress 및 AI 에이전트에 대한 인사이트 및 업데이트
건물
디스코드
수천 명의 동료와 함께 아이디어를 공유하세요
문서
종합 가이드 및 참고 자료
API
외부 시스템과 함께 사용하기 위한 참고 자료
LLM 순위
모델 제공업체의 성능 및 비용 비교
영상
튜토리얼, 데모 및 제품 워크스루
변경 로그
최신 Botpress 업데이트에 대한 최신 정보
파트너
파트너가 되세요
인증된 전문가 네트워크에 가입하세요
전문가 고용하기
파트너 및 컨설턴트와 연결
문서
엔터프라이즈
가격정책
로그인
연락처가입하기
돌아가기 Hub

SharePoint

v3.0.4
워크스페이스에 설치
관리: Botpress 성장 팀
  # Sharepoint Document Library Connector

## Overview

The sharepoint library connector integration allows you to setup a connector between a document library in a sharepoint site and a KB in botpress.

## Configuration

Add the following keys to the integration’s `configuration` block:

- **clientId** (required) — Application (client) ID of your Microsoft Entra (Azure AD) app registration.  
- **tenantId** (required) — Directory (tenant) ID of the same app registration.  
- **thumbprint** (required) — Thumbprint of the certificate uploaded to the app registration.  
- **privateKey** (required) — PEM-formatted private key that matches the certificate (everything between `-----BEGIN PRIVATE KEY-----` and `-----END PRIVATE KEY-----`).  
- **primaryDomain** (required) — SharePoint primary domain (the part before `.sharepoint.com`).  
  *Example*: `contoso`  
- **siteName** (required) — Name of the SharePoint site that owns the document libraries you want to sync.  
- **documentLibraryNames** (optional) — Comma-separated list **or** JSON array of document libraries to sync.  
  *Examples*:  
  `Policies,Procedures`  
  `["Policies","Procedures"]`  
- **folderKbMap** (optional) — JSON object that maps `kbId` ⇒ array of folder prefixes for routing files to specific KBs.  
  *Example*:  
  `{"kb-marketing":["Campaigns"],"kb-policies":["HR","Legal"]}`  

**Tip:**  
- If you omit `documentLibraryNames`, **all** document libraries in the specified site will be synced.  
- If you omit `folderKbMap`, every file is routed to the default KB configured for its library.

> [!IMPORTANT]  
> Due to reliability issues, **Moves** and **Copies** are not supported. Those events from sharepoint will not reflect in the knowledge bases. If you wish to move/copy a file to another location, **Upload** or **Create** the file instead. 

## How to's

### How to register a app on Microsoft Entra admin center

- From the Home page of Microsoft Entra admin center, Open App registrations ( This is under Applications in the Left Nav )
- Add a new registration by clicking on “+ New registration”
- Give your app an appropriate name, and click register.
- Open the App registration and take note of the following:
  - `Application (client) ID`
  - `Directory (tenant) ID`

### How to create a certificate for your app registration

- We will be using a self signed certificate to authenticate, to create a self signed certificate run the following commands in order
- `openssl genrsa -out myPrivateKey.key 2048` → This will generate a 2048-bit private key and save it as myPrivateKey.key.
- `openssl req -new -key myPrivateKey.key -out myCertificate.csr` → This will create a CSR cert. You will be prompted to enter some information, fill as needed.
- `openssl x509 -req -days 365 -in myCertificate.csr -signkey myPrivateKey.key -out myCertificate.crt` → This will create a certificate file named myCertificate.crt that is valid for 365 days.

### How to add your certificate to your app registration

- Navigate to the Azure portal and go to your Azure AD app registration.
- Under “Certificates & secrets,” choose “Certificates” and click “Upload certificate.”
- Upload your .crt

### How to update API permissions for your app registration

- Go to “API Permissions” it should be under the Manage Group, in your App Registration "
- Click “Add a permissions”
- click on "Microsoft Graph".
- Select “Application permissions” as the type of permission.
- Check `Sites.FullControl.All`  , `Sites.Manage.All` , `Sites.Read.All` , `Sites.ReadWrite.All`, `Sites.Selected.All`, `Files.Read.All` and `Files.ReadWriteAll`
- Click “Add a permissions again.”
- Click the “Add a permission” button again
- Scroll till you find Sharepoint and click on it.
- Select “Application permissions” as the type of permission.
- Check `Sites.FullControl.All`  , `Sites.Manage.All` , `Sites.Read.All` , `Sites.ReadWrite.All` and `Sites.Selected.All`
- Click “Add permissions.”
- You should see All the permissions you added in the permissions list.
- Click on “Grant admin consent for <your_org_name>”

---

## Folder‑to‑KB Mapping (`folderKbMap`)

*This is an **optional** advanced feature. If you skip it, every file in the document library will go to the single KB you specified above.*

### Why use it?
Sometimes one SharePoint document library contains several distinct collections of content—HR procedures, Legal policies, Marketing campaigns, etc.—but you want each collection to live in its **own** Botpress KB for cleaner search results and permissions.  
`folderKbMap` lets you do exactly that.

### How it works
* `folderKbMap` is a **JSON object** whose keys are **KB IDs** and whose values are **arrays of folder prefixes** (relative paths) to watch.  
* During sync, the integration checks each file’s server‑relative path.  
  * If the path **starts with** one of the prefixes you listed, that file is routed to the corresponding KB.  
  * If no prefix matches, the file falls back to the default KB for the library.

### Configuration syntax
```jsonc
// Example: route folders within the libraries
"folderKbMap": {
  "kb-id-1": ["doclib1","doclib1/ExampleFolder/2025"],
  "kb-id-2":  ["doclib2/HR","doclib2/ExampleFolder"]
}
```
*Prefixes are **case‑insensitive** and may include simple wildcards (`*`).*

### Rules & limitations
1. **No KB sharing across libraries.** A single KB **cannot** receive content from two different libraries—even via folder mapping.  
2. **Create KBs first.** All KB IDs used in `folderKbMap` must already exist in Botpress before you save the configuration.
3. **Recursive files** Every file within a document library, regardles whether it is in a nested folder - will be recursively copied.

### Quick checklist
| ✔ | Step |
|---|------|
| Create a **separate KB** for each content group you want. |
| Identify folder (or folder‑prefix) boundaries inside the SharePoint library. |
| Build a `folderKbMap` JSON object mapping **kbId → [prefixes]**. |
| Add the JSON to your integration configuration. |
| Save & verify: upload a test file in each folder and confirm it appears in the expected KB. |

---

더 나은 구축 Botpress

놀라운 AI 상담원 경험을 만들어 보세요.

시작하세요 - 무료입니다
화살표 아이콘
자세한 내용은 다음에서 확인하세요. Botpress Academy

엄선된 교육 과정, 가이드 및 튜토리얼 컬렉션을 통해 AI 에이전트를 더 빠르고 효과적으로 구축하세요.

전문가 고용하기

인증된 개발자와 연결하여 필요에 맞는 전문 빌더를 찾아보세요.

모든 시스템 운영
SOC 2
인증
GDPR
규정 준수
© 2025
플랫폼
가격정책
상담원 스튜디오
자율 엔진
지식 베이스
테이블
허브
통합
채널
LLMs
자원
판매 부서와 대화하기
문서화
전문가 고용하기
영상
고객 사례
API 참조
블로그
상태
V12 자원
커뮤니티
커뮤니티 지원
파트너가 되세요
홍보대사 되기
제휴사 되기
회사
회사에 대해서
경력
뉴스 & 보도자료
법적
개인 정보 보호
© Botpress 2025