SubscriptionItem is different for Tableau Cloud/on-prem: currently only works for Cloud
Nobody has claimed this yet.
Assessment
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Newbie friendliness
- 66/100
Research direction
Start at the subscription retrieval and update entry points used by server.subscriptions.get() and server.subscriptions.update(subscription), focusing on how SubscriptionItem.schedule_id is populated for Tableau Cloud. Reproduce the reported case with an active subscription and verify that schedule_id is returned and the update no longer fails with the null-schedule error.
Written by the indexing model from the issue text.
Description
Describe the bug
When retrieving subscriptions using the TSC API on Tableau Online (Tableau Cloud), the SubscriptionItem.schedule_id field is always None, even for active subscriptions that were created with a valid schedule. This makes it impossible to update these subscriptions (e.g. suspend them), as the schedule ID is required for the update call.
Versions
Tableau: Tableau Online (Cloud)
Python: Python 3.11.10
TSC library: 0.38
To Reproduce
import tableauserverclient as TSC
tableau_auth = TSC.PersonalAccessTokenAuth(
token_name=TOKEN_NAME,
personal_access_token=TOKEN_SECRET,
site_id=SITE_ID
)
server = TSC.Server(SERVER_URL, use_server_version=True)
with server.auth.sign_in(tableau_auth):
all_subscriptions, pagination_item = server.subscriptions.get()
for subscription in all_subscriptions:
print(
f"Subscription ID: {subscription.id}, "
f"Name: {subscription.subject}, "
f"Suspended: {subscription.suspended}, "
f"Schedule ID: {subscription.schedule_id}, " # Always None
f"User ID: {subscription.user_id}"
)
Outputs:
Subscription ID: abc, Name: test test, suspended: False, Schedule ID: None, user ID: abc
Results
Even though the subscription is active and was created using a valid schedule, the subscription.schedule_id is always None. This causes server.subscriptions.update(subscription) to fail with the following error:
404023: Resource Not Found
Schedule 'null' could not be found.
- Dominant language
- Python
- Stars
- 716
- Forks
- 446
- Avg merge
- 8d 8h
- Merged PRs (30d)
- 2
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from tableau/server-client-python
-
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
tableau/server-client-python#1865 ·
-
in-progress
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
tableau/server-client-python#1829 · 1 comment ·
-
enhancement gap needs investigation
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
tableau/server-client-python#1322 · 1 comment ·
-
[Type2] Allow Incremental Refresh type schedules to be added via `server.schedules.add_to_schedule` Openhelp wanted Server-Side Enhancement ui-exists
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
tableau/server-client-python#1101 · 3 comments ·
-
enhancement good first issue
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
tableau/server-client-python#783 · 5 comments ·
All issues in tableau/server-client-python
Similar issues
-
Difficulty 1/5 Under an hour Newbie friendliness 90/100
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 86/100
zostera/django-bootstrap4#894 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
use-agent-os/agent-os#3276 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
zephyrproject-rtos/zephyr#119726 ·
-
area/auth bug comp/agent P3 platform/discord type/security
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
NousResearch/hermes-agent#117848 ·