---
author: OOMOL
author_url: https://oomol.com/ja/about/
title: SDK で接続済み Apps を呼び出す
description: hosted Connector client を使い、信頼できる TypeScript backend code から OOMOL
  account に接続された Apps を呼び出します。
lang: ja
canonical_url: https://oomol.com/ja/docs/connector-client/
markdown_url: https://oomol.com/ja/docs/connector-client.md
---

# SDK で接続済み Apps を呼び出す

自分の OOMOL account に接続された Apps を backend code から呼び出す場合は、`Connector` を使用します。この方法では、hosted OOMOL Connector gateway と `api_…` 形式の personal API key を使います。

## SDK をインストールする

```sh
npm install @oomol-lab/connector
```

SDK には Node 18 以降が必要です。標準の `fetch` と `AbortController` API を提供する他の環境でも動作しますが、personal API key は信頼できる backend environment に保管してください。

## personal API key を作成する

[OOMOL Console](https://console.oomol.com/api-key) で key を作成し、backend secret として保存します。

```sh
export OOMOL_API_KEY=api_...
```

この key を browser bundle、mobile client、public repository、prompt、client-side log に置かないでください。

## 最初の action を実行する

```ts
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 を実行できます。

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

logs や support のために `executionId`、`actionId`、response message も必要な場合は、`executeRaw` を使用します。

## connected account を選択する

同じ provider に複数の connections がある場合は、`connectionName` で 1 つ選択します。

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

現在の OOMOL account で利用できる connections は、`oomol.apps.list()` で確認できます。connection の作成と削除は OOMOL Console で行います。

## actions を探す

catalog を使って providers、actions、runtime schemas を確認します。

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

upstream endpoint に model 化された action がない場合は、`proxy` を使い、選択した connection 経由で呼び出します。

## reference に進む

action ごとの precise types、configuration precedence、retries、timeouts、cancellation、proxy behavior、errors、完全な `Connector` API については、[TypeScript SDK reference](/ja/docs/connector-sdk/)を参照してください。

product の各 user が別々の account を接続する必要がある場合は、代わりに [ProjectConnector](/ja/docs/project-connector/)を使用します。
