.NET

Google proporciona una biblioteca cliente de .NET para interactuar con la API de Ad Manager. Te recomendamos que uses la biblioteca cliente con NuGet.

Para comenzar, crea un proyecto nuevo en el IDE que prefieras o agrega la dependencia a un proyecto existente. Google publica artefactos de bibliotecas cliente en el repositorio de NuGet como Google.Ads.AdManager.V1.

Referencia del paquete

<!-- MyProject.csproj -->
<PackageReference Include="Google.Ads.AdManager.V1" Version="1.0.0-beta01" />

CLI de .NET

dotnet add package Google.Ads.AdManager.V1 --version 1.0.0-beta01

Configura las credenciales

La biblioteca cliente de .NET usa OAuth2 y las credenciales predeterminadas de la aplicación (ADC) para la autenticación.

ADC busca las credenciales en orden en las siguientes ubicaciones:

  1. Variable de entorno GOOGLE_APPLICATION_CREDENTIALS
  2. Credenciales de usuario configuradas a través de Google Cloud CLI (gcloud CLI)
  3. Cuando se ejecuta en Google Cloud, la cuenta de servicio adjunta al recurso de Google Cloud.

Para crear y configurar tus credenciales de ADC, consulta Autenticación.

Realiza tu primera solicitud

Cada servicio tiene un objeto ServiceClient con métodos síncronos y asíncronos para cada método de REST. En el siguiente ejemplo, se lee un Network de forma síncrona. Todas las entidades se identifican con un nombre de recurso que consta del tipo y el identificador numérico de la entidad.

    using Google.Ads.AdManager.V1;

    public sealed partial class GeneratedNetworkServiceClientSnippets
    {
        public void GetNetwork()
        {
            // Create client
            NetworkServiceClient networkServiceClient = NetworkServiceClient.Create();
            // Initialize request argument(s)
            string name = "networks/[NETWORK_CODE]";
            // Make the request
            Network response = networkServiceClient.GetNetwork(name);
        }
    }

Para ver ejemplos de otros métodos y recursos, consulta el repositorio de GitHub googleapis/google-cloud-dotnet.

Soluciona errores

Todos los errores de la API de Ad Manager son del tipo Grpc.Core.RpcException en la biblioteca cliente de .NET.

Los errores incluyen un request_id único que puedes proporcionar al equipo de asistencia para obtener ayuda con la solución de problemas. En el siguiente ejemplo, se extraen el estado HTTP, el mensaje de error y request_id.

using Google.Ads.AdManager.V1;
using Google.Api.Gax.Grpc;
using Google.Rpc;
using Grpc.Core;

try
{
    NetworkServiceClient networkServiceClient = NetworkServiceClient.Create();
    Network network = networkServiceClient.GetNetwork("networks/[NETWORK_CODE]");
}
catch(RpcException e)
{
    // HTTP Status code
    StatusCode statusCode = e.Status.StatusCode;
    // Error message
    string errorMessage = e.Status.Detail;
    // Unique request identifier.
    RequestInfo requestInfo = e.GetStatusDetail<RequestInfo>();
    string requestId = requestInfo?.RequestId ?? "Unexpected null request identifier";
}

Cómo construir nombres de recursos

La biblioteca cliente proporciona clases de ayuda para compilar nombres de recursos a partir de IDs. Estos se pueden pasar directamente a los métodos de servicio.

//  Represents a resource name in the format:
//  "networks/{networkCode}/orders/{orderId}"
OrderName name = OrderName.FromNetworkCodeOrder("123", "456");
Order response = orderServiceClient.GetOrder(name);

Establece la configuración del proxy

La biblioteca cliente de .NET respeta la propiedad HttpClient.DefaultProxy, incluida la configuración de proxies a partir de las variables de entorno HTTP_PROXY y HTTPS_PROXY. Para obtener más detalles, consulta la propiedad HttpClient.DefaultProxy.