Documentation Index
Fetch the complete documentation index at: https://docs.sidecardata.com/llms.txt
Use this file to discover all available pages before exploring further.
How It Works
dbt Core generates manifest.json and run_results.json artifacts containing metadata about your dbt project. Sidecar ingests these artifacts to map your models, tests, and lineage.
There are two ways to integrate dbt Core with Sidecar:
- Manual upload — upload artifacts through the Sidecar UI
- Automated upload — use a credential token to send artifacts from your CI/CD pipeline
1. Generate Artifacts
- Install dbt Core locally: dbt Installation Guide
- Run
dbt run or dbt build. dbt Core will generate manifest.json and run_results.json in the target folder.
2. Manual Upload via the Sidecar UI
- On the Onboarding Page (or the Settings Page), navigate to the Connect your dbt section and switch to the dbt Core tab.
- Upload the two artifacts generated in Step 1.
- Click
Test, then click Save.
3. Automated Upload via API
Click the Generate button in the Sidecar UI to obtain a credential token. Then use the API to upload artifacts:
curl --location 'https://service-platform.sidecardata.com/api/v1/setup/dbt-core/upload-artifacts/' \
--header 'X-Artifact-Token: {YOUR_TOKEN}' \
--form 'run_results=@"path/to/run_results.json"' \
--form 'manifest=@"path/to/manifest.json"'
Python example
import requests
artifact_token = '{YOUR_TOKEN}'
run_results_path = 'path/to/run_results.json'
manifest_path = 'path/to/manifest.json'
url = 'https://service-platform.sidecardata.com/api/v1/setup/dbt-core/upload-artifacts/'
headers = {
'X-Artifact-Token': artifact_token,
}
files = {
'run_results': open(run_results_path, 'rb'),
'manifest': open(manifest_path, 'rb'),
}
response = requests.post(url, headers=headers, files=files)
print('Status Code:', response.status_code)
print('Response:', response.text)
Airflow example
from airflow.operators.bash import BashOperator
upload_to_sidecar = BashOperator(
task_id="upload_artifacts_to_sidecar",
bash_command="""
cd /home/airflow/gcs/data/dbt/your-dbt-project
curl --location \
'https://service-platform.sidecardata.com/api/v1/setup/dbt-core/upload-artifacts/' \
--header 'X-Artifact-Token: {{ var.value.sidecar_token }}' \
--form 'run_results=@"target/run_results.json"' \
--form 'manifest=@"target/manifest.json"'
""",
)
refresh_seeds >> main_dbt_task >> upload_to_sidecar