Skip to content

Promote several APIs to v1 - #179

Open
pkwarren wants to merge 79 commits into
mainfrom
iam-v1
Open

Promote several APIs to v1#179
pkwarren wants to merge 79 commits into
mainfrom
iam-v1

Conversation

@pkwarren

@pkwarren pkwarren commented Jun 17, 2026

Copy link
Copy Markdown
Member

As part of API stabilization for the BSR, this PR introduces the following new v1 APIs:

  • buf.registry.admin.v1.InstanceService (NEW)
    • Support for managing instance wide settings (breaking change policy, review flow), uniqueness policy, and recommended SDKs.
  • buf.registry.audit.v1.AuditService (NEW)
    • Promoted API from buf.alpha.audit.v1alpha1.
  • buf.registry.iam.v1.IdpGroupMappingService (NEW)
  • buf.registry.iam.v1 (NEW)
    • New package which provides support for token management (including fine grained scoped permissions) and SCIM.
  • buf.registry.iam.v1.PermissionService (NEW)
    • Fine grained permission discovery and descriptions (used with scoped tokens).
  • buf.registry.iam.v1.ScimTokenService (NEW)
  • buf.registry.iam.v1.TokenService (NEW)
    • Promoted API from v1alpha1, with the new ability to create scoped permissions (limiting the actions which a token can perform).
  • buf.registry.iam.v1.ModuleContributorService (NEW)
    • Promoted API from v1alpha1 used to manage individual contributor permissions to a module.
  • buf.registry.iam.v1.OrganizationMembershipService (NEW)
    • Promoted API from v1alpha1 used to manage organization membership and roles.
  • buf.registry.owner.v1.OrganizationService (UPDATED)
    • Added GetOrganizationSettings and UpdateOrganizationSettings to manage base roles on an organization.
  • buf.registry.user.v1.UserService (UPDATED)
    • Added GetUserInstanceRoles and UpdateUserInstanceRoles to view the instance role (member, admin) for users.
  • buf.registry.plugin.v1 (NEW)
    • Promoted a subset of plugin management APIs from v1beta1.
    • Renamed PluginState -> PluginStatus.
    • Added PLUGIN_TYPE_GENERATION.
  • buf.registry.policy.v1 (NEW)
    • Promoted a subset of policy management APIs from v1beta1.
    • Restrict policy creation to organizations, not owners (organization or user).
  • buf.registry.extension.v1beta1 (UPDATED)
    • New method option for declaring the permission required by APIs in registry-proto. Not used for enforcement but for documentation.
    • New protovalidate constraints for permission and idp group names.
  • buf.registry.schema.v1.SchemaService (NEW)
    • Promoted from v1alpha1 including a new API to provide a JSON schema approximation for Protobuf message types.
  • buf.registry.webhook.v1 (NEW)
    • Promoted from v1alpha1 - provides the ability to create webhooks as well as the API contract for webhook processors.

nicksnyder and others added 30 commits June 2, 2026 14:13
As a first step towards enabling private organizations, the protobuf
definitions for CreateOrganizationsRequest.Value,
UpdateOrganizationsRequest.Value, and Organization are updated to
include a visibility field. A new enum OrganizationVisibility is also
defined.

---------

Co-authored-by: Philip K. Warren <pkwarren@users.noreply.github.com>
Add an update tokens RPC which allows users to change the name or
permissions of a token. With scoped tokens, changing the permissions is
important if they are initially too broad or too narrow.
Comment thread buf/registry/admin/v1/recommended_sdk.proto Outdated
Comment thread buf/registry/audit/v1/audit_service.proto Outdated
Comment thread buf/registry/audit/v1/audit_service.proto Outdated
Comment thread buf/registry/admin/v1/recommended_sdk.proto Outdated
Comment thread buf/registry/iam/v1/module_contributor_service.proto
Comment thread buf/registry/iam/v1/organization_membership_service.proto
// These operations are distinct from retrieving raw descriptors: to get the
// compiled FileDescriptorSet for a Module, use
// buf.registry.module.v1.FileDescriptorSetService.
service SchemaService {

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

I'm not sure I understand this service and it's naming - SchemaService would imply something to me like I'm operating on schemas (say GetFileDescriptorSet, for example), but this is unrelated. At least Convert is. What is the need for these two RPCs in the first place?

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Ping

Comment thread buf/registry/audit/v1/event.proto Outdated
Comment thread buf/registry/owner/v1/user.proto Outdated
// These operations are distinct from retrieving raw descriptors: to get the
// compiled FileDescriptorSet for a Module, use
// buf.registry.module.v1.FileDescriptorSetService.
service SchemaService {

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Ping

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.

6 participants