#ads #google-ads-api
#реклама #google-ads-api
Вопрос:
У меня есть следующий код для получения всех списков клиентов ads, которые находятся под учетной записью Ads Manager, я использую учетные данные менеджера для получения списка клиентов.
public Customer[] GetAllManagerClientsList(string currentUserEmail, string authorizationCode)
{
string baseURL = _configuration.GetValue<string>("URL:SiteURL");
var currentUser = _userRepository.GetIntegratedAppsDetailByEmail(currentUserEmail);
AdsOAuthProviderForApplications oAuth2Provider = (user.OAuthProvider as AdsOAuthProviderForApplications);
oAuth2Provider.Config.OAuth2RedirectUri = baseURL "/google-auth-callback";
oAuth2Provider.FetchAccessAndRefreshTokens(authorizationCode);
//Get customerID
user.Config.OAuth2AccessToken = oAuth2Provider.Config.OAuth2AccessToken;
user.Config.OAuth2RefreshToken = oAuth2Provider.Config.OAuth2RefreshToken;
CustomerService customerService = (CustomerService)user.GetService(AdWordsService.v201809.CustomerService);
var customersList = customerService.getCustomers();
var ClientCustomers = customersList != null amp;amp; customersList.Length > 0 ? customersList.Where(c => c.canManageClients == false).ToList() : null;
if (ClientCustomers.Count() > 0)
{
return ClientCustomers.ToArray();
}
else
{
return null;
}
}
Ответ №1:
Фарук, какой у тебя вопрос? Что вы видите? Не совсем понятно, в чем проблема.
Редактировать: вы отметили это с помощью Google-Ads-API, это старый API. Приведенный ниже код предназначен для нового API Google Ads, но может указать вам правильное направление, если вам нужно использовать старый.
Вы используете правильный сервис, просто неправильный метод. Вам нужно использовать метод list_accessible_customers():
def get_mccs_and_direct_admin_only_accounts(client):
customer_service = client.get_service('CustomerService', version='v6')
try:
accessible_customers = customer_service.list_accessible_customers()
resource_names = accessible_customers.resource_names
for resource_name in resource_names:
print('Customer resource name: "%s"' % resource_name)
Комментарии:
1. В качестве менеджера рекламы есть учетная запись ad manager, и у этого менеджера есть клиенты, которые имеют рекламный аккаунт Google ads, я интегрирую API google ads в свой проект, поэтому я использую Google API, чтобы получить список всех клиентов / клиентов, которые находятся подо мной, но Api не возвращает мне моих клиентов. это сервис Google, предоставляемый самим Google. CustomerService CustomerService =(CustomerService) пользователь. GetService(AdWordsService.v201809.CustomerService); var customersList = CustomerService.GetCustomers();
2. Я обновил свой ответ, учитывая, что вы задали вопрос / уточнение.