naftiko: 1.0.0-alpha2 info: label: Tableau REST API — Workbooks description: 'Tableau REST API — Workbooks. 6 operations. Lead operation: Query Workbooks for Site. Self-contained Naftiko capability covering one Tableau Desktop business surface.' tags: - Tableau Desktop - Workbooks created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: TABLEAU_DESKTOP_API_KEY: TABLEAU_DESKTOP_API_KEY capability: consumes: - type: http namespace: tableau-desktop-workbooks baseUri: https://{tableau-server}/api/3.22 description: Tableau REST API — Workbooks business capability. Self-contained, no shared references. resources: - name: sites-siteId-workbooks path: /sites/{siteId}/workbooks operations: - name: queryworkbooksforsite method: GET description: Query Workbooks for Site outputRawFormat: json outputParameters: - name: result type: object value: $. - name: publishworkbook method: POST description: Publish Workbook outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: sites-siteId-workbooks-workbookId path: /sites/{siteId}/workbooks/{workbookId} operations: - name: queryworkbook method: GET description: Query Workbook outputRawFormat: json outputParameters: - name: result type: object value: $. - name: updateworkbook method: PUT description: Update Workbook outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: deleteworkbook method: DELETE description: Delete Workbook outputRawFormat: json outputParameters: - name: result type: object value: $. - name: sites-siteId-workbooks-workbookId-content path: /sites/{siteId}/workbooks/{workbookId}/content operations: - name: downloadworkbook method: GET description: Download Workbook outputRawFormat: json outputParameters: - name: result type: object value: $. authentication: type: apikey key: X-Tableau-Auth value: '{{env.TABLEAU_DESKTOP_API_KEY}}' placement: header exposes: - type: rest namespace: tableau-desktop-workbooks-rest port: 8080 description: REST adapter for Tableau REST API — Workbooks. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/sites/{siteid}/workbooks name: sites-siteid-workbooks description: REST surface for sites-siteId-workbooks. operations: - method: GET name: queryworkbooksforsite description: Query Workbooks for Site call: tableau-desktop-workbooks.queryworkbooksforsite outputParameters: - type: object mapping: $. - method: POST name: publishworkbook description: Publish Workbook call: tableau-desktop-workbooks.publishworkbook with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/sites/{siteid}/workbooks/{workbookid} name: sites-siteid-workbooks-workbookid description: REST surface for sites-siteId-workbooks-workbookId. operations: - method: GET name: queryworkbook description: Query Workbook call: tableau-desktop-workbooks.queryworkbook outputParameters: - type: object mapping: $. - method: PUT name: updateworkbook description: Update Workbook call: tableau-desktop-workbooks.updateworkbook with: body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: deleteworkbook description: Delete Workbook call: tableau-desktop-workbooks.deleteworkbook outputParameters: - type: object mapping: $. - path: /v1/sites/{siteid}/workbooks/{workbookid}/content name: sites-siteid-workbooks-workbookid-content description: REST surface for sites-siteId-workbooks-workbookId-content. operations: - method: GET name: downloadworkbook description: Download Workbook call: tableau-desktop-workbooks.downloadworkbook outputParameters: - type: object mapping: $. - type: mcp namespace: tableau-desktop-workbooks-mcp port: 9090 transport: http description: MCP adapter for Tableau REST API — Workbooks. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: query-workbooks-site description: Query Workbooks for Site hints: readOnly: true destructive: false idempotent: true call: tableau-desktop-workbooks.queryworkbooksforsite outputParameters: - type: object mapping: $. - name: publish-workbook description: Publish Workbook hints: readOnly: false destructive: false idempotent: false call: tableau-desktop-workbooks.publishworkbook with: body: tools.body outputParameters: - type: object mapping: $. - name: query-workbook description: Query Workbook hints: readOnly: true destructive: false idempotent: true call: tableau-desktop-workbooks.queryworkbook outputParameters: - type: object mapping: $. - name: update-workbook description: Update Workbook hints: readOnly: false destructive: false idempotent: true call: tableau-desktop-workbooks.updateworkbook with: body: tools.body outputParameters: - type: object mapping: $. - name: delete-workbook description: Delete Workbook hints: readOnly: false destructive: true idempotent: true call: tableau-desktop-workbooks.deleteworkbook outputParameters: - type: object mapping: $. - name: download-workbook description: Download Workbook hints: readOnly: true destructive: false idempotent: true call: tableau-desktop-workbooks.downloadworkbook outputParameters: - type: object mapping: $.