통계청 SGIS API 인증 체계 개요
통계청 통계지리정보 서비스(SGIS) API는 서비스ID와 보안Key를 발급받은 후, AccessToken을 발급받아야만 API에 접근할 수 있습니다. 이는 API 사용의 보안을 강화하고 서비스 품질을 유지하기 위한 필수 절차입니다.
통계청의 SGIS API 인증 체계는 다음과 같은 3단계로 구성됩니다:
1. 서비스ID(consumer_key)와 보안Key(consumer_secret) 발급
2. 발급받은 키를 사용하여 AccessToken 발급
3. AccessToken을 사용하여 API 호출
이번 블로그에서는 1번과 2번 과정, 즉 서비스ID와 보안Key를 발급받고
AccessToken을 발급받는 방법까지만 다루겠습니다.
서비스ID와 보안Key 발급 방법
SGIS API를 사용하기 위한 첫 번째 단계는
서비스ID(consumer_key)와 보안Key(consumer_secret)를 발급받는 것입니다.
발급 절차
1. 통계청 통계지리정보서비스(SGIS) 개발자 센터(https://sgis.kostat.go.kr/developer/html/main.html)에 접속합니다.
2. 회원가입 후 로그인합니다.
3. 데이터 API 클릭 후 준비하기로 이동합니다.
4. '인증키 발급 신청' 메뉴로 이동합니다.
5. 필요한 정보를 입력하고 인증키를 신청합니다.
6. 승인 후 서비스ID(consumer_key)와 보안Key(consumer_secret)가 발급됩니다.
발급받은 서비스ID와 보안Key는 외부에 노출되지 않도록 안전하게 보관해야 합니다. 이 정보가 유출될 경우 다른 사람이 여러분의 계정으로 API를 사용할 수 있습니다.
AccessToken 발급 방법
서비스ID와 보안Key를 발급받았다면,
이제 이를 사용하여 AccessToken을 발급받을 수 있습니다.
AccessToken은 실제 API 호출 시 필요한 인증 토큰으로, 4시간 동안 유효합니다.
AccessToken 발급 API 엔드포인트
AccessToken을 발급받기 위한 API 엔드포인트는 다음과 같습니다:
https://sgisapi.kostat.go.kr/OpenAPI3/auth/authentication.json
요청 파라미터
- consumer_key: 발급받은 서비스ID
- consumer_secret: 발급받은 보안Key
Python을 사용한 AccessToken 발급 예제
Python을 사용하는 경우 다음과 같이 AccessToken을 발급받을 수 있습니다:
import requests
CONSUMER_KEY = "서비스ID"
CONSUMER_SECRET = "보안Key"
BASE_URL = "https://sgisapi.kostat.go.kr"
def get_access_token():
url = f"{BASE_URL}/OpenAPI3/auth/authentication.json"
params = {
'consumer_key': CONSUMER_KEY,
'consumer_secret': CONSUMER_SECRET
}
response = requests.get(url, params=params)
print(f"응답코드: {response.status_code}")
data = response.json()
print(data)
token = data['result']['accessToken']
return token
if __name__ == "__main__":
token = get_access_token()
print(f"토큰: {token}")
API 응답 예시
성공적으로 AccessToken을 발급받으면 다음과 같은 응답을 받게 됩니다:
{
"id": "API_0101",
"result": {
"accessTimeout": "1750596312574",
"accessToken": "03b2330f-3348-458f-9679-b2b1f631a9ef"
},
"errMsg": "Success",
"errCd": 0,
"trId": "vHei_API_0101_1750581912478"
}
- result: API 호출 결과 (success 또는 error)
- accessToken: 발급받은 AccessToken
- accessTimeout: 토큰 유효 시간(초)
AccessToken은 4시간 동안만 유효합니다. 만료된 후에는 위 과정을 통해 새로운 AccessToken을 발급받아야 합니다. 실제 서비스 운영 시에는 토큰 만료 시간을 확인하고 자동으로 갱신하는 로직을 구현하는 것이 좋습니다.
[ 파이썬 관련 블로그 글 목록 ]
파이썬(Python) 블로그 목록
'PYTHON 웹 스크래핑' 카테고리의 다른 글
Playwright로 구현하는 YouTube 무한 스크롤 자동화 (2) | 2025.06.30 |
---|---|
Playwright와 BeautifulSoup을 활용한 네이버 웹 스크래핑 코드 분석 (1) | 2025.06.27 |
Playwright를 활용한 브라우저 최대화 실행 방법: 동기식과 비동기식 접근법 (1) | 2025.06.26 |
통계청 SGIS API 사용하기 두번째 - 인구통계 데이터 조회 (1) | 2025.06.24 |
공공데이터 포털 API 활용 가이드: 실시간 데이터로 서비스 개발하기 (1) | 2025.06.19 |