naftiko: 1.0.0-alpha2 info: label: Dust Data Sources API — Data Sources description: 'Dust Data Sources API — Data Sources. 22 operations. Lead operation: Get a Data Source View. Self-contained Naftiko capability covering one Dust business surface.' tags: - Dust - Data Sources created: '2026-05-24' modified: '2026-05-24' binds: - namespace: env keys: DUST_API_KEY: DUST_API_KEY DUST_WORKSPACE_ID: DUST_WORKSPACE_ID capability: consumes: - type: http namespace: datasources-datasources baseUri: https://dust.tt description: Dust Data Sources API — Data Sources business capability. Self-contained, no shared references. resources: - name: api-v1-w-wid-spaces-spaceid-data-source-views-dsvid path: /api/v1/w/{wId}/spaces/{spaceId}/data_source_views/{dsvId} operations: - name: get-api-v1-w-spaces-data-source-views method: GET description: Get a Data Source View outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: [] - name: patch-api-v1-w-spaces-data-source-views method: PATCH description: Update a Data Source View outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: delete-api-v1-w-spaces-data-source-views method: DELETE description: Delete a Data Source View outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: [] - name: api-v1-w-wid-spaces-spaceid-data-source-views-dsvid-search path: /api/v1/w/{wId}/spaces/{spaceId}/data_source_views/{dsvId}/search operations: - name: get-api-v1-w-spaces-data-source-views-search method: GET description: Search the Data Source View outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: [] - name: api-v1-w-wid-spaces-spaceid-data-source-views path: /api/v1/w/{wId}/spaces/{spaceId}/data_source_views operations: - name: get-api-v1-w-spaces-data-source-views method: GET description: List Data Source Views outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: [] - name: api-v1-w-wid-spaces-spaceid-data-sources-dsid-check-upsert-q path: /api/v1/w/{wId}/spaces/{spaceId}/data_sources/{dsId}/check_upsert_queue operations: - name: get-api-v1-w-spaces-data-sources-check-upsert-queue method: GET description: Check the Upsert Queue Status for a Data Source outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: [] - name: api-v1-w-wid-spaces-spaceid-data-sources-dsid-documents-docu path: /api/v1/w/{wId}/spaces/{spaceId}/data_sources/{dsId}/documents/{documentId} operations: - name: get-api-v1-w-spaces-data-sources-documents method: GET description: Retrieve a Document from a Data Source outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: [] - name: post-api-v1-w-spaces-data-sources-documents method: POST description: Upsert a Document in a Data Source outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: delete-api-v1-w-spaces-data-sources-documents method: DELETE description: Delete a Document from a Data Source outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: [] - name: api-v1-w-wid-spaces-spaceid-data-sources-dsid-documents-docu path: /api/v1/w/{wId}/spaces/{spaceId}/data_sources/{dsId}/documents/{documentId}/parents operations: - name: post-api-v1-w-spaces-data-sources-documents-parents method: POST description: Update the Parents of a Document outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: api-v1-w-wid-spaces-spaceid-data-sources-dsid-documents path: /api/v1/w/{wId}/spaces/{spaceId}/data_sources/{dsId}/documents operations: - name: get-api-v1-w-spaces-data-sources-documents method: GET description: Get Documents outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: [] - name: api-v1-w-wid-spaces-spaceid-data-sources-dsid-search path: /api/v1/w/{wId}/spaces/{spaceId}/data_sources/{dsId}/search operations: - name: get-api-v1-w-spaces-data-sources-search method: GET description: Search the Data Source outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: [] - name: api-v1-w-wid-spaces-spaceid-data-sources-dsid-tables-tid path: /api/v1/w/{wId}/spaces/{spaceId}/data_sources/{dsId}/tables/{tId} operations: - name: get-api-v1-w-spaces-data-sources-tables method: GET description: Get a Table outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: [] - name: delete-api-v1-w-spaces-data-sources-tables method: DELETE description: Delete a Table outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: [] - name: api-v1-w-wid-spaces-spaceid-data-sources-dsid-tables-tid-row path: /api/v1/w/{wId}/spaces/{spaceId}/data_sources/{dsId}/tables/{tId}/rows/{rId} operations: - name: get-api-v1-w-spaces-data-sources-tables-rows method: GET description: Get a Row outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: [] - name: delete-api-v1-w-spaces-data-sources-tables-rows method: DELETE description: Delete a Row outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: [] - name: api-v1-w-wid-spaces-spaceid-data-sources-dsid-tables-tid-row path: /api/v1/w/{wId}/spaces/{spaceId}/data_sources/{dsId}/tables/{tId}/rows operations: - name: get-api-v1-w-spaces-data-sources-tables-rows method: GET description: List Rows outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: [] - name: post-api-v1-w-spaces-data-sources-tables-rows method: POST description: Upsert Rows outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: api-v1-w-wid-spaces-spaceid-data-sources-dsid-tables path: /api/v1/w/{wId}/spaces/{spaceId}/data_sources/{dsId}/tables operations: - name: get-api-v1-w-spaces-data-sources-tables method: GET description: Get Tables outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: [] - name: post-api-v1-w-spaces-data-sources-tables method: POST description: Upsert a Table outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: api-v1-w-wid-spaces-spaceid-data-sources path: /api/v1/w/{wId}/spaces/{spaceId}/data_sources operations: - name: get-api-v1-w-spaces-data-sources method: GET description: Get Data Sources outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: [] - name: api-v1-w-wid-spaces path: /api/v1/w/{wId}/spaces operations: - name: get-api-v1-w-spaces method: GET description: List Available Spaces. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: [] authentication: type: bearer value: '{{env.DUST_API_KEY}}' placement: header exposes: - type: rest namespace: datasources-datasources-rest port: 8080 description: REST adapter for Dust Data Sources API — Data Sources. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/api/v1/w/{wId}/spaces/{spaceId}/data_source_views/{dsvId} name: api-v1-w-wid-spaces-spaceid-data-source-views-dsvid description: REST surface for /api/v1/w/{wId}/spaces/{spaceId}/data_source_views/{dsvId}. operations: - method: GET name: get-api-v1-w-spaces-data-source-views description: Get a Data Source View call: datasources-datasources.get-api-v1-w-spaces-data-source-views with: {} outputParameters: - type: object mapping: $. - method: PATCH name: patch-api-v1-w-spaces-data-source-views description: Update a Data Source View call: datasources-datasources.patch-api-v1-w-spaces-data-source-views with: body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: delete-api-v1-w-spaces-data-source-views description: Delete a Data Source View call: datasources-datasources.delete-api-v1-w-spaces-data-source-views with: {} outputParameters: - type: object mapping: $. - path: /v1/api/v1/w/{wId}/spaces/{spaceId}/data_source_views/{dsvId}/search name: api-v1-w-wid-spaces-spaceid-data-source-views-dsvid-search description: REST surface for /api/v1/w/{wId}/spaces/{spaceId}/data_source_views/{dsvId}/search. operations: - method: GET name: get-api-v1-w-spaces-data-source-views-search description: Search the Data Source View call: datasources-datasources.get-api-v1-w-spaces-data-source-views-search with: {} outputParameters: - type: object mapping: $. - path: /v1/api/v1/w/{wId}/spaces/{spaceId}/data_source_views name: api-v1-w-wid-spaces-spaceid-data-source-views description: REST surface for /api/v1/w/{wId}/spaces/{spaceId}/data_source_views. operations: - method: GET name: get-api-v1-w-spaces-data-source-views description: List Data Source Views call: datasources-datasources.get-api-v1-w-spaces-data-source-views with: {} outputParameters: - type: object mapping: $. - path: /v1/api/v1/w/{wId}/spaces/{spaceId}/data_sources/{dsId}/check_upsert_queue name: api-v1-w-wid-spaces-spaceid-data-sources-dsid-check-upsert-q description: REST surface for /api/v1/w/{wId}/spaces/{spaceId}/data_sources/{dsId}/check_upsert_queue. operations: - method: GET name: get-api-v1-w-spaces-data-sources-check-upsert-queue description: Check the Upsert Queue Status for a Data Source call: datasources-datasources.get-api-v1-w-spaces-data-sources-check-upsert-queue with: {} outputParameters: - type: object mapping: $. - path: /v1/api/v1/w/{wId}/spaces/{spaceId}/data_sources/{dsId}/documents/{documentId} name: api-v1-w-wid-spaces-spaceid-data-sources-dsid-documents-docu description: REST surface for /api/v1/w/{wId}/spaces/{spaceId}/data_sources/{dsId}/documents/{documentId}. operations: - method: GET name: get-api-v1-w-spaces-data-sources-documents description: Retrieve a Document from a Data Source call: datasources-datasources.get-api-v1-w-spaces-data-sources-documents with: {} outputParameters: - type: object mapping: $. - method: POST name: post-api-v1-w-spaces-data-sources-documents description: Upsert a Document in a Data Source call: datasources-datasources.post-api-v1-w-spaces-data-sources-documents with: body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: delete-api-v1-w-spaces-data-sources-documents description: Delete a Document from a Data Source call: datasources-datasources.delete-api-v1-w-spaces-data-sources-documents with: {} outputParameters: - type: object mapping: $. - path: /v1/api/v1/w/{wId}/spaces/{spaceId}/data_sources/{dsId}/documents/{documentId}/parents name: api-v1-w-wid-spaces-spaceid-data-sources-dsid-documents-docu description: REST surface for /api/v1/w/{wId}/spaces/{spaceId}/data_sources/{dsId}/documents/{documentId}/parents. operations: - method: POST name: post-api-v1-w-spaces-data-sources-documents-parents description: Update the Parents of a Document call: datasources-datasources.post-api-v1-w-spaces-data-sources-documents-parents with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/v1/w/{wId}/spaces/{spaceId}/data_sources/{dsId}/documents name: api-v1-w-wid-spaces-spaceid-data-sources-dsid-documents description: REST surface for /api/v1/w/{wId}/spaces/{spaceId}/data_sources/{dsId}/documents. operations: - method: GET name: get-api-v1-w-spaces-data-sources-documents description: Get Documents call: datasources-datasources.get-api-v1-w-spaces-data-sources-documents with: {} outputParameters: - type: object mapping: $. - path: /v1/api/v1/w/{wId}/spaces/{spaceId}/data_sources/{dsId}/search name: api-v1-w-wid-spaces-spaceid-data-sources-dsid-search description: REST surface for /api/v1/w/{wId}/spaces/{spaceId}/data_sources/{dsId}/search. operations: - method: GET name: get-api-v1-w-spaces-data-sources-search description: Search the Data Source call: datasources-datasources.get-api-v1-w-spaces-data-sources-search with: {} outputParameters: - type: object mapping: $. - path: /v1/api/v1/w/{wId}/spaces/{spaceId}/data_sources/{dsId}/tables/{tId} name: api-v1-w-wid-spaces-spaceid-data-sources-dsid-tables-tid description: REST surface for /api/v1/w/{wId}/spaces/{spaceId}/data_sources/{dsId}/tables/{tId}. operations: - method: GET name: get-api-v1-w-spaces-data-sources-tables description: Get a Table call: datasources-datasources.get-api-v1-w-spaces-data-sources-tables with: {} outputParameters: - type: object mapping: $. - method: DELETE name: delete-api-v1-w-spaces-data-sources-tables description: Delete a Table call: datasources-datasources.delete-api-v1-w-spaces-data-sources-tables with: {} outputParameters: - type: object mapping: $. - path: /v1/api/v1/w/{wId}/spaces/{spaceId}/data_sources/{dsId}/tables/{tId}/rows/{rId} name: api-v1-w-wid-spaces-spaceid-data-sources-dsid-tables-tid-row description: REST surface for /api/v1/w/{wId}/spaces/{spaceId}/data_sources/{dsId}/tables/{tId}/rows/{rId}. operations: - method: GET name: get-api-v1-w-spaces-data-sources-tables-rows description: Get a Row call: datasources-datasources.get-api-v1-w-spaces-data-sources-tables-rows with: {} outputParameters: - type: object mapping: $. - method: DELETE name: delete-api-v1-w-spaces-data-sources-tables-rows description: Delete a Row call: datasources-datasources.delete-api-v1-w-spaces-data-sources-tables-rows with: {} outputParameters: - type: object mapping: $. - path: /v1/api/v1/w/{wId}/spaces/{spaceId}/data_sources/{dsId}/tables/{tId}/rows name: api-v1-w-wid-spaces-spaceid-data-sources-dsid-tables-tid-row description: REST surface for /api/v1/w/{wId}/spaces/{spaceId}/data_sources/{dsId}/tables/{tId}/rows. operations: - method: GET name: get-api-v1-w-spaces-data-sources-tables-rows description: List Rows call: datasources-datasources.get-api-v1-w-spaces-data-sources-tables-rows with: {} outputParameters: - type: object mapping: $. - method: POST name: post-api-v1-w-spaces-data-sources-tables-rows description: Upsert Rows call: datasources-datasources.post-api-v1-w-spaces-data-sources-tables-rows with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/v1/w/{wId}/spaces/{spaceId}/data_sources/{dsId}/tables name: api-v1-w-wid-spaces-spaceid-data-sources-dsid-tables description: REST surface for /api/v1/w/{wId}/spaces/{spaceId}/data_sources/{dsId}/tables. operations: - method: GET name: get-api-v1-w-spaces-data-sources-tables description: Get Tables call: datasources-datasources.get-api-v1-w-spaces-data-sources-tables with: {} outputParameters: - type: object mapping: $. - method: POST name: post-api-v1-w-spaces-data-sources-tables description: Upsert a Table call: datasources-datasources.post-api-v1-w-spaces-data-sources-tables with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/v1/w/{wId}/spaces/{spaceId}/data_sources name: api-v1-w-wid-spaces-spaceid-data-sources description: REST surface for /api/v1/w/{wId}/spaces/{spaceId}/data_sources. operations: - method: GET name: get-api-v1-w-spaces-data-sources description: Get Data Sources call: datasources-datasources.get-api-v1-w-spaces-data-sources with: {} outputParameters: - type: object mapping: $. - path: /v1/api/v1/w/{wId}/spaces name: api-v1-w-wid-spaces description: REST surface for /api/v1/w/{wId}/spaces. operations: - method: GET name: get-api-v1-w-spaces description: List Available Spaces. call: datasources-datasources.get-api-v1-w-spaces with: {} outputParameters: - type: object mapping: $. - type: mcp namespace: datasources-datasources-mcp port: 9090 transport: http description: MCP adapter for Dust Data Sources API — Data Sources. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: dust-get-api-v1-w-spaces-data-source-views description: Get a Data Source View hints: readOnly: true destructive: false idempotent: true call: datasources-datasources.get-api-v1-w-spaces-data-source-views with: {} outputParameters: - type: object mapping: $. - name: dust-patch-api-v1-w-spaces-data-source-views description: Update a Data Source View hints: readOnly: false destructive: false idempotent: false call: datasources-datasources.patch-api-v1-w-spaces-data-source-views with: body: tools.body outputParameters: - type: object mapping: $. - name: dust-delete-api-v1-w-spaces-data-source-views description: Delete a Data Source View hints: readOnly: false destructive: true idempotent: true call: datasources-datasources.delete-api-v1-w-spaces-data-source-views with: {} outputParameters: - type: object mapping: $. - name: dust-get-api-v1-w-spaces-data-source-views-search description: Search the Data Source View hints: readOnly: true destructive: false idempotent: true call: datasources-datasources.get-api-v1-w-spaces-data-source-views-search with: {} outputParameters: - type: object mapping: $. - name: dust-get-api-v1-w-spaces-data-source-views description: List Data Source Views hints: readOnly: true destructive: false idempotent: true call: datasources-datasources.get-api-v1-w-spaces-data-source-views with: {} outputParameters: - type: object mapping: $. - name: dust-get-api-v1-w-spaces-data-sources-check-upsert-queue description: Check the Upsert Queue Status for a Data Source hints: readOnly: true destructive: false idempotent: true call: datasources-datasources.get-api-v1-w-spaces-data-sources-check-upsert-queue with: {} outputParameters: - type: object mapping: $. - name: dust-get-api-v1-w-spaces-data-sources-documents description: Retrieve a Document from a Data Source hints: readOnly: true destructive: false idempotent: true call: datasources-datasources.get-api-v1-w-spaces-data-sources-documents with: {} outputParameters: - type: object mapping: $. - name: dust-post-api-v1-w-spaces-data-sources-documents description: Upsert a Document in a Data Source hints: readOnly: false destructive: false idempotent: false call: datasources-datasources.post-api-v1-w-spaces-data-sources-documents with: body: tools.body outputParameters: - type: object mapping: $. - name: dust-delete-api-v1-w-spaces-data-sources-documents description: Delete a Document from a Data Source hints: readOnly: false destructive: true idempotent: true call: datasources-datasources.delete-api-v1-w-spaces-data-sources-documents with: {} outputParameters: - type: object mapping: $. - name: dust-post-api-v1-w-spaces-data-sources-documents-parents description: Update the Parents of a Document hints: readOnly: false destructive: false idempotent: false call: datasources-datasources.post-api-v1-w-spaces-data-sources-documents-parents with: body: tools.body outputParameters: - type: object mapping: $. - name: dust-get-api-v1-w-spaces-data-sources-documents description: Get Documents hints: readOnly: true destructive: false idempotent: true call: datasources-datasources.get-api-v1-w-spaces-data-sources-documents with: {} outputParameters: - type: object mapping: $. - name: dust-get-api-v1-w-spaces-data-sources-search description: Search the Data Source hints: readOnly: true destructive: false idempotent: true call: datasources-datasources.get-api-v1-w-spaces-data-sources-search with: {} outputParameters: - type: object mapping: $. - name: dust-get-api-v1-w-spaces-data-sources-tables description: Get a Table hints: readOnly: true destructive: false idempotent: true call: datasources-datasources.get-api-v1-w-spaces-data-sources-tables with: {} outputParameters: - type: object mapping: $. - name: dust-delete-api-v1-w-spaces-data-sources-tables description: Delete a Table hints: readOnly: false destructive: true idempotent: true call: datasources-datasources.delete-api-v1-w-spaces-data-sources-tables with: {} outputParameters: - type: object mapping: $. - name: dust-get-api-v1-w-spaces-data-sources-tables-rows description: Get a Row hints: readOnly: true destructive: false idempotent: true call: datasources-datasources.get-api-v1-w-spaces-data-sources-tables-rows with: {} outputParameters: - type: object mapping: $. - name: dust-delete-api-v1-w-spaces-data-sources-tables-rows description: Delete a Row hints: readOnly: false destructive: true idempotent: true call: datasources-datasources.delete-api-v1-w-spaces-data-sources-tables-rows with: {} outputParameters: - type: object mapping: $. - name: dust-get-api-v1-w-spaces-data-sources-tables-rows description: List Rows hints: readOnly: true destructive: false idempotent: true call: datasources-datasources.get-api-v1-w-spaces-data-sources-tables-rows with: {} outputParameters: - type: object mapping: $. - name: dust-post-api-v1-w-spaces-data-sources-tables-rows description: Upsert Rows hints: readOnly: false destructive: false idempotent: false call: datasources-datasources.post-api-v1-w-spaces-data-sources-tables-rows with: body: tools.body outputParameters: - type: object mapping: $. - name: dust-get-api-v1-w-spaces-data-sources-tables description: Get Tables hints: readOnly: true destructive: false idempotent: true call: datasources-datasources.get-api-v1-w-spaces-data-sources-tables with: {} outputParameters: - type: object mapping: $. - name: dust-post-api-v1-w-spaces-data-sources-tables description: Upsert a Table hints: readOnly: false destructive: false idempotent: false call: datasources-datasources.post-api-v1-w-spaces-data-sources-tables with: body: tools.body outputParameters: - type: object mapping: $. - name: dust-get-api-v1-w-spaces-data-sources description: Get Data Sources hints: readOnly: true destructive: false idempotent: true call: datasources-datasources.get-api-v1-w-spaces-data-sources with: {} outputParameters: - type: object mapping: $. - name: dust-get-api-v1-w-spaces description: List Available Spaces. hints: readOnly: true destructive: false idempotent: true call: datasources-datasources.get-api-v1-w-spaces with: {} outputParameters: - type: object mapping: $.