Skip to content

jplopez/bing-ads-api

Repository files navigation

This project rocks and uses MIT-LICENSE.

This is a very simple, straight use gem for integrating any Rails app with the Bing Ads SOAP Webservices.

Add to your Gemfile

gem 'bing-ads-api'

So far, I’ve just integrated some methods from CampaignManagement, CustomerManagement and Reporting services

In all cases, you must initialize some service object with the authentication options Here’s an example with the CampaignMangement service object

options = {
	:environment => :sandbox,
	:username => "desarrollo_neonline",
	:password => "neonline2013",
	:developer_token => "BBD37VB98",
	:customer_id => "21021746",
	:account_id => "5978083"
}
service = BingAdsApi::CampaignManagement.new(options)
  • environment can be one of two values: :sandbox or :production

Example of service object initialization:

options = {
	:environment => :sandbox,
	:username => "desarrollo_neonline",
	:password => "neonline2013",
	:developer_token => "BBD37VB98",
	:customer_id => "21021746",
	:account_id => "5978083"
}
service = BingAdsApi::CampaignManagement.new(options)
account_id = 123456789
campaigns = [
BingAdsApi::Campaign.new(
	:budget_type => BingAdsApi::Campaign::DAILY_BUDGET_STANDARD, 
	:conversion_tracking_enabled => "false",
	:daily_budget => 2000,
	:daylight_saving => "false",
	:description => name + " first description",
	:monthly_budget => 5400,
	:name => name + " first name",
	:status => BingAdsApi::Campaign::PAUSED,
	:time_zone => BingAdsApi::Campaign::SANTIAGO),

BingAdsApi::Campaign.new(
	:budget_type => BingAdsApi::Campaign::DAILY_BUDGET_STANDARD, 
	:conversion_tracking_enabled => "false",
	:daily_budget => 2500,
	:daylight_saving => "false",
	:description => name + " second description",
	:monthly_budget => 7800,
	:name => name + " second name",
	:status => BingAdsApi::Campaign::PAUSED,
	:time_zone => BingAdsApi::Campaign::SANTIAGO) ]
response = service.add_campaigns(account_id, campaigns)

In some cases the methods will return a Hash with the ‘response’ tag according to the method invoked. Like the example above.

In other cases, like this next example, the method will return an object, like an array or a object representation of the hash

campaigns = service.get_campaigns_by_account_id(123456789)
# => campaigns is an array of BingAdsApi::Campaign

Example of service object initialization:

options = {
	:environment => :sandbox,
	:username => "desarrollo_neonline",
	:password => "neonline2013",
	:developer_token => "BBD37VB98",
	:customer_id => "21021746",
	:account_id => "5978083"
}
service = BingAdsApi::CustomerManagement.new(options)
accounts = service.get_accounts_info
# => accounts is an array of BingAdsApi::AccountsInfo

For this method you can also specify a diferent customer id

accounts = service.get_accounts_info(12345)
# => accounts is an array of BingAdsApi::AccountsInfo

That would give you the customer’s 12345 accounts

About

Simple Ruby API for the Bing Ads SOAP Webservices

Resources

License

Stars

Watchers

Forks

Packages

No packages published