Architecture


🕐 2 min read

The Migration SDK is designed as a local application that primarily downloads content from Tableau Server to a local machine and then publishes it to Tableau Server. The Migration SDK exclusively uses the Tableau REST API to migrate content.

graph LR
A <--> B
C <--> B
B <--> D
subgraph Tableau Server
A[APIs]
end

subgraph User Application
B[Migration SDK]
end

subgraph Tableau Cloud
C[APIs]
end

D[(Temporary storage)]

API Throttling

Tableau Cloud has published Site Capacity limits to ensure all customers have a consistent performance experience. This includes limits on how many API calls a user can make on a specific Tableau Cloud Site within an hour.

The Migration SDK is limited by Tableau’s throttling limits for REST API operations. Tableau Cloud limits REST API usage to 40,000 calls per user per site per hour. Additionally, select REST API calls have lower limits detailed in Tableau Cloud Site Capacity.

If a throttling limit is hit, API operations will be paused until the next hour. Because of this, you might notice delays in the migration progress. This is normal and expected.

Security

The Migration SDK relies on HTTPS to secure data in transit. Tableau Cloud API connections require HTTPS, and we recommend configuring HTTPS to connect to Tableau Server when available. The Migration SDK encrypts downloaded files by default to secure data at rest.

The Migration SDK requires a personal access tokens (PAT) to authenticate the user running the migration with Tableau APIs. These tokens must be created on both Tableau Server and Tableau Cloud. For more information, see Personal Access Tokens in the Tableau Help Documentation.

The Migration SDK does not persist PATs. We recommend that you securely store your tokens.