API definitions for the Istio project
api
Go to file
Istio Automation 638d39554f
Automator: update common-files@master in istio/api@master (#3538)
2025-07-10 07:06:33 -04:00
.devcontainer Automator: update common-files@master in istio/api@master (#3538) 2025-07-10 07:06:33 -04:00
.github [CNCF graduation] Add security tab for Istio repos (#2783) 2023-05-11 07:25:18 -07:00
analysis/v1alpha1 format protobuf files (#3522) 2025-06-16 11:17:16 -04:00
annotation Add note for reroute-virtual-interfaces usage with dind (#3494) 2025-05-01 22:17:39 -04:00
common Automator: update common-files@master in istio/api@master (#3538) 2025-07-10 07:06:33 -04:00
common-protos Remove the operator proto from this repo (#3286) 2024-08-09 15:21:51 -04:00
dictionaries Change LightStep to Lightstep as it was rebranded. (#1408) 2020-04-28 11:54:39 -07:00
envoy format protobuf files (#3522) 2025-06-16 11:17:16 -04:00
extensions/v1alpha1 format protobuf files (#3522) 2025-06-16 11:17:16 -04:00
kubernetes add RetryBudget in DestinationRule (#3512) 2025-06-25 12:53:18 -04:00
label Add a new 'workload name' label override (#3374) 2024-12-16 15:04:26 -05:00
licenses update dependencies (#3392) 2024-12-16 15:07:26 -05:00
mcp format protobuf files (#3522) 2025-06-16 11:17:16 -04:00
mesh/v1alpha1 add gateway sds extension provider (#3529) 2025-06-25 11:14:18 -04:00
meta/v1alpha1 format protobuf files (#3522) 2025-06-16 11:17:16 -04:00
networking add RetryBudget in DestinationRule (#3512) 2025-06-25 12:53:18 -04:00
releasenotes Define ServiceScopeConfig in ServiceSettings (#3464) 2025-05-15 13:12:15 -04:00
scripts Update mesh config to not import k8s libraries (#3154) 2024-05-20 11:56:31 -04:00
security format protobuf files (#3522) 2025-06-16 11:17:16 -04:00
stability format protobuf files (#3522) 2025-06-16 11:17:16 -04:00
telemetry format protobuf files (#3522) 2025-06-16 11:17:16 -04:00
tests AuthorizationPolicy serviceAccount: allow same namespace (#3417) 2025-01-20 21:19:57 -05:00
type/v1beta1 format protobuf files (#3522) 2025-06-16 11:17:16 -04:00
.gitattributes Automator: update common-files@master in istio/api@master (#3076) 2024-01-31 15:44:40 -08:00
.gitignore Automator: update common-files@master in istio/api@master (#1317) 2020-03-09 11:38:10 -07:00
BUGS-AND-FEATURE-REQUESTS.md Update common files. (#950) 2019-06-17 09:35:24 -07:00
CODEOWNERS fix CODEOWNERS (#2489) 2022-09-29 06:29:07 -07:00
CONTRIBUTING.md Import common files into this repo (#935) 2019-05-30 20:36:13 -07:00
GUIDELINES.md Validation: add documentation and use CEL pre-processor (#3333) 2024-12-31 19:32:56 -05:00
LICENSE Automator: update common-files@master in istio/api@master (#2981) 2023-10-31 10:54:28 -07:00
Makefile Automator: update common-files@master in istio/api@master (#3277) 2024-07-23 10:25:32 -04:00
Makefile.core.mk Update mesh config to not import k8s libraries (#3154) 2024-05-20 11:56:31 -04:00
Makefile.overrides.mk Revert CRDs move to v1, move back to v1beta1 (#1602) 2020-08-19 13:17:28 -07:00
README.md tooling: replace protolock with `buf breaking` (#3101) 2024-02-27 22:50:03 -08:00
SUPPORT.md Automator: update common-files@master in istio/api@master (#3084) 2024-02-12 07:58:35 -08:00
buf.gen-golang.yaml buf: migrate to v1 API (#2297) 2022-03-25 06:19:22 -07:00
buf.gen-noncrd.yaml Add JSON marshaling for non-CRD types (#3345) 2024-12-27 12:50:49 -05:00
buf.gen.yaml Generate alias for types instead of copies (#3188) 2024-05-20 11:48:31 -04:00
buf.yaml tooling: replace protolock with `buf breaking` (#3101) 2024-02-27 22:50:03 -08:00
clean.sh Drop generated python protobufs (#2280) 2022-03-17 16:55:44 -07:00
gen.sh format protobuf files (#3522) 2025-06-16 11:17:16 -04:00
go.mod update protos (#3478) 2025-03-31 19:10:45 -04:00
go.sum update protos (#3478) 2025-03-31 19:10:45 -04:00
google Move protobuf generation/configuration to buf (#1833) 2021-01-28 17:47:43 -08:00
header.go.txt Migrate from gogo/protobuf to golang/protobuf (#2293) 2022-03-23 08:11:37 -07:00
istio.io Move protobuf generation/configuration to buf (#1833) 2021-01-28 17:47:43 -08:00

README.md

Istio APIs and Common Configuration Definitions

This repository defines component-level APIs and common configuration formats for the Istio platform. These definitions are specified using the protobuf syntax.

This repository depends only on the tools repository for tools used during build. This repository will not depend on any other repositories. Except for tools, all other Istio repositories can take a dependency on the api repository.

API Guidelines

When making changes to the protos in this repository, your changes must comply with the API guidelines.

Updating

After the protobuf definitions are updated, the corresponding *pb.go, _pb2.py, *.json and Kubernetes Custom Resource Definition files must be generated by running make gen and submitted as part of the same PR as the updated definitions. Also make gen will update the proto.lock file with new changes.

Backwards Incompatible Changes

If a PR tries to make backwards incompatible changes, it will be blocked by buf breaking. If there are legitimate reasons to make these breaking changes forever, the configuration in buf.yaml can be changed. If it is a one-off case, the PR can be force approved skipping the test.