import requests
import jwt
import time
# 앱스토어 커넥트 정보
ISSUER_ID = 'cb827df4-f547-43d3-86a5-c874e8da1206'
KEY_ID = 'H96Y977LDM'
PRIVATE_KEY_PATH = '/Users/seohyeonsu/Downloads/AuthKey_H96Y977LDM.p8'
APP_ID = '1644080758'
def read_p8_file(file_path):
with open(file_path, 'r') as file:
return file.read()
# JWT 토큰 생성
def generate_token():
token = jwt.encode(
{
'iss': ISSUER_ID,
'exp': time.time() + 1200, # 20분 후 만료
'aud': 'appstoreconnect-v1'
},
read_p8_file(PRIVATE_KEY_PATH),
algorithm='ES256',
headers={'kid': KEY_ID}
)
return token
# 리뷰 가져오기
def get_reviews():
token = generate_token()
headers = {
'Authorization': f'Bearer {token}',
}
# 최신 순서대로 & 리뷰가 없는 것만
response = requests.get(f'https://api.appstoreconnect.apple.com/v1/apps/{APP_ID}/customerReviews?sort=-createdDate&exists[publishedResponse]=false', headers=headers)
print(response.json())
return response.json()
- ISSUER_ID:
App Store Connect 웹사이트에 로그인합니다.
왼쪽 메뉴에서 "사용자 및 액세스"를 선택합니다.
상단에 "키" 탭으로 이동합니다.
이 페이지의 상단에서 "Issuer ID" 값을 확인할 수 있습니다.- KEY_ID 및 PRIVATE_KEY:
위의 "키" 탭에서 "API 키 만들기" 또는 "키 +" 버튼을 클릭합니다.
새로운 키를 생성하면 "Key ID" 값을 받게 됩니다. 이 값이 KEY_ID에 해당합니다.
키를 생성하면 개인 키를 다운로드 받을 수 있습니다. 이 파일의 내용이 PRIVATE_KEY에 해당합니다. (코드에서는 PRIVATE_KEY_PATH로 읽음) 이 개인 키 파일을 잘 보관해야 합니다. 한 번 다운로드한 후에는 다시 다운로드 받을 수 없습니다.- APP_ID:
App Store Connect 웹사이트에 로그인합니다.
왼쪽 메뉴에서 "내 앱"을 선택합니다.
원하는 앱을 클릭하여 앱의 세부 정보 페이지로 이동합니다.
URL에 https://appstoreconnect.apple.com/apps/ 다음에 오는 숫자가 앱의 ID입니다. 이 값을 APP_ID로 사용합니다.
앱스토어 리뷰 자동화
https://developer.apple.com/documentation/appstoreconnectapi/app_store/customer_review_responses
앱스토어 고객 리뷰 가져오는 방법
https://developer.apple.com/documentation/appstoreconnectapi/list_all_customer_reviews_for_an_app