arazzo: 1.0.1
info:
title: Dataiku Resolve Connection and Run SQL Query
summary: Verify a DSS connection exists, then execute a SQL query against it and return the rows.
description: >-
Runs an ad-hoc SQL query against a Dataiku DSS connection safely. The
workflow lists the available connections, confirms the target connection by
fetching its details, and then executes the supplied SQL query against that
connection, returning the result columns and rows. Every step inlines its
request so the flow can be executed without opening the underlying OpenAPI
description.
version: 1.0.0
sourceDescriptions:
- name: connectionsApi
url: ../openapi/dataiku-connections-api-openapi.yml
type: openapi
- name: sqlQueriesApi
url: ../openapi/dataiku-sql-queries-api-openapi.yml
type: openapi
workflows:
- workflowId: run-sql-query
summary: Confirm a connection and execute a SQL query against it.
description: >-
Lists connections, gets the target connection, then runs a SQL query and
returns the columns and rows.
inputs:
type: object
required:
- apiKey
- connectionName
- query
properties:
apiKey:
type: string
description: DSS API key passed as a Bearer token in the Authorization header.
connectionName:
type: string
description: Name of the DSS connection to query.
query:
type: string
description: SQL query to execute.
steps:
- stepId: listConnections
description: List the DSS connections available on the instance.
operationId: listConnections
parameters:
- name: Authorization
in: header
value: Bearer $inputs.apiKey
successCriteria:
- condition: $statusCode == 200
outputs:
connections: $response.body
- stepId: getConnection
description: Fetch the target connection's details to confirm it exists and is usable.
operationId: getConnection
parameters:
- name: Authorization
in: header
value: Bearer $inputs.apiKey
- name: connectionName
in: path
value: $inputs.connectionName
successCriteria:
- condition: $statusCode == 200
outputs:
connection: $response.body
- stepId: runQuery
description: Execute the SQL query against the confirmed connection.
operationId: executeSqlQuery
parameters:
- name: Authorization
in: header
value: Bearer $inputs.apiKey
requestBody:
contentType: application/json
payload:
connection: $inputs.connectionName
query: $inputs.query
successCriteria:
- condition: $statusCode == 200
outputs:
columns: $response.body#/columns
rows: $response.body#/rows
outputs:
columns: $steps.runQuery.outputs.columns
rows: $steps.runQuery.outputs.rows
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we
store it to create your key and to recognise you if you sign in with another
provider. See our Privacy Policy and
Terms.