본문 바로가기
웹/웹 지식

[웹 지식] API 키(Key)란?

by 클레어몬트 2025. 1. 24.

ㅇAPI 키(Key): 특정 API를 사용할 수 있도록 허가받은 사용자임을 인증하기 위한 고유한 문자열(e.g. abcdef1234567890XYZ!@#)

주로 API 제공자가 각 사용자나 애플리케이션에 발급하며, 다음과 같은 역할을 지닌다

  • 사용자 인증: API 요청을 보낸 사용자가 인증된 사용자임을 증명
  • 사용량 추적: API 제공자는 키를 통해 각 사용자의 API 호출 횟수나 사용 패턴을 추적
  • 권한 제어: 특정 API 키에 따라 사용할 수 있는 기능이나 데이터 접근 범위를 제한

 

[사용 방법] API 호출 시 키를 요청 헤더 or 요청 바디 or URL 파라미터에 포함하여 사용

예를 들어, 기상청 Open API를 호출할 때 API 키를 URL 파라미터에 포함한다

import requests

url = "http://apis.data.go.kr/1360000/VilageFcstInfoService_2.0/getUltraSrtNcst"
params = {
    'serviceKey': 'YOUR_API_KEY',  # 여기에 발급받은 API 키 입력
    'numOfRows': 10,
    'pageNo': 1,
    'dataType': 'JSON',
    'base_date': '20230101',
    'base_time': '0600',
    'nx': 60,
    'ny': 127
}

response = requests.get(url, params=params)
print(response.json())

 

 

[API 키 발급]

보통 API 제공자의 개발자 포털에 가입하고, 애플리케이션을 등록하면 발급받을 수 있다

 

 

[보안 관리 수칙 3가지]

키를 절대 공개 저장소(GitHub, 블로그 등)에 노출하지 말 것!

 .env 파일에 저장하고 코드에서는 이를 참조하는 방식을 사용할 것!

키가 노출된 경우, 즉시 폐기하고 새로운 키를 발급받을 것!

 

 

 

API 키는 개발자가 외부 서비스와 통합할 때 필수적인 요소이므로, 이를 안전하게 관리하는 것이 중요하다!