Google fournit une bibliothèque cliente .NET pour interagir avec l'API Ad Manager. Nous vous recommandons d'utiliser la bibliothèque cliente avec NuGet.
Pour commencer, créez un projet dans l'IDE de votre choix ou ajoutez la dépendance à un projet existant. Google publie les artefacts de la bibliothèque cliente dans le dépôt NuGet en tant que Google.Ads.AdManager.V1
.
Référence du package
<!-- MyProject.csproj -->
<PackageReference Include="Google.Ads.AdManager.V1" Version="1.0.0-beta01" />
CLI .NET
dotnet add package Google.Ads.AdManager.V1 --version 1.0.0-beta01
Configurer les identifiants
La bibliothèque cliente .NET utilise OAuth2 et les identifiants par défaut de l'application (ADC) pour s'authentifier.
L'ADC recherche les identifiants dans l'ordre suivant :
- Variable d'environnement
GOOGLE_APPLICATION_CREDENTIALS
. - Identifiants utilisateur configurés via la Google Cloud CLI (gcloud CLI)
- Lors de l'exécution sur Google Cloud, le compte de service associé à la ressource Google Cloud
Pour créer et configurer vos identifiants ADC, consultez la section Authentification.
Envoyer votre première requête
Chaque service dispose d'un objet ServiceClient
avec des méthodes synchrones et asynchrones pour chaque méthode REST. L'exemple suivant lit une Network
de manière synchrone. Toutes les entités sont identifiées par un nom de ressource composé du type et de l'identifiant numérique de l'entité.
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);
}
}
Pour obtenir des exemples d'autres méthodes et ressources, consultez le dépôt GitHub googleapis/google-cloud-dotnet
.
Gérer les erreurs
Toutes les erreurs de l'API Ad Manager sont de type Grpc.Core.RpcException dans la bibliothèque cliente .NET.
Les erreurs incluent un request_id
unique que vous pouvez fournir à l'assistance pour obtenir de l'aide pour le dépannage. L'exemple suivant extrait l'état HTTP, le message d'erreur et 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";
}
Créer des noms de ressources
La bibliothèque cliente fournit des classes d'assistance pour créer des noms de ressources à partir d'ID. Ceux-ci peuvent être transmis directement aux méthodes de service.
// Represents a resource name in the format:
// "networks/{networkCode}/orders/{orderId}"
OrderName name = OrderName.FromNetworkCodeOrder("123", "456");
Order response = orderServiceClient.GetOrder(name);