Клиентская библиотека .NET

Клиентская библиотека .NET размещена на GitHub и распространяется в виде пакета NuGet. Она предлагает несколько функций, которые помогут вам использовать API, включая более простое управление учетными данными и создание клиентов сервиса Google Ads API.

Библиотека поддерживает следующие фреймворки .NET:

  • .NET Framework 4.7.2 и более поздние версии (net472)
  • .NET Standard 2.1 (netstandard2.1)
  • .NET 8.0 (net8.0)

.NET Standard 2.1 совместим с несколькими другими версиями и реализациями .NET, поэтому библиотека может работать на многих других платформах. Однако мы не тестировали совместимость и официально не поддерживаем эти платформы. Дополнительную информацию можно найти в документации по.NET Standard 2.1.

Библиотека .NET Google Ads API использует Grpc.Net.Client в качестве транспортного уровня по умолчанию с резервным переходом на Grpc.Core на неподдерживаемых платформах. Вы можете принудительно использовать Grpc.Core, задав для UseGrpcCore значение true, но учтите, что Grpc.Core устарел и предназначен только для поддержки устаревших систем. Подробную информацию вы найдете в руководстве по базовому использованию.

Установка

Установите пакет NuGet Google.Ads.GoogleAds в проект с помощью инструмента командной строки dotnet:

dotnet add package Google.Ads.GoogleAds

Чтобы загрузить настройки конфигурации из appsettings.json, App.config или переменных среды, также установите пакет Google.Ads.GoogleAds.Extensions:

dotnet add package Google.Ads.GoogleAds.Extensions

Выполнение первого вызова API

Чтобы использовать Google Ads API, необходимо выполнить несколько шагов для получения доступа к API и настроить аккаунты Google Рекламы. Следуйте краткому руководству, в котором описаны все важные шаги, включая настройку аккаунтов Google Рекламы.

Как пользоваться отчетом

Инициализируйте GoogleAdsConfig и GoogleAdsClient с вашими настройками конфигурации, получите GoogleAdsServiceClient и передайте строки кампании с помощью SearchStream:

using System;
using Google.Ads.Gax.Config;
using Google.Ads.GoogleAds.Config;
using Google.Ads.GoogleAds.Lib;
using Google.Ads.GoogleAds.V26.Errors;
using Google.Ads.GoogleAds.V26.Services;

GoogleAdsConfig config = new GoogleAdsConfig()
{
    OAuth2Mode = OAuth2Flow.APPLICATION,
    OAuth2ClientId = "INSERT_CLIENT_ID.apps.googleusercontent.com",
    OAuth2ClientSecret = "INSERT_CLIENT_SECRET",
    OAuth2RefreshToken = "INSERT_REFRESH_TOKEN",
    LoginCustomerId = "INSERT_LOGIN_CUSTOMER_ID_HERE"
};

GoogleAdsClient client = new GoogleAdsClient(config);
GoogleAdsServiceClient googleAdsService =
    client.GetService(Services.V26.GoogleAdsService);

string customerId = "INSERT_CUSTOMER_ID_HERE";
string query =
    "SELECT campaign.id, campaign.name FROM campaign ORDER BY campaign.id";

try
{
    googleAdsService.SearchStream(
        customerId,
        query,
        delegate (SearchGoogleAdsStreamResponse response)
        {
            foreach (GoogleAdsRow row in response.Results)
            {
                Console.WriteLine(
                    $"Campaign ID {row.Campaign.Id}: {row.Campaign.Name}");
            }
        });
}
catch (GoogleAdsException ex)
{
    Console.WriteLine($"Request ID {ex.RequestId} failed: {ex.Message}");
}

Подробные сведения о том, как использовать клиентскую библиотеку .NET, можно найти в руководстве по началу работы.

Авторизация и аутентификация

Клиентская библиотека .NET поддерживает несколько подходов к аутентификации и авторизации, включая учетные данные пользователя OAuth 2.0 (для настольных и веб-приложений), сервисные аккаунты, Application Default Credentials (v24.1.0 и более поздние версии) и ручное внедрение учетных данных (v27.0.0 и более поздние версии). Подробную информацию можно найти в руководстве по авторизации и аутентификации.

Настройка и ведение журнала

Клиентская библиотека .NET поддерживает несколько вариантов конфигурации и ведения журнала с использованием объектов среды выполнения, appsettings.json или специальных файлов JSON, переменных среды или файлов App.config. Если вам нужно изменить поведение клиентской библиотеки при ведении журнала, ознакомьтесь с руководством по использованию собственного перехватчика gRPC.

Утилиты

Клиентская библиотека .NET включает служебные классы, которые упрощают работу с API, в том числе помощники по загрузке медиаконтента и видео (UploadVideo в v27.2.0 и более поздних версиях). Дополнительную информацию можно найти в следующих руководствах:

Тонкая настройка производительности приложения

Рекомендации по оптимизации производительности приложения можно найти в руководстве по настройке производительности.