From 4df1b8f85df62e85704ba35ad17215a1a211c558 Mon Sep 17 00:00:00 2001
From: fivetran-catfritz <111930712+fivetran-catfritz@users.noreply.github.com>
Date: Wed, 30 Aug 2023 16:49:20 -0500
Subject: [PATCH 01/19] MagicBot/add-union-schema updates
---
CHANGELOG.md | 10 ++++++++++
README.md | 12 ++++++++++++
dbt_project.yml | 2 +-
integration_tests/dbt_project.yml | 2 +-
models/src_linkedin.yml | 2 +-
models/stg_linkedin.yml | 18 ++++++++++++++++++
models/stg_linkedin_ads__account_history.sql | 10 +++++++++-
..._linkedin_ads__ad_analytics_by_campaign.sql | 8 ++++++++
..._linkedin_ads__ad_analytics_by_creative.sql | 8 ++++++++
...tg_linkedin_ads__campaign_group_history.sql | 10 +++++++++-
models/stg_linkedin_ads__campaign_history.sql | 10 +++++++++-
models/stg_linkedin_ads__creative_history.sql | 10 +++++++++-
.../stg_linkedin_ads__account_history_tmp.sql | 16 ++++++++++++++--
...kedin_ads__ad_analytics_by_campaign_tmp.sql | 16 ++++++++++++++--
...kedin_ads__ad_analytics_by_creative_tmp.sql | 16 ++++++++++++++--
...inkedin_ads__campaign_group_history_tmp.sql | 16 ++++++++++++++--
.../stg_linkedin_ads__campaign_history_tmp.sql | 16 ++++++++++++++--
.../stg_linkedin_ads__creative_history_tmp.sql | 16 ++++++++++++++--
18 files changed, 179 insertions(+), 19 deletions(-)
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 418333a..6640ec1 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,13 @@
+# dbt_linkedin_source v0.8.0
+[PR #54](https://github.com/fivetran/dbt_linkedin_source/pull/54) includes the following updates:
+## Feature update 🎉
+- Unioning capability! This adds the ability to union source data from multiple linkedin connectors. Refer to the [README](https://github.com/fivetran/dbt_linkedin_source/blob/main/README.md) for more details.
+
+## Under the hood 🚘
+- Updated tmp models to union source data using the `fivetran_utils.union_data` macro.
+- To distinguish which source each field comes from, added `source_relation` column in each staging model and applied the `fivetran_utils.source_relation` macro.
+- Updated tests to account for the new `source_relation` column.
+
# dbt_linkedin_source v0.UPDATE.UPDATE
## Under the Hood:
diff --git a/README.md b/README.md
index de6962c..46d5951 100644
--- a/README.md
+++ b/README.md
@@ -63,6 +63,18 @@ vars:
## (Optional) Step 4: Additional configurations
"+e+"Expand for configurations
+### Union multiple connectors
+If you have multiple linkedin connectors in Fivetran and would like to use this package on all of them simultaneously, we have provided functionality to do so. The package will union all of the data together and pass the unioned table into the transformations. You will be able to see which source it came from in the `source_relation` column of each model. To use this functionality, you will need to set either the `linkedin_union_schemas` OR `linkedin_union_databases` variables (cannot do both) in your root `dbt_project.yml` file:
+
+```yml
+vars:
+ linkedin_union_schemas: ['linkedin_usa','linkedin_canada'] # use this if the data is in different schemas/datasets of the same database/project
+ linkedin_union_databases: ['linkedin_usa','linkedin_canada'] # use this if the data is in different databases/projects but uses the same schema name
+```
+Please be aware that the native `source.yml` connection set up in the package will not function when the union schema/database feature is utilized. Although the data will be correctly combined, you will not observe the sources linked to the package models in the Directed Acyclic Graph (DAG). This happens because the package includes only one defined `source.yml`.
+
+To connect your multiple schema/database sources to the package models, follow the steps outlined in the [Union Data Defined Sources Configuration](https://github.com/fivetran/dbt_fivetran_utils/tree/releases/v0.4.latest#union_data-source) section of the Fivetran Utils documentation for the union_data macro. This will ensure a proper configuration and correct visualization of connections in the DAG.
+
### Switching to Local Currency
Additionally, the package allows you to select whether you want to add in costs in USD or the local currency of the ad. By default, the package uses USD. If you would like to have costs in the local currency, add the following variable to your `dbt_project.yml` file:
diff --git a/dbt_project.yml b/dbt_project.yml
index 92c74b3..f92de09 100644
--- a/dbt_project.yml
+++ b/dbt_project.yml
@@ -1,5 +1,5 @@
name: 'linkedin_source'
-version: '0.7.0'
+version: '0.8.0'
config-version: 2
require-dbt-version: [">=1.3.0", "<2.0.0"]
models:
diff --git a/integration_tests/dbt_project.yml b/integration_tests/dbt_project.yml
index 9fc3541..4537309 100644
--- a/integration_tests/dbt_project.yml
+++ b/integration_tests/dbt_project.yml
@@ -1,5 +1,5 @@
name: 'linkedin_source_integration_tests'
-version: '0.7.0'
+version: '0.8.0'
profile: 'integration_tests'
config-version: 2
diff --git a/models/src_linkedin.yml b/models/src_linkedin.yml
index 427f9bc..476be09 100644
--- a/models/src_linkedin.yml
+++ b/models/src_linkedin.yml
@@ -1,7 +1,7 @@
version: 2
sources:
- - name: linkedin
+ - name: linkedin # This source will only be used if you are using a single linkedin source connector. If multiple sources are being unioned, their tables will be directly referenced via adapter.get_relation.
schema: "{{ var('linkedin_ads_schema', 'linkedin_ads') }}"
database: "{% if target.type != 'spark'%}{{ var('linkedin_ads_database', target.database) }}{% endif %}"
diff --git a/models/stg_linkedin.yml b/models/stg_linkedin.yml
index 6422fab..2997173 100644
--- a/models/stg_linkedin.yml
+++ b/models/stg_linkedin.yml
@@ -1,3 +1,4 @@
+UPDATE TESTS!!! (delete line when done.)
version: 2
models:
@@ -7,9 +8,12 @@ models:
tests:
- dbt_utils.unique_combination_of_columns:
combination_of_columns:
+ - source_relation
- date_day
- creative_id
columns:
+ - name: source_relation
+ description: "{{ doc('source_relation') }}"
- name: creative_id
description: The ID of the related creative.
tests:
@@ -34,9 +38,12 @@ models:
tests:
- dbt_utils.unique_combination_of_columns:
combination_of_columns:
+ - source_relation
- date_day
- campaign_id
columns:
+ - name: source_relation
+ description: "{{ doc('source_relation') }}"
- name: campaign_id
description: The ID of the related creative.
tests:
@@ -59,6 +66,8 @@ models:
- name: stg_linkedin_ads__creative_history
description: Each record represents a 'version' of a creative.
columns:
+ - name: source_relation
+ description: "{{ doc('source_relation') }}"
- name: creative_id
description: Unique internal ID representing the creative.
tests:
@@ -118,9 +127,12 @@ models:
tests:
- dbt_utils.unique_combination_of_columns:
combination_of_columns:
+ - source_relation
- version_tag
- campaign_id
columns:
+ - name: source_relation
+ description: "{{ doc('source_relation') }}"
- name: campaign_id
description: Unique internal ID representing the campaign.
tests:
@@ -238,9 +250,12 @@ models:
tests:
- dbt_utils.unique_combination_of_columns:
combination_of_columns:
+ - source_relation
- last_modified_at
- campaign_group_id
columns:
+ - name: source_relation
+ description: "{{ doc('source_relation') }}"
- name: campaign_group_id
description: Unique internal ID representing the campaign group.
tests:
@@ -288,9 +303,12 @@ models:
tests:
- dbt_utils.unique_combination_of_columns:
combination_of_columns:
+ - source_relation
- account_id
- version_tag
columns:
+ - name: source_relation
+ description: "{{ doc('source_relation') }}"
- name: account_id
description: Unique internal ID representing the account.
tests:
diff --git a/models/stg_linkedin_ads__account_history.sql b/models/stg_linkedin_ads__account_history.sql
index 9670b98..68fd4b6 100644
--- a/models/stg_linkedin_ads__account_history.sql
+++ b/models/stg_linkedin_ads__account_history.sql
@@ -1,3 +1,5 @@
+ADD source_relation WHERE NEEDED + CHECK JOINS AND WINDOW FUNCTIONS! (Delete this line when done.)
+
{{ config(enabled=var('ad_reporting__linkedin_ads_enabled', True)) }}
with base as (
@@ -14,6 +16,12 @@ with base as (
staging_columns=get_account_history_columns()
)
}}
+
+ {{ fivetran_utils.source_relation(
+ union_schema_variable='linkedin_union_schemas',
+ union_database_variable='linkedin_union_databases')
+ }}
+
from base
), fields as (
@@ -27,7 +35,7 @@ with base as (
type,
cast(last_modified_time as {{ dbt.type_timestamp() }}) as last_modified_at,
cast(created_time as {{ dbt.type_timestamp() }}) as created_at,
- row_number() over (partition by id order by last_modified_time desc) = 1 as is_latest_version
+ row_number() over (partition by source_relation, id order by last_modified_time desc) = 1 as is_latest_version
from macro
diff --git a/models/stg_linkedin_ads__ad_analytics_by_campaign.sql b/models/stg_linkedin_ads__ad_analytics_by_campaign.sql
index f87dee4..406cded 100644
--- a/models/stg_linkedin_ads__ad_analytics_by_campaign.sql
+++ b/models/stg_linkedin_ads__ad_analytics_by_campaign.sql
@@ -1,3 +1,5 @@
+ADD source_relation WHERE NEEDED + CHECK JOINS AND WINDOW FUNCTIONS! (Delete this line when done.)
+
{{ config(enabled=var('ad_reporting__linkedin_ads_enabled', True)) }}
with base as (
@@ -15,6 +17,12 @@ macro as (
staging_columns=get_ad_analytics_by_campaign_columns()
)
}}
+
+ {{ fivetran_utils.source_relation(
+ union_schema_variable='linkedin_union_schemas',
+ union_database_variable='linkedin_union_databases')
+ }}
+
from base
),
diff --git a/models/stg_linkedin_ads__ad_analytics_by_creative.sql b/models/stg_linkedin_ads__ad_analytics_by_creative.sql
index 1b5f002..29e3781 100644
--- a/models/stg_linkedin_ads__ad_analytics_by_creative.sql
+++ b/models/stg_linkedin_ads__ad_analytics_by_creative.sql
@@ -1,3 +1,5 @@
+ADD source_relation WHERE NEEDED + CHECK JOINS AND WINDOW FUNCTIONS! (Delete this line when done.)
+
{{ config(enabled=var('ad_reporting__linkedin_ads_enabled', True)) }}
with base as (
@@ -14,6 +16,12 @@ with base as (
staging_columns=get_ad_analytics_by_creative_columns()
)
}}
+
+ {{ fivetran_utils.source_relation(
+ union_schema_variable='linkedin_union_schemas',
+ union_database_variable='linkedin_union_databases')
+ }}
+
from base
), fields as (
diff --git a/models/stg_linkedin_ads__campaign_group_history.sql b/models/stg_linkedin_ads__campaign_group_history.sql
index 660de75..57cf077 100644
--- a/models/stg_linkedin_ads__campaign_group_history.sql
+++ b/models/stg_linkedin_ads__campaign_group_history.sql
@@ -1,3 +1,5 @@
+ADD source_relation WHERE NEEDED + CHECK JOINS AND WINDOW FUNCTIONS! (Delete this line when done.)
+
{{ config(enabled=var('ad_reporting__linkedin_ads_enabled', True)) }}
with base as (
@@ -14,6 +16,12 @@ with base as (
staging_columns=get_campaign_group_history_columns()
)
}}
+
+ {{ fivetran_utils.source_relation(
+ union_schema_variable='linkedin_union_schemas',
+ union_database_variable='linkedin_union_databases')
+ }}
+
from base
), fields as (
@@ -28,7 +36,7 @@ with base as (
cast(run_schedule_end as {{ dbt.type_timestamp() }}) as run_schedule_end_at,
cast(last_modified_time as {{ dbt.type_timestamp() }}) as last_modified_at,
cast(created_time as {{ dbt.type_timestamp() }}) as created_at,
- row_number() over (partition by id order by last_modified_time desc) = 1 as is_latest_version
+ row_number() over (partition by source_relation, id order by last_modified_time desc) = 1 as is_latest_version
from macro
diff --git a/models/stg_linkedin_ads__campaign_history.sql b/models/stg_linkedin_ads__campaign_history.sql
index 2ce874b..a8fe838 100644
--- a/models/stg_linkedin_ads__campaign_history.sql
+++ b/models/stg_linkedin_ads__campaign_history.sql
@@ -1,3 +1,5 @@
+ADD source_relation WHERE NEEDED + CHECK JOINS AND WINDOW FUNCTIONS! (Delete this line when done.)
+
{{ config(enabled=var('ad_reporting__linkedin_ads_enabled', True)) }}
with base as (
@@ -14,6 +16,12 @@ with base as (
staging_columns=get_campaign_history_columns()
)
}}
+
+ {{ fivetran_utils.source_relation(
+ union_schema_variable='linkedin_union_schemas',
+ union_database_variable='linkedin_union_databases')
+ }}
+
from base
), fields as (
@@ -43,7 +51,7 @@ with base as (
cast(run_schedule_end as {{ dbt.type_timestamp() }}) as run_schedule_end_at,
cast(last_modified_time as {{ dbt.type_timestamp() }}) as last_modified_at,
cast(created_time as {{ dbt.type_timestamp() }}) as created_at,
- row_number() over (partition by id order by last_modified_time desc) = 1 as is_latest_version
+ row_number() over (partition by source_relation, id order by last_modified_time desc) = 1 as is_latest_version
from macro
diff --git a/models/stg_linkedin_ads__creative_history.sql b/models/stg_linkedin_ads__creative_history.sql
index 9f0fc3a..a78ac3a 100644
--- a/models/stg_linkedin_ads__creative_history.sql
+++ b/models/stg_linkedin_ads__creative_history.sql
@@ -1,3 +1,5 @@
+ADD source_relation WHERE NEEDED + CHECK JOINS AND WINDOW FUNCTIONS! (Delete this line when done.)
+
{{ config(enabled=var('ad_reporting__linkedin_ads_enabled', True)) }}
with base as (
@@ -14,6 +16,12 @@ with base as (
staging_columns=get_creative_history_columns()
)
}}
+
+ {{ fivetran_utils.source_relation(
+ union_schema_variable='linkedin_union_schemas',
+ union_database_variable='linkedin_union_databases')
+ }}
+
from base
), fields as (
@@ -25,7 +33,7 @@ with base as (
click_uri,
cast(coalesce(last_modified_at, last_modified_time) as {{ dbt.type_timestamp() }}) as last_modified_at,
cast(coalesce(created_at, created_time) as {{ dbt.type_timestamp() }}) as created_at,
- row_number() over (partition by id order by coalesce(last_modified_at, last_modified_time) desc) = 1 as is_latest_version
+ row_number() over (partition by source_relation, id order by coalesce(last_modified_at, last_modified_time) desc) = 1 as is_latest_version
from macro
diff --git a/models/tmp/stg_linkedin_ads__account_history_tmp.sql b/models/tmp/stg_linkedin_ads__account_history_tmp.sql
index 3dd15c0..9313fa1 100644
--- a/models/tmp/stg_linkedin_ads__account_history_tmp.sql
+++ b/models/tmp/stg_linkedin_ads__account_history_tmp.sql
@@ -1,4 +1,16 @@
+ADD source_relation WHERE NEEDED + CHECK JOINS AND WINDOW FUNCTIONS! (Delete this line when done.)
+
{{ config(enabled=var('ad_reporting__linkedin_ads_enabled', True)) }}
-select *
-from {{ var('account_history') }}
\ No newline at end of file
+{{
+ fivetran_utils.union_data(
+ table_identifier='stg_linkedin_ads__account_history',
+ database_variable='linkedin_database',
+ schema_variable='linkedin_schema',
+ default_database=target.database,
+ default_schema='linkedin',
+ default_variable='stg_linkedin_ads__account_history_source',
+ union_schema_variable='linkedin_union_schemas',
+ union_database_variable='linkedin_union_databases'
+ )
+}}
\ No newline at end of file
diff --git a/models/tmp/stg_linkedin_ads__ad_analytics_by_campaign_tmp.sql b/models/tmp/stg_linkedin_ads__ad_analytics_by_campaign_tmp.sql
index 7908921..889295e 100644
--- a/models/tmp/stg_linkedin_ads__ad_analytics_by_campaign_tmp.sql
+++ b/models/tmp/stg_linkedin_ads__ad_analytics_by_campaign_tmp.sql
@@ -1,4 +1,16 @@
+ADD source_relation WHERE NEEDED + CHECK JOINS AND WINDOW FUNCTIONS! (Delete this line when done.)
+
{{ config(enabled=var('ad_reporting__linkedin_ads_enabled', True)) }}
-select *
-from {{ var('ad_analytics_by_campaign') }}
\ No newline at end of file
+{{
+ fivetran_utils.union_data(
+ table_identifier='stg_linkedin_ads__ad_analytics_by_campaign',
+ database_variable='linkedin_database',
+ schema_variable='linkedin_schema',
+ default_database=target.database,
+ default_schema='linkedin',
+ default_variable='stg_linkedin_ads__ad_analytics_by_campaign_source',
+ union_schema_variable='linkedin_union_schemas',
+ union_database_variable='linkedin_union_databases'
+ )
+}}
\ No newline at end of file
diff --git a/models/tmp/stg_linkedin_ads__ad_analytics_by_creative_tmp.sql b/models/tmp/stg_linkedin_ads__ad_analytics_by_creative_tmp.sql
index 1997996..f73d14f 100644
--- a/models/tmp/stg_linkedin_ads__ad_analytics_by_creative_tmp.sql
+++ b/models/tmp/stg_linkedin_ads__ad_analytics_by_creative_tmp.sql
@@ -1,4 +1,16 @@
+ADD source_relation WHERE NEEDED + CHECK JOINS AND WINDOW FUNCTIONS! (Delete this line when done.)
+
{{ config(enabled=var('ad_reporting__linkedin_ads_enabled', True)) }}
-select *
-from {{ var('ad_analytics_by_creative') }}
\ No newline at end of file
+{{
+ fivetran_utils.union_data(
+ table_identifier='stg_linkedin_ads__ad_analytics_by_creative',
+ database_variable='linkedin_database',
+ schema_variable='linkedin_schema',
+ default_database=target.database,
+ default_schema='linkedin',
+ default_variable='stg_linkedin_ads__ad_analytics_by_creative_source',
+ union_schema_variable='linkedin_union_schemas',
+ union_database_variable='linkedin_union_databases'
+ )
+}}
\ No newline at end of file
diff --git a/models/tmp/stg_linkedin_ads__campaign_group_history_tmp.sql b/models/tmp/stg_linkedin_ads__campaign_group_history_tmp.sql
index 4d19ee3..eb99717 100644
--- a/models/tmp/stg_linkedin_ads__campaign_group_history_tmp.sql
+++ b/models/tmp/stg_linkedin_ads__campaign_group_history_tmp.sql
@@ -1,4 +1,16 @@
+ADD source_relation WHERE NEEDED + CHECK JOINS AND WINDOW FUNCTIONS! (Delete this line when done.)
+
{{ config(enabled=var('ad_reporting__linkedin_ads_enabled', True)) }}
-select *
-from {{ var('campaign_group_history') }}
\ No newline at end of file
+{{
+ fivetran_utils.union_data(
+ table_identifier='stg_linkedin_ads__campaign_group_history',
+ database_variable='linkedin_database',
+ schema_variable='linkedin_schema',
+ default_database=target.database,
+ default_schema='linkedin',
+ default_variable='stg_linkedin_ads__campaign_group_history_source',
+ union_schema_variable='linkedin_union_schemas',
+ union_database_variable='linkedin_union_databases'
+ )
+}}
\ No newline at end of file
diff --git a/models/tmp/stg_linkedin_ads__campaign_history_tmp.sql b/models/tmp/stg_linkedin_ads__campaign_history_tmp.sql
index 96c72cb..2b82843 100644
--- a/models/tmp/stg_linkedin_ads__campaign_history_tmp.sql
+++ b/models/tmp/stg_linkedin_ads__campaign_history_tmp.sql
@@ -1,4 +1,16 @@
+ADD source_relation WHERE NEEDED + CHECK JOINS AND WINDOW FUNCTIONS! (Delete this line when done.)
+
{{ config(enabled=var('ad_reporting__linkedin_ads_enabled', True)) }}
-select *
-from {{ var('campaign_history') }}
\ No newline at end of file
+{{
+ fivetran_utils.union_data(
+ table_identifier='stg_linkedin_ads__campaign_history',
+ database_variable='linkedin_database',
+ schema_variable='linkedin_schema',
+ default_database=target.database,
+ default_schema='linkedin',
+ default_variable='stg_linkedin_ads__campaign_history_source',
+ union_schema_variable='linkedin_union_schemas',
+ union_database_variable='linkedin_union_databases'
+ )
+}}
\ No newline at end of file
diff --git a/models/tmp/stg_linkedin_ads__creative_history_tmp.sql b/models/tmp/stg_linkedin_ads__creative_history_tmp.sql
index e8f3950..efee5a0 100644
--- a/models/tmp/stg_linkedin_ads__creative_history_tmp.sql
+++ b/models/tmp/stg_linkedin_ads__creative_history_tmp.sql
@@ -1,4 +1,16 @@
+ADD source_relation WHERE NEEDED + CHECK JOINS AND WINDOW FUNCTIONS! (Delete this line when done.)
+
{{ config(enabled=var('ad_reporting__linkedin_ads_enabled', True)) }}
-select *
-from {{ var('creative_history') }}
\ No newline at end of file
+{{
+ fivetran_utils.union_data(
+ table_identifier='stg_linkedin_ads__creative_history',
+ database_variable='linkedin_database',
+ schema_variable='linkedin_schema',
+ default_database=target.database,
+ default_schema='linkedin',
+ default_variable='stg_linkedin_ads__creative_history_source',
+ union_schema_variable='linkedin_union_schemas',
+ union_database_variable='linkedin_union_databases'
+ )
+}}
\ No newline at end of file
From 64a568ae03bf7ca1418d074ea01ae7c450abb2ca Mon Sep 17 00:00:00 2001
From: fivetran-catfritz <111930712+fivetran-catfritz@users.noreply.github.com>
Date: Fri, 1 Sep 2023 11:31:38 -0500
Subject: [PATCH 02/19] magicbot revisions
---
README.md | 2 +-
docs/catalog.json | 2 +-
docs/index.html | 8 ++++----
docs/manifest.json | 2 +-
docs/run_results.json | 2 +-
models/docs.md | 3 +++
models/stg_linkedin.yml | 9 +++++++--
models/stg_linkedin_ads__account_history.sql | 3 +--
models/stg_linkedin_ads__ad_analytics_by_campaign.sql | 3 +--
models/stg_linkedin_ads__ad_analytics_by_creative.sql | 3 +--
models/stg_linkedin_ads__campaign_group_history.sql | 3 +--
models/stg_linkedin_ads__campaign_history.sql | 3 +--
models/stg_linkedin_ads__creative_history.sql | 3 +--
models/tmp/stg_linkedin_ads__account_history_tmp.sql | 6 ++----
.../stg_linkedin_ads__ad_analytics_by_campaign_tmp.sql | 6 ++----
.../stg_linkedin_ads__ad_analytics_by_creative_tmp.sql | 6 ++----
.../tmp/stg_linkedin_ads__campaign_group_history_tmp.sql | 6 ++----
models/tmp/stg_linkedin_ads__campaign_history_tmp.sql | 6 ++----
models/tmp/stg_linkedin_ads__creative_history_tmp.sql | 6 ++----
19 files changed, 36 insertions(+), 46 deletions(-)
create mode 100644 models/docs.md
diff --git a/README.md b/README.md
index 46d5951..caf06c1 100644
--- a/README.md
+++ b/README.md
@@ -47,7 +47,7 @@ If you are **not** using the [Linkedin transformation package](https://github.c
# packages.yml
packages:
- package: fivetran/linkedin_source
- version: [">=0.7.0", "<0.8.0"]
+ version: [">=0.8.0", "<0.9.0"]
```
## Step 3: Define database and schema variables
diff --git a/docs/catalog.json b/docs/catalog.json
index 1be5a87..027f604 100644
--- a/docs/catalog.json
+++ b/docs/catalog.json
@@ -1 +1 @@
-{"metadata": {"dbt_schema_version": "https://schemas.getdbt.com/dbt/catalog/v1.json", "dbt_version": "1.4.0", "generated_at": "2023-03-20T21:25:35.071363Z", "invocation_id": "f9069083-fc54-4414-a789-e1ab8576e426", "env": {}}, "nodes": {"seed.linkedin_source_integration_tests.linkedin_campaign_group_history_data": {"metadata": {"type": "table", "schema": "linkedin_integration_tests_2", "name": "linkedin_campaign_group_history_data", "database": "dbt-package-testing", "comment": null, "owner": null}, "columns": {"id": {"type": "INT64", "index": 1, "name": "id", "comment": null}, "last_modified_time": {"type": "TIMESTAMP", "index": 2, "name": "last_modified_time", "comment": null}, "account_id": {"type": "INT64", "index": 3, "name": "account_id", "comment": null}, "created_time": {"type": "TIMESTAMP", "index": 4, "name": "created_time", "comment": null}, "name": {"type": "STRING", "index": 5, "name": "name", "comment": null}}, "stats": {"num_bytes": {"id": "num_bytes", "label": "Approximate Size", "value": 232.0, "include": true, "description": "Approximate size of table as reported by BigQuery"}, "num_rows": {"id": "num_rows", "label": "# Rows", "value": 4.0, "include": true, "description": "Approximate count of rows in this table"}, "has_stats": {"id": "has_stats", "label": "Has Stats?", "value": true, "include": false, "description": "Indicates whether there are statistics for this table"}}, "unique_id": "seed.linkedin_source_integration_tests.linkedin_campaign_group_history_data"}, "seed.linkedin_source_integration_tests.linkedin_campaign_history_data": {"metadata": {"type": "table", "schema": "linkedin_integration_tests_2", "name": "linkedin_campaign_history_data", "database": "dbt-package-testing", "comment": null, "owner": null}, "columns": {"id": {"type": "INT64", "index": 1, "name": "id", "comment": null}, "last_modified_time": {"type": "TIMESTAMP", "index": 2, "name": "last_modified_time", "comment": null}, "account_id": {"type": "INT64", "index": 3, "name": "account_id", "comment": null}, "campaign_group_id": {"type": "INT64", "index": 4, "name": "campaign_group_id", "comment": null}, "created_time": {"type": "TIMESTAMP", "index": 5, "name": "created_time", "comment": null}, "name": {"type": "STRING", "index": 6, "name": "name", "comment": null}, "version_tag": {"type": "INT64", "index": 7, "name": "version_tag", "comment": null}}, "stats": {"num_bytes": {"id": "num_bytes", "label": "Approximate Size", "value": 7400.0, "include": true, "description": "Approximate size of table as reported by BigQuery"}, "num_rows": {"id": "num_rows", "label": "# Rows", "value": 100.0, "include": true, "description": "Approximate count of rows in this table"}, "has_stats": {"id": "has_stats", "label": "Has Stats?", "value": true, "include": false, "description": "Indicates whether there are statistics for this table"}}, "unique_id": "seed.linkedin_source_integration_tests.linkedin_campaign_history_data"}, "seed.linkedin_source_integration_tests.linkedin_creative_history_data": {"metadata": {"type": "table", "schema": "linkedin_integration_tests_2", "name": "linkedin_creative_history_data", "database": "dbt-package-testing", "comment": null, "owner": null}, "columns": {"id": {"type": "INT64", "index": 1, "name": "id", "comment": null}, "campaign_id": {"type": "INT64", "index": 2, "name": "campaign_id", "comment": null}, "intended_status": {"type": "STRING", "index": 3, "name": "intended_status", "comment": null}, "click_uri": {"type": "STRING", "index": 4, "name": "click_uri", "comment": null}, "last_modified_at": {"type": "TIMESTAMP", "index": 5, "name": "last_modified_at", "comment": null}, "created_time": {"type": "TIMESTAMP", "index": 6, "name": "created_time", "comment": null}}, "stats": {"num_bytes": {"id": "num_bytes", "label": "Approximate Size", "value": 2400.0, "include": true, "description": "Approximate size of table as reported by BigQuery"}, "num_rows": {"id": "num_rows", "label": "# Rows", "value": 100.0, "include": true, "description": "Approximate count of rows in this table"}, "has_stats": {"id": "has_stats", "label": "Has Stats?", "value": true, "include": false, "description": "Indicates whether there are statistics for this table"}}, "unique_id": "seed.linkedin_source_integration_tests.linkedin_creative_history_data"}, "seed.linkedin_source_integration_tests.linkedin_account_history_data": {"metadata": {"type": "table", "schema": "linkedin_integration_tests_2", "name": "linkedin_account_history_data", "database": "dbt-package-testing", "comment": null, "owner": null}, "columns": {"id": {"type": "INT64", "index": 1, "name": "id", "comment": null}, "last_modified_time": {"type": "TIMESTAMP", "index": 2, "name": "last_modified_time", "comment": null}, "created_time": {"type": "TIMESTAMP", "index": 3, "name": "created_time", "comment": null}, "name": {"type": "STRING", "index": 4, "name": "name", "comment": null}, "currency": {"type": "STRING", "index": 5, "name": "currency", "comment": null}, "version_tag": {"type": "INT64", "index": 6, "name": "version_tag", "comment": null}}, "stats": {"num_bytes": {"id": "num_bytes", "label": "Approximate Size", "value": 882.0, "include": true, "description": "Approximate size of table as reported by BigQuery"}, "num_rows": {"id": "num_rows", "label": "# Rows", "value": 14.0, "include": true, "description": "Approximate count of rows in this table"}, "has_stats": {"id": "has_stats", "label": "Has Stats?", "value": true, "include": false, "description": "Indicates whether there are statistics for this table"}}, "unique_id": "seed.linkedin_source_integration_tests.linkedin_account_history_data"}, "seed.linkedin_source_integration_tests.linkedin_ad_analytics_by_campaign_data": {"metadata": {"type": "table", "schema": "linkedin_integration_tests_2", "name": "linkedin_ad_analytics_by_campaign_data", "database": "dbt-package-testing", "comment": null, "owner": null}, "columns": {"campaign_id": {"type": "INT64", "index": 1, "name": "campaign_id", "comment": null}, "day": {"type": "DATETIME", "index": 2, "name": "day", "comment": null}, "action_clicks": {"type": "INT64", "index": 3, "name": "action_clicks", "comment": null}, "ad_unit_clicks": {"type": "INT64", "index": 4, "name": "ad_unit_clicks", "comment": null}, "approximate_unique_impressions": {"type": "INT64", "index": 5, "name": "approximate_unique_impressions", "comment": null}, "card_clicks": {"type": "INT64", "index": 6, "name": "card_clicks", "comment": null}, "card_impressions": {"type": "INT64", "index": 7, "name": "card_impressions", "comment": null}, "clicks": {"type": "INT64", "index": 8, "name": "clicks", "comment": null}, "comment_likes": {"type": "INT64", "index": 9, "name": "comment_likes", "comment": null}, "comments": {"type": "INT64", "index": 10, "name": "comments", "comment": null}, "company_page_clicks": {"type": "INT64", "index": 11, "name": "company_page_clicks", "comment": null}, "conversion_value_in_local_currency": {"type": "INT64", "index": 12, "name": "conversion_value_in_local_currency", "comment": null}, "cost_in_local_currency": {"type": "FLOAT64", "index": 13, "name": "cost_in_local_currency", "comment": null}, "cost_in_usd": {"type": "FLOAT64", "index": 14, "name": "cost_in_usd", "comment": null}, "external_website_conversions": {"type": "INT64", "index": 15, "name": "external_website_conversions", "comment": null}, "external_website_post_click_conversions": {"type": "INT64", "index": 16, "name": "external_website_post_click_conversions", "comment": null}, "external_website_post_view_conversions": {"type": "INT64", "index": 17, "name": "external_website_post_view_conversions", "comment": null}, "follows": {"type": "INT64", "index": 18, "name": "follows", "comment": null}, "full_screen_plays": {"type": "INT64", "index": 19, "name": "full_screen_plays", "comment": null}, "impressions": {"type": "INT64", "index": 20, "name": "impressions", "comment": null}, "landing_page_clicks": {"type": "INT64", "index": 21, "name": "landing_page_clicks", "comment": null}, "lead_generation_mail_contact_info_shares": {"type": "INT64", "index": 22, "name": "lead_generation_mail_contact_info_shares", "comment": null}, "lead_generation_mail_interested_clicks": {"type": "INT64", "index": 23, "name": "lead_generation_mail_interested_clicks", "comment": null}, "likes": {"type": "INT64", "index": 24, "name": "likes", "comment": null}, "one_click_lead_form_opens": {"type": "INT64", "index": 25, "name": "one_click_lead_form_opens", "comment": null}, "one_click_leads": {"type": "INT64", "index": 26, "name": "one_click_leads", "comment": null}, "opens": {"type": "INT64", "index": 27, "name": "opens", "comment": null}, "other_engagements": {"type": "INT64", "index": 28, "name": "other_engagements", "comment": null}, "shares": {"type": "INT64", "index": 29, "name": "shares", "comment": null}, "text_url_clicks": {"type": "INT64", "index": 30, "name": "text_url_clicks", "comment": null}, "total_engagements": {"type": "INT64", "index": 31, "name": "total_engagements", "comment": null}, "video_completions": {"type": "INT64", "index": 32, "name": "video_completions", "comment": null}, "video_first_quartile_completions": {"type": "INT64", "index": 33, "name": "video_first_quartile_completions", "comment": null}, "video_midpoint_completions": {"type": "INT64", "index": 34, "name": "video_midpoint_completions", "comment": null}, "video_starts": {"type": "INT64", "index": 35, "name": "video_starts", "comment": null}, "video_third_quartile_completions": {"type": "INT64", "index": 36, "name": "video_third_quartile_completions", "comment": null}, "video_views": {"type": "INT64", "index": 37, "name": "video_views", "comment": null}, "viral_card_clicks": {"type": "INT64", "index": 38, "name": "viral_card_clicks", "comment": null}, "viral_card_impressions": {"type": "INT64", "index": 39, "name": "viral_card_impressions", "comment": null}, "viral_clicks": {"type": "INT64", "index": 40, "name": "viral_clicks", "comment": null}, "viral_comment_likes": {"type": "INT64", "index": 41, "name": "viral_comment_likes", "comment": null}, "viral_comments": {"type": "INT64", "index": 42, "name": "viral_comments", "comment": null}, "viral_company_page_clicks": {"type": "INT64", "index": 43, "name": "viral_company_page_clicks", "comment": null}, "viral_external_website_conversions": {"type": "INT64", "index": 44, "name": "viral_external_website_conversions", "comment": null}, "viral_external_website_post_click_conversions": {"type": "INT64", "index": 45, "name": "viral_external_website_post_click_conversions", "comment": null}, "viral_external_website_post_view_conversions": {"type": "INT64", "index": 46, "name": "viral_external_website_post_view_conversions", "comment": null}, "viral_follows": {"type": "INT64", "index": 47, "name": "viral_follows", "comment": null}, "viral_full_screen_plays": {"type": "INT64", "index": 48, "name": "viral_full_screen_plays", "comment": null}, "viral_impressions": {"type": "INT64", "index": 49, "name": "viral_impressions", "comment": null}, "viral_landing_page_clicks": {"type": "INT64", "index": 50, "name": "viral_landing_page_clicks", "comment": null}, "viral_likes": {"type": "INT64", "index": 51, "name": "viral_likes", "comment": null}, "viral_one_click_lead_form_opens": {"type": "INT64", "index": 52, "name": "viral_one_click_lead_form_opens", "comment": null}, "viral_one_click_leads": {"type": "INT64", "index": 53, "name": "viral_one_click_leads", "comment": null}, "viral_other_engagements": {"type": "INT64", "index": 54, "name": "viral_other_engagements", "comment": null}, "viral_shares": {"type": "INT64", "index": 55, "name": "viral_shares", "comment": null}, "viral_total_engagements": {"type": "INT64", "index": 56, "name": "viral_total_engagements", "comment": null}, "viral_video_completions": {"type": "INT64", "index": 57, "name": "viral_video_completions", "comment": null}, "viral_video_first_quartile_completions": {"type": "INT64", "index": 58, "name": "viral_video_first_quartile_completions", "comment": null}, "viral_video_midpoint_completions": {"type": "INT64", "index": 59, "name": "viral_video_midpoint_completions", "comment": null}, "viral_video_starts": {"type": "INT64", "index": 60, "name": "viral_video_starts", "comment": null}, "viral_video_third_quartile_completions": {"type": "INT64", "index": 61, "name": "viral_video_third_quartile_completions", "comment": null}, "viral_video_views": {"type": "INT64", "index": 62, "name": "viral_video_views", "comment": null}}, "stats": {"num_bytes": {"id": "num_bytes", "label": "Approximate Size", "value": 6752.0, "include": true, "description": "Approximate size of table as reported by BigQuery"}, "num_rows": {"id": "num_rows", "label": "# Rows", "value": 20.0, "include": true, "description": "Approximate count of rows in this table"}, "has_stats": {"id": "has_stats", "label": "Has Stats?", "value": true, "include": false, "description": "Indicates whether there are statistics for this table"}}, "unique_id": "seed.linkedin_source_integration_tests.linkedin_ad_analytics_by_campaign_data"}, "seed.linkedin_source_integration_tests.linkedin_ad_analytics_by_creative_data": {"metadata": {"type": "table", "schema": "linkedin_integration_tests_2", "name": "linkedin_ad_analytics_by_creative_data", "database": "dbt-package-testing", "comment": null, "owner": null}, "columns": {"creative_id": {"type": "INT64", "index": 1, "name": "creative_id", "comment": null}, "day": {"type": "TIMESTAMP", "index": 2, "name": "day", "comment": null}, "clicks": {"type": "INT64", "index": 3, "name": "clicks", "comment": null}, "impressions": {"type": "INT64", "index": 4, "name": "impressions", "comment": null}, "cost_in_local_currency": {"type": "INT64", "index": 5, "name": "cost_in_local_currency", "comment": null}, "cost_in_usd": {"type": "INT64", "index": 6, "name": "cost_in_usd", "comment": null}}, "stats": {"num_bytes": {"id": "num_bytes", "label": "Approximate Size", "value": 2968.0, "include": true, "description": "Approximate size of table as reported by BigQuery"}, "num_rows": {"id": "num_rows", "label": "# Rows", "value": 100.0, "include": true, "description": "Approximate count of rows in this table"}, "has_stats": {"id": "has_stats", "label": "Has Stats?", "value": true, "include": false, "description": "Indicates whether there are statistics for this table"}}, "unique_id": "seed.linkedin_source_integration_tests.linkedin_ad_analytics_by_creative_data"}, "model.linkedin_source.stg_linkedin_ads__ad_analytics_by_creative": {"metadata": {"type": "view", "schema": "linkedin_integration_tests_2_linkedin_ads_source", "name": "stg_linkedin_ads__ad_analytics_by_creative", "database": "dbt-package-testing", "comment": null, "owner": null}, "columns": {"date_day": {"type": "TIMESTAMP", "index": 1, "name": "date_day", "comment": null}, "creative_id": {"type": "INT64", "index": 2, "name": "creative_id", "comment": null}, "clicks": {"type": "INT64", "index": 3, "name": "clicks", "comment": null}, "impressions": {"type": "INT64", "index": 4, "name": "impressions", "comment": null}, "cost": {"type": "INT64", "index": 5, "name": "cost", "comment": null}}, "stats": {"has_stats": {"id": "has_stats", "label": "Has Stats?", "value": false, "include": false, "description": "Indicates whether there are statistics for this table"}}, "unique_id": "model.linkedin_source.stg_linkedin_ads__ad_analytics_by_creative"}, "model.linkedin_source.stg_linkedin_ads__account_history": {"metadata": {"type": "view", "schema": "linkedin_integration_tests_2_linkedin_ads_source", "name": "stg_linkedin_ads__account_history", "database": "dbt-package-testing", "comment": null, "owner": null}, "columns": {"account_id": {"type": "INT64", "index": 1, "name": "account_id", "comment": null}, "account_name": {"type": "STRING", "index": 2, "name": "account_name", "comment": null}, "currency": {"type": "STRING", "index": 3, "name": "currency", "comment": null}, "version_tag": {"type": "NUMERIC", "index": 4, "name": "version_tag", "comment": null}, "status": {"type": "STRING", "index": 5, "name": "status", "comment": null}, "type": {"type": "STRING", "index": 6, "name": "type", "comment": null}, "last_modified_at": {"type": "TIMESTAMP", "index": 7, "name": "last_modified_at", "comment": null}, "created_at": {"type": "TIMESTAMP", "index": 8, "name": "created_at", "comment": null}, "is_latest_version": {"type": "BOOL", "index": 9, "name": "is_latest_version", "comment": null}}, "stats": {"has_stats": {"id": "has_stats", "label": "Has Stats?", "value": false, "include": false, "description": "Indicates whether there are statistics for this table"}}, "unique_id": "model.linkedin_source.stg_linkedin_ads__account_history"}, "model.linkedin_source.stg_linkedin_ads__creative_history": {"metadata": {"type": "view", "schema": "linkedin_integration_tests_2_linkedin_ads_source", "name": "stg_linkedin_ads__creative_history", "database": "dbt-package-testing", "comment": null, "owner": null}, "columns": {"creative_id": {"type": "INT64", "index": 1, "name": "creative_id", "comment": null}, "campaign_id": {"type": "INT64", "index": 2, "name": "campaign_id", "comment": null}, "status": {"type": "STRING", "index": 3, "name": "status", "comment": null}, "click_uri": {"type": "STRING", "index": 4, "name": "click_uri", "comment": null}, "last_modified_at": {"type": "TIMESTAMP", "index": 5, "name": "last_modified_at", "comment": null}, "created_at": {"type": "TIMESTAMP", "index": 6, "name": "created_at", "comment": null}, "is_latest_version": {"type": "BOOL", "index": 7, "name": "is_latest_version", "comment": null}, "base_url": {"type": "STRING", "index": 8, "name": "base_url", "comment": null}, "url_host": {"type": "STRING", "index": 9, "name": "url_host", "comment": null}, "url_path": {"type": "STRING", "index": 10, "name": "url_path", "comment": null}, "utm_source": {"type": "STRING", "index": 11, "name": "utm_source", "comment": null}, "utm_medium": {"type": "STRING", "index": 12, "name": "utm_medium", "comment": null}, "utm_campaign": {"type": "STRING", "index": 13, "name": "utm_campaign", "comment": null}, "utm_content": {"type": "STRING", "index": 14, "name": "utm_content", "comment": null}, "utm_term": {"type": "STRING", "index": 15, "name": "utm_term", "comment": null}}, "stats": {"has_stats": {"id": "has_stats", "label": "Has Stats?", "value": false, "include": false, "description": "Indicates whether there are statistics for this table"}}, "unique_id": "model.linkedin_source.stg_linkedin_ads__creative_history"}, "model.linkedin_source.stg_linkedin_ads__ad_analytics_by_creative_tmp": {"metadata": {"type": "view", "schema": "linkedin_integration_tests_2_linkedin_ads_source", "name": "stg_linkedin_ads__ad_analytics_by_creative_tmp", "database": "dbt-package-testing", "comment": null, "owner": null}, "columns": {"creative_id": {"type": "INT64", "index": 1, "name": "creative_id", "comment": null}, "day": {"type": "TIMESTAMP", "index": 2, "name": "day", "comment": null}, "clicks": {"type": "INT64", "index": 3, "name": "clicks", "comment": null}, "impressions": {"type": "INT64", "index": 4, "name": "impressions", "comment": null}, "cost_in_local_currency": {"type": "INT64", "index": 5, "name": "cost_in_local_currency", "comment": null}, "cost_in_usd": {"type": "INT64", "index": 6, "name": "cost_in_usd", "comment": null}}, "stats": {"has_stats": {"id": "has_stats", "label": "Has Stats?", "value": false, "include": false, "description": "Indicates whether there are statistics for this table"}}, "unique_id": "model.linkedin_source.stg_linkedin_ads__ad_analytics_by_creative_tmp"}, "model.linkedin_source.stg_linkedin_ads__ad_analytics_by_campaign_tmp": {"metadata": {"type": "view", "schema": "linkedin_integration_tests_2_linkedin_ads_source", "name": "stg_linkedin_ads__ad_analytics_by_campaign_tmp", "database": "dbt-package-testing", "comment": null, "owner": null}, "columns": {"campaign_id": {"type": "INT64", "index": 1, "name": "campaign_id", "comment": null}, "day": {"type": "DATETIME", "index": 2, "name": "day", "comment": null}, "action_clicks": {"type": "INT64", "index": 3, "name": "action_clicks", "comment": null}, "ad_unit_clicks": {"type": "INT64", "index": 4, "name": "ad_unit_clicks", "comment": null}, "approximate_unique_impressions": {"type": "INT64", "index": 5, "name": "approximate_unique_impressions", "comment": null}, "card_clicks": {"type": "INT64", "index": 6, "name": "card_clicks", "comment": null}, "card_impressions": {"type": "INT64", "index": 7, "name": "card_impressions", "comment": null}, "clicks": {"type": "INT64", "index": 8, "name": "clicks", "comment": null}, "comment_likes": {"type": "INT64", "index": 9, "name": "comment_likes", "comment": null}, "comments": {"type": "INT64", "index": 10, "name": "comments", "comment": null}, "company_page_clicks": {"type": "INT64", "index": 11, "name": "company_page_clicks", "comment": null}, "conversion_value_in_local_currency": {"type": "INT64", "index": 12, "name": "conversion_value_in_local_currency", "comment": null}, "cost_in_local_currency": {"type": "FLOAT64", "index": 13, "name": "cost_in_local_currency", "comment": null}, "cost_in_usd": {"type": "FLOAT64", "index": 14, "name": "cost_in_usd", "comment": null}, "external_website_conversions": {"type": "INT64", "index": 15, "name": "external_website_conversions", "comment": null}, "external_website_post_click_conversions": {"type": "INT64", "index": 16, "name": "external_website_post_click_conversions", "comment": null}, "external_website_post_view_conversions": {"type": "INT64", "index": 17, "name": "external_website_post_view_conversions", "comment": null}, "follows": {"type": "INT64", "index": 18, "name": "follows", "comment": null}, "full_screen_plays": {"type": "INT64", "index": 19, "name": "full_screen_plays", "comment": null}, "impressions": {"type": "INT64", "index": 20, "name": "impressions", "comment": null}, "landing_page_clicks": {"type": "INT64", "index": 21, "name": "landing_page_clicks", "comment": null}, "lead_generation_mail_contact_info_shares": {"type": "INT64", "index": 22, "name": "lead_generation_mail_contact_info_shares", "comment": null}, "lead_generation_mail_interested_clicks": {"type": "INT64", "index": 23, "name": "lead_generation_mail_interested_clicks", "comment": null}, "likes": {"type": "INT64", "index": 24, "name": "likes", "comment": null}, "one_click_lead_form_opens": {"type": "INT64", "index": 25, "name": "one_click_lead_form_opens", "comment": null}, "one_click_leads": {"type": "INT64", "index": 26, "name": "one_click_leads", "comment": null}, "opens": {"type": "INT64", "index": 27, "name": "opens", "comment": null}, "other_engagements": {"type": "INT64", "index": 28, "name": "other_engagements", "comment": null}, "shares": {"type": "INT64", "index": 29, "name": "shares", "comment": null}, "text_url_clicks": {"type": "INT64", "index": 30, "name": "text_url_clicks", "comment": null}, "total_engagements": {"type": "INT64", "index": 31, "name": "total_engagements", "comment": null}, "video_completions": {"type": "INT64", "index": 32, "name": "video_completions", "comment": null}, "video_first_quartile_completions": {"type": "INT64", "index": 33, "name": "video_first_quartile_completions", "comment": null}, "video_midpoint_completions": {"type": "INT64", "index": 34, "name": "video_midpoint_completions", "comment": null}, "video_starts": {"type": "INT64", "index": 35, "name": "video_starts", "comment": null}, "video_third_quartile_completions": {"type": "INT64", "index": 36, "name": "video_third_quartile_completions", "comment": null}, "video_views": {"type": "INT64", "index": 37, "name": "video_views", "comment": null}, "viral_card_clicks": {"type": "INT64", "index": 38, "name": "viral_card_clicks", "comment": null}, "viral_card_impressions": {"type": "INT64", "index": 39, "name": "viral_card_impressions", "comment": null}, "viral_clicks": {"type": "INT64", "index": 40, "name": "viral_clicks", "comment": null}, "viral_comment_likes": {"type": "INT64", "index": 41, "name": "viral_comment_likes", "comment": null}, "viral_comments": {"type": "INT64", "index": 42, "name": "viral_comments", "comment": null}, "viral_company_page_clicks": {"type": "INT64", "index": 43, "name": "viral_company_page_clicks", "comment": null}, "viral_external_website_conversions": {"type": "INT64", "index": 44, "name": "viral_external_website_conversions", "comment": null}, "viral_external_website_post_click_conversions": {"type": "INT64", "index": 45, "name": "viral_external_website_post_click_conversions", "comment": null}, "viral_external_website_post_view_conversions": {"type": "INT64", "index": 46, "name": "viral_external_website_post_view_conversions", "comment": null}, "viral_follows": {"type": "INT64", "index": 47, "name": "viral_follows", "comment": null}, "viral_full_screen_plays": {"type": "INT64", "index": 48, "name": "viral_full_screen_plays", "comment": null}, "viral_impressions": {"type": "INT64", "index": 49, "name": "viral_impressions", "comment": null}, "viral_landing_page_clicks": {"type": "INT64", "index": 50, "name": "viral_landing_page_clicks", "comment": null}, "viral_likes": {"type": "INT64", "index": 51, "name": "viral_likes", "comment": null}, "viral_one_click_lead_form_opens": {"type": "INT64", "index": 52, "name": "viral_one_click_lead_form_opens", "comment": null}, "viral_one_click_leads": {"type": "INT64", "index": 53, "name": "viral_one_click_leads", "comment": null}, "viral_other_engagements": {"type": "INT64", "index": 54, "name": "viral_other_engagements", "comment": null}, "viral_shares": {"type": "INT64", "index": 55, "name": "viral_shares", "comment": null}, "viral_total_engagements": {"type": "INT64", "index": 56, "name": "viral_total_engagements", "comment": null}, "viral_video_completions": {"type": "INT64", "index": 57, "name": "viral_video_completions", "comment": null}, "viral_video_first_quartile_completions": {"type": "INT64", "index": 58, "name": "viral_video_first_quartile_completions", "comment": null}, "viral_video_midpoint_completions": {"type": "INT64", "index": 59, "name": "viral_video_midpoint_completions", "comment": null}, "viral_video_starts": {"type": "INT64", "index": 60, "name": "viral_video_starts", "comment": null}, "viral_video_third_quartile_completions": {"type": "INT64", "index": 61, "name": "viral_video_third_quartile_completions", "comment": null}, "viral_video_views": {"type": "INT64", "index": 62, "name": "viral_video_views", "comment": null}}, "stats": {"has_stats": {"id": "has_stats", "label": "Has Stats?", "value": false, "include": false, "description": "Indicates whether there are statistics for this table"}}, "unique_id": "model.linkedin_source.stg_linkedin_ads__ad_analytics_by_campaign_tmp"}, "model.linkedin_source.stg_linkedin_ads__account_history_tmp": {"metadata": {"type": "view", "schema": "linkedin_integration_tests_2_linkedin_ads_source", "name": "stg_linkedin_ads__account_history_tmp", "database": "dbt-package-testing", "comment": null, "owner": null}, "columns": {"id": {"type": "INT64", "index": 1, "name": "id", "comment": null}, "last_modified_time": {"type": "TIMESTAMP", "index": 2, "name": "last_modified_time", "comment": null}, "created_time": {"type": "TIMESTAMP", "index": 3, "name": "created_time", "comment": null}, "name": {"type": "STRING", "index": 4, "name": "name", "comment": null}, "currency": {"type": "STRING", "index": 5, "name": "currency", "comment": null}, "version_tag": {"type": "INT64", "index": 6, "name": "version_tag", "comment": null}}, "stats": {"has_stats": {"id": "has_stats", "label": "Has Stats?", "value": false, "include": false, "description": "Indicates whether there are statistics for this table"}}, "unique_id": "model.linkedin_source.stg_linkedin_ads__account_history_tmp"}, "model.linkedin_source.stg_linkedin_ads__campaign_history": {"metadata": {"type": "view", "schema": "linkedin_integration_tests_2_linkedin_ads_source", "name": "stg_linkedin_ads__campaign_history", "database": "dbt-package-testing", "comment": null, "owner": null}, "columns": {"campaign_id": {"type": "INT64", "index": 1, "name": "campaign_id", "comment": null}, "campaign_name": {"type": "STRING", "index": 2, "name": "campaign_name", "comment": null}, "version_tag": {"type": "NUMERIC", "index": 3, "name": "version_tag", "comment": null}, "campaign_group_id": {"type": "INT64", "index": 4, "name": "campaign_group_id", "comment": null}, "account_id": {"type": "INT64", "index": 5, "name": "account_id", "comment": null}, "status": {"type": "STRING", "index": 6, "name": "status", "comment": null}, "type": {"type": "STRING", "index": 7, "name": "type", "comment": null}, "cost_type": {"type": "STRING", "index": 8, "name": "cost_type", "comment": null}, "creative_selection": {"type": "STRING", "index": 9, "name": "creative_selection", "comment": null}, "daily_budget_amount": {"type": "FLOAT64", "index": 10, "name": "daily_budget_amount", "comment": null}, "daily_budget_currency_code": {"type": "STRING", "index": 11, "name": "daily_budget_currency_code", "comment": null}, "unit_cost_amount": {"type": "FLOAT64", "index": 12, "name": "unit_cost_amount", "comment": null}, "unit_cost_currency_code": {"type": "STRING", "index": 13, "name": "unit_cost_currency_code", "comment": null}, "format": {"type": "STRING", "index": 14, "name": "format", "comment": null}, "locale_country": {"type": "STRING", "index": 15, "name": "locale_country", "comment": null}, "locale_language": {"type": "STRING", "index": 16, "name": "locale_language", "comment": null}, "objective_type": {"type": "STRING", "index": 17, "name": "objective_type", "comment": null}, "optimization_target_type": {"type": "STRING", "index": 18, "name": "optimization_target_type", "comment": null}, "is_audience_expansion_enabled": {"type": "BOOL", "index": 19, "name": "is_audience_expansion_enabled", "comment": null}, "is_offsite_delivery_enabled": {"type": "BOOL", "index": 20, "name": "is_offsite_delivery_enabled", "comment": null}, "run_schedule_start_at": {"type": "TIMESTAMP", "index": 21, "name": "run_schedule_start_at", "comment": null}, "run_schedule_end_at": {"type": "TIMESTAMP", "index": 22, "name": "run_schedule_end_at", "comment": null}, "last_modified_at": {"type": "TIMESTAMP", "index": 23, "name": "last_modified_at", "comment": null}, "created_at": {"type": "TIMESTAMP", "index": 24, "name": "created_at", "comment": null}, "is_latest_version": {"type": "BOOL", "index": 25, "name": "is_latest_version", "comment": null}}, "stats": {"has_stats": {"id": "has_stats", "label": "Has Stats?", "value": false, "include": false, "description": "Indicates whether there are statistics for this table"}}, "unique_id": "model.linkedin_source.stg_linkedin_ads__campaign_history"}, "model.linkedin_source.stg_linkedin_ads__campaign_group_history": {"metadata": {"type": "view", "schema": "linkedin_integration_tests_2_linkedin_ads_source", "name": "stg_linkedin_ads__campaign_group_history", "database": "dbt-package-testing", "comment": null, "owner": null}, "columns": {"campaign_group_id": {"type": "INT64", "index": 1, "name": "campaign_group_id", "comment": null}, "campaign_group_name": {"type": "STRING", "index": 2, "name": "campaign_group_name", "comment": null}, "account_id": {"type": "INT64", "index": 3, "name": "account_id", "comment": null}, "status": {"type": "STRING", "index": 4, "name": "status", "comment": null}, "is_backfilled": {"type": "BOOL", "index": 5, "name": "is_backfilled", "comment": null}, "run_schedule_start_at": {"type": "TIMESTAMP", "index": 6, "name": "run_schedule_start_at", "comment": null}, "run_schedule_end_at": {"type": "TIMESTAMP", "index": 7, "name": "run_schedule_end_at", "comment": null}, "last_modified_at": {"type": "TIMESTAMP", "index": 8, "name": "last_modified_at", "comment": null}, "created_at": {"type": "TIMESTAMP", "index": 9, "name": "created_at", "comment": null}, "is_latest_version": {"type": "BOOL", "index": 10, "name": "is_latest_version", "comment": null}}, "stats": {"has_stats": {"id": "has_stats", "label": "Has Stats?", "value": false, "include": false, "description": "Indicates whether there are statistics for this table"}}, "unique_id": "model.linkedin_source.stg_linkedin_ads__campaign_group_history"}, "model.linkedin_source.stg_linkedin_ads__ad_analytics_by_campaign": {"metadata": {"type": "view", "schema": "linkedin_integration_tests_2_linkedin_ads_source", "name": "stg_linkedin_ads__ad_analytics_by_campaign", "database": "dbt-package-testing", "comment": null, "owner": null}, "columns": {"date_day": {"type": "TIMESTAMP", "index": 1, "name": "date_day", "comment": null}, "campaign_id": {"type": "INT64", "index": 2, "name": "campaign_id", "comment": null}, "clicks": {"type": "INT64", "index": 3, "name": "clicks", "comment": null}, "impressions": {"type": "INT64", "index": 4, "name": "impressions", "comment": null}, "cost": {"type": "FLOAT64", "index": 5, "name": "cost", "comment": null}}, "stats": {"has_stats": {"id": "has_stats", "label": "Has Stats?", "value": false, "include": false, "description": "Indicates whether there are statistics for this table"}}, "unique_id": "model.linkedin_source.stg_linkedin_ads__ad_analytics_by_campaign"}, "model.linkedin_source.stg_linkedin_ads__campaign_group_history_tmp": {"metadata": {"type": "view", "schema": "linkedin_integration_tests_2_linkedin_ads_source", "name": "stg_linkedin_ads__campaign_group_history_tmp", "database": "dbt-package-testing", "comment": null, "owner": null}, "columns": {"id": {"type": "INT64", "index": 1, "name": "id", "comment": null}, "last_modified_time": {"type": "TIMESTAMP", "index": 2, "name": "last_modified_time", "comment": null}, "account_id": {"type": "INT64", "index": 3, "name": "account_id", "comment": null}, "created_time": {"type": "TIMESTAMP", "index": 4, "name": "created_time", "comment": null}, "name": {"type": "STRING", "index": 5, "name": "name", "comment": null}}, "stats": {"has_stats": {"id": "has_stats", "label": "Has Stats?", "value": false, "include": false, "description": "Indicates whether there are statistics for this table"}}, "unique_id": "model.linkedin_source.stg_linkedin_ads__campaign_group_history_tmp"}, "model.linkedin_source.stg_linkedin_ads__creative_history_tmp": {"metadata": {"type": "view", "schema": "linkedin_integration_tests_2_linkedin_ads_source", "name": "stg_linkedin_ads__creative_history_tmp", "database": "dbt-package-testing", "comment": null, "owner": null}, "columns": {"id": {"type": "INT64", "index": 1, "name": "id", "comment": null}, "campaign_id": {"type": "INT64", "index": 2, "name": "campaign_id", "comment": null}, "intended_status": {"type": "STRING", "index": 3, "name": "intended_status", "comment": null}, "click_uri": {"type": "STRING", "index": 4, "name": "click_uri", "comment": null}, "last_modified_at": {"type": "TIMESTAMP", "index": 5, "name": "last_modified_at", "comment": null}, "created_time": {"type": "TIMESTAMP", "index": 6, "name": "created_time", "comment": null}}, "stats": {"has_stats": {"id": "has_stats", "label": "Has Stats?", "value": false, "include": false, "description": "Indicates whether there are statistics for this table"}}, "unique_id": "model.linkedin_source.stg_linkedin_ads__creative_history_tmp"}, "model.linkedin_source.stg_linkedin_ads__campaign_history_tmp": {"metadata": {"type": "view", "schema": "linkedin_integration_tests_2_linkedin_ads_source", "name": "stg_linkedin_ads__campaign_history_tmp", "database": "dbt-package-testing", "comment": null, "owner": null}, "columns": {"id": {"type": "INT64", "index": 1, "name": "id", "comment": null}, "last_modified_time": {"type": "TIMESTAMP", "index": 2, "name": "last_modified_time", "comment": null}, "account_id": {"type": "INT64", "index": 3, "name": "account_id", "comment": null}, "campaign_group_id": {"type": "INT64", "index": 4, "name": "campaign_group_id", "comment": null}, "created_time": {"type": "TIMESTAMP", "index": 5, "name": "created_time", "comment": null}, "name": {"type": "STRING", "index": 6, "name": "name", "comment": null}, "version_tag": {"type": "INT64", "index": 7, "name": "version_tag", "comment": null}}, "stats": {"has_stats": {"id": "has_stats", "label": "Has Stats?", "value": false, "include": false, "description": "Indicates whether there are statistics for this table"}}, "unique_id": "model.linkedin_source.stg_linkedin_ads__campaign_history_tmp"}}, "sources": {"source.linkedin_source.linkedin.ad_analytics_by_campaign": {"metadata": {"type": "table", "schema": "linkedin_source_integration_tests", "name": "linkedin_ad_analytics_by_campaign_data", "database": "dbt-package-testing", "comment": null, "owner": null}, "columns": {"campaign_id": {"type": "INT64", "index": 1, "name": "campaign_id", "comment": null}, "day": {"type": "DATETIME", "index": 2, "name": "day", "comment": null}, "action_clicks": {"type": "INT64", "index": 3, "name": "action_clicks", "comment": null}, "ad_unit_clicks": {"type": "INT64", "index": 4, "name": "ad_unit_clicks", "comment": null}, "approximate_unique_impressions": {"type": "INT64", "index": 5, "name": "approximate_unique_impressions", "comment": null}, "card_clicks": {"type": "INT64", "index": 6, "name": "card_clicks", "comment": null}, "card_impressions": {"type": "INT64", "index": 7, "name": "card_impressions", "comment": null}, "clicks": {"type": "INT64", "index": 8, "name": "clicks", "comment": null}, "comment_likes": {"type": "INT64", "index": 9, "name": "comment_likes", "comment": null}, "comments": {"type": "INT64", "index": 10, "name": "comments", "comment": null}, "company_page_clicks": {"type": "INT64", "index": 11, "name": "company_page_clicks", "comment": null}, "conversion_value_in_local_currency": {"type": "INT64", "index": 12, "name": "conversion_value_in_local_currency", "comment": null}, "cost_in_local_currency": {"type": "FLOAT64", "index": 13, "name": "cost_in_local_currency", "comment": null}, "cost_in_usd": {"type": "FLOAT64", "index": 14, "name": "cost_in_usd", "comment": null}, "external_website_conversions": {"type": "INT64", "index": 15, "name": "external_website_conversions", "comment": null}, "external_website_post_click_conversions": {"type": "INT64", "index": 16, "name": "external_website_post_click_conversions", "comment": null}, "external_website_post_view_conversions": {"type": "INT64", "index": 17, "name": "external_website_post_view_conversions", "comment": null}, "follows": {"type": "INT64", "index": 18, "name": "follows", "comment": null}, "full_screen_plays": {"type": "INT64", "index": 19, "name": "full_screen_plays", "comment": null}, "impressions": {"type": "INT64", "index": 20, "name": "impressions", "comment": null}, "landing_page_clicks": {"type": "INT64", "index": 21, "name": "landing_page_clicks", "comment": null}, "lead_generation_mail_contact_info_shares": {"type": "INT64", "index": 22, "name": "lead_generation_mail_contact_info_shares", "comment": null}, "lead_generation_mail_interested_clicks": {"type": "INT64", "index": 23, "name": "lead_generation_mail_interested_clicks", "comment": null}, "likes": {"type": "INT64", "index": 24, "name": "likes", "comment": null}, "one_click_lead_form_opens": {"type": "INT64", "index": 25, "name": "one_click_lead_form_opens", "comment": null}, "one_click_leads": {"type": "INT64", "index": 26, "name": "one_click_leads", "comment": null}, "opens": {"type": "INT64", "index": 27, "name": "opens", "comment": null}, "other_engagements": {"type": "INT64", "index": 28, "name": "other_engagements", "comment": null}, "shares": {"type": "INT64", "index": 29, "name": "shares", "comment": null}, "text_url_clicks": {"type": "INT64", "index": 30, "name": "text_url_clicks", "comment": null}, "total_engagements": {"type": "INT64", "index": 31, "name": "total_engagements", "comment": null}, "video_completions": {"type": "INT64", "index": 32, "name": "video_completions", "comment": null}, "video_first_quartile_completions": {"type": "INT64", "index": 33, "name": "video_first_quartile_completions", "comment": null}, "video_midpoint_completions": {"type": "INT64", "index": 34, "name": "video_midpoint_completions", "comment": null}, "video_starts": {"type": "INT64", "index": 35, "name": "video_starts", "comment": null}, "video_third_quartile_completions": {"type": "INT64", "index": 36, "name": "video_third_quartile_completions", "comment": null}, "video_views": {"type": "INT64", "index": 37, "name": "video_views", "comment": null}, "viral_card_clicks": {"type": "INT64", "index": 38, "name": "viral_card_clicks", "comment": null}, "viral_card_impressions": {"type": "INT64", "index": 39, "name": "viral_card_impressions", "comment": null}, "viral_clicks": {"type": "INT64", "index": 40, "name": "viral_clicks", "comment": null}, "viral_comment_likes": {"type": "INT64", "index": 41, "name": "viral_comment_likes", "comment": null}, "viral_comments": {"type": "INT64", "index": 42, "name": "viral_comments", "comment": null}, "viral_company_page_clicks": {"type": "INT64", "index": 43, "name": "viral_company_page_clicks", "comment": null}, "viral_external_website_conversions": {"type": "INT64", "index": 44, "name": "viral_external_website_conversions", "comment": null}, "viral_external_website_post_click_conversions": {"type": "INT64", "index": 45, "name": "viral_external_website_post_click_conversions", "comment": null}, "viral_external_website_post_view_conversions": {"type": "INT64", "index": 46, "name": "viral_external_website_post_view_conversions", "comment": null}, "viral_follows": {"type": "INT64", "index": 47, "name": "viral_follows", "comment": null}, "viral_full_screen_plays": {"type": "INT64", "index": 48, "name": "viral_full_screen_plays", "comment": null}, "viral_impressions": {"type": "INT64", "index": 49, "name": "viral_impressions", "comment": null}, "viral_landing_page_clicks": {"type": "INT64", "index": 50, "name": "viral_landing_page_clicks", "comment": null}, "viral_likes": {"type": "INT64", "index": 51, "name": "viral_likes", "comment": null}, "viral_one_click_lead_form_opens": {"type": "INT64", "index": 52, "name": "viral_one_click_lead_form_opens", "comment": null}, "viral_one_click_leads": {"type": "INT64", "index": 53, "name": "viral_one_click_leads", "comment": null}, "viral_other_engagements": {"type": "INT64", "index": 54, "name": "viral_other_engagements", "comment": null}, "viral_shares": {"type": "INT64", "index": 55, "name": "viral_shares", "comment": null}, "viral_total_engagements": {"type": "INT64", "index": 56, "name": "viral_total_engagements", "comment": null}, "viral_video_completions": {"type": "INT64", "index": 57, "name": "viral_video_completions", "comment": null}, "viral_video_first_quartile_completions": {"type": "INT64", "index": 58, "name": "viral_video_first_quartile_completions", "comment": null}, "viral_video_midpoint_completions": {"type": "INT64", "index": 59, "name": "viral_video_midpoint_completions", "comment": null}, "viral_video_starts": {"type": "INT64", "index": 60, "name": "viral_video_starts", "comment": null}, "viral_video_third_quartile_completions": {"type": "INT64", "index": 61, "name": "viral_video_third_quartile_completions", "comment": null}, "viral_video_views": {"type": "INT64", "index": 62, "name": "viral_video_views", "comment": null}}, "stats": {"num_bytes": {"id": "num_bytes", "label": "Approximate Size", "value": 6752.0, "include": true, "description": "Approximate size of table as reported by BigQuery"}, "num_rows": {"id": "num_rows", "label": "# Rows", "value": 20.0, "include": true, "description": "Approximate count of rows in this table"}, "has_stats": {"id": "has_stats", "label": "Has Stats?", "value": true, "include": false, "description": "Indicates whether there are statistics for this table"}}, "unique_id": "source.linkedin_source.linkedin.ad_analytics_by_campaign"}, "source.linkedin_source.linkedin.creative_history": {"metadata": {"type": "table", "schema": "linkedin_source_integration_tests", "name": "linkedin_creative_history_data", "database": "dbt-package-testing", "comment": null, "owner": null}, "columns": {"id": {"type": "INT64", "index": 1, "name": "id", "comment": null}, "campaign_id": {"type": "INT64", "index": 2, "name": "campaign_id", "comment": null}, "intended_status": {"type": "STRING", "index": 3, "name": "intended_status", "comment": null}, "click_uri": {"type": "STRING", "index": 4, "name": "click_uri", "comment": null}, "last_modified_at": {"type": "TIMESTAMP", "index": 5, "name": "last_modified_at", "comment": null}, "created_time": {"type": "TIMESTAMP", "index": 6, "name": "created_time", "comment": null}}, "stats": {"num_bytes": {"id": "num_bytes", "label": "Approximate Size", "value": 2400.0, "include": true, "description": "Approximate size of table as reported by BigQuery"}, "num_rows": {"id": "num_rows", "label": "# Rows", "value": 100.0, "include": true, "description": "Approximate count of rows in this table"}, "has_stats": {"id": "has_stats", "label": "Has Stats?", "value": true, "include": false, "description": "Indicates whether there are statistics for this table"}}, "unique_id": "source.linkedin_source.linkedin.creative_history"}, "source.linkedin_source.linkedin.ad_analytics_by_creative": {"metadata": {"type": "table", "schema": "linkedin_source_integration_tests", "name": "linkedin_ad_analytics_by_creative_data", "database": "dbt-package-testing", "comment": null, "owner": null}, "columns": {"creative_id": {"type": "INT64", "index": 1, "name": "creative_id", "comment": null}, "day": {"type": "TIMESTAMP", "index": 2, "name": "day", "comment": null}, "clicks": {"type": "INT64", "index": 3, "name": "clicks", "comment": null}, "impressions": {"type": "INT64", "index": 4, "name": "impressions", "comment": null}, "cost_in_local_currency": {"type": "INT64", "index": 5, "name": "cost_in_local_currency", "comment": null}, "cost_in_usd": {"type": "INT64", "index": 6, "name": "cost_in_usd", "comment": null}}, "stats": {"num_bytes": {"id": "num_bytes", "label": "Approximate Size", "value": 2968.0, "include": true, "description": "Approximate size of table as reported by BigQuery"}, "num_rows": {"id": "num_rows", "label": "# Rows", "value": 100.0, "include": true, "description": "Approximate count of rows in this table"}, "has_stats": {"id": "has_stats", "label": "Has Stats?", "value": true, "include": false, "description": "Indicates whether there are statistics for this table"}}, "unique_id": "source.linkedin_source.linkedin.ad_analytics_by_creative"}, "source.linkedin_source.linkedin.campaign_group_history": {"metadata": {"type": "table", "schema": "linkedin_source_integration_tests", "name": "linkedin_campaign_group_history_data", "database": "dbt-package-testing", "comment": null, "owner": null}, "columns": {"id": {"type": "INT64", "index": 1, "name": "id", "comment": null}, "last_modified_time": {"type": "TIMESTAMP", "index": 2, "name": "last_modified_time", "comment": null}, "account_id": {"type": "INT64", "index": 3, "name": "account_id", "comment": null}, "created_time": {"type": "TIMESTAMP", "index": 4, "name": "created_time", "comment": null}, "name": {"type": "STRING", "index": 5, "name": "name", "comment": null}}, "stats": {"num_bytes": {"id": "num_bytes", "label": "Approximate Size", "value": 232.0, "include": true, "description": "Approximate size of table as reported by BigQuery"}, "num_rows": {"id": "num_rows", "label": "# Rows", "value": 4.0, "include": true, "description": "Approximate count of rows in this table"}, "has_stats": {"id": "has_stats", "label": "Has Stats?", "value": true, "include": false, "description": "Indicates whether there are statistics for this table"}}, "unique_id": "source.linkedin_source.linkedin.campaign_group_history"}, "source.linkedin_source.linkedin.account_history": {"metadata": {"type": "table", "schema": "linkedin_source_integration_tests", "name": "linkedin_account_history_data", "database": "dbt-package-testing", "comment": null, "owner": null}, "columns": {"id": {"type": "INT64", "index": 1, "name": "id", "comment": null}, "last_modified_time": {"type": "TIMESTAMP", "index": 2, "name": "last_modified_time", "comment": null}, "created_time": {"type": "TIMESTAMP", "index": 3, "name": "created_time", "comment": null}, "name": {"type": "STRING", "index": 4, "name": "name", "comment": null}, "currency": {"type": "STRING", "index": 5, "name": "currency", "comment": null}, "version_tag": {"type": "INT64", "index": 6, "name": "version_tag", "comment": null}}, "stats": {"num_bytes": {"id": "num_bytes", "label": "Approximate Size", "value": 882.0, "include": true, "description": "Approximate size of table as reported by BigQuery"}, "num_rows": {"id": "num_rows", "label": "# Rows", "value": 14.0, "include": true, "description": "Approximate count of rows in this table"}, "has_stats": {"id": "has_stats", "label": "Has Stats?", "value": true, "include": false, "description": "Indicates whether there are statistics for this table"}}, "unique_id": "source.linkedin_source.linkedin.account_history"}, "source.linkedin_source.linkedin.campaign_history": {"metadata": {"type": "table", "schema": "linkedin_source_integration_tests", "name": "linkedin_campaign_history_data", "database": "dbt-package-testing", "comment": null, "owner": null}, "columns": {"id": {"type": "INT64", "index": 1, "name": "id", "comment": null}, "last_modified_time": {"type": "TIMESTAMP", "index": 2, "name": "last_modified_time", "comment": null}, "account_id": {"type": "INT64", "index": 3, "name": "account_id", "comment": null}, "campaign_group_id": {"type": "INT64", "index": 4, "name": "campaign_group_id", "comment": null}, "created_time": {"type": "TIMESTAMP", "index": 5, "name": "created_time", "comment": null}, "name": {"type": "STRING", "index": 6, "name": "name", "comment": null}, "version_tag": {"type": "INT64", "index": 7, "name": "version_tag", "comment": null}}, "stats": {"num_bytes": {"id": "num_bytes", "label": "Approximate Size", "value": 7400.0, "include": true, "description": "Approximate size of table as reported by BigQuery"}, "num_rows": {"id": "num_rows", "label": "# Rows", "value": 100.0, "include": true, "description": "Approximate count of rows in this table"}, "has_stats": {"id": "has_stats", "label": "Has Stats?", "value": true, "include": false, "description": "Indicates whether there are statistics for this table"}}, "unique_id": "source.linkedin_source.linkedin.campaign_history"}}, "errors": null}
\ No newline at end of file
+{"metadata": {"dbt_schema_version": "https://schemas.getdbt.com/dbt/catalog/v1.json", "dbt_version": "1.5.6", "generated_at": "2023-09-01T16:09:54.229453Z", "invocation_id": "5f19613b-3ae0-4058-ac12-46b181e056bc", "env": {}}, "nodes": {"seed.linkedin_source_integration_tests.linkedin_account_history_data": {"metadata": {"type": "BASE TABLE", "schema": "linkedin_source_integration_tests", "name": "linkedin_account_history_data", "database": "postgres", "comment": null, "owner": "pguser"}, "columns": {"id": {"type": "integer", "index": 1, "name": "id", "comment": null}, "last_modified_time": {"type": "timestamp without time zone", "index": 2, "name": "last_modified_time", "comment": null}, "created_time": {"type": "timestamp without time zone", "index": 3, "name": "created_time", "comment": null}, "name": {"type": "text", "index": 4, "name": "name", "comment": null}, "currency": {"type": "text", "index": 5, "name": "currency", "comment": null}, "version_tag": {"type": "integer", "index": 6, "name": "version_tag", "comment": null}}, "stats": {"has_stats": {"id": "has_stats", "label": "Has Stats?", "value": false, "include": false, "description": "Indicates whether there are statistics for this table"}}, "unique_id": "seed.linkedin_source_integration_tests.linkedin_account_history_data"}, "seed.linkedin_source_integration_tests.linkedin_ad_analytics_by_campaign_data": {"metadata": {"type": "BASE TABLE", "schema": "linkedin_source_integration_tests", "name": "linkedin_ad_analytics_by_campaign_data", "database": "postgres", "comment": null, "owner": "pguser"}, "columns": {"campaign_id": {"type": "integer", "index": 1, "name": "campaign_id", "comment": null}, "day": {"type": "timestamp without time zone", "index": 2, "name": "day", "comment": null}, "action_clicks": {"type": "integer", "index": 3, "name": "action_clicks", "comment": null}, "ad_unit_clicks": {"type": "integer", "index": 4, "name": "ad_unit_clicks", "comment": null}, "approximate_unique_impressions": {"type": "integer", "index": 5, "name": "approximate_unique_impressions", "comment": null}, "card_clicks": {"type": "integer", "index": 6, "name": "card_clicks", "comment": null}, "card_impressions": {"type": "integer", "index": 7, "name": "card_impressions", "comment": null}, "clicks": {"type": "integer", "index": 8, "name": "clicks", "comment": null}, "comment_likes": {"type": "integer", "index": 9, "name": "comment_likes", "comment": null}, "comments": {"type": "integer", "index": 10, "name": "comments", "comment": null}, "company_page_clicks": {"type": "integer", "index": 11, "name": "company_page_clicks", "comment": null}, "conversion_value_in_local_currency": {"type": "integer", "index": 12, "name": "conversion_value_in_local_currency", "comment": null}, "cost_in_local_currency": {"type": "double precision", "index": 13, "name": "cost_in_local_currency", "comment": null}, "cost_in_usd": {"type": "double precision", "index": 14, "name": "cost_in_usd", "comment": null}, "external_website_conversions": {"type": "integer", "index": 15, "name": "external_website_conversions", "comment": null}, "external_website_post_click_conversions": {"type": "integer", "index": 16, "name": "external_website_post_click_conversions", "comment": null}, "external_website_post_view_conversions": {"type": "integer", "index": 17, "name": "external_website_post_view_conversions", "comment": null}, "follows": {"type": "integer", "index": 18, "name": "follows", "comment": null}, "full_screen_plays": {"type": "integer", "index": 19, "name": "full_screen_plays", "comment": null}, "impressions": {"type": "integer", "index": 20, "name": "impressions", "comment": null}, "landing_page_clicks": {"type": "integer", "index": 21, "name": "landing_page_clicks", "comment": null}, "lead_generation_mail_contact_info_shares": {"type": "integer", "index": 22, "name": "lead_generation_mail_contact_info_shares", "comment": null}, "lead_generation_mail_interested_clicks": {"type": "integer", "index": 23, "name": "lead_generation_mail_interested_clicks", "comment": null}, "likes": {"type": "integer", "index": 24, "name": "likes", "comment": null}, "one_click_lead_form_opens": {"type": "integer", "index": 25, "name": "one_click_lead_form_opens", "comment": null}, "one_click_leads": {"type": "integer", "index": 26, "name": "one_click_leads", "comment": null}, "opens": {"type": "integer", "index": 27, "name": "opens", "comment": null}, "other_engagements": {"type": "integer", "index": 28, "name": "other_engagements", "comment": null}, "shares": {"type": "integer", "index": 29, "name": "shares", "comment": null}, "text_url_clicks": {"type": "integer", "index": 30, "name": "text_url_clicks", "comment": null}, "total_engagements": {"type": "integer", "index": 31, "name": "total_engagements", "comment": null}, "video_completions": {"type": "integer", "index": 32, "name": "video_completions", "comment": null}, "video_first_quartile_completions": {"type": "integer", "index": 33, "name": "video_first_quartile_completions", "comment": null}, "video_midpoint_completions": {"type": "integer", "index": 34, "name": "video_midpoint_completions", "comment": null}, "video_starts": {"type": "integer", "index": 35, "name": "video_starts", "comment": null}, "video_third_quartile_completions": {"type": "integer", "index": 36, "name": "video_third_quartile_completions", "comment": null}, "video_views": {"type": "integer", "index": 37, "name": "video_views", "comment": null}, "viral_card_clicks": {"type": "integer", "index": 38, "name": "viral_card_clicks", "comment": null}, "viral_card_impressions": {"type": "integer", "index": 39, "name": "viral_card_impressions", "comment": null}, "viral_clicks": {"type": "integer", "index": 40, "name": "viral_clicks", "comment": null}, "viral_comment_likes": {"type": "integer", "index": 41, "name": "viral_comment_likes", "comment": null}, "viral_comments": {"type": "integer", "index": 42, "name": "viral_comments", "comment": null}, "viral_company_page_clicks": {"type": "integer", "index": 43, "name": "viral_company_page_clicks", "comment": null}, "viral_external_website_conversions": {"type": "integer", "index": 44, "name": "viral_external_website_conversions", "comment": null}, "viral_external_website_post_click_conversions": {"type": "integer", "index": 45, "name": "viral_external_website_post_click_conversions", "comment": null}, "viral_external_website_post_view_conversions": {"type": "integer", "index": 46, "name": "viral_external_website_post_view_conversions", "comment": null}, "viral_follows": {"type": "integer", "index": 47, "name": "viral_follows", "comment": null}, "viral_full_screen_plays": {"type": "integer", "index": 48, "name": "viral_full_screen_plays", "comment": null}, "viral_impressions": {"type": "integer", "index": 49, "name": "viral_impressions", "comment": null}, "viral_landing_page_clicks": {"type": "integer", "index": 50, "name": "viral_landing_page_clicks", "comment": null}, "viral_likes": {"type": "integer", "index": 51, "name": "viral_likes", "comment": null}, "viral_one_click_lead_form_opens": {"type": "integer", "index": 52, "name": "viral_one_click_lead_form_opens", "comment": null}, "viral_one_click_leads": {"type": "integer", "index": 53, "name": "viral_one_click_leads", "comment": null}, "viral_other_engagements": {"type": "integer", "index": 54, "name": "viral_other_engagements", "comment": null}, "viral_shares": {"type": "integer", "index": 55, "name": "viral_shares", "comment": null}, "viral_total_engagements": {"type": "integer", "index": 56, "name": "viral_total_engagements", "comment": null}, "viral_video_completions": {"type": "integer", "index": 57, "name": "viral_video_completions", "comment": null}, "viral_video_first_quartile_completions": {"type": "integer", "index": 58, "name": "viral_video_first_quartile_completions", "comment": null}, "viral_video_midpoint_completions": {"type": "integer", "index": 59, "name": "viral_video_midpoint_completions", "comment": null}, "viral_video_starts": {"type": "integer", "index": 60, "name": "viral_video_starts", "comment": null}, "viral_video_third_quartile_completions": {"type": "integer", "index": 61, "name": "viral_video_third_quartile_completions", "comment": null}, "viral_video_views": {"type": "integer", "index": 62, "name": "viral_video_views", "comment": null}}, "stats": {"has_stats": {"id": "has_stats", "label": "Has Stats?", "value": false, "include": false, "description": "Indicates whether there are statistics for this table"}}, "unique_id": "seed.linkedin_source_integration_tests.linkedin_ad_analytics_by_campaign_data"}, "seed.linkedin_source_integration_tests.linkedin_ad_analytics_by_creative_data": {"metadata": {"type": "BASE TABLE", "schema": "linkedin_source_integration_tests", "name": "linkedin_ad_analytics_by_creative_data", "database": "postgres", "comment": null, "owner": "pguser"}, "columns": {"creative_id": {"type": "integer", "index": 1, "name": "creative_id", "comment": null}, "day": {"type": "timestamp without time zone", "index": 2, "name": "day", "comment": null}, "clicks": {"type": "integer", "index": 3, "name": "clicks", "comment": null}, "impressions": {"type": "integer", "index": 4, "name": "impressions", "comment": null}, "cost_in_local_currency": {"type": "integer", "index": 5, "name": "cost_in_local_currency", "comment": null}, "cost_in_usd": {"type": "integer", "index": 6, "name": "cost_in_usd", "comment": null}}, "stats": {"has_stats": {"id": "has_stats", "label": "Has Stats?", "value": false, "include": false, "description": "Indicates whether there are statistics for this table"}}, "unique_id": "seed.linkedin_source_integration_tests.linkedin_ad_analytics_by_creative_data"}, "seed.linkedin_source_integration_tests.linkedin_campaign_group_history_data": {"metadata": {"type": "BASE TABLE", "schema": "linkedin_source_integration_tests", "name": "linkedin_campaign_group_history_data", "database": "postgres", "comment": null, "owner": "pguser"}, "columns": {"id": {"type": "integer", "index": 1, "name": "id", "comment": null}, "last_modified_time": {"type": "timestamp without time zone", "index": 2, "name": "last_modified_time", "comment": null}, "account_id": {"type": "integer", "index": 3, "name": "account_id", "comment": null}, "created_time": {"type": "timestamp without time zone", "index": 4, "name": "created_time", "comment": null}, "name": {"type": "text", "index": 5, "name": "name", "comment": null}}, "stats": {"has_stats": {"id": "has_stats", "label": "Has Stats?", "value": false, "include": false, "description": "Indicates whether there are statistics for this table"}}, "unique_id": "seed.linkedin_source_integration_tests.linkedin_campaign_group_history_data"}, "seed.linkedin_source_integration_tests.linkedin_campaign_history_data": {"metadata": {"type": "BASE TABLE", "schema": "linkedin_source_integration_tests", "name": "linkedin_campaign_history_data", "database": "postgres", "comment": null, "owner": "pguser"}, "columns": {"id": {"type": "integer", "index": 1, "name": "id", "comment": null}, "last_modified_time": {"type": "timestamp without time zone", "index": 2, "name": "last_modified_time", "comment": null}, "account_id": {"type": "integer", "index": 3, "name": "account_id", "comment": null}, "campaign_group_id": {"type": "integer", "index": 4, "name": "campaign_group_id", "comment": null}, "created_time": {"type": "timestamp without time zone", "index": 5, "name": "created_time", "comment": null}, "name": {"type": "text", "index": 6, "name": "name", "comment": null}, "version_tag": {"type": "integer", "index": 7, "name": "version_tag", "comment": null}}, "stats": {"has_stats": {"id": "has_stats", "label": "Has Stats?", "value": false, "include": false, "description": "Indicates whether there are statistics for this table"}}, "unique_id": "seed.linkedin_source_integration_tests.linkedin_campaign_history_data"}, "seed.linkedin_source_integration_tests.linkedin_creative_history_data": {"metadata": {"type": "BASE TABLE", "schema": "linkedin_source_integration_tests", "name": "linkedin_creative_history_data", "database": "postgres", "comment": null, "owner": "pguser"}, "columns": {"id": {"type": "integer", "index": 1, "name": "id", "comment": null}, "campaign_id": {"type": "integer", "index": 2, "name": "campaign_id", "comment": null}, "intended_status": {"type": "character varying", "index": 3, "name": "intended_status", "comment": null}, "click_uri": {"type": "character varying", "index": 4, "name": "click_uri", "comment": null}, "last_modified_at": {"type": "timestamp without time zone", "index": 5, "name": "last_modified_at", "comment": null}, "created_time": {"type": "timestamp without time zone", "index": 6, "name": "created_time", "comment": null}}, "stats": {"has_stats": {"id": "has_stats", "label": "Has Stats?", "value": false, "include": false, "description": "Indicates whether there are statistics for this table"}}, "unique_id": "seed.linkedin_source_integration_tests.linkedin_creative_history_data"}, "model.linkedin_source.stg_linkedin_ads__account_history": {"metadata": {"type": "VIEW", "schema": "linkedin_source_integration_tests_linkedin_ads_source", "name": "stg_linkedin_ads__account_history", "database": "postgres", "comment": null, "owner": "pguser"}, "columns": {"source_relation": {"type": "text", "index": 1, "name": "source_relation", "comment": null}, "account_id": {"type": "integer", "index": 2, "name": "account_id", "comment": null}, "account_name": {"type": "text", "index": 3, "name": "account_name", "comment": null}, "currency": {"type": "text", "index": 4, "name": "currency", "comment": null}, "version_tag": {"type": "numeric", "index": 5, "name": "version_tag", "comment": null}, "status": {"type": "text", "index": 6, "name": "status", "comment": null}, "type": {"type": "text", "index": 7, "name": "type", "comment": null}, "last_modified_at": {"type": "timestamp without time zone", "index": 8, "name": "last_modified_at", "comment": null}, "created_at": {"type": "timestamp without time zone", "index": 9, "name": "created_at", "comment": null}, "is_latest_version": {"type": "boolean", "index": 10, "name": "is_latest_version", "comment": null}}, "stats": {"has_stats": {"id": "has_stats", "label": "Has Stats?", "value": false, "include": false, "description": "Indicates whether there are statistics for this table"}}, "unique_id": "model.linkedin_source.stg_linkedin_ads__account_history"}, "model.linkedin_source.stg_linkedin_ads__account_history_tmp": {"metadata": {"type": "VIEW", "schema": "linkedin_source_integration_tests_linkedin_ads_source", "name": "stg_linkedin_ads__account_history_tmp", "database": "postgres", "comment": null, "owner": "pguser"}, "columns": {"_dbt_source_relation": {"type": "text", "index": 1, "name": "_dbt_source_relation", "comment": null}}, "stats": {"has_stats": {"id": "has_stats", "label": "Has Stats?", "value": false, "include": false, "description": "Indicates whether there are statistics for this table"}}, "unique_id": "model.linkedin_source.stg_linkedin_ads__account_history_tmp"}, "model.linkedin_source.stg_linkedin_ads__ad_analytics_by_campaign": {"metadata": {"type": "VIEW", "schema": "linkedin_source_integration_tests_linkedin_ads_source", "name": "stg_linkedin_ads__ad_analytics_by_campaign", "database": "postgres", "comment": null, "owner": "pguser"}, "columns": {"source_relation": {"type": "text", "index": 1, "name": "source_relation", "comment": null}, "date_day": {"type": "timestamp without time zone", "index": 2, "name": "date_day", "comment": null}, "campaign_id": {"type": "integer", "index": 3, "name": "campaign_id", "comment": null}, "clicks": {"type": "integer", "index": 4, "name": "clicks", "comment": null}, "impressions": {"type": "integer", "index": 5, "name": "impressions", "comment": null}, "cost": {"type": "numeric(28,6)", "index": 6, "name": "cost", "comment": null}}, "stats": {"has_stats": {"id": "has_stats", "label": "Has Stats?", "value": false, "include": false, "description": "Indicates whether there are statistics for this table"}}, "unique_id": "model.linkedin_source.stg_linkedin_ads__ad_analytics_by_campaign"}, "model.linkedin_source.stg_linkedin_ads__ad_analytics_by_campaign_tmp": {"metadata": {"type": "VIEW", "schema": "linkedin_source_integration_tests_linkedin_ads_source", "name": "stg_linkedin_ads__ad_analytics_by_campaign_tmp", "database": "postgres", "comment": null, "owner": "pguser"}, "columns": {"_dbt_source_relation": {"type": "text", "index": 1, "name": "_dbt_source_relation", "comment": null}}, "stats": {"has_stats": {"id": "has_stats", "label": "Has Stats?", "value": false, "include": false, "description": "Indicates whether there are statistics for this table"}}, "unique_id": "model.linkedin_source.stg_linkedin_ads__ad_analytics_by_campaign_tmp"}, "model.linkedin_source.stg_linkedin_ads__ad_analytics_by_creative": {"metadata": {"type": "VIEW", "schema": "linkedin_source_integration_tests_linkedin_ads_source", "name": "stg_linkedin_ads__ad_analytics_by_creative", "database": "postgres", "comment": null, "owner": "pguser"}, "columns": {"source_relation": {"type": "text", "index": 1, "name": "source_relation", "comment": null}, "date_day": {"type": "timestamp without time zone", "index": 2, "name": "date_day", "comment": null}, "creative_id": {"type": "integer", "index": 3, "name": "creative_id", "comment": null}, "clicks": {"type": "integer", "index": 4, "name": "clicks", "comment": null}, "impressions": {"type": "integer", "index": 5, "name": "impressions", "comment": null}, "cost": {"type": "numeric(28,6)", "index": 6, "name": "cost", "comment": null}}, "stats": {"has_stats": {"id": "has_stats", "label": "Has Stats?", "value": false, "include": false, "description": "Indicates whether there are statistics for this table"}}, "unique_id": "model.linkedin_source.stg_linkedin_ads__ad_analytics_by_creative"}, "model.linkedin_source.stg_linkedin_ads__ad_analytics_by_creative_tmp": {"metadata": {"type": "VIEW", "schema": "linkedin_source_integration_tests_linkedin_ads_source", "name": "stg_linkedin_ads__ad_analytics_by_creative_tmp", "database": "postgres", "comment": null, "owner": "pguser"}, "columns": {"_dbt_source_relation": {"type": "text", "index": 1, "name": "_dbt_source_relation", "comment": null}}, "stats": {"has_stats": {"id": "has_stats", "label": "Has Stats?", "value": false, "include": false, "description": "Indicates whether there are statistics for this table"}}, "unique_id": "model.linkedin_source.stg_linkedin_ads__ad_analytics_by_creative_tmp"}, "model.linkedin_source.stg_linkedin_ads__campaign_group_history": {"metadata": {"type": "VIEW", "schema": "linkedin_source_integration_tests_linkedin_ads_source", "name": "stg_linkedin_ads__campaign_group_history", "database": "postgres", "comment": null, "owner": "pguser"}, "columns": {"source_relation": {"type": "text", "index": 1, "name": "source_relation", "comment": null}, "campaign_group_id": {"type": "integer", "index": 2, "name": "campaign_group_id", "comment": null}, "campaign_group_name": {"type": "text", "index": 3, "name": "campaign_group_name", "comment": null}, "account_id": {"type": "integer", "index": 4, "name": "account_id", "comment": null}, "status": {"type": "text", "index": 5, "name": "status", "comment": null}, "is_backfilled": {"type": "boolean", "index": 6, "name": "is_backfilled", "comment": null}, "run_schedule_start_at": {"type": "timestamp without time zone", "index": 7, "name": "run_schedule_start_at", "comment": null}, "run_schedule_end_at": {"type": "timestamp without time zone", "index": 8, "name": "run_schedule_end_at", "comment": null}, "last_modified_at": {"type": "timestamp without time zone", "index": 9, "name": "last_modified_at", "comment": null}, "created_at": {"type": "timestamp without time zone", "index": 10, "name": "created_at", "comment": null}, "is_latest_version": {"type": "boolean", "index": 11, "name": "is_latest_version", "comment": null}}, "stats": {"has_stats": {"id": "has_stats", "label": "Has Stats?", "value": false, "include": false, "description": "Indicates whether there are statistics for this table"}}, "unique_id": "model.linkedin_source.stg_linkedin_ads__campaign_group_history"}, "model.linkedin_source.stg_linkedin_ads__campaign_group_history_tmp": {"metadata": {"type": "VIEW", "schema": "linkedin_source_integration_tests_linkedin_ads_source", "name": "stg_linkedin_ads__campaign_group_history_tmp", "database": "postgres", "comment": null, "owner": "pguser"}, "columns": {"_dbt_source_relation": {"type": "text", "index": 1, "name": "_dbt_source_relation", "comment": null}}, "stats": {"has_stats": {"id": "has_stats", "label": "Has Stats?", "value": false, "include": false, "description": "Indicates whether there are statistics for this table"}}, "unique_id": "model.linkedin_source.stg_linkedin_ads__campaign_group_history_tmp"}, "model.linkedin_source.stg_linkedin_ads__campaign_history": {"metadata": {"type": "VIEW", "schema": "linkedin_source_integration_tests_linkedin_ads_source", "name": "stg_linkedin_ads__campaign_history", "database": "postgres", "comment": null, "owner": "pguser"}, "columns": {"source_relation": {"type": "text", "index": 1, "name": "source_relation", "comment": null}, "campaign_id": {"type": "integer", "index": 2, "name": "campaign_id", "comment": null}, "campaign_name": {"type": "text", "index": 3, "name": "campaign_name", "comment": null}, "version_tag": {"type": "numeric", "index": 4, "name": "version_tag", "comment": null}, "campaign_group_id": {"type": "integer", "index": 5, "name": "campaign_group_id", "comment": null}, "account_id": {"type": "integer", "index": 6, "name": "account_id", "comment": null}, "status": {"type": "text", "index": 7, "name": "status", "comment": null}, "type": {"type": "text", "index": 8, "name": "type", "comment": null}, "cost_type": {"type": "text", "index": 9, "name": "cost_type", "comment": null}, "creative_selection": {"type": "text", "index": 10, "name": "creative_selection", "comment": null}, "daily_budget_amount": {"type": "double precision", "index": 11, "name": "daily_budget_amount", "comment": null}, "daily_budget_currency_code": {"type": "text", "index": 12, "name": "daily_budget_currency_code", "comment": null}, "unit_cost_amount": {"type": "double precision", "index": 13, "name": "unit_cost_amount", "comment": null}, "unit_cost_currency_code": {"type": "text", "index": 14, "name": "unit_cost_currency_code", "comment": null}, "format": {"type": "text", "index": 15, "name": "format", "comment": null}, "locale_country": {"type": "text", "index": 16, "name": "locale_country", "comment": null}, "locale_language": {"type": "text", "index": 17, "name": "locale_language", "comment": null}, "objective_type": {"type": "text", "index": 18, "name": "objective_type", "comment": null}, "optimization_target_type": {"type": "text", "index": 19, "name": "optimization_target_type", "comment": null}, "is_audience_expansion_enabled": {"type": "boolean", "index": 20, "name": "is_audience_expansion_enabled", "comment": null}, "is_offsite_delivery_enabled": {"type": "boolean", "index": 21, "name": "is_offsite_delivery_enabled", "comment": null}, "run_schedule_start_at": {"type": "timestamp without time zone", "index": 22, "name": "run_schedule_start_at", "comment": null}, "run_schedule_end_at": {"type": "timestamp without time zone", "index": 23, "name": "run_schedule_end_at", "comment": null}, "last_modified_at": {"type": "timestamp without time zone", "index": 24, "name": "last_modified_at", "comment": null}, "created_at": {"type": "timestamp without time zone", "index": 25, "name": "created_at", "comment": null}, "is_latest_version": {"type": "boolean", "index": 26, "name": "is_latest_version", "comment": null}}, "stats": {"has_stats": {"id": "has_stats", "label": "Has Stats?", "value": false, "include": false, "description": "Indicates whether there are statistics for this table"}}, "unique_id": "model.linkedin_source.stg_linkedin_ads__campaign_history"}, "model.linkedin_source.stg_linkedin_ads__campaign_history_tmp": {"metadata": {"type": "VIEW", "schema": "linkedin_source_integration_tests_linkedin_ads_source", "name": "stg_linkedin_ads__campaign_history_tmp", "database": "postgres", "comment": null, "owner": "pguser"}, "columns": {"_dbt_source_relation": {"type": "text", "index": 1, "name": "_dbt_source_relation", "comment": null}}, "stats": {"has_stats": {"id": "has_stats", "label": "Has Stats?", "value": false, "include": false, "description": "Indicates whether there are statistics for this table"}}, "unique_id": "model.linkedin_source.stg_linkedin_ads__campaign_history_tmp"}, "model.linkedin_source.stg_linkedin_ads__creative_history": {"metadata": {"type": "VIEW", "schema": "linkedin_source_integration_tests_linkedin_ads_source", "name": "stg_linkedin_ads__creative_history", "database": "postgres", "comment": null, "owner": "pguser"}, "columns": {"source_relation": {"type": "text", "index": 1, "name": "source_relation", "comment": null}, "creative_id": {"type": "integer", "index": 2, "name": "creative_id", "comment": null}, "campaign_id": {"type": "integer", "index": 3, "name": "campaign_id", "comment": null}, "status": {"type": "text", "index": 4, "name": "status", "comment": null}, "click_uri": {"type": "text", "index": 5, "name": "click_uri", "comment": null}, "last_modified_at": {"type": "timestamp without time zone", "index": 6, "name": "last_modified_at", "comment": null}, "created_at": {"type": "timestamp without time zone", "index": 7, "name": "created_at", "comment": null}, "is_latest_version": {"type": "boolean", "index": 8, "name": "is_latest_version", "comment": null}, "base_url": {"type": "text", "index": 9, "name": "base_url", "comment": null}, "url_host": {"type": "text", "index": 10, "name": "url_host", "comment": null}, "url_path": {"type": "text", "index": 11, "name": "url_path", "comment": null}, "utm_source": {"type": "text", "index": 12, "name": "utm_source", "comment": null}, "utm_medium": {"type": "text", "index": 13, "name": "utm_medium", "comment": null}, "utm_campaign": {"type": "text", "index": 14, "name": "utm_campaign", "comment": null}, "utm_content": {"type": "text", "index": 15, "name": "utm_content", "comment": null}, "utm_term": {"type": "text", "index": 16, "name": "utm_term", "comment": null}}, "stats": {"has_stats": {"id": "has_stats", "label": "Has Stats?", "value": false, "include": false, "description": "Indicates whether there are statistics for this table"}}, "unique_id": "model.linkedin_source.stg_linkedin_ads__creative_history"}, "model.linkedin_source.stg_linkedin_ads__creative_history_tmp": {"metadata": {"type": "VIEW", "schema": "linkedin_source_integration_tests_linkedin_ads_source", "name": "stg_linkedin_ads__creative_history_tmp", "database": "postgres", "comment": null, "owner": "pguser"}, "columns": {"_dbt_source_relation": {"type": "text", "index": 1, "name": "_dbt_source_relation", "comment": null}}, "stats": {"has_stats": {"id": "has_stats", "label": "Has Stats?", "value": false, "include": false, "description": "Indicates whether there are statistics for this table"}}, "unique_id": "model.linkedin_source.stg_linkedin_ads__creative_history_tmp"}}, "sources": {}, "errors": null}
\ No newline at end of file
diff --git a/docs/index.html b/docs/index.html
index 65749e4..5631ac6 100644
--- a/docs/index.html
+++ b/docs/index.html
@@ -64,7 +64,7 @@
* Released under MIT license -1},In.prototype.set=function(e,t){var n=this.__data__,r=Hn(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this},Nn.prototype.clear=function(){this.size=0,this.__data__={hash:new Rn,map:new(hn||In),string:new Rn}},Nn.prototype.delete=function(e){var t=Ji(this,e).delete(e);return this.size-=t?1:0,t},Nn.prototype.get=function(e){return Ji(this,e).get(e)},Nn.prototype.has=function(e){return Ji(this,e).has(e)},Nn.prototype.set=function(e,t){var n=Ji(this,e),r=n.size;return n.set(e,t),this.size+=n.size==r?0:1,this},Mn.prototype.add=Mn.prototype.push=function(e){return this.__data__.set(e,"__lodash_hash_undefined__"),this},Mn.prototype.has=function(e){return this.__data__.has(e)},zn.prototype.clear=function(){this.__data__=new In,this.size=0},zn.prototype.delete=function(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n},zn.prototype.get=function(e){return this.__data__.get(e)},zn.prototype.has=function(e){return this.__data__.has(e)},zn.prototype.set=function(e,t){var n=this.__data__;if(n instanceof In){var r=n.__data__;if(!hn||r.length<199)return r.push([e,t]),this.size=++n.size,this;n=this.__data__=new Nn(r)}return n.set(e,t),this.size=n.size,this};var tr=ki(cr),nr=ki(ur,!0);function rr(e,t){var n=!0;return tr(e,(function(e,r,i){return n=!!t(e,r,i)})),n}function ir(e,t,n){for(var r=-1,i=e.length;++r0&&n(s)?t>1?ar(s,t-1,n,r,i):ht(i,s):r||(i[i.length]=s)}return i}var sr=Ai(),lr=Ai(!0);function cr(e,t){return e&&sr(e,t,ws)}function ur(e,t){return e&&lr(e,t,ws)}function dr(e,t){return ut(t,(function(t){return Fa(e[t])}))}function fr(e,t){for(var n=0,r=(t=li(t,e)).length;null!=e&&n-1&&e%1==0&&e\n {{ model.source_name }}.{{ model.name }}\n source table\n
\n Description
\n Columns
\n Referenced By
\n -1},In.prototype.set=function(e,t){var n=this.__data__,r=Hn(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this},Nn.prototype.clear=function(){this.size=0,this.__data__={hash:new Rn,map:new(hn||In),string:new Rn}},Nn.prototype.delete=function(e){var t=Ji(this,e).delete(e);return this.size-=t?1:0,t},Nn.prototype.get=function(e){return Ji(this,e).get(e)},Nn.prototype.has=function(e){return Ji(this,e).has(e)},Nn.prototype.set=function(e,t){var n=Ji(this,e),r=n.size;return n.set(e,t),this.size+=n.size==r?0:1,this},Mn.prototype.add=Mn.prototype.push=function(e){return this.__data__.set(e,"__lodash_hash_undefined__"),this},Mn.prototype.has=function(e){return this.__data__.has(e)},zn.prototype.clear=function(){this.__data__=new In,this.size=0},zn.prototype.delete=function(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n},zn.prototype.get=function(e){return this.__data__.get(e)},zn.prototype.has=function(e){return this.__data__.has(e)},zn.prototype.set=function(e,t){var n=this.__data__;if(n instanceof In){var r=n.__data__;if(!hn||r.length<199)return r.push([e,t]),this.size=++n.size,this;n=this.__data__=new Nn(r)}return n.set(e,t),this.size=n.size,this};var tr=ki(cr),nr=ki(ur,!0);function rr(e,t){var n=!0;return tr(e,(function(e,r,i){return n=!!t(e,r,i)})),n}function ir(e,t,n){for(var r=-1,i=e.length;++r0&&n(s)?t>1?ar(s,t-1,n,r,i):ht(i,s):r||(i[i.length]=s)}return i}var sr=Ai(),lr=Ai(!0);function cr(e,t){return e&&sr(e,t,ws)}function ur(e,t){return e&&lr(e,t,ws)}function dr(e,t){return ut(t,(function(t){return Fa(e[t])}))}function fr(e,t){for(var n=0,r=(t=li(t,e)).length;null!=e&&n-1&&e%1==0&&e\n {{ model.source_name }}.{{ model.name }}\n source table\n
\n Description
\n Columns
\n Referenced By
\n
\n":"'+(n?e:c(e,!0))+"\n
"},a.prototype.blockquote=function(e){return""+(n?e:c(e,!0))+"\n
\n"+e+"
\n"},a.prototype.html=function(e){return e},a.prototype.heading=function(e,t,n){return"
\n":"
\n"},a.prototype.list=function(e,t,n){var r=t?"ol":"ul";return"<"+r+(t&&1!==n?' start="'+n+'"':"")+">\n"+e+""+r+">\n"},a.prototype.listitem=function(e){return"\n\n"+e+"\n\n"+t+"\n
\n"},a.prototype.tablerow=function(e){return"\n"+e+" \n"},a.prototype.tablecell=function(e,t){var n=t.header?"th":"td";return(t.align?"<"+n+' style="text-align:'+t.align+'">':"<"+n+">")+e+""+n+">\n"},a.prototype.strong=function(e){return""+e+""},a.prototype.em=function(e){return""+e+""},a.prototype.codespan=function(e){return""+e+"
"},a.prototype.br=function(){return this.options.xhtml?"
":"
"},a.prototype.del=function(e){return""+e+""},a.prototype.link=function(e,t,n){if(this.options.sanitize){try{var r=decodeURIComponent(u(e)).replace(/[^\w:]/g,"").toLowerCase()}catch(e){return n}if(0===r.indexOf("javascript:")||0===r.indexOf("vbscript:")||0===r.indexOf("data:"))return n}this.options.baseUrl&&!h.test(e)&&(e=f(this.options.baseUrl,e));var i='"+n+""},a.prototype.image=function(e,t,n){this.options.baseUrl&&!h.test(e)&&(e=f(this.options.baseUrl,e));var r='":">"},a.prototype.text=function(e){return e},s.prototype.strong=s.prototype.em=s.prototype.codespan=s.prototype.del=s.prototype.text=function(e){return e},s.prototype.link=s.prototype.image=function(e,t,n){return""+n},s.prototype.br=function(){return""},l.parse=function(e,t){return new l(t).parse(e)},l.prototype.parse=function(e){this.inline=new o(e.links,this.options),this.inlineText=new o(e.links,m({},this.options,{renderer:new s})),this.tokens=e.reverse();for(var t="";this.next();)t+=this.tok();return t},l.prototype.next=function(){return this.token=this.tokens.pop()},l.prototype.peek=function(){return this.tokens[this.tokens.length-1]||0},l.prototype.parseText=function(){for(var e=this.token.text;"text"===this.peek().type;)e+="\n"+this.next().text;return this.inline.output(e)},l.prototype.tok=function(){switch(this.token.type){case"space":return"";case"hr":return this.renderer.hr();case"heading":return this.renderer.heading(this.inline.output(this.token.text),this.token.depth,u(this.inlineText.output(this.token.text)));case"code":return this.renderer.code(this.token.text,this.token.lang,this.token.escaped);case"table":var e,t,n,r,i="",o="";for(n="",e=0;e
"+c(e.message+"",!0)+"";throw e}}g.exec=g,v.options=v.setOptions=function(e){return m(v.defaults,e),v},v.defaults={gfm:!0,tables:!0,breaks:!1,pedantic:!1,sanitize:!1,sanitizer:null,mangle:!0,smartLists:!1,silent:!1,highlight:null,langPrefix:"lang-",smartypants:!1,headerPrefix:"",renderer:new a,xhtml:!1,baseUrl:null},v.Parser=l,v.parser=l.parse,v.Renderer=a,v.TextRenderer=s,v.Lexer=r,v.lexer=r.lex,v.InlineLexer=o,v.inlineLexer=o.output,v.parse=v,e.exports=v}(this||"undefined"!=typeof window&&window)}).call(this,n(35))},function(e,t,n){n(231),n(233),n(422),n(424),n(428),n(430),n(434),n(436),n(440),n(442)},function(e,t,n){"use strict";const r=n(232),i=n(21),o=n(31);angular.module("dbt").directive("graphLauncher",["$state","$q","graph","selectorService","project","trackingService","locationService",function(e,t,n,a,s,l,c){return{restrict:"EA",replace:!0,scope:{},templateUrl:r,link:function(t,r){t.filters_visible=!1,t.graphService=n,t.selectorService=a,t.allSelected=!0;var s={tags:{visible:!1},packages:{visible:!1},resource_types:{visible:!1}};t.onWindowClick=function(e){o(e.target);var t=o(e.target).closest(".dropup");t.length||(s.tags.visible=!1,s.packages.visible=!1);var n=t.data("form-type");i.each(s,(function(e,t){t!=n&&(e.visible=!1)})),o(e.target).closest("#graph-viz-wrapper").length&&setTimeout((function(){o(":focus").blur()}))},t.onSelectClick=function(e){i.each(s,(function(t,n){n==e&&(t.visible=!t.visible,t.visible||o(":focus").blur())}))},t.isVisible=function(e){return s[e].visible},t.isSelected=function(e,t){return-1!=a.selection.dirty[e].indexOf(t)},t.onSelectAll=function(e,n,r){var i=a.selection.dirty;i[e]=n?[...a.options[e]]:[],t.allSelected=!t.allSelected,r.preventDefault()},t.onItemSelect=function(e,n,r){var o=a.selection.dirty;t.isSelected(e,n)?o[e]=i.without(o[e],n):o[e]=i.union(o[e],[n]),r.preventDefault()},t.onSelectBlur=function(e,n){n&&(n.relatedTarget&&"SELECT"!=n.relatedTarget.tagName||t.isVisible(e)&&o(n.target).focus())},t.resourceTypeTitle=function(e){return"analysis"==e?"Analyses":e[0].toUpperCase()+e.slice(1)+"s"},t.selectionLabel=function(e,t){var n=a.selection.dirty[e],r=a.options[e];return 0==n.length?"None selected":1==n.length?n[0]||t:n.length==r.length?"All selected":n.length+" selected"},t.onUpdateSelector=function(){var e=a.updateSelection(),t=n.updateGraph(e);l.track_graph_interaction("update-graph",t.length)},t.showExpanded=function(){var e=a.getViewNode(),t=e?e.name:null;if(e&&"source"==e.resource_type)var r=n.showFullGraph("source:"+e.source_name+"."+e.name);else if(e&&"exposure"==e.resource_type)r=n.showFullGraph("exposure:"+e.name);else if(e&&"metric"==e.resource_type)r=n.showFullGraph("metric:"+e.name);else r=n.showFullGraph(t);l.track_graph_interaction("show-expanded",r.length)},t.showContracted=function(){var e=a.getViewNode();if(e&&"source"==e.resource_type)var t=n.showVerticalGraph("source:"+e.source_name+"."+e.name,!0);else if(e&&"exposure"==e.resource_type)t=n.showVerticalGraph("exposure:"+e.name,!0);else if(e&&"metric"==e.resource_type)t=n.showVerticalGraph("metric:"+e.name,!0);else t=n.showVerticalGraph(e.name,!0);c.clearState(),l.track_graph_interaction("show-contracted",t.length)},t.closeGraph=function(){n.hideGraph(),c.clearState()},t.onLauncherClick=function(){var r=a.getViewNode();if(r)a.resetSelection(r),t.showContracted();else if(e.params.source){a.resetSelection(),t.showExpanded();var i=a.selectSource(e.params.source,{children:!0});setTimeout((function(){n.updateGraph(i)}))}else a.resetSelection(),t.showExpanded()},t.$watch((function(){return a.selection.dirty}),(function(e,t){if(a.isDirty()){var r=n.graph.pristine.dag,o=n.graph.pristine.nodes,s=a.selection.clean,l=a.selection.dirty,c=a.selectNodes(r,o,s),u=a.selectNodes(r,o,l),d=i.difference(c.selected,u.selected);n.markDirty(d)}else n.markAllClean()}),!0)}}}])},function(e,t){var n="/components/graph/graph-launcher.html";window.angular.module("ng").run(["$templateCache",function(e){e.put(n,'\n
'+(n?e:c(e,!0))+"\n
\n":""+(n?e:c(e,!0))+"\n
"},a.prototype.blockquote=function(e){return"\n"+e+"\n"},a.prototype.html=function(e){return e},a.prototype.heading=function(e,t,n){return"
"+e+"
\n"},a.prototype.table=function(e,t){return""+e+"
"},a.prototype.br=function(){return this.options.xhtml?""+c(e.message+"",!0)+"";throw e}}g.exec=g,v.options=v.setOptions=function(e){return m(v.defaults,e),v},v.defaults={gfm:!0,tables:!0,breaks:!1,pedantic:!1,sanitize:!1,sanitizer:null,mangle:!0,smartLists:!1,silent:!1,highlight:null,langPrefix:"lang-",smartypants:!1,headerPrefix:"",renderer:new a,xhtml:!1,baseUrl:null},v.Parser=l,v.parser=l.parse,v.Renderer=a,v.TextRenderer=s,v.Lexer=r,v.lexer=r.lex,v.InlineLexer=o,v.inlineLexer=o.output,v.parse=v,e.exports=v}(this||"undefined"!=typeof window&&window)}).call(this,n(35))},function(e,t,n){n(231),n(233),n(422),n(424),n(428),n(430),n(434),n(436),n(440),n(442)},function(e,t,n){"use strict";const r=n(232),i=n(21),o=n(31);angular.module("dbt").directive("graphLauncher",["$state","$q","graph","selectorService","project","trackingService","locationService",function(e,t,n,a,s,l,c){return{restrict:"EA",replace:!0,scope:{},templateUrl:r,link:function(t,r){t.filters_visible=!1,t.graphService=n,t.selectorService=a,t.allSelected=!0;var s={tags:{visible:!1},packages:{visible:!1},resource_types:{visible:!1}};t.onWindowClick=function(e){o(e.target);var t=o(e.target).closest(".dropup");t.length||(s.tags.visible=!1,s.packages.visible=!1);var n=t.data("form-type");i.each(s,(function(e,t){t!=n&&(e.visible=!1)})),o(e.target).closest("#graph-viz-wrapper").length&&setTimeout((function(){o(":focus").blur()}))},t.onSelectClick=function(e){i.each(s,(function(t,n){n==e&&(t.visible=!t.visible,t.visible||o(":focus").blur())}))},t.isVisible=function(e){return s[e].visible},t.isSelected=function(e,t){return-1!=a.selection.dirty[e].indexOf(t)},t.onSelectAll=function(e,n,r){var i=a.selection.dirty;i[e]=n?[...a.options[e]]:[],t.allSelected=!t.allSelected,r.preventDefault()},t.onItemSelect=function(e,n,r){var o=a.selection.dirty;t.isSelected(e,n)?o[e]=i.without(o[e],n):o[e]=i.union(o[e],[n]),r.preventDefault()},t.onSelectBlur=function(e,n){n&&(n.relatedTarget&&"SELECT"!=n.relatedTarget.tagName||t.isVisible(e)&&o(n.target).focus())},t.resourceTypeTitle=function(e){return"analysis"==e?"Analyses":e[0].toUpperCase()+e.slice(1)+"s"},t.selectionLabel=function(e,t){var n=a.selection.dirty[e],r=a.options[e];return 0==n.length?"None selected":1==n.length?n[0]||t:n.length==r.length?"All selected":n.length+" selected"},t.onUpdateSelector=function(){var e=a.updateSelection(),t=n.updateGraph(e);l.track_graph_interaction("update-graph",t.length)},t.showExpanded=function(){var e=a.getViewNode(),t=e?e.name:null;if(e&&"source"==e.resource_type)var r=n.showFullGraph("source:"+e.source_name+"."+e.name);else if(e&&"exposure"==e.resource_type)r=n.showFullGraph("exposure:"+e.name);else if(e&&"metric"==e.resource_type)r=n.showFullGraph("metric:"+e.name);else r=n.showFullGraph(t);l.track_graph_interaction("show-expanded",r.length)},t.showContracted=function(){var e=a.getViewNode();if(e&&"source"==e.resource_type)var t=n.showVerticalGraph("source:"+e.source_name+"."+e.name,!0);else if(e&&"exposure"==e.resource_type)t=n.showVerticalGraph("exposure:"+e.name,!0);else if(e&&"metric"==e.resource_type)t=n.showVerticalGraph("metric:"+e.name,!0);else t=n.showVerticalGraph(e.name,!0);c.clearState(),l.track_graph_interaction("show-contracted",t.length)},t.closeGraph=function(){n.hideGraph(),c.clearState()},t.onLauncherClick=function(){var r=a.getViewNode();if(r)a.resetSelection(r),t.showContracted();else if(e.params.source){a.resetSelection(),t.showExpanded();var i=a.selectSource(e.params.source,{children:!0});setTimeout((function(){n.updateGraph(i)}))}else a.resetSelection(),t.showExpanded()},t.$watch((function(){return a.selection.dirty}),(function(e,t){if(a.isDirty()){var r=n.graph.pristine.dag,o=n.graph.pristine.nodes,s=a.selection.clean,l=a.selection.dirty,c=a.selectNodes(r,o,s),u=a.selectNodes(r,o,l),d=i.difference(c.selected,u.selected);n.markDirty(d)}else n.markAllClean()}),!0)}}}])},function(e,t){var n="/components/graph/graph-launcher.html";window.angular.module("ng").run(["$templateCache",function(e){e.put(n,'\n
{{ tag }}
\n Column | \nType | \nDescription | \nTests | \nMore? | \n
---|---|---|---|---|
\n \n {{ get_col_name(column.name) }}\n \n | \n \n {{ column.type }}\n | \n \n\n \n U\n N\n F\n A\n +\n \n | \n\n \n \n \n \n \n \n \n \n | \n|
\n \n \n \n \n\n Details\n\n \n \n \n
\n \n\n Description\n \n\n \n Generic Tests\n
| \n
\n Argument | \nType | \nDescription | \nMore? | \n
---|---|---|---|
\n \n {{ arg.name }}\n \n | \n \n {{ arg.type }}\n | \n \n\n \n \n \n \n \n \n \n \n | \n|
\n \n \n \n \n Description\n \n | \n