API 호출 인증

이 예에서는 서비스 계정을 사용하여 애드센스 플랫폼 API를 호출하여 하위 계정을 만들고 관리하는 방법을 보여줍니다.

1단계: 새 Google Cloud 프로젝트 만들기 (또는 기존 프로젝트 사용)

기존 Google Cloud 프로젝트가 있으면 이를 사용해도 됩니다. 그렇지 않은 경우 아래 가이드에 따라 새 프로젝트를 설정하세요.

https://cloud.google.com/resource-manager/docs/creating-managing-projects

2단계: 서비스 계정 만들기

하위 계정을 만드는 가장 좋은 방법은 서비스 계정을 사용하는 것입니다. 서비스 계정을 만들려면 다음 단계를 따르세요.

  • Google Cloud의 서비스 계정 페이지로 이동합니다.
  • 기존 서비스 계정을 사용하거나 새 계정을 만들 수 있습니다.
    • '+ 서비스 계정 만들기'를 클릭합니다.
    • '서비스 계정 세부정보' 양식 작성
    • 페이지의 2단계와 3단계 (프로젝트 및 사용자에 대한 액세스 권한 부여)는 선택사항입니다.

서비스 계정을 만들고 관리하는 방법 자세히 알아보기

서비스 계정이 생성되면 애드센스 계정에 추가하려면 Google에 전송해야 합니다. 서비스 계정이 애드센스 계정에 액세스할 수 있어야 하므로 이 작업은 필수입니다. 계정 관리자를 통해 알려주세요.

3단계: Google Cloud 프로젝트에 AdSense Platform API 사용 설정

AdSense Platform API는 검색할 수 없으므로 프로젝트에 사용 설정하려면 다음 링크를 방문해야 합니다.

https://console.developers.google.com/apis/api/adsenseplatform.googleapis.com/overview

4단계: 서비스 키 만들기

API 호출에 사용할 액세스 토큰을 생성하려면 서비스 키를 만들어야 합니다. 다음 단계를 따르세요.

  • Google Cloud의 서비스 계정 페이지로 이동합니다.
  • 작업 열에서 하위 계정을 만드는 데 사용할 서비스 계정의 를 클릭한 다음 '키 관리'를 클릭합니다.
  • '키 추가'를 클릭한 다음 '새 키 만들기'를 선택합니다.
  • JSON을 키 유형으로 선택한 상태에서 '만들기'를 클릭합니다.
  • JSON 파일이 생성되어 컴퓨터에 다운로드됩니다. API 호출을 인증하는 데 필요하므로 안전하게 보관하세요.

서비스 계정 키 생성 및 관리에 대해 자세히 알아보세요.

5단계: Google의 OAuth 라이브러리를 사용하여 액세스 토큰 생성

Google은 API를 호출하는 데 사용할 수 있는 액세스 토큰을 생성하는 데 도움이 되는 라이브러리를 제공합니다. 서비스 계정의 사용자 인증 정보를 생성하는 방법을 알아보려면 다음을 참고하세요.

https://developers.google.com/identity/protocols/oauth2/service-account#authorizingrequests

AdSense Platforms API의 범위는 다음과 같습니다. https://www.googleapis.com/auth/adsense

Python 예시

from google.auth.transport import requests
from google.oauth2 import service_account

CREDENTIAL_SCOPES = ["https://www.googleapis.com/auth/adsense"]
CREDENTIALS_KEY_PATH = 'service.json'

def get_service_account_token():
  credentials = service_account.Credentials.from_service_account_file(
          CREDENTIALS_KEY_PATH, scopes=CREDENTIAL_SCOPES)
  credentials.refresh(requests.Request())
  return credentials.token

이 단계에서는 API 호출을 시작할 수 있습니다. AdSense Platform API에서는 아직 클라이언트 라이브러리가 지원되지 않으므로 대신 직접 HTTP 요청을 해야 합니다. 액세스 토큰은 HTTP 요청에 헤더로 포함되어야 합니다. 헤더는 다음과 같이 표시됩니다.

Authorization: OAuth <credentials>

예시는 API 페이지에 포함되어 있습니다.