apiv1grpc

package
v1.3.0-20240319091308-... Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: unknown License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Index

Constants

View Source
const (
	ExperimentalService_BulkImportRelationships_FullMethodName = "/authzed.api.v1.ExperimentalService/BulkImportRelationships"
	ExperimentalService_BulkExportRelationships_FullMethodName = "/authzed.api.v1.ExperimentalService/BulkExportRelationships"
	ExperimentalService_BulkCheckPermission_FullMethodName     = "/authzed.api.v1.ExperimentalService/BulkCheckPermission"
)
View Source
const (
	PermissionsService_ReadRelationships_FullMethodName    = "/authzed.api.v1.PermissionsService/ReadRelationships"
	PermissionsService_WriteRelationships_FullMethodName   = "/authzed.api.v1.PermissionsService/WriteRelationships"
	PermissionsService_DeleteRelationships_FullMethodName  = "/authzed.api.v1.PermissionsService/DeleteRelationships"
	PermissionsService_CheckPermission_FullMethodName      = "/authzed.api.v1.PermissionsService/CheckPermission"
	PermissionsService_CheckBulkPermissions_FullMethodName = "/authzed.api.v1.PermissionsService/CheckBulkPermissions"
	PermissionsService_ExpandPermissionTree_FullMethodName = "/authzed.api.v1.PermissionsService/ExpandPermissionTree"
	PermissionsService_LookupResources_FullMethodName      = "/authzed.api.v1.PermissionsService/LookupResources"
	PermissionsService_LookupSubjects_FullMethodName       = "/authzed.api.v1.PermissionsService/LookupSubjects"
)
View Source
const (
	SchemaService_ReadSchema_FullMethodName  = "/authzed.api.v1.SchemaService/ReadSchema"
	SchemaService_WriteSchema_FullMethodName = "/authzed.api.v1.SchemaService/WriteSchema"
)
View Source
const (
	WatchService_Watch_FullMethodName = "/authzed.api.v1.WatchService/Watch"
)

Variables

View Source
var ExperimentalService_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "authzed.api.v1.ExperimentalService",
	HandlerType: (*ExperimentalServiceServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "BulkCheckPermission",
			Handler:    _ExperimentalService_BulkCheckPermission_Handler,
		},
	},
	Streams: []grpc.StreamDesc{
		{
			StreamName:    "BulkImportRelationships",
			Handler:       _ExperimentalService_BulkImportRelationships_Handler,
			ClientStreams: true,
		},
		{
			StreamName:    "BulkExportRelationships",
			Handler:       _ExperimentalService_BulkExportRelationships_Handler,
			ServerStreams: true,
		},
	},
	Metadata: "authzed/api/v1/experimental_service.proto",
}

ExperimentalService_ServiceDesc is the grpc.ServiceDesc for ExperimentalService service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)

View Source
var PermissionsService_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "authzed.api.v1.PermissionsService",
	HandlerType: (*PermissionsServiceServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "WriteRelationships",
			Handler:    _PermissionsService_WriteRelationships_Handler,
		},
		{
			MethodName: "DeleteRelationships",
			Handler:    _PermissionsService_DeleteRelationships_Handler,
		},
		{
			MethodName: "CheckPermission",
			Handler:    _PermissionsService_CheckPermission_Handler,
		},
		{
			MethodName: "CheckBulkPermissions",
			Handler:    _PermissionsService_CheckBulkPermissions_Handler,
		},
		{
			MethodName: "ExpandPermissionTree",
			Handler:    _PermissionsService_ExpandPermissionTree_Handler,
		},
	},
	Streams: []grpc.StreamDesc{
		{
			StreamName:    "ReadRelationships",
			Handler:       _PermissionsService_ReadRelationships_Handler,
			ServerStreams: true,
		},
		{
			StreamName:    "LookupResources",
			Handler:       _PermissionsService_LookupResources_Handler,
			ServerStreams: true,
		},
		{
			StreamName:    "LookupSubjects",
			Handler:       _PermissionsService_LookupSubjects_Handler,
			ServerStreams: true,
		},
	},
	Metadata: "authzed/api/v1/permission_service.proto",
}

PermissionsService_ServiceDesc is the grpc.ServiceDesc for PermissionsService service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)

View Source
var SchemaService_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "authzed.api.v1.SchemaService",
	HandlerType: (*SchemaServiceServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "ReadSchema",
			Handler:    _SchemaService_ReadSchema_Handler,
		},
		{
			MethodName: "WriteSchema",
			Handler:    _SchemaService_WriteSchema_Handler,
		},
	},
	Streams:  []grpc.StreamDesc{},
	Metadata: "authzed/api/v1/schema_service.proto",
}

SchemaService_ServiceDesc is the grpc.ServiceDesc for SchemaService service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)

View Source
var WatchService_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "authzed.api.v1.WatchService",
	HandlerType: (*WatchServiceServer)(nil),
	Methods:     []grpc.MethodDesc{},
	Streams: []grpc.StreamDesc{
		{
			StreamName:    "Watch",
			Handler:       _WatchService_Watch_Handler,
			ServerStreams: true,
		},
	},
	Metadata: "authzed/api/v1/watch_service.proto",
}

WatchService_ServiceDesc is the grpc.ServiceDesc for WatchService service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)

Functions

func RegisterExperimentalServiceServer

func RegisterExperimentalServiceServer(s grpc.ServiceRegistrar, srv ExperimentalServiceServer)

func RegisterPermissionsServiceServer

func RegisterPermissionsServiceServer(s grpc.ServiceRegistrar, srv PermissionsServiceServer)

func RegisterSchemaServiceServer

func RegisterSchemaServiceServer(s grpc.ServiceRegistrar, srv SchemaServiceServer)

func RegisterWatchServiceServer

func RegisterWatchServiceServer(s grpc.ServiceRegistrar, srv WatchServiceServer)

Types

type ExperimentalServiceClient

type ExperimentalServiceClient interface {
	// 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
	BulkImportRelationships(ctx context.Context, opts ...grpc.CallOption) (ExperimentalService_BulkImportRelationshipsClient, error)
	// 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.
	BulkExportRelationships(ctx context.Context, in *v1.BulkExportRelationshipsRequest, opts ...grpc.CallOption) (ExperimentalService_BulkExportRelationshipsClient, error)
	BulkCheckPermission(ctx context.Context, in *v1.BulkCheckPermissionRequest, opts ...grpc.CallOption) (*v1.BulkCheckPermissionResponse, error)
}

ExperimentalServiceClient is the client API for ExperimentalService service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.

func NewExperimentalServiceClient

func NewExperimentalServiceClient(cc grpc.ClientConnInterface) ExperimentalServiceClient

type ExperimentalServiceServer

type ExperimentalServiceServer interface {
	// 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
	BulkImportRelationships(ExperimentalService_BulkImportRelationshipsServer) error
	// 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.
	BulkExportRelationships(*v1.BulkExportRelationshipsRequest, ExperimentalService_BulkExportRelationshipsServer) error
	BulkCheckPermission(context.Context, *v1.BulkCheckPermissionRequest) (*v1.BulkCheckPermissionResponse, error)
}

ExperimentalServiceServer is the server API for ExperimentalService service. All implementations should embed UnimplementedExperimentalServiceServer for forward compatibility

type ExperimentalService_BulkExportRelationshipsClient

type ExperimentalService_BulkExportRelationshipsClient interface {
	Recv() (*v1.BulkExportRelationshipsResponse, error)
	grpc.ClientStream
}

type ExperimentalService_BulkExportRelationshipsServer

type ExperimentalService_BulkExportRelationshipsServer interface {
	Send(*v1.BulkExportRelationshipsResponse) error
	grpc.ServerStream
}

type ExperimentalService_BulkImportRelationshipsClient

type ExperimentalService_BulkImportRelationshipsClient interface {
	Send(*v1.BulkImportRelationshipsRequest) error
	CloseAndRecv() (*v1.BulkImportRelationshipsResponse, error)
	grpc.ClientStream
}

type ExperimentalService_BulkImportRelationshipsServer

type ExperimentalService_BulkImportRelationshipsServer interface {
	SendAndClose(*v1.BulkImportRelationshipsResponse) error
	Recv() (*v1.BulkImportRelationshipsRequest, error)
	grpc.ServerStream
}

type PermissionsServiceClient

type PermissionsServiceClient interface {
	// ReadRelationships reads a set of the relationships matching one or more
	// filters.
	ReadRelationships(ctx context.Context, in *v1.ReadRelationshipsRequest, opts ...grpc.CallOption) (PermissionsService_ReadRelationshipsClient, error)
	// WriteRelationships atomically writes and/or deletes a set of specified
	// relationships. An optional set of preconditions can be provided that must
	// be satisfied for the operation to commit.
	WriteRelationships(ctx context.Context, in *v1.WriteRelationshipsRequest, opts ...grpc.CallOption) (*v1.WriteRelationshipsResponse, error)
	// DeleteRelationships atomically bulk deletes all relationships matching the
	// provided filter. If no relationships match, none will be deleted and the
	// operation will succeed. An optional set of preconditions can be provided that must
	// be satisfied for the operation to commit.
	DeleteRelationships(ctx context.Context, in *v1.DeleteRelationshipsRequest, opts ...grpc.CallOption) (*v1.DeleteRelationshipsResponse, error)
	// CheckPermission determines for a given resource whether a subject computes
	// to having a permission or is a direct member of a particular relation.
	CheckPermission(ctx context.Context, in *v1.CheckPermissionRequest, opts ...grpc.CallOption) (*v1.CheckPermissionResponse, error)
	// CheckBulkPermissions evaluates the given list of permission checks
	// and returns the list of results.
	CheckBulkPermissions(ctx context.Context, in *v1.CheckBulkPermissionsRequest, opts ...grpc.CallOption) (*v1.CheckBulkPermissionsResponse, error)
	// ExpandPermissionTree reveals the graph structure for a resource's
	// permission or relation. This RPC does not recurse infinitely deep and may
	// require multiple calls to fully unnest a deeply nested graph.
	ExpandPermissionTree(ctx context.Context, in *v1.ExpandPermissionTreeRequest, opts ...grpc.CallOption) (*v1.ExpandPermissionTreeResponse, error)
	// LookupResources returns all the resources of a given type that a subject
	// can access whether via a computed permission or relation membership.
	LookupResources(ctx context.Context, in *v1.LookupResourcesRequest, opts ...grpc.CallOption) (PermissionsService_LookupResourcesClient, error)
	// LookupSubjects returns all the subjects of a given type that
	// have access whether via a computed permission or relation membership.
	LookupSubjects(ctx context.Context, in *v1.LookupSubjectsRequest, opts ...grpc.CallOption) (PermissionsService_LookupSubjectsClient, error)
}

PermissionsServiceClient is the client API for PermissionsService service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.

func NewPermissionsServiceClient

func NewPermissionsServiceClient(cc grpc.ClientConnInterface) PermissionsServiceClient

type PermissionsServiceServer

type PermissionsServiceServer interface {
	// ReadRelationships reads a set of the relationships matching one or more
	// filters.
	ReadRelationships(*v1.ReadRelationshipsRequest, PermissionsService_ReadRelationshipsServer) error
	// WriteRelationships atomically writes and/or deletes a set of specified
	// relationships. An optional set of preconditions can be provided that must
	// be satisfied for the operation to commit.
	WriteRelationships(context.Context, *v1.WriteRelationshipsRequest) (*v1.WriteRelationshipsResponse, error)
	// DeleteRelationships atomically bulk deletes all relationships matching the
	// provided filter. If no relationships match, none will be deleted and the
	// operation will succeed. An optional set of preconditions can be provided that must
	// be satisfied for the operation to commit.
	DeleteRelationships(context.Context, *v1.DeleteRelationshipsRequest) (*v1.DeleteRelationshipsResponse, error)
	// CheckPermission determines for a given resource whether a subject computes
	// to having a permission or is a direct member of a particular relation.
	CheckPermission(context.Context, *v1.CheckPermissionRequest) (*v1.CheckPermissionResponse, error)
	// CheckBulkPermissions evaluates the given list of permission checks
	// and returns the list of results.
	CheckBulkPermissions(context.Context, *v1.CheckBulkPermissionsRequest) (*v1.CheckBulkPermissionsResponse, error)
	// ExpandPermissionTree reveals the graph structure for a resource's
	// permission or relation. This RPC does not recurse infinitely deep and may
	// require multiple calls to fully unnest a deeply nested graph.
	ExpandPermissionTree(context.Context, *v1.ExpandPermissionTreeRequest) (*v1.ExpandPermissionTreeResponse, error)
	// LookupResources returns all the resources of a given type that a subject
	// can access whether via a computed permission or relation membership.
	LookupResources(*v1.LookupResourcesRequest, PermissionsService_LookupResourcesServer) error
	// LookupSubjects returns all the subjects of a given type that
	// have access whether via a computed permission or relation membership.
	LookupSubjects(*v1.LookupSubjectsRequest, PermissionsService_LookupSubjectsServer) error
}

PermissionsServiceServer is the server API for PermissionsService service. All implementations should embed UnimplementedPermissionsServiceServer for forward compatibility

type PermissionsService_LookupResourcesClient

type PermissionsService_LookupResourcesClient interface {
	Recv() (*v1.LookupResourcesResponse, error)
	grpc.ClientStream
}

type PermissionsService_LookupResourcesServer

type PermissionsService_LookupResourcesServer interface {
	Send(*v1.LookupResourcesResponse) error
	grpc.ServerStream
}

type PermissionsService_LookupSubjectsClient

type PermissionsService_LookupSubjectsClient interface {
	Recv() (*v1.LookupSubjectsResponse, error)
	grpc.ClientStream
}

type PermissionsService_LookupSubjectsServer

type PermissionsService_LookupSubjectsServer interface {
	Send(*v1.LookupSubjectsResponse) error
	grpc.ServerStream
}

type PermissionsService_ReadRelationshipsClient

type PermissionsService_ReadRelationshipsClient interface {
	Recv() (*v1.ReadRelationshipsResponse, error)
	grpc.ClientStream
}

type PermissionsService_ReadRelationshipsServer

type PermissionsService_ReadRelationshipsServer interface {
	Send(*v1.ReadRelationshipsResponse) error
	grpc.ServerStream
}

type SchemaServiceClient

type SchemaServiceClient interface {
	// Read returns the current Object Definitions for a Permissions System.
	//
	// Errors include:
	// - INVALID_ARGUMENT: a provided value has failed to semantically validate
	// - NOT_FOUND: no schema has been defined
	ReadSchema(ctx context.Context, in *v1.ReadSchemaRequest, opts ...grpc.CallOption) (*v1.ReadSchemaResponse, error)
	// Write overwrites the current Object Definitions for a Permissions System.
	WriteSchema(ctx context.Context, in *v1.WriteSchemaRequest, opts ...grpc.CallOption) (*v1.WriteSchemaResponse, error)
}

SchemaServiceClient is the client API for SchemaService service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.

func NewSchemaServiceClient

func NewSchemaServiceClient(cc grpc.ClientConnInterface) SchemaServiceClient

type SchemaServiceServer

type SchemaServiceServer interface {
	// Read returns the current Object Definitions for a Permissions System.
	//
	// Errors include:
	// - INVALID_ARGUMENT: a provided value has failed to semantically validate
	// - NOT_FOUND: no schema has been defined
	ReadSchema(context.Context, *v1.ReadSchemaRequest) (*v1.ReadSchemaResponse, error)
	// Write overwrites the current Object Definitions for a Permissions System.
	WriteSchema(context.Context, *v1.WriteSchemaRequest) (*v1.WriteSchemaResponse, error)
}

SchemaServiceServer is the server API for SchemaService service. All implementations should embed UnimplementedSchemaServiceServer for forward compatibility

type UnimplementedExperimentalServiceServer

type UnimplementedExperimentalServiceServer struct {
}

UnimplementedExperimentalServiceServer should be embedded to have forward compatible implementations.

func (UnimplementedExperimentalServiceServer) BulkCheckPermission

func (UnimplementedExperimentalServiceServer) BulkExportRelationships

func (UnimplementedExperimentalServiceServer) BulkImportRelationships

type UnimplementedPermissionsServiceServer

type UnimplementedPermissionsServiceServer struct {
}

UnimplementedPermissionsServiceServer should be embedded to have forward compatible implementations.

func (UnimplementedPermissionsServiceServer) CheckBulkPermissions

func (UnimplementedPermissionsServiceServer) CheckPermission

func (UnimplementedPermissionsServiceServer) DeleteRelationships

func (UnimplementedPermissionsServiceServer) ExpandPermissionTree

func (UnimplementedPermissionsServiceServer) LookupResources

func (UnimplementedPermissionsServiceServer) LookupSubjects

func (UnimplementedPermissionsServiceServer) ReadRelationships

func (UnimplementedPermissionsServiceServer) WriteRelationships

type UnimplementedSchemaServiceServer

type UnimplementedSchemaServiceServer struct {
}

UnimplementedSchemaServiceServer should be embedded to have forward compatible implementations.

func (UnimplementedSchemaServiceServer) ReadSchema

func (UnimplementedSchemaServiceServer) WriteSchema

type UnimplementedWatchServiceServer

type UnimplementedWatchServiceServer struct {
}

UnimplementedWatchServiceServer should be embedded to have forward compatible implementations.

func (UnimplementedWatchServiceServer) Watch

type UnsafeExperimentalServiceServer

type UnsafeExperimentalServiceServer interface {
	// contains filtered or unexported methods
}

UnsafeExperimentalServiceServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to ExperimentalServiceServer will result in compilation errors.

type UnsafePermissionsServiceServer

type UnsafePermissionsServiceServer interface {
	// contains filtered or unexported methods
}

UnsafePermissionsServiceServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to PermissionsServiceServer will result in compilation errors.

type UnsafeSchemaServiceServer

type UnsafeSchemaServiceServer interface {
	// contains filtered or unexported methods
}

UnsafeSchemaServiceServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to SchemaServiceServer will result in compilation errors.

type UnsafeWatchServiceServer

type UnsafeWatchServiceServer interface {
	// contains filtered or unexported methods
}

UnsafeWatchServiceServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to WatchServiceServer will result in compilation errors.

type WatchServiceClient

type WatchServiceClient interface {
	Watch(ctx context.Context, in *v1.WatchRequest, opts ...grpc.CallOption) (WatchService_WatchClient, error)
}

WatchServiceClient is the client API for WatchService service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.

func NewWatchServiceClient

func NewWatchServiceClient(cc grpc.ClientConnInterface) WatchServiceClient

type WatchServiceServer

type WatchServiceServer interface {
	Watch(*v1.WatchRequest, WatchService_WatchServer) error
}

WatchServiceServer is the server API for WatchService service. All implementations should embed UnimplementedWatchServiceServer for forward compatibility

type WatchService_WatchClient

type WatchService_WatchClient interface {
	Recv() (*v1.WatchResponse, error)
	grpc.ClientStream
}

type WatchService_WatchServer

type WatchService_WatchServer interface {
	Send(*v1.WatchResponse) error
	grpc.ServerStream
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL