google-dfp-api 0.2.2 → 0.2.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (150) hide show
  1. data/ChangeLog +3 -0
  2. data/examples/v201101/company_service/create_companies.rb +3 -4
  3. data/examples/v201101/company_service/update_companies.rb +2 -2
  4. data/examples/v201101/creative_service/create_creatives.rb +8 -11
  5. data/examples/v201101/inventory_service/create_ad_units.rb +7 -10
  6. data/examples/v201101/inventory_service/update_ad_units.rb +1 -1
  7. data/examples/v201101/line_item_service/create_line_items.rb +2 -3
  8. data/examples/v201101/line_item_service/update_line_items.rb +1 -1
  9. data/examples/v201101/order_service/create_orders.rb +5 -6
  10. data/examples/v201101/order_service/update_orders.rb +1 -1
  11. data/examples/v201101/placement_service/create_placements.rb +1 -1
  12. data/examples/v201101/placement_service/update_placements.rb +2 -1
  13. data/examples/v201101/user_service/update_users.rb +1 -1
  14. data/examples/v201103/company_service/create_companies.rb +3 -4
  15. data/examples/v201103/company_service/update_companies.rb +2 -2
  16. data/examples/v201103/creative_service/create_creatives.rb +8 -11
  17. data/examples/v201103/inventory_service/create_ad_units.rb +7 -10
  18. data/examples/v201103/inventory_service/update_ad_units.rb +1 -1
  19. data/examples/v201103/line_item_service/create_line_items.rb +2 -3
  20. data/examples/v201103/line_item_service/update_line_items.rb +1 -1
  21. data/examples/v201103/order_service/create_orders.rb +5 -6
  22. data/examples/v201103/order_service/update_orders.rb +1 -1
  23. data/examples/v201103/placement_service/create_placements.rb +1 -1
  24. data/examples/v201103/placement_service/update_placements.rb +2 -1
  25. data/examples/v201103/user_service/update_users.rb +1 -1
  26. data/examples/v201104/company_service/create_companies.rb +3 -4
  27. data/examples/v201104/company_service/update_companies.rb +2 -2
  28. data/examples/v201104/creative_service/create_creatives.rb +8 -11
  29. data/examples/v201104/inventory_service/create_ad_units.rb +7 -10
  30. data/examples/v201104/inventory_service/update_ad_units.rb +1 -1
  31. data/examples/v201104/line_item_service/create_line_items.rb +2 -3
  32. data/examples/v201104/line_item_service/update_line_items.rb +1 -1
  33. data/examples/v201104/order_service/create_orders.rb +5 -6
  34. data/examples/v201104/order_service/update_orders.rb +1 -1
  35. data/examples/v201104/placement_service/create_placements.rb +1 -1
  36. data/examples/v201104/placement_service/update_placements.rb +2 -1
  37. data/examples/v201104/user_service/update_users.rb +1 -1
  38. data/examples/v201107/common/error_handling.rb +76 -0
  39. data/examples/v201107/common/oauth_handling.rb +128 -0
  40. data/examples/v201107/company_service/create_companies.rb +81 -0
  41. data/examples/v201107/company_service/get_all_companies.rb +92 -0
  42. data/examples/v201107/company_service/get_companies_by_statement.rb +88 -0
  43. data/examples/v201107/company_service/get_company.rb +72 -0
  44. data/examples/v201107/company_service/update_companies.rb +95 -0
  45. data/examples/v201107/creative_service/copy_image_creatives.rb +117 -0
  46. data/examples/v201107/creative_service/create_creatives.rb +106 -0
  47. data/examples/v201107/creative_service/get_all_creatives.rb +93 -0
  48. data/examples/v201107/creative_service/get_creative.rb +72 -0
  49. data/examples/v201107/creative_service/get_creatives_by_statement.rb +87 -0
  50. data/examples/v201107/creative_service/update_creatives.rb +98 -0
  51. data/examples/v201107/custom_targeting_service/create_custom_targeting_keys_and_values.rb +118 -0
  52. data/examples/v201107/custom_targeting_service/delete_custom_targeting_keys.rb +121 -0
  53. data/examples/v201107/custom_targeting_service/delete_custom_targeting_values.rb +125 -0
  54. data/examples/v201107/custom_targeting_service/get_all_custom_targeting_keys_and_values.rb +148 -0
  55. data/examples/v201107/custom_targeting_service/get_custom_targeting_keys_by_statement.rb +92 -0
  56. data/examples/v201107/custom_targeting_service/get_custom_targeting_values_by_statement.rb +98 -0
  57. data/examples/v201107/custom_targeting_service/update_custom_targeting_keys.rb +94 -0
  58. data/examples/v201107/custom_targeting_service/update_custom_targeting_values.rb +106 -0
  59. data/examples/v201107/forecast_service/get_forecast.rb +103 -0
  60. data/examples/v201107/forecast_service/get_forecast_by_id.rb +80 -0
  61. data/examples/v201107/inventory_service/create_ad_units.rb +95 -0
  62. data/examples/v201107/inventory_service/deactivate_ad_units.rb +119 -0
  63. data/examples/v201107/inventory_service/get_ad_unit.rb +72 -0
  64. data/examples/v201107/inventory_service/get_ad_unit_sizes.rb +73 -0
  65. data/examples/v201107/inventory_service/get_ad_units_by_statement.rb +96 -0
  66. data/examples/v201107/inventory_service/get_all_ad_units.rb +93 -0
  67. data/examples/v201107/inventory_service/update_ad_units.rb +94 -0
  68. data/examples/v201107/label_service/create_labels.rb +83 -0
  69. data/examples/v201107/label_service/deactivate_labels.rb +118 -0
  70. data/examples/v201107/label_service/get_all_labels.rb +94 -0
  71. data/examples/v201107/label_service/get_label.rb +76 -0
  72. data/examples/v201107/label_service/get_labels_by_statement.rb +91 -0
  73. data/examples/v201107/label_service/update_labels.rb +104 -0
  74. data/examples/v201107/line_item_creative_association_service/create_licas.rb +94 -0
  75. data/examples/v201107/line_item_creative_association_service/deactivate_licas.rb +127 -0
  76. data/examples/v201107/line_item_creative_association_service/get_all_licas.rb +95 -0
  77. data/examples/v201107/line_item_creative_association_service/get_lica.rb +77 -0
  78. data/examples/v201107/line_item_creative_association_service/get_licas_by_statement.rb +91 -0
  79. data/examples/v201107/line_item_creative_association_service/update_licas.rb +92 -0
  80. data/examples/v201107/line_item_service/activate_line_items.rb +131 -0
  81. data/examples/v201107/line_item_service/create_line_items.rb +167 -0
  82. data/examples/v201107/line_item_service/get_all_line_items.rb +94 -0
  83. data/examples/v201107/line_item_service/get_line_item.rb +74 -0
  84. data/examples/v201107/line_item_service/get_line_items_by_statement.rb +89 -0
  85. data/examples/v201107/line_item_service/target_custom_criteria.rb +129 -0
  86. data/examples/v201107/line_item_service/update_line_items.rb +110 -0
  87. data/examples/v201107/network_service/get_all_networks.rb +74 -0
  88. data/examples/v201107/network_service/get_current_network.rb +66 -0
  89. data/examples/v201107/order_service/approve_orders.rb +116 -0
  90. data/examples/v201107/order_service/create_orders.rb +92 -0
  91. data/examples/v201107/order_service/get_all_orders.rb +93 -0
  92. data/examples/v201107/order_service/get_order.rb +74 -0
  93. data/examples/v201107/order_service/get_orders_by_statement.rb +90 -0
  94. data/examples/v201107/order_service/update_orders.rb +95 -0
  95. data/examples/v201107/placement_service/create_placements.rb +128 -0
  96. data/examples/v201107/placement_service/deactivate_placements.rb +118 -0
  97. data/examples/v201107/placement_service/get_all_placements.rb +93 -0
  98. data/examples/v201107/placement_service/get_placement.rb +74 -0
  99. data/examples/v201107/placement_service/get_placements_by_statement.rb +86 -0
  100. data/examples/v201107/placement_service/update_placements.rb +97 -0
  101. data/examples/v201107/publisher_query_language_service/get_all_bandwidth_groups.rb +85 -0
  102. data/examples/v201107/publisher_query_language_service/get_all_browser_languages.rb +85 -0
  103. data/examples/v201107/publisher_query_language_service/get_all_browsers.rb +85 -0
  104. data/examples/v201107/publisher_query_language_service/get_all_cities.rb +85 -0
  105. data/examples/v201107/publisher_query_language_service/get_all_countries.rb +85 -0
  106. data/examples/v201107/publisher_query_language_service/get_all_metros.rb +85 -0
  107. data/examples/v201107/publisher_query_language_service/get_all_operating_systems.rb +85 -0
  108. data/examples/v201107/publisher_query_language_service/get_all_regions.rb +85 -0
  109. data/examples/v201107/report_service/download_report.rb +81 -0
  110. data/examples/v201107/report_service/run_delivery_report.rb +89 -0
  111. data/examples/v201107/report_service/run_inventory_report.rb +90 -0
  112. data/examples/v201107/report_service/run_sales_report.rb +89 -0
  113. data/examples/v201107/user_service/create_users.rb +89 -0
  114. data/examples/v201107/user_service/deactivate_users.rb +99 -0
  115. data/examples/v201107/user_service/get_all_roles.rb +73 -0
  116. data/examples/v201107/user_service/get_all_users.rb +92 -0
  117. data/examples/v201107/user_service/get_current_user.rb +66 -0
  118. data/examples/v201107/user_service/get_user.rb +73 -0
  119. data/examples/v201107/user_service/get_users_by_statement.rb +79 -0
  120. data/examples/v201107/user_service/update_users.rb +89 -0
  121. data/lib/dfp_api/api_config.rb +16 -7
  122. data/lib/dfp_api/v201107/company_service.rb +52 -0
  123. data/lib/dfp_api/v201107/company_service_registry.rb +42 -0
  124. data/lib/dfp_api/v201107/creative_service.rb +52 -0
  125. data/lib/dfp_api/v201107/creative_service_registry.rb +42 -0
  126. data/lib/dfp_api/v201107/custom_targeting_service.rb +60 -0
  127. data/lib/dfp_api/v201107/custom_targeting_service_registry.rb +42 -0
  128. data/lib/dfp_api/v201107/forecast_service.rb +36 -0
  129. data/lib/dfp_api/v201107/forecast_service_registry.rb +42 -0
  130. data/lib/dfp_api/v201107/inventory_service.rb +60 -0
  131. data/lib/dfp_api/v201107/inventory_service_registry.rb +42 -0
  132. data/lib/dfp_api/v201107/label_service.rb +56 -0
  133. data/lib/dfp_api/v201107/label_service_registry.rb +42 -0
  134. data/lib/dfp_api/v201107/line_item_creative_association_service.rb +56 -0
  135. data/lib/dfp_api/v201107/line_item_creative_association_service_registry.rb +42 -0
  136. data/lib/dfp_api/v201107/line_item_service.rb +56 -0
  137. data/lib/dfp_api/v201107/line_item_service_registry.rb +42 -0
  138. data/lib/dfp_api/v201107/network_service.rb +40 -0
  139. data/lib/dfp_api/v201107/network_service_registry.rb +42 -0
  140. data/lib/dfp_api/v201107/order_service.rb +56 -0
  141. data/lib/dfp_api/v201107/order_service_registry.rb +42 -0
  142. data/lib/dfp_api/v201107/placement_service.rb +56 -0
  143. data/lib/dfp_api/v201107/placement_service_registry.rb +42 -0
  144. data/lib/dfp_api/v201107/publisher_query_language_service.rb +32 -0
  145. data/lib/dfp_api/v201107/publisher_query_language_service_registry.rb +42 -0
  146. data/lib/dfp_api/v201107/report_service.rb +40 -0
  147. data/lib/dfp_api/v201107/report_service_registry.rb +42 -0
  148. data/lib/dfp_api/v201107/user_service.rb +64 -0
  149. data/lib/dfp_api/v201107/user_service_registry.rb +42 -0
  150. metadata +115 -4
@@ -0,0 +1,79 @@
1
+ #!/usr/bin/ruby
2
+ #
3
+ # Author:: api.dklimkin@gmail.com (Danial Klimkin)
4
+ #
5
+ # Copyright:: Copyright 2011, Google Inc. All Rights Reserved.
6
+ #
7
+ # License:: Licensed under the Apache License, Version 2.0 (the "License");
8
+ # you may not use this file except in compliance with the License.
9
+ # You may obtain a copy of the License at
10
+ #
11
+ # http://www.apache.org/licenses/LICENSE-2.0
12
+ #
13
+ # Unless required by applicable law or agreed to in writing, software
14
+ # distributed under the License is distributed on an "AS IS" BASIS,
15
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
16
+ # implied.
17
+ # See the License for the specific language governing permissions and
18
+ # limitations under the License.
19
+ #
20
+ # This example gets all users sorted by name. The statement retrieves up to the
21
+ # maximum page size limit of 500. To create new users, run create_users.rb.
22
+ #
23
+ # Tags: UserService.getUsersByStatement
24
+
25
+ require 'rubygems'
26
+ require 'dfp_api'
27
+
28
+ API_VERSION = :v201107
29
+
30
+ def get_users_by_statement()
31
+ # Get DfpApi instance and load configuration from ~/dfp_api.yml.
32
+ dfp = DfpApi::Api.new
33
+
34
+ # To enable logging of SOAP requests, set the log_level value to 'DEBUG' in
35
+ # the configuration file or provide your own logger:
36
+ # dfp.logger = Logger.new('dfp_xml.log')
37
+
38
+ # Get the UserService.
39
+ user_service = dfp.service(:UserService, API_VERSION)
40
+
41
+ # Create a statement to get all users sorted by name.
42
+ statement = {:query => 'ORDER BY name LIMIT 500'}
43
+
44
+ # Get users by statement.
45
+ page = user_service.get_users_by_statement(statement)
46
+
47
+ if page and page[:results]
48
+ page[:results].each_with_index do |user, index|
49
+ puts "%d) User ID: %d, name: %s, email: %s, role: %s." % [index,
50
+ user[:id], user[:name], user[:email], user[:role_name]]
51
+ end
52
+ end
53
+
54
+ # Print a footer.
55
+ if page.include?(:total_result_set_size)
56
+ puts "Number of results found: %d" % page[:total_result_set_size]
57
+ end
58
+ end
59
+
60
+ if __FILE__ == $0
61
+ begin
62
+ get_users_by_statement()
63
+
64
+ # HTTP errors.
65
+ rescue AdsCommon::Errors::HttpError => e
66
+ puts "HTTP Error: %s" % e
67
+
68
+ # API errors.
69
+ rescue DfpApi::Errors::ApiException => e
70
+ puts "Message: %s" % e.message
71
+ puts 'Errors:'
72
+ e.errors.each_with_index do |error, index|
73
+ puts "\tError [%d]:" % (index + 1)
74
+ error.each do |field, value|
75
+ puts "\t\t%s: %s" % [field, value]
76
+ end
77
+ end
78
+ end
79
+ end
@@ -0,0 +1,89 @@
1
+ #!/usr/bin/ruby
2
+ #
3
+ # Author:: api.dklimkin@gmail.com (Danial Klimkin)
4
+ #
5
+ # Copyright:: Copyright 2011, Google Inc. All Rights Reserved.
6
+ #
7
+ # License:: Licensed under the Apache License, Version 2.0 (the "License");
8
+ # you may not use this file except in compliance with the License.
9
+ # You may obtain a copy of the License at
10
+ #
11
+ # http://www.apache.org/licenses/LICENSE-2.0
12
+ #
13
+ # Unless required by applicable law or agreed to in writing, software
14
+ # distributed under the License is distributed on an "AS IS" BASIS,
15
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
16
+ # implied.
17
+ # See the License for the specific language governing permissions and
18
+ # limitations under the License.
19
+ #
20
+ # This example updates all users by adding "Sr." to the end of each name (after
21
+ # a very large baby boom and lack of creativity). To determine which users
22
+ # exist, run get_all_users.rb.
23
+ #
24
+ # Tags: UserService.getUsersByStatement, UserService.updateUsers
25
+
26
+ require 'rubygems'
27
+ require 'dfp_api'
28
+
29
+ API_VERSION = :v201107
30
+
31
+ def update_users()
32
+ # Get DfpApi instance and load configuration from ~/dfp_api.yml.
33
+ dfp = DfpApi::Api.new
34
+
35
+ # To enable logging of SOAP requests, set the log_level value to 'DEBUG' in
36
+ # the configuration file or provide your own logger:
37
+ # dfp.logger = Logger.new('dfp_xml.log')
38
+
39
+ # Get the UserService.
40
+ user_service = dfp.service(:UserService, API_VERSION)
41
+
42
+ # Create a statement to get all users.
43
+ statement = {:query => 'LIMIT 500'}
44
+
45
+ # Get users by statement.
46
+ page = user_service.get_users_by_statement(statement)
47
+
48
+ if page[:results]
49
+ users = page[:results]
50
+
51
+ # Update each local users object by changing its name.
52
+ users.each {|user| user[:name] += ' Sr.'}
53
+
54
+ # Update the users on the server.
55
+ return_users = user_service.update_users(users)
56
+
57
+ if return_users
58
+ return_users.each do |user|
59
+ puts ("User ID: %d, email: %s was updated with name %s") %
60
+ [user[:id], user[:email], user[:name]]
61
+ end
62
+ else
63
+ raise 'No users were updated.'
64
+ end
65
+ else
66
+ puts 'No users found to update.'
67
+ end
68
+ end
69
+
70
+ if __FILE__ == $0
71
+ begin
72
+ update_users()
73
+
74
+ # HTTP errors.
75
+ rescue AdsCommon::Errors::HttpError => e
76
+ puts "HTTP Error: %s" % e
77
+
78
+ # API errors.
79
+ rescue DfpApi::Errors::ApiException => e
80
+ puts "Message: %s" % e.message
81
+ puts 'Errors:'
82
+ e.errors.each_with_index do |error, index|
83
+ puts "\tError [%d]:" % (index + 1)
84
+ error.each do |field, value|
85
+ puts "\t\t%s: %s" % [field, value]
86
+ end
87
+ end
88
+ end
89
+ end
@@ -20,9 +20,10 @@
20
20
  # Helper methods for loading and managing the available services in the DFP
21
21
  # API.
22
22
 
23
- require 'ads_common/api_config'
24
23
  require 'savon'
25
24
 
25
+ require 'ads_common/api_config'
26
+
26
27
  module DfpApi
27
28
 
28
29
  # Contains helper methods for loading and managing the available services.
@@ -33,14 +34,14 @@ module DfpApi
33
34
  end
34
35
 
35
36
  # Set defaults
36
- DEFAULT_VERSION = :v201104
37
+ DEFAULT_VERSION = :v201107
37
38
  DEFAULT_ENVIRONMENT = :PRODUCTION
38
- LATEST_VERSION = :v201104
39
+ LATEST_VERSION = :v201107
39
40
 
40
41
  # Set other constants
41
42
  API_NAME = 'DfpApi'
42
43
  API_PATH = 'dfp_api'
43
- CLIENT_LIB_VERSION = '0.2.2'
44
+ CLIENT_LIB_VERSION = '0.2.3'
44
45
  DEFAULT_CONFIG_FILENAME = 'dfp_api.yml'
45
46
 
46
47
  # Configure the services available to each version
@@ -59,7 +60,13 @@ module DfpApi
59
60
  :InventoryService, :LineItemCreativeAssociationService,
60
61
  :LineItemService, :NetworkService, :OrderService,
61
62
  :PlacementService, :ReportService, :UserService,
62
- :CustomTargetingService, :PublisherQueryLanguageService]
63
+ :CustomTargetingService, :PublisherQueryLanguageService],
64
+ :v201107 => [:CompanyService, :CreativeService, :ForecastService,
65
+ :InventoryService, :LineItemCreativeAssociationService,
66
+ :LineItemService, :NetworkService, :OrderService,
67
+ :PlacementService, :ReportService, :UserService,
68
+ :CustomTargetingService, :PublisherQueryLanguageService,
69
+ :LabelService]
63
70
  }
64
71
 
65
72
  # Configure the different environments, with the base URL for each one
@@ -68,13 +75,15 @@ module DfpApi
68
75
  :oauth_scope => 'https://www.google.com/apis/ads/publisher/',
69
76
  :v201101 => 'https://www.google.com/apis/ads/publisher/',
70
77
  :v201103 => 'https://www.google.com/apis/ads/publisher/',
71
- :v201104 => 'https://www.google.com/apis/ads/publisher/'
78
+ :v201104 => 'https://www.google.com/apis/ads/publisher/',
79
+ :v201107 => 'https://www.google.com/apis/ads/publisher/'
72
80
  },
73
81
  :SANDBOX => {
74
82
  :oauth_scope => 'https://sandbox.google.com/apis/ads/publisher/',
75
83
  :v201101 => 'https://sandbox.google.com/apis/ads/publisher/',
76
84
  :v201103 => 'https://sandbox.google.com/apis/ads/publisher/',
77
- :v201104 => 'https://sandbox.google.com/apis/ads/publisher/'
85
+ :v201104 => 'https://sandbox.google.com/apis/ads/publisher/',
86
+ :v201107 => 'https://sandbox.google.com/apis/ads/publisher/'
78
87
  }
79
88
  }
80
89
 
@@ -0,0 +1,52 @@
1
+ #!/usr/bin/ruby
2
+ # This is auto-generated code, changes will be overwritten.
3
+ # Copyright:: Copyright 2011, Google Inc. All Rights Reserved.
4
+ # License:: Licensed under the Apache License,Version 2.0 (the "License").
5
+ #
6
+ # Code generated by AdsCommon library 0.5.0 on 2011-08-03 17:27:41.
7
+
8
+ require 'ads_common/savon_service'
9
+ require 'dfp_api/v201107/company_service_registry'
10
+
11
+ module DfpApi; module V201107; module CompanyService
12
+ class CompanyService < AdsCommon::SavonService
13
+ def initialize(api, endpoint)
14
+ namespace = 'https://www.google.com/apis/ads/publisher/v201107'
15
+ super(api, endpoint, namespace, :v201107)
16
+ end
17
+
18
+ def update_company(*args)
19
+ return execute_action('update_company', args)
20
+ end
21
+
22
+ def create_companies(*args)
23
+ return execute_action('create_companies', args)
24
+ end
25
+
26
+ def create_company(*args)
27
+ return execute_action('create_company', args)
28
+ end
29
+
30
+ def get_companies_by_statement(*args)
31
+ return execute_action('get_companies_by_statement', args)
32
+ end
33
+
34
+ def get_company(*args)
35
+ return execute_action('get_company', args)
36
+ end
37
+
38
+ def update_companies(*args)
39
+ return execute_action('update_companies', args)
40
+ end
41
+
42
+ private
43
+
44
+ def get_service_registry()
45
+ return CompanyServiceRegistry
46
+ end
47
+
48
+ def get_module()
49
+ return DfpApi::V201107::CompanyService
50
+ end
51
+ end
52
+ end; end; end
@@ -0,0 +1,42 @@
1
+ #!/usr/bin/ruby
2
+ # This is auto-generated code, changes will be overwritten.
3
+ # Copyright:: Copyright 2011, Google Inc. All Rights Reserved.
4
+ # License:: Licensed under the Apache License,Version 2.0 (the "License").
5
+ #
6
+ # Code generated by AdsCommon library 0.5.0 on 2011-08-03 17:27:41.
7
+
8
+ module DfpApi; module V201107; module CompanyService
9
+ class CompanyServiceRegistry
10
+ COMPANYSERVICE_METHODS = {:update_company=>{:input=>[{:type=>"Company", :max_occurs=>1, :name=>:company, :min_occurs=>0}], :output=>{:fields=>[{:type=>"Company", :max_occurs=>1, :name=>:rval, :min_occurs=>0}], :name=>"update_company_response"}}, :create_companies=>{:input=>[{:type=>"Company", :max_occurs=>:unbounded, :name=>:companies, :min_occurs=>0}], :output=>{:fields=>[{:type=>"Company", :max_occurs=>:unbounded, :name=>:rval, :min_occurs=>0}], :name=>"create_companies_response"}}, :create_company=>{:input=>[{:type=>"Company", :max_occurs=>1, :name=>:company, :min_occurs=>0}], :output=>{:fields=>[{:type=>"Company", :max_occurs=>1, :name=>:rval, :min_occurs=>0}], :name=>"create_company_response"}}, :get_companies_by_statement=>{:input=>[{:type=>"Statement", :max_occurs=>1, :name=>:filter_statement, :min_occurs=>0}], :output=>{:fields=>[{:type=>"CompanyPage", :max_occurs=>1, :name=>:rval, :min_occurs=>0}], :name=>"get_companies_by_statement_response"}}, :get_company=>{:input=>[{:type=>"long", :max_occurs=>1, :name=>:company_id, :min_occurs=>0}], :output=>{:fields=>[{:type=>"Company", :max_occurs=>1, :name=>:rval, :min_occurs=>0}], :name=>"get_company_response"}}, :update_companies=>{:input=>[{:type=>"Company", :max_occurs=>:unbounded, :name=>:companies, :min_occurs=>0}], :output=>{:fields=>[{:type=>"Company", :max_occurs=>:unbounded, :name=>:rval, :min_occurs=>0}], :name=>"update_companies_response"}}}
11
+ COMPANYSERVICE_TYPES = {:CompanyPage=>{:fields=>[{:type=>"int", :max_occurs=>1, :name=>:total_result_set_size, :min_occurs=>0}, {:type=>"int", :max_occurs=>1, :name=>:start_index, :min_occurs=>0}, {:type=>"Company", :max_occurs=>:unbounded, :name=>:results, :min_occurs=>0}]}, :SoapResponseHeader=>{:fields=>[{:type=>"string", :max_occurs=>1, :name=>:request_id, :min_occurs=>0}, {:type=>"long", :max_occurs=>1, :name=>:response_time, :min_occurs=>0}]}, :Statement=>{:fields=>[{:type=>"string", :max_occurs=>1, :name=>:query, :min_occurs=>0}, {:type=>"String_ValueMapEntry", :max_occurs=>:unbounded, :name=>:values, :min_occurs=>0}]}, :String_ValueMapEntry=>{:fields=>[{:type=>"string", :max_occurs=>1, :name=>:key, :min_occurs=>0}, {:type=>"Value", :max_occurs=>1, :name=>:value, :min_occurs=>0}]}, :NumberValue=>{:fields=>[{:type=>"string", :max_occurs=>1, :name=>:value, :min_occurs=>0}], :base=>"Value"}, :Authentication=>{:fields=>[{:type=>"string", :max_occurs=>1, :name=>:authentication_type, :min_occurs=>0}], :abstract=>true}, :AppliedLabel=>{:fields=>[{:type=>"long", :max_occurs=>1, :name=>:label_id, :min_occurs=>0}, {:type=>"boolean", :max_occurs=>1, :name=>:is_negated, :min_occurs=>0}]}, :OAuth=>{:fields=>[{:type=>"string", :max_occurs=>1, :name=>:parameters, :min_occurs=>0}], :base=>"Authentication"}, :BooleanValue=>{:fields=>[{:type=>"boolean", :max_occurs=>1, :name=>:value, :min_occurs=>0}], :base=>"Value"}, :Value=>{:fields=>[{:type=>"string", :max_occurs=>1, :name=>:value_type, :min_occurs=>0}], :abstract=>true}, :SoapRequestHeader=>{:fields=>[{:type=>"string", :max_occurs=>1, :name=>:network_code, :min_occurs=>0}, {:type=>"string", :max_occurs=>1, :name=>:application_name, :min_occurs=>0}, {:type=>"Authentication", :max_occurs=>1, :name=>:authentication, :min_occurs=>0}]}, :Company=>{:fields=>[{:type=>"long", :max_occurs=>1, :name=>:id, :min_occurs=>0}, {:type=>"string", :max_occurs=>1, :name=>:name, :min_occurs=>0}, {:type=>"Company.Type", :max_occurs=>1, :name=>:type, :min_occurs=>0}, {:type=>"AppliedLabel", :max_occurs=>:unbounded, :name=>:applied_labels, :min_occurs=>0}, {:type=>"boolean", :max_occurs=>1, :name=>:enable_same_advertiser_competitive_exclusion, :min_occurs=>0}]}, :ClientLogin=>{:fields=>[{:type=>"string", :max_occurs=>1, :name=>:token, :min_occurs=>0}], :base=>"Authentication"}, :TextValue=>{:fields=>[{:type=>"string", :max_occurs=>1, :name=>:value, :min_occurs=>0}], :base=>"Value"}}
12
+ COMPANYSERVICE_NAMESPACES = []
13
+
14
+ def self.get_method_signature(method_name)
15
+ return COMPANYSERVICE_METHODS[method_name.to_sym]
16
+ end
17
+
18
+ def self.get_type_signature(type_name)
19
+ return COMPANYSERVICE_TYPES[type_name.to_sym]
20
+ end
21
+
22
+ def self.get_namespace(index)
23
+ return COMPANYSERVICE_NAMESPACES[index]
24
+ end
25
+ end
26
+
27
+ # Base class for exceptions.
28
+ class ApplicationException < DfpApi::Errors::ApiException
29
+ attr_reader :message # string
30
+ attr_reader :application_exception_type # string
31
+ end
32
+
33
+ # Exception class for holding a list of service errors.
34
+ class ApiException < ApplicationException
35
+ attr_reader :errors # ApiError
36
+ def initialize(exception_fault)
37
+ @array_fields ||= []
38
+ @array_fields << 'errors'
39
+ super(exception_fault)
40
+ end
41
+ end
42
+ end; end; end
@@ -0,0 +1,52 @@
1
+ #!/usr/bin/ruby
2
+ # This is auto-generated code, changes will be overwritten.
3
+ # Copyright:: Copyright 2011, Google Inc. All Rights Reserved.
4
+ # License:: Licensed under the Apache License,Version 2.0 (the "License").
5
+ #
6
+ # Code generated by AdsCommon library 0.5.0 on 2011-08-03 17:28:11.
7
+
8
+ require 'ads_common/savon_service'
9
+ require 'dfp_api/v201107/creative_service_registry'
10
+
11
+ module DfpApi; module V201107; module CreativeService
12
+ class CreativeService < AdsCommon::SavonService
13
+ def initialize(api, endpoint)
14
+ namespace = 'https://www.google.com/apis/ads/publisher/v201107'
15
+ super(api, endpoint, namespace, :v201107)
16
+ end
17
+
18
+ def update_creative(*args)
19
+ return execute_action('update_creative', args)
20
+ end
21
+
22
+ def update_creatives(*args)
23
+ return execute_action('update_creatives', args)
24
+ end
25
+
26
+ def create_creative(*args)
27
+ return execute_action('create_creative', args)
28
+ end
29
+
30
+ def create_creatives(*args)
31
+ return execute_action('create_creatives', args)
32
+ end
33
+
34
+ def get_creative(*args)
35
+ return execute_action('get_creative', args)
36
+ end
37
+
38
+ def get_creatives_by_statement(*args)
39
+ return execute_action('get_creatives_by_statement', args)
40
+ end
41
+
42
+ private
43
+
44
+ def get_service_registry()
45
+ return CreativeServiceRegistry
46
+ end
47
+
48
+ def get_module()
49
+ return DfpApi::V201107::CreativeService
50
+ end
51
+ end
52
+ end; end; end
@@ -0,0 +1,42 @@
1
+ #!/usr/bin/ruby
2
+ # This is auto-generated code, changes will be overwritten.
3
+ # Copyright:: Copyright 2011, Google Inc. All Rights Reserved.
4
+ # License:: Licensed under the Apache License,Version 2.0 (the "License").
5
+ #
6
+ # Code generated by AdsCommon library 0.5.0 on 2011-08-03 17:28:11.
7
+
8
+ module DfpApi; module V201107; module CreativeService
9
+ class CreativeServiceRegistry
10
+ CREATIVESERVICE_METHODS = {:update_creative=>{:input=>[{:type=>"Creative", :max_occurs=>1, :name=>:creative, :min_occurs=>0}], :output=>{:fields=>[{:type=>"Creative", :max_occurs=>1, :name=>:rval, :min_occurs=>0}], :name=>"update_creative_response"}}, :update_creatives=>{:input=>[{:type=>"Creative", :max_occurs=>:unbounded, :name=>:creatives, :min_occurs=>0}], :output=>{:fields=>[{:type=>"Creative", :max_occurs=>:unbounded, :name=>:rval, :min_occurs=>0}], :name=>"update_creatives_response"}}, :create_creative=>{:input=>[{:type=>"Creative", :max_occurs=>1, :name=>:creative, :min_occurs=>0}], :output=>{:fields=>[{:type=>"Creative", :max_occurs=>1, :name=>:rval, :min_occurs=>0}], :name=>"create_creative_response"}}, :create_creatives=>{:input=>[{:type=>"Creative", :max_occurs=>:unbounded, :name=>:creatives, :min_occurs=>0}], :output=>{:fields=>[{:type=>"Creative", :max_occurs=>:unbounded, :name=>:rval, :min_occurs=>0}], :name=>"create_creatives_response"}}, :get_creative=>{:input=>[{:type=>"long", :max_occurs=>1, :name=>:creative_id, :min_occurs=>0}], :output=>{:fields=>[{:type=>"Creative", :max_occurs=>1, :name=>:rval, :min_occurs=>0}], :name=>"get_creative_response"}}, :get_creatives_by_statement=>{:input=>[{:type=>"Statement", :max_occurs=>1, :name=>:filter_statement, :min_occurs=>0}], :output=>{:fields=>[{:type=>"CreativePage", :max_occurs=>1, :name=>:rval, :min_occurs=>0}], :name=>"get_creatives_by_statement_response"}}}
11
+ CREATIVESERVICE_TYPES = {:SoapResponseHeader=>{:fields=>[{:type=>"string", :max_occurs=>1, :name=>:request_id, :min_occurs=>0}, {:type=>"long", :max_occurs=>1, :name=>:response_time, :min_occurs=>0}]}, :BaseImageCreative=>{:fields=>[{:type=>"string", :max_occurs=>1, :name=>:image_name, :min_occurs=>0}, {:type=>"base64Binary", :max_occurs=>1, :name=>:image_byte_array, :min_occurs=>0}, {:type=>"boolean", :max_occurs=>1, :name=>:override_size, :min_occurs=>0}, {:type=>"Size", :max_occurs=>1, :name=>:asset_size, :min_occurs=>0}, {:type=>"string", :max_occurs=>1, :name=>:image_url, :min_occurs=>0}], :abstract=>true, :base=>"HasDestinationUrlCreative"}, :HasDestinationUrlCreative=>{:fields=>[{:type=>"string", :max_occurs=>1, :name=>:destination_url, :min_occurs=>0}], :abstract=>true, :base=>"Creative"}, :Statement=>{:fields=>[{:type=>"string", :max_occurs=>1, :name=>:query, :min_occurs=>0}, {:type=>"String_ValueMapEntry", :max_occurs=>:unbounded, :name=>:values, :min_occurs=>0}]}, :BaseImageRedirectCreative=>{:fields=>[{:type=>"string", :max_occurs=>1, :name=>:image_url, :min_occurs=>0}], :abstract=>true, :base=>"HasDestinationUrlCreative"}, :ImageCreative=>{:fields=>[], :base=>"BaseImageCreative"}, :String_ValueMapEntry=>{:fields=>[{:type=>"string", :max_occurs=>1, :name=>:key, :min_occurs=>0}, {:type=>"Value", :max_occurs=>1, :name=>:value, :min_occurs=>0}]}, :NumberValue=>{:fields=>[{:type=>"string", :max_occurs=>1, :name=>:value, :min_occurs=>0}], :base=>"Value"}, :Creative=>{:fields=>[{:type=>"long", :max_occurs=>1, :name=>:advertiser_id, :min_occurs=>0}, {:type=>"long", :max_occurs=>1, :name=>:id, :min_occurs=>0}, {:type=>"string", :max_occurs=>1, :name=>:name, :min_occurs=>0}, {:type=>"Size", :max_occurs=>1, :name=>:size, :min_occurs=>0}, {:type=>"string", :max_occurs=>1, :name=>:preview_url, :min_occurs=>0}, {:type=>"AppliedLabel", :max_occurs=>:unbounded, :name=>:applied_labels, :min_occurs=>0}, {:type=>"string", :max_occurs=>1, :name=>:creative_type, :min_occurs=>0}], :abstract=>true}, :ImageRedirectCreative=>{:fields=>[], :base=>"BaseImageRedirectCreative"}, :ClickTrackingCreative=>{:fields=>[{:type=>"string", :max_occurs=>1, :name=>:click_tracking_url, :min_occurs=>0}], :base=>"Creative"}, :Authentication=>{:fields=>[{:type=>"string", :max_occurs=>1, :name=>:authentication_type, :min_occurs=>0}], :abstract=>true}, :AppliedLabel=>{:fields=>[{:type=>"long", :max_occurs=>1, :name=>:label_id, :min_occurs=>0}, {:type=>"boolean", :max_occurs=>1, :name=>:is_negated, :min_occurs=>0}]}, :OAuth=>{:fields=>[{:type=>"string", :max_occurs=>1, :name=>:parameters, :min_occurs=>0}], :base=>"Authentication"}, :CreativePage=>{:fields=>[{:type=>"int", :max_occurs=>1, :name=>:total_result_set_size, :min_occurs=>0}, {:type=>"int", :max_occurs=>1, :name=>:start_index, :min_occurs=>0}, {:type=>"Creative", :max_occurs=>:unbounded, :name=>:results, :min_occurs=>0}]}, :ThirdPartyCreative=>{:fields=>[{:type=>"string", :max_occurs=>1, :name=>:snippet, :min_occurs=>0}, {:type=>"string", :max_occurs=>1, :name=>:expanded_snippet, :min_occurs=>0}], :base=>"Creative"}, :BooleanValue=>{:fields=>[{:type=>"boolean", :max_occurs=>1, :name=>:value, :min_occurs=>0}], :base=>"Value"}, :BaseFlashCreative=>{:fields=>[{:type=>"string", :max_occurs=>1, :name=>:flash_name, :min_occurs=>0}, {:type=>"base64Binary", :max_occurs=>1, :name=>:flash_byte_array, :min_occurs=>0}, {:type=>"string", :max_occurs=>1, :name=>:fallback_image_name, :min_occurs=>0}, {:type=>"base64Binary", :max_occurs=>1, :name=>:fallback_image_byte_array, :min_occurs=>0}, {:type=>"boolean", :max_occurs=>1, :name=>:override_size, :min_occurs=>0}, {:type=>"boolean", :max_occurs=>1, :name=>:click_tag_required, :min_occurs=>0}, {:type=>"string", :max_occurs=>1, :name=>:fallback_preview_url, :min_occurs=>0}, {:type=>"Size", :max_occurs=>1, :name=>:flash_asset_size, :min_occurs=>0}, {:type=>"Size", :max_occurs=>1, :name=>:fallback_asset_size, :min_occurs=>0}], :abstract=>true, :base=>"HasDestinationUrlCreative"}, :Value=>{:fields=>[{:type=>"string", :max_occurs=>1, :name=>:value_type, :min_occurs=>0}], :abstract=>true}, :Size=>{:fields=>[{:type=>"int", :max_occurs=>1, :name=>:width, :min_occurs=>0}, {:type=>"int", :max_occurs=>1, :name=>:height, :min_occurs=>0}, {:type=>"boolean", :max_occurs=>1, :name=>:is_aspect_ratio, :min_occurs=>0}]}, :FlashCreative=>{:fields=>[], :base=>"BaseFlashCreative"}, :SoapRequestHeader=>{:fields=>[{:type=>"string", :max_occurs=>1, :name=>:network_code, :min_occurs=>0}, {:type=>"string", :max_occurs=>1, :name=>:application_name, :min_occurs=>0}, {:type=>"Authentication", :max_occurs=>1, :name=>:authentication, :min_occurs=>0}]}, :ClientLogin=>{:fields=>[{:type=>"string", :max_occurs=>1, :name=>:token, :min_occurs=>0}], :base=>"Authentication"}, :BaseFlashRedirectCreative=>{:fields=>[{:type=>"string", :max_occurs=>1, :name=>:flash_url, :min_occurs=>0}, {:type=>"string", :max_occurs=>1, :name=>:fallback_url, :min_occurs=>0}, {:type=>"string", :max_occurs=>1, :name=>:fallback_preview_url, :min_occurs=>0}], :abstract=>true, :base=>"HasDestinationUrlCreative"}, :TextValue=>{:fields=>[{:type=>"string", :max_occurs=>1, :name=>:value, :min_occurs=>0}], :base=>"Value"}, :FlashRedirectCreative=>{:fields=>[], :base=>"BaseFlashRedirectCreative"}}
12
+ CREATIVESERVICE_NAMESPACES = []
13
+
14
+ def self.get_method_signature(method_name)
15
+ return CREATIVESERVICE_METHODS[method_name.to_sym]
16
+ end
17
+
18
+ def self.get_type_signature(type_name)
19
+ return CREATIVESERVICE_TYPES[type_name.to_sym]
20
+ end
21
+
22
+ def self.get_namespace(index)
23
+ return CREATIVESERVICE_NAMESPACES[index]
24
+ end
25
+ end
26
+
27
+ # Base class for exceptions.
28
+ class ApplicationException < DfpApi::Errors::ApiException
29
+ attr_reader :message # string
30
+ attr_reader :application_exception_type # string
31
+ end
32
+
33
+ # Exception class for holding a list of service errors.
34
+ class ApiException < ApplicationException
35
+ attr_reader :errors # ApiError
36
+ def initialize(exception_fault)
37
+ @array_fields ||= []
38
+ @array_fields << 'errors'
39
+ super(exception_fault)
40
+ end
41
+ end
42
+ end; end; end
@@ -0,0 +1,60 @@
1
+ #!/usr/bin/ruby
2
+ # This is auto-generated code, changes will be overwritten.
3
+ # Copyright:: Copyright 2011, Google Inc. All Rights Reserved.
4
+ # License:: Licensed under the Apache License,Version 2.0 (the "License").
5
+ #
6
+ # Code generated by AdsCommon library 0.5.0 on 2011-08-03 17:27:33.
7
+
8
+ require 'ads_common/savon_service'
9
+ require 'dfp_api/v201107/custom_targeting_service_registry'
10
+
11
+ module DfpApi; module V201107; module CustomTargetingService
12
+ class CustomTargetingService < AdsCommon::SavonService
13
+ def initialize(api, endpoint)
14
+ namespace = 'https://www.google.com/apis/ads/publisher/v201107'
15
+ super(api, endpoint, namespace, :v201107)
16
+ end
17
+
18
+ def perform_custom_targeting_key_action(*args)
19
+ return execute_action('perform_custom_targeting_key_action', args)
20
+ end
21
+
22
+ def perform_custom_targeting_value_action(*args)
23
+ return execute_action('perform_custom_targeting_value_action', args)
24
+ end
25
+
26
+ def create_custom_targeting_keys(*args)
27
+ return execute_action('create_custom_targeting_keys', args)
28
+ end
29
+
30
+ def update_custom_targeting_keys(*args)
31
+ return execute_action('update_custom_targeting_keys', args)
32
+ end
33
+
34
+ def create_custom_targeting_values(*args)
35
+ return execute_action('create_custom_targeting_values', args)
36
+ end
37
+
38
+ def update_custom_targeting_values(*args)
39
+ return execute_action('update_custom_targeting_values', args)
40
+ end
41
+
42
+ def get_custom_targeting_keys_by_statement(*args)
43
+ return execute_action('get_custom_targeting_keys_by_statement', args)
44
+ end
45
+
46
+ def get_custom_targeting_values_by_statement(*args)
47
+ return execute_action('get_custom_targeting_values_by_statement', args)
48
+ end
49
+
50
+ private
51
+
52
+ def get_service_registry()
53
+ return CustomTargetingServiceRegistry
54
+ end
55
+
56
+ def get_module()
57
+ return DfpApi::V201107::CustomTargetingService
58
+ end
59
+ end
60
+ end; end; end