You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Would be possible to add an option to have incremental refresh for workbooks or datasources? #761
This is an old issue, but commenting for anyone else with the same issue. It's possible to trigger the incremental refresh of a datasource, you just have to use the tasks api to run the extract rather than the datasources api
importtableauserverclientastscimportxmltodictpersonal_access_token_name=''personal_access_token_secret=''tableau_server=''# Name of the data source in tableaudatasource=''tableau_auth=tsc.PersonalAccessTokenAuth(
token_name=personal_access_token_name,
personal_access_token=personal_access_token_secret
)
server=tsc.Server(tableau_server, use_server_version=True)
server.auth.sign_in(tableau_auth)
# Get datasource id from datasource namereq_option=tsc.RequestOptions(pagesize=1000)
req_option.filter.update([tsc.Filter(tsc.RequestOptions.Field.Name, tsc.RequestOptions.Operator.Equals, datasource)])
all_datasources=list(tsc.Pager(server.datasources, req_option))
datasource_id=all_datasources[0].id# Get 1000 tasks and then filter for only extract tasks under the datasource id of interest# I don't believe you can filter tasksall_extracts=list(tsc.Pager(server.tasks, tsc.RequestOptions(pagesize=1000)))
# The task type for incremental extracts is 'IncrementExtractTask' and full extracts is 'extractRefresh'extracts= [iforiinall_extractsif (i.target.id==datasource_id) and ('IncrementExtractTask'==i.task_type)]
incremental_extract_obj=extracts[0]
# Trigger the incremental extract associated with the datasourceupdate_xml=server.tasks.run(incremental_extract_obj)
job_id=xmltodict.parse(update_xml)['tsResponse']['job']['@id']
print(f"Refresh extract job {job_id} created")
This is working on Tableau Server version 2021.4.3 with Tableau Python Server Client 0.16.0
This issue has been automatically marked as stale because it has not had recent activity. It will be closed in 14 days if no further activity occurs. If this is still relevant, please comment to keep it open.
Closing — incremental refresh was added in PR #1545 (feat: incremental refresh for extracts). Both workbooks.refresh() and datasources.refresh() now accept an incremental=True kwarg:
Activity
smafra commentedon Dec 17, 2020
Hi @rafaeljraposo,
Thanks for the answer. Any known workarounds for that?
hydriniumh2 commentedon Apr 27, 2022
This is an old issue, but commenting for anyone else with the same issue. It's possible to trigger the incremental refresh of a datasource, you just have to use the tasks api to run the extract rather than the datasources api
This is working on Tableau Server version 2021.4.3 with Tableau Python Server Client 0.16.0
NandiniCS commentedon Nov 7, 2022
How to do the Incremental refresh on workbooks using python script. it´s defaulted to full extract always. Do let me know.
harrydevforlife commentedon Nov 18, 2025
Thanks @hydriniumh2, it works well.
github-actions commentedon Aug 6, 2026
This issue has been automatically marked as stale because it has not had recent activity. It will be closed in 14 days if no further activity occurs. If this is still relevant, please comment to keep it open.
jacalata commentedon Aug 6, 2026
Closing — incremental refresh was added in PR #1545 (feat: incremental refresh for extracts). Both
workbooks.refresh()anddatasources.refresh()now accept anincremental=Truekwarg: