June 2020
Schema changes
AdRoll
We have added a new field, advertisable_name, to the following tables:
ALL_AUDIENCEALL_CAMPAIGNSALL_ADSALL_ADGROUPS
Fivetran Platform Connector
We have added a new table, CREDITS_USED. This table stores the monthly credit usage summary per destination.
Jira
We have added a new way to sync issue field values and their historical changes. Previously, users whose ISSUE table had a large number of fields found that it was generating an overwhelming amount of ISSUE_[FIELD_NAME]_HISTORY tables.
Now, the ISSUE table contains only columns for the Jira standard fields.
We added a FIELD table that contains information about all fields. We sync all values from the custom non-array fields and their history items to a single ISSUE_FIELD_HISTORY table. We sync all values from the array fields and their history items to a single ISSUE_MULTISELECT_HISTORY table. We sync initial null values from history items to the history tables to provide a better historical analysis.
If you would like to use this new method, contact our support team to enable it. Then, create a new connector or re-sync the existing one.
Mandrill
We have changed the data type of the location_longitude and location_latitude columns in the EVENT table from DOUBLE to STRING.
Microsoft Advertising
We have made multiple schema changes to support all the available fields for the reporting tables. See Microsoft’s documentation about reporting value sets.
We have added the following fields to the CAMPAIGN_PERFORMANCE_HOURLY_REPORT, CAMPAIGN_PERFORMANCE_DAILY_REPORT, AD_GROUP_PERFORMANCE_HOURLY_REPORT, AD_GROUP_PERFORMANCE_DAILY_REPORT, AD_PERFORMANCE_HOURLY_REPORT, AD_PERFORMANCE_DAILY_REPORT, KEYWORD_PERFORMANCE_HOURLY_REPORT, and KEYWORD_PERFORMANCE_DAILY_REPORT tables:
all_conversionsall_conversion_rateall_cost_per_conversionall_return_on_ad_spendall_revenueall_revenue_per_conversionview_through_conversions
We have added the following fields to the CAMPAIGN_IMPRESSION_PERFORMANCE_HOURLY_REPORT, CAMPAIGN_IMPRESSION_PERFORMANCE_DAILY_REPORT, AD_GROUP_IMPRESSION_PERFORMANCE_HOURLY_REPORT, and AD_GROUP_IMPRESSION_PERFORMANCE_DAILY_REPORT tables:
all_conversionsall_conversion_rateall_cost_per_conversionall_return_on_ad_spendall_revenueall_revenue_per_conversionview_through_conversionstop_impression_rate_percenttop_impression_share_percenttop_impression_share_lost_to_budget_percenttop_impression_share_lost_to_rank_percentabsolute_top_impression_rate_percentabsolute_top_impression_share_lost_to_budget_percentabsolute_top_impression_share_lost_to_rank_percent
NetSuite SuiteAnalytics
We now add a _fivetran_synced column while syncing empty tables and columns from the source.
We have added the following new tables:
ADDRESSESBILL_OF_MATERIALSBOM_REVISION_COMPONENTSBOM_REVISIONSCURRENCY_EXCHANGE_RATE_TYPESCURRENCY_EXCHANGE_RATESEMPLOYEE_CURRENCY_MAPINBOUND_SHIPMENTSITEM_COLLECTION_ITEM_MAPITEM_COLLECTIONSITEM_PRICE_HISTORYLOCATION_COSTING_GROUPSLOCATION_COSTING_GRP_LOCATIONSPURCHASE_CHARGE_RULESRESOURCE_GROUP_ENTITY_MAPRESOURCE_GROUPSSUBSCRIPTION_LINE_REVISIONSTRANSACTION_HISTORYUNLOCKED_TIME_PERIODS
Outbrain
We have removed the following fields from the tables below:
statusfrom thePROMOTED_LINK_HISTORYtabletotal_valuefrom theCAMPAIGN_REPORT,GEOLOCATION_REPORT,PROMOTED_LINK_REPORT, andSECTION_REPORTtables
Recurly
We have added three new fields to replace the following fields in the TRANSACTION table:
payment_gateway_idreplacespayment_gatewayidpayment_gateway_typereplacespayment_gatewaytypepayment_gateway_namereplacespayment_gatewayname
Update your queries with the new field names to sync data into these fields.
Stripe
We have added a new table, USAGE_RECORD. This table stores the usage records of a subscription.
Zendesk Support
We have added a new column, created_at, to the SCHEDULE table.
Improvements
Adobe Analytics
We now support JSON Web Token (JWT) Authentication for the Adobe Analytics connector. All new connections created after June 29, 2020 will support JWT authentication.
Amazon S3
We now exclude S3 objects that have been archived to Glacier storage class from our data syncs. If you want us to sync these objects, restore them to standard storage.
Asana
You can now control which projects will be synced. Project IDs are now listed in the Specific Projects section of the Fivetran setup form.
Azure Synapse
We have changed the way we load data from our Azure Blob Storage staging area into Azure Synapse. We now use COPY instead of PolyBase.
Using COPY instead of PolyBase improves data security. During a sync, the destination is now provided with limited and temporary access to only the files that need to be synced instead of the entire storage account. We are gradually rolling out this change to all existing connections.
Braintree
We have improved the sync speed for our Braintree connector by changing the sync strategy of the TRANSACTION table. We now use multiple API calls with filters to sync data from the TRANSACTION table.
Google Ad Manager
We have upgraded our Google Ad Manager connector from version 201908 to 201911 of the Ad Manager API and handled deprecations and updates. Read more about the deprecations and changes in Google's Ad Manager API documentation.
New dimensions:
cms_metadatachild_network_idchild_network_code
Deprecated dimensions:
proposal_line_item_idproposal_line_item_nameproposal_idproposal_nameall_salespeople_idall_salespeople_namesales_team_idsales_team_nameproposal_agency_idproposal_agency_nameproduct_idproduct_nameproduct_template_idproduct_template_namerate_card_idrate_card_nameworkflow_idworkflow_namepackage_idpackage_nameproduct_package_idproduct_package_name
New columns:
unique_reach_frequencyunique_reach_impressionsunique_reachdp_active_view_eligible_impressionsdp_active_view_measurable_impressionsdp_active_view_viewable_impressionsdp_active_view_measurable_impressions_ratedp_active_view_viewable_impressions_rate
Deprecated columns:
reach_frequencyreach_average_revenuereachcontracted_revenue_contracted_net_revenuecontracted_revenue_local_contracted_net_revenuecontracted_revenue_contracted_gross_revenuecontracted_revenue_local_contracted_gross_revenuecontracted_revenue_contracted_vatcontracted_revenue_local_contracted_vatcontracted_revenue_contracted_agency_commissioncontracted_revenue_local_contracted_agency_commissionsales_contract_contracted_impressionssales_contract_contracted_clickssales_contract_contracted_volumesales_contract_budgetsales_contract_remaining_budgetsales_contract_buffered_impressionssales_contract_buffered_clicksscheduled_scheduled_impressionsscheduled_scheduled_clicksscheduled_scheduled_volumescheduled_scheduled_net_revenuescheduled_local_scheduled_net_revenuescheduled_scheduled_gross_revenuescheduled_local_scheduled_gross_revenuesales_total_total_budgetsales_total_total_remaining_budgetsales_total_total_contracted_volumesales_total_total_contracted_net_revenuesales_total_local_total_contracted_net_revenuesales_total_total_contracted_gross_revenuesales_total_local_total_contracted_gross_revenuesales_total_total_contracted_agency_commissionsales_total_local_total_contracted_agency_commissionsales_total_total_contracted_net_revenue_with_vatsales_total_local_total_contracted_net_revenue_with_vatsales_total_total_scheduled_volumesales_total_total_scheduled_net_revenuesales_total_local_total_scheduled_net_revenuesales_total_total_scheduled_gross_revenuesales_total_local_total_scheduled_gross_revenueunified_revenue_unreconciled_net_revenueunified_revenue_local_unreconciled_net_revenueunified_revenue_unreconciled_gross_revenueunified_revenue_local_unreconciled_gross_revenueunified_revenue_forecasted_net_revenueunified_revenue_local_forecasted_net_revenueunified_revenue_forecasted_gross_revenueunified_revenue_local_forecasted_gross_revenueunified_revenue_unified_net_revenueunified_revenue_local_unified_net_revenueunified_revenue_unified_gross_revenueunified_revenue_local_unified_gross_revenueunified_revenue_unified_agency_commissionunified_revenue_local_unified_agency_commissionunified_revenue_unreconciled_volumeunified_revenue_forecasted_volumeunified_revenue_unified_volumeexpected_revenue_expected_net_revenueexpected_revenue_local_expected_net_revenueexpected_revenue_expected_gross_revenueexpected_revenue_local_expected_gross_revenuesales_pipeline_pipeline_net_revenuesales_pipeline_local_pipeline_net_revenuesales_pipeline_pipeline_gross_revenuesales_pipeline_local_pipeline_gross_revenuesales_pipeline_pipeline_agency_commissionsales_pipeline_local_pipeline_agency_commissionreconciliation_dfp_volumereconciliation_third_party_volumereconciliation_reconciled_volumereconciliation_discrepancyreconciliation_reconciled_revenuereconciliation_impression_discrepancyreconciliation_click_discrepancyreconciliation_revenue_discrepancybilling_billable_net_revenuebilling_local_billable_net_revenuebilling_billable_gross_revenuebilling_local_billable_gross_revenuebilling_billable_net_revenue_before_manual_adjustmentbilling_local_billable_net_revenue_before_manual_adjustmentbilling_billable_gross_revenue_before_manual_adjustmentbilling_local_billable_gross_revenue_before_manual_adjustmentbilling_billable_vatbilling_local_billable_vatbilling_billable_agency_commissionbilling_local_billable_agency_commissionbilling_cap_quantitybilling_billable_volumebilling_delivery_rollover_from_previousbilling_realized_cpmbilling_realized_ratediscounts_breakdown_contracted_net_overall_discountdiscounts_breakdown_billable_net_overall_discountdiscounts_breakdown_contracted_net_non_billable
Deprecated dimension attributes:
proposal_start_date_timeproposal_end_date_timeproposal_creation_date_timeproposal_sold_date_timeproposal_is_soldproposal_probability_to_closeproposal_status_v2proposal_archival_statusproposal_currencyproposal_exchange_rateproposal_agency_commission_rateproposal_vat_rateproposal_discountproposal_advertiser_discountproposal_advertiserproposal_advertiser_idproposal_agenciesproposal_agency_idsproposal_po_numberproposal_primary_salespersonproposal_secondary_salespeopleproposal_creatorproposal_sales_plannersproposal_pricing_modelproposal_billing_sourceproposal_billing_capproposal_billing_scheduleproposal_applied_team_namesproposal_approval_stageproposal_inventory_release_date_timeproposal_local_budgetproposal_local_remaining_budgetproposal_flat_feeproposal_is_programmaticproposal_line_item_start_date_timeproposal_line_item_end_date_timeproposal_line_item_rate_typeproposal_line_item_reservation_statusproposal_line_item_cost_per_unitproposal_line_item_local_cost_per_unitproposal_line_item_cost_per_unit_grossproposal_line_item_local_cost_per_unit_grossproposal_line_item_type_and_priorityproposal_line_item_sizeproposal_line_item_archival_statusproposal_line_item_product_adjustmentproposal_line_item_bufferproposal_line_item_target_rate_netproposal_line_item_billing_sourceproposal_line_item_billing_capproposal_line_item_billing_scheduleproposal_line_item_goal_percentageproposal_line_item_cost_adjustmentproposal_line_item_commentsproposal_line_item_reconciliation_statusproposal_line_item_last_reconciliation_date_timeproposal_line_item_flat_feeproduct_package_item_archival_statusproposal_line_item_typeproduct_template_rate_typeproduct_template_statusproduct_template_type_and_priorityproduct_template_product_typeproduct_template_descriptionproduct_product_template_nameproduct_rate_typeproduct_statusproduct_type_and_priorityproduct_product_typeproduct_notesproduct_inventory_sizesproduct_ratepackaged_product_rateproposal_agency_typeproposal_agency_credit_statusproposal_agency_external_idproposal_agency_commentsalespeople_proposal_contributionsalesperson_proposal_contributionproduct_package_notesproduct_package_itemsproduct_package_statuspackage_commentspackage_start_date_timepackage_end_date_time
Google Ads
When creating a connector, now you can select specific manager accounts (former sub-MCC accounts) to sync. Fivetran will automatically find and sync clients of these manager accounts. Read more about sync modes in our Google Ads Setup Guide.
Google Campaign Manager 360
You can now enable or disable all REACH dimension combinations in the report.
Google Sheets
We now skip the _fivetran_synced column if it is exist in the source Google Sheet. We use this name for the system column that keeps track of when each row was last successfully synced.
Greenhouse
We now sync job opening updates with increased accuracy.
Jira
We have improved the mechanism that detects the changelog. Now, if a fieldId is not present in the Jira response, we will find the changelog entries using a fieldname. This improvement prevents data integrity issues when the current field value is written into the history table as initial.
JSONL support
We now support jsonl file extensions in all file connectors.
Lever
We have fixed a bug where deleted records were incorrectly synced to your destination. Previously, deleted rows had false as their _fivetran_deleted value, but they now have true as their _fivetran_deleted value. Any previously synced deleted records will be corrected in your next sync.
Microsoft Advertising
You can now select the *_history tables you want to sync from the Schema tab on your connector details page.
NetSuite SuiteAnalytics
We now create empty tables in the destination even if the source tables are empty (contain only Null values).
We now support NetSuite 2020 Release 1 API version. We will gradually roll out this change.
PostgreSQL
We now replicate empty tables in a PostgreSQL source database as empty tables in the destination.
Salesforce
We no longer capture deletes for tables with names ending with _HISTORY, for example, OBJECT_NAME_HISTORY. Deletes from these tables contributed an unacceptably high amount of monthly active rows.
You can now select the FIVETRAN_API_CALL and FIVETRAN_QUERY tables to sync from the Schema tab on your connector details page.
Snowplow
You can now add multiple Snowplow connectors per destination.
SQL Server
We have changed our sync strategy for users who chose to exclude new tables from their data syncs by default. Our new sync method improves your sync speed, especially if you have a large number of tables.
Stripe
We can now enable support for your Stripe Connected Accounts on your connector. Contact our Support team to enable this feature on your connector.
REST API Improvements
Create a Destination Public API Endpoint Extension
We have expanded the current public API endpoint Create a Destination. Now, you can:
- control whether setup test are executed automatically by specifying the
run_setup_testsparameter. - create a Snowflake destination with password-based or key-based authentication types. Read our updated documentation about Snowflake destination config.
Google Ad Manager
You can now configure your Google Ad Manager connector using the Fivetran REST API. This feature is in BETA and available only for Standard and Enterprise accounts.
New Public API Endpoints
We have implemented new Connector, Group, and Destination Management API endpoints for our REST API. You can now leverage the following new features: