.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 elijas 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 autenticarse.

ADC busca las credenciales en orden en las siguientes ubicaciones:

  1. Con la 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 conectada 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 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.

Cómo solucionar 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 extrae 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 crear nombres de recursos

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

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