> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://help.sigmacomputing.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://help.sigmacomputing.com/_mcp/server.

# Get workbook schema

GET https://api.sigmacomputing.com/v2/workbooks/{workbookId}/schema

The Workbook Schema API is deprecated as of December 15, 2023. This endpoint is no longer compatible with workbook layouts. Workflows that use this endpoint must be replaced with the new endpoints listed below. The components in Workbook Schema API are available through individual endpoints to minimize the retrieval of unnecessary data.

- [GET v2/workbooks/{workbookId}/pages](https://help.sigmacomputing.com/reference/listworkbookpages)
- [GET v2/workbooks/{workbookId}/pages/{pageId}/elements](https://help.sigmacomputing.com/reference/listworkbookpageelements)
- [GET v2/workbooks/{workbookId}/queries](https://help.sigmacomputing.com/reference/listworkbookqueries)
- [GET v2/workbooks/{workbookId}/elements/{elementId}/query](https://help.sigmacomputing.com/reference/getelementquery)
    

Reference: https://help.sigmacomputing.com/reference/get-workbook-schema

## OpenAPI Specification

```yaml
openapi: 3.1.0
info:
  title: sigma-rest-api
  version: 1.0.0
paths:
  /v2/workbooks/{workbookId}/schema:
    get:
      operationId: getWorkbookSchema
      summary: Get workbook schema
      description: >-
        The Workbook Schema API is deprecated as of December 15, 2023. This
        endpoint is no longer compatible with workbook layouts. Workflows that
        use this endpoint must be replaced with the new endpoints listed below.
        The components in Workbook Schema API are available through individual
        endpoints to minimize the retrieval of unnecessary data.


        - [GET
        v2/workbooks/{workbookId}/pages](https://help.sigmacomputing.com/reference/listworkbookpages)

        - [GET
        v2/workbooks/{workbookId}/pages/{pageId}/elements](https://help.sigmacomputing.com/reference/listworkbookpageelements)

        - [GET
        v2/workbooks/{workbookId}/queries](https://help.sigmacomputing.com/reference/listworkbookqueries)

        - [GET
        v2/workbooks/{workbookId}/elements/{elementId}/query](https://help.sigmacomputing.com/reference/getelementquery)
            
      tags:
        - Workbooks
      parameters:
        - name: workbookId
          in: path
          required: true
          schema:
            type: string
        - name: includeSql
          in: query
          required: false
          schema:
            type: boolean
        - name: tag
          in: query
          required: false
          schema:
            type: string
        - name: Authorization
          in: header
          description: OAuth authentication
          required: true
          schema:
            type: string
      responses:
        '200':
          description: The response body.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/workbooks_getWorkbookSchema_Response_200'
servers:
  - url: https://api.sigmacomputing.com
    description: Server for GCP (US) hosted organizations
  - url: https://api.sa.gcp.sigmacomputing.com
    description: Server for GCP (KSA) hosted organizations
  - url: https://aws-api.sigmacomputing.com
    description: Server for AWS US (West) hosted organizations
  - url: https://api.us-a.aws.sigmacomputing.com
    description: Server for AWS US (East) hosted organizations
  - url: https://api.ca.aws.sigmacomputing.com
    description: Server for AWS Canada hosted organizations
  - url: https://api.eu.aws.sigmacomputing.com
    description: Server for AWS Europe hosted organizations
  - url: https://api.au.aws.sigmacomputing.com
    description: Server for AWS Australia and APAC hosted organizations
  - url: https://api.uk.aws.sigmacomputing.com
    description: Server for AWS UK hosted organizations
  - url: https://api.us.azure.sigmacomputing.com
    description: Server for Azure US hosted organizations
  - url: https://api.eu.azure.sigmacomputing.com
    description: Server for Azure Europe hosted organizations
  - url: https://api.ca.azure.sigmacomputing.com
    description: Server for Azure Canada hosted organizations
  - url: https://api.uk.azure.sigmacomputing.com
    description: Server for Azure United Kingdom hosted organizations
  - url: https://api.au.azure.sigmacomputing.com
    description: Server for Azure Australia hosted organizations
components:
  schemas:
    V2WorkbooksWorkbookIdSchemaGetResponsesContentApplicationJsonSchemaSqlQueryErrors:
      type: object
      properties:
        message:
          type: string
      required:
        - message
      title: >-
        V2WorkbooksWorkbookIdSchemaGetResponsesContentApplicationJsonSchemaSqlQueryErrors
    workbooks_getWorkbookSchema_Response_200:
      type: object
      properties:
        workbookId:
          type: string
          description: Unique identifier of the workbook.
        workbookUrlId:
          type: string
        pages:
          type: object
          additionalProperties:
            description: Any type
        sheets:
          type: object
          additionalProperties:
            description: Any type
        variables:
          type: object
          additionalProperties:
            description: Any type
        elements:
          type: object
          additionalProperties:
            description: Any type
        sqlQueries:
          type: object
          additionalProperties:
            type: string
        sqlQueryErrors:
          type: object
          additionalProperties:
            $ref: >-
              #/components/schemas/V2WorkbooksWorkbookIdSchemaGetResponsesContentApplicationJsonSchemaSqlQueryErrors
      required:
        - workbookId
        - workbookUrlId
        - pages
        - sheets
        - variables
        - elements
        - sqlQueries
        - sqlQueryErrors
      title: workbooks_getWorkbookSchema_Response_200
  securitySchemes:
    OAuth:
      type: http
      scheme: bearer
      description: OAuth 2.0 authentication

```

## Examples



**Response**

```json
{
  "workbookId": "88889999-aaaa-bbbb-cccc-ddddeeeeffff",
  "workbookUrlId": "57a96EMo3GVJG73179MV2l",
  "pages": {
    "page1": "[Object Page_t]"
  },
  "sheets": {
    "sheet1": "[Object Sheet_t]"
  },
  "variables": {
    "variable1": "[Object Variable_t]"
  },
  "elements": {
    "element1": "[Object Element_t]",
    "element2": "[Object Element_t]"
  },
  "sqlQueries": {
    "element1": "SELECT customerID, sum(AMOUNT) FROM ORDERS GROUP BY customerID"
  },
  "sqlQueryErrors": {
    "element2": {
      "message": "SQL compilation error: xxx"
    }
  }
}
```

**SDK Code**

```python Response Example
import requests

url = "https://api.sigmacomputing.com/v2/workbooks/workbookId/schema"

headers = {"Authorization": "<token>."}

response = requests.get(url, headers=headers)

print(response.json())
```

```javascript Response Example
const url = 'https://api.sigmacomputing.com/v2/workbooks/workbookId/schema';
const options = {method: 'GET', headers: {Authorization: '<token>.'}};

try {
  const response = await fetch(url, options);
  const data = await response.json();
  console.log(data);
} catch (error) {
  console.error(error);
}
```

```go Response Example
package main

import (
	"fmt"
	"net/http"
	"io"
)

func main() {

	url := "https://api.sigmacomputing.com/v2/workbooks/workbookId/schema"

	req, _ := http.NewRequest("GET", url, nil)

	req.Header.Add("Authorization", "<token>.")

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}
```

```ruby Response Example
require 'uri'
require 'net/http'

url = URI("https://api.sigmacomputing.com/v2/workbooks/workbookId/schema")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)
request["Authorization"] = '<token>.'

response = http.request(request)
puts response.read_body
```

```java Response Example
import com.mashape.unirest.http.HttpResponse;
import com.mashape.unirest.http.Unirest;

HttpResponse<String> response = Unirest.get("https://api.sigmacomputing.com/v2/workbooks/workbookId/schema")
  .header("Authorization", "<token>.")
  .asString();
```

```php Response Example
<?php
require_once('vendor/autoload.php');

$client = new \GuzzleHttp\Client();

$response = $client->request('GET', 'https://api.sigmacomputing.com/v2/workbooks/workbookId/schema', [
  'headers' => [
    'Authorization' => '<token>.',
  ],
]);

echo $response->getBody();
```

```csharp Response Example
using RestSharp;

var client = new RestClient("https://api.sigmacomputing.com/v2/workbooks/workbookId/schema");
var request = new RestRequest(Method.GET);
request.AddHeader("Authorization", "<token>.");
IRestResponse response = client.Execute(request);
```

```swift Response Example
import Foundation

let headers = ["Authorization": "<token>."]

let request = NSMutableURLRequest(url: NSURL(string: "https://api.sigmacomputing.com/v2/workbooks/workbookId/schema")! as URL,
                                        cachePolicy: .useProtocolCachePolicy,
                                    timeoutInterval: 10.0)
request.httpMethod = "GET"
request.allHTTPHeaderFields = headers

let session = URLSession.shared
let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in
  if (error != nil) {
    print(error as Any)
  } else {
    let httpResponse = response as? HTTPURLResponse
    print(httpResponse)
  }
})

dataTask.resume()
```