Creating Tableau Groups using Python and API
Prerequisites:
Python on the machine
tableauserverclient module
API enabled on Tableau server.
Permissions to update for the user
pat='getyourpersonaltoken'
server = TSC.Server('http://myserver.tableau.com',use_server_version=True)
tokenName = 'mytokenname'
Script:
import tableauserverclient as TSC
import csv
groups = open('<Filepath>/groups.csv')
grp = csv.reader(groups)
sourcegroups=[]
createdgrps=[]
pat='getyourpersonaltoken'
server = TSC.Server('http://myserver.tableau.com',use_server_version=True)
tokenName = 'mytokenname'
ta = TSC.PersonalAccessTokenAuth(token_name=tokenName, personal_access_token=pat)
with server.auth.sign_in_with_personal_access_token(ta):
groupslist, pagination_item = server.groups.get()
for group in groupslist:
sourcegroups.append(group.name)
print(sourcegroups)
for l in grp:
targetgroup=TSC.GroupItem(*l)
if targetgroup.name in sourcegroups:
print(targetgroup.name, "already exits")
else:
newgrp = server.groups.create(targetgroup)
createdgrps.append(targetgroup.name)
print("successfully created groups", createdgrps)
Comments
Post a Comment