문서 둘러보기

SDK로 연결된 Apps 호출하기

백엔드 코드가 자신의 OOMOL 계정에 연결된 Apps를 호출해야 할 때 Connector을 사용하세요. 이 경로는 호스팅된 OOMOL Connector 게이트웨이와 api_… 형태의 개인 API 키를 사용합니다.

SDK 설치

npm install @oomol-lab/connector

SDK는 Node 18 이상이 필요합니다. 표준 fetchAbortController API를 제공하는 다른 환경에서도 실행되지만, 개인 API 키는 신뢰할 수 있는 백엔드 환경에 유지해야 합니다.

개인 API 키 생성

OOMOL Console에서 키를 생성한 다음 백엔드 시크릿으로 저장하세요:

export OOMOL_API_KEY=api_...

이 키를 브라우저 번들, 모바일 클라이언트, 공개 리포지토리, 프롬프트 또는 클라이언트 측 로그에 두지 마세요.

첫 번째 액션 실행

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",
});

네임스페이스 형식도 동일한 액션을 실행합니다:

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

executionId, actionId 및 로그나 지원을 위한 응답 메시지도 필요할 때 executeRaw를 사용하세요.

연결된 계정 선택

동일한 제공자에 여러 연결이 있을 때 connectionName로 하나를 선택하세요:

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

oomol.apps.list()를 사용하여 현재 OOMOL 계정에서 사용 가능한 연결을 확인하세요. 연결 생성 및 제거는 OOMOL Console에서 수행됩니다.

액션 탐색

카탈로그를 사용하여 제공자, 액션 및 해당 런타임 스키마를 확인하세요:

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

업스트림 엔드포인트에 모델링된 액션이 없을 때 proxy을 사용하여 선택한 연결을 통해 호출하세요.

레퍼런스로 계속하기

정확한 액션 유형, 구성 우선순위, 재시도, 타임아웃, 취소, 프록시 동작, 오류 및 전체 Connector API는 TypeScript SDK 레퍼런스를 참조하세요.

제품의 각 사용자가 별도 계정을 연결해야 할 때는 대신 ProjectConnector를 사용하세요.