簡介

Eagle Web API V2 提供了完整的 RESTful HTTP API,用於與 Eagle 應用程式互動,讓外部工具和腳本能夠以程式化方式管理您的素材庫。

歡迎閱讀 Eagle Web API V2 文件。此 API 允許任何 HTTP 客戶端 — 腳本、應用程式、瀏覽器擴充功能、自動化工具 — 透過本機 HTTP 伺服器與 Eagle 應用程式進行互動。

circle-info

在找 V1 API? 舊版 V1 API 文件可以在 https://api.eagle.cool/arrow-up-right 找到。V2 基於 Plugin API 的能力,提供了更全面的功能集。

circle-exclamation

Web API 與 Plugin API

Eagle 為開發者提供兩種不同的 API:

  • Web API(即本文件)— 一套 RESTful HTTP API,用於建構在 Eagle 應用程式外部運行的工具、服務、腳本或整合方案。適合開發瀏覽器擴充套件、自動化工作流程、第三方應用程式,或任何獨立於 Eagle 運行的工具。

  • Plugin APIarrow-up-right — 一套 JavaScript API,用於建構在 Eagle 內部運行的插件。插件可以直接存取 Eagle 的介面、建立自訂面板、回應使用者操作,並與應用程式深度整合。適合想要擴充 Eagle 內建功能的開發者。

Web API
Plugin API

執行位置

Eagle 外部(任何 HTTP 用戶端)

Eagle 內部(作為插件)

協定

HTTP REST

JavaScript API

適用場景

外部工具、腳本、自動化

Eagle 插件、自訂面板、介面擴充


V2 有什麼新功能

V2 API(/api/v2/...)比 V1(/api/...)提供了顯著更多的端點,包括:

  • 全文搜尋 — 支援進階查詢語法(AND、OR、NOT)

  • AI 語義搜尋 — 透過文字描述或圖片相似度進行搜尋

  • 標籤管理 — 建立、重新命名、合併標籤及管理標籤群組

  • 資料夾管理 — 建立、移動及整理資料夾

  • 自動分頁 — 所有列表端點預設都會回傳分頁結果,確保效能

  • API Playground — 內建互動式測試工具,直接在瀏覽器中測試所有端點


前置條件

Eagle 是一個本機應用程式 — API 伺服器會在 Eagle 應用程式開啟時自動啟動。您必須先執行 Eagle 才能存取任何 API 端點。


基礎 URL

Eagle API 伺服器預設在連接埠 41595 上運行。所有 V2 端點都帶有 /api/v2/ 前綴。


身份驗證

本機存取(localhost)

如果您從 Eagle 執行的同一台電腦發送請求,不需要身份驗證。來自 localhost127.0.0.10.0.0.0 的請求會自動受信任 — 您可以直接開始呼叫 API。

遠端存取(區域網路 / 網路)

如果您想從區域網路中的另一台裝置(例如手機、平板電腦或另一台電腦)呼叫 Eagle API,您必須在每個請求中附帶 API Token

如何取得您的 API Token

  1. 開啟 Eagle,前往偏好設定(設定)

  2. 點擊左側邊欄中的開發者

  3. 您的 API Token 會顯示在頁面頂部

  4. 點擊 token 旁的複製按鈕即可複製到剪貼簿

您也可以點擊重新產生 Token 隨時產生新的 token。請注意,重新產生 token 會使先前的 token 失效。

使用 Token

token 參數附加到任何請求 URL:

circle-exclamation

回應格式

所有端點都以 JSendarrow-up-right 格式回傳回應:

成功:

錯誤:


分頁

所有列表端點(item/getitem/queryfolder/gettag/get 等)預設回傳分頁結果。

參數
類型
預設值
最大值
說明

offset

Integer

0

要跳過的項目數量

limit

Integer

50

1000

要回傳的項目數量

分頁回應:

  • total — 符合條件的項目總數(分頁前)

  • offset — 使用的偏移量

  • limit — 使用的限制數量

  • data — 分頁後的結果陣列

範例:遍歷所有項目


快速開始


API 分類

分類
說明

查詢、新增、修改及管理項目

建立、列出及整理資料夾

列出、重新命名及合併標籤

管理標籤群組

取得資源庫中繼資料

應用程式資訊

AI 語義搜尋及以圖搜圖


CORS

如果您從網頁呼叫 Eagle API(例如透過 TampermonkeyViolentmonkey 等使用者腳本管理器),標準的 fetch 請求可能會被瀏覽器的跨來源資源共享(CORS)政策阻擋。在這種情況下,請改用 GM_xmlhttpRequest

circle-info

這僅適用於在網頁內執行的腳本。如果您從 Node.js、Electron、瀏覽器擴充功能的背景腳本或直接從 DevTools 呼叫 API,則不受 CORS 限制,可以正常使用 fetch


速率限制

API 呼叫沒有速率限制。由於 API 伺服器在您的本機上運行,所有請求都會直接處理,不會有任何節流。但請注意,伺服器的效能取決於您裝置的硬體 — 對非常大的資源庫進行繁重操作可能需要較長的回應時間。

Last updated