Vous pouvez utiliser l'API Display & Video 360 pour gérer les implémentations d'enchères personnalisées. Vous pouvez créer des algorithmes d'enchères personnalisées, importer et valider des scripts individuels, et attribuer un algorithme spécifique à une ressource en tant que stratégie d'enchères.
Cette page explique comment créer, mettre à jour et attribuer des algorithmes d'enchères personnalisées avec l'API Display & Video 360. Chaque section fournit un exemple de code.
Créer un algorithme d'enchères personnalisées
Un objet CustomBiddingAlgorithm représente un algorithme individuel que vous pouvez attribuer à un élément de campagne pour l'utiliser dans sa stratégie d'enchères. Cet objet contient des informations sur l'algorithme, telles que ses customBiddingAlgorithmType, entityStatus et customBiddingAlgorithmState. Vous pouvez créer des objets CustomBiddingScript en tant que ressources enfants que l'algorithme peut utiliser.
Voici un exemple de création d'un algorithme d'enchères personnalisées basé sur un script :
Python
# Create a custom bidding algorithm object. custom_bidding_algorithm_obj = { 'advertiserId': advertiser-id, 'displayName': display-name, 'entityStatus': 'ENTITY_STATUS_ACTIVE', 'customBiddingAlgorithmType': 'SCRIPT_BASED' } # Create the custom bidding algorithm. response = service.customBiddingAlgorithms().create( body=algorithm_obj ).execute() # Display the new custom bidding algorithm. print(f'The following Custom Bidding Algorithm was created: {response}')
Gérer l'accès aux algorithmes
Les algorithmes d'enchères personnalisées peuvent appartenir à un partenaire ou à un annonceur. Les algorithmes appartenant à un partenaire sont accessibles et modifiables par ce partenaire et par tous les annonceurs enfants listés dans le champ sharedAdvertiserIds.
Les algorithmes appartenant à un annonceur peuvent être consultés et modifiés par cet annonceur et son partenaire parent, mais ne peuvent pas être partagés avec d'autres annonceurs.
Si vous n'utilisez l'algorithme que pour un seul annonceur, attribuez-lui la propriété à l'aide du champ advertiserId.
Sinon, attribuez le partenaire parent des annonceurs en tant que propriétaire avec le champ partnerId et donnez-leur accès avec le champ sharedAdvertiserIds.
Importer un script
Une fois que vous avez créé un algorithme d'enchères personnalisées, créez un script pour qu'il puisse l'utiliser. Les algorithmes d'enchères personnalisées basés sur des scripts utilisent des scripts fournis par l'utilisateur pour évaluer la valeur d'une impression. Des exemples de scripts simples et une liste de champs avancés sont disponibles dans le Centre d'aide Display & Video 360.
Les sections suivantes vous expliquent comment ajouter un script nouveau ou mis à jour à un algorithme d'enchères personnalisé.
Récupérer l'emplacement d'une ressource de script
Commencez par récupérer un emplacement de ressource disponible sous la ressource d'algorithme d'enchères personnalisées avec la méthode customBiddingAlgorithms.uploadScript. Cette requête renvoie un objet CustomBiddingScriptRef avec un nom de ressource. Vous pouvez importer votre fichier de script à l'emplacement indiqué par le nom de la ressource. Utilisez ensuite l'objet de référence du script d'enchères personnalisées pour créer votre ressource de script.
Voici un exemple de récupération de l'emplacement d'une ressource disponible :
Python
# Retrieve a usable custom bidding script reference # object. custom_bidding_script_ref = service.customBiddingAlgorithms().uploadScript( customBiddingAlgorithmId=custom-bidding-algorithm-id, advertiserId=advertiser-id ).execute() # Display the new custom bidding script reference object. print('The following custom bidding script reference object was retrieved:' f'{custom_bidding_script_ref}')
Importer un fichier de script
Après avoir récupéré un emplacement de ressource disponible, importez votre fichier de script à cet emplacement dans le système Display & Video 360 à l'aide de la méthode media.upload. Cette méthode est compatible avec l'importation simple, qui nécessite le paramètre de requête uploadType=media.
Voici un exemple d'importation d'un fichier de script à partir d'un objet de référence de script d'enchères personnalisées récupéré :
Python
# Create a media upload object. media = MediaFileUpload(script-path) # Create upload request. upload_request = service.media().upload( resourceName=resource-name, media_body=media) # Override response handler to expect null response. upload_request.postproc = HttpRequest.null_postproc # Upload script to resource location given in retrieved custom bidding # script reference object. upload_request.execute()
Créer un objet de script
Une fois le fichier de script importé, créez une ressource de script d'enchères personnalisées avec la méthode customBiddingAlgorithms.scripts.create. L'objet CustomBiddingScript transmis dans la requête ne doit inclure que l'objet CustomBiddingScriptRef comme valeur attribuée du champ script. Le fichier de script importé est alors associé à la nouvelle ressource de script.
Voici un exemple de création d'un fichier de script :
Python
# Create a custom bidding script object. script_obj = { 'script': custom-bidding-script-ref } # Create the custom bidding script. response = service.customBiddingAlgorithms().scripts().create( customBiddingAlgorithmId=custom-bidding-algorithm-id, advertiserId=advertiser-id, body=script_obj).execute() # Display the new custom bidding script object. print(f'The following custom bidding script was created: {response}')
Une fois que vous avez créé une ressource de script d'enchères personnalisées, Display & Video 360 traite le script pour s'assurer qu'il peut être utilisé pour noter les impressions.
Récupérez l'état de ce traitement via le champ state de l'objet script. Une fois le nouveau script accepté, l'algorithme d'enchères personnalisées commence à l'utiliser pour évaluer les valeurs d'impression. Cette opération est immédiate. Assurez-vous donc de vouloir mettre à jour l'algorithme avant de créer une ressource de script.
Attribuer un algorithme d'enchères personnalisées
Une fois que vous avez créé un algorithme d'enchères personnalisées, importé un script accepté et rempli les conditions requises, vous pouvez attribuer votre algorithme d'enchères personnalisées à la stratégie d'enchères d'un élément de campagne ou d'un ordre d'insertion.
Vous pouvez utiliser des algorithmes d'enchères personnalisées dans les stratégies d'enchères Maximiser les dépenses et Objectif de performances en attribuant BIDDING_STRATEGY_PERFORMANCE_GOAL_TYPE_CUSTOM_ALGO et l'ID de l'algorithme d'enchères personnalisées aux champs performanceGoalType et customBiddingAlgorithmId, respectivement.
En fonction de la stratégie d'enchères, d'autres paramètres d'enchères peuvent être disponibles ou obligatoires.
Voici un exemple montrant comment mettre à jour un élément de campagne pour qu'il utilise une stratégie d'enchères "Maximiser les dépenses" avec un algorithme d'enchères personnalisées donné :
Python
# Create the new bid strategy object. bidding_strategy = { 'maximizeSpendAutoBid': { 'performanceGoalType': 'BIDDING_STRATEGY_PERFORMANCE_GOAL_TYPE_CUSTOM_ALGO', 'customBiddingAlgorithmId': custom-bidding-algorithm-id } } # Create a line item object assigning the new bid strategy. line_item_obj = {'bidStrategy': bidding_strategy} # Update the line item with a new bid strategy. response = service.advertisers().lineItems().patch( advertiserId=advertiser-id, lineItemId=line-item-id, updateMask='bidStrategy', body=line_item_obj).execute() # Display the line item's new bid strategy print(f'Line Item {response["name"]} is now using the following bid' f' strategy: {response["bidStrategy"]}.')