Skip to main content
Bilanc ingests data from multiple sources to provide engineering metrics and insights.

Supported Integrations


GitHub

GitHub is the primary source for code and pull request metrics.

Create a Personal Access Token

  1. Go to GitHub Settings > Developer Settings > Personal Access Tokens
  2. Click Generate new token (classic)
  3. Give it a descriptive name (e.g., “Bilanc Self-Hosted”)
  4. Select the following scopes:
    • repo - Full control of private repositories
    • read:org - Read organization membership
For organization repositories, the token owner must have access to all repositories you want to track.

Configure Environment Variables

Add to your .env file:
The GITHUB_REPOSITORY variable accepts a space-separated list of repositories in owner/name format.

Configure the Tap

Add GitHub to your tenant_config.yaml:

GitHub Metrics Collected

  • Pull requests (opened, merged, closed, review times)
  • Commits and commit frequency
  • Code reviews and review comments
  • Releases and deployment frequency
  • Repository activity

Linear

Linear provides issue and project management metrics.

Create an API Token

  1. Go to Linear Settings > API
  2. Click Create new API key
  3. Give it a descriptive name (e.g., “Bilanc Self-Hosted”)
  4. Copy the generated token
The API token provides access to all workspaces the user has access to.

Configure Environment Variables

Add to your .env file:

Configure the Tap

Add Linear to your tenant_config.yaml:

Linear Metrics Collected

  • Issues (created, completed, cycle time)
  • Projects and project progress
  • Cycles and cycle velocity
  • Team workload and distribution

Disabling Linear

If you don’t use Linear, see Advanced Configuration for instructions on disabling the integration.

Cursor

Cursor provides AI coding assistant usage metrics.

Get Your API Key

  1. Contact Bilanc support to obtain your Cursor API key
  2. The key is specific to your organization

Configure Environment Variables

Add to your .env file:

Configure the Tap

Add Cursor to your tenant_config.yaml:

Cursor Metrics Collected

  • AI completions and suggestions
  • Code generation usage
  • Time saved by AI assistance
  • Adoption rates across teams

Multiple Integrations Example

Here’s a complete tenant_config.yaml with all integrations enabled:

Start Date Configuration

The start_date field determines how far back Bilanc fetches historical data:
Start with a recent date for initial testing, then adjust to collect more historical data once everything is working.

Verifying Integrations

After configuring integrations:
  1. Start or restart Bilanc: make r
  2. Open the Dagster UI at http://localhost:4000
  3. Check that the pipelines for each integration are running
  4. View the job history to verify data is being ingested

Troubleshooting

GitHub: 401 Unauthorized

  • Verify your token hasn’t expired
  • Check that the token has the required scopes (repo, read:org)
  • Ensure the token owner has access to the specified repositories

Linear: No Data

  • Verify the API token is correct
  • Check that the token owner has access to the workspace
  • Ensure there are issues within the start_date range

Cursor: Connection Failed

  • Verify the API key is correct
  • Contact Bilanc support if issues persist
For more troubleshooting help, see Troubleshooting.