MO STORIES

Notion API Token 教學(2026):API Key 怎麼拿、授權資料庫與 curl 測試完整指南

2025年11月8日27 MIN READ

先說結論(Notion API Token / API Key) 如果你正在找 Notion API 教學,最短的成功路徑其實只有三步: 拿到 Integration Token 把資料庫分享給該 Integration 用 curl 成功打通第一個 API 也就是說,你第一次不需要先學完整 SDK,也不用先碰太多抽象...

Notion API Token 教學(2026):API Key 怎麼拿、授權資料庫與 curl 測試完整指南
Cover Visual

先說結論(Notion API Token / API Key)

如果你正在找 Notion API 教學,最短的成功路徑其實只有三步:

  1. 拿到 Integration Token
  2. 把資料庫分享給該 Integration
  3. curl 成功打通第一個 API

也就是說,你第一次不需要先學完整 SDK,也不用先碰太多抽象概念。先跑通 token、授權、curl 這三件事,成功率最高。

如果你搜尋的是下面這幾種詞,這篇其實都在回答同一件事:

  • notion api token
  • notion api key
  • notion token 取得
  • notion integration token
  • notion secret key
  • notion access token

在 Notion 官方現在的命名裡,最準確的說法是 Integration Token。很多人說的 Notion API KeyNotion Secret KeyNotion Access Token,實務上大多都在指同一串 secret_... 憑證。

如果你是新手,Notion API 最穩的做法是先完成這 3 步:

  1. 建立 Integration 並拿到 Token。
  2. 把目標資料來源分享給該 Integration(Connections)。
  3. 用 curl 依序跑通 SearchQueryCreate page

先跑通再擴充,成功率最高。

如果你要把 Notion 做成「可交接、可維護」的工作系統,可先看:

  • [[2026-02-26 Notion 企業數位大腦與自動化導入是什麼?|小企業把專案與知識放進同一套系統|Notion 企業數位大腦與自動化導入是什麼]]
  • 如果你要看完整 n8n 圖解實作,可直接看這篇:[[2026-03-04 Notion 自動化怎麼做?用 Zapier 與 n8n 解放雙手的完整教學|Notion 自動化完整教學]]。
你要做什麼 最短路徑 你需要準備 最常卡住
驗證 Token 是否可用 curl 打 POST /v1/search Token、Notion-Version header 401(Token 錯)
讀取資料 POST /v1/data_sources/{id}/query Data Source ID、欄位型別 403(沒分享)
寫入資料 POST /v1/pages parent data_source、properties payload validation_error(欄位對不上)

Notion API 教學新手怎麼開始?

如果你是第一次接觸 Notion API,我建議不要一開始就想著:

  • 串很多工具
  • 直接做完整自動化
  • 先研究很複雜的 SDK

比較穩的順序是:

  1. 先建立 Integration,確認 token 已經拿到
  2. 把一個測試用資料庫分享給 Integration
  3. curlPOST /v1/search
  4. 再打 POST /v1/data_sources/{id}/query
  5. 最後才測 POST /v1/pages

這樣做的好處是,你會很快知道自己卡在哪一層:

  • 是 token 問題
  • 是授權問題
  • 是 ID 問題
  • 還是欄位型別問題

對新手來說,先把第一個 API 打通,比先理解全部文件更重要。

如果你只想先確認自己是不是走在對的路上,可以用下面這個 3 分鐘判斷表:

你現在卡住的地方 最先檢查什麼 多半是哪裡出錯
一送 request 就 401 Authorization: Bearer ... 與 Token 本身 Token 複製錯、漏了 Bearer
Token 正常但 403 目標資料來源有沒有做 Connections 授權 Integration 沒被加進資料庫
query 打不通 你拿到的是不是正確的 data source ID 直接從舊教學抄 ID、拿錯物件
create page 報 validation_error Notion 欄位名稱與型別 select / title / rich_text 對不上

也就是說,Notion API 新手最有效率的排錯方式不是盲查文件,而是先把錯誤分成 401403ID欄位型別 這四類。

Notion API key、Integration Token、secret key、access token 有差嗎?

短答:大多數情境下,你可以先把它們當成同一組搜尋意圖。 差別主要在叫法,不在用途。

你可能搜尋的詞 官方或較準確的說法 實際上指的是什麼
notion api key Integration Token 呼叫 Notion API 用的憑證
notion api token Integration Token 同一串 secret_...
notion secret key Integration Token 多半是在找 token 本體
notion access token Integration Token 多半是在找授權後可用的 token
notion integration token Integration Token 官方最接近的叫法

所以如果你現在的問題是「Notion token 在哪裡拿」或「Notion API key 怎麼取得」,你不需要找另一套文件,而是直接去建立 Integration。

API 是什麼?新手怎麼理解?

短答:API 就是「兩個軟體溝通的標準說法」。你可以把它想成點餐:

  1. 你把「想要什麼」講清楚(Request)。
  2. 對方回你「結果是什麼」(Response)。

在 Notion API 裡,你常會看到這幾個關鍵字:

  • POST /v1/search:你問 Notion「有哪些符合條件的資料來源?」
  • POST /v1/data_sources/{id}/query:你問 Notion「把這個資料來源的資料列給我」
  • POST /v1/pages:你請 Notion「幫我新增一列資料」

你做對了,通常會回 200/201;做錯最常見就是 401(Token 錯)或 403(沒授權)。

Notion API 可以拿來做什麼?適合誰?

短答:適合把 Notion 當「資料中樞」的人。你可以用 Notion API 做表單收集、內容同步、CRM/專案資料流整合、備份與自動化寫入。

如果你只是想快速把流程串起來,先用 Typeform/Zapier/Make/n8n 跑通;當你需要更高的可控性(欄位驗證、條件寫入、資料一致性),再回到 API。

Notion API 2026 更新了什麼?為什麼改用 Search + Data Source?

短答:不建議再用舊教學作為主路線。

現在實務上建議用 Search + Data Source 為主。你仍可能在舊專案看到 Database 相關端點,但新流程應以官方現行文件優先。

用途 建議路線(2026) 為什麼
找目標資料來源 POST /v1/search 先找到 page / data source,避免硬貼錯 ID
讀取資料列 POST /v1/data_sources/{id}/query 結構更貼近現在 Notion 資料模型
新增資料列 POST /v1/pages 可直接指定 parent data_source

Notion Markdown Content API:直接用 Markdown 讀寫頁面

2026 年 2 月,Notion 推出了 Markdown Content API。你可以直接用 Markdown 格式建立、讀取、更新頁面內容,不用再手動把 Markdown 拆成 block JSON。

對開發者來說,這是最大的生產力提升。

三個 Endpoint

操作 Method Endpoint 說明
建立頁面 POST /v1/pages(帶 markdown 參數) 用 Markdown 建頁面,取代 children blocks
讀取頁面 GET /v1/pages/{id}/markdown 回傳完整頁面的 Markdown 內容
更新內容 PATCH /v1/pages/{id}/markdown 全部替換(replace_content)或搜尋替換(update_content

所有 Markdown API 請求都需要 header:Notion-Version: 2026-03-11

建立頁面範例

curl -X POST "https://api.notion.com/v1/pages" \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Notion-Version: 2026-03-11" \
  -H "Content-Type: application/json" \
  -d '{
    "parent": { "database_id": "YOUR_DATABASE_ID" },
    "properties": {
      "Name": { "title": [{"text": {"content": "測試頁面"}}] }
    },
    "markdown": "# 標題\n\n這是用 Markdown API 建立的頁面。\n\n- 項目一\n- 項目二\n\n| 欄位 | 值 |\n|------|----|\n| A | 1 |\n| B | 2 |"
  }'

讀取頁面範例

curl "https://api.notion.com/v1/pages/YOUR_PAGE_ID/markdown" \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Notion-Version: 2026-03-11"

回傳格式:

{
  "markdown": "# 標題\n\n這是頁面內容...",
  "object": "page"
}

使用限制

markdown 參數跟 children(block array)互斥,不能同時傳
② 圖片、檔案的 URL 是 pre-signed,會在短時間內過期
③ 支援 Notion 增強版 Markdown(Enhanced Markdown),包含 callout、toggle 等特殊語法

適合什麼場景

場景 用 Markdown API 用 Block API
本地 .md 同步到 Notion ✅ 直接傳 ❌ 要手動轉 blocks
Notion 匯出成 Markdown ✅ 一個 GET 搞定 ❌ 要遞迴抓 blocks 再轉
精確控制每個 block 樣式
操作 inline database / synced block

如果你的工作流是「本地寫 Markdown → 同步到 Notion」或「Notion 內容匯出成 Markdown」,Markdown API 會省掉大量轉換程式碼。


/v1/views API:用程式管理資料庫 View

2026 年 3 月,Notion 推出 /v1/views API,讓開發者可以用程式建立、更新、刪除資料庫 View(包括新的 Dashboard View)。

免費領取

Notion 入門套件
3 個模板,直接複製用

不用從零開始建系統。訂閱電子報,立即取得可直接使用的 Notion 模板包。

📅

內容日曆

週/月主題規劃,一目瞭然

極簡習慣追蹤

每日打卡 + 月度回顧

📇

個人 CRM

聯絡人管理,不再忘記誰是誰

訂閱即同意收取瘦桑週報,隨時可取消。不賣 email,不發廣告。

支援的操作

Method Endpoint 說明
POST /v1/views 建立新 View
GET /v1/views/{id} 取得 View 設定
PATCH /v1/views/{id} 更新 View(篩選、排序、widget)
DELETE /v1/views/{id} 刪除 View
GET /v1/databases/{id}/views 列出資料庫的所有 View

支援的 View 類型

Table、Board、Calendar、Timeline、Gallery、Chart、Dashboard 全部支援。

適合什麼場景

自動化建立 Dashboard:新專案建立時,腳本自動幫你建好標準 Dashboard View
批次更新篩選條件:用 API 一次更新多個 View 的 filter,不用手動逐一修改
搭配 Webhook:資料庫變更時觸發 webhook → 自動調整 View 設定


開始前要準備什麼?

先確認這 5 項,後面就不會一直撞牆:

  1. Notion Integration(Internal)。
  2. Integration Token(secret_...)。
  3. 目標資料來源已分享給 Integration(Connections)。
  4. 可跑 HTTP 請求的環境(建議直接用終端機 curl)。
  5. 固定的 Notion-Version header。

Notion token 取得在哪裡?Notion API Token 怎麼申請?(Integration Token)

如果你搜尋的是 notion token 取得notion api tokennotion api key 取得,現在 Notion 官方實際發給你的會是 Integration Token。也就是說,很多人嘴上說的 Notion API Token,本質上就是你在 Integrations 頁面建立 Internal Integration 後拿到的那串 secret_...

在 Notion 的 Integrations 頁面建立一個 Internal Integration,建立完成就能拿到 Token。

讓我們從頭做一次:

一、從左上角的選單,點擊「Settings 」進入設定頁面。

image.png

二、在頁面中,點擊左下方的 Connections ,找到頁面下方的 Develop or manage integrations。

f4b912ae-3397-49c1-9116-881cbbe93b6f.png

三、進入頁面後,點擊 Create a new integration。

image.png

幫它取個好記的名字

image.png

四、這樣就完成 Internal Integration Token 的申請,請將 Token 存在某個地方,等一下我們需要使用。

image.png

這一步做完後,你就完成了多數人搜尋的:

  • notion token 取得
  • notion api key 取得
  • notion secret key 在哪裡看

如果你看到的是一串 secret_...,那就是你之後放進 Authorization: Bearer ... 的值。

Notion API Token 是什麼?和 API key、secret key 有差嗎?

短答:對大多數新手來說,可以先把它理解成同一件事,但正式名稱請用 Integration Token

很多人會搜尋:

  • notion api token
  • notion api key
  • notion token 取得
  • notion integration token
  • notion secret key
  • notion access token

它們想解決的通常是同一個問題:我要去哪裡拿那串可以呼叫 Notion API 的憑證?

實務上你先記住這 3 件事就夠了:

  1. 你現在要拿的是 Integration Token
  2. 這串 token 只代表「你有鑰匙」,不代表自動擁有所有資料權限
  3. 真正能不能讀到資料,還要看該 page 或 data source 有沒有分享給這個 Integration

所以如果你拿到 token 之後還是打不通,不一定是 token 錯,也可能只是還沒做 Connections 授權。

Notion token 在哪裡看?拿到後要怎麼用?

短答:在 Integration 建立完成的畫面就能看到,之後請把它放進環境變數,不要直接硬寫在程式碼裡。

最基本的用法長這樣:

export NOTION_TOKEN="secret_xxx"

curl -sS https://api.notion.com/v1/search \
  -H "Authorization: Bearer $NOTION_TOKEN" \
  -H "Notion-Version: 2025-09-03" \
  -H "Content-Type: application/json" \
  --data '{}'

你要確認的不是「有沒有找到 token」而已,而是:

  1. 這串 token 是否真的能通過 401 驗證
  2. 目標資料來源是否已授權給 Integration
  3. 你有沒有把 token 放在安全的位置,而不是公開 repo

Notion API Token 拿到後,怎麼測試有沒有效?

最簡單的方式不是先打最複雜的資料庫 query,而是先用 POST /v1/search 測一次。

你只需要確認 3 件事:

  1. Authorization: Bearer <YOUR_TOKEN> 有帶到
  2. Notion-Version 有指定
  3. 回傳不是 401

一旦 search 能成功回資料,就代表:

  • token 格式大致正確
  • header 沒帶錯
  • API 基本連線正常

接著你再往 data_sources/{id}/querypages 走,排錯會快很多。

Notion API 403 怎麼解?(Connections 授權)

短答:因為 Token 只是鑰匙,資料來源沒有分享給 Integration,一樣沒權限。

你要做的事:

  1. 打開目標資料庫(或資料來源)頁面。
  2. 點 Connections / Add connections
  3. 指定剛建立的 Integration。
  4. 重新送一次 API。

如果你明明拿得到 Token,也確認 Notion-Version 有帶,但還是 403,十之八九不是 API 壞掉,而是這一步沒做完。這也是為什麼很多人誤以為 Notion API 很難,其實只是授權模型和 Google Sheet 那種「拿到 key 就能跑」不一樣。

f8e3019e-d8cf-4e07-8aca-4a86dbd2b4e5.png

案例 1:用 Typeform 表單寫入 Notion(先做 no-code 驗證)

Typeform 是一個線上表單建立工具,可以讓你輕鬆地建立訪問者可以填寫的表單。( 官網 )

Typeform 是世界上最棒的表單之一,它還有多項整合的功能,像是將名單整合到 Google Excel 、 Mailchimp(Email 行銷系統),甚至是 Facebook pixel 可做到再行銷廣告。

如果使用 Typeform 和 Notion API 串接的話,讓人在美美的 Typeform 表單上填寫資料,並將資料儲存在 Notion 裡,更方便管理和使用,是不是聽起來還不錯。

所以先用 Typeform 跑通,確認資料真的會進 Notion,再上程式化流程,對新手最穩。

這個案例的目標是「表單送出後,Notion 會新增一列,而且欄位型別不會亂掉」。

你做完這個案例,應該得到 3 個明確結果:

  1. 每送出一份表單,Notion 會新增一列(代表串接真的寫進去了)。
  2. 每個欄位都落在正確型別(例如 Email 進 email,Need 進 select/multi_select)。
  3. 你已經有一組「真實資料樣本」,可拿來驗證後續 n8n 流程。

建議先把 Notion 資料來源做成這種結構(範例):

Notion 欄位 建議型別 來源(Typeform) 常見踩坑
Name title 短文字 欄位名稱不一致導致寫不進
Email email Email 存成 rich_text 後續難驗證
Need select / multi_select 單選/多選 選項值不一致造成落空
Source select 隱藏欄位/UTM 忘了設預設值,變成大量空值
Note rich_text 長文字 長度過長或塞入不必要內容

使用上也很容易,只要這樣做:

Step1. 加入會員( 免費加入會員 )

483d1f31-d3d0-49c6-8bb7-9eeb8eb70c20.png

Step2. 新增表單

e8a796f9-a6f7-472b-a0d8-4bbc3c0b88c2.png

Step3. 設定 Connect 到 Notion

表單完成後,我們要將表單 Connect 到 Notion。

3ed6e7ae-c695-483d-bacf-39c63e8016e2.png

在 Notion 設定資料庫,這樣就完成。

8ba919a9-b65d-4f1c-bc38-b833499256e0.png

再後,不要忘了新增一個 Notion Database ,並且將 Notion Connecting 設定好。

edfb8308-be9a-4b15-aca1-3c4b7396a014.png

7eccf022-4c05-48e1-a594-acc98c903196.png

案例 2:用 n8n + curl 跑一次 API(程式化驗證)

短答:當 Typeform 已經跑通,你就可以用 n8n + curl 驗證「不用表單,也能直接用 API 寫進 Notion」。

先準備環境變數:

export NOTION_TOKEN="<YOUR_NOTION_TOKEN>"
export NOTION_VERSION="2025-09-03"

用 curl 找出 Page 中帶有 Notion 關鍵字

Copy cURL

curl -sS https://api.notion.com/v1/search \
  -H "Authorization: Bearer $NOTION_TOKEN" \
  -H "Notion-Version: $NOTION_VERSION" \
  -H "Content-Type: application/json" \
  --data '{"query":"notion","filter":{"value":"page","property":"object"}}'

點擊 Import cURL

image.png

輸入你的 API KEY,Notion-Version = 2025-09-03,點擊 Execute Step。成功的話,就會像右側出現你的 Notion Page。

image.png

如果你想看 n8n 的完整圖解(Webhook 設定、按鈕觸發、排錯重點),可直接接這篇:[[2026-03-04 Notion 自動化怎麼做?用 Zapier 與 n8n 解放雙手的完整教學|Notion 自動化完整教學]]。

401/403/404/Validation Error 怎麼排查?

短答:先看狀態碼,再對應權限、ID、欄位型別,5 分鐘內通常能定位問題。

錯誤 最常見原因 快速修復
401 unauthorized Token 錯、漏 Bearer 重貼 Token,確認 Header 格式
403 forbidden 沒把資料來源分享給 Integration 到 Connections 補授權
404 object_not_found ID 貼錯或資源不存在 先用 Search 重新取 ID
validation_error 欄位名或型別不符 回 Notion 檢查 property 名稱與 type

如果你想把排錯速度再拉快,順序建議固定成這樣:

  1. 先看 HTTP status code,不要一開始就重寫整段 request。
  2. 再檢查 Token、Notion-VersionContent-Type 三個 header。
  3. 確認 data source 是否真的有分享給 Integration。
  4. 最後才回去比對欄位型別與 payload。

這個順序的好處是,你不會把「授權問題」誤判成「程式碼問題」,也不會在欄位 payload 上浪費太久。

Notion API Token 怎麼保存才安全?

短答:Token 當密碼管理,不要硬寫在前端或公開文章。

建議實務:

  1. 放在 .env(例如 NOTION_API_KEY)。
  2. CI/CD 用 Secrets 管理。
  3. 定期輪替,舊 Token 失效。
  4. 依環境拆分(dev/staging/prod 不共用)。

下一步行動

  1. 先跑 案例 1,用 Typeform 產生第一批可驗證資料。
  2. 再跑 案例 2,用 curl 驗證 n8n/API 寫入流程。
  3. 想看 n8n 完整圖解可直接看:[[2026-03-04 Notion 自動化怎麼做?用 Zapier 與 n8n 解放雙手的完整教學|Notion 自動化完整教學]]。

延伸閱讀:

  • [[2026-04-02 Notion Database 教學:建立資料庫、欄位與 View 的完整入門|Notion Database 教學:資料庫完整入門]]
  • [[2026-03-11 Notion 工作區(Workspace)如何創建及設定?|Notion Workspace 教學:工作區建立與設定]]
  • [[2026-03-27 2026 Notion 模板推薦:10 款免費模板,工作、記帳、年度計畫一次搞定|2026 Notion 模板推薦]]

常見問題 FAQ

Q: Notion API Token 要去哪裡拿?

到 Notion Integrations 建立 Internal Integration 後即可取得 Token。取得後仍要把目標資料來源分享給該 Integration,否則常見 403。

Q: notion api token 跟 notion api key 是同一個東西嗎?

大多數情境下,你可以先把它當成同一件事理解;但在 Notion 官方現在的命名裡,較準確的說法是 Integration Token。真正重點不是名稱,而是你拿到 token 後,還要把資料來源分享給該 Integration。

Q: notion secret key 跟 notion access token 是什麼?

大多數時候,這兩個詞也是在找同一串可以呼叫 Notion API 的憑證。對 Notion 現行文件來說,最穩的叫法還是 Integration Token。如果你已經拿到 secret_...,那通常就是你要找的東西。

Q: notion token 在哪裡看?

到 Notion 的 Integrations 頁面建立 Internal Integration,建立完成的畫面就能看到 token。若你是回頭管理舊 integration,建議把 token 存進環境變數或 Secrets 管理工具,不要直接寫死在程式碼。

Q: 為什麼我用 curl 還是遇到 401/403?

401 多半是 Token 或 Header 格式錯;403 多半是沒有做 Connections 授權。先檢查 Authorization 與 Notion-Version,再檢查資料來源權限;不要一開始就懷疑整段 curl 指令。

Q: Data Source ID 要怎麼找?

建議先用 POST /v1/search 找,避免手動從網址截錯 ID。若手動複製,也要確認是你要操作的同一個資料來源,因為很多舊教學拿的是 page ID,不一定是現在該 query 的 data source ID。

Q: Notion API 新手第一個 curl 應該打哪個端點?

建議先打 POST /v1/search。因為它最適合用來驗證 token、header 與基本連線是否正常,成功後再往 querycreate page 走,排錯會快很多。

Q: Typeform 串接後為什麼欄位會寫不進 Notion?

通常是欄位型別不一致(例如 Notion 要 select,Typeform 丟純文字)或必填欄位未映射。先用 3 筆測試資料逐欄驗證。

Q: Token 很敏感嗎?怎麼保存比較安全?

很敏感。請放環境變數或 Secrets Manager,不要放在公開 repo、前端程式碼或可被外部讀取的設定檔。

Q: 不想寫程式,可以怎麼入門 Notion 自動化?

可以先從 no-code 路線開始(Typeform、Zapier、Make、n8n),先把資料流跑通,再逐步換成 API 客製流程。

Q: Notion API 可以直接用 Markdown 嗎?

可以。2026 年 2 月推出的 Markdown Content API 支援用 Markdown 建立、讀取、更新頁面。請求時帶 Notion-Version: 2026-03-11,用 markdown 參數取代 children blocks。適合本地 Markdown 同步到 Notion 或從 Notion 匯出內容的場景。


資料來源

資料最後查核日期:2026-04-04

MO 編輯

關於作者 | 10+ 經驗

MO 編輯

WordPress 效能優化專家 / MO Design Studio 共同創辦人

關注設計 × 工程的平衡協作,擅長以簡潔語言說故事。專門幫已有網站的品牌做速度升級。相信好網站不用重做,只需要正確的優化。

WordPress 優化SEO 策略Headless CMS效能稽核

延伸閱讀

免費領取

Notion 入門套件
3 個模板,直接複製用

不用從零開始建系統。訂閱電子報,立即取得可直接使用的 Notion 模板包。

📅

內容日曆

週/月主題規劃,一目瞭然

極簡習慣追蹤

每日打卡 + 月度回顧

📇

個人 CRM

聯絡人管理,不再忘記誰是誰

訂閱即同意收取瘦桑週報,隨時可取消。不賣 email,不發廣告。

MO DESIGN STUDIO

我們專注品牌網站設計、行銷著陸頁與整合式 CMS 流程,協助團隊打造有感的線上體驗。

返回部落格