Tableau · Capability

Tableau REST API — Views

Tableau REST API — Views. 8 operations. Lead operation: Tableau Query Views for Site. Self-contained Naftiko capability covering one Tableau business surface.

Run with Naftiko TableauViews

What You Can Do

GET
Queryviewsforsite — Tableau Query Views for Site
/v1/sites/{site-id}/views
GET
Queryviewbyid — Tableau Query View by Id
/v1/sites/{site-id}/views/{view-id}
GET
Queryviewdata — Tableau Query View Data
/v1/sites/{site-id}/views/{view-id}/data
GET
Queryviewimage — Tableau Query View Image
/v1/sites/{site-id}/views/{view-id}/image
GET
Queryviewpdf — Tableau Query View Pdf
/v1/sites/{site-id}/views/{view-id}/pdf
GET
Queryviewpreviewimage — Tableau Query View Preview Image
/v1/sites/{site-id}/views/{view-id}/previewimage
GET
Getrecommendationsforviews — Tableau Get Recommendations for Views
/v1/sites/{site-id}/views/{view-id}/recommendations
GET
Queryviewsforworkbook — Tableau Query Views for Workbook
/v1/sites/{site-id}/workbooks/{workbook-id}/views

MCP Tools

tableau-query-views-site

Tableau Query Views for Site

read-only idempotent
tableau-query-view-id

Tableau Query View by Id

read-only idempotent
tableau-query-view-data

Tableau Query View Data

read-only idempotent
tableau-query-view-image

Tableau Query View Image

read-only idempotent
tableau-query-view-pdf

Tableau Query View Pdf

read-only idempotent
tableau-query-view-preview-image

Tableau Query View Preview Image

read-only idempotent
tableau-get-recommendations-views

Tableau Get Recommendations for Views

read-only idempotent
tableau-query-views-workbook

Tableau Query Views for Workbook

read-only idempotent

Capability Spec

rest-views.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Tableau REST API — Views
  description: 'Tableau REST API — Views. 8 operations. Lead operation: Tableau Query Views for Site. Self-contained Naftiko
    capability covering one Tableau business surface.'
  tags:
  - Tableau
  - Views
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    TABLEAU_API_KEY: TABLEAU_API_KEY
capability:
  consumes:
  - type: http
    namespace: rest-views
    baseUri: https://{server}/api/{api-version}
    description: Tableau REST API — Views business capability. Self-contained, no shared references.
    resources:
    - name: sites-site-id-views
      path: /sites/{site-id}/views
      operations:
      - name: queryviewsforsite
        method: GET
        description: Tableau Query Views for Site
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: includeUsageStatistics
          in: query
          type: boolean
          description: If true, returns usage statistics for each view.
    - name: sites-site-id-views-view-id
      path: /sites/{site-id}/views/{view-id}
      operations:
      - name: queryviewbyid
        method: GET
        description: Tableau Query View by Id
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: sites-site-id-views-view-id-data
      path: /sites/{site-id}/views/{view-id}/data
      operations:
      - name: queryviewdata
        method: GET
        description: Tableau Query View Data
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: maxAge
          in: query
          type: integer
          description: The maximum number of minutes a view can be cached before being refreshed.
        - name: vf_<filter_name>
          in: query
          type: string
          description: Apply a filter to the view. Replace <filter_name> with the name of the filter field.
    - name: sites-site-id-views-view-id-image
      path: /sites/{site-id}/views/{view-id}/image
      operations:
      - name: queryviewimage
        method: GET
        description: Tableau Query View Image
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: resolution
          in: query
          type: string
          description: The resolution of the image (standard or high).
        - name: maxAge
          in: query
          type: integer
          description: The maximum number of minutes a view image can be cached before being refreshed.
        - name: vf_<filter_name>
          in: query
          type: string
          description: Apply a filter to the view. Replace <filter_name> with the name of the filter field.
    - name: sites-site-id-views-view-id-pdf
      path: /sites/{site-id}/views/{view-id}/pdf
      operations:
      - name: queryviewpdf
        method: GET
        description: Tableau Query View Pdf
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: type
          in: query
          type: string
          description: The paper size for the PDF.
        - name: orientation
          in: query
          type: string
          description: The orientation of the PDF.
    - name: sites-site-id-views-view-id-previewImage
      path: /sites/{site-id}/views/{view-id}/previewImage
      operations:
      - name: queryviewpreviewimage
        method: GET
        description: Tableau Query View Preview Image
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: sites-site-id-views-view-id-recommendations
      path: /sites/{site-id}/views/{view-id}/recommendations
      operations:
      - name: getrecommendationsforviews
        method: GET
        description: Tableau Get Recommendations for Views
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: sites-site-id-workbooks-workbook-id-views
      path: /sites/{site-id}/workbooks/{workbook-id}/views
      operations:
      - name: queryviewsforworkbook
        method: GET
        description: Tableau Query Views for Workbook
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: includeUsageStatistics
          in: query
          type: boolean
          description: If true, returns usage statistics for each view.
    authentication:
      type: apikey
      key: X-Tableau-Auth
      value: '{{env.TABLEAU_API_KEY}}'
      placement: header
  exposes:
  - type: rest
    namespace: rest-views-rest
    port: 8080
    description: REST adapter for Tableau REST API — Views. One Spectral-compliant resource per consumed operation, prefixed
      with /v1.
    resources:
    - path: /v1/sites/{site-id}/views
      name: sites-site-id-views
      description: REST surface for sites-site-id-views.
      operations:
      - method: GET
        name: queryviewsforsite
        description: Tableau Query Views for Site
        call: rest-views.queryviewsforsite
        with:
          includeUsageStatistics: rest.includeUsageStatistics
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/sites/{site-id}/views/{view-id}
      name: sites-site-id-views-view-id
      description: REST surface for sites-site-id-views-view-id.
      operations:
      - method: GET
        name: queryviewbyid
        description: Tableau Query View by Id
        call: rest-views.queryviewbyid
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/sites/{site-id}/views/{view-id}/data
      name: sites-site-id-views-view-id-data
      description: REST surface for sites-site-id-views-view-id-data.
      operations:
      - method: GET
        name: queryviewdata
        description: Tableau Query View Data
        call: rest-views.queryviewdata
        with:
          maxAge: rest.maxAge
          vf_<filter_name>: rest.vf_<filter_name>
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/sites/{site-id}/views/{view-id}/image
      name: sites-site-id-views-view-id-image
      description: REST surface for sites-site-id-views-view-id-image.
      operations:
      - method: GET
        name: queryviewimage
        description: Tableau Query View Image
        call: rest-views.queryviewimage
        with:
          resolution: rest.resolution
          maxAge: rest.maxAge
          vf_<filter_name>: rest.vf_<filter_name>
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/sites/{site-id}/views/{view-id}/pdf
      name: sites-site-id-views-view-id-pdf
      description: REST surface for sites-site-id-views-view-id-pdf.
      operations:
      - method: GET
        name: queryviewpdf
        description: Tableau Query View Pdf
        call: rest-views.queryviewpdf
        with:
          type: rest.type
          orientation: rest.orientation
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/sites/{site-id}/views/{view-id}/previewimage
      name: sites-site-id-views-view-id-previewimage
      description: REST surface for sites-site-id-views-view-id-previewImage.
      operations:
      - method: GET
        name: queryviewpreviewimage
        description: Tableau Query View Preview Image
        call: rest-views.queryviewpreviewimage
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/sites/{site-id}/views/{view-id}/recommendations
      name: sites-site-id-views-view-id-recommendations
      description: REST surface for sites-site-id-views-view-id-recommendations.
      operations:
      - method: GET
        name: getrecommendationsforviews
        description: Tableau Get Recommendations for Views
        call: rest-views.getrecommendationsforviews
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/sites/{site-id}/workbooks/{workbook-id}/views
      name: sites-site-id-workbooks-workbook-id-views
      description: REST surface for sites-site-id-workbooks-workbook-id-views.
      operations:
      - method: GET
        name: queryviewsforworkbook
        description: Tableau Query Views for Workbook
        call: rest-views.queryviewsforworkbook
        with:
          includeUsageStatistics: rest.includeUsageStatistics
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: rest-views-mcp
    port: 9090
    transport: http
    description: MCP adapter for Tableau REST API — Views. One tool per consumed operation, routed inline through this capability's
      consumes block.
    tools:
    - name: tableau-query-views-site
      description: Tableau Query Views for Site
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: rest-views.queryviewsforsite
      with:
        includeUsageStatistics: tools.includeUsageStatistics
      outputParameters:
      - type: object
        mapping: $.
    - name: tableau-query-view-id
      description: Tableau Query View by Id
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: rest-views.queryviewbyid
      outputParameters:
      - type: object
        mapping: $.
    - name: tableau-query-view-data
      description: Tableau Query View Data
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: rest-views.queryviewdata
      with:
        maxAge: tools.maxAge
        vf_<filter_name>: tools.vf_<filter_name>
      outputParameters:
      - type: object
        mapping: $.
    - name: tableau-query-view-image
      description: Tableau Query View Image
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: rest-views.queryviewimage
      with:
        resolution: tools.resolution
        maxAge: tools.maxAge
        vf_<filter_name>: tools.vf_<filter_name>
      outputParameters:
      - type: object
        mapping: $.
    - name: tableau-query-view-pdf
      description: Tableau Query View Pdf
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: rest-views.queryviewpdf
      with:
        type: tools.type
        orientation: tools.orientation
      outputParameters:
      - type: object
        mapping: $.
    - name: tableau-query-view-preview-image
      description: Tableau Query View Preview Image
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: rest-views.queryviewpreviewimage
      outputParameters:
      - type: object
        mapping: $.
    - name: tableau-get-recommendations-views
      description: Tableau Get Recommendations for Views
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: rest-views.getrecommendationsforviews
      outputParameters:
      - type: object
        mapping: $.
    - name: tableau-query-views-workbook
      description: Tableau Query Views for Workbook
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: rest-views.queryviewsforworkbook
      with:
        includeUsageStatistics: tools.includeUsageStatistics
      outputParameters:
      - type: object
        mapping: $.