Skip to content

Build a binding from local (uncommitted) SQL for `vite dev`

POST
/api/workspaces/{workspaceId}/apps/{id}/bindings/{name}/dev-build

The laptop dev loop behind makoData(): send the local bindings/<name>.sql text and get back the parquet of exactly that query, run read-only through the workspace connection its front matter names. Text identical to the committed binding is served from (or materialized into) the app’s stored artifact; anything else — an uncommitted edit, or dbtEnvironment rendering {{ dbt_schema }} against a dev dbt environment (per relation: ones the environment has not built read prod, unless dbtDefer: false) — is a draft: built and streamed back, reused for 30 minutes (same connection + rendered SQL) unless refresh, never stored as the app’s artifact, so published viewers never see it. A draft that keeps failing answers 503 with Retry-After instead of re-running. May redirect to a short-lived signed artifact URL; follow redirects. With async: true, a build (not a stored artifact) answers 202 with a jobId to poll at GET …/binding-jobs/{jobId} instead.

workspaceId
required
string
id
required
string
name
required
string
object
source
required
string
>= 1 characters <= 524288 characters
dbtEnvironment
string
>= 1 characters <= 64 characters
dbtDefer
boolean
refresh
boolean
async
boolean

Redirect to a short-lived signed artifact URL

Successful response

object
success

Whether the request succeeded.

boolean
data

Endpoint-specific response payload.

message
string
Example
Operation completed
error
string
Example
Error message

Invalid request

object
success
boolean
error
string
Example
Error message

Internal server error

object
success
boolean
error
string
Example
Error message