The StarThinker project will no longer receive new solution contributions from the Google team.
Please read the full StarThinker Open Source Support Ends At Google article for more details.
Deploy a BigQuery dataset mirroring DV360 account structure. Foundation for solutions on top.
Spend Optimization |
|
Spend Growth |
|
Time Savings |
|
Account Health |
|
Csat Improvement |
|
Mirror all DV360 account configuration in BigQuery. |
Attach any number of dashboards, views, or automations on top. |
Whatever access the user or service has, thats whats in the warehouse. |
Updates on whatever schedule you set. |
Wait for BigQuery->->->... to be created. |
Every table mimics the DV360 API Endpoints. |
Open Source | YES |
Age | March 22, 2021 (1 year, 9 months) |
Authors | kenjora@google.com |
Shedule Days | Configured by user. |
Shedule Hours | Configured by user. |
[
{
"dataset": {
"description": "Create a dataset for bigquery tables.",
"auth": {
"field": {
"name": "auth_bigquery",
"kind": "authentication",
"order": 1,
"default": "service",
"description": "Credentials used for writing data."
}
},
"dataset": {
"field": {
"name": "recipe_slug",
"kind": "string",
"description": "Place where tables will be created in BigQuery."
}
}
}
},
{
"google_api": {
"auth": {
"field": {
"name": "auth_dv",
"kind": "authentication",
"order": 1,
"default": "service",
"description": "Credentials used for reading data."
}
},
"api": "displayvideo",
"version": "v1",
"function": "partners.get",
"kwargs_remote": {
"bigquery": {
"auth": {
"field": {
"name": "auth_bigquery",
"kind": "authentication",
"order": 1,
"default": "service",
"description": "Credentials used for writing data."
}
},
"dataset": {
"field": {
"name": "recipe_slug",
"kind": "string",
"description": "Place where tables will be created in BigQuery."
}
},
"legacy": false,
"query": "SELECT CAST(partnerId AS STRING) partnerId FROM (SELECT DISTINCT * FROM UNNEST({partners}) AS partnerId)",
"parameters": {
"partners": {
"field": {
"name": "partners",
"kind": "integer_list",
"order": 4,
"default": [],
"description": "List of account ids to pull."
}
}
}
}
},
"iterate": false,
"results": {
"bigquery": {
"auth": {
"field": {
"name": "auth_bigquery",
"kind": "authentication",
"order": 1,
"default": "service",
"description": "Credentials used for writing data."
}
},
"dataset": {
"field": {
"name": "recipe_slug",
"kind": "string",
"order": 4,
"default": "",
"description": "Name of Google BigQuery dataset to create."
}
},
"table": "DV360_Partners"
}
}
}
},
{
"google_api": {
"auth": {
"field": {
"name": "auth_dv",
"kind": "authentication",
"order": 1,
"default": "service",
"description": "Credentials used for reading data."
}
},
"api": "displayvideo",
"version": "v1",
"function": "advertisers.list",
"kwargs_remote": {
"bigquery": {
"auth": {
"field": {
"name": "auth_bigquery",
"kind": "authentication",
"order": 3,
"default": "service",
"description": "Credentials to use for BigQuery reads and writes."
}
},
"dataset": {
"field": {
"name": "recipe_slug",
"kind": "string",
"order": 0,
"default": "",
"description": "Google BigQuery dataset to create tables in."
}
},
"query": "SELECT DISTINCT CAST(partnerId AS STRING) partnerId FROM `DV360_Partners`",
"legacy": false
}
},
"iterate": true,
"results": {
"bigquery": {
"auth": {
"field": {
"name": "auth_bigquery",
"kind": "authentication",
"order": 1,
"default": "service",
"description": "Credentials used for writing data."
}
},
"dataset": {
"field": {
"name": "recipe_slug",
"kind": "string",
"order": 4,
"default": "",
"description": "Name of Google BigQuery dataset to create."
}
},
"table": "DV360_Advertisers"
}
}
}
},
{
"google_api": {
"auth": {
"field": {
"name": "auth_dv",
"kind": "authentication",
"order": 1,
"default": "service",
"description": "Credentials used for reading data."
}
},
"api": "displayvideo",
"version": "v1",
"function": "advertisers.insertionOrders.list",
"kwargs_remote": {
"bigquery": {
"auth": {
"field": {
"name": "auth_bigquery",
"kind": "authentication",
"order": 3,
"default": "service",
"description": "Credentials to use for BigQuery reads and writes."
}
},
"dataset": {
"field": {
"name": "recipe_slug",
"kind": "string",
"order": 0,
"default": "",
"description": "Google BigQuery dataset to create tables in."
}
},
"query": "SELECT DISTINCT CAST(advertiserId AS STRING) AS advertiserId FROM `DV360_Advertisers`",
"legacy": false
}
},
"iterate": true,
"results": {
"bigquery": {
"auth": {
"field": {
"name": "auth_bigquery",
"kind": "authentication",
"order": 1,
"default": "service",
"description": "Credentials used for writing data."
}
},
"dataset": {
"field": {
"name": "recipe_slug",
"kind": "string",
"order": 4,
"default": "",
"description": "Name of Google BigQuery dataset to create."
}
},
"table": "DV360_InsertionOrders"
}
}
}
},
{
"google_api": {
"auth": {
"field": {
"name": "auth_dv",
"kind": "authentication",
"order": 1,
"default": "service",
"description": "Credentials used for reading data."
}
},
"api": "displayvideo",
"version": "v1",
"function": "advertisers.lineItems.list",
"kwargs_remote": {
"bigquery": {
"auth": {
"field": {
"name": "auth_bigquery",
"kind": "authentication",
"order": 3,
"default": "service",
"description": "Credentials to use for BigQuery reads and writes."
}
},
"dataset": {
"field": {
"name": "recipe_slug",
"kind": "string",
"order": 0,
"default": "",
"description": "Google BigQuery dataset to create tables in."
}
},
"query": "SELECT DISTINCT CAST(advertiserId AS STRING) AS advertiserId FROM `DV360_Advertisers`",
"legacy": false
}
},
"iterate": true,
"results": {
"bigquery": {
"auth": {
"field": {
"name": "auth_bigquery",
"kind": "authentication",
"order": 1,
"default": "service",
"description": "Credentials used for writing data."
}
},
"dataset": {
"field": {
"name": "recipe_slug",
"kind": "string",
"order": 4,
"default": "",
"description": "Name of Google BigQuery dataset to create."
}
},
"table": "DV360_LineItems"
}
}
}
},
{
"google_api": {
"auth": {
"field": {
"name": "auth_dv",
"kind": "authentication",
"order": 1,
"default": "service",
"description": "Credentials used for reading data."
}
},
"api": "displayvideo",
"version": "v1",
"function": "advertisers.campaigns.list",
"kwargs_remote": {
"bigquery": {
"auth": {
"field": {
"name": "auth_bigquery",
"kind": "authentication",
"order": 3,
"default": "service",
"description": "Credentials to use for BigQuery reads and writes."
}
},
"dataset": {
"field": {
"name": "recipe_slug",
"kind": "string",
"order": 0,
"default": "",
"description": "Google BigQuery dataset to create tables in."
}
},
"query": "SELECT DISTINCT CAST(advertiserId AS STRING) AS advertiserId FROM `DV360_Advertisers`",
"legacy": false
}
},
"iterate": true,
"results": {
"bigquery": {
"auth": {
"field": {
"name": "auth_bigquery",
"kind": "authentication",
"order": 1,
"default": "service",
"description": "Credentials used for writing data."
}
},
"dataset": {
"field": {
"name": "recipe_slug",
"kind": "string",
"order": 4,
"default": "",
"description": "Name of Google BigQuery dataset to create."
}
},
"table": "DV360_Campaigns"
}
}
}
},
{
"google_api": {
"auth": {
"field": {
"name": "auth_dv",
"kind": "authentication",
"order": 1,
"default": "service",
"description": "Credentials used for reading data."
}
},
"api": "displayvideo",
"version": "v1",
"function": "advertisers.channels.list",
"kwargs_remote": {
"bigquery": {
"auth": {
"field": {
"name": "auth_bigquery",
"kind": "authentication",
"order": 3,
"default": "service",
"description": "Credentials to use for BigQuery reads and writes."
}
},
"dataset": {
"field": {
"name": "recipe_slug",
"kind": "string",
"order": 0,
"default": "",
"description": "Google BigQuery dataset to create tables in."
}
},
"query": "SELECT DISTINCT CAST(advertiserId AS STRING) AS advertiserId FROM `DV360_Advertisers`",
"legacy": false
}
},
"iterate": true,
"results": {
"bigquery": {
"auth": {
"field": {
"name": "auth_bigquery",
"kind": "authentication",
"order": 1,
"default": "service",
"description": "Credentials used for writing data."
}
},
"dataset": {
"field": {
"name": "recipe_slug",
"kind": "string",
"order": 4,
"default": "",
"description": "Name of Google BigQuery dataset to create."
}
},
"table": "DV360_Channels"
}
}
}
},
{
"google_api": {
"auth": {
"field": {
"name": "auth_dv",
"kind": "authentication",
"order": 1,
"default": "service",
"description": "Credentials used for reading data."
}
},
"api": "displayvideo",
"version": "v1",
"function": "advertisers.creatives.list",
"kwargs_remote": {
"bigquery": {
"auth": {
"field": {
"name": "auth_bigquery",
"kind": "authentication",
"order": 3,
"default": "service",
"description": "Credentials to use for BigQuery reads and writes."
}
},
"dataset": {
"field": {
"name": "recipe_slug",
"kind": "string",
"order": 0,
"default": "",
"description": "Google BigQuery dataset to create tables in."
}
},
"query": "SELECT DISTINCT CAST(advertiserId AS STRING) AS advertiserId FROM `DV360_Advertisers`",
"legacy": false
}
},
"iterate": true,
"results": {
"bigquery": {
"auth": {
"field": {
"name": "auth_bigquery",
"kind": "authentication",
"order": 1,
"default": "service",
"description": "Credentials used for writing data."
}
},
"dataset": {
"field": {
"name": "recipe_slug",
"kind": "string",
"order": 4,
"default": "",
"description": "Name of Google BigQuery dataset to create."
}
},
"table": "DV360_Creatives"
}
}
}
},
{
"google_api": {
"auth": {
"field": {
"name": "auth_dv",
"kind": "authentication",
"order": 1,
"default": "service",
"description": "Credentials used for reading data."
}
},
"api": "displayvideo",
"version": "v1",
"function": "inventorySources.list",
"kwargs_remote": {
"bigquery": {
"auth": {
"field": {
"name": "auth_bigquery",
"kind": "authentication",
"order": 3,
"default": "service",
"description": "Credentials to use for BigQuery reads and writes."
}
},
"dataset": {
"field": {
"name": "recipe_slug",
"kind": "string",
"order": 0,
"default": "",
"description": "Google BigQuery dataset to create tables in."
}
},
"query": "SELECT DISTINCT CAST(advertiserId AS STRING) AS advertiserId FROM `DV360_Advertisers`",
"legacy": false
}
},
"iterate": true,
"results": {
"bigquery": {
"auth": {
"field": {
"name": "auth_bigquery",
"kind": "authentication",
"order": 1,
"default": "service",
"description": "Credentials used for writing data."
}
},
"dataset": {
"field": {
"name": "recipe_slug",
"kind": "string",
"order": 4,
"default": "",
"description": "Name of Google BigQuery dataset to create."
}
},
"table": "DV360_Inventory_Sources"
}
}
}
},
{
"google_api": {
"auth": {
"field": {
"name": "auth_dv",
"kind": "authentication",
"order": 1,
"default": "service",
"description": "Credentials used for reading data."
}
},
"api": "displayvideo",
"version": "v1",
"function": "googleAudiences.list",
"kwargs_remote": {
"bigquery": {
"auth": {
"field": {
"name": "auth_bigquery",
"kind": "authentication",
"order": 3,
"default": "service",
"description": "Credentials to use for BigQuery reads and writes."
}
},
"dataset": {
"field": {
"name": "recipe_slug",
"kind": "string",
"order": 0,
"default": "",
"description": "Google BigQuery dataset to create tables in."
}
},
"query": "SELECT DISTINCT CAST(advertiserId AS STRING) AS advertiserId FROM `DV360_Advertisers`",
"legacy": false
}
},
"iterate": true,
"results": {
"bigquery": {
"auth": {
"field": {
"name": "auth_bigquery",
"kind": "authentication",
"order": 1,
"default": "service",
"description": "Credentials used for writing data."
}
},
"dataset": {
"field": {
"name": "recipe_slug",
"kind": "string",
"order": 4,
"default": "",
"description": "Name of Google BigQuery dataset to create."
}
},
"table": "DV360_Google_Audiences"
}
}
}
},
{
"google_api": {
"auth": {
"field": {
"name": "auth_dv",
"kind": "authentication",
"order": 1,
"default": "service",
"description": "Credentials used for reading data."
}
},
"api": "displayvideo",
"version": "v1",
"function": "combinedAudiences.list",
"kwargs_remote": {
"bigquery": {
"auth": {
"field": {
"name": "auth_bigquery",
"kind": "authentication",
"order": 3,
"default": "service",
"description": "Credentials to use for BigQuery reads and writes."
}
},
"dataset": {
"field": {
"name": "recipe_slug",
"kind": "string",
"order": 0,
"default": "",
"description": "Google BigQuery dataset to create tables in."
}
},
"query": "SELECT DISTINCT CAST(advertiserId AS STRING) AS advertiserId FROM `DV360_Advertisers`",
"legacy": false
}
},
"iterate": true,
"results": {
"bigquery": {
"auth": {
"field": {
"name": "auth_bigquery",
"kind": "authentication",
"order": 1,
"default": "service",
"description": "Credentials used for writing data."
}
},
"dataset": {
"field": {
"name": "recipe_slug",
"kind": "string",
"order": 4,
"default": "",
"description": "Name of Google BigQuery dataset to create."
}
},
"table": "DV360_Combined_Audiences"
}
}
}
}
]
Everything from a quick Google Cloud UI to reference developer code for your team in one GitHub repository.