본문으로 건너뛰기

1. 인증 토큰 발급하기

소개

OpenAPI 서비스를 이용하려면 먼저 인증 토큰을 발급해야 합니다. 이 토큰은 데이터 요청 시 서버에 신원을 확인하는 데 사용됩니다. 아래 안내를 따라 진행하여 쉽게 인증 토큰을 발급하고 서비스를 이용해보세요.

왜 인증 토큰이 필요한가요?

  1. 보안 강화: 사용자의 개인 정보와 데이터 보호를 위해 인증 토큰을 통해 안전하게 서비스를 이용할 수 있습니다.
  2. 요청 식별: 서버는 각각의 요청이 유효한 사용자에게서 온 것인지 확인하여 데이터를 안전하게 전송합니다.

인증 토큰 발급 요청

아래의 예시 코드를 통해 간편하게 인증 토큰을 발급할 수 있습니다.

아래 예시는 python 코드로 작성되었습니다.

import requests

# 사용자를 인증하고 인증 토큰을 가져옵니다.
email = "user@example.com" # 매쉬 사용자 이메일
password = "password123" # 매쉬 사용자 비밀번호

response = requests.post(
"https://api.mash-board.io/api/token/",
headers={"Content-Type": "application/json"},
json={"email": email, "password": password}
)

data = response.json()

access_token = data["access"]
refresh_token = data["refresh"]

API 명세 바로가기

인증 토큰 갱신

인증 토큰의 유효 시간: 5분

발급된 access token은 5분 동안 유효합니다. 이 시간이 지나면, 새로운 토큰을 받아와야 합니다.

인증 토큰 발급 요청 시 획득한 refresh_token을 사용해서 인증 토큰을 갱신할 수 있습니다.


# 새로고침 토큰을 사용하여 인증 토큰을 갱신합니다.

response = requests.post(
"https://api.mash-board.io/api/token/refresh/",
headers={"Content-Type": "application/json"},
json={"refresh": refresh_token}
)

data = response.json()

access_token = data["access"]

인증 토큰 활용 예시

토큰을 받아온 후, 아래와 같이 데이터를 요청할 수 있습니다. 인증 토큰이 만료된 경우를 대비해서 예외 케이스를 준비하세요.


method = "GET"
headers = {"Content-Type": "application/json", "Authorization": f"Bearer {access_token}"}
url = "https://api.mash-board.io/event/place-visit" # 기본 통계 매장 방문 이벤트 데이터를 예시로 활용했습니다.
params = {"start_date": "2023-01-01", "end_date": "2023-01-31"}

response = requests.request(method, url, headers=headers, params=params)

if response.status_code == 401: # 만약 토큰이 만료된 경우 인증 토큰 갱신 후 다시 시도합니다.
access_token = _refresh_token(refresh_token)
headers["Authorization"] = f"Bearer {access_token}"
response = requests.request(method, url, headers=headers, params=params)

마치며

이제 인증 토큰을 발급받아 안전하게 OpenAPI 서비스를 이용하는 방법을 소개드렸습니다. 추가적인 도움이 필요하다면 문서를 참조하거나 관리자에게 문의하세요.