← 回技術文件 晶鑫數位科技 3dgowl.com
開發資源

public-apis 使用手冊:
47 萬星的免費 API 寶庫,怎麼挑、怎麼串、怎麼避坑

GitHub 最受歡迎的免費 API 目錄完整指南:看懂 Auth 與 CORS 欄位、五十個分類導覽、挑選 API 的決策流程、實際串接範例,以及使用免費 API 的常見陷阱。

最後更新:2026 年 8 月
本文依 public-apis/public-apis 專案現況整理撰寫(2026 年 8 月,清單約 1,760 個 API、50 個分類)。

做個 side project 想要天氣資料、匯率、電影資訊,或者上課示範需要一個能立刻呼叫的 API,第一個該打開的頁面幾乎都是同一個:GitHub 上的 public-apis。它是全 GitHub 最多星的專案之一(46.7 萬星、5.1 萬 fork),內容卻出乎意料地簡單,就是一份人工維護的免費 API 目錄,MIT 授權,按 50 個分類整理了約 1,760 個可以免費使用的公開 API。

不過「就是一份清單」不代表不需要說明書。這份手冊講三件事:怎麼正確地讀這份清單(欄位的意思比想像中重要)、怎麼從一千七百多個選項裡挑到能用的那一個,以及挑到之後怎麼實際串起來、會踩到哪些坑。

一、這個專案是什麼(以及不是什麼)

public-apis 是一份由社群人工審核維護的 Markdown 清單,每一列登錄一個免費(或有免費額度)的公開 API,附上簡介、認證方式、是否支援 HTTPS 與 CORS。專案從 2016 年累積至今,維護節奏穩定,本文撰寫當天都還有新的 API 被合併進去。

先講清楚它「不是什麼」,可以省掉很多誤會:

閱讀時注意:頁面最上方是贊助商廣告 README 開頭有一大段 APILayer 的產品介紹與表格(IPstack、Weatherstack 等)。APILayer 是這個專案的贊助商,那一區是商業內容,品質不差但屬於付費推廣位。真正的社群清單從分類索引(Index)之後才開始,兩者要分開看待。

二、先學會讀清單:五個欄位的意思

每個分類下是一張五欄的表格。欄位看起來簡單,但 Auth 和 CORS 兩欄直接決定你「能不能用、怎麼用」,值得花兩分鐘搞懂:

欄位可能的值對你的意義
API名稱+連結點進去是官方文件或申請頁
Description一句話簡介判斷資料範圍的第一線索,詳細能力還是要看文件
AuthNo / apiKey / OAuth / User-AgentNo 代表拿了網址就能呼叫;apiKey 要先註冊拿金鑰;OAuth 要走授權流程,通常是要存取「使用者自己的資料」;User-Agent 只要求帶識別標頭
HTTPSYes / No標 No 的基本上可以直接跳過:你的網站是 HTTPS 時,瀏覽器會擋掉對 HTTP 的請求(mixed content)
CORSYes / No / Unknown決定「能不能從瀏覽器前端直接呼叫」。Yes 可以;No 只能從你的後端呼叫;Unknown 要自己測(實務上大多數標 Unknown)
CORS 是前端工程師最常卡住的點 CORS 是瀏覽器的安全機制:A 網站的前端 JavaScript 預設不能讀取 B 網域的回應,除非 B 明確允許。所以「CORS: No」的 API 不是不能用,而是要改由你的後端(或一個小小的代理程式)去呼叫,再把結果轉給前端。只有純後端使用(Python 腳本、伺服器排程)時,CORS 欄位可以完全忽略。

三、五十個分類導覽

50 個分類按字母排序,從 Animals 到 Weather。依實際開發的使用頻率,值得先認識的幾群:

需求對應分類常見用途
練習與測試Test Data、Development、Games & Comics假資料、佔位圖片、教學示範(PokeAPI 這類經典入門 API 都在這)
金融數據Currency Exchange、Cryptocurrency、Finance匯率換算、幣價、股市資料
地理與天氣Geocoding、Weather、Environment地址轉座標、天氣預報、空氣品質
內容娛樂News、Music、Video、Books、Anime新聞聚合、影音資訊、書目查詢
資料驗證Data Validation、Phone、EmailEmail 格式驗證、電話號碼查驗
政府開放資料Government、Open Data各國官方統計與開放資料(含不少可長期依賴的免費來源)
AI 與分析Machine Learning、Text Analysis翻譯、情緒分析、圖像辨識的免費層

找東西的方式很直接:開 README、按 Ctrl+F 搜關鍵字,或從最上方的 Index 點分類跳轉。清單只有英文,搜尋時用英文關鍵字(weather、currency、holiday)命中率才高。

四、挑選 API 的決策流程

在目標分類裡列出候選 HTTPS = No?→ 淘汰 前端直接呼叫? 是 → 優先挑 CORS: Yes 點進官方文件查三件事: 額度上限・最近是否維護・商用條款 先用 curl 打一發 能通再寫進程式 原型先挑 Auth: No 五分鐘就能看到資料
圖 1:從一千七百個選項收斂到一個的篩選流程

流程背後的邏輯:HTTPS 是硬門檻;CORS 決定架構(前端直呼或後端代理);額度與維護狀態決定它能不能撐過原型階段。最後一步「先用 curl 打一發」看似多餘,實際上最省時間,清單裡偶爾有已經關閉或改版的服務,先確認活著再動工。

五、實戰一:免金鑰 API,一行就能呼叫

Auth 標 No 的 API 是最好的起點。以清單裡的經典項目示範,終端機一行就能看到資料:

# PokeAPI(Games 分類):查寶可夢資料,教學示範的常客
curl https://pokeapi.co/api/v2/pokemon/pikachu

# Open-Meteo(Weather 分類):免金鑰天氣預報,台北座標
curl "https://api.open-meteo.com/v1/forecast?latitude=25.03&longitude=121.56¤t_weather=true"

# REST Countries(Geocoding 分類):查國家基本資料
curl https://restcountries.com/v3.1/name/taiwan

前端 JavaScript 的版本(這幾個都支援 CORS,可直接在瀏覽器呼叫):

const res = await fetch("https://api.open-meteo.com/v1/forecast?latitude=25.03&longitude=121.56&current_weather=true");
const data = await res.json();
console.log(data.current_weather.temperature);  // 現在氣溫

六、實戰二:apiKey 型,申請與保護金鑰

Auth 標 apiKey 的流程都大同小異:到官網註冊、在後台拿到一串金鑰、呼叫時附上。附金鑰的方式看各家文件,常見兩種:

# 方式一:金鑰放在查詢參數(例:多數簡單服務)
curl "https://api.example.com/v1/data?apikey=你的金鑰"

# 方式二:金鑰放在 Header(較正規的做法)
curl -H "Authorization: Bearer 你的金鑰" https://api.example.com/v1/data
金鑰保護的鐵律,跟 LINE Token 一樣 金鑰絕不能寫進前端 JavaScript 或 push 到公開的 GitHub。正確做法:後端從環境變數讀取,前端一律透過你自己的後端轉呼叫。免費 API 的金鑰被盜走,輕則額度被吃光,重則帳號被停用。

沒有後端的靜態網站想用 apiKey 型服務,做法和LINE 通知那篇相同:用 Google Apps Script 或任何無伺服器函式當中繼,金鑰存在中繼層。

七、實戰三:OAuth 型,什麼時候會遇到

Auth 標 OAuth 的 API,幾乎都是要存取「使用者自己的資料」:Spotify 的播放清單、GitHub 的私人 repo、Google 日曆。流程是讓使用者登入授權後,你的程式拿到一個代表「這位使用者同意了」的 token 再去呼叫。

實務判斷很簡單:如果你只是要公開資料(天氣、匯率、新聞),清單裡永遠找得到 No 或 apiKey 的替代品,不必碰 OAuth;只有做「幫使用者管理他自己帳號」的功能時才需要,而那已經是正式產品開發的範疇,直接依該服務的官方 OAuth 文件實作。

八、常見陷阱

陷阱說明與對策
把免費額度當無限免費層通常有每分鐘或每月上限,超過回 429。程式要處理 429(退避重試),正式用途先確認額度夠不夠。
服務悄悄關閉清單靠人工維護,難免有死連結。動工前先 curl 測活,正式產品要有 API 掛掉時的備援或降級方案。
CORS: Unknown 直接當 Yes 用寫到一半才發現前端被擋。先用瀏覽器 console 跑一行 fetch 測試,不行就改走後端。
拿免費 API 做商用沒看條款不少免費層限個人或非商業使用,商用要升級付費。看各 API 的 Terms,不是看 public-apis 的 MIT(那只管清單本身)。
回應格式不穩定小型免費 API 改版不會通知你。程式對欄位缺失要有容錯,關鍵欄位先驗證再使用。
敏感資料經過第三方要送出去驗證的 Email、電話都是個資。挑供應商時看它的隱私政策,個資相關的驗證盡量用大廠或自建。

九、進階:追蹤更新與貢獻

十、重點整理