Create Users using Tableau API and Python

Create Users using Tableau API and Python

User file will be in the format of userid, roleof the user.

user1,Explorer
user2,Creator
User3,Viewer

import tableauserverclient as TSC
import csv
userfile= open('C:/Users/myartha/Documents/Python Files/users_06112020.csv')
usr = csv.reader(userfile)
sourceusers=[]
createdusers=[]
pat = 'PersonalAccessToken'  #your personal access token created on the UI
server = TSC.Server('<servername>') # provide your server URL
siteid='siteid'   #yoursiteid from the server. This is not the nameof the site but id of the site
tokenName = 'UserGroupScript'  #provide your Token name used when creating personal access Token
server.version='3.6'
ta = TSC.PersonalAccessTokenAuth(token_name=tokenName, personal_access_token=pat, site_id=siteid)
with server.auth.sign_in_with_personal_access_token(ta):
    userlist, pagination_item=server.users.get()
    for user in userlist:
        sourceusers.append(user.name)
    for l in usr:
        targetuser=TSC.UserItem(name=[o],site_role=l[1])
        if targetuser.name in sourceusers:
            print(targetuser.name, "already exits")
        else:
            newgrp = server.users.add(targetuser)
            createdusers.append(targetuser.name)
        print("successfully created groups", createdusers)





Comments