Skip to content

Found new managed modules references - #1326

Merged
pkwarren merged 1 commit into
mainfrom
fetch-modules
Oct 15, 2026
Merged

pkwarren merged 1 commit into
mainfrom
fetch-modules

Conversation

@app-token-modules

Copy link
Copy Markdown
Contributor

No description provided.

@app-token-modules
app-token-modules Bot requested a review from a team October 15, 2026 12:12
},
{
"name": "a6f4580d494b12461aa1b9190cac8eefe8a3fd22",
"digest": "30840693e3b5edac0f461e7168da1057b36a5df75d2d0c6fd920f8442a2f51afb22c955ad5afc25a1394f6e2de65d623844594a37d9f9ce093c48d6afe6a3e55"

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[Posted at 2026-10-15T12:13:11Z]

Intermediate transition

$ casdiff 19cec069f0c68367097c25c2c95f8bed4d21c6ab \
          a6f4580d494b12461aa1b9190cac8eefe8a3fd22 \
          --format=markdown
1 files changed: 0 removed, 0 renamed, 0 added, 1 changed content.

1 files changed: 0 removed, 0 renamed, 0 added, 1 changed content.

Files changed content:

google/api/field_behavior.proto:

--- shake256:feb77c27569f0dc6f23f274449cd2f55d7600eac6e3cd98c5016d3ad80adfa9aeae89d324ef8b9f9fe1c14011b97c335d63922f1c99dfea2a8317d94d7615460  google/api/field_behavior.proto
+++ shake256:b2a493cb87ee861fcc5caf912ee18007ad389883534a078cd74be1596c8771420053b1b8cf558d8a2f2071bfb4aaf21b8135bd91c665f245a45175e3be5aaa91  google/api/field_behavior.proto
@@ -37,7 +37,7 @@
   //   google.protobuf.Timestamp expire_time = 1
   //     [(google.api.field_behavior) = OUTPUT_ONLY,
   //      (google.api.field_behavior) = IMMUTABLE];
-  repeated google.api.FieldBehavior field_behavior = 1052 [packed = false];
+  repeated google.api.FieldBehavior field_behavior = 1052;
 }
 
 // An indicator of the behavior of a given field (for example, that a field

},
{
"name": "v2.32.0",
"digest": "9a8f06611420658dcfffdd7fd00b25827ae31198361781693b858e208e90f44e50362253fb65fb9aa38fd1a539888060ba6b286fb4259f8c1eb74c46f2a72a1b"

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[Posted at 2026-10-15T12:13:12Z]

Intermediate transition

$ casdiff v2.31.0 \
          v2.32.0 \
          --format=markdown
2 files changed: 0 removed, 0 renamed, 0 added, 2 changed content.

2 files changed: 0 removed, 0 renamed, 0 added, 2 changed content.

Files changed content:

protoc-gen-openapiv3/options/annotations.proto:

--- shake256:738f3bd7b6c179960936de414652857c9903e9eb83c1bd5f12ba951ad3a61316b02fd57539de739105cd403c9c64919f03edcc1911ea5b4b405756b5708fe3eb  protoc-gen-openapiv3/options/annotations.proto
+++ shake256:670ff2c9973d62cb942c70d95610cf39f819a120ea013cfbd716a2751f40bbc39db0b5ce2aebb19e75ef06ce2dd08c6dac15095aaa85e3d232a3c8fa4e69a542  protoc-gen-openapiv3/options/annotations.proto
@@ -15,6 +15,14 @@
   Document openapiv3_document = 1295;
 }
 
+extend google.protobuf.ServiceOptions {
+  // ID 1295 assigned by protobuf-global-extension-registry@google.com for the
+  // gRPC-Gateway OpenAPI v3 generator. All extensions in this file share the
+  // same ID because they each extend a different descriptor message.
+  // Ref: https://github.com/protocolbuffers/protobuf/commit/5e0f68530ae6ad47b78714e60861321e1d1c04ae
+  Tag openapiv3_tag = 1295;
+}
+
 extend google.protobuf.MethodOptions {
   // ID 1295 assigned by protobuf-global-extension-registry@google.com for the
   // gRPC-Gateway OpenAPI v3 generator. All extensions in this file share the

protoc-gen-openapiv3/options/openapiv3.proto:

--- shake256:48b2b13248d4dabfab2b66cc07ba6d4de70c7e91251a83d8f54e69cfa13428a62dfea30f26d66246b589709c2b3e86fc33dbd61271fd3ca79ea1ca54be6a9dbb  protoc-gen-openapiv3/options/openapiv3.proto
+++ shake256:51a76bfec6650e85ce8f67fc8df09bd179bf74c48aaa235d7234a1c312c65dc19ad402e0db5ffab0799c26b473683d5bedb662a2483fed2a8050c29f1ca2ab77  protoc-gen-openapiv3/options/openapiv3.proto
@@ -36,6 +36,31 @@
   //
   // See: https://spec.openapis.org/oas/v3.1.0#specification-extensions
   map<string, google.protobuf.Value> extensions = 5;
+  // Reusable objects rendered under the document's `components` section.
+  //
+  // See: https://spec.openapis.org/oas/v3.1.0#oasComponents
+  Components components = 6;
+  // A declaration of which security mechanisms can be used across the API.
+  // The list of values includes alternative security requirement objects
+  // that can be used. Only one of the security requirement objects needs to
+  // be satisfied to authorize a request. Individual operations can override
+  // this definition with `openapiv3_operation.security`.
+  //
+  // See: https://spec.openapis.org/oas/v3.1.0#oasSecurity
+  repeated SecurityRequirement security = 7;
+}
+
+// Components holds reusable objects for the document. Entries declared here
+// are added to the `components` section the generator builds from the proto
+// types.
+//
+// Spec: https://spec.openapis.org/oas/v3.1.0#components-object
+message Components {
+  // Security schemes that can be referenced by name from security
+  // requirements, keyed by scheme name.
+  //
+  // See: https://spec.openapis.org/oas/v3.1.0#componentsSecuritySchemes
+  map<string, SecurityScheme> security_schemes = 1;
 }
 
 // Info mirrors the fields of the OpenAPI 3.1.0 Info object that users most
@@ -146,6 +171,14 @@
   //
   // See: https://spec.openapis.org/oas/v3.1.0#specification-extensions
   map<string, google.protobuf.Value> extensions = 8;
+  // A declaration of which security mechanisms can be used for this
+  // operation. The list of values includes alternative security requirement
+  // objects that can be used. When set, this replaces the document-level
+  // `security` for this operation. To make security optional for this
+  // operation, add an empty security requirement (`security: {}`).
+  //
+  // See: https://spec.openapis.org/oas/v3.1.0#operationSecurity
+  repeated SecurityRequirement security = 9;
 }
 
 // Schema is a message- or field-level override applied to the generated
@@ -208,3 +241,145 @@
   // See: https://spec.openapis.org/oas/v3.1.0#specification-extensions
   map<string, google.protobuf.Value> extensions = 4;
 }
+
+// SecurityScheme defines a security scheme that can be used by the
+// operations.
+//
+// Spec: https://spec.openapis.org/oas/v3.1.0#security-scheme-object
+message SecurityScheme {
+  // The type of the security scheme.
+  enum Type {
+    // Not a valid security scheme type. Setting `type` is required.
+    TYPE_UNSPECIFIED = 0;
+    // An API key sent in a header, query parameter or cookie.
+    TYPE_API_KEY = 1;
+    // HTTP authentication, for example basic or bearer.
+    TYPE_HTTP = 2;
+    // Mutual TLS.
+    TYPE_MUTUAL_TLS = 3;
+    // OAuth2.
+    TYPE_OAUTH2 = 4;
+    // OpenID Connect Discovery.
+    TYPE_OPEN_ID_CONNECT = 5;
+  }
+
+  // The location of an API key.
+  enum In {
+    // Not set. Required when `type` is `TYPE_API_KEY`.
+    IN_UNSPECIFIED = 0;
+    // The API key is sent as a query parameter.
+    IN_QUERY = 1;
+    // The API key is sent as a header.
+    IN_HEADER = 2;
+    // The API key is sent as a cookie.
+    IN_COOKIE = 3;
+  }
+
+  // The type of the security scheme. Required.
+  //
+  // See: https://spec.openapis.org/oas/v3.1.0#securitySchemeType
+  Type type = 1;
+  // A description for the security scheme. CommonMark syntax MAY be used for
+  // rich text representation.
+  //
+  // See: https://spec.openapis.org/oas/v3.1.0#securitySchemeDescription
+  string description = 2;
+  // The name of the header, query or cookie parameter to be used. Required
+  // when `type` is `TYPE_API_KEY`.
+  //
+  // See: https://spec.openapis.org/oas/v3.1.0#securitySchemeName
+  string name = 3;
+  // The location of the API key. Required when `type` is `TYPE_API_KEY`.
+  //
+  // See: https://spec.openapis.org/oas/v3.1.0#securitySchemeIn
+  In in = 4;
+  // The name of the HTTP Authorization scheme to be used in the
+  // Authorization header as defined in RFC 7235, for example "basic" or
+  // "bearer". Required when `type` is `TYPE_HTTP`.
+  //
+  // See: https://spec.openapis.org/oas/v3.1.0#securitySchemeScheme
+  string scheme = 5;
+  // A hint to the client to identify how the bearer token is formatted.
+  // Only used when `type` is `TYPE_HTTP` and `scheme` is "bearer".
+  //
+  // See: https://spec.openapis.org/oas/v3.1.0#securitySchemeBearerFormat
+  string bearer_format = 6;
+  // Configuration information for the flow types supported. Required when
+  // `type` is `TYPE_OAUTH2`.
+  //
+  // See: https://spec.openapis.org/oas/v3.1.0#securitySchemeFlows
+  OAuthFlows flows = 7;
+  // OpenID Connect URL to discover OAuth2 configuration values. This MUST be
+  // in the form of a URL. Required when `type` is `TYPE_OPEN_ID_CONNECT`.
+  //
+  // See: https://spec.openapis.org/oas/v3.1.0#securitySchemeOpenIdConnectUrl
+  string open_id_connect_url = 8;
+}
+
+// OAuthFlows allows configuration of the supported OAuth flows.
+//
+// Spec: https://spec.openapis.org/oas/v3.1.0#oauth-flows-object
+message OAuthFlows {
+  // Configuration for the OAuth Implicit flow.
+  //
+  // See: https://spec.openapis.org/oas/v3.1.0#oauthFlowsImplicit
+  OAuthFlow implicit = 1;
+  // Configuration for the OAuth Resource Owner Password flow.
+  //
+  // See: https://spec.openapis.org/oas/v3.1.0#oauthFlowsPassword
+  OAuthFlow password = 2;
+  // Configuration for the OAuth Client Credentials flow.
+  //
+  // See: https://spec.openapis.org/oas/v3.1.0#oauthFlowsClientCredentials
+  OAuthFlow client_credentials = 3;
+  // Configuration for the OAuth Authorization Code flow.
+  //
+  // See: https://spec.openapis.org/oas/v3.1.0#oauthFlowsAuthorizationCode
+  OAuthFlow authorization_code = 4;
+}
+
+// OAuthFlow is the configuration details for a supported OAuth flow.
+//
+// Spec: https://spec.openapis.org/oas/v3.1.0#oauth-flow-object
+message OAuthFlow {
+  // The authorization URL to be used for this flow. Required for the
+  // implicit and authorization code flows.
+  //
+  // See: https://spec.openapis.org/oas/v3.1.0#oauthFlowAuthorizationUrl
+  string authorization_url = 1;
+  // The token URL to be used for this flow. Required for the password,
+  // client credentials and authorization code flows.
+  //
+  // See: https://spec.openapis.org/oas/v3.1.0#oauthFlowTokenUrl
+  string token_url = 2;
+  // The URL to be used for obtaining refresh tokens.
+  //
+  // See: https://spec.openapis.org/oas/v3.1.0#oauthFlowRefreshUrl
+  string refresh_url = 3;
+  // The available scopes for the OAuth2 security scheme. A map between the
+  // scope name and a short description for it. The map MAY be empty.
+  //
+  // See: https://spec.openapis.org/oas/v3.1.0#oauthFlowScopes
+  map<string, string> scopes = 4;
+}
+
+// SecurityRequirement lists the security schemes required to execute an
+// operation. When multiple schemes are listed, all of them must be
+// satisfied. An empty security requirement allows anonymous access.
+//
+// Spec: https://spec.openapis.org/oas/v3.1.0#security-requirement-object
+message SecurityRequirement {
+  // Scopes lists the scopes required by a single security scheme.
+  message Scopes {
+    // For `TYPE_OAUTH2` and `TYPE_OPEN_ID_CONNECT` schemes, the scope names
+    // required for the execution. For other scheme types, a list of role
+    // names, which MAY be empty.
+    repeated string scopes = 1;
+  }
+
+  // Maps the name of a security scheme declared in
+  // `Document.components.security_schemes` to the scopes it requires.
+  //
+  // See: https://spec.openapis.org/oas/v3.1.0#securityRequirementsName
+  map<string, Scopes> schemes = 1;
+}

Comment thread modules/sync/state.json
{
"module_name": "googleapis/googleapis",
"latest_reference": "19cec069f0c68367097c25c2c95f8bed4d21c6ab"
"latest_reference": "a6f4580d494b12461aa1b9190cac8eefe8a3fd22"

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[Posted at 2026-10-15T12:13:13Z]

Overall transition

$ casdiff 19cec069f0c68367097c25c2c95f8bed4d21c6ab \
          a6f4580d494b12461aa1b9190cac8eefe8a3fd22 \
          --format=markdown

1 files changed: 0 removed, 0 renamed, 0 added, 1 changed content.

Files changed content:

google/api/field_behavior.proto:

--- shake256:feb77c27569f0dc6f23f274449cd2f55d7600eac6e3cd98c5016d3ad80adfa9aeae89d324ef8b9f9fe1c14011b97c335d63922f1c99dfea2a8317d94d7615460  google/api/field_behavior.proto
+++ shake256:b2a493cb87ee861fcc5caf912ee18007ad389883534a078cd74be1596c8771420053b1b8cf558d8a2f2071bfb4aaf21b8135bd91c665f245a45175e3be5aaa91  google/api/field_behavior.proto
@@ -37,7 +37,7 @@
   //   google.protobuf.Timestamp expire_time = 1
   //     [(google.api.field_behavior) = OUTPUT_ONLY,
   //      (google.api.field_behavior) = IMMUTABLE];
-  repeated google.api.FieldBehavior field_behavior = 1052 [packed = false];
+  repeated google.api.FieldBehavior field_behavior = 1052;
 }
 
 // An indicator of the behavior of a given field (for example, that a field

Comment thread modules/sync/state.json
{
"module_name": "grpc-ecosystem/grpc-gateway",
"latest_reference": "v2.31.0"
"latest_reference": "v2.32.0"

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[Posted at 2026-10-15T12:13:14Z]

Overall transition

$ casdiff v2.31.0 \
          v2.32.0 \
          --format=markdown

2 files changed: 0 removed, 0 renamed, 0 added, 2 changed content.

Files changed content:

protoc-gen-openapiv3/options/annotations.proto:

--- shake256:738f3bd7b6c179960936de414652857c9903e9eb83c1bd5f12ba951ad3a61316b02fd57539de739105cd403c9c64919f03edcc1911ea5b4b405756b5708fe3eb  protoc-gen-openapiv3/options/annotations.proto
+++ shake256:670ff2c9973d62cb942c70d95610cf39f819a120ea013cfbd716a2751f40bbc39db0b5ce2aebb19e75ef06ce2dd08c6dac15095aaa85e3d232a3c8fa4e69a542  protoc-gen-openapiv3/options/annotations.proto
@@ -15,6 +15,14 @@
   Document openapiv3_document = 1295;
 }
 
+extend google.protobuf.ServiceOptions {
+  // ID 1295 assigned by protobuf-global-extension-registry@google.com for the
+  // gRPC-Gateway OpenAPI v3 generator. All extensions in this file share the
+  // same ID because they each extend a different descriptor message.
+  // Ref: https://github.com/protocolbuffers/protobuf/commit/5e0f68530ae6ad47b78714e60861321e1d1c04ae
+  Tag openapiv3_tag = 1295;
+}
+
 extend google.protobuf.MethodOptions {
   // ID 1295 assigned by protobuf-global-extension-registry@google.com for the
   // gRPC-Gateway OpenAPI v3 generator. All extensions in this file share the

protoc-gen-openapiv3/options/openapiv3.proto:

--- shake256:48b2b13248d4dabfab2b66cc07ba6d4de70c7e91251a83d8f54e69cfa13428a62dfea30f26d66246b589709c2b3e86fc33dbd61271fd3ca79ea1ca54be6a9dbb  protoc-gen-openapiv3/options/openapiv3.proto
+++ shake256:51a76bfec6650e85ce8f67fc8df09bd179bf74c48aaa235d7234a1c312c65dc19ad402e0db5ffab0799c26b473683d5bedb662a2483fed2a8050c29f1ca2ab77  protoc-gen-openapiv3/options/openapiv3.proto
@@ -36,6 +36,31 @@
   //
   // See: https://spec.openapis.org/oas/v3.1.0#specification-extensions
   map<string, google.protobuf.Value> extensions = 5;
+  // Reusable objects rendered under the document's `components` section.
+  //
+  // See: https://spec.openapis.org/oas/v3.1.0#oasComponents
+  Components components = 6;
+  // A declaration of which security mechanisms can be used across the API.
+  // The list of values includes alternative security requirement objects
+  // that can be used. Only one of the security requirement objects needs to
+  // be satisfied to authorize a request. Individual operations can override
+  // this definition with `openapiv3_operation.security`.
+  //
+  // See: https://spec.openapis.org/oas/v3.1.0#oasSecurity
+  repeated SecurityRequirement security = 7;
+}
+
+// Components holds reusable objects for the document. Entries declared here
+// are added to the `components` section the generator builds from the proto
+// types.
+//
+// Spec: https://spec.openapis.org/oas/v3.1.0#components-object
+message Components {
+  // Security schemes that can be referenced by name from security
+  // requirements, keyed by scheme name.
+  //
+  // See: https://spec.openapis.org/oas/v3.1.0#componentsSecuritySchemes
+  map<string, SecurityScheme> security_schemes = 1;
 }
 
 // Info mirrors the fields of the OpenAPI 3.1.0 Info object that users most
@@ -146,6 +171,14 @@
   //
   // See: https://spec.openapis.org/oas/v3.1.0#specification-extensions
   map<string, google.protobuf.Value> extensions = 8;
+  // A declaration of which security mechanisms can be used for this
+  // operation. The list of values includes alternative security requirement
+  // objects that can be used. When set, this replaces the document-level
+  // `security` for this operation. To make security optional for this
+  // operation, add an empty security requirement (`security: {}`).
+  //
+  // See: https://spec.openapis.org/oas/v3.1.0#operationSecurity
+  repeated SecurityRequirement security = 9;
 }
 
 // Schema is a message- or field-level override applied to the generated
@@ -208,3 +241,145 @@
   // See: https://spec.openapis.org/oas/v3.1.0#specification-extensions
   map<string, google.protobuf.Value> extensions = 4;
 }
+
+// SecurityScheme defines a security scheme that can be used by the
+// operations.
+//
+// Spec: https://spec.openapis.org/oas/v3.1.0#security-scheme-object
+message SecurityScheme {
+  // The type of the security scheme.
+  enum Type {
+    // Not a valid security scheme type. Setting `type` is required.
+    TYPE_UNSPECIFIED = 0;
+    // An API key sent in a header, query parameter or cookie.
+    TYPE_API_KEY = 1;
+    // HTTP authentication, for example basic or bearer.
+    TYPE_HTTP = 2;
+    // Mutual TLS.
+    TYPE_MUTUAL_TLS = 3;
+    // OAuth2.
+    TYPE_OAUTH2 = 4;
+    // OpenID Connect Discovery.
+    TYPE_OPEN_ID_CONNECT = 5;
+  }
+
+  // The location of an API key.
+  enum In {
+    // Not set. Required when `type` is `TYPE_API_KEY`.
+    IN_UNSPECIFIED = 0;
+    // The API key is sent as a query parameter.
+    IN_QUERY = 1;
+    // The API key is sent as a header.
+    IN_HEADER = 2;
+    // The API key is sent as a cookie.
+    IN_COOKIE = 3;
+  }
+
+  // The type of the security scheme. Required.
+  //
+  // See: https://spec.openapis.org/oas/v3.1.0#securitySchemeType
+  Type type = 1;
+  // A description for the security scheme. CommonMark syntax MAY be used for
+  // rich text representation.
+  //
+  // See: https://spec.openapis.org/oas/v3.1.0#securitySchemeDescription
+  string description = 2;
+  // The name of the header, query or cookie parameter to be used. Required
+  // when `type` is `TYPE_API_KEY`.
+  //
+  // See: https://spec.openapis.org/oas/v3.1.0#securitySchemeName
+  string name = 3;
+  // The location of the API key. Required when `type` is `TYPE_API_KEY`.
+  //
+  // See: https://spec.openapis.org/oas/v3.1.0#securitySchemeIn
+  In in = 4;
+  // The name of the HTTP Authorization scheme to be used in the
+  // Authorization header as defined in RFC 7235, for example "basic" or
+  // "bearer". Required when `type` is `TYPE_HTTP`.
+  //
+  // See: https://spec.openapis.org/oas/v3.1.0#securitySchemeScheme
+  string scheme = 5;
+  // A hint to the client to identify how the bearer token is formatted.
+  // Only used when `type` is `TYPE_HTTP` and `scheme` is "bearer".
+  //
+  // See: https://spec.openapis.org/oas/v3.1.0#securitySchemeBearerFormat
+  string bearer_format = 6;
+  // Configuration information for the flow types supported. Required when
+  // `type` is `TYPE_OAUTH2`.
+  //
+  // See: https://spec.openapis.org/oas/v3.1.0#securitySchemeFlows
+  OAuthFlows flows = 7;
+  // OpenID Connect URL to discover OAuth2 configuration values. This MUST be
+  // in the form of a URL. Required when `type` is `TYPE_OPEN_ID_CONNECT`.
+  //
+  // See: https://spec.openapis.org/oas/v3.1.0#securitySchemeOpenIdConnectUrl
+  string open_id_connect_url = 8;
+}
+
+// OAuthFlows allows configuration of the supported OAuth flows.
+//
+// Spec: https://spec.openapis.org/oas/v3.1.0#oauth-flows-object
+message OAuthFlows {
+  // Configuration for the OAuth Implicit flow.
+  //
+  // See: https://spec.openapis.org/oas/v3.1.0#oauthFlowsImplicit
+  OAuthFlow implicit = 1;
+  // Configuration for the OAuth Resource Owner Password flow.
+  //
+  // See: https://spec.openapis.org/oas/v3.1.0#oauthFlowsPassword
+  OAuthFlow password = 2;
+  // Configuration for the OAuth Client Credentials flow.
+  //
+  // See: https://spec.openapis.org/oas/v3.1.0#oauthFlowsClientCredentials
+  OAuthFlow client_credentials = 3;
+  // Configuration for the OAuth Authorization Code flow.
+  //
+  // See: https://spec.openapis.org/oas/v3.1.0#oauthFlowsAuthorizationCode
+  OAuthFlow authorization_code = 4;
+}
+
+// OAuthFlow is the configuration details for a supported OAuth flow.
+//
+// Spec: https://spec.openapis.org/oas/v3.1.0#oauth-flow-object
+message OAuthFlow {
+  // The authorization URL to be used for this flow. Required for the
+  // implicit and authorization code flows.
+  //
+  // See: https://spec.openapis.org/oas/v3.1.0#oauthFlowAuthorizationUrl
+  string authorization_url = 1;
+  // The token URL to be used for this flow. Required for the password,
+  // client credentials and authorization code flows.
+  //
+  // See: https://spec.openapis.org/oas/v3.1.0#oauthFlowTokenUrl
+  string token_url = 2;
+  // The URL to be used for obtaining refresh tokens.
+  //
+  // See: https://spec.openapis.org/oas/v3.1.0#oauthFlowRefreshUrl
+  string refresh_url = 3;
+  // The available scopes for the OAuth2 security scheme. A map between the
+  // scope name and a short description for it. The map MAY be empty.
+  //
+  // See: https://spec.openapis.org/oas/v3.1.0#oauthFlowScopes
+  map<string, string> scopes = 4;
+}
+
+// SecurityRequirement lists the security schemes required to execute an
+// operation. When multiple schemes are listed, all of them must be
+// satisfied. An empty security requirement allows anonymous access.
+//
+// Spec: https://spec.openapis.org/oas/v3.1.0#security-requirement-object
+message SecurityRequirement {
+  // Scopes lists the scopes required by a single security scheme.
+  message Scopes {
+    // For `TYPE_OAUTH2` and `TYPE_OPEN_ID_CONNECT` schemes, the scope names
+    // required for the execution. For other scheme types, a list of role
+    // names, which MAY be empty.
+    repeated string scopes = 1;
+  }
+
+  // Maps the name of a security scheme declared in
+  // `Document.components.security_schemes` to the scopes it requires.
+  //
+  // See: https://spec.openapis.org/oas/v3.1.0#securityRequirementsName
+  map<string, Scopes> schemes = 1;
+}

@pkwarren
pkwarren merged commit 0f0ec4f into main Oct 15, 2026
6 checks passed
@pkwarren
pkwarren deleted the fetch-modules branch October 15, 2026 13:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant