Welcome to the DataDev Quest Challenge for February 2026! This challenge is designed to teach you
how to use one of the features added in TSC v0.40.
Challenge Overview
Objective:
Learn how to add multiple users to the site with one streamlined request.
Why this challenge?
A new feature added with TSC v0.40. Becomes critically important in synchronizing users across sites, servers, or dealing with big hiring events.
Learning Goals
- Learn bulk operations with TSC
- Work with async jobs
- Explore different IO for getting user details
Submission Guidelines
- Source Code: Publish your project publicly in your GitHub profile
- Add README: Include any setup instructions and describe how to run the program.
- Video of Solution: Include a video of your solution in the README file. You can publish it on YouTube and embed the iframe, or save the video file in the repository’s root directory
- Comments: Ensure your code is well-commented
- Submission: Submit your challenge in the following forms
Additional Resources
- Postman Collection for Tableau’s REST APIs
- Tableau Server Client for Python
- Add User REST API Reference
Getting Started
The first step is to get and set up your Tableau Developer Sandbox. Cristian Saavedra Desmoineaux has a Medium Post that provides a step-by-step guide to configuring it. If working with a dev site, it only allows 1 creator, 1 explorer, and 1 viewer. You may have to add users beyond the first two as unlicensed.
1. In your Tableau Cloud Site, go to Users
and check how many users you have, and that you have enough licenses to support adding more.

2. Install Python
I recommend installing python with uv. Install python 3.13 or newer.
3. Install TSC
When using uv, you can install TSC with the following command
uv add tableauserverclient>=v0.40
4. Prepare reading in the files
Python has many options for reading csv files and reading json files. The only required field is name, but you may need to add other fields such as domain, email, and site role. If email is provided, it must be a valid email.
Tabcmd has support for adding users in bulk, but it requires you follow strict structure with the CSV file input. With TSC, it should be a bit more flexible. You get to define what fields you provide, in what order, and what authentication methods users have.
Challenge
Now that you have ways to read in the files, your task is to create the UserItems, add them to the site, track the background job that adds them, then retrieve the IDs for the newly created users.
Extra Challenge
Do you want to learn more? Can the users be added to a Group in bulk? How do you support that in the input data? What do you do if the user doesn’t have group assigned? Can you support users with different identity providers?
Solutions
Coming soon…
Who am I?
I am Jordan Woods, a Tableau DataDev Ambassador and co-founder of DataDevQuest. I am passionate about data, Python, and automation. You can contact me on LinkedIn.

Special Thanks to Marcelo Has for the beautiful redesign of DataDevQuest!