Notion API 簡介
應用程式介面(英語:application programming interface),縮寫為 API,是一種計算介面,它定義多個軟體中介之間的互動,以及可以進行的呼叫(call)或請求(request)的種類,如何進行呼叫或發出請求,應使用的資料格式,應遵循的慣例等。 維基百科
2022 年 3 月 3 號 Notion API 開放,這意味我們可以通過「API 協定」將喜歡的工具的串在一起,設計自己的自動化流程,簡單來說,可以在 Notion 打打字,點擊個程式就自動在 Instagram 、Facebook 多個平台上發文,又或是你是交易高手,用 API 來更新每日的股價,這樣想法都是有可能被實現的。
總之,Notion API 是一種程式和程式之間溝間的方式,透過 Notion API Guides 我們可以知道怎麼使用這個讓人興奮的服務。
再來我們將教大家使用 Postman 這個工具,讓大家更認識 Notion API 是怎麼運作,以及未來它可以怎麼改變我們的生活。
▼ Notion API Guides:
Notion API 怎麼使用?
接下來, Notion API 要怎麼使用呢?
首先,您需要申請一個 Notion API Token。再 Follow 文件 Notion API Guides 的要求,簡單說,就像是《阿里巴巴與四十大盜》故事裡,你必須要喊「芝麻開門」才能打開藏寶山洞。除了芝麻開門之外,可能還有芝麻關門,又或是
女友開門。
如果你的密語不對的話,那寶藏山洞的門就會沒有反應。
總之,我們透過「正確」的密語,程式會為我們執行「對應」的行為,這就是 API 邏輯流程,API 就是用愛的語言將我們想要的程式、行動都串在一起。
這個 API Token 就像是身份認證,唯有身份認證的人,才能拿到一組 Token,這樣就可以防止寶藏被不肖人士取走,例如說不小心聽到密語的阿拉丁。
所以我們小結一下,在 Notion API 我們需要使用「正確」的【愛的語言】資訊領域我們稱為:”Request”,來請求 Notion 的資料中心來為我們做一件事情 “Response”,像是:
所以問題是我們要用什麼方式將 Request 發送給 Notion,這時候像是 Postman 這類不需要寫程式的工具,就可以幫助我們測試和確認資料的正確性。
總之,善用 Notion API 可以為我們完成很多工作、任務,只有你想不到,沒有你做不到,但是這需要一些程式設計知識概念。
Notion Integration Token 怎麼申請?
從左上角的 「Settings & members 」進入設定頁面。
點擊左下方的 Connections ,找到頁面下方的 Develop or manage integrations。
進入頁面後,點擊 Create new integration。
輸入自訂名稱,確認 Read content 有打勾,點擊「Submit」即可。
這樣就完成 Internal Integration Token 的申請,請將 Token 存在某個地方,等一下我們需要使用。
如何設定 Database 的 Connections?
進入資料庫頁面,點擊「…」,選擇下方的 Add connections ,現在新版 Notion 則是將 connections 放在 Customize 裡。
然後選擇剛剛我們設定的 Connections Name,例如:「My_Notion」。
完成後,Connections 會出現一個 Connections Name,這樣就完成了。
如何使用 Postman 測試 Notion API?
Postman 是一款 API 開發工具,由於相較其它程式設計軟體需要由零開始寫程式,這種的軟體可以讓不會寫程式的人也可以使用,也能幫助我們理解以及測試 API,簡單來說,對於新手或是大叔這種懶人最佳的選擇。
Zapier 這類的第 3 方軟體是好用的,但是如果你想有更強大的應用空間的話,自撰程式才能滿足我們最大的需求。
而 Postman 可以幫助我們快速的認識和使用 Notion API ,首先我們要看看 Notion API 的文件內容,請參考它的開發頁面。
我們用 2 個例子來說明。
#1 用 Postman 取得 Notion Database 資料庫清單
首先進入 Postman 頁面,點一下「Collections」並「 Create Collection」新增。
然後會再出現「Add a request」,點下去。
我們依 Notion 開發頁面中「List databases」的說明,如果我們要取得資料庫的清單的話,我們需要輸入 Get-https://api.notion.com/v1/databases 。
我們將其 Send 出後,下面 body 的地方會收到由 Notion 傳回的內容,它說沒有 API token 。
所以一定要滿足兩個條件:
再回到程式,我們到「Headers」選擇「Authorization」將 Notion API Token 打上去然後點擊「Send」。這次就沒有收到 Error ,而是成功地得到 Databases List 了,事情就是這麼簡單。
PS.如果你成功送出,但沒有收到任何的資料庫的話,那表示你可能沒有將資料庫的「Connect 」設定完成。
▼ Notion API Token 設定不要忘了
#2 使用 Postman 透過 NOTION API 修改資料庫的項目標題
所以一樣我們看一下開發頁面的說明,如果我們要「Update database」的話,那我們就要使用 PATCH-https://api.notion.com/v1/databases/{database_id} 的指令來完成。
和上面例子不同的是,取得清單我們用的是「GET」,這裡更新資料庫則是「PATCH」而且我們需要告知 NOTION 一個資訊 – 「資料庫 ID(database_id)」。
那要怎麼取得 id 呢? Database_id 可以在這裡 找到,基本上就是你資料庫的網址,中間的 36 個字母就是 Database_id 也就是我們開啟 Notion 內心的鑰匙。 ????
我們先將 PATCH-https://api.notion.com/v1/databases/{database_id} 複製貼上到我們的 Postman,再把資料庫的 id 取代 {database_id} 的字樣。
資料庫網址為:https://lashiblog.notion.site/5c24c2561b9e4e8eb5d54eef449743df?v=e353e62dd282480d914494f869867fc4
所以資料庫 id 為:5c24c2561b9e4e8eb5d54eef449743df
再用剛剛的 Pastman 來修改,我們將愛的語言修改為 PATCH-https://api.notion.com/v1/databases/5c24c2561b9e4e8eb5d54eef449743df
然後送出看看。
結果收到 OK ,也看到 Notion Database 的資訊,但看一下 Notion 卻是什麼也沒動,因為我們並沒有告訴它要改什麼啊。
所以我們要做 2 件事情:
▼ Headers 是要通知 Notion 我們將把內容放在 Body 而格式為 json。
▼ 從剛剛的 Body 找到 Title 我們把整個格式都複製下來,貼到 Pastman 的 Body 裡,就像是下面的圖示。
選擇 → Body → raw ,把左邊內容的貼到右邊的位置內,在內容的前後加上’{’ , ‘}’,這樣就成為了 JSON 格式的內容。
我們再把 content 後面的內容,改成我們要的,完成後送出資料。
如果成功的話,標題應該就變成我們喜歡的樣子,來跟大叔念一次。
如何使用 Typeform 串接 Notion API?
Typeform 是一個線上表單建立工具,可以讓你輕鬆地建立訪問者可以填寫的表單。( 官網 )
Typeform 是世界上最棒的表單之一,它還有多項整合的功能,像是將名單整合到 Google Excel 、 Mailchimp(Email 行銷系統),甚至是 Facebook pixel 可做到再行銷廣告。
如果使用 Typeform 和 Notion API 串接的話,讓人在美美的 Typeform 表單上填寫資料,並將資料儲存在 Notion 裡,更方便管理和使用,是不是聽起來還不錯。
使用上也很容易,只要這樣做:
Step1. 加入會員( 免費加入會員 )
Step2. 新增表單
Step3. 設定 Connect 到 Notion
表單完成後,我們要將表單 Connect 到 notio 。
在 Notion 設定資料庫,這樣就完成。
再後,不要忘了新增一個 Notion Database ,並且將 Notion Connecting 設定好。