@@ -3,24 +3,24 @@ import { InlinePlayground } from '@/components/playground';
33
44# Reflection APIs
55
6- The [ Experimental Reflection APIs] in SpiceDB (starting at version v1.33.0) provide the ability to reflect on the stored schema
6+ The [ Reflection APIs] in SpiceDB (starting at version v1.33.0) provide the ability to reflect on the stored schema
77and type information to answer questions about the schema itself, as well as its permissions and
88relations.
99
10- [ Experimental Reflection APIs] : https://buf.build/authzed/api/docs/main:authzed.api.v1#authzed.api.v1.ExperimentalService
10+ [ Reflection APIs ] : https://buf.build/authzed/api/docs/main:authzed.api.v1#authzed.api.v1.SchemaService.ReflectSchema
1111
12- ## ExperimentalReflectSchema
12+ ## ReflectSchema
1313
14- ` ExperimentalReflectSchema ` provides an API-driven means of receiving the structure of the current
14+ ` ReflectSchema ` provides an API-driven means of receiving the structure of the current
1515schema stored in SpiceDB.
1616
1717It is designed primarily to allow callers to make dynamic decisions based on the structure of the
1818schema, such as being able to see all the permissions defined for a particular type of resource.
1919
2020``` proto
21- ExperimentalReflectSchemaRequest {}
21+ ReflectSchemaRequest {}
2222
23- ExperimentalReflectSchemaResponse {
23+ ReflectSchemaResponse {
2424 Definitions: []{
2525 { Name: "user" },
2626 {
@@ -41,11 +41,11 @@ ExperimentalReflectSchemaResponse{
4141
4242### Filtering
4343
44- ` ExperimentalReflectSchemaRequest ` also includes support for filters which can be used to filter
44+ ` ReflectSchemaRequest ` also includes support for filters which can be used to filter
4545the response to a specific subset of the schema:
4646
4747``` proto
48- ExperimentalReflectSchemaRequest {
48+ ReflectSchemaRequest {
4949 OptionalFilters: []{
5050 {
5151 OptionalDefinitionNameFilter: "a" // filter to defs starting with `a`
@@ -54,16 +54,16 @@ ExperimentalReflectSchemaRequest{
5454}
5555```
5656
57- ## ExperimentalDiffSchema
57+ ## DiffSchema
5858
59- ` ExperimentalDiffSchema ` provides an API-driven means of comparing the currently stored schema
59+ ` DiffSchema ` provides an API-driven means of comparing the currently stored schema
6060in SpiceDB to another schema.
6161
6262This API is useful for tooling such as CI/CD that needs to determine what changes, if any,
6363exist between the current schema and a future schema.
6464
6565``` proto
66- ExperimentalDiffSchema {
66+ DiffSchema {
6767 ComparisonSchema: """
6868 definition user {}
6969
@@ -85,26 +85,26 @@ ExperimentalDiffSchema{
8585 """
8686}
8787
88- ExperimentalReflectSchemaResponse {
88+ ReflectSchemaResponse {
8989 Diffs: []{
9090 { DefinitionDocCommentChanged: { Name: "organization", ... } },
9191 { PermissionExprChanged: { Name: "view", ... } },
9292 }
9393}
9494```
9595
96- ## ExperimentalDependentRelations
96+ ## DependentRelations
9797
98- ` ExperimentalDependentRelations ` is a reflection API that provides the list of relations and
98+ ` DependentRelations ` is a reflection API that provides the list of relations and
9999permissions that are used to compute a particular permission.
100100
101101``` proto
102- ExperimentalDependentRelationsRequest {
102+ DependentRelationsRequest {
103103 DefinitionName: "resource"
104104 PermissionName: "view"
105105}
106106
107- ExperimentalDependentRelationsResponse {
107+ DependentRelationsResponse {
108108 Relations: []{
109109 { DefinitionName: "organization", RelationName: "member", IsPermission: false},
110110 { DefinitionName: "resource", RelationName: "org", IsPermission: false},
@@ -115,18 +115,18 @@ ExperimentalDependentRelationsResponse{
115115}
116116```
117117
118- ## ExperimentalComputablePermissions
118+ ## ComputablePermissions
119119
120- ` ExperimentalComputablePermissions ` is the inverse of ` ExperimentalDependentRelations ` : it helps
120+ ` ComputablePermissions ` is the inverse of ` DependentRelations ` : it helps
121121to determine any permissions impacted by a change to a relation or permission.
122122
123123``` proto
124- ExperimentalComputablePermissionsRequest {
124+ ComputablePermissionsRequest {
125125 DefinitionName: "resource"
126126 RelationName: "viewer"
127127}
128128
129- ExperimentalComputablePermissionsResponse {
129+ ComputablePermissionsResponse {
130130 Permissions: []{
131131 { DefinitionName: "resource", RelationName: "view", IsPermission: true},
132132 }
0 commit comments