The Microsoft Advertising (Bing Ads) data source connector supports the extraction of either campaign entity data or various types of available reports. In the case of reports, you can specify your own set of columns and the primary key to use in Keboola Storage, but there are also presets of columns and appropriate primary keys available.
Have your Bing Ads Account ID and Customer ID ready. Please
follow this part of the official documentation.
Both should be numbers in the format of 391827251
.
Create a new configuration of the Microsoft Advertising (Bing Ads) connector.
First log into your account using the Authorize Account button in the Keboola interface.
Then open the global configuration:
Enter your Account ID and Customer ID into the component’s global configuration, as shown in the screenshot below. Don’t forget to save the configuration.
Now you can configure the reports to extract as configuration rows. First, click Add Row:
Next, select the object type:
The rest of the configuration depends on which Object Type is selected.
This part of row configuration only becomes available if Report (Prebuilt)
is selected as the Object Type. Here
you must set these options:
Daily
and Hourly
aggregation is available.This part of row configuration only becomes available if Report (Custom)
is selected as the Object Type. Here you
must set these options:
columns
field. We recommend using dimension columns only and using ID columns
where possible to avoid ambiguity in case the dimension name is changed.For reporting, it is possible to define the required time range. It can be either a fixed date or a relative period.
Incremental fetching (true deltas) can be achieved by setting the Date From
to the last run
value, which sets the reporting
period to cover the time since last extraction. Make sure to set the Destination Load Type
to Incremental Load
to
collect historical data.
Parameters
CustomTimeRange
you will also need to provide the
following 2 parameters:5 days ago
, 1 month ago
, yesterday
, etc. You can also enter last run
to start the reporting period at the
time of last extraction (this cannot be done in case of the first run for obvious reasons).5 days ago
, 1 month ago
, yesterday
, etc.This is useful for getting additional information about your campaigns or other entities. However, note that in most cases it may be more convenient to include entity related columns in the report itself.
To download entities, select Entity
Object Type and configure the following options:
EntityData
data scope
is supported. More information is available in
the official documentation
.Finally, you must set how the extracted data will be saved in Keboola Storage.
Once again, don’t forget to save.
Let’s say you want to download an AdGroupPerformance report
with the preset columns and a primary key
and upsert the data into a table called AdGroupPerformance_Daily_Report
. In that case, you would:
Report (Prebuilt)
,AdGroupPerformance
,Daily
,ThisYear
,ThisYear
as the reporting period, not all data is
available), andIncremental Load
.If needed, you can also change the Report Time Zone, of course. We can leave Storage Table Name empty since we
want the default table name of AdGroupPerformance_Daily_Report
, but you can set your custom Storage Table Name if
needed.
The output of every configuration row is always a single table in the Keboola Storage. If you specify the Storage Table Name in the destination configuration, this name is used; otherwise, a default name is generated as specified below.
When extracting campaign entity data (i.e., when the Object Type in the row configuration is set to Entity
), the default name of
the Keboola Storage output table is entities
.
Note: Due to the API behaviour, the output table will always contain all 418 columns that are available for all entity types, even though the entity is not selected for download. Columns relevant to unselected types will be empty.
When extracting report data (i.e., when Object Type in row config is set to Report (Prebuilt)
), the output table
schema depends on which report preset is specified in the Preset Name row configuration parameter and the chosen
aggregation in the Aggregation parameter. You can see which columns are extracted for each combination of Preset Name and
Aggregation here.
The default table name is constructed as {preset_name}_{aggregation}_Report
, where {preset_name}
is the Preset
Name parameter value and {aggregation}
is the value of the Aggregation parameter.
When extracting report data (i.e., when Object Type in row config is set to Report (Custom)
), the output table schema
depends on the columns set in the Columns parameter. The default table name is constructed as {report_type}_Report
,
where {report_type}
is the Report Type parameter value specified in the row configuration.