- Corrected references to connectors and connections in the README. (#41)
PR #40 includes the following updates:
- Updates the default configuration for the
marketo__enable_campaignsandmarketo__enable_programsvariables from disabled to enabled, activating thestg_marketo__campaignsandstg_marketo__programmodels by default.- Quickstart dynamically manages these settings, but non-Quickstart users or those not syncing campaign or program tables should adjust the variables accordingly. Refer to the README for details.
PR #38 includes the following updates:
- Added the
action_resultfield in thestg_marketo__activity_send_emailmodel to capture email action outcomes, allowing for filtering in downstream models.- Note: If you have previously added this field via the
marketo__activity_send_email_passthrough_columnsvariable, remove or alias it there to prevent duplicate column errors. See the README for more details on working with passthrough columns.
- Note: If you have previously added this field via the
- Added
action_resultdetails to dbt documentation.
- Updated seed data to include
action_result. - Updated the
get_activity_send_email_columnsmacro to supportaction_result.
PR #35 includes the following updates:
- Ensures that
stg_marketo__leadhas and documents the below columns, all standard fields from Marketo. Previously, peristed all fields found in yourLEADsource table but only ensured that theid,created_at,updated_at,email,first_name,last_name, and_fivetran_syncedfields were included. If any of the following default columns are missing from yourLEADtable,stg_marketo__leadwill create a NULL version with the proper data type:phonemain_phonemobile_phonecompanyinferred_companyaddress_leadaddresscitystatestate_codecountrycountry_codepostal_codebilling_streetbilling_citybilling_statebilling_state_codebilling_countrybilling_country_codebilling_postal_codeinferred_cityinferred_state_regioninferred_countryinferred_postal_codeinferred_phone_area_codeanonymous_ipunsubscribed-> aliased asis_unsubscribed(🚨 breaking change 🚨)email_invalid-> aliased asis_email_invalid(🚨 breaking change 🚨)do_not_call
Note: the above fields will persist downstream into the transform
marketo__leadsmodel.
- Updated the maintainer PR template to resemble the most up to date format.
- Included auto-releaser GitHub Actions workflow to automate future releases.
PR #33 includes the following updates in connection with the Fivetran Marketo connector's June 2023 and May 2023 releases:
- Added passthrough column support for the following sources. (Note: If you are missing any columns from the prior version of this package, utilize the passthrough capability to bring these columns in. Only non-custom columns are included going forward. For more information refer to the Passing Through Additional Columns section in the README.)
- activity_send_email
- program
- Following the connector upgrade, a number of fields were removed and added to the source tables. These added and removed fields have been accounted for appropriately within the staging models. See the full list below:
- Fields added to
lead:- first_name
- last_name
- Fields added to
program:- _fivetran_deleted
- Fields removed from
campaign:- program_name
- Fields added to
campaign:- computed_url
- flow_id
- folder_id
- folder_type
- is_communication_limit_enabled
- is_requestable
- is_system
- max_members
- qualification_rule_type
- qualification_rule_interval
- qualification_rule_unit
- recurrence_start_at
- recurrence_end_at
- recurrence_interval_type
- recurrence_interval
- recurrence_weekday_only
- recurrence_day_of_month
- recurrence_day_of_week
- recurrence_week_of_month
- smart_list_id
- status
- _fivetran_deleted
- Fields added to
PR #33 includes the following updates:
- Updated the following models to filter out records where
_fivetran_deletedis true.stg_marketo__campaignsstg_marketo__program
- Updated documentation and testing seed data PR #31 includes the following updates:
- Incorporated the new
fivetran_utils.drop_schemas_automationmacro into the end of each Buildkite integration test job. - Updated the pull request templates.
PR #30 includes the following breaking changes:
- Dispatch update for dbt-utils to dbt-core cross-db macros migration. Specifically
{{ dbt_utils.<macro> }}have been updated to{{ dbt.<macro> }}for the below macros:any_valuebool_orcast_bool_to_textconcatdate_truncdateadddatediffescape_single_quotesexcepthashintersectlast_daylengthlistaggpositionreplacerightsafe_castsplit_partstring_literaltype_biginttype_floattype_inttype_numerictype_stringtype_timestamparray_appendarray_concatarray_construct
- For
current_timestampandcurrent_timestamp_in_utcmacros, the dispatch AND the macro names have been updated to the below, respectively:dbt.current_timestamp_backcompatdbt.current_timestamp_in_utc_backcompat
dbt_utils.surrogate_keyhas also been updated todbt_utils.generate_surrogate_key. Since the method for creating surrogate keys differ, we suggest all users do afull-refreshfor the most accurate data. For more information, please refer to dbt-utils release notes for this update.packages.ymlhas been updated to reflect new defaultfivetran/fivetran_utilsversion, previously[">=0.3.0", "<0.4.0"]now[">=0.4.0", "<0.5.0"].
PR #28 incorporates the following updates:
Some of the more complex transformation logic has been moved from the Marketo source package to the transform package. This was done so the delineation between staging and intermediate models is in line with Fivetran's other packages. This does not affect the final tables created by the transform package, but this will affect the staging tables as outlined below.
- Model
stg_marketo__lead_basefromdbt_marketo_sourcehas been rolled intostg_marketo__lead. - Parts from model
stg_marketo__leadfromdbt_marketo_sourcehave been moved to a new modelint_marketo__leadindbt_marketo. - The default schema for the source tables are now built within a schema titled (
<target_schema>+_marketo_source) in your destination. The previous default schema was (<target_schema>+_stg_marketo). This may be overwritten if desired.
- 🎉 Databricks and Postgres compatibility 🎉
- Ability to disable
activity_delete_leadmodel if necessary (see README for instructions). - Updated structure of config default variables for enabling
campaignsandprogrammodels to avoid conflicting with a user's settings. - Added
marketo_[source_table_name]_identifiervariables to allow for easier flexibility of the package to refer to source tables with different names.
- Updated surrogate key
email_send_idto includeprimary_attribute_value_id. The previous key was at a campaign level grain, not an email level grain. This is pertinent in the case where there are multiple emails that are part of the same campaign. #26
- Explicitly cast the activity_timestamp field as
timestamp without time zone, otherwise in Redshift this would be passed down astimestamp with time zoneand cause date functions to fail (#22) #23
- Previously,
merged_into_lead_idandlead_idwere erroneously switched instg_marketo__lead. This release switches them back, appropriately castingmerged_into_lead_idas a string (it can have multiple comma-separated values) andlead_idas an integer (fivetran/dbt_marketo#17).
This is a BREAKING CHANGE as you will need to run a full refresh due to the columns' differing data types.
🎉 dbt v1.0.0 Compatibility 🎉
- Adjusts the
require-dbt-versionto now be within the range [">=1.0.0", "<2.0.0"]. Additionally, the package has been updated for dbt v1.0.0 compatibility. If you are using a dbt version <1.0.0, you will need to upgrade in order to leverage the latest version of the package.- For help upgrading your package, I recommend reviewing this GitHub repo's Release Notes on what changes have been implemented since your last upgrade.
- For help upgrading your dbt project to dbt v1.0.0, I recommend reviewing dbt-labs upgrading to 1.0.0 docs for more details on what changes must be made.
- Upgrades the package dependency to refer to the latest
dbt_fivetran_utils. The latestdbt_fivetran_utilspackage also has a dependency ondbt_utils[">=0.8.0", "<0.9.0"].- Please note, if you are installing a version of
dbt_utilsin yourpackages.ymlthat is not in the range above then you will encounter a package dependency error.
- Please note, if you are installing a version of
Refer to the relevant release notes on the Github repository for specific details for the previous releases. Thank you!