[Ruby] Coupez le contenu des publicités Twitter

Dans mon entreprise, j'ai utilisé des publicités Twitter pour accéder à l'API de l'écran de gestion de la distribution des publicités de Twitter. Je suis trop nouveau sur Ruby et c'était assez difficile, alors je vais en prendre note.

La version twitter-ads est la 7.

Générer un client

Cela ne commence pas sans faire cela.

require 'twitter-ads'

# initialize the client
client = TwitterAds::Client.new(
  CONSUMER_KEY,
  CONSUMER_SECRET,
  ACCESS_TOKEN,
  ACCESS_TOKEN_SECRET
)

Avoir un compte

En regardant le démarrage rapide sur github.

# load the advertiser account instance
account = client.accounts('c3won9gy')

Il y a, mais la pièce d'identité pour y passer? Qu'Est-ce que c'est? Ce sera une histoire. À la suite de diverses enquêtes

client.accounts.each do |v|
  p v.id
end

Si je faisais ça comme ça, il y en avait une, alors je devais lui donner la pièce d'identité qui sortait là-bas.

Répertoriez les campagnes détenues par votre compte

Utilisez le «compte» obtenu ci-dessus.

account.campaigns.each do |v|
  p "====================="
  p v.id
  p v.reasons_not_servable
  p v.servable
  p v.deleted
  p v.created_at
  p v.updated_at
  p v.name
  p v.funding_instrument_id
  p v.end_time
  p v.start_time
  p v.entity_status
  p v.currency
  p v.standard_delivery
  p v.daily_budget_amount_local_micro
  p v.total_budget_amount_local_micro
  p v.to_delete
  p "====================="
end

Si vous faites cela, une liste de campagnes apparaîtra. (Si vous savez comment obtenir toutes les valeurs sur une seule ligne sans ping un par un comme ça ...)

Si vous souhaitez créer un objet uniquement pour une campagne spécifique

campaign = account.campaigns('1m5bbbb')

Générez-le comme ceci (l'ID à passer est la valeur qui est sortie dans le v.id ci-dessus)

campaign.name

Vous pouvez obtenir le nom de la campagne comme ceci.

campaign.name = "MADOKA"
campaign.save

Si vous le faites, vous pouvez modifier le nom de la campagne. Je suis plein de bonheur.

Groupe d'annonces de sortie

account.line_items()

Cela génère également le groupe d'annonces détenu par ʻaccount, donc utilisez ʻaccount.

Vous pouvez désormais obtenir une liste de groupes d'annonces.

Créez une liste d'audiences personnalisées.

Cela utilise également «compte».

account.tailored_audiences.each do |v|
  p "==========="
  p v.id
  p v.name
  p v.list_type
  p v.audience_size
  p v.audience_type
  p v.metadata
  p v.partner_source
  p v.reasons_not_targetable
  p v.targetable
  p v.targetable_types
  p "==========="
end

Jusqu'ici, j'ai en quelque sorte saisi l'atmosphère du système d'acquisition.

De là, j'écrirai un usage plus pratique.

Créez une audience personnalisée liée à un groupe d'annonces.

Groupe d'annonces

line_item = account.line_items('1abcd')

Vous pouvez l'obtenir à.

Donc, avec ce line_item acquis,

line_item.targeting_criteria.each do |target|
  if target.targeting_type == 'TAILORED_AUDIENCE' then
    p account.tailored_audiences(target.targeting_value).name
  end
end

Je me sens comme cela.

Dissocier les audiences personnalisées associées aux groupes d'annonces

line_item.targeting_criteria.each do |target|
  if target.targeting_type == 'TAILORED_AUDIENCE' then
    target.delete!
  end
end

Associer une audience personnalisée spécifique à un groupe d'annonces spécifié

C'était beaucoup de travail,

tc = TwitterAds::TargetingCriteria.new(account)
tc.line_item_id    = 'ID du groupe d'annonces à associer'
tc.targeting_value = 'ID d'audience personnalisé que vous souhaitez associer(value)'
tc.targeting_type  = 'TAILORED_AUDIENCE'Ceci est corrigé et vous pouvez le mettre dans
tc.save

C'était comme ça.

c'est tout

En ce qui concerne la liaison. La création d'un TA (Audience taillée) ne vous met pas immédiatement dans le statut "Prêt", donc Après l'avoir créé, vous devez périodiquement aller voir l'état du TA dans un lot, vérifier que l'état est "ciblable", et construire une logique appelée liaison.

C'était pénible de comprendre comment utiliser ce SDK, mais une fois que je l'ai compris, tout ce que j'avais à faire était de l'écrire, donc c'était amusant.

C'est comme ça aujourd'hui.

https://github.com/twitterdev/twitter-ruby-ads-sdk

Recommended Posts

[Ruby] Coupez le contenu des publicités Twitter
[Ruby] Afficher le contenu des variables
Supprimer tout le contenu de la page de liste [Ruby on Rails]
[Ruby] Comment récupérer le contenu du double hachage
À propos du comportement de ruby Hash # ==
[Rails] Vérifiez le contenu de l'objet
Remplacez le contenu du fichier Jar
Vérifiez le contenu du magasin de certificats Java
Vérifiez le contenu des paramètres avec le levier
Mémo: [Java] Vérifiez le contenu du répertoire
Pliage et dépliage du contenu de la vue Recycleur
Mettre en forme le contenu de LocalDate avec DateTimeFormatter
Le contenu des données enregistrées par CarrierWave.
[Ruby] Résumé des définitions de classe. Maîtrisez les bases.
JAVA: jar, aar, affichez le contenu du fichier
Vérifiez le contenu de l'objet argument avec Mockito
Personnalisez la répartition du contenu de Recyclerview
[Ruby on Rails] Jusqu'à l'introduction de RSpec
[Supprimer la première lettre de la chaîne de caractères] Ruby
L'histoire de l'introduction de la communication Ajax à Ruby
Gérez la version de Ruby elle-même avec rbenv
Écraser le contenu de la configuration avec Spring-boot + JUnit5
Je veux var_dump le contenu de l'intention
[Ruby] Code pour afficher le jour
J'ai vérifié le nombre de taxis avec Ruby
[Ruby] Découpez une chaîne de caractères à l'aide de la méthode slice
[Ruby] Le rôle des indices dans l'apprentissage des éléments dans les tableaux
Tester le contenu d'un fichier Excel avec JUnit
Ruby, Nokogiri: récupère le nom de l'élément du nœud sélectionné
[Note technique] À propos des avantages et des inconvénients de Ruby
[Rails] Comment obtenir le contenu des paramètres forts
Java: utilisez Stream pour trier le contenu d'une collection
[Ruby] Imbrication de classes, héritage et principes de base de soi
Obtenez l'URL de la destination de la redirection HTTP dans Ruby
Essayez d'utiliser l'attribut de requête Ruby on Rails
Le monde de Clara-Rules (2)
Jugement du calendrier
Le monde de Clara-Rules (4)
Le monde de Clara-Rules (1)
Le monde de Clara-Rules (3)
définition de la méthode ruby
Le monde de Clara-Rules (5)
L'idée du tri rapide
L'idée de jQuery
Passez en revue les connaissances de base du rubis souvent oubliées
J'ai jeté un coup d'œil à l'intérieur du Java HashMap
[Ruby] Questions et vérification du nombre d'arguments de méthode
L'idée de couper quand l'erreur n'est pas résolue
(Ruby on Rails6) Affichage de la base de données qui a obtenu l'identifiant de la base de données
Une note sur la fonction de départ de Ruby on Rails
Le nième et le n + 1er caractères d'une chaîne Ruby