Nền tảng
Tính năng
Studio đại lý
Xây dựng và tùy chỉnh đại lý của bạn một cách nhanh chóng
Động cơ tự động
Sử dụng LLMs để hướng dẫn các cuộc trò chuyện và nhiệm vụ
Cơ sở tri thức
Đào tạo bot của bạn với các nguồn kiến thức tùy chỉnh
Bàn giao con người
Quản lý các cuộc trò chuyện có sự tham gia của con người
Bảng
Lưu trữ và quản lý dữ liệu cuộc hội thoại
Kênh
Whatsapp Biểu tượng
WhatsApp
Instagram Biểu tượng
Instagram
Facebook Messenger biểu tượng
Messenger
Slack biểu tượng
Slack
Tất cả các kênh
Tích hợp
Biểu trưng Hubspot
HubSpot
Notion biểu tượng
Notion
Biểu tượng Jira
Jira
Calendly biểu trưng
Calendly
Tất cả các tích hợp
LLM Nhà cung cấp
OpenAI biểu trưng
OpenAI
Anthropic biểu trưng
Anthropic
Groq biểu trưng
Groq
Biểu tượng HuggingFace
Hugging Face
Tất cả LLMs
Giải pháp
Cho
Doanh nghiệp
Tự động hóa quy trình sản xuất quan trọng
Cơ quan
Cung cấp dịch vụ đại lý tinh vi
Nhà phát triển
Khám phá API mạnh mẽ để phát triển tác nhân
Câu chuyện của khách hàng
Khám phá từ những khách hàng thành công cách thức Botpress đang chuyển đổi hoạt động kinh doanh trên toàn thế giới.
Theo Ngành
Thương mại điện tử
Giáo dục
Tài chính
Hospitality
Tất cả các ngành công nghiệp
Theo Bộ phận
Bán hàng
Kỹ thuật
Sản phẩm
ITSM
Tất cả các phòng ban
Theo trường hợp sử dụng
Tự động hóa quy trình làm việc
Quản lý vé
Trợ lý mua sắm
Sản phẩm Copilot
Tất cả các trường hợp sử dụng
Tài nguyên
Thiết yếu
Academy
Học cách xây dựng thông qua các khóa học được tuyển chọn
Thư viện
Tài nguyên để nâng cao quy trình làm việc AI của bạn
Tin tức
Thông tin chi tiết và cập nhật về Botpress và các tác nhân AI
xây dựng
Discord
Tham gia cùng hàng ngàn người bạn và chia sẻ ý tưởng
Documents
Hướng dẫn và tài liệu tham khảo toàn diện
API
Tài liệu tham khảo để sử dụng với các hệ thống bên ngoài
Sự kiện
Các buổi gặp mặt hàng tháng dành cho các nhà phát triển và những người tò mò về công nghệ
Video
Hướng dẫn, bản demo và hướng dẫn sử dụng sản phẩm
Nhật ký thay đổi
Cập nhật thông tin mới nhất Botpress cập nhật
Đối tác
Trở thành đối tác
Tham gia mạng lưới các chuyên gia được chứng nhận của chúng tôi
Thuê một chuyên gia
Kết nối với đối tác và chuyên gia tư vấn
Documents
Doanh nghiệp
Giá
Đăng nhập
Liên hệĐăng ký
quay lại Hub

SharePoint

v3.0.4
Cài đặt trên Không gian làm việc của bạn
Được duy trì bởi Botpress Đội ngũ tăng trưởng
  # 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. |

---

Xây dựng tốt hơn với Botpress

Tạo ra những trải nghiệm tuyệt vời cho tác nhân AI.

Bắt đầu - hoàn toàn miễn phí
Tìm hiểu thêm tại Botpress Academy

Xây dựng các tác nhân AI tốt hơn và nhanh hơn với bộ sưu tập các khóa học, hướng dẫn và bài hướng dẫn được chúng tôi tuyển chọn kỹ lưỡng.

Thuê một chuyên gia

Kết nối với các nhà phát triển được chứng nhận của chúng tôi để tìm một chuyên gia xây dựng phù hợp với nhu cầu của bạn.

Tất cả các hệ thống hoạt động
SOC 2
Chứng nhận
GDPR
Tuân thủ
© 2025
Nền tảng
Giá
Studio đại lý
Động cơ tự động
Cơ sở tri thức
Bàn giao con người
Bảng
Hub
Tích hợp
Kênh
LLMs
Tài nguyên
Nói chuyện với bộ phận bán hàng
Tư liệu
Thuê một chuyên gia
Video
Câu chuyện của khách hàng
Tài liệu tham khảo API
Tin tức
Tình trạng
v12 Tài nguyên
Cộng đồng
Hỗ trợ cộng đồng
Trở thành đối tác
Trở thành Đại sứ
Trở thành Đối tác liên kết
Công ty
Về
Nghề nghiệp
Tin tức & Báo chí
Hợp pháp
Sự riêng tư