Databricks
Call the Databricks SQL Statement Execution, SQL Warehouses, Jobs, Model Serving, and Vector Search REST APIs from a BPMN process.
Required inputs
| Key | Label | Type |
|---|---|---|
databricksHost | Workspace URL | FEEL expression |
service | Databricks API | string |
sqlOperation | Operation | string |
warehouseOperation | Operation | string |
jobsOperation | Operation | string |
servingOperation | Operation | string |
vectorSearchOperation | Operation | string |
authentication.type | Type | string |
authentication.clientId | Client ID | FEEL expression |
authentication.clientSecret | Client secret | secret |
authentication.token | Personal access token | secret |
servingEndpointName | Serving endpoint name | FEEL expression |
chatMessages | Messages | FEEL expression |
servingRawPayload | Request payload | FEEL expression |
sqlWarehouseId | Warehouse ID | FEEL expression |
sqlStatementText | SQL statement | FEEL expression |
sqlWaitTimeout | Wait timeout | FEEL expression |
sqlOnWaitTimeout | On wait timeout | string |
sqlDisposition | Disposition | string |
statementId | Statement ID | FEEL expression |
chunkIndex | Chunk index | FEEL expression |
warehouseId | Warehouse ID | FEEL expression |
jobId | Job ID | FEEL expression |
runId | Run ID | FEEL expression |
vectorIndexName | Index name | FEEL expression |
vectorQueryPayload | Query payload | FEEL expression |
readTimeoutInSeconds | Read timeout in seconds | string |
Optional inputs
| Key | Label | Type |
|---|---|---|
chatMaxTokens | Max tokens | secret |
chatTemperature | Temperature | FEEL expression |
chatExtraParams | Additional chat parameters | FEEL expression |
sqlParameters | Statement parameters | FEEL expression |
sqlCatalog | Catalog | FEEL expression |
sqlSchema | Schema | FEEL expression |
jobParameters | Job parameters | FEEL expression |
idempotencyToken | Idempotency token | secret |
additionalHeaders | Additional HTTP headers | FEEL expression |
resultVariable | Result variable | string |
resultExpression | Result expression | FEEL expression |
errorExpression | Error expression | FEEL expression |
retryCount | Retries | FEEL expression |
retryBackoff | Retry backoff | string |
jobTimeout | Job timeout | string |
Apply this connector with @bpmnkit/connectors
import { applyConnectorTemplate } from "@bpmnkit/connectors"
const result = applyConnectorTemplate("io.camunda.connectors.databricks.rest.v1", {
"databricksHost": "= ...",
"service": "sql",
"sqlOperation": "sql.execute",
"warehouseOperation": "warehouse.get",
"jobsOperation": "jobs.runNow",
"servingOperation": "serving.chat",
"vectorSearchOperation": "vectorSearch.query",
"authentication.type": "oauth-client-credentials-flow",
"authentication.clientId": "= ...",
"authentication.clientSecret": "<your client secret>",
"authentication.token": "<your personal access token>",
"servingEndpointName": "= ...",
"chatMessages": "= =[
{role: "user", content: "Hello"}
]",
"servingRawPayload": "= ={
dataframe_split: {
columns: ["feature_a", "feature_b"],
data: [[1, 2]]
}
}",
"sqlWarehouseId": "= ...",
"sqlStatementText": "= SELECT * FROM samples.nyctaxi.trips WHERE fare_amount > :min_fare LIMIT 10",
"sqlWaitTimeout": "= 30s",
"sqlOnWaitTimeout": "CONTINUE",
"sqlDisposition": "INLINE",
"statementId": "= ...",
"chunkIndex": "= ...",
"warehouseId": "= ...",
"jobId": "= ...",
"runId": "= ...",
"vectorIndexName": "= ...",
"vectorQueryPayload": "= ={
columns: ["id", "text"],
query_text: "search phrase",
num_results: 5
}",
"readTimeoutInSeconds": 60,
"chatMaxTokens": "<your max tokens>",
"chatTemperature": "= ...",
})