dv360: Установленное приложение или приложение Server to Server?

Я пытаюсь создать скрипт Python для загрузки данных в dv360. Это скрипт, который просто запускается — например, это не веб-приложение. Таким образом, я бы предположил, что он определен как приложение «сервер-сервер». Хотя на самом деле это скрипт для серверного приложения - в этом случае мой компьютер является сервером?

И поэтому я думаю, что мне следует аутентифицироваться с помощью служебной учетной записи. Но вся документация, которую я могу найти, рекомендует использовать oauth2 для dv360 вместо служебной учетной записи. Даже внутри oauth2 я вижу, что между установленной присягой и oauth от сервера к серверу есть разграничение.

Может ли кто-нибудь, у кого есть опыт работы с API dv360, сказать мне, как будет классифицироваться мое приложение, описанное выше, и нужна ли мне учетная запись службы, присяга для установленных приложений или присяга для приложений между серверами для аутентификации?

1 ответ

В вашем случае рекомендуется использовать OAuth 2.0 для межсерверных приложений .

Вы можете использовать клиентскую библиотеку Google API Python для выполнения операций на DV360, используя учетную запись службы.

Вот пример фрагмента для получения рекламодателей DV360 с помощью этой клиентской библиотеки Python.

      import json
from googleapiclient import discovery

# DV360 service
dv360_service = discovery.build('displayvideo', 'v1')

# Get Advertiser Info
data = {'advertiserId': '1234567'}
response = dv360_service.advertisers().get(**data).execute()
print(json.dumps(response, indent=2))

Выход:

      {
  "name": "advertisers/1234567",
  "advertiserId": "1234567",
  "partnerId": "8901234",
  "displayName": "LoremIpsum",
  "entityStatus": "ENTITY_STATUS_PAUSED",
  "updateTime": "2022-10-14T04:46:31.291Z",
  "generalConfig": {
    "domainUrl": "https://www.example.com",
    "timeZone": "Asia/Calcutta",
    "currencyCode": "INR"
  },
  "adServerConfig": {
    "thirdPartyOnlyConfig": {
      "pixelOrderIdReportingEnabled": true
    }
  },
  "creativeConfig": {},
  "dataAccessConfig": {
    "sdfConfig": {
      "sdfConfig": {
        "version": "SDF_VERSION_5_2"
      }
    }
  },
  "integrationDetails": {},
  "servingConfig": {
    "exemptTvFromViewabilityTargeting": true
  }
}

Обязательно установитеGOOGLE_APPLICATION_CREDENTIALSпеременная окружения сpath/to/service-account-key.jsonперед запуском скрипта

напримерGOOGLE_APPLICATION_CREDENTIALS='/home/dikesh/.keys/service-key.json' python test.py

Другие вопросы по тегам