SDK 개요
connectbase-client SDK는 Connect Base의 모든 기능에 접근할 수 있는 JavaScript/TypeScript 라이브러리입니다.
설치
bash
npm install connectbase-client초기화
typescript
import ConnectBase from 'connectbase-client'
const cb = new ConnectBase({
publicKey: 'cb_pk_...'
})모듈 구조
SDK 인스턴스(cb)는 다음 모듈을 제공합니다:
| 모듈 | 설명 |
|---|---|
cb.auth | 앱 멤버 인증 (회원가입, 로그인, 세션) |
cb.oauth | 소셜 로그인 (Google, Naver, Kakao, Apple, GitHub, Discord) + 앱간 OAuth |
cb.database | JSON 데이터베이스 CRUD + DB 변경 realtime 구독 |
cb.storage | 파일 업로드/다운로드 + 정적 호스팅 페이지 메타 |
cb.functions | 서버리스 함수 호출 (invoke, invokeCrossApp) |
cb.realtime | WebSocket 실시간 통신 (메시징 / presence / typing / read-receipt / AI 스트리밍) |
cb.webrtc | 영상/음성 통화 |
cb.video | 동영상 업로드/스트리밍 |
cb.game | 실시간 멀티플레이어 게임 (matchqueue / leaderboard / scripts primitive) |
cb.push | 푸시 알림 |
cb.payment | 결제 (토스페이먼츠 / Stripe) |
cb.subscription | 정기결제 / 멤버십 |
cb.knowledge | AI 데이터베이스 (문서 검색, OpenSearch + nori) |
cb.queue | 메시지 큐 (NATS JetStream) |
cb.ads | Google AdSense 수익 조회 |
cb.errorTracker | 클라이언트 에러 리포팅 |
cb.native | 크로스 플랫폼 네이티브 브릿지 |
cb.publicKey | Public Key 관리 (콘솔 사용자 세션 필요) |
cb.ai | LLM 함수 호출 헬퍼 |
cb.endpoint | 로컬 GPU/엔드포인트 터널 binding |
cb.analytics | 웹 분석 이벤트 전송 |
cb.support | 앱 운영자에게 이슈/문의 큐 발행 (Cross-App / Platform Issue Queue) |
TypeScript 지원
SDK는 TypeScript로 작성되어 자동완성과 타입 검증을 지원합니다.
typescript
import ConnectBase, { type ConnectBaseConfig } from 'connectbase-client'
const config: ConnectBaseConfig = {
publicKey: 'cb_pk_...',
baseUrl: 'https://api.connectbase.world' // 선택 (기본값)
}
const cb = new ConnectBase(config)에러 처리
모든 메서드는 Promise를 반환합니다. 에러 발생 시 ApiError 또는 AuthError를 던집니다.
typescript
import ConnectBase, { ApiError, AuthError } from 'connectbase-client'
try {
const result = await cb.database.getData('tbl_xxx')
} catch (error) {
if (error instanceof ApiError) {
// statusCode: HTTP 상태 코드 (401, 404, 429 등)
console.error('API 에러:', error.statusCode, error.message)
} else if (error instanceof AuthError) {
console.error('인증 에러:', error.message)
} else {
throw error
}
}자세한 패턴은 에러 처리 문서를 참고하세요.