add samples of adsense
This commit is contained in:
parent
cf38f15a08
commit
5c5bc0ba7e
|
@ -0,0 +1,99 @@
|
|||
# Copyright 2017 Google Inc.
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
require 'google/apis/adsense_v1_4'
|
||||
require 'base_cli'
|
||||
|
||||
module Samples
|
||||
# Examples for the Adsense API
|
||||
#
|
||||
# Sample usage:
|
||||
#
|
||||
# $ ./google-api-samples adsense list_accounts
|
||||
# $ ./google-api-samples adsense list_account_ad_clients pub-0000000000000000
|
||||
# $ ./google-api-samples adsense list_account_ad_units pub-0000000000000000 ca-pub-0000000000000000
|
||||
# $ ./google-api-samples adsense get_account_ad_unit_ad_code pub-0000000000000000 ca-pub-0000000000000000 ca-pub-0000000000000000:0000000000
|
||||
#
|
||||
class Adsense < BaseCli
|
||||
Adsense = Google::Apis::AdsenseV1_4
|
||||
|
||||
desc 'list_accounts', 'List all accounts available to this AdSense account'
|
||||
method_option :max_results, type: :numeric, default: 100
|
||||
def list_accounts
|
||||
adsense = Adsense::AdSenseService.new
|
||||
adsense.authorization = user_credentials_for(Adsense::AUTH_ADSENSE)
|
||||
|
||||
result = adsense.list_accounts(max_results: options[:max_results])
|
||||
if result.items
|
||||
result.items.each { |account| puts "#{account.id} #{account.kind} #{account.name} #{account.premium} #{account.timezone}" }
|
||||
end
|
||||
end
|
||||
|
||||
desc(
|
||||
'list_account_ad_clients ACCOUNT_ID',
|
||||
'List all ad clients in the specified account'
|
||||
)
|
||||
method_option :max_results, type: :numeric, default: 100
|
||||
def list_account_ad_clients(account_id)
|
||||
adsense = Adsense::AdSenseService.new
|
||||
adsense.authorization = user_credentials_for(Adsense::AUTH_ADSENSE)
|
||||
|
||||
result = adsense.list_account_ad_clients(
|
||||
account_id,
|
||||
max_results: options[:max_results]
|
||||
)
|
||||
if result.items
|
||||
result.items.each { |ad_client| puts ad_client.id }
|
||||
end
|
||||
end
|
||||
|
||||
desc(
|
||||
'list_account_ad_units ACCOUNT_ID AD_CLIENT_ID',
|
||||
'List all ad units in the specified ad client for the specified account'
|
||||
)
|
||||
method_option :max_results, type: :numeric, default: 100
|
||||
method_option :include_inactive, type: :boolean, default: true
|
||||
def list_account_ad_units(account_id, ad_client_id)
|
||||
adsense = Adsense::AdSenseService.new
|
||||
adsense.authorization = user_credentials_for(Adsense::AUTH_ADSENSE)
|
||||
|
||||
result = adsense.list_account_ad_units(
|
||||
account_id, ad_client_id,
|
||||
max_results: options[:max_results],
|
||||
include_inactive: options[:include_inactive]
|
||||
)
|
||||
if result.items
|
||||
result.items.each do |ad_unit|
|
||||
puts "#{ad_unit.id} #{ad_unit.name} #{ad_unit.status} #{ad_unit.code}"
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
desc(
|
||||
'get_account_ad_unit_ad_code ACCOUNT_ID AD_CLIENT_ID AD_UNIT_ID',
|
||||
'Get ad code for the specified ad unit'
|
||||
)
|
||||
def get_account_ad_unit_ad_code(account_id, ad_client_id, ad_unit_id)
|
||||
adsense = Adsense::AdSenseService.new
|
||||
adsense.authorization = user_credentials_for(Adsense::AUTH_ADSENSE)
|
||||
|
||||
result = adsense.get_account_ad_unit_ad_code(
|
||||
account_id,
|
||||
ad_client_id,
|
||||
ad_unit_id
|
||||
)
|
||||
puts result.ad_code
|
||||
end
|
||||
end
|
||||
end
|
Loading…
Reference in New Issue