Interface ExperimentalServiceGrpc.AsyncService

All Known Implementing Classes:
ExperimentalServiceGrpc.ExperimentalServiceImplBase
Enclosing class:
ExperimentalServiceGrpc

public static interface ExperimentalServiceGrpc.AsyncService
 ExperimentalService exposes a number of APIs that are currently being
 prototyped and tested for future inclusion in the stable API.
 
  • Method Details

    • bulkImportRelationships

      default io.grpc.stub.StreamObserver<BulkImportRelationshipsRequest> bulkImportRelationships(io.grpc.stub.StreamObserver<BulkImportRelationshipsResponse> responseObserver)
       BulkImportRelationships is a faster path to writing a large number of
       relationships at once. It is both batched and streaming. For maximum
       performance, the caller should attempt to write relationships in as close
       to relationship sort order as possible: (resource.object_type,
       resource.object_id, relation, subject.object.object_type,
       subject.object.object_id, subject.optional_relation)
       
       EXPERIMENTAL
       https://github.com/authzed/spicedb/issues/1303
       
    • bulkExportRelationships

      default void bulkExportRelationships(BulkExportRelationshipsRequest request, io.grpc.stub.StreamObserver<BulkExportRelationshipsResponse> responseObserver)
       BulkExportRelationships is the fastest path available to exporting
       relationships from the server. It is resumable, and will return results
       in an order determined by the server.
       
    • bulkCheckPermission

      @Deprecated default void bulkCheckPermission(BulkCheckPermissionRequest request, io.grpc.stub.StreamObserver<BulkCheckPermissionResponse> responseObserver)
      Deprecated.
       NOTE: BulkCheckPermission has been promoted to the stable API as "CheckBulkPermission" and the
       API will be removed from experimental in a future release.
       
    • experimentalReflectSchema

      default void experimentalReflectSchema(ExperimentalReflectSchemaRequest request, io.grpc.stub.StreamObserver<ExperimentalReflectSchemaResponse> responseObserver)
       EXPERIMENTAL: ReflectSchema is an API that allows clients to reflect the schema stored in
       SpiceDB. This is useful for clients that need to introspect the schema of a SpiceDB instance.
       
    • experimentalComputablePermissions

      default void experimentalComputablePermissions(ExperimentalComputablePermissionsRequest request, io.grpc.stub.StreamObserver<ExperimentalComputablePermissionsResponse> responseObserver)
       EXPERIMENTAL: ComputablePermissions is an API that allows clients to request the set of
       permissions that compute based off a relation. For example, if a schema has a relation
       `viewer` and a permission `view` defined as `permission view = viewer + editor`, then the
       computable permissions for the relation `viewer` will include `view`.
       
    • experimentalDependentRelations

      default void experimentalDependentRelations(ExperimentalDependentRelationsRequest request, io.grpc.stub.StreamObserver<ExperimentalDependentRelationsResponse> responseObserver)
       EXPERIMENTAL: DependentRelations is an API that allows clients to request the set of
       relations and permissions that used to compute a permission, recursively. It is the
       inverse of the ComputablePermissions API.
       
    • experimentalDiffSchema

      default void experimentalDiffSchema(ExperimentalDiffSchemaRequest request, io.grpc.stub.StreamObserver<ExperimentalDiffSchemaResponse> responseObserver)
       EXPERIMENTAL: DiffSchema is an API that allows clients to request the difference between the
       specified schema and the schema stored in SpiceDB. This is useful for clients that need to
       introspect the schema of a SpiceDB instance.
       
    • experimentalRegisterRelationshipCounter

      default void experimentalRegisterRelationshipCounter(ExperimentalRegisterRelationshipCounterRequest request, io.grpc.stub.StreamObserver<ExperimentalRegisterRelationshipCounterResponse> responseObserver)
       EXPERIMENTAL: RegisterRelationshipCounter registers a new filter for counting relationships. A filter must be registered before
       a count can be requested.
       
    • experimentalCountRelationships

      default void experimentalCountRelationships(ExperimentalCountRelationshipsRequest request, io.grpc.stub.StreamObserver<ExperimentalCountRelationshipsResponse> responseObserver)
       EXPERIMENTAL: CountRelationships returns the count of relationships for *pre-registered* filter.
       
    • experimentalUnregisterRelationshipCounter

      default void experimentalUnregisterRelationshipCounter(ExperimentalUnregisterRelationshipCounterRequest request, io.grpc.stub.StreamObserver<ExperimentalUnregisterRelationshipCounterResponse> responseObserver)
       EXPERIMENTAL: UnregisterRelationshipCounter unregisters an existing filter for counting relationships.