Importer un fichier de données structurées

Vous pouvez créer et mettre à jour des ressources, y compris des ressources YouTube, de manière programmatique et groupée en important des fichiers de données structurées à l'aide de l'API Display & Video 360. Cette page explique comment préparer et importer un fichier de données structurées à l'aide de l'API.

Un projet Google Cloud ne peut importer que 30 fichiers de données structurées par jour et par ID d'annonceur.

Préparer un fichier de données structurées pour l'importation

Les fichiers de données structurées importés doivent être des versions modifiées de fichiers de données structurées récemment téléchargés du même type et provenant du même annonceur. Préparez le fichier de données structurées téléchargé pour l'importer en apportant les modifications suivantes :

  • Ajoutez des entrées pour toutes les nouvelles ressources que vous souhaitez créer.
  • Mettez à jour les entrées existantes pour les ressources que vous souhaitez modifier.
  • Supprimez toutes les entrées qui ne sont pas nouvelles ou mises à jour afin de réduire la taille du fichier, d'accélérer le temps de traitement et d'éviter toute mise à jour involontaire.

Avant d'importer le fichier, vérifiez les points suivants :

  • Le fichier est un fichier CSV.
  • Toutes les entrées du fichier concernent des ressources appartenant au même annonceur parent.
  • Le fichier ne comporte pas plus de 10 000 entrées.

Importer un fichier

Importez un fichier de données structurées à l'aide de la méthode advertisers.sdfuploadtasks.upload. Cette requête crée une tâche d'importation SDF Operation. Cette opération de longue durée traite le fichier importé, crée et met à jour les ressources en fonction du contenu du fichier, et génère des fichiers de résultats qui listent les mises à jour réussies et celles qui ont échoué.

Voici comment importer un fichier de données structurées et récupérer le Operation résultant :

# Import the object used as the media body for the upload request.
from apiclient.http import MediaFileUpload

# Provide the parent advertiser ID for the resources in the SDF.
# The ID value must be a str and not an int.
advertiser_id = advertiser-id

# Provide the filename and local path to the media file.
sdf_filename = sdf-filename
sdf_path = sdf-path

# Create the request body.
body = {
  'filename': sdf_filename,
  'advertiserId': advertiser_id
}

# Create the upload object and use a default MIME type if not identified.
media = MediaFileUpload(sdf_path)
if not media.mimetype():
  media = MediaFileUpload(sdf_filename,'application/octet-stream')

# Upload the structured data file.
upload_response = service.advertisers().sdfuploadtasks().upload(
  advertiserId=advertiser_id,
  body=body,
  media_body=media
).execute()

# Print resulting Operation name.
print(f'SDF was successfully uploaded. Operation {upload_response["name"]} was '
       'created to process the uploaded file.')