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