> 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.

# Verify a report code representation (Deprecated)

POST https://api.sigmacomputing.com/v2/reports/spec/verify
Content-Type: application/json

**Deprecation notice**: This endpoint is deprecated. Instead, use [POST /v2/reports](/reference/createreport) with `contents` and `dryRun: true` in the request body.

This endpoint validates a report code representation without creating or modifying any report. It performs the same validation as the [/v2/reports/spec](https://help.sigmacomputing.com/reference/create-report-spec) endpoint but never persists the result, so you can confirm a representation is valid before creating a report from it.

**Beta**: This documentation describes a private beta feature and is subject to the [Beta features](/docs/sigma-product-releases#beta-features) disclaimer.

### System and user requirements
- To perform this operation, you must use API credentials owned by a user assigned an account type with **Create, edit, and publish reports** permission.

### Usage notes
- The response `valid` field indicates whether the representation passed validation. When `valid` is `false`, the `errors` array describes each validation failure.
- The request body is identical to the [/v2/reports/spec](https://help.sigmacomputing.com/reference/create-report-spec) endpoint.
- No report is created and no data is persisted by this endpoint.

### Usage scenarios
- **Agentic workflows**: Agents can validate a generated representation before committing it to a create or update operation.
- **Automation**: Validate representations in CI or migration tooling before applying them.


Reference: https://help.sigmacomputing.com/reference/verify-report-spec

## Authentication

- `Authorization` header (bearer token, required) — Bearer authentication of the form `Bearer <token>`, where token is your auth token.

## Servers

- `https://api.sigmacomputing.com` (Server for GCP (US) hosted organizations, default)
- `https://api.sa.gcp.sigmacomputing.com` (Server for GCP (KSA) hosted organizations)
- `https://aws-api.sigmacomputing.com` (Server for AWS US (West) hosted organizations)
- `https://api.us-a.aws.sigmacomputing.com` (Server for AWS US (East) hosted organizations)
- `https://api.ca.aws.sigmacomputing.com` (Server for AWS Canada hosted organizations)
- `https://api.eu.aws.sigmacomputing.com` (Server for AWS Europe hosted organizations)
- `https://api.au.aws.sigmacomputing.com` (Server for AWS Australia and APAC hosted organizations)
- `https://api.uk.aws.sigmacomputing.com` (Server for AWS UK hosted organizations)
- `https://api.us.azure.sigmacomputing.com` (Server for Azure US hosted organizations)
- `https://api.eu.azure.sigmacomputing.com` (Server for Azure Europe hosted organizations)
- `https://api.ca.azure.sigmacomputing.com` (Server for Azure Canada hosted organizations)
- `https://api.uk.azure.sigmacomputing.com` (Server for Azure United Kingdom hosted organizations)
- `https://api.au.azure.sigmacomputing.com` (Server for Azure Australia hosted organizations)

## Request

### Body (application/json)

This endpoint expects an object.

- `name` (string, required) — The name of the report.
- `folderId` (string, required) — The identifier of the folder in which the report is located.
- `document` (object, required) — The code representation of the report to write: its pages, elements, columns, sources, layout, and theme.
  - `schemaVersion` (enum, required) — The schema version used by this representation of the report.
    - Allowed values: `1`
  - `kind` (enum, required) — Document kind. Always `report` for this resource.
    - Allowed values: `report`
  - `elements` (list of object or object or object or object or object or object or object or object or object or object or object or object or object or object or object or object or object or object or object or object or object or object or object or object or object or object or object or object or object or object or object or object or object or object or object or object or object or object or object or object or object or object or object or object or object or object or object or object or object or object or object or object or object or object or object or object or object or object or object or object, required) — The elements that appear on the report's pages and panels.
    - Report repeated container
      - `id` (string, required) — The identifier of the report repeated container.
      - `kind` (enum, required)
        - Allowed values: `report-repeated-container`
      - `source` (object or object or object or object or object or object or object or object or object or object or object or object or object, required) — The data source used to generate cards in the repeated container.
        - Warehouse Table
          - `connectionId` (string, required) — The identifier of the connection to the data platform.
          - `path` (list of string, required) — The path of the object in the data platform.
          - `kind` (enum, required)
            - Allowed values: `warehouse-table`
        - CSV Table
          - `connectionId` (string, required) — The identifier of the connection to the data platform.
          - `kind` (enum, required)
            - Allowed values: `csv-table`
          - `inodeId` (string, required) — The identifier of the table created from a CSV.
        - Metric View
          - `connectionId` (string, required) — The identifier of the connection to the data platform.
          - `path` (list of string, required) — The path of the object in the data platform.
          - `kind` (enum, required)
            - Allowed values: `metric-view`
        - Semantic View
          - `connectionId` (string, required) — The identifier of the connection to the data platform.
          - `path` (list of string, required) — The path of the object in the data platform.
          - `kind` (enum, required)
            - Allowed values: `semantic-view`
        - Custom SQL
          - `connectionId` (string, required) — The identifier of the connection to the data platform.
          - `kind` (enum, required)
            - Allowed values: `sql`
          - `statement` (string, required) — The custom SQL statement used in the element.
        - Table
          - `kind` (enum, required)
            - Allowed values: `table`
          - `elementId` (string, required) — The identifier of the table in this data model.
          - `groupingId` (string, optional) — The identifier of the grouping to apply to the table.
        - Data Model
          - `dataModelId` (string, required) — The identifier of the data model source.
          - `elementId` (string, required) — The identifier of the table in the referenced data model.
          - `kind` (enum, required)
            - Allowed values: `data-model`
          - `groupingId` (string, optional) — The identifier of the grouping to apply to the table.
        - Code Output
          - `kind` (enum, required)
            - Allowed values: `code-output`
          - `elementId` (string, required) — The identifier of the code (Python) element whose output to display.
          - `output` (string, required) — Name of the code element's output — the sigma.output('name', …) name — to display.
        - Join
          - `kind` (enum, required)
            - Allowed values: `join`
          - `joins` (list of object, required) — A list of the joins and their definitions. The left of each join must be either the primary source or the right of some other join.
            - `left` (object or object or object or object, required) — The name of the left table in the join.
            - `right` (object or object or object or object, required) — The name of the right table in the join.
            - `columns` (list of object, required) — A list of the column pairs and operators that define this join.
            - `name` (string, optional) — The name of the join. Defaults to the name of the right.
            - `joinType` (enum or enum or enum or enum or enum, optional) — The logical join type.
          - `name` (string, optional) — The name of the join. Defaults to the name of the primary source.
          - `primarySource` (object or object or object or object, optional) — The primary/head source of the join. If not specified, it is inferred as the unique source that appears on the left of some join but never on the right.
            - Warehouse Table
            - CSV Table
            - Table
            - Data Model
        - Union
          - `kind` (enum, required)
            - Allowed values: `union`
          - `sources` (list of object or object or object or object, required) — The identifiers of the sources in the union.
            - Warehouse Table
            - CSV Table
            - Table
            - Data Model
          - `matches` (list of object, required) — The union output columns and the matched source columns that comprise them.
            - `outputColumnName` (string, required) — The name of the union output column.
            - `sourceColumns` (list of string, required) — The matching set of source columns that correspond to the union output column.
        - Unnest
          - `kind` (enum, required)
            - Allowed values: `unnest`
          - `source` (object or object or object or object, required) — The source containing the array column to unnest.
            - Warehouse Table
            - CSV Table
            - Table
            - Data Model
          - `arrayColumn` (string, required) — The variant column containing arrays to unnest.
          - `valueColumn` (string, required) — The name of the generated column containing array values.
          - `outputColumns` (list of string, required) — The columns included in the unnest output.
          - `indexColumn` (string, optional) — The name of the generated zero-based array index column.
          - `preserveAllSourceRows` (enum or enum, optional) — Whether to preserve rows whose array column is null or empty.
      - `arrangement` (enum or enum, optional) — How cards are tiled inside the repeated container. Defaults to `grid`.
      - `style` (object or object, optional) — The styling of the element, including background, border, corner shape, and padding.
        - object
          - `padding` (enum, required) — The padding around the element. Set to none to remove padding. `borderWidth` and `borderColor` cannot be set alongside it.
            - Allowed values: `none`
          - `backgroundColor` (string or string or object or enum, optional) — Element background color (hex, rgb(), theme reference, or "transparent").
            - object
          - `borderRadius` (enum or enum or enum, optional) — The corner shape. Omit to inherit the workbook theme.
        - object
          - `backgroundColor` (string or string or object or enum, optional) — Element background color (hex, rgb(), theme reference, or "transparent").
            - object
          - `borderRadius` (enum or enum or enum, optional) — The corner shape. Omit to inherit the workbook theme.
          - `borderWidth` (double, optional) — The border width, in pixels. Cannot be set when `padding` is `none`.
          - `borderColor` (string or string or object, optional) — The border color. A hex code, `rgb()` value, or theme reference. Cannot be set when `padding` is `none`.
            - object
      - `cardStyle` (object or object, optional) — The styling applied to each card including background color, border, corner shape, and padding.
        - object
          - `padding` (enum, required) — The padding around the element. Set to none to remove padding. `borderWidth` and `borderColor` cannot be set alongside it.
            - Allowed values: `none`
          - `backgroundColor` (string or string or object or enum, optional) — Element background color (hex, rgb(), theme reference, or "transparent").
            - object
          - `borderRadius` (enum or enum or enum, optional) — The corner shape. Omit to inherit the workbook theme.
        - object
          - `backgroundColor` (string or string or object or enum, optional) — Element background color (hex, rgb(), theme reference, or "transparent").
            - object
          - `borderRadius` (enum or enum or enum, optional) — The corner shape. Omit to inherit the workbook theme.
          - `borderWidth` (double, optional) — The border width, in pixels. Cannot be set when `padding` is `none`.
          - `borderColor` (string or string or object, optional) — The border color. A hex code, `rgb()` value, or theme reference. Cannot be set when `padding` is `none`.
            - object
      - `noDataText` (string, optional) — The message shown when the data source has no rows.
      - `cardGap` (enum or enum, optional) — The gap between cards in the repeated container. Defaults to `shown`.
      - `elementGap` (enum or enum, optional) — Whether there's a gap between elements inside each card. Defaults to `shown`.
      - `cardSpacing` (enum or enum or enum, optional) — Gap/padding size between cards (pairs with cardGap). Small, medium, or large.
      - `elementSpacing` (enum or enum or enum, optional) — The gap between elements inside each card. When padding is enabled, also determines padding size.
      - `sort` (list of object, optional) — The sort order applied to the source rows behind the cards. Requires a `source` of `table`.
        - `columnId` (string, required) — The identifier of the column by which to sort.
        - `direction` (enum or enum, required) — The sort direction.
        - `nulls` (enum or enum or enum, optional) — How the sort order treats null values.
      - `filters` (list of object or object or object or object or object or object, optional) — The column filters applied to the source rows that drive the repeated container cards.
        - Number Range
          - `kind` (enum, required)
            - Allowed values: `number-range`
          - `id` (string, required) — The identifier of the filter.
          - `columnId` (string, required) — The identifier of the column this filter targets.
          - `includeNulls` (enum or enum or enum, optional) — When to include null values in the filter results.
          - `min` (double, optional) — The lower bound of the selected number range.
          - `max` (double, optional) — The upper bound of the selected number range.
          - `state` (enum or enum, optional) — Whether the filter is enabled.
        - Date Range
          - `kind` (enum, required)
            - Allowed values: `date-range`
          - `id` (string, required) — The identifier of the filter.
          - `columnId` (string, required) — The identifier of the column this filter targets.
          - `includeNulls` (enum or enum or enum, optional) — When to include null values in the filter results.
          - `state` (enum or enum, optional) — Whether the filter is enabled.
        - Top N
          - `kind` (enum, required)
            - Allowed values: `top-n`
          - `id` (string, required) — The identifier of the filter.
          - `columnId` (string, required) — The identifier of the column this filter targets.
          - `state` (enum or enum, optional) — Whether the filter is enabled.
        - List
          - `kind` (enum, required)
            - Allowed values: `list`
          - `id` (string, required) — The identifier of the filter.
          - `columnId` (string, required) — The identifier of the column this filter targets.
          - `mode` (enum or enum, optional) — Whether the selected values are included or excluded by the filter. Defaults to `include`.
          - `values` (list of boolean or list of double or list of string or list of string, optional) — The list of selected values.
          - `state` (enum or enum, optional) — Whether the filter is enabled.
        - Text Match
          - `kind` (enum, required)
            - Allowed values: `text-match`
          - `mode` (enum or enum or enum or enum or enum or enum or enum or enum or enum or enum or enum or enum, required) — The type of text comparison to make.
          - `id` (string, required) — The identifier of the filter.
          - `columnId` (string, required) — The identifier of the column this filter targets.
          - `value` (string, optional) — The string to compare against the filter pattern.
          - `case` (enum or enum, optional) — Whether the text comparison is case sensitive.
          - `includeNulls` (enum or enum or enum, optional) — When to include null values in the filter results.
          - `state` (enum or enum, optional) — Whether the filter is enabled.
        - Hierarchy
          - `kind` (enum, required)
            - Allowed values: `hierarchy`
          - `id` (string, required) — The identifier of the filter.
          - `columnId` (string, required) — The identifier of the column this filter targets.
          - `mode` (enum or enum, optional) — Whether the selected values are included or excluded by the filter. Defaults to `include`.
          - `values` (list of list of string, optional) — The hierarchy paths selected by the filter.
          - `state` (enum or enum, optional) — Whether the filter is enabled.
      - `containerSize` (object, optional) — Pixel size of the repeated card template.
        - `width` (double, optional) — Card template width in pixels.
        - `height` (double, optional) — Card template height in pixels.
      - `numRows` (double, optional) — Number of card rows shown per page when arrangement is grid.
      - `numColumns` (double, optional) — Number of card columns shown per page when arrangement is grid.
      - `pageBreakAfterRows` (boolean, optional) — When true, insert a page break after each filled set of card rows.
      - `cardContentHeight` (double, optional) — Explicit card content height in pixels. Resizing scales template children to fit.
  - `pages` (list of object, required) — The pages in the report.
    - `id` (string, required) — The identifier of the page in the workbook.
    - `name` (string, required) — The name of the page.
    - `type` (enum, optional) — The page type, distinguishing a regular page from a `modal`, `drawer`, or `popover`. Only `page` can be set. If omitted, `page` is assumed.
      - Allowed values: `page`
    - `visibility` (enum or object, optional) — The visibility settings for the page. If omitted, the page is visible to all users. Specify `hidden` to hide the page, or define `{ kind: 'specific-users-and-teams', assignments: { users: [...], teams: [...] } }` to limit visibility to particular users and teams.
      - object
        - `kind` (enum, required)
          - Allowed values: `specific-users-and-teams`
        - `assignments` (object, required) — The identifiers of the users and teams allowed to view this page.
          - `users` (list of string, optional) — The identifiers of the users allowed to view this page.
          - `teams` (list of string, optional) — The identifiers of the teams allowed to view this page.
    - `backgroundImage` (object, optional) — The page background image. The URL supports dynamic `{{formula}}` text.
      - `source` (object or object, required) — The image source. Either an external URL (supports dynamic `{{formula}}` text) or an image uploaded into Sigma.
        - External URL
          - `kind` (enum, required)
            - Allowed values: `url`
          - `url` (string, required) — The external image URL. Supports dynamic `{{formula}}` text.
        - Uploaded Image
          - `kind` (enum, required)
            - Allowed values: `upload`
          - `key` (string, required) — The identifier for an image uploaded to Sigma.
      - `style` (object, optional) — The image sizing and alignment within the element.
        - `fit` (enum or enum or enum or enum or enum, optional) — How the image fits the container.
        - `horizontalAlign` (enum or enum or enum, optional) — The horizontal alignment of the image within its container.
        - `verticalAlign` (enum or enum or enum, optional) — The vertical alignment of the image within its container.
        - `tiling` (enum or enum, optional) — The tiling behavior for the image. `none` displays a single image (default). `repeat` tiles the image to fill the container.
    - `backgroundColor` (string or string or object, optional) — The page background color. A hex code, `rgb()` value, or theme reference.
      - object
        - `kind` (enum, required)
          - Allowed values: `theme`
        - `ref` (string, required)
    - `pageWidth` (enum or enum or enum or object, optional) — The width of the page. One of `full`, `large`, `medium`, or `{ mode: 'custom', maxWidth }` for a fixed pixel width.
      - object
        - `mode` (enum, required)
          - Allowed values: `custom`
        - `maxWidth` (double, required) — The fixed page width in pixels, when `mode` is `custom`.
  - `panels` (list of object, optional) — The header and footer panels in the report.
    - `id` (string, required) — The identifier of the report panel.
    - `type` (enum or enum, required) — The panel type. Either `header` or `footer`.
    - `title` (string, optional) — Display title of the panel.
    - `config` (object, optional) — The panel height and background color.
      - `height` (double, optional) — The height of the panel in pixels. Defaults to the report panel height default.
      - `backgroundColor` (string, optional) — Panel background color. Omit to follow the theme.
    - `pages` (list of string, optional) — The identifiers of pages where this panel appears.
  - `settings` (object, optional) — The document-level settings. Accepts `theme`, and `navigation` on a workbook. A report accepts `theme` alone.
    - `theme` (object, optional) — The document theme. Either the name of a theme in the organization or a built-in theme. Optionally, applies per-field overrides to the theme for colors and fonts.
      - `name` (enum or enum or enum or string, optional) — The name of a built-in theme (`Light`, `Dark`, or `Surface`) or the UUID of an organization theme. Omit to use the organization default theme, or `Light` when the organization has no default.
      - `overrides` (object, optional) — Customizations applied on top of the base theme selected by `name`, or the document's default theme when `name` is omitted.
        - `borderRadius` (enum or enum or enum, optional) — The corner shape. Omit to inherit the workbook theme.
        - `categoricalScheme` (string or list of string, optional) — The categorical color palette, as a palette name or custom hex array. Defaults to `superbloom`.
        - `colorOverrides` (list of object, optional) — Overrides for particular layout theme colors as hex codes. Keys match the theme color inspector (e.g. backgroundCanvas, elementBackground).
          - `name` (string, required) — ColorTheme slot name (matches the theme color inspector, e.g. backgroundCanvas).
          - `color` (string, required)
        - `colors` (object, optional)
          - `text` (string, optional) — The primary text color, as a hex code.
          - `highlight` (string, optional) — The highlight or accent color, as a hex code. Maps to the theme's `$primary` color.
          - `surface` (string, optional) — The surface color, as a hex code.
          - `success` (string, optional) — The success color, as a hex code.
          - `warning` (string, optional) — The warning color, as a hex code.
          - `danger` (string, optional) — The danger color, as a hex code.
          - `darkMode` (enum or enum, optional) — Whether dark color mode is on. Defaults to `hidden`.
        - `divergingScheme` (string, optional) — The named diverging color scheme. Defaults to `blueorange`.
        - `elementBorder` (object, optional)
          - `color` (string or string or object, optional) — A hex color (`#rgb` or `#rrggbb`), an `rgb()` value (e.g. `rgb(0, 0, 255)`), or a theme color reference. `rgba()` is not supported.
            - object
          - `width` (double, optional) — Element border width in pixels (0–3).
        - `fonts` (object, optional)
          - `dataFont` (string, optional) — The font family for workbook data. Defaults to `Roboto`.
          - `textFont` (string, optional) — The font family for non-data text, like element titles, descriptions, and table headers.
        - `hasCards` (enum or enum, optional) — Whether elements are framed as cards (with a border, background, and padding). Defaults to `shown`.
        - `invertTooltipColors` (enum or enum, optional) — Whether to invert text and background colors in visualization tooltips. Defaults to `shown`.
        - `layoutColors` (object, optional)
          - `useElementForeground` (enum or enum, optional) — Whether elements render above the canvas.
        - `maxPageWidth` (double, optional) — Max page width in pixels when pageWidth is custom (minimum 600).
        - `pageWidth` (enum or enum or enum or enum, optional) — The page content width.
        - `sequentialScheme` (string, optional) — The named sequential color scheme. Defaults to `blues`.
        - `space` (object, optional)
          - `showElementPadding` (enum or enum, optional) — Whether padding around elements is shown. Defaults to `shown`.
          - `unit` (enum or enum or enum, optional) — The element spacing preset.
        - `tableStyles` (object or object, optional) — The visual styling, including background color, border, corner shape, and padding.
          - object
            - `padding` (enum, required) — The padding around the element. Set to none to remove padding. `borderWidth` and `borderColor` cannot be set alongside it.
            - `backgroundColor` (string or string or object or enum, optional) — Element background color (hex, rgb(), theme reference, or "transparent").
            - `borderRadius` (enum or enum or enum, optional) — The corner shape. Omit to inherit the workbook theme.
          - object
            - `backgroundColor` (string or string or object or enum, optional) — Element background color (hex, rgb(), theme reference, or "transparent").
            - `borderRadius` (enum or enum or enum, optional) — The corner shape. Omit to inherit the workbook theme.
            - `borderWidth` (double, optional) — The border width, in pixels. Cannot be set when `padding` is `none`.
            - `borderColor` (string or string or object, optional) — The border color. A hex code, `rgb()` value, or theme reference. Cannot be set when `padding` is `none`.
        - `titleFont` (object, optional)
          - `color` (string or string or object, optional) — A hex color (`#rgb` or `#rrggbb`), an `rgb()` value (e.g. `rgb(0, 0, 255)`), or a theme color reference. `rgba()` is not supported.
            - object
          - `fontSize` (double, optional) — Title font size in pixels (6–96).
          - `fontWeight` (enum or enum, optional)
    - `navigation` (object, optional) — The workbook navigation settings for page headers, page sidebars, and page tabs. Omitting it drops any previously stored navigation settings.
      - `pageHeader` (enum or enum, optional) — Whether page headers are enabled in the workbook. Defaults to `disabled`. A page also needs a header panel assigned before one renders.
      - `pageSidebar` (enum or enum, optional) — Whether page sidebars are enabled in the workbook. Defaults to `disabled`. A page also needs a sidebar panel assigned before one renders.
      - `primary` (enum or enum, optional) — Which panel overlays the other when a page has both a header and a sidebar. If panels have different scroll styles, the fixed panel overlays the scrolling panel. Defaults to `sidebar`.
      - `pageTabsInViewMode` (enum or enum, optional) — Whether viewers see the page tab bar. Defaults to `shown`.
  - `config` (object, optional) — Report-level configuration.
    - `margin` (double, optional) — Report page margin in pixels.
    - `pageHeight` (double, optional) — Report page height in pixels.
    - `pageWidth` (double, optional) — Report page width in pixels.
  - `layout` (string, optional, nullable) — Pixel layout as XML. Top-level Page and Panel roots; Element children use absolute x/y/width/height in pixels. Panel roots require type="header" or type="footer".
- `description` (string, optional) — The description of the report.

## Response

### 200

The response body.

- `object or object`
  - object
    - `valid` (boolean, required) — The report code representation passed validation.
  - object
    - `valid` (boolean, required) — The report code representation failed validation.
    - `errors` (list of object, required) — The validation failures found in the code representation.
      - `summary` (string, required) — A human-readable description of a validation failure.

## Examples

**Request**

```json
{
  "name": "string",
  "folderId": "string",
  "document": {
    "schemaVersion": 1,
    "kind": "report",
    "elements": [
      null
    ],
    "pages": [
      {
        "id": "string",
        "name": "string"
      }
    ]
  }
}
```

**Response**

```json
{
  "valid": true
}
```

**SDK Code**

```python
import requests

url = "https://api.sigmacomputing.com/v2/reports/spec/verify"

payload = {
    "name": "string",
    "folderId": "string",
    "document": {
        "schemaVersion": 1,
        "kind": "report",
        "elements": [None],
        "pages": [
            {
                "id": "string",
                "name": "string"
            }
        ]
    }
}
headers = {
    "Authorization": "Bearer <token>",
    "Content-Type": "application/json"
}

response = requests.post(url, json=payload, headers=headers)

print(response.json())
```

```javascript
const url = 'https://api.sigmacomputing.com/v2/reports/spec/verify';
const options = {
  method: 'POST',
  headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
  body: '{"name":"string","folderId":"string","document":{"schemaVersion":1,"kind":"report","elements":[null],"pages":[{"id":"string","name":"string"}]}}'
};

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

```go
package main

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

func main() {

	url := "https://api.sigmacomputing.com/v2/reports/spec/verify"

	payload := strings.NewReader("{\n  \"name\": \"string\",\n  \"folderId\": \"string\",\n  \"document\": {\n    \"schemaVersion\": 1,\n    \"kind\": \"report\",\n    \"elements\": [\n      null\n    ],\n    \"pages\": [\n      {\n        \"id\": \"string\",\n        \"name\": \"string\"\n      }\n    ]\n  }\n}")

	req, _ := http.NewRequest("POST", url, payload)

	req.Header.Add("Authorization", "Bearer <token>")
	req.Header.Add("Content-Type", "application/json")

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

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

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

}
```

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

url = URI("https://api.sigmacomputing.com/v2/reports/spec/verify")

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

request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n  \"name\": \"string\",\n  \"folderId\": \"string\",\n  \"document\": {\n    \"schemaVersion\": 1,\n    \"kind\": \"report\",\n    \"elements\": [\n      null\n    ],\n    \"pages\": [\n      {\n        \"id\": \"string\",\n        \"name\": \"string\"\n      }\n    ]\n  }\n}"

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

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

HttpResponse<String> response = Unirest.post("https://api.sigmacomputing.com/v2/reports/spec/verify")
  .header("Authorization", "Bearer <token>")
  .header("Content-Type", "application/json")
  .body("{\n  \"name\": \"string\",\n  \"folderId\": \"string\",\n  \"document\": {\n    \"schemaVersion\": 1,\n    \"kind\": \"report\",\n    \"elements\": [\n      null\n    ],\n    \"pages\": [\n      {\n        \"id\": \"string\",\n        \"name\": \"string\"\n      }\n    ]\n  }\n}")
  .asString();
```

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

$client = new \GuzzleHttp\Client();

$response = $client->request('POST', 'https://api.sigmacomputing.com/v2/reports/spec/verify', [
  'body' => '{
  "name": "string",
  "folderId": "string",
  "document": {
    "schemaVersion": 1,
    "kind": "report",
    "elements": [
      null
    ],
    "pages": [
      {
        "id": "string",
        "name": "string"
      }
    ]
  }
}',
  'headers' => [
    'Authorization' => 'Bearer <token>',
    'Content-Type' => 'application/json',
  ],
]);

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

```csharp
using RestSharp;

var client = new RestClient("https://api.sigmacomputing.com/v2/reports/spec/verify");
var request = new RestRequest(Method.POST);
request.AddHeader("Authorization", "Bearer <token>");
request.AddHeader("Content-Type", "application/json");
request.AddParameter("application/json", "{\n  \"name\": \"string\",\n  \"folderId\": \"string\",\n  \"document\": {\n    \"schemaVersion\": 1,\n    \"kind\": \"report\",\n    \"elements\": [\n      null\n    ],\n    \"pages\": [\n      {\n        \"id\": \"string\",\n        \"name\": \"string\"\n      }\n    ]\n  }\n}", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
```

```swift
import Foundation

let headers = [
  "Authorization": "Bearer <token>",
  "Content-Type": "application/json"
]
let parameters = [
  "name": "string",
  "folderId": "string",
  "document": [
    "schemaVersion": 1,
    "kind": "report",
    "elements": [],
    "pages": [
      [
        "id": "string",
        "name": "string"
      ]
    ]
  ]
] as [String : Any]

let postData = JSONSerialization.data(withJSONObject: parameters, options: [])

let request = NSMutableURLRequest(url: NSURL(string: "https://api.sigmacomputing.com/v2/reports/spec/verify")! as URL,
                                        cachePolicy: .useProtocolCachePolicy,
                                    timeoutInterval: 10.0)
request.httpMethod = "POST"
request.allHTTPHeaderFields = headers
request.httpBody = postData as Data

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()
```