---
schema_version: "1"
id: 3faefa610089b6b9a2b4114e1bc51000f965b1f402a54fa99b9707a888c67742
title: Get Started
collection: tableau
version: next
locale: en-us
portal_url: https://docs.salesforce.com/tableau/next/en-us/api/studio-api-ref/docs/get-started.md
canonical_url: https://help.tableau.com/v0.0/api/studio-api-ref/en-us/docs/get-started.html
source_site: help.tableau.com
content_type: documentation
content_hash: 5de9323a780ba9023e5120a7fba4e8dd2edd345c0884804497566055dc8660c2
description: Documentation for the Tableau Studio API Reference
---
# Get Started

  

### Get Started with direct calls to the External Client API

1. Install Tableau Studio.
2. Open Tableau Studio.
3. Find your External Client API discovery file.
    
    This file is recreated with fresh values on each launch of Tableau Studio and only available once the app has fully started. The basename of the file is the OS process id Tableau is running in.
    
    **Mac OS**
    
    `~/Library/Application Support/Tableau/Tableau/ExternalApi/<pid>.json`
    
    **Windows**
    
    `%LOCALAPPDATA%/Tableau/Tableau/ExternalApi/`
    
    The two important values it contains are:
    
    - `baseUrl` - typically `http://127.0.0.1:<xxxxx>`
    - `token` - looks like: `af1129c44d5dcd8bd9206a8641133c91eed66c76b5f562633a37fd186e5ccac1`
    
    A full typical discovery file looks like:
    
    ```
     {
     "schemaVersion": 1,
     "instanceId": "td_a8f1bf61-9194-49e8-8205-6ae7e831d5c2",
     "pid": 28814,
     "baseUrl": "http://127.0.0.1:62197",
     "tokenType": "Bearer",
     "token": "af1129c44d5dcd8bd9206a8641133c91eed66c76b5f562633a37fd186e5ccac1",
     "applicationVersion": "0.0.0",
     "apiVersion": "0.2.6",
     "startedAt": "2026-08-14T16:14:52Z"
     }
    ```
    
    A model call looks like:
    
    ```
     curl -sS -H "Authorization: Bearer <token value>" \
     <baseURL>/v0/workbook
    ```
4. Check the presence of the client (no authorization needed for is one call). Run:
    
    ```
     curl -sS  http://127.0.0.1:62197/v0/health
    ```
    
    This should return:
    
    ```
     {"status":"OK"} (HTTP 200)
    ```
5. Try a call to list all available workbooks. Run:
    
    ```
     curl -sS -H "Authorization: Bearer af1129c44d5dcd8bd9206a8641133c91eed66c76b5f562633a37fd186e5ccac1" \
     http://127.0.0.1:62197/v0/workbook
    ```
    
    This should return something like:
    
    ```
     {
       "title": "Book1",
       "location": null,
       "unsavedChanges": false,
       "worksheets": [
         {
           "id": "{9BBEEE50-4AF9-46C2-BB36-1DAC6793FE4B}",
           "name": "Sheet 1",
           "hidden": false,
           "isActiveSheet": true,
           "index": 0,
           "isAutoUpdatesPaused": false,
           "datasources": []
         }
       ],
       "dashboards": [],
       "storyboards": []
     }
    ```