dbt
Bring your business data together in dbt, and act on it in the apps your team already uses.
11 ways to read, 3 ways to write, each write switched on by you.
Quality checks
Built and tested with example responses.
- Ready to connect: doneEvery listed action is built in.
- Built and tested with example responses: doneEach action is built from the provider’s published API and tested against example responses, errors, rate limits and paging.
Connected, approved, proven.
The things teams do most with dbt, an example flow with a person in the loop, and what Nexra keeps as proof.
Top actions
- Run a dbt job
job_runs.createApproval by rule - Cancel a run
run_cancellations.createApproval by rule - List environments
environments.listRead
Example flow
- dbt · List environments
environments.listDone - dbt · Run a dbt job
job_runs.createMaker-checker - Nexra · Record the decision and result in the evidence chainProven
Example workflow. Routine runs go through on their own. Only a change your rules flag, such as one over a limit you set, waits for the right person, who sees the exact change and the rule before it reaches dbt.
What gets logged
- Whether it ran on its own or who approved it, and under which rule
- A fingerprint of the exact request sent to dbt
- dbt's reply: what it created or changed
- One entry in the evidence chain, linked to the one before
Try this in the sandbox
Run the whole flow with test data in your sandbox, then connect your own account when you are ready to go live.
For developers
Technical detail
dbt: run saved dbt jobs, follow and retry runs, and read model, test and source freshness results.
dbt Labs API docs- Source actions
- 11
- Destination actions
- 3
- Data types
- 11
What you can map
Reads are always available. Writes are off until you switch them on for a connection, and governed writes follow your policies.
account1
- Get accountSource
The dbt account's name, plan, run slots and whether it is locked.
environments1
- List environmentsSource
Development and deployment environments of one project.
job runs1
- Run a dbt jobDestinationNot retried automaticallyApproval before production
Starts a run of a saved dbt job (it is queued like a manual run). Optionally run only some models, on another branch or into another schema.
jobs2
- Get a jobSource
One saved dbt job with its commands, schedule and last finished run.
- List jobsSource
Saved dbt jobs with their commands, schedule and last finished run.
projects1
- List projectsSource
dbt projects in the account.
run artifacts2
- Copy a run's results fileSource
Copies run_results.json, manifest.json, catalog.json or sources.json from a finished run into Nexra. Returns a Nexra file reference.
- List a run's results filesSource
Names of the files a finished run saved (run_results.json, manifest.json and others).
run cancellations1
- Cancel a runDestinationProvider duplicate protectionApproval before production
Stops a queued or running dbt run. Tables already built stay as they are; nothing is deleted.
run results1
- List model and test resultsSource
What happened to each model, test, seed and snapshot in a finished run (from run_results.json), problems first.
run retries1
- Retry a failed runDestinationNot retried automaticallyApproval before production
Re-runs a failed run from the point of failure; models that already succeeded are not rebuilt.
runs2
- Get a runSource
One run with its status, timing and steps (for example to check a run Nexra started).
- List runsSourceIncremental
Job runs, newest first, with their status and timing. Filter by job, project, environment or status; flows read only runs that finished since the last read.
source freshness1
- List source freshnessSource
How recently each source table was loaded, from a run that checked source freshness (sources.json), stale sources first.
Access and limits
- Authentication
- dbt service token
- Plans and access
- dbt platform Starter, Enterprise and Enterprise+ plans (the API is not on the free Developer plan). Service tokens need Job Runner (or Job Admin) to run jobs and Read-only or Job Viewer to read runs; Enterprise accounts can limit a token to some projects. IP restrictions apply to service tokens.
- Test environment
- Use a dbt Starter trial or a staging environment with its own job and a development schema, then connect production with a separate token.
- Rate limits
- 5,000 Administrative API requests per minute per account; over the limit dbt answers 429 and pauses the account's API access for five minutes.
- Pagination
- Lists page with limit (up to 100) and offset; Nexra stops at extra.pagination.total_count. Results files are read whole (at most 1,000 results returned).
- Provider events
- dbt sends signed job webhooks (run started, completed or errored) on Starter and Enterprise plans; Nexra does not receive them yet, so flows read runs that finished since the last read. Flows run on demand, on a schedule, or when a scheduled check finds new or changed records.
Before you build a flow
- Running and retrying jobs uses warehouse compute and is approval-gated; dbt has no idempotency key, so an uncertain run request is never repeated.
- Free-form dbt commands are not accepted: Only these models builds one dbt build, run or test command from model names, tags and paths, and refuses options such as --full-refresh or --vars.
- Discovery (GraphQL metadata) API, Semantic Layer and run logs are not offered; model results come from run_results.json and freshness from sources.json.
- Single-tenant and Virtual Private dbt vanity URLs are not accepted yet.
- Intentionally excluded: creating, editing or deleting jobs, projects, environments, connections, credentials, repositories, users, groups, permissions, tokens and webhooks.
Developer reference
- Create the dbt Labs credentials described above with the narrowest permissions your flows need.
- In Nexra, open Connect, then Connections, then New connection, choose dbt, enter its settings and credentials, and tick only the write actions you need. Connection guide
- Test the connection, then use its actions as flow sources and destinations. Flow guide
Machine-readable detail: GET /api/public/connect/connectors/dbt-cloud and the Connections API.