Releases: fivetran/dbt_zendesk_source
v0.15.0 dbt_zendesk_source
Under the Hood
- (Affects Redshift only) Updates the
union_zendesk_connections
macro to use a limit 1 instead of limit 0 for empty tables.- When a table is empty, Redshift ignores explicit data casts and will materialize every column as a
varchar
. Redshift users may experience errors in downstream transformations as a consequence. - For each staging model, if the source table is not found, the package will create a empty table with 0 rows for non-Redshift warehouses and a table with 1 all-
null
row for Redshift destinations. The 1 row will ensure that Redshift will respect the package's datatype casts.
- When a table is empty, Redshift ignores explicit data casts and will materialize every column as a
Documentation Update
- Moved badges at top of the README below the H1 header to be consistent with popular README formats.
Full Changelog: v0.14.2...v0.15.0
v0.14.2 dbt_zendesk_source
PR #59 includes the following updates:
New Features
- Introduced new config variables for whether
brand
ororganization
tables are present, allowing customers to either enable or disable the respective staging and tmp models:- Updated
stg_zendesk__brand
(and upstreamtmp
model) with the newusing_brands
config variable. - Updated
stg_zendesk__organization
(and upstreamtmp
model) with the newusing_organizations
config variable. - Updated
stg_zendesk__organization_tag
(and upstreamtmp
model) with the newusing_organizations
config variable, as theorganization_tag
source table can be disabled in some situations, whileorganization
is not. Thus anything that is disabled/enabled byusing_organization_tags
should contain both theusing_organization_tags
ANDusing_organizations
variables.
- Updated
Under the Hood
- Updated our Buildkite model run script to ensure we test for when
using_brands
andusing_organizations
is set to either true or false.
Documentation Updates
- Added enabled config variables to
brand
,organization
andorganization_tag
in thesrc_zendesk.yml
models. - Updated README with instructions on how to disable
brand
andorganization
sources.
Full Changelog: v0.14.1...v0.14.2
v0.14.1 dbt_zendesk_source
PR #58 includes the following update:
Bug Fixes
- In v0.14.0 (or v0.19.0 of the transform package), Snowflake users may have seen
when searching for a relation, dbt found an approximate match
errors when running thestg_zendesk__group_tmp
model. The issue stemmed from theadapter.get_relation()
logic within theunion_zendesk_connections
macro, which has now been updated to resolve the error.
Full Changelog: v0.14.0...v0.14.1
v0.14.0 dbt_zendesk_source
PR #44 includes the following updates:
Feature Update: Run Package on Unioned Connectors
- This release supports running the package on multiple Zendesk sources at once! See the README for details on how to leverage this feature.
Please note: This is a Breaking Change in that we have a added a new field,
source_relation
, that points to the source connector from which the record originated.
Documentation
- Added missing documentation for staging model columns.
Full Changelog: v0.13.0...v0.14.0
v0.13.0 dbt_zendesk_source
PR #55 includes the following updates:
Breaking Changes
- Introduced the
stg_zendesk__audit_log
table for capturing schedule changes from Zendesk's audit log.- This model is disabled by default, to enable it set variable
using_schedule_histories
totrue
in yourdbt_project.yml
. - While currently used for schedule tracking, this table has possible future applications, such as tracking user changes.
- This model is disabled by default, to enable it set variable
Features
- Updated the
stg_zendesk__schedule_holidays
model to allow users to disable holiday processing (while still using schedules) by settingusing_holidays
tofalse
. - Added field-level documentation for the
stg_zendesk__audit_log
table.
Under the Hood Improvements
- Added seed data for
audit_log
to enhance integration testing capabilities.
Full Changelog: v0.12.0...v0.13.0
v0.12.0 dbt_zendesk_source
PR #53 includes the following updates:
Breaking changes
- Added field
_fivetran_deleted
to the following models for use downstream:stg_zendesk__ticket
stg_zendesk__ticket_comment
stg_zendesk__user
- If you have already added
_fivetran_deleted
as a passthrough columns using thezendesk__ticket_passthrough_columns
orzendesk__user_passthrough_columns
vars, you will need to remove or alias this field from the variable to avoid duplicate column errors.
Documentation
- Updated documentation to include
_fivetran_deleted
.
Full Changelog: v0.11.2...v0.12.0
v0.11.2 dbt_zendesk_source
PR #49 includes the following updates:
Feature Updates
- Adds passthrough column support for
USER
andORGANIZATION
.- Using the new
zendesk__user_passthrough_columns
andzendesk__organization_passthrough_columns
variables, you can include custom columns from these source tables in their respective staging models. See README for more details on how to configure.
- Using the new
- Also updated the format of the pre-existing
TICKET
passthrough column variable,zendesk__ticket_passthrough_columns
, to align with the newly added passthrough variables delineated above.- Previously, you could only provide a list of custom fields to be included in
stg_zendesk__ticket
. Now, you have the option to provide analias
andtransform_sql
clause to be applied to each field (see README for more details). - Note: the package is and will continue to be backwards compatible with the old list-format.
- Previously, you could only provide a list of custom fields to be included in
Full Changelog: v0.11.1...v0.11.2
v0.11.1 dbt_zendesk_source
PR #48 includes the following updates:
Feature Updates
- Adds the
phone
field tostg_zendesk__user
and ensures it is astring
if the column is not found in your source data. - Adds documentation for
user
fields that were previously missing yml descriptions.
Full Changelog: v0.11.0...v0.11.1
v0.11.0 dbt_zendesk_source
PR #46 includes the following updates:
🚨 Breaking Change Bug Fixes 🚨
- Updated the following staging models to leverage the
{{ dbt.type_timestamp() }}
macro on timestamp fields in order to ensure timestamp with no timezone is used in downstream models. This update will cause timestamps to be converted to have no timezone. If records were reported as timezone timestamps before, this will result in converted timestamp records.stg_zendesk__ticket
stg_zendesk__ticket_comment
stg_zendesk__ticket_field_history
stg_zendesk__ticket_form_history
stg_zendesk__ticket_schedule
stg_zendesk__user
Documentation Updates
- Updated "Zendesk" references within the README to now refer to "Zendesk Support" in order to more accurately reflect the name of the Fivetran Zendesk Support Connector.
Full Changelog: v0.10.1...v0.11.0
v0.10.1 dbt_zendesk_source
PR #43 introduces the following updates:
Feature Updates
- Added the
internal_user_criteria
variable, which can be used to mark internal users whoseUSER.role
may have changed fromagent
toend-user
after they left your organization. This variable accepts SQL that may reference any non-custom field inUSER
, and it will be wrapped in acase when
statement in thestg_zendesk__user
model.- Example usage:
# dbt_project.yml
vars:
zendesk_source:
internal_user_criteria: "lower(email) like '%@fivetran.com' or external_id = '12345' or name in ('Garrett', 'Alfredo')" # can reference any non-custom field in USER
- Output: In
stg_zendesk__user
, users who match your criteria and have a role ofend-user
will have their role switched toagent
. This will ensure that downstream SLA metrics are appropriately calculated.
Under the Hood
- Updated the way we dynamically disable sources. Previously, we used a custom
meta.is_enabled
flag, but, since we added this, dbt-core introduced a nativeconfig.enabled
attribute. We have opted to use the dbt-native config instead. - Updated the pull request templates.
- Included auto-releaser GitHub Actions workflow to automate future releases.
Full Changelog: v0.10.0...v0.10.1