Reference

API Reference

Base URL: https://api.buildpathio.com/v1

Authentication

All API requests require a Bearer token in the Authorization header. Generate tokens in the Buildpathio web dashboard under Settings → API Keys.

# curl example
curl -H "Authorization: Bearer bpi_sk_..." \
  https://api.buildpathio.com/v1/graph

Endpoints

GET /graph

Returns the full dependency graph for your organization.

# Request
curl -H "Authorization: Bearer bpi_sk_..." \
  https://api.buildpathio.com/v1/graph

# Response (200)
{
  "nodes": [
    { "id": "order-api", "repo": "acme/order-service" }
  ],
  "edges": [
    { "from": "api-gateway", "to": "order-api", "weight": 1240 }
  ]
}

GET /graph/{service}

Returns the subgraph for a single service — its upstream and downstream dependencies.

POST /check

Triggers a manual risk check on a PR or a set of changed files.

# Python example
import requests

response = requests.post(
    "https://api.buildpathio.com/v1/check",
    headers={"Authorization": "Bearer bpi_sk_..."},
    json={
        "repo": "acme/order-service",
        "pr_id": 1847
    }
)
print(response.json())

GET /score/{pr_id}

Returns the most recent risk score for a specific pull request ID.

# Response (200)
{
  "pr_id": 1847,
  "score": 87,
  "level": "HIGH",
  "blocked": true,
  "affected_services": [
    { "name": "order-api",   "score": 87, "level": "HIGH" },
    { "name": "notify-worker", "score": 54, "level": "MEDIUM" }
  ],
  "computed_at": "2026-06-10T14:32:00Z"
}

Rate limits

API requests are rate-limited at 1,000 requests/hour per API key. Batch operations via webhooks are not subject to this limit. Rate limit headers are included in all responses: X-RateLimit-Remaining and X-RateLimit-Reset.