API Notiondesk đọc tất cả mọi thứ mà trung tâm trợ giúp của bạn xuất bản: mọi bài viết và bộ sưu tập bằng bất kỳ ngôn ngữ nào, với nội dung dưới dạng markdown, trạng thái xuất bản và trạng thái đồng bộ hóa, cùng với các mục nhật ký thay đổi đã xuất bản của bạn. Sử dụng nó để sao lưu trung tâm trợ giúp của bạn, cung cấp nội dung cho một công cụ khác hoặc kiểm tra xem bài viết nào không được đồng bộ hóa thành công.
API chỉ đọc nội dung chứ không ghi nội dung. Các bài viết và bộ sưu tập của bạn vẫn nằm trong Notion: để thay đổi một bài viết hoặc bộ sưu tập nào đó, hãy chỉnh sửa nó trong Notion và kích hoạt quá trình đồng bộ hóa .
Trong API Notiondesk, một tập hợp được gọi là một danh mục .
| Phương pháp | Con đường | Phạm vi | Làm |
|---|---|---|---|
GET | /sites/{site_id}/articles | read | Liệt kê các bài viết bằng một ngôn ngữ. |
GET | /sites/{site_id}/articles/{article_id} | read | Đọc một bài viết với nội dung được định dạng Markdown. |
GET | /sites/{site_id}/categories | read | Liệt kê các bộ sưu tập bằng một ngôn ngữ, cùng với cấu trúc phân cấp của chúng. |
GET | /sites/{site_id}/categories/{category_id} | read | Đọc một bộ sưu tập với nội dung được định dạng Markdown. |
GET | /sites/{site_id}/changelog | read | Liệt kê các mục nhật ký thay đổi đã được công bố, mục mới nhất được hiển thị đầu tiên. |
Chọn ngôn ngữ
Mỗi tuyến đường trên trang này đều có tham số truy vấn tùy chọn locale, ví dụ như ?locale=fr. Nếu không có tham số này, phản hồi sẽ sử dụng ngôn ngữ mặc định của trung tâm trợ giúp. Đối với các tuyến đường dạng danh sách, locale phải là một trong các ngôn ngữ mà trung tâm trợ giúp hỗ trợ: supported_locales của trung tâm trợ giúp . Hãy đọc bài viết "Hỗ trợ nhiều ngôn ngữ trong Trung tâm trợ giúp của bạn" để thêm ngôn ngữ.
Liệt kê các bài viết
Danh sách này bao gồm mọi bài viết ở mọi trạng thái, cả bản nháp và bài viết đã lưu trữ, theo thứ tự tạo ra. Duyệt qua danh sách bằng page_size và cursor, như mô tả trong các yêu cầu API Paginate và phiên bản Notiondesk .
curl "https://api.notiondesk.so/sites/c74781f6-1aea-4e17-ab23-bbb8b4d174b6/articles?page_size=100&locale=en" \
-H "Authorization: Bearer $NOTIONDESK_API_KEY" \
-H "nd-version: 2026-10-16"{
"object": "list",
"data": [
{
"id": "1761580412",
"title": "Connect your Notion workspace",
"slug": "connect-your-notion-workspace",
"status": "published",
"categories": [
{"id": "910000002", "name": "Connecting Notion", "slug": "connecting-notion", "locale": "en", "status": "published"}
],
"tags": [{"name": "Setup", "slug": "setup"}],
"locales_count": 2,
"updated_at": "2026-10-18T14:39:03+00:00",
"published_at": "2026-10-05T04:39:04+00:00",
"locale": "en",
"reading_time": 3,
"views_count": 42,
"reactions_percent": {"smiley": 50, "neutral_face": 25, "disappointed": 25},
"source_notion_page_id": "3d5001d0-2470-8122-a1b2-c3d4e5f60789",
"notion_article_page_url": "https://www.notion.so/3d5001d024708122a1b2c3d4e5f60789",
"sync_in_progress": false,
"sync_timeout": false,
"sync_failed": false,
"sync_error_code": null,
"auto_translated": false
}
],
"has_more": true,
"next_cursor": "OPAQUE_CURSOR"
}| Cánh đồng | Nghĩa |
|---|---|
id | Mã định danh bài viết, được sử dụng là article_id để đọc bài viết. |
| __ĐƯỢC BẢO QUẢN_102__, __ĐƯỢC BẢO QUẢN_101__ | Tiêu đề bài viết và đoạn đường dẫn của nó trên trung tâm trợ giúp |
status | draft, published, review hoặc archived. Xem Cách kiểm soát khả năng hiển thị bài viết |
categories | Bài viết này thuộc về các bộ sưu tập, mỗi bộ sưu tập đều có mã số id, name, slug, locale và status. |
tags | Các thẻ của bài viết, mỗi thẻ đều có name và slug |
locales_count | Bài viết này có bao nhiêu ngôn ngữ? |
| __ĐÃ BẢO TỒN_85__, __ĐÃ BẢO TỒN_84__ | Bài viết được chỉnh sửa lần cuối khi nào và được xuất bản lần cuối khi nào. |
locale | Ngôn ngữ của mục này |
reading_time | Thời gian đọc ước tính, tính bằng phút |
views_count | Số lần độc giả mở bài viết |
reactions_percent | Mỗi phản hồi của người đọc được thể hiện bằng phần trăm, tương ứng với tỷ lệ phần trăm phản hồi của tất cả các phản hồi khác. Tên của các phản hồi tùy thuộc vào phong cách phản hồi của bạn. |
| __ĐƯỢC BẢO TỒN_79__, __ĐƯỢC BẢO TỒN_78__ | Trang Notion mà bài viết được đồng bộ từ đó, và URL của trang Notion bằng ngôn ngữ này (null dành cho bản dịch tự động) |
sync_in_progress, sync_timeout, sync_failed, sync_error_code | Liệu quá trình đồng bộ hóa bài viết có đang diễn ra không, và liệu lần đồng bộ hóa cuối cùng có bị hết thời gian chờ hoặc thất bại hay không, và tại sao. |
auto_translated | Liệu ngôn ngữ này có phải do dịch tự động tạo ra hay không? |
sync_failed: trueĐọc bài viết dưới dạng Markdown
curl "https://api.notiondesk.so/sites/c74781f6-1aea-4e17-ab23-bbb8b4d174b6/articles/1761580412?locale=en" \
-H "Authorization: Bearer $NOTIONDESK_API_KEY" \
-H "nd-version: 2026-10-16"{
"id": "1761580412",
"type": "article",
"title": "Connect your Notion workspace",
"slug": "connect-your-notion-workspace",
"text": "# Connect your Notion workspace\n\nOpen **Settings**, then **Notion**...",
"url": "https://help.example.com/en/articles/connect-your-notion-workspace",
"locale": "en",
"last_updated": "2026-10-18T14:39:03+00:00",
"category": {"id": "910000002", "title": "Connecting Notion", "slug": "connecting-notion"},
"tags": ["setup"],
"truncated": false,
"author": {"name": "Ada Lovelace"},
"status": "published",
"content_available": true,
"sync_in_progress": false,
"sync_timeout": false,
"sync_failed": false,
"sync_error_code": null
}| Cánh đồng | Nghĩa |
|---|---|
type | Luôn luôn __ĐƯỢC BẢO QUẢN_69__ |
text | Nội dung bài viết dưới dạng Markdown. Sẽ trống nếu chưa có nội dung nào được lưu trữ. |
truncated | true khi text bị cắt ở 200.000 byte. Việc cắt luôn luôn rơi vào một ký tự nguyên vẹn. |
content_available | Liệu Notiondesk có chứa nội dung cho ngôn ngữ này hay không? |
url | Bài phát biểu công khai của bài báo |
category | Bộ sưu tập chính của bài viết: id, title và slug |
tags | Các slug của thẻ bài viết |
author | Tác giả bài viết: name |
Mọi trạng thái đều có thể đọc được, vì vậy bạn có thể đọc bản nháp trước khi xuất bản. Một bài viết không có bản dịch trong yêu cầu locale sẽ trả về 404 not_found.
Liệt kê các bộ sưu tập
Mỗi mục là một tập hợp các nội dung bằng ngôn ngữ được yêu cầu, theo thứ tự các tập hợp đó được tạo ra:
Xây dựng lại cây bộ sưu tập của bạn với ba trường:
curl "https://api.notiondesk.so/sites/c74781f6-1aea-4e17-ab23-bbb8b4d174b6/categories?page_size=100" \
-H "Authorization: Bearer $NOTIONDESK_API_KEY" \
-H "nd-version: 2026-10-16"{
"id": "910000001",
"name": "Getting Started",
"slug": "getting-started",
"updated_at": "2026-10-18T14:39:12+00:00",
"locale": "en",
"is_parent": true,
"source_notion_page_id": "5d5001d0-2470-8122-a1b2-c3d4e5f60789",
"notion_category_page_url": "https://www.notion.so/5d5001d024708122a1b2c3d4e5f60789",
"sync_in_progress": false,
"sync_timeout": false,
"sync_failed": false,
"sync_error_code": null,
"parent_ids": [],
"children_ids": ["910000002"],
"locales_count": 2,
"status": "published",
"auto_translated": false
}| Cánh đồng | Nghĩa |
|---|---|
is_parent | true dành cho một bộ sưu tập ở đầu hệ thống phân cấp |
parent_ids | Các bộ sưu tập nằm ngay phía trên bộ sưu tập này. |
children_ids | Các bộ sưu tập ngay bên dưới bộ sưu tập này. |
Danh sách này không hiển thị số lượng bài viết. Để đếm số bài viết trong một bộ sưu tập, hãy liệt kê các bài viết và nhóm chúng theo categories. Tìm hiểu cách các bộ sưu tập sắp xếp trung tâm trợ giúp của bạn trong Sử dụng bộ sưu tập để sắp xếp bài viết của bạn .
Đọc một tuyển tập
Phản hồi có cấu trúc tương tự như một bài viết: type là category, title, slug, url, status, các trường đồng bộ, và text với nội dung riêng của bộ sưu tập dưới dạng markdown, trống khi không có nội dung nào.
Liệt kê các mục nhật ký thay đổi
Nhật ký thay đổi liệt kê các bài viết đã xuất bản được lưu trữ trong bộ sưu tập nhật ký thay đổi của bạn, bài mới nhất được hiển thị trước. Thiết lập nhật ký thay đổi bằng cách làm theo hướng dẫn trong trung tâm trợ giúp của bạn .
curl "https://api.notiondesk.so/sites/c74781f6-1aea-4e17-ab23-bbb8b4d174b6/categories/910000001?locale=en" \
-H "Authorization: Bearer $NOTIONDESK_API_KEY" \
-H "nd-version: 2026-10-16"curl "https://api.notiondesk.so/sites/c74781f6-1aea-4e17-ab23-bbb8b4d174b6/changelog?page_size=50&locale=en" \
-H "Authorization: Bearer $NOTIONDESK_API_KEY" \
-H "nd-version: 2026-10-16"{
"object": "list",
"data": [
{
"id": "article:1761497350",
"title": "Multilingual sync is now available",
"slug": "multilingual-sync-is-now-available",
"text": "Help centers on the Enterprise plan can now sync every configured locale in a single run instead of one language at a time.",
"published_at": "2026-10-13T09:12:44+00:00",
"last_updated": "2026-10-18T14:39:03+00:00",
"tags": [],
"url": "https://help.example.com/en/changelogs",
"locale": "en"
}
],
"has_more": true,
"next_cursor": "OPAQUE_CURSOR"
}| Cánh đồng | Nghĩa |
|---|---|
id | article: theo sau là ID bài viết của mục nhập. Xóa tiền tố để đọc toàn bộ mục nhập với đường dẫn bài viết. |
text | Văn bản thuần túy của mục nhập, thường là một đoạn trích khoảng 30 từ. |
| __ĐƯỢC BẢO TỒN_38__, __ĐƯỢC BẢO TỒN_37__ | Thời điểm bài viết được đăng tải và thời điểm bài viết được chỉnh sửa lần cuối. |
tags | Các slug của thẻ mục nhập |
url | Trang nhật ký thay đổi của bạn bằng ngôn ngữ này |
Thông tin hữu ích:
- Một mục chỉ hiển thị khi bộ sưu tập nhật ký thay đổi của nó được xuất bản bằng ngôn ngữ được yêu cầu.
- Trên trung tâm trợ giúp sử dụng tài khoản khách, danh sách chỉ hiển thị các mục mà mọi người dùng đều có thể xem.
- Danh sách chỉ hiển thị tối đa 1.000 mục mới nhất. Sau đó,
has_moresẽ trở thànhfalsengay cả khi có các mục cũ hơn.
- Trong một số trường hợp hiếm gặp, khi xảy ra sự cố tạm thời, danh sách có thể bị bỏ qua hoặc lặp lại một mục. Hãy đọc lại sau để có danh sách đầy đủ.
Lỗi
| Trạng thái | Khi | code |
|---|---|---|
| 400 | page_size nằm ngoài phạm vi từ 1 đến 100, cursor không hợp lệ, locale không phải là ngôn ngữ mà trung tâm trợ giúp hỗ trợ (danh sách) hoặc không có độ dài từ 2 đến 10 ký tự (đọc đơn), hoặc truy vấn có tham số không xác định. | validation_error |
| 403 | Khóa này thiếu phạm vi read | insufficient_scope |
| 403 | Chỉ hiển thị nhật ký thay đổi: nhật ký thay đổi đã bị tắt hoặc không được bao gồm trong gói dịch vụ của bạn, hoặc tính năng phân tích của trung tâm trợ giúp đã bị tắt. | permission_denied |
| 404 | Trung tâm trợ giúp, bài viết hoặc bộ sưu tập không tồn tại trong không gian làm việc của bạn, nó không có bản dịch trong locale, hoặc nhật ký thay đổi đang bật nhưng không có bộ sưu tập nhật ký thay đổi. | not_found |
Mỗi tuyến đường cũng có thể trả lời invalid_version, authentication_error, rate_limited và internal_error. Xem Xử lý lỗi API Notiondesk, giới hạn tỷ lệ và số lần thử lại .
Câu hỏi thường gặp
Tôi có thể tạo hoặc chỉnh sửa bài viết bằng API Notiondesk không?
Không. Notion là nguồn thông tin chính xác nhất cho nội dung của bạn. Chỉnh sửa bài viết trong Notion, sau đó kích hoạt đồng bộ hóa với API hoặc chờ đồng bộ hóa theo lịch trình.
Danh sách bài viết có bao gồm cả bản nháp không?
Đúng vậy. Danh sách và đường dẫn đọc bao gồm mọi trạng thái: draft, published, review và archived. Hãy lọc kết quả trong mã của bạn theo status để chỉ giữ lại các bài viết đã được xuất bản.
Làm thế nào để xuất tất cả bài viết dưới dạng Markdown?
Liệt kê các bài viết, sau đó đọc từng bài theo thứ tự id. Bài viết ví dụ có một kịch bản sao lưu hoàn chỉnh.
truncated: true có nghĩa là gì?
truncated: true có nghĩa là gì?Đoạn mã Markdown của bài viết dài hơn 200.000 byte, vì vậy text chứa 200.000 byte đầu tiên, được cắt bớt khi đi qua một ký tự nguyên vẹn.
Tại sao notion_article_page_url lại trống đối với một số ngôn ngữ?
notion_article_page_url lại trống đối với một số ngôn ngữ?Ngôn ngữ đó được tạo ra bằng phương pháp dịch tự động, vì vậy nó không có trang riêng trong Notion.