SDK로 연결된 Apps 호출하기
백엔드 코드가 자신의 OOMOL 계정에 연결된 Apps를 호출해야 할 때 Connector을 사용하세요. 이 경로는 호스팅된 OOMOL Connector 게이트웨이와 api_… 형태의 개인 API 키를 사용합니다.
SDK 설치
npm install @oomol-lab/connector
SDK는 Node 18 이상이 필요합니다. 표준 fetch 및 AbortController 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를 사용하세요.
Wanta