Formatter Validator Minifier Escape / Unescape JSON ↔ String JSON ↔ YAML JSON → CSV NDJSON / JSON Lines JSON → Types JSON ↔ XML JSON Diff JSON Patch Canonicalize (RFC 8785) Schema Validator Schema Generator JSONPath Tester JWT Decoder JSON Errors Schemas More Tools
JSONTools / Schema registry / buf.plugin.yaml
Schema registry

buf.plugin.yaml

A `buf.plugin.yaml` file captures metadata about the plugin. It includes mandatory and optional fields that are displayed on the individual plugin page and the BSR plugin. Documentation: https://buf.build/plugins

buf.plugin.yaml

Check your file against this schema

Opens the validator with this schema already loaded. Paste your buf.plugin.yaml and it validates in your browser — nothing is uploaded.

Validate a buf.plugin.yaml → View raw schema

Fields

Generated directly from the schema, following local $refs, to two levels of nesting.

Field Type Description
versionrequiredstringThe YAML configuration version, must be `v1`.
namerequiredstringThe plugin identity with format `{remote}/{organization_name}/{plugin_name}`.
plugin_versionrequiredstringThe plugin version with format `v{semver}`, the `v` prefix is required and the version must be valid [semantic versioning](https://semver.org/).
license_urlstringURL to the license of the plugin source code.
source_urlstringURL to the source code of the Protobuf plugin.
descriptionstringDescription of the plugin.
output_languagesarray<string>The output language types generated by the plugin. See the PluginLanguage enum for existing languages. Open a GitHub issue in the Buf CLI (https://github.com/bufbuild/buf) if the output language isn't found for a plugin.
spdx_license_idstringThe license id for the plugin from https://spdx.org/licenses.
integration_guide_urlstringThe URL to the integration guide for the plugin.
depsarray<object>A list of dependencies on other plugins used by Generated SDKs.
registryobjectConfiguration to enable a plugin for use with Generated SDKs.
registry.optsarray<string>Options supplied to the plugin when generating code for the SDK.
registry.goobjectGenerated SDK configuration for a Go plugin.
registry.go.min_versionstringThe minimum Go version required by the plugin (e.g. `1.19`), used as the go directive in the `go.mod` file. See https://go.dev/ref/mod#go-mod-file-go.
registry.go.depsarray<object>A list of Go module requirements. Each requirement corresponds to a require directive in the `go.mod` file. See https://go.dev/ref/mod#go-mod-file-require.
registry.npmobjectGenerated SDK configuration for a JavaScript/TypeScript plugin.
registry.npm.rewrite_import_path_suffixstringThe suffix used in the generated files and their imported dependencies (supported by @bufbuild/protoplugin (https://www.npmjs.com/package/@bufbuild/protoplugin) plugins).
registry.npm.depsarray<object>NPM package dependencies for the Generated SDK.
registry.npm.import_stylerequiredstringOne of either `module` or `commonjs`.
one of: "module", "commonjs"
registry.mavenobjectGenerated SDK configuration for a Java/Kotlin plugin.
registry.maven.compilerobject
registry.maven.depsarray<string>Runtime dependencies of the generated Java/Kotlin code (in GAV format).
registry.maven.additional_runtimesarray<object>Configures additional supported runtimes.
registry.pythonobjectGenerated SDK configuration for a Python plugin.
registry.python.depsarray<string>Runtime dependencies of the generated code.
registry.python.requires_pythonstringSpecifies the `Requires-Python` of the generated package.
registry.python.package_typerequiredstringOne of `runtime` or `stub-only`.
one of: "runtime", "stub-only"
registry.swiftobjectGenerated SDK configuration for a Swift plugin.
registry.swift.depsarray<object>Dependencies of the generated code.
registry.cargoobjectGenerated SDK configuration for a Rust plugin.
registry.cargo.rust_versionstringThe rust-version set for the generated crate.
registry.cargo.depsarray<object>Crates.io dependencies for the Generated SDK.
registry.nugetobjectGenerated SDK configuration for a C# plugin.
registry.nuget.target_frameworksarray<string>The target frameworks the generated package supports.
registry.nuget.depsarray<object>nuget.org dependencies for the Generated SDK.
registry.cmakeobjectGenerated SDK configuration for a CMake plugin.

What we found in this schema

Specification sections for the keywords in this schema

Keyword Document Section
$commentJSON Schema Core, draft 2020-12§8.3 — Comments With "$comment"
$idJSON Schema Core, draft 2020-12§8.2.1 — The "$id" Keyword
$schemaJSON Schema Core, draft 2020-12§8.1.1 — "$schema"
additionalPropertiesJSON Schema Core, draft 2020-12§10.3.2.3 — "additionalProperties"
constJSON Schema Validation, draft 2020-12§6.1.3 — "const"
defaultJSON Schema Validation, draft 2020-12§9.2 — "default"
descriptionJSON Schema Validation, draft 2020-12§9.1 — "title" and "description"
enumJSON Schema Validation, draft 2020-12§6.1.2 — "enum"
itemsJSON Schema Core, draft 2020-12§10.3.1.2 — "items"
minimumJSON Schema Validation, draft 2020-12§6.2.4 — "minimum"
propertiesJSON Schema Core, draft 2020-12§10.3.2.1 — "properties"
requiredJSON Schema Validation, draft 2020-12§6.5.3 — "required"
typeJSON Schema Validation, draft 2020-12§6.1.1 — "type"
uniqueItemsJSON Schema Validation, draft 2020-12§6.4.3 — "uniqueItems"

Documents

Attribution

This schema comes from SchemaStore, distributed under the Apache License 2.0. Copyright 2015–present Mads Kristensen and contributors. View the original file. The field table and audit on this page are generated by JSONTools.tools; the schema itself is unmodified.

← All schemas