Bazel
Bazel is a fast, scalable, multi-language and extensible build tool open-sourced by Google. It supports software projects of any size across Java, C++, Go, Python, Rust, Swift, Kotlin, Scala, Android, iOS, and many other languages and platforms. Bazel uses a hermetic, sandboxed execution model with content-addressable caching, parallel builds, and remote execution. The project ships the `bazel` CLI, the Starlark extension language for build rules, the MODULE.bazel external-dependency system (Bzlmod), and the Bazel Central Registry — a public HTTP index registry that hosts community-maintained Bazel modules.
Real signal across most facets with visible, nameable gaps — the contract exists but is thin, or the portal is good while governance and commercial terms are absent.
API Evangelist profiles Bazel the way a machine reads it — 29 machine-readable artifacts across 6 APIs, pulled from the provider's own public surface and indexed so a developer, an analyst, or an AI agent can evaluate it against every other provider on the network.
Every provider in the network is reduced to the same set of machine-readable artifacts — OpenAPI contracts, event specifications, GraphQL schemas, runnable collections, pricing and rate-limit signals, security posture, OAuth scopes, and the agent surfaces (MCP servers and skills) that let software drive the API on its own. We profile them because the interface is the part of a company you can actually inspect: it is a truer signal of what a provider does than any marketing page. From those artifacts we compute the Kin Score — Bazel scores 54.0/100 (developing), with a separate agent-readiness read of 39/100 (agent aware). The full breakdown is below, followed by every artifact we hold — each card links through to its machine-readable definition on apis.io.
Kin Score
This is the API Evangelist rating — a single, repeatable read computed from the artifacts on this page. Green fill is points earned; the red track is points possible, so every bar shows earned-versus-possible at a glance.
How we profile Bazel
Each block below is one kind of artifact we hold for Bazel. For each we say what it is and why it earns a place in the profile, then list every one we've indexed — capped at two rows, scroll within the panel for the rest.
APIs 6
Each API is captured as its own OpenAPI definition — every operation, parameter, and response. This is the single most useful machine-readable description of what an API does, and it's what lets us score, lint, mock, and generate against it without asking the provider for anything.
Individual APIs this provider publishes, each with its own machine-readable definition.
Bazel Command Line Interface
The `bazel` command line tool is the primary user-facing surface of Bazel. It exposes commands such as `build`, `test`, `run`, `query`, `cquery`, `aquery`, `mod`, `fetch`, `info...
Bazel Starlark Build API
Bazel's build rules, macros, and module extensions are written in Starlark — a deterministic Python dialect. The Starlark Build API exposes the rule(), repository_rule(), module...
Bazel Remote Execution API
Bazel speaks the open Remote Execution API (REAPI), a gRPC protocol for content-addressable storage and distributed action execution. REAPI lets Bazel offload compile, test, and...
Bazel Build Event Protocol
The Build Event Protocol (BEP) is Bazel's structured stream of build events — target configured, progress, test results, action executed, build finished — emitted during every i...
Bazel Modules API
Per-module metadata and version manifests
Bazel Registry API
Registry-wide metadata
Open Collections 1
Open, tool-agnostic collections carry the same runnable value as Postman without locking you to one client — the portable, forkable form of the same exercise.
Open, tool-agnostic API collections (OpenAPI-derived and Bruno).
Bazel Central Registry API
OPEN COLLECTIONFeatures 12
The notable capabilities this provider advertises, captured as structured features so they can be searched and compared instead of read one landing page at a time.
Notable capabilities this provider offers.
Multi-Language Support
One build tool spans Java, C++, Go, Python, Rust, Swift, Kotlin, Scala, Android, iOS, Objective-C, and dozens of community-maintained language rules.
Hermetic, Reproducible Builds
Sandboxed action execution and explicit dependency declarations make Bazel builds reproducible across machines and CI runners.
Incremental Builds
Fine-grained action graph and Merkle-tree based caching mean only what changed gets rebuilt, even in monorepos with millions of targets.
Remote Caching and Execution
Bazel speaks the open Remote Execution API (REAPI) so teams can share a Content-Addressable Store and offload actions to a remote build farm.
Bzlmod External Dependencies
MODULE.bazel + the Bazel Central Registry replace the legacy WORKSPACE system with versioned, transitive, registry-resolved modules.
Starlark Extension Language
A deterministic Python-like DSL for writing custom rules, repository rules, module extensions, and aspects without touching Bazel internals.
Build Event Protocol
Every invocation emits a structured BEP/BES stream consumable by CI dashboards, observability tools, and flake detectors.
Query Languages
bazel query, cquery (configured), and aquery (action graph) let you inspect dependency graphs, configuration transitions, and the actual actions Bazel will run.
Toolchain Resolution
Platform-aware toolchain selection lets one BUILD graph target Linux, macOS, Windows, Android, iOS, and embedded targets from the same source tree.
Persistent Workers
Long-lived worker processes (javac, scalac, etc.) amortize JVM and compiler startup across many actions for faster incremental builds.
Bazel Central Registry
Default public index of Bazel modules at bcr.bazel.build with searchable UI at registry.bazel.build.
Bazelisk Version Launcher
Pins the exact Bazel version per project via .bazelversion so every contributor and CI runner uses the same build tool.
Scroll within the panel for all 12 ·
Semantic Vocabularies 1
JSON-LD contexts give the data shared meaning across APIs. We profile them because semantics are what let a machine reconcile 'customer' here with 'customer' somewhere else.
JSON-LD contexts and semantic vocabularies used across these APIs.
Bazel Build Context
JSON-LDSpectral Rules 2
Governance rulesets we run against this provider's specs — the automated checks behind parts of the score. Profiling them makes the quality bar explicit and re-runnable, not a matter of opinion.
Bazel API Rules
SPECTRALBazel API Rules
SPECTRALJSON Schema 3
Standalone JSON Schema definitions describe the data models behind the API. We profile them so the shapes are validatable on their own — useful long after a single request is forgotten.
Standalone JSON Schema definitions for this provider's data models.
Examples 2
Real request and response payloads are what turn a spec from abstract into obvious — and they're one of the twelve things an agent needs to call an API correctly on the first try.
Example request and response payloads for these APIs.
Bcr Source Archive Example
EXAMPLESecurity Posture 1
Authentication, domain security, vulnerability disclosure, and trust-center signals — the evidence that a provider takes security seriously enough to document it. We profile it because you can't govern what you can't see.
Authentication, domain security, vulnerability disclosure, and trust-center signals.
Agentic Access 1
An x-agentic-access contract marks which operations are safe for an agent to run on its own and which need a human in the loop. It is the difference between an API an agent can use and one it can use safely.
Recommended x-agentic-access execution contracts for AI agents.
Resources
Every other property we hold for Bazel — documentation, portals, status pages, policies, and corporate surface — grouped by the job it does, following the integrator's arc from getting started to running in production.
Get Started 2
Portal, sign-up, and the first successful call
Documentation 2
Reference material describing how the API behaves
Agent Surfaces 1
MCP servers, agent skills, and machine-readable catalogs
Design & Contract 3
Pagination, idempotency, versioning, errors, and events
Build 29
SDKs, sample code, and the tooling you integrate with
Scroll within the panel for all 29 ·
Access & Security 2
Authentication, authorization, and security posture
Operate 5
Status, limits, changes, and where to get help
Commercial 2
Pricing, plans, and the legal terms of use
Company 1
The organization behind the API
Other 1
Properties that don't map to a standard resource type
← All providers · Data indexed from github.com/api-evangelist/bazel-build · machine-readable index on apis.io