# API 키 — API Key / Client Key / Secret Key

> API 키는 연동할 상점이나 서비스를 식별하거나 요청 권한을 확인하는 값이에요. 브라우저용 클라이언트 키와 서버 전용 시크릿 키는 용도가 달라요.

- 원문: https://docs.support-b.com/glossary/api-key
- 분류: 개발·연동
- 함께 찾는 표현: 클라이언트 키, 시크릿 키
- 작성: [이성연](https://docs.support-b.com/authors/seongyeon-lee) (대표, 서포트비)
- 검토일: 2026-10-06
- 수정일: 2026-10-13

**적용 범위**: 클라이언트·시크릿 키로 나누는 일반적인 구성을 설명해요. 키 명칭과 권한은 PG마다 다르므로 연동 문서를 확인해요.

## 키를 왜 나누나요?

클라이언트 키는 보통 브라우저에서 SDK를 초기화할 때 써요. 시크릿 키는 서버에서 결제 승인·취소·조회 API를 호출할 때 요청 권한을 확인하는 용도예요. 시크릿 키를 웹페이지나 앱에 넣으면 사용자가 확인할 수 있어요.

## 연동 예시

쇼핑몰 화면은 테스트 클라이언트 키로 결제창을 열어요. 테스트 서버는 같은 세트로 발급된 테스트 시크릿 키로 승인 요청을 보내요. 운영 환경으로 전환할 때는 해당 상점·서비스에 맞는 라이브 키 세트를 사용해요. 테스트 키와 라이브 키를 섞거나 서로 다른 세트의 키를 함께 쓰면 안 돼요.

## 결제키·빌링키와의 차이

API 키는 연동할 상점을 식별하거나 API 요청의 권한을 확인하는 데 써요. [결제키](https://docs.support-b.com/glossary/payment-id)는 특정 결제 건을, [빌링키](https://docs.support-b.com/glossary/billing-key)는 등록된 결제수단을 가리켜요. 결제 식별자를 알고 있어도 그 결제를 조회하거나 취소할 권한이 생기지는 않아요.

## 어디에 보관하나요?

시크릿 키는 서버의 비밀정보 저장소에서 관리해요. 저장소를 사용할 수 없다면 환경변수로 주입하고 키가 담긴 파일을 코드 저장소에 올리지 않도록 설정해요. 브라우저 코드·모바일 앱·로그에도 남기면 안 돼요. 키를 교체할 때는 어느 서버에서 사용하는지, 외주업체에 어떤 접근 권한이 있는지도 확인해요.
