瀏覽文件

使用 SDK 呼叫已連接的 Apps

當後端程式碼需要呼叫你在 OOMOL 帳號中連接的 Apps 時,使用 Connector。這條路徑會呼叫 OOMOL 託管的 Connector 閘道,並使用形如 api_… 的個人 API key。

安裝 SDK

npm install @oomol-lab/connector

SDK 需要 Node 18 或更高版本。其他提供標準 fetchAbortController API 的環境也可以使用,但個人 API key 必須留在可信的後端環境中。

建立個人 API key

OOMOL Console 建立 key,然後儲存為後端密鑰:

export OOMOL_API_KEY=api_...

不要把這個 key 放進瀏覽器 bundle、行動用戶端、公開程式碼倉庫、提示詞或用戶端日誌。

執行第一個 action

import { Connector } from "@oomol-lab/connector";

const oomol = new Connector({ apiKey: process.env.OOMOL_API_KEY! });

const result = await oomol.execute("gmail.search_threads", {
  query: "is:unread",
});

Namespace 寫法會執行同一個 action:

const result = await oomol.gmail.search_threads({ query: "is:unread" });

需要在日誌或支援工單中保存 executionIdactionId 和回應訊息時,使用 executeRaw

選擇已連接帳號

同一個 provider 有多個 connection 時,透過 connectionName 選擇帳號:

await oomol.execute(
  "gmail.search_threads",
  { query: "from:ceo" },
  { connectionName: "work" },
);

使用 oomol.apps.list() 查看目前 OOMOL 帳號可用的 connections。Connection 的建立與移除仍在 OOMOL Console 中完成。

尋找 actions

透過 catalog 查看 providers、actions 與執行時 schemas:

const providers = await oomol.catalog.providers({ q: "mail" });
const actions = await oomol.catalog.actions("gmail");
const action = await oomol.catalog.action("gmail.search_threads");

上游 endpoint 還沒有對應 action 時,可以使用 proxy 透過所選 connection 呼叫。

繼續查閱參考

TypeScript SDK 參考包含精確的 action 類型、設定優先順序、重試、逾時、取消、proxy 行為、錯誤處理和完整的 Connector API。

如果產品裡的每個使用者都要連接獨立帳號,請改用 ProjectConnector