API 키 종류
런모아 API 키는 사용 위치에 따라 분리합니다.
브라우저용 스토어프론트 키
섹션 제목: “브라우저용 스토어프론트 키”브라우저용 스토어프론트 키는 정적 프론트엔드에 넣을 수 있는 사이트 식별용 키입니다.
| 항목 | 값 |
|---|---|
| 형식 | moa_pub_... |
| 전송 헤더 | X-Runmoa-Site-Key: moa_pub_xxxxxxxxx |
| 사용 위치 | 브라우저, Cloudflare Pages, 정적 HTML/React 앱 |
| 대표 기능 | 사이트 정보, 상품/콘텐츠/카테고리/태그 조회, 로그인, 장바구니, 주문, 결제 초기화, 마이페이지 |
| 금지 기능 | 상품/콘텐츠 생성, 수정, 삭제 같은 관리자 작업 |
서버용 비공개 API 키
섹션 제목: “서버용 비공개 API 키”서버용 비공개 API 키는 판매자 서버에서만 사용해야 합니다.
| 항목 | 값 |
|---|---|
| 전송 헤더 | Authorization: Bearer {SERVER_PRIVATE_API_KEY} |
| 사용 위치 | 판매자 서버, 서버리스 함수, 직접 curl |
| 대표 기능 | 상품/콘텐츠 생성, 수정, 카테고리 조회, 태그 연결 |
| 금지 위치 | 브라우저 JavaScript, HTML, 공개 저장소 |
왜 분리해야 하나요?
섹션 제목: “왜 분리해야 하나요?”브라우저용 키는 외부 정적 사이트에서 보일 수밖에 있습니다. 그래서 이 키는 사이트 식별과 사용자 흐름에만 사용합니다.
서버용 키는 생성/수정 권한이 있으므로 공개되면 안 됩니다. 정적 프론트엔드에서 관리자 작업이 필요하면 판매자 서버 또는 서버리스 함수가 서버용 키를 보관하고 런모아 API를 대신 호출해야 합니다.
헤더 예시
섹션 제목: “헤더 예시”스토어프론트 API:
GET /api/storefront/v1/site HTTP/1.1Host: your-site.runmoa.comX-Runmoa-Site-Key: moa_pub_xxxxxxxxxAccept: application/json사용자 API:
GET /api/storefront/v1/me HTTP/1.1Host: your-site.runmoa.comX-Runmoa-Site-Key: moa_pub_xxxxxxxxxAuthorization: Bearer USER_LOGIN_TOKENAccept: application/json서버용 비공개 API:
POST /api/public/v1/products HTTP/1.1Host: your-site.runmoa.comAuthorization: Bearer SERVER_PRIVATE_API_KEYContent-Type: application/jsonAccept: application/json