apiv1

package
v1.33.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: 10 Imported by: 6

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	RelationshipUpdate_Operation_name = map[int32]string{
		0: "OPERATION_UNSPECIFIED",
		1: "OPERATION_CREATE",
		2: "OPERATION_TOUCH",
		3: "OPERATION_DELETE",
	}
	RelationshipUpdate_Operation_value = map[string]int32{
		"OPERATION_UNSPECIFIED": 0,
		"OPERATION_CREATE":      1,
		"OPERATION_TOUCH":       2,
		"OPERATION_DELETE":      3,
	}
)

Enum value maps for RelationshipUpdate_Operation.

View Source
var (
	AlgebraicSubjectSet_Operation_name = map[int32]string{
		0: "OPERATION_UNSPECIFIED",
		1: "OPERATION_UNION",
		2: "OPERATION_INTERSECTION",
		3: "OPERATION_EXCLUSION",
	}
	AlgebraicSubjectSet_Operation_value = map[string]int32{
		"OPERATION_UNSPECIFIED":  0,
		"OPERATION_UNION":        1,
		"OPERATION_INTERSECTION": 2,
		"OPERATION_EXCLUSION":    3,
	}
)

Enum value maps for AlgebraicSubjectSet_Operation.

View Source
var (
	CheckDebugTrace_PermissionType_name = map[int32]string{
		0: "PERMISSION_TYPE_UNSPECIFIED",
		1: "PERMISSION_TYPE_RELATION",
		2: "PERMISSION_TYPE_PERMISSION",
	}
	CheckDebugTrace_PermissionType_value = map[string]int32{
		"PERMISSION_TYPE_UNSPECIFIED": 0,
		"PERMISSION_TYPE_RELATION":    1,
		"PERMISSION_TYPE_PERMISSION":  2,
	}
)

Enum value maps for CheckDebugTrace_PermissionType.

View Source
var (
	CheckDebugTrace_Permissionship_name = map[int32]string{
		0: "PERMISSIONSHIP_UNSPECIFIED",
		1: "PERMISSIONSHIP_NO_PERMISSION",
		2: "PERMISSIONSHIP_HAS_PERMISSION",
		3: "PERMISSIONSHIP_CONDITIONAL_PERMISSION",
	}
	CheckDebugTrace_Permissionship_value = map[string]int32{
		"PERMISSIONSHIP_UNSPECIFIED":            0,
		"PERMISSIONSHIP_NO_PERMISSION":          1,
		"PERMISSIONSHIP_HAS_PERMISSION":         2,
		"PERMISSIONSHIP_CONDITIONAL_PERMISSION": 3,
	}
)

Enum value maps for CheckDebugTrace_Permissionship.

View Source
var (
	CaveatEvalInfo_Result_name = map[int32]string{
		0: "RESULT_UNSPECIFIED",
		1: "RESULT_UNEVALUATED",
		2: "RESULT_FALSE",
		3: "RESULT_TRUE",
		4: "RESULT_MISSING_SOME_CONTEXT",
	}
	CaveatEvalInfo_Result_value = map[string]int32{
		"RESULT_UNSPECIFIED":          0,
		"RESULT_UNEVALUATED":          1,
		"RESULT_FALSE":                2,
		"RESULT_TRUE":                 3,
		"RESULT_MISSING_SOME_CONTEXT": 4,
	}
)

Enum value maps for CaveatEvalInfo_Result.

View Source
var (
	ErrorReason_name = map[int32]string{
		0:  "ERROR_REASON_UNSPECIFIED",
		1:  "ERROR_REASON_SCHEMA_PARSE_ERROR",
		2:  "ERROR_REASON_SCHEMA_TYPE_ERROR",
		3:  "ERROR_REASON_UNKNOWN_DEFINITION",
		4:  "ERROR_REASON_UNKNOWN_RELATION_OR_PERMISSION",
		5:  "ERROR_REASON_TOO_MANY_UPDATES_IN_REQUEST",
		6:  "ERROR_REASON_TOO_MANY_PRECONDITIONS_IN_REQUEST",
		7:  "ERROR_REASON_WRITE_OR_DELETE_PRECONDITION_FAILURE",
		8:  "ERROR_REASON_SERVICE_READ_ONLY",
		9:  "ERROR_REASON_UNKNOWN_CAVEAT",
		10: "ERROR_REASON_INVALID_SUBJECT_TYPE",
		11: "ERROR_REASON_CAVEAT_PARAMETER_TYPE_ERROR",
		12: "ERROR_REASON_UPDATES_ON_SAME_RELATIONSHIP",
		13: "ERROR_REASON_CANNOT_UPDATE_PERMISSION",
		14: "ERROR_REASON_CAVEAT_EVALUATION_ERROR",
		15: "ERROR_REASON_INVALID_CURSOR",
		16: "ERROR_REASON_TOO_MANY_RELATIONSHIPS_FOR_TRANSACTIONAL_DELETE",
		17: "ERROR_REASON_MAX_RELATIONSHIP_CONTEXT_SIZE",
		18: "ERROR_REASON_ATTEMPT_TO_RECREATE_RELATIONSHIP",
		19: "ERROR_REASON_MAXIMUM_DEPTH_EXCEEDED",
		20: "ERROR_REASON_SERIALIZATION_FAILURE",
		21: "ERROR_REASON_TOO_MANY_CHECKS_IN_REQUEST",
	}
	ErrorReason_value = map[string]int32{
		"ERROR_REASON_UNSPECIFIED":                                     0,
		"ERROR_REASON_SCHEMA_PARSE_ERROR":                              1,
		"ERROR_REASON_SCHEMA_TYPE_ERROR":                               2,
		"ERROR_REASON_UNKNOWN_DEFINITION":                              3,
		"ERROR_REASON_UNKNOWN_RELATION_OR_PERMISSION":                  4,
		"ERROR_REASON_TOO_MANY_UPDATES_IN_REQUEST":                     5,
		"ERROR_REASON_TOO_MANY_PRECONDITIONS_IN_REQUEST":               6,
		"ERROR_REASON_WRITE_OR_DELETE_PRECONDITION_FAILURE":            7,
		"ERROR_REASON_SERVICE_READ_ONLY":                               8,
		"ERROR_REASON_UNKNOWN_CAVEAT":                                  9,
		"ERROR_REASON_INVALID_SUBJECT_TYPE":                            10,
		"ERROR_REASON_CAVEAT_PARAMETER_TYPE_ERROR":                     11,
		"ERROR_REASON_UPDATES_ON_SAME_RELATIONSHIP":                    12,
		"ERROR_REASON_CANNOT_UPDATE_PERMISSION":                        13,
		"ERROR_REASON_CAVEAT_EVALUATION_ERROR":                         14,
		"ERROR_REASON_INVALID_CURSOR":                                  15,
		"ERROR_REASON_TOO_MANY_RELATIONSHIPS_FOR_TRANSACTIONAL_DELETE": 16,
		"ERROR_REASON_MAX_RELATIONSHIP_CONTEXT_SIZE":                   17,
		"ERROR_REASON_ATTEMPT_TO_RECREATE_RELATIONSHIP":                18,
		"ERROR_REASON_MAXIMUM_DEPTH_EXCEEDED":                          19,
		"ERROR_REASON_SERIALIZATION_FAILURE":                           20,
		"ERROR_REASON_TOO_MANY_CHECKS_IN_REQUEST":                      21,
	}
)

Enum value maps for ErrorReason.

View Source
var (
	LookupPermissionship_name = map[int32]string{
		0: "LOOKUP_PERMISSIONSHIP_UNSPECIFIED",
		1: "LOOKUP_PERMISSIONSHIP_HAS_PERMISSION",
		2: "LOOKUP_PERMISSIONSHIP_CONDITIONAL_PERMISSION",
	}
	LookupPermissionship_value = map[string]int32{
		"LOOKUP_PERMISSIONSHIP_UNSPECIFIED":            0,
		"LOOKUP_PERMISSIONSHIP_HAS_PERMISSION":         1,
		"LOOKUP_PERMISSIONSHIP_CONDITIONAL_PERMISSION": 2,
	}
)

Enum value maps for LookupPermissionship.

View Source
var (
	Precondition_Operation_name = map[int32]string{
		0: "OPERATION_UNSPECIFIED",
		1: "OPERATION_MUST_NOT_MATCH",
		2: "OPERATION_MUST_MATCH",
	}
	Precondition_Operation_value = map[string]int32{
		"OPERATION_UNSPECIFIED":    0,
		"OPERATION_MUST_NOT_MATCH": 1,
		"OPERATION_MUST_MATCH":     2,
	}
)

Enum value maps for Precondition_Operation.

View Source
var (
	DeleteRelationshipsResponse_DeletionProgress_name = map[int32]string{
		0: "DELETION_PROGRESS_UNSPECIFIED",
		1: "DELETION_PROGRESS_COMPLETE",
		2: "DELETION_PROGRESS_PARTIAL",
	}
	DeleteRelationshipsResponse_DeletionProgress_value = map[string]int32{
		"DELETION_PROGRESS_UNSPECIFIED": 0,
		"DELETION_PROGRESS_COMPLETE":    1,
		"DELETION_PROGRESS_PARTIAL":     2,
	}
)

Enum value maps for DeleteRelationshipsResponse_DeletionProgress.

View Source
var (
	CheckPermissionResponse_Permissionship_name = map[int32]string{
		0: "PERMISSIONSHIP_UNSPECIFIED",
		1: "PERMISSIONSHIP_NO_PERMISSION",
		2: "PERMISSIONSHIP_HAS_PERMISSION",
		3: "PERMISSIONSHIP_CONDITIONAL_PERMISSION",
	}
	CheckPermissionResponse_Permissionship_value = map[string]int32{
		"PERMISSIONSHIP_UNSPECIFIED":            0,
		"PERMISSIONSHIP_NO_PERMISSION":          1,
		"PERMISSIONSHIP_HAS_PERMISSION":         2,
		"PERMISSIONSHIP_CONDITIONAL_PERMISSION": 3,
	}
)

Enum value maps for CheckPermissionResponse_Permissionship.

View Source
var (
	LookupSubjectsRequest_WildcardOption_name = map[int32]string{
		0: "WILDCARD_OPTION_UNSPECIFIED",
		1: "WILDCARD_OPTION_INCLUDE_WILDCARDS",
		2: "WILDCARD_OPTION_EXCLUDE_WILDCARDS",
	}
	LookupSubjectsRequest_WildcardOption_value = map[string]int32{
		"WILDCARD_OPTION_UNSPECIFIED":       0,
		"WILDCARD_OPTION_INCLUDE_WILDCARDS": 1,
		"WILDCARD_OPTION_EXCLUDE_WILDCARDS": 2,
	}
)

Enum value maps for LookupSubjectsRequest_WildcardOption.

View Source
var File_authzed_api_v1_core_proto protoreflect.FileDescriptor
View Source
var File_authzed_api_v1_debug_proto protoreflect.FileDescriptor
View Source
var File_authzed_api_v1_error_reason_proto protoreflect.FileDescriptor
View Source
var File_authzed_api_v1_experimental_service_proto protoreflect.FileDescriptor
View Source
var File_authzed_api_v1_openapi_proto protoreflect.FileDescriptor
View Source
var File_authzed_api_v1_permission_service_proto protoreflect.FileDescriptor
View Source
var File_authzed_api_v1_schema_service_proto protoreflect.FileDescriptor
View Source
var File_authzed_api_v1_watch_service_proto protoreflect.FileDescriptor

Functions

This section is empty.

Types

type AlgebraicSubjectSet

type AlgebraicSubjectSet struct {
	Operation AlgebraicSubjectSet_Operation `protobuf:"varint,1,opt,name=operation,proto3,enum=authzed.api.v1.AlgebraicSubjectSet_Operation" json:"operation,omitempty"`
	Children  []*PermissionRelationshipTree `protobuf:"bytes,2,rep,name=children,proto3" json:"children,omitempty"`
	// contains filtered or unexported fields
}

AlgebraicSubjectSet is a subject set which is computed based on applying the specified operation to the operands according to the algebra of sets.

UNION is a logical set containing the subject members from all operands.

INTERSECTION is a logical set containing only the subject members which are present in all operands.

EXCLUSION is a logical set containing only the subject members which are present in the first operand, and none of the other operands.

func (*AlgebraicSubjectSet) Descriptor deprecated

func (*AlgebraicSubjectSet) Descriptor() ([]byte, []int)

Deprecated: Use AlgebraicSubjectSet.ProtoReflect.Descriptor instead.

func (*AlgebraicSubjectSet) GetChildren

func (x *AlgebraicSubjectSet) GetChildren() []*PermissionRelationshipTree

func (*AlgebraicSubjectSet) GetOperation

func (*AlgebraicSubjectSet) ProtoMessage

func (*AlgebraicSubjectSet) ProtoMessage()

func (*AlgebraicSubjectSet) ProtoReflect

func (x *AlgebraicSubjectSet) ProtoReflect() protoreflect.Message

func (*AlgebraicSubjectSet) Reset

func (x *AlgebraicSubjectSet) Reset()

func (*AlgebraicSubjectSet) String

func (x *AlgebraicSubjectSet) String() string

type AlgebraicSubjectSet_Operation

type AlgebraicSubjectSet_Operation int32
const (
	AlgebraicSubjectSet_OPERATION_UNSPECIFIED  AlgebraicSubjectSet_Operation = 0
	AlgebraicSubjectSet_OPERATION_UNION        AlgebraicSubjectSet_Operation = 1
	AlgebraicSubjectSet_OPERATION_INTERSECTION AlgebraicSubjectSet_Operation = 2
	AlgebraicSubjectSet_OPERATION_EXCLUSION    AlgebraicSubjectSet_Operation = 3
)

func (AlgebraicSubjectSet_Operation) Descriptor

func (AlgebraicSubjectSet_Operation) Enum

func (AlgebraicSubjectSet_Operation) EnumDescriptor deprecated

func (AlgebraicSubjectSet_Operation) EnumDescriptor() ([]byte, []int)

Deprecated: Use AlgebraicSubjectSet_Operation.Descriptor instead.

func (AlgebraicSubjectSet_Operation) Number

func (AlgebraicSubjectSet_Operation) String

func (AlgebraicSubjectSet_Operation) Type

type BulkCheckPermissionPair

type BulkCheckPermissionPair struct {
	Request *BulkCheckPermissionRequestItem `protobuf:"bytes,1,opt,name=request,proto3" json:"request,omitempty"`
	// Types that are assignable to Response:
	//
	//	*BulkCheckPermissionPair_Item
	//	*BulkCheckPermissionPair_Error
	Response isBulkCheckPermissionPair_Response `protobuf_oneof:"response"`
	// contains filtered or unexported fields
}

func (*BulkCheckPermissionPair) Descriptor deprecated

func (*BulkCheckPermissionPair) Descriptor() ([]byte, []int)

Deprecated: Use BulkCheckPermissionPair.ProtoReflect.Descriptor instead.

func (*BulkCheckPermissionPair) GetError

func (x *BulkCheckPermissionPair) GetError() *status.Status

func (*BulkCheckPermissionPair) GetItem

func (*BulkCheckPermissionPair) GetRequest

func (*BulkCheckPermissionPair) GetResponse

func (m *BulkCheckPermissionPair) GetResponse() isBulkCheckPermissionPair_Response

func (*BulkCheckPermissionPair) ProtoMessage

func (*BulkCheckPermissionPair) ProtoMessage()

func (*BulkCheckPermissionPair) ProtoReflect

func (x *BulkCheckPermissionPair) ProtoReflect() protoreflect.Message

func (*BulkCheckPermissionPair) Reset

func (x *BulkCheckPermissionPair) Reset()

func (*BulkCheckPermissionPair) String

func (x *BulkCheckPermissionPair) String() string

type BulkCheckPermissionPair_Error

type BulkCheckPermissionPair_Error struct {
	Error *status.Status `protobuf:"bytes,3,opt,name=error,proto3,oneof"`
}

type BulkCheckPermissionPair_Item

type BulkCheckPermissionPair_Item struct {
	Item *BulkCheckPermissionResponseItem `protobuf:"bytes,2,opt,name=item,proto3,oneof"`
}

type BulkCheckPermissionRequest

type BulkCheckPermissionRequest struct {
	Consistency *Consistency                      `protobuf:"bytes,1,opt,name=consistency,proto3" json:"consistency,omitempty"`
	Items       []*BulkCheckPermissionRequestItem `protobuf:"bytes,2,rep,name=items,proto3" json:"items,omitempty"`
	// contains filtered or unexported fields
}

func (*BulkCheckPermissionRequest) Descriptor deprecated

func (*BulkCheckPermissionRequest) Descriptor() ([]byte, []int)

Deprecated: Use BulkCheckPermissionRequest.ProtoReflect.Descriptor instead.

func (*BulkCheckPermissionRequest) GetConsistency

func (x *BulkCheckPermissionRequest) GetConsistency() *Consistency

func (*BulkCheckPermissionRequest) GetItems

func (*BulkCheckPermissionRequest) ProtoMessage

func (*BulkCheckPermissionRequest) ProtoMessage()

func (*BulkCheckPermissionRequest) ProtoReflect

func (*BulkCheckPermissionRequest) Reset

func (x *BulkCheckPermissionRequest) Reset()

func (*BulkCheckPermissionRequest) String

func (x *BulkCheckPermissionRequest) String() string

type BulkCheckPermissionRequestItem

type BulkCheckPermissionRequestItem struct {
	Resource   *ObjectReference  `protobuf:"bytes,1,opt,name=resource,proto3" json:"resource,omitempty"`
	Permission string            `protobuf:"bytes,2,opt,name=permission,proto3" json:"permission,omitempty"`
	Subject    *SubjectReference `protobuf:"bytes,3,opt,name=subject,proto3" json:"subject,omitempty"`
	Context    *structpb.Struct  `protobuf:"bytes,4,opt,name=context,proto3" json:"context,omitempty"`
	// contains filtered or unexported fields
}

func (*BulkCheckPermissionRequestItem) Descriptor deprecated

func (*BulkCheckPermissionRequestItem) Descriptor() ([]byte, []int)

Deprecated: Use BulkCheckPermissionRequestItem.ProtoReflect.Descriptor instead.

func (*BulkCheckPermissionRequestItem) GetContext

func (*BulkCheckPermissionRequestItem) GetPermission

func (x *BulkCheckPermissionRequestItem) GetPermission() string

func (*BulkCheckPermissionRequestItem) GetResource

func (*BulkCheckPermissionRequestItem) GetSubject

func (*BulkCheckPermissionRequestItem) ProtoMessage

func (*BulkCheckPermissionRequestItem) ProtoMessage()

func (*BulkCheckPermissionRequestItem) ProtoReflect

func (*BulkCheckPermissionRequestItem) Reset

func (x *BulkCheckPermissionRequestItem) Reset()

func (*BulkCheckPermissionRequestItem) String

type BulkCheckPermissionResponse

type BulkCheckPermissionResponse struct {
	CheckedAt *ZedToken                  `protobuf:"bytes,1,opt,name=checked_at,json=checkedAt,proto3" json:"checked_at,omitempty"`
	Pairs     []*BulkCheckPermissionPair `protobuf:"bytes,2,rep,name=pairs,proto3" json:"pairs,omitempty"`
	// contains filtered or unexported fields
}

func (*BulkCheckPermissionResponse) Descriptor deprecated

func (*BulkCheckPermissionResponse) Descriptor() ([]byte, []int)

Deprecated: Use BulkCheckPermissionResponse.ProtoReflect.Descriptor instead.

func (*BulkCheckPermissionResponse) GetCheckedAt

func (x *BulkCheckPermissionResponse) GetCheckedAt() *ZedToken

func (*BulkCheckPermissionResponse) GetPairs

func (*BulkCheckPermissionResponse) ProtoMessage

func (*BulkCheckPermissionResponse) ProtoMessage()

func (*BulkCheckPermissionResponse) ProtoReflect

func (*BulkCheckPermissionResponse) Reset

func (x *BulkCheckPermissionResponse) Reset()

func (*BulkCheckPermissionResponse) String

func (x *BulkCheckPermissionResponse) String() string

type BulkCheckPermissionResponseItem

type BulkCheckPermissionResponseItem struct {
	Permissionship    CheckPermissionResponse_Permissionship `` /* 141-byte string literal not displayed */
	PartialCaveatInfo *PartialCaveatInfo                     `protobuf:"bytes,2,opt,name=partial_caveat_info,json=partialCaveatInfo,proto3" json:"partial_caveat_info,omitempty"`
	// contains filtered or unexported fields
}

func (*BulkCheckPermissionResponseItem) Descriptor deprecated

func (*BulkCheckPermissionResponseItem) Descriptor() ([]byte, []int)

Deprecated: Use BulkCheckPermissionResponseItem.ProtoReflect.Descriptor instead.

func (*BulkCheckPermissionResponseItem) GetPartialCaveatInfo

func (x *BulkCheckPermissionResponseItem) GetPartialCaveatInfo() *PartialCaveatInfo

func (*BulkCheckPermissionResponseItem) GetPermissionship

func (*BulkCheckPermissionResponseItem) ProtoMessage

func (*BulkCheckPermissionResponseItem) ProtoMessage()

func (*BulkCheckPermissionResponseItem) ProtoReflect

func (*BulkCheckPermissionResponseItem) Reset

func (*BulkCheckPermissionResponseItem) String

type BulkExportRelationshipsRequest

type BulkExportRelationshipsRequest struct {
	Consistency *Consistency `protobuf:"bytes,1,opt,name=consistency,proto3" json:"consistency,omitempty"`
	// optional_limit, if non-zero, specifies the limit on the number of
	// relationships the server can return in one page. By default, the server
	// will pick a page size, and the server is free to choose a smaller size
	// at will.
	OptionalLimit uint32 `protobuf:"varint,2,opt,name=optional_limit,json=optionalLimit,proto3" json:"optional_limit,omitempty"`
	// optional_cursor, if specified, indicates the cursor after which results
	// should resume being returned. The cursor can be found on the
	// BulkExportRelationshipsResponse object.
	OptionalCursor *Cursor `protobuf:"bytes,3,opt,name=optional_cursor,json=optionalCursor,proto3" json:"optional_cursor,omitempty"`
	// optional_relationship_filter, if specified, indicates the
	// filter to apply to each relationship to be exported.
	OptionalRelationshipFilter *RelationshipFilter `` /* 141-byte string literal not displayed */
	// contains filtered or unexported fields
}

BulkExportRelationshipsRequest represents a resumable request for all relationships from the server.

func (*BulkExportRelationshipsRequest) Descriptor deprecated

func (*BulkExportRelationshipsRequest) Descriptor() ([]byte, []int)

Deprecated: Use BulkExportRelationshipsRequest.ProtoReflect.Descriptor instead.

func (*BulkExportRelationshipsRequest) GetConsistency

func (x *BulkExportRelationshipsRequest) GetConsistency() *Consistency

func (*BulkExportRelationshipsRequest) GetOptionalCursor

func (x *BulkExportRelationshipsRequest) GetOptionalCursor() *Cursor

func (*BulkExportRelationshipsRequest) GetOptionalLimit

func (x *BulkExportRelationshipsRequest) GetOptionalLimit() uint32

func (*BulkExportRelationshipsRequest) GetOptionalRelationshipFilter

func (x *BulkExportRelationshipsRequest) GetOptionalRelationshipFilter() *RelationshipFilter

func (*BulkExportRelationshipsRequest) ProtoMessage

func (*BulkExportRelationshipsRequest) ProtoMessage()

func (*BulkExportRelationshipsRequest) ProtoReflect

func (*BulkExportRelationshipsRequest) Reset

func (x *BulkExportRelationshipsRequest) Reset()

func (*BulkExportRelationshipsRequest) String

type BulkExportRelationshipsResponse

type BulkExportRelationshipsResponse struct {
	AfterResultCursor *Cursor         `protobuf:"bytes,1,opt,name=after_result_cursor,json=afterResultCursor,proto3" json:"after_result_cursor,omitempty"`
	Relationships     []*Relationship `protobuf:"bytes,2,rep,name=relationships,proto3" json:"relationships,omitempty"`
	// contains filtered or unexported fields
}

BulkExportRelationshipsResponse is one page in a stream of relationship groups that meet the criteria specified by the originating request. The server will continue to stream back relationship groups as quickly as it can until all relationships have been transmitted back.

func (*BulkExportRelationshipsResponse) Descriptor deprecated

func (*BulkExportRelationshipsResponse) Descriptor() ([]byte, []int)

Deprecated: Use BulkExportRelationshipsResponse.ProtoReflect.Descriptor instead.

func (*BulkExportRelationshipsResponse) GetAfterResultCursor

func (x *BulkExportRelationshipsResponse) GetAfterResultCursor() *Cursor

func (*BulkExportRelationshipsResponse) GetRelationships

func (x *BulkExportRelationshipsResponse) GetRelationships() []*Relationship

func (*BulkExportRelationshipsResponse) ProtoMessage

func (*BulkExportRelationshipsResponse) ProtoMessage()

func (*BulkExportRelationshipsResponse) ProtoReflect

func (*BulkExportRelationshipsResponse) Reset

func (*BulkExportRelationshipsResponse) String

type BulkImportRelationshipsRequest

type BulkImportRelationshipsRequest struct {
	Relationships []*Relationship `protobuf:"bytes,1,rep,name=relationships,proto3" json:"relationships,omitempty"`
	// contains filtered or unexported fields
}

BulkImportRelationshipsRequest represents one batch of the streaming BulkImportRelationships API. The maximum size is only limited by the backing datastore, and optimal size should be determined by the calling client experimentally.

func (*BulkImportRelationshipsRequest) Descriptor deprecated

func (*BulkImportRelationshipsRequest) Descriptor() ([]byte, []int)

Deprecated: Use BulkImportRelationshipsRequest.ProtoReflect.Descriptor instead.

func (*BulkImportRelationshipsRequest) GetRelationships

func (x *BulkImportRelationshipsRequest) GetRelationships() []*Relationship

func (*BulkImportRelationshipsRequest) ProtoMessage

func (*BulkImportRelationshipsRequest) ProtoMessage()

func (*BulkImportRelationshipsRequest) ProtoReflect

func (*BulkImportRelationshipsRequest) Reset

func (x *BulkImportRelationshipsRequest) Reset()

func (*BulkImportRelationshipsRequest) String

type BulkImportRelationshipsResponse

type BulkImportRelationshipsResponse struct {
	NumLoaded uint64 `protobuf:"varint,1,opt,name=num_loaded,json=numLoaded,proto3" json:"num_loaded,omitempty"`
	// contains filtered or unexported fields
}

BulkImportRelationshipsResponse is returned on successful completion of the bulk load stream, and contains the total number of relationships loaded.

func (*BulkImportRelationshipsResponse) Descriptor deprecated

func (*BulkImportRelationshipsResponse) Descriptor() ([]byte, []int)

Deprecated: Use BulkImportRelationshipsResponse.ProtoReflect.Descriptor instead.

func (*BulkImportRelationshipsResponse) GetNumLoaded

func (x *BulkImportRelationshipsResponse) GetNumLoaded() uint64

func (*BulkImportRelationshipsResponse) ProtoMessage

func (*BulkImportRelationshipsResponse) ProtoMessage()

func (*BulkImportRelationshipsResponse) ProtoReflect

func (*BulkImportRelationshipsResponse) Reset

func (*BulkImportRelationshipsResponse) String

type CaveatEvalInfo

type CaveatEvalInfo struct {

	// expression is the expression that was evaluated.
	Expression string `protobuf:"bytes,1,opt,name=expression,proto3" json:"expression,omitempty"`
	// result is the result of the evaluation.
	Result CaveatEvalInfo_Result `protobuf:"varint,2,opt,name=result,proto3,enum=authzed.api.v1.CaveatEvalInfo_Result" json:"result,omitempty"`
	// context consists of any named values that were used for evaluating the caveat expression.
	Context *structpb.Struct `protobuf:"bytes,3,opt,name=context,proto3" json:"context,omitempty"`
	// partial_caveat_info holds information of a partially-evaluated caveated response, if applicable.
	PartialCaveatInfo *PartialCaveatInfo `protobuf:"bytes,4,opt,name=partial_caveat_info,json=partialCaveatInfo,proto3" json:"partial_caveat_info,omitempty"`
	// caveat_name is the name of the caveat that was executed, if applicable.
	CaveatName string `protobuf:"bytes,5,opt,name=caveat_name,json=caveatName,proto3" json:"caveat_name,omitempty"`
	// contains filtered or unexported fields
}

CaveatEvalInfo holds information about a caveat expression that was evaluated.

func (*CaveatEvalInfo) Descriptor deprecated

func (*CaveatEvalInfo) Descriptor() ([]byte, []int)

Deprecated: Use CaveatEvalInfo.ProtoReflect.Descriptor instead.

func (*CaveatEvalInfo) GetCaveatName

func (x *CaveatEvalInfo) GetCaveatName() string

func (*CaveatEvalInfo) GetContext

func (x *CaveatEvalInfo) GetContext() *structpb.Struct

func (*CaveatEvalInfo) GetExpression

func (x *CaveatEvalInfo) GetExpression() string

func (*CaveatEvalInfo) GetPartialCaveatInfo

func (x *CaveatEvalInfo) GetPartialCaveatInfo() *PartialCaveatInfo

func (*CaveatEvalInfo) GetResult

func (x *CaveatEvalInfo) GetResult() CaveatEvalInfo_Result

func (*CaveatEvalInfo) ProtoMessage

func (*CaveatEvalInfo) ProtoMessage()

func (*CaveatEvalInfo) ProtoReflect

func (x *CaveatEvalInfo) ProtoReflect() protoreflect.Message

func (*CaveatEvalInfo) Reset

func (x *CaveatEvalInfo) Reset()

func (*CaveatEvalInfo) String

func (x *CaveatEvalInfo) String() string

type CaveatEvalInfo_Result

type CaveatEvalInfo_Result int32
const (
	CaveatEvalInfo_RESULT_UNSPECIFIED          CaveatEvalInfo_Result = 0
	CaveatEvalInfo_RESULT_UNEVALUATED          CaveatEvalInfo_Result = 1
	CaveatEvalInfo_RESULT_FALSE                CaveatEvalInfo_Result = 2
	CaveatEvalInfo_RESULT_TRUE                 CaveatEvalInfo_Result = 3
	CaveatEvalInfo_RESULT_MISSING_SOME_CONTEXT CaveatEvalInfo_Result = 4
)

func (CaveatEvalInfo_Result) Descriptor

func (CaveatEvalInfo_Result) Enum

func (CaveatEvalInfo_Result) EnumDescriptor deprecated

func (CaveatEvalInfo_Result) EnumDescriptor() ([]byte, []int)

Deprecated: Use CaveatEvalInfo_Result.Descriptor instead.

func (CaveatEvalInfo_Result) Number

func (CaveatEvalInfo_Result) String

func (x CaveatEvalInfo_Result) String() string

func (CaveatEvalInfo_Result) Type

type CheckBulkPermissionsPair

type CheckBulkPermissionsPair struct {
	Request *CheckBulkPermissionsRequestItem `protobuf:"bytes,1,opt,name=request,proto3" json:"request,omitempty"`
	// Types that are assignable to Response:
	//
	//	*CheckBulkPermissionsPair_Item
	//	*CheckBulkPermissionsPair_Error
	Response isCheckBulkPermissionsPair_Response `protobuf_oneof:"response"`
	// contains filtered or unexported fields
}

func (*CheckBulkPermissionsPair) Descriptor deprecated

func (*CheckBulkPermissionsPair) Descriptor() ([]byte, []int)

Deprecated: Use CheckBulkPermissionsPair.ProtoReflect.Descriptor instead.

func (*CheckBulkPermissionsPair) GetError

func (x *CheckBulkPermissionsPair) GetError() *status.Status

func (*CheckBulkPermissionsPair) GetItem

func (*CheckBulkPermissionsPair) GetRequest

func (*CheckBulkPermissionsPair) GetResponse

func (m *CheckBulkPermissionsPair) GetResponse() isCheckBulkPermissionsPair_Response

func (*CheckBulkPermissionsPair) ProtoMessage

func (*CheckBulkPermissionsPair) ProtoMessage()

func (*CheckBulkPermissionsPair) ProtoReflect

func (x *CheckBulkPermissionsPair) ProtoReflect() protoreflect.Message

func (*CheckBulkPermissionsPair) Reset

func (x *CheckBulkPermissionsPair) Reset()

func (*CheckBulkPermissionsPair) String

func (x *CheckBulkPermissionsPair) String() string

type CheckBulkPermissionsPair_Error

type CheckBulkPermissionsPair_Error struct {
	Error *status.Status `protobuf:"bytes,3,opt,name=error,proto3,oneof"`
}

type CheckBulkPermissionsPair_Item

type CheckBulkPermissionsPair_Item struct {
	Item *CheckBulkPermissionsResponseItem `protobuf:"bytes,2,opt,name=item,proto3,oneof"`
}

type CheckBulkPermissionsRequest

type CheckBulkPermissionsRequest struct {
	Consistency *Consistency                       `protobuf:"bytes,1,opt,name=consistency,proto3" json:"consistency,omitempty"`
	Items       []*CheckBulkPermissionsRequestItem `protobuf:"bytes,2,rep,name=items,proto3" json:"items,omitempty"`
	// contains filtered or unexported fields
}

CheckBulkPermissionsRequest issues a check on whether a subject has permission or is a member of a relation on a specific resource for each item in the list.

The ordering of the items in the response is maintained in the response. Checks with the same subject/permission will automatically be batched for performance optimization.

func (*CheckBulkPermissionsRequest) Descriptor deprecated

func (*CheckBulkPermissionsRequest) Descriptor() ([]byte, []int)

Deprecated: Use CheckBulkPermissionsRequest.ProtoReflect.Descriptor instead.

func (*CheckBulkPermissionsRequest) GetConsistency

func (x *CheckBulkPermissionsRequest) GetConsistency() *Consistency

func (*CheckBulkPermissionsRequest) GetItems

func (*CheckBulkPermissionsRequest) ProtoMessage

func (*CheckBulkPermissionsRequest) ProtoMessage()

func (*CheckBulkPermissionsRequest) ProtoReflect

func (*CheckBulkPermissionsRequest) Reset

func (x *CheckBulkPermissionsRequest) Reset()

func (*CheckBulkPermissionsRequest) String

func (x *CheckBulkPermissionsRequest) String() string

type CheckBulkPermissionsRequestItem

type CheckBulkPermissionsRequestItem struct {
	Resource   *ObjectReference  `protobuf:"bytes,1,opt,name=resource,proto3" json:"resource,omitempty"`
	Permission string            `protobuf:"bytes,2,opt,name=permission,proto3" json:"permission,omitempty"`
	Subject    *SubjectReference `protobuf:"bytes,3,opt,name=subject,proto3" json:"subject,omitempty"`
	Context    *structpb.Struct  `protobuf:"bytes,4,opt,name=context,proto3" json:"context,omitempty"`
	// contains filtered or unexported fields
}

func (*CheckBulkPermissionsRequestItem) Descriptor deprecated

func (*CheckBulkPermissionsRequestItem) Descriptor() ([]byte, []int)

Deprecated: Use CheckBulkPermissionsRequestItem.ProtoReflect.Descriptor instead.

func (*CheckBulkPermissionsRequestItem) GetContext

func (*CheckBulkPermissionsRequestItem) GetPermission

func (x *CheckBulkPermissionsRequestItem) GetPermission() string

func (*CheckBulkPermissionsRequestItem) GetResource

func (*CheckBulkPermissionsRequestItem) GetSubject

func (*CheckBulkPermissionsRequestItem) ProtoMessage

func (*CheckBulkPermissionsRequestItem) ProtoMessage()

func (*CheckBulkPermissionsRequestItem) ProtoReflect

func (*CheckBulkPermissionsRequestItem) Reset

func (*CheckBulkPermissionsRequestItem) String

type CheckBulkPermissionsResponse

type CheckBulkPermissionsResponse struct {
	CheckedAt *ZedToken                   `protobuf:"bytes,1,opt,name=checked_at,json=checkedAt,proto3" json:"checked_at,omitempty"`
	Pairs     []*CheckBulkPermissionsPair `protobuf:"bytes,2,rep,name=pairs,proto3" json:"pairs,omitempty"`
	// contains filtered or unexported fields
}

func (*CheckBulkPermissionsResponse) Descriptor deprecated

func (*CheckBulkPermissionsResponse) Descriptor() ([]byte, []int)

Deprecated: Use CheckBulkPermissionsResponse.ProtoReflect.Descriptor instead.

func (*CheckBulkPermissionsResponse) GetCheckedAt

func (x *CheckBulkPermissionsResponse) GetCheckedAt() *ZedToken

func (*CheckBulkPermissionsResponse) GetPairs

func (*CheckBulkPermissionsResponse) ProtoMessage

func (*CheckBulkPermissionsResponse) ProtoMessage()

func (*CheckBulkPermissionsResponse) ProtoReflect

func (*CheckBulkPermissionsResponse) Reset

func (x *CheckBulkPermissionsResponse) Reset()

func (*CheckBulkPermissionsResponse) String

type CheckBulkPermissionsResponseItem

type CheckBulkPermissionsResponseItem struct {
	Permissionship    CheckPermissionResponse_Permissionship `` /* 141-byte string literal not displayed */
	PartialCaveatInfo *PartialCaveatInfo                     `protobuf:"bytes,2,opt,name=partial_caveat_info,json=partialCaveatInfo,proto3" json:"partial_caveat_info,omitempty"`
	// contains filtered or unexported fields
}

func (*CheckBulkPermissionsResponseItem) Descriptor deprecated

func (*CheckBulkPermissionsResponseItem) Descriptor() ([]byte, []int)

Deprecated: Use CheckBulkPermissionsResponseItem.ProtoReflect.Descriptor instead.

func (*CheckBulkPermissionsResponseItem) GetPartialCaveatInfo

func (x *CheckBulkPermissionsResponseItem) GetPartialCaveatInfo() *PartialCaveatInfo

func (*CheckBulkPermissionsResponseItem) GetPermissionship

func (*CheckBulkPermissionsResponseItem) ProtoMessage

func (*CheckBulkPermissionsResponseItem) ProtoMessage()

func (*CheckBulkPermissionsResponseItem) ProtoReflect

func (*CheckBulkPermissionsResponseItem) Reset

func (*CheckBulkPermissionsResponseItem) String

type CheckDebugTrace

type CheckDebugTrace struct {

	// resource holds the resource on which the Check was performed.
	Resource *ObjectReference `protobuf:"bytes,1,opt,name=resource,proto3" json:"resource,omitempty"`
	// permission holds the name of the permission or relation on which the Check was performed.
	Permission string `protobuf:"bytes,2,opt,name=permission,proto3" json:"permission,omitempty"`
	// permission_type holds information indicating whether it was a permission or relation.
	PermissionType CheckDebugTrace_PermissionType `` /* 155-byte string literal not displayed */
	// subject holds the subject on which the Check was performed. This will be static across all calls within
	// the same Check tree.
	Subject *SubjectReference `protobuf:"bytes,4,opt,name=subject,proto3" json:"subject,omitempty"`
	// result holds the result of the Check call.
	Result CheckDebugTrace_Permissionship `protobuf:"varint,5,opt,name=result,proto3,enum=authzed.api.v1.CheckDebugTrace_Permissionship" json:"result,omitempty"`
	// caveat_evaluation_info holds information about the caveat evaluated for this step of the trace.
	CaveatEvaluationInfo *CaveatEvalInfo `protobuf:"bytes,8,opt,name=caveat_evaluation_info,json=caveatEvaluationInfo,proto3" json:"caveat_evaluation_info,omitempty"`
	// duration holds the time spent executing this Check operation.
	Duration *durationpb.Duration `protobuf:"bytes,9,opt,name=duration,proto3" json:"duration,omitempty"`
	// resolution holds information about how the problem was resolved.
	//
	// Types that are assignable to Resolution:
	//
	//	*CheckDebugTrace_WasCachedResult
	//	*CheckDebugTrace_SubProblems_
	Resolution isCheckDebugTrace_Resolution `protobuf_oneof:"resolution"`
	// contains filtered or unexported fields
}

CheckDebugTrace is a recursive trace of the requests made for resolving a CheckPermission API call.

func (*CheckDebugTrace) Descriptor deprecated

func (*CheckDebugTrace) Descriptor() ([]byte, []int)

Deprecated: Use CheckDebugTrace.ProtoReflect.Descriptor instead.

func (*CheckDebugTrace) GetCaveatEvaluationInfo

func (x *CheckDebugTrace) GetCaveatEvaluationInfo() *CaveatEvalInfo

func (*CheckDebugTrace) GetDuration

func (x *CheckDebugTrace) GetDuration() *durationpb.Duration

func (*CheckDebugTrace) GetPermission

func (x *CheckDebugTrace) GetPermission() string

func (*CheckDebugTrace) GetPermissionType

func (x *CheckDebugTrace) GetPermissionType() CheckDebugTrace_PermissionType

func (*CheckDebugTrace) GetResolution

func (m *CheckDebugTrace) GetResolution() isCheckDebugTrace_Resolution

func (*CheckDebugTrace) GetResource

func (x *CheckDebugTrace) GetResource() *ObjectReference

func (*CheckDebugTrace) GetResult

func (*CheckDebugTrace) GetSubProblems

func (x *CheckDebugTrace) GetSubProblems() *CheckDebugTrace_SubProblems

func (*CheckDebugTrace) GetSubject

func (x *CheckDebugTrace) GetSubject() *SubjectReference

func (*CheckDebugTrace) GetWasCachedResult

func (x *CheckDebugTrace) GetWasCachedResult() bool

func (*CheckDebugTrace) ProtoMessage

func (*CheckDebugTrace) ProtoMessage()

func (*CheckDebugTrace) ProtoReflect

func (x *CheckDebugTrace) ProtoReflect() protoreflect.Message

func (*CheckDebugTrace) Reset

func (x *CheckDebugTrace) Reset()

func (*CheckDebugTrace) String

func (x *CheckDebugTrace) String() string

type CheckDebugTrace_PermissionType

type CheckDebugTrace_PermissionType int32
const (
	CheckDebugTrace_PERMISSION_TYPE_UNSPECIFIED CheckDebugTrace_PermissionType = 0
	CheckDebugTrace_PERMISSION_TYPE_RELATION    CheckDebugTrace_PermissionType = 1
	CheckDebugTrace_PERMISSION_TYPE_PERMISSION  CheckDebugTrace_PermissionType = 2
)

func (CheckDebugTrace_PermissionType) Descriptor

func (CheckDebugTrace_PermissionType) Enum

func (CheckDebugTrace_PermissionType) EnumDescriptor deprecated

func (CheckDebugTrace_PermissionType) EnumDescriptor() ([]byte, []int)

Deprecated: Use CheckDebugTrace_PermissionType.Descriptor instead.

func (CheckDebugTrace_PermissionType) Number

func (CheckDebugTrace_PermissionType) String

func (CheckDebugTrace_PermissionType) Type

type CheckDebugTrace_Permissionship

type CheckDebugTrace_Permissionship int32
const (
	CheckDebugTrace_PERMISSIONSHIP_UNSPECIFIED            CheckDebugTrace_Permissionship = 0
	CheckDebugTrace_PERMISSIONSHIP_NO_PERMISSION          CheckDebugTrace_Permissionship = 1
	CheckDebugTrace_PERMISSIONSHIP_HAS_PERMISSION         CheckDebugTrace_Permissionship = 2
	CheckDebugTrace_PERMISSIONSHIP_CONDITIONAL_PERMISSION CheckDebugTrace_Permissionship = 3
)

func (CheckDebugTrace_Permissionship) Descriptor

func (CheckDebugTrace_Permissionship) Enum

func (CheckDebugTrace_Permissionship) EnumDescriptor deprecated

func (CheckDebugTrace_Permissionship) EnumDescriptor() ([]byte, []int)

Deprecated: Use CheckDebugTrace_Permissionship.Descriptor instead.

func (CheckDebugTrace_Permissionship) Number

func (CheckDebugTrace_Permissionship) String

func (CheckDebugTrace_Permissionship) Type

type CheckDebugTrace_SubProblems

type CheckDebugTrace_SubProblems struct {
	Traces []*CheckDebugTrace `protobuf:"bytes,1,rep,name=traces,proto3" json:"traces,omitempty"`
	// contains filtered or unexported fields
}

func (*CheckDebugTrace_SubProblems) Descriptor deprecated

func (*CheckDebugTrace_SubProblems) Descriptor() ([]byte, []int)

Deprecated: Use CheckDebugTrace_SubProblems.ProtoReflect.Descriptor instead.

func (*CheckDebugTrace_SubProblems) GetTraces

func (x *CheckDebugTrace_SubProblems) GetTraces() []*CheckDebugTrace

func (*CheckDebugTrace_SubProblems) ProtoMessage

func (*CheckDebugTrace_SubProblems) ProtoMessage()

func (*CheckDebugTrace_SubProblems) ProtoReflect

func (*CheckDebugTrace_SubProblems) Reset

func (x *CheckDebugTrace_SubProblems) Reset()

func (*CheckDebugTrace_SubProblems) String

func (x *CheckDebugTrace_SubProblems) String() string

type CheckDebugTrace_SubProblems_

type CheckDebugTrace_SubProblems_ struct {
	// sub_problems holds the sub problems that were executed to resolve the answer to this Check. An empty list
	// and a permissionship of PERMISSIONSHIP_HAS_PERMISSION indicates the subject was found within this relation.
	SubProblems *CheckDebugTrace_SubProblems `protobuf:"bytes,7,opt,name=sub_problems,json=subProblems,proto3,oneof"`
}

type CheckDebugTrace_WasCachedResult

type CheckDebugTrace_WasCachedResult struct {
	// was_cached_result, if true, indicates that the result was found in the cache and returned directly.
	WasCachedResult bool `protobuf:"varint,6,opt,name=was_cached_result,json=wasCachedResult,proto3,oneof"`
}

type CheckPermissionRequest

type CheckPermissionRequest struct {
	Consistency *Consistency `protobuf:"bytes,1,opt,name=consistency,proto3" json:"consistency,omitempty"`
	// resource is the resource on which to check the permission or relation.
	Resource *ObjectReference `protobuf:"bytes,2,opt,name=resource,proto3" json:"resource,omitempty"`
	// permission is the name of the permission (or relation) on which to execute
	// the check.
	Permission string `protobuf:"bytes,3,opt,name=permission,proto3" json:"permission,omitempty"`
	// subject is the subject that will be checked for the permission or relation.
	Subject *SubjectReference `protobuf:"bytes,4,opt,name=subject,proto3" json:"subject,omitempty"`
	// context consists of named values that are injected into the caveat evaluation context
	Context *structpb.Struct `protobuf:"bytes,5,opt,name=context,proto3" json:"context,omitempty"`
	// with_tracing, if true, indicates that the response should include a debug trace.
	// This can be useful for debugging and performance analysis, but adds a small amount
	// of compute overhead to the request.
	WithTracing bool `protobuf:"varint,6,opt,name=with_tracing,json=withTracing,proto3" json:"with_tracing,omitempty"`
	// contains filtered or unexported fields
}

CheckPermissionRequest issues a check on whether a subject has a permission or is a member of a relation, on a specific resource.

func (*CheckPermissionRequest) Descriptor deprecated

func (*CheckPermissionRequest) Descriptor() ([]byte, []int)

Deprecated: Use CheckPermissionRequest.ProtoReflect.Descriptor instead.

func (*CheckPermissionRequest) GetConsistency

func (x *CheckPermissionRequest) GetConsistency() *Consistency

func (*CheckPermissionRequest) GetContext

func (x *CheckPermissionRequest) GetContext() *structpb.Struct

func (*CheckPermissionRequest) GetPermission

func (x *CheckPermissionRequest) GetPermission() string

func (*CheckPermissionRequest) GetResource

func (x *CheckPermissionRequest) GetResource() *ObjectReference

func (*CheckPermissionRequest) GetSubject

func (x *CheckPermissionRequest) GetSubject() *SubjectReference

func (*CheckPermissionRequest) GetWithTracing

func (x *CheckPermissionRequest) GetWithTracing() bool

func (*CheckPermissionRequest) ProtoMessage

func (*CheckPermissionRequest) ProtoMessage()

func (*CheckPermissionRequest) ProtoReflect

func (x *CheckPermissionRequest) ProtoReflect() protoreflect.Message

func (*CheckPermissionRequest) Reset

func (x *CheckPermissionRequest) Reset()

func (*CheckPermissionRequest) String

func (x *CheckPermissionRequest) String() string

type CheckPermissionResponse

type CheckPermissionResponse struct {
	CheckedAt *ZedToken `protobuf:"bytes,1,opt,name=checked_at,json=checkedAt,proto3" json:"checked_at,omitempty"`
	// Permissionship communicates whether or not the subject has the requested
	// permission or has a relationship with the given resource, over the given
	// relation.
	//
	// This value will be authzed.api.v1.PERMISSIONSHIP_HAS_PERMISSION if the
	// requested subject is a member of the computed permission set or there
	// exists a relationship with the requested relation from the given resource
	// to the given subject.
	Permissionship CheckPermissionResponse_Permissionship `` /* 141-byte string literal not displayed */
	// partial_caveat_info holds information of a partially-evaluated caveated response
	PartialCaveatInfo *PartialCaveatInfo `protobuf:"bytes,3,opt,name=partial_caveat_info,json=partialCaveatInfo,proto3" json:"partial_caveat_info,omitempty"`
	// debug_trace is the debugging trace of this check, if requested.
	DebugTrace *DebugInformation `protobuf:"bytes,4,opt,name=debug_trace,json=debugTrace,proto3" json:"debug_trace,omitempty"`
	// contains filtered or unexported fields
}

func (*CheckPermissionResponse) Descriptor deprecated

func (*CheckPermissionResponse) Descriptor() ([]byte, []int)

Deprecated: Use CheckPermissionResponse.ProtoReflect.Descriptor instead.

func (*CheckPermissionResponse) GetCheckedAt

func (x *CheckPermissionResponse) GetCheckedAt() *ZedToken

func (*CheckPermissionResponse) GetDebugTrace

func (x *CheckPermissionResponse) GetDebugTrace() *DebugInformation

func (*CheckPermissionResponse) GetPartialCaveatInfo

func (x *CheckPermissionResponse) GetPartialCaveatInfo() *PartialCaveatInfo

func (*CheckPermissionResponse) GetPermissionship

func (*CheckPermissionResponse) ProtoMessage

func (*CheckPermissionResponse) ProtoMessage()

func (*CheckPermissionResponse) ProtoReflect

func (x *CheckPermissionResponse) ProtoReflect() protoreflect.Message

func (*CheckPermissionResponse) Reset

func (x *CheckPermissionResponse) Reset()

func (*CheckPermissionResponse) String

func (x *CheckPermissionResponse) String() string

type CheckPermissionResponse_Permissionship

type CheckPermissionResponse_Permissionship int32
const (
	CheckPermissionResponse_PERMISSIONSHIP_UNSPECIFIED            CheckPermissionResponse_Permissionship = 0
	CheckPermissionResponse_PERMISSIONSHIP_NO_PERMISSION          CheckPermissionResponse_Permissionship = 1
	CheckPermissionResponse_PERMISSIONSHIP_HAS_PERMISSION         CheckPermissionResponse_Permissionship = 2
	CheckPermissionResponse_PERMISSIONSHIP_CONDITIONAL_PERMISSION CheckPermissionResponse_Permissionship = 3
)

func (CheckPermissionResponse_Permissionship) Descriptor

func (CheckPermissionResponse_Permissionship) Enum

func (CheckPermissionResponse_Permissionship) EnumDescriptor deprecated

func (CheckPermissionResponse_Permissionship) EnumDescriptor() ([]byte, []int)

Deprecated: Use CheckPermissionResponse_Permissionship.Descriptor instead.

func (CheckPermissionResponse_Permissionship) Number

func (CheckPermissionResponse_Permissionship) String

func (CheckPermissionResponse_Permissionship) Type

type Consistency

type Consistency struct {

	// Types that are assignable to Requirement:
	//
	//	*Consistency_MinimizeLatency
	//	*Consistency_AtLeastAsFresh
	//	*Consistency_AtExactSnapshot
	//	*Consistency_FullyConsistent
	Requirement isConsistency_Requirement `protobuf_oneof:"requirement"`
	// contains filtered or unexported fields
}

Consistency will define how a request is handled by the backend. By defining a consistency requirement, and a token at which those requirements should be applied, where applicable.

func (*Consistency) Descriptor deprecated

func (*Consistency) Descriptor() ([]byte, []int)

Deprecated: Use Consistency.ProtoReflect.Descriptor instead.

func (*Consistency) GetAtExactSnapshot

func (x *Consistency) GetAtExactSnapshot() *ZedToken

func (*Consistency) GetAtLeastAsFresh

func (x *Consistency) GetAtLeastAsFresh() *ZedToken

func (*Consistency) GetFullyConsistent

func (x *Consistency) GetFullyConsistent() bool

func (*Consistency) GetMinimizeLatency

func (x *Consistency) GetMinimizeLatency() bool

func (*Consistency) GetRequirement

func (m *Consistency) GetRequirement() isConsistency_Requirement

func (*Consistency) ProtoMessage

func (*Consistency) ProtoMessage()

func (*Consistency) ProtoReflect

func (x *Consistency) ProtoReflect() protoreflect.Message

func (*Consistency) Reset

func (x *Consistency) Reset()

func (*Consistency) String

func (x *Consistency) String() string

type Consistency_AtExactSnapshot

type Consistency_AtExactSnapshot struct {
	// at_exact_snapshot indicates that all data used in the API call must be
	// *at the given* snapshot in time; if the snapshot is no longer available,
	// an error will be returned to the caller.
	AtExactSnapshot *ZedToken `protobuf:"bytes,3,opt,name=at_exact_snapshot,json=atExactSnapshot,proto3,oneof"`
}

type Consistency_AtLeastAsFresh

type Consistency_AtLeastAsFresh struct {
	// at_least_as_fresh indicates that all data used in the API call must be
	// *at least as fresh* as that found in the ZedToken; more recent data might
	// be used if available or faster.
	AtLeastAsFresh *ZedToken `protobuf:"bytes,2,opt,name=at_least_as_fresh,json=atLeastAsFresh,proto3,oneof"`
}

type Consistency_FullyConsistent

type Consistency_FullyConsistent struct {
	// fully_consistent indicates that all data used in the API call *must* be
	// at the most recent snapshot found.
	//
	// NOTE: using this method can be *quite slow*, so unless there is a need to
	// do so, it is recommended to use `at_least_as_fresh` with a stored
	// ZedToken.
	FullyConsistent bool `protobuf:"varint,4,opt,name=fully_consistent,json=fullyConsistent,proto3,oneof"`
}

type Consistency_MinimizeLatency

type Consistency_MinimizeLatency struct {
	// minimize_latency indicates that the latency for the call should be
	// minimized by having the system select the fastest snapshot available.
	MinimizeLatency bool `protobuf:"varint,1,opt,name=minimize_latency,json=minimizeLatency,proto3,oneof"`
}

type ContextualizedCaveat

type ContextualizedCaveat struct {

	// caveat_name is the name of the caveat expression to use, as defined in the schema
	CaveatName string `protobuf:"bytes,1,opt,name=caveat_name,json=caveatName,proto3" json:"caveat_name,omitempty"`
	// context consists of any named values that are defined at write time for the caveat expression
	Context *structpb.Struct `protobuf:"bytes,2,opt,name=context,proto3" json:"context,omitempty"`
	// contains filtered or unexported fields
}

ContextualizedCaveat represents a reference to a caveat to be used by caveated relationships. The context consists of key-value pairs that will be injected at evaluation time. The keys must match the arguments defined on the caveat in the schema.

func (*ContextualizedCaveat) Descriptor deprecated

func (*ContextualizedCaveat) Descriptor() ([]byte, []int)

Deprecated: Use ContextualizedCaveat.ProtoReflect.Descriptor instead.

func (*ContextualizedCaveat) GetCaveatName

func (x *ContextualizedCaveat) GetCaveatName() string

func (*ContextualizedCaveat) GetContext

func (x *ContextualizedCaveat) GetContext() *structpb.Struct

func (*ContextualizedCaveat) ProtoMessage

func (*ContextualizedCaveat) ProtoMessage()

func (*ContextualizedCaveat) ProtoReflect

func (x *ContextualizedCaveat) ProtoReflect() protoreflect.Message

func (*ContextualizedCaveat) Reset

func (x *ContextualizedCaveat) Reset()

func (*ContextualizedCaveat) String

func (x *ContextualizedCaveat) String() string

type Cursor

type Cursor struct {
	Token string `protobuf:"bytes,1,opt,name=token,proto3" json:"token,omitempty"`
	// contains filtered or unexported fields
}

Cursor is used to provide resumption of listing between calls to APIs such as LookupResources.

func (*Cursor) Descriptor deprecated

func (*Cursor) Descriptor() ([]byte, []int)

Deprecated: Use Cursor.ProtoReflect.Descriptor instead.

func (*Cursor) GetToken

func (x *Cursor) GetToken() string

func (*Cursor) ProtoMessage

func (*Cursor) ProtoMessage()

func (*Cursor) ProtoReflect

func (x *Cursor) ProtoReflect() protoreflect.Message

func (*Cursor) Reset

func (x *Cursor) Reset()

func (*Cursor) String

func (x *Cursor) String() string

type DebugInformation

type DebugInformation struct {

	// check holds debug information about a check request.
	Check *CheckDebugTrace `protobuf:"bytes,1,opt,name=check,proto3" json:"check,omitempty"`
	// schema_used holds the schema used for the request.
	SchemaUsed string `protobuf:"bytes,2,opt,name=schema_used,json=schemaUsed,proto3" json:"schema_used,omitempty"`
	// contains filtered or unexported fields
}

DebugInformation defines debug information returned by an API call in a footer when requested with a specific debugging header.

The specific debug information returned will depend on the type of the API call made.

See the github.com/authzed/authzed-go project for the specific header and footer names.

func (*DebugInformation) Descriptor deprecated

func (*DebugInformation) Descriptor() ([]byte, []int)

Deprecated: Use DebugInformation.ProtoReflect.Descriptor instead.

func (*DebugInformation) GetCheck

func (x *DebugInformation) GetCheck() *CheckDebugTrace

func (*DebugInformation) GetSchemaUsed

func (x *DebugInformation) GetSchemaUsed() string

func (*DebugInformation) ProtoMessage

func (*DebugInformation) ProtoMessage()

func (*DebugInformation) ProtoReflect

func (x *DebugInformation) ProtoReflect() protoreflect.Message

func (*DebugInformation) Reset

func (x *DebugInformation) Reset()

func (*DebugInformation) String

func (x *DebugInformation) String() string

type DeleteRelationshipsRequest

type DeleteRelationshipsRequest struct {
	RelationshipFilter    *RelationshipFilter `protobuf:"bytes,1,opt,name=relationship_filter,json=relationshipFilter,proto3" json:"relationship_filter,omitempty"`
	OptionalPreconditions []*Precondition     `protobuf:"bytes,2,rep,name=optional_preconditions,json=optionalPreconditions,proto3" json:"optional_preconditions,omitempty"` // To be bounded by configuration
	// optional_limit, if non-zero, specifies the limit on the number of relationships to be deleted.
	// If there are more matching relationships found to be deleted than the limit specified here,
	// the deletion call will fail with an error to prevent partial deletion. If partial deletion
	// is needed, specify below that partial deletion is allowed. Partial deletions can be used
	// in a loop to delete large amounts of relationships in a *non-transactional* manner.
	OptionalLimit uint32 `protobuf:"varint,3,opt,name=optional_limit,json=optionalLimit,proto3" json:"optional_limit,omitempty"`
	// optional_allow_partial_deletions, if true and a limit is specified, will delete matching found
	// relationships up to the count specified in optional_limit, and no more.
	OptionalAllowPartialDeletions bool `` /* 153-byte string literal not displayed */
	// contains filtered or unexported fields
}

DeleteRelationshipsRequest specifies which Relationships should be deleted, requesting the delete of *ALL* relationships that match the specified filters. If the optional_preconditions parameter is included, all of the specified preconditions must also be satisfied before the delete will be executed.

func (*DeleteRelationshipsRequest) Descriptor deprecated

func (*DeleteRelationshipsRequest) Descriptor() ([]byte, []int)

Deprecated: Use DeleteRelationshipsRequest.ProtoReflect.Descriptor instead.

func (*DeleteRelationshipsRequest) GetOptionalAllowPartialDeletions

func (x *DeleteRelationshipsRequest) GetOptionalAllowPartialDeletions() bool

func (*DeleteRelationshipsRequest) GetOptionalLimit

func (x *DeleteRelationshipsRequest) GetOptionalLimit() uint32

func (*DeleteRelationshipsRequest) GetOptionalPreconditions

func (x *DeleteRelationshipsRequest) GetOptionalPreconditions() []*Precondition

func (*DeleteRelationshipsRequest) GetRelationshipFilter

func (x *DeleteRelationshipsRequest) GetRelationshipFilter() *RelationshipFilter

func (*DeleteRelationshipsRequest) ProtoMessage

func (*DeleteRelationshipsRequest) ProtoMessage()

func (*DeleteRelationshipsRequest) ProtoReflect

func (*DeleteRelationshipsRequest) Reset

func (x *DeleteRelationshipsRequest) Reset()

func (*DeleteRelationshipsRequest) String

func (x *DeleteRelationshipsRequest) String() string

type DeleteRelationshipsResponse

type DeleteRelationshipsResponse struct {

	// deleted_at is the revision at which the relationships were deleted.
	DeletedAt *ZedToken `protobuf:"bytes,1,opt,name=deleted_at,json=deletedAt,proto3" json:"deleted_at,omitempty"`
	// deletion_progress is an enumeration of the possible outcomes that occurred when attempting to delete the specified relationships.
	DeletionProgress DeleteRelationshipsResponse_DeletionProgress `` /* 175-byte string literal not displayed */
	// contains filtered or unexported fields
}

func (*DeleteRelationshipsResponse) Descriptor deprecated

func (*DeleteRelationshipsResponse) Descriptor() ([]byte, []int)

Deprecated: Use DeleteRelationshipsResponse.ProtoReflect.Descriptor instead.

func (*DeleteRelationshipsResponse) GetDeletedAt

func (x *DeleteRelationshipsResponse) GetDeletedAt() *ZedToken

func (*DeleteRelationshipsResponse) GetDeletionProgress

func (*DeleteRelationshipsResponse) ProtoMessage

func (*DeleteRelationshipsResponse) ProtoMessage()

func (*DeleteRelationshipsResponse) ProtoReflect

func (*DeleteRelationshipsResponse) Reset

func (x *DeleteRelationshipsResponse) Reset()

func (*DeleteRelationshipsResponse) String

func (x *DeleteRelationshipsResponse) String() string

type DeleteRelationshipsResponse_DeletionProgress

type DeleteRelationshipsResponse_DeletionProgress int32
const (
	DeleteRelationshipsResponse_DELETION_PROGRESS_UNSPECIFIED DeleteRelationshipsResponse_DeletionProgress = 0
	// DELETION_PROGRESS_COMPLETE indicates that all remaining relationships matching the filter
	// were deleted. Will be returned even if no relationships were deleted.
	DeleteRelationshipsResponse_DELETION_PROGRESS_COMPLETE DeleteRelationshipsResponse_DeletionProgress = 1
	// DELETION_PROGRESS_PARTIAL indicates that a subset of the relationships matching the filter
	// were deleted. Only returned if optional_allow_partial_deletions was true, an optional_limit was
	// specified, and there existed more relationships matching the filter than optional_limit would allow.
	// Once all remaining relationships have been deleted, DELETION_PROGRESS_COMPLETE will be returned.
	DeleteRelationshipsResponse_DELETION_PROGRESS_PARTIAL DeleteRelationshipsResponse_DeletionProgress = 2
)

func (DeleteRelationshipsResponse_DeletionProgress) Descriptor

func (DeleteRelationshipsResponse_DeletionProgress) Enum

func (DeleteRelationshipsResponse_DeletionProgress) EnumDescriptor deprecated

func (DeleteRelationshipsResponse_DeletionProgress) EnumDescriptor() ([]byte, []int)

Deprecated: Use DeleteRelationshipsResponse_DeletionProgress.Descriptor instead.

func (DeleteRelationshipsResponse_DeletionProgress) Number

func (DeleteRelationshipsResponse_DeletionProgress) String

func (DeleteRelationshipsResponse_DeletionProgress) Type

type DirectSubjectSet

type DirectSubjectSet struct {
	Subjects []*SubjectReference `protobuf:"bytes,1,rep,name=subjects,proto3" json:"subjects,omitempty"`
	// contains filtered or unexported fields
}

DirectSubjectSet is a subject set which is simply a collection of subjects.

func (*DirectSubjectSet) Descriptor deprecated

func (*DirectSubjectSet) Descriptor() ([]byte, []int)

Deprecated: Use DirectSubjectSet.ProtoReflect.Descriptor instead.

func (*DirectSubjectSet) GetSubjects

func (x *DirectSubjectSet) GetSubjects() []*SubjectReference

func (*DirectSubjectSet) ProtoMessage

func (*DirectSubjectSet) ProtoMessage()

func (*DirectSubjectSet) ProtoReflect

func (x *DirectSubjectSet) ProtoReflect() protoreflect.Message

func (*DirectSubjectSet) Reset

func (x *DirectSubjectSet) Reset()

func (*DirectSubjectSet) String

func (x *DirectSubjectSet) String() string

type ErrorReason

type ErrorReason int32

Defines the supported values for `google.rpc.ErrorInfo.reason` for the `authzed.com` error domain.

const (
	// Do not use this default value.
	ErrorReason_ERROR_REASON_UNSPECIFIED ErrorReason = 0
	// The request gave a schema that could not be parsed.
	//
	// Example of an ErrorInfo:
	//
	//	{
	//	  "reason": "ERROR_REASON_SCHEMA_PARSE_ERROR",
	//	  "domain": "authzed.com",
	//	  "metadata": {
	//	    "start_line_number": "1",
	//	    "start_column_position": "19",
	//	    "end_line_number": "1",
	//	    "end_column_position": "19",
	//	    "source_code": "somedefinition",
	//	  }
	//	}
	//
	// The line numbers and column positions are 0-indexed and may not be present.
	ErrorReason_ERROR_REASON_SCHEMA_PARSE_ERROR ErrorReason = 1
	// The request contains a schema with a type error.
	//
	// Example of an ErrorInfo:
	//
	//	{
	//	  "reason": "ERROR_REASON_SCHEMA_TYPE_ERROR",
	//	  "domain": "authzed.com",
	//	  "metadata": {
	//	    "definition_name": "somedefinition",
	//	    ... additional keys based on the kind of type error ...
	//	  }
	//	}
	ErrorReason_ERROR_REASON_SCHEMA_TYPE_ERROR ErrorReason = 2
	// The request referenced an unknown object definition in the schema.
	//
	// Example of an ErrorInfo:
	//
	//	{
	//	  "reason": "ERROR_REASON_UNKNOWN_DEFINITION",
	//	  "domain": "authzed.com",
	//	  "metadata": {
	//	    "definition_name": "somedefinition"
	//	  }
	//	}
	ErrorReason_ERROR_REASON_UNKNOWN_DEFINITION ErrorReason = 3
	// The request referenced an unknown relation or permission under a definition in the schema.
	//
	// Example of an ErrorInfo:
	//
	//	{
	//	  "reason": "ERROR_REASON_UNKNOWN_RELATION_OR_PERMISSION",
	//	  "domain": "authzed.com",
	//	  "metadata": {
	//	    "definition_name": "somedefinition",
	//	    "relation_or_permission_name": "somepermission"
	//	  }
	//	}
	ErrorReason_ERROR_REASON_UNKNOWN_RELATION_OR_PERMISSION ErrorReason = 4
	// The WriteRelationships request contained more updates than the maximum configured.
	//
	// Example of an ErrorInfo:
	//
	//	{ "reason": "ERROR_REASON_TOO_MANY_UPDATES_IN_REQUEST",
	//	  "domain": "authzed.com",
	//	  "metadata": {
	//	    "update_count": "525",
	//	    "maximum_updates_allowed": "500",
	//	  }
	//	}
	ErrorReason_ERROR_REASON_TOO_MANY_UPDATES_IN_REQUEST ErrorReason = 5
	// The request contained more preconditions than the maximum configured.
	//
	// Example of an ErrorInfo:
	//
	//	{
	//	  "reason": "ERROR_REASON_TOO_MANY_PRECONDITIONS_IN_REQUEST",
	//	  "domain": "authzed.com",
	//	  "metadata": {
	//	    "precondition_count": "525",
	//	    "maximum_preconditions_allowed": "500",
	//	  }
	//	}
	ErrorReason_ERROR_REASON_TOO_MANY_PRECONDITIONS_IN_REQUEST ErrorReason = 6
	// The request contained a precondition that failed.
	//
	// Example of an ErrorInfo:
	//
	//	{
	//	  "reason": "ERROR_REASON_WRITE_OR_DELETE_PRECONDITION_FAILURE",
	//	  "domain": "authzed.com",
	//	  "metadata": {
	//	    "precondition_resource_type": "document",
	//	    ... other fields for the filter ...
	//	    "precondition_operation": "MUST_EXIST",
	//	  }
	//	}
	ErrorReason_ERROR_REASON_WRITE_OR_DELETE_PRECONDITION_FAILURE ErrorReason = 7
	// A write or delete request was made to an instance that is deployed in read-only mode.
	//
	// Example of an ErrorInfo:
	//
	//	{
	//	  "reason": "ERROR_REASON_SERVICE_READ_ONLY",
	//	  "domain": "authzed.com"
	//	}
	ErrorReason_ERROR_REASON_SERVICE_READ_ONLY ErrorReason = 8
	// The request referenced an unknown caveat in the schema.
	//
	// Example of an ErrorInfo:
	//
	//	{
	//	  "reason": "ERROR_REASON_UNKNOWN_CAVEAT",
	//	  "domain": "authzed.com",
	//	  "metadata": {
	//	    "caveat_name": "somecaveat"
	//	  }
	//	}
	ErrorReason_ERROR_REASON_UNKNOWN_CAVEAT ErrorReason = 9
	// The request tries to use a subject type that was not valid for a relation.
	//
	// Example of an ErrorInfo:
	//
	//	{
	//	  "reason": "ERROR_REASON_INVALID_SUBJECT_TYPE",
	//	  "domain": "authzed.com",
	//	  "metadata": {
	//	    "definition_name": "somedefinition",
	//	    "relation_name": "somerelation",
	//	    "subject_type": "user:*"
	//	  }
	//	}
	ErrorReason_ERROR_REASON_INVALID_SUBJECT_TYPE ErrorReason = 10
	// The request tries to specify a caveat parameter value with the wrong type.
	//
	// Example of an ErrorInfo:
	//
	//	{
	//	  "reason": "ERROR_REASON_CAVEAT_PARAMETER_TYPE_ERROR",
	//	  "domain": "authzed.com",
	//	  "metadata": {
	//	    "definition_name": "somedefinition",
	//	    "relation_name": "somerelation",
	//	    "caveat_name": "somecaveat",
	//	    "parameter_name": "someparameter",
	//	    "expected_type": "int",
	//	  }
	//	}
	ErrorReason_ERROR_REASON_CAVEAT_PARAMETER_TYPE_ERROR ErrorReason = 11
	// The request tries to perform two or more updates on the same relationship in the same WriteRelationships call.
	//
	// Example of an ErrorInfo:
	//
	//	{
	//	  "reason": "ERROR_REASON_UPDATES_ON_SAME_RELATIONSHIP",
	//	  "domain": "authzed.com",
	//	  "metadata": {
	//	    "definition_name": "somedefinition",
	//	    "relationship": "somerelationship",
	//	  }
	//	}
	ErrorReason_ERROR_REASON_UPDATES_ON_SAME_RELATIONSHIP ErrorReason = 12
	// The request tries to write a relationship on a permission instead of a relation.
	//
	// Example of an ErrorInfo:
	//
	//	{
	//	  "reason": "ERROR_REASON_CANNOT_UPDATE_PERMISSION",
	//	  "domain": "authzed.com",
	//	  "metadata": {
	//	    "definition_name": "somedefinition",
	//	    "permission_name": "somerelation",
	//	  }
	//	}
	ErrorReason_ERROR_REASON_CANNOT_UPDATE_PERMISSION ErrorReason = 13
	// The request failed to evaluate a caveat expression due to an error.
	//
	// Example of an ErrorInfo:
	//
	//	{
	//	  "reason": "ERROR_REASON_CAVEAT_EVALUATION_ERROR",
	//	  "domain": "authzed.com",
	//	  "metadata": {
	//	    "caveat_name": "somecaveat",
	//	  }
	//	}
	ErrorReason_ERROR_REASON_CAVEAT_EVALUATION_ERROR ErrorReason = 14
	// The request failed because the provided cursor was invalid in some way.
	//
	// Example of an ErrorInfo:
	//
	//	{
	//	  "reason": "ERROR_REASON_INVALID_CURSOR",
	//	  "domain": "authzed.com",
	//	  "metadata": {
	//	     ... additional keys based on the kind of cursor error ...
	//	  }
	//	}
	ErrorReason_ERROR_REASON_INVALID_CURSOR ErrorReason = 15
	// The request failed because there are too many matching relationships to be
	// deleted within a single transactional deletion call. To avoid, set
	// `optional_allow_partial_deletions` to true on the DeleteRelationships call.
	//
	// Example of an ErrorInfo:
	//
	//	{
	//	  "reason": "ERROR_REASON_TOO_MANY_RELATIONSHIPS_FOR_TRANSACTIONAL_DELETE",
	//	  "domain": "authzed.com",
	//	  "metadata": {
	//	     ... fields for the filter ...
	//	  }
	//	}
	ErrorReason_ERROR_REASON_TOO_MANY_RELATIONSHIPS_FOR_TRANSACTIONAL_DELETE ErrorReason = 16
	// The request failed because the client attempted to write a relationship
	// with a context that exceeded the configured server limit.
	//
	// Example of an ErrorInfo:
	//
	//	{
	//	  "reason": "ERROR_REASON_MAX_RELATIONSHIP_CONTEXT_SIZE",
	//	  "domain": "authzed.com",
	//	  "metadata": {
	//	    "relationship":     "relationship_exceeding_the_limit",
	//	    "max_allowed_size": "server_max_allowed_context_size",
	//	    "context_size":     "actual_relationship_context_size" ,
	//	  }
	//	}
	ErrorReason_ERROR_REASON_MAX_RELATIONSHIP_CONTEXT_SIZE ErrorReason = 17
	// The request failed because a relationship marked to be CREATEd
	// was already present within the datastore.
	//
	// Example of an ErrorInfo:
	//
	//	{
	//	  "reason": "ERROR_REASON_ATTEMPT_TO_RECREATE_RELATIONSHIP",
	//	  "domain": "authzed.com",
	//	  "metadata": {
	//	    "relationship":          "relationship_that_already_existed",
	//	    "resource_type":         "resource type",
	//	    "resource_object_id":    "resource object id",
	//	    ... additional decomposed relationship fields ...
	//	  }
	//	}
	ErrorReason_ERROR_REASON_ATTEMPT_TO_RECREATE_RELATIONSHIP ErrorReason = 18
	// The request failed because it caused the maximum depth allowed to be
	// exceeded. This typically indicates that there is a circular data traversal
	// somewhere in the schema, but can also be raised if the data traversal is simply
	// too deep.
	//
	// Example of an ErrorInfo:
	//
	//	{
	//	  "reason": "ERROR_REASON_MAXIMUM_DEPTH_EXCEEDED",
	//	  "domain": "authzed.com",
	//	  "metadata": {
	//	    "maximum_depth_allowed": "50",
	//	    ... additional fields based on request type ...
	//	  }
	//	}
	ErrorReason_ERROR_REASON_MAXIMUM_DEPTH_EXCEEDED ErrorReason = 19
	// The request failed due to a serialization error in the backend database.
	// This typically indicates that various in flight transactions conflicted with each other
	// and the database had to abort one or more of them. SpiceDB will retry a few times before returning
	// the error to the client.
	//
	// Example of an ErrorInfo:
	//
	//	{
	//	  "reason": "ERROR_REASON_SERIALIZATION_FAILURE",
	//	  "domain": "authzed.com",
	//	  "metadata": {}
	//	}
	ErrorReason_ERROR_REASON_SERIALIZATION_FAILURE ErrorReason = 20
	// The request contained more check items than the maximum configured.
	//
	// Example of an ErrorInfo:
	//
	//	{
	//	  "reason": "ERROR_REASON_TOO_MANY_CHECKS_IN_REQUEST",
	//	  "domain": "authzed.com",
	//	  "metadata": {
	//	    "check_count": "525",
	//	    "maximum_checks_allowed": "500",
	//	  }
	//	}
	ErrorReason_ERROR_REASON_TOO_MANY_CHECKS_IN_REQUEST ErrorReason = 21
)

func (ErrorReason) Descriptor

func (ErrorReason) Enum

func (x ErrorReason) Enum() *ErrorReason

func (ErrorReason) EnumDescriptor deprecated

func (ErrorReason) EnumDescriptor() ([]byte, []int)

Deprecated: Use ErrorReason.Descriptor instead.

func (ErrorReason) Number

func (x ErrorReason) Number() protoreflect.EnumNumber

func (ErrorReason) String

func (x ErrorReason) String() string

func (ErrorReason) Type

type ExpandPermissionTreeRequest

type ExpandPermissionTreeRequest struct {
	Consistency *Consistency `protobuf:"bytes,1,opt,name=consistency,proto3" json:"consistency,omitempty"`
	// resource is the resource over which to run the expansion.
	Resource *ObjectReference `protobuf:"bytes,2,opt,name=resource,proto3" json:"resource,omitempty"`
	// permission is the name of the permission or relation over which to run the
	// expansion for the resource.
	Permission string `protobuf:"bytes,3,opt,name=permission,proto3" json:"permission,omitempty"`
	// contains filtered or unexported fields
}

ExpandPermissionTreeRequest returns a tree representing the expansion of all relationships found accessible from a permission or relation on a particular resource.

ExpandPermissionTreeRequest is typically used to determine the full set of subjects with a permission, along with the relationships that grant said access.

func (*ExpandPermissionTreeRequest) Descriptor deprecated

func (*ExpandPermissionTreeRequest) Descriptor() ([]byte, []int)

Deprecated: Use ExpandPermissionTreeRequest.ProtoReflect.Descriptor instead.

func (*ExpandPermissionTreeRequest) GetConsistency

func (x *ExpandPermissionTreeRequest) GetConsistency() *Consistency

func (*ExpandPermissionTreeRequest) GetPermission

func (x *ExpandPermissionTreeRequest) GetPermission() string

func (*ExpandPermissionTreeRequest) GetResource

func (x *ExpandPermissionTreeRequest) GetResource() *ObjectReference

func (*ExpandPermissionTreeRequest) ProtoMessage

func (*ExpandPermissionTreeRequest) ProtoMessage()

func (*ExpandPermissionTreeRequest) ProtoReflect

func (*ExpandPermissionTreeRequest) Reset

func (x *ExpandPermissionTreeRequest) Reset()

func (*ExpandPermissionTreeRequest) String

func (x *ExpandPermissionTreeRequest) String() string

type ExpandPermissionTreeResponse

type ExpandPermissionTreeResponse struct {
	ExpandedAt *ZedToken `protobuf:"bytes,1,opt,name=expanded_at,json=expandedAt,proto3" json:"expanded_at,omitempty"`
	// tree_root is a tree structure whose leaf nodes are subjects, and
	// intermediate nodes represent the various operations (union, intersection,
	// exclusion) to reach those subjects.
	TreeRoot *PermissionRelationshipTree `protobuf:"bytes,2,opt,name=tree_root,json=treeRoot,proto3" json:"tree_root,omitempty"`
	// contains filtered or unexported fields
}

func (*ExpandPermissionTreeResponse) Descriptor deprecated

func (*ExpandPermissionTreeResponse) Descriptor() ([]byte, []int)

Deprecated: Use ExpandPermissionTreeResponse.ProtoReflect.Descriptor instead.

func (*ExpandPermissionTreeResponse) GetExpandedAt

func (x *ExpandPermissionTreeResponse) GetExpandedAt() *ZedToken

func (*ExpandPermissionTreeResponse) GetTreeRoot

func (*ExpandPermissionTreeResponse) ProtoMessage

func (*ExpandPermissionTreeResponse) ProtoMessage()

func (*ExpandPermissionTreeResponse) ProtoReflect

func (*ExpandPermissionTreeResponse) Reset

func (x *ExpandPermissionTreeResponse) Reset()

func (*ExpandPermissionTreeResponse) String

type LookupPermissionship

type LookupPermissionship int32

LookupPermissionship represents whether a Lookup response was partially evaluated or not

const (
	LookupPermissionship_LOOKUP_PERMISSIONSHIP_UNSPECIFIED            LookupPermissionship = 0
	LookupPermissionship_LOOKUP_PERMISSIONSHIP_HAS_PERMISSION         LookupPermissionship = 1
	LookupPermissionship_LOOKUP_PERMISSIONSHIP_CONDITIONAL_PERMISSION LookupPermissionship = 2
)

func (LookupPermissionship) Descriptor

func (LookupPermissionship) Enum

func (LookupPermissionship) EnumDescriptor deprecated

func (LookupPermissionship) EnumDescriptor() ([]byte, []int)

Deprecated: Use LookupPermissionship.Descriptor instead.

func (LookupPermissionship) Number

func (LookupPermissionship) String

func (x LookupPermissionship) String() string

func (LookupPermissionship) Type

type LookupResourcesRequest

type LookupResourcesRequest struct {
	Consistency *Consistency `protobuf:"bytes,1,opt,name=consistency,proto3" json:"consistency,omitempty"`
	// resource_object_type is the type of resource object for which the IDs will
	// be returned.
	ResourceObjectType string `protobuf:"bytes,2,opt,name=resource_object_type,json=resourceObjectType,proto3" json:"resource_object_type,omitempty"`
	// permission is the name of the permission or relation for which the subject
	// must Check.
	Permission string `protobuf:"bytes,3,opt,name=permission,proto3" json:"permission,omitempty"`
	// subject is the subject with access to the resources.
	Subject *SubjectReference `protobuf:"bytes,4,opt,name=subject,proto3" json:"subject,omitempty"`
	// context consists of named values that are injected into the caveat evaluation context
	Context *structpb.Struct `protobuf:"bytes,5,opt,name=context,proto3" json:"context,omitempty"`
	// optional_limit, if non-zero, specifies the limit on the number of resources to return
	// before the stream is closed on the server side. By default, the stream will continue
	// resolving resources until exhausted or the stream is closed due to the client or a
	// network issue.
	OptionalLimit uint32 `protobuf:"varint,6,opt,name=optional_limit,json=optionalLimit,proto3" json:"optional_limit,omitempty"`
	// optional_cursor, if specified, indicates the cursor after which results should resume being returned.
	// The cursor can be found on the LookupResourcesResponse object.
	OptionalCursor *Cursor `protobuf:"bytes,7,opt,name=optional_cursor,json=optionalCursor,proto3" json:"optional_cursor,omitempty"`
	// contains filtered or unexported fields
}

LookupResourcesRequest performs a lookup of all resources of a particular kind on which the subject has the specified permission or the relation in which the subject exists, streaming back the IDs of those resources.

func (*LookupResourcesRequest) Descriptor deprecated

func (*LookupResourcesRequest) Descriptor() ([]byte, []int)

Deprecated: Use LookupResourcesRequest.ProtoReflect.Descriptor instead.

func (*LookupResourcesRequest) GetConsistency

func (x *LookupResourcesRequest) GetConsistency() *Consistency

func (*LookupResourcesRequest) GetContext

func (x *LookupResourcesRequest) GetContext() *structpb.Struct

func (*LookupResourcesRequest) GetOptionalCursor

func (x *LookupResourcesRequest) GetOptionalCursor() *Cursor

func (*LookupResourcesRequest) GetOptionalLimit

func (x *LookupResourcesRequest) GetOptionalLimit() uint32

func (*LookupResourcesRequest) GetPermission

func (x *LookupResourcesRequest) GetPermission() string

func (*LookupResourcesRequest) GetResourceObjectType

func (x *LookupResourcesRequest) GetResourceObjectType() string

func (*LookupResourcesRequest) GetSubject

func (x *LookupResourcesRequest) GetSubject() *SubjectReference

func (*LookupResourcesRequest) ProtoMessage

func (*LookupResourcesRequest) ProtoMessage()

func (*LookupResourcesRequest) ProtoReflect

func (x *LookupResourcesRequest) ProtoReflect() protoreflect.Message

func (*LookupResourcesRequest) Reset

func (x *LookupResourcesRequest) Reset()

func (*LookupResourcesRequest) String

func (x *LookupResourcesRequest) String() string

type LookupResourcesResponse

type LookupResourcesResponse struct {

	// looked_up_at is the ZedToken at which the resource was found.
	LookedUpAt *ZedToken `protobuf:"bytes,1,opt,name=looked_up_at,json=lookedUpAt,proto3" json:"looked_up_at,omitempty"`
	// resource_object_id is the object ID of the found resource.
	ResourceObjectId string `protobuf:"bytes,2,opt,name=resource_object_id,json=resourceObjectId,proto3" json:"resource_object_id,omitempty"`
	// permissionship indicates whether the response was partially evaluated or not
	Permissionship LookupPermissionship `protobuf:"varint,3,opt,name=permissionship,proto3,enum=authzed.api.v1.LookupPermissionship" json:"permissionship,omitempty"`
	// partial_caveat_info holds information of a partially-evaluated caveated response
	PartialCaveatInfo *PartialCaveatInfo `protobuf:"bytes,4,opt,name=partial_caveat_info,json=partialCaveatInfo,proto3" json:"partial_caveat_info,omitempty"`
	// after_result_cursor holds a cursor that can be used to resume the LookupResources stream after this
	// result.
	AfterResultCursor *Cursor `protobuf:"bytes,5,opt,name=after_result_cursor,json=afterResultCursor,proto3" json:"after_result_cursor,omitempty"`
	// contains filtered or unexported fields
}

LookupResourcesResponse contains a single matching resource object ID for the requested object type, permission, and subject.

func (*LookupResourcesResponse) Descriptor deprecated

func (*LookupResourcesResponse) Descriptor() ([]byte, []int)

Deprecated: Use LookupResourcesResponse.ProtoReflect.Descriptor instead.

func (*LookupResourcesResponse) GetAfterResultCursor

func (x *LookupResourcesResponse) GetAfterResultCursor() *Cursor

func (*LookupResourcesResponse) GetLookedUpAt

func (x *LookupResourcesResponse) GetLookedUpAt() *ZedToken

func (*LookupResourcesResponse) GetPartialCaveatInfo

func (x *LookupResourcesResponse) GetPartialCaveatInfo() *PartialCaveatInfo

func (*LookupResourcesResponse) GetPermissionship

func (x *LookupResourcesResponse) GetPermissionship() LookupPermissionship

func (*LookupResourcesResponse) GetResourceObjectId

func (x *LookupResourcesResponse) GetResourceObjectId() string

func (*LookupResourcesResponse) ProtoMessage

func (*LookupResourcesResponse) ProtoMessage()

func (*LookupResourcesResponse) ProtoReflect

func (x *LookupResourcesResponse) ProtoReflect() protoreflect.Message

func (*LookupResourcesResponse) Reset

func (x *LookupResourcesResponse) Reset()

func (*LookupResourcesResponse) String

func (x *LookupResourcesResponse) String() string

type LookupSubjectsRequest

type LookupSubjectsRequest struct {
	Consistency *Consistency `protobuf:"bytes,1,opt,name=consistency,proto3" json:"consistency,omitempty"`
	// resource is the resource for which all matching subjects for the permission
	// or relation will be returned.
	Resource *ObjectReference `protobuf:"bytes,2,opt,name=resource,proto3" json:"resource,omitempty"`
	// permission is the name of the permission (or relation) for which to find
	// the subjects.
	Permission string `protobuf:"bytes,3,opt,name=permission,proto3" json:"permission,omitempty"`
	// subject_object_type is the type of subject object for which the IDs will
	// be returned.
	SubjectObjectType string `protobuf:"bytes,4,opt,name=subject_object_type,json=subjectObjectType,proto3" json:"subject_object_type,omitempty"`
	// optional_subject_relation is the optional relation for the subject.
	OptionalSubjectRelation string `` /* 132-byte string literal not displayed */
	// context consists of named values that are injected into the caveat evaluation context
	Context *structpb.Struct `protobuf:"bytes,6,opt,name=context,proto3" json:"context,omitempty"`
	// optional_concrete_limit, if non-zero, specifies the limit on the number of
	// *concrete* (non-wildcard) subjects to return before the stream is closed on the
	// server side. With the default value of zero, the stream will continue resolving
	// concrete subjects until exhausted or the stream is closed due to the client or
	// a network issue.
	//
	// NOTE: Wildcard subjects ("*") have special treatment when cursors and limits are used. Because
	// wildcards can apply to *any* concrete subjects, if a wildcard subject is found within the dataset,
	// a wildcard subject can be returned for *all* LookupSubjects calls, regardless of the cursor or
	// limit.
	//
	// For example, if wildcards are requested, a wildcard subject exists, there is a specified limit
	// of 10 concrete subjects, and at least 10 concrete subjects exist, the API will return 11 subjects
	// in total: the 10 concrete + the wildcard
	//
	// Furthermore, if a wildcard has a set of exclusions generated by the dataset,
	// the exclusions *will respect the cursor* and only a *partial* set of exclusions will be returned
	// for each invocation of the API.
	//
	// ***IT IS UP TO THE CALLER IN THIS CASE TO COMBINE THE EXCLUSIONS IF DESIRED***
	OptionalConcreteLimit uint32 `` /* 127-byte string literal not displayed */
	// optional_cursor, if specified, indicates the cursor after which results should resume being returned.
	// The cursor can be found on the LookupSubjectsResponse object.
	//
	// NOTE: See above for notes about how cursors interact with wildcard subjects.
	OptionalCursor *Cursor `protobuf:"bytes,8,opt,name=optional_cursor,json=optionalCursor,proto3" json:"optional_cursor,omitempty"`
	// wildcard_option specifies whether wildcards should be returned by LookupSubjects.
	// For backwards compatibility, defaults to WILDCARD_OPTION_INCLUDE_WILDCARDS if unspecified.
	WildcardOption LookupSubjectsRequest_WildcardOption `` /* 161-byte string literal not displayed */
	// contains filtered or unexported fields
}

LookupSubjectsRequest performs a lookup of all subjects of a particular kind for which the subject has the specified permission or the relation in which the subject exists, streaming back the IDs of those subjects.

func (*LookupSubjectsRequest) Descriptor deprecated

func (*LookupSubjectsRequest) Descriptor() ([]byte, []int)

Deprecated: Use LookupSubjectsRequest.ProtoReflect.Descriptor instead.

func (*LookupSubjectsRequest) GetConsistency

func (x *LookupSubjectsRequest) GetConsistency() *Consistency

func (*LookupSubjectsRequest) GetContext

func (x *LookupSubjectsRequest) GetContext() *structpb.Struct

func (*LookupSubjectsRequest) GetOptionalConcreteLimit

func (x *LookupSubjectsRequest) GetOptionalConcreteLimit() uint32

func (*LookupSubjectsRequest) GetOptionalCursor

func (x *LookupSubjectsRequest) GetOptionalCursor() *Cursor

func (*LookupSubjectsRequest) GetOptionalSubjectRelation

func (x *LookupSubjectsRequest) GetOptionalSubjectRelation() string

func (*LookupSubjectsRequest) GetPermission

func (x *LookupSubjectsRequest) GetPermission() string

func (*LookupSubjectsRequest) GetResource

func (x *LookupSubjectsRequest) GetResource() *ObjectReference

func (*LookupSubjectsRequest) GetSubjectObjectType

func (x *LookupSubjectsRequest) GetSubjectObjectType() string

func (*LookupSubjectsRequest) GetWildcardOption

func (*LookupSubjectsRequest) ProtoMessage

func (*LookupSubjectsRequest) ProtoMessage()

func (*LookupSubjectsRequest) ProtoReflect

func (x *LookupSubjectsRequest) ProtoReflect() protoreflect.Message

func (*LookupSubjectsRequest) Reset

func (x *LookupSubjectsRequest) Reset()

func (*LookupSubjectsRequest) String

func (x *LookupSubjectsRequest) String() string

type LookupSubjectsRequest_WildcardOption

type LookupSubjectsRequest_WildcardOption int32
const (
	LookupSubjectsRequest_WILDCARD_OPTION_UNSPECIFIED       LookupSubjectsRequest_WildcardOption = 0
	LookupSubjectsRequest_WILDCARD_OPTION_INCLUDE_WILDCARDS LookupSubjectsRequest_WildcardOption = 1
	LookupSubjectsRequest_WILDCARD_OPTION_EXCLUDE_WILDCARDS LookupSubjectsRequest_WildcardOption = 2
)

func (LookupSubjectsRequest_WildcardOption) Descriptor

func (LookupSubjectsRequest_WildcardOption) Enum

func (LookupSubjectsRequest_WildcardOption) EnumDescriptor deprecated

func (LookupSubjectsRequest_WildcardOption) EnumDescriptor() ([]byte, []int)

Deprecated: Use LookupSubjectsRequest_WildcardOption.Descriptor instead.

func (LookupSubjectsRequest_WildcardOption) Number

func (LookupSubjectsRequest_WildcardOption) String

func (LookupSubjectsRequest_WildcardOption) Type

type LookupSubjectsResponse

type LookupSubjectsResponse struct {
	LookedUpAt *ZedToken `protobuf:"bytes,1,opt,name=looked_up_at,json=lookedUpAt,proto3" json:"looked_up_at,omitempty"`
	// subject_object_id is the Object ID of the subject found. May be a `*` if
	// a wildcard was found.
	// deprecated: use `subject`
	//
	// Deprecated: Marked as deprecated in authzed/api/v1/permission_service.proto.
	SubjectObjectId string `protobuf:"bytes,2,opt,name=subject_object_id,json=subjectObjectId,proto3" json:"subject_object_id,omitempty"`
	// excluded_subject_ids are the Object IDs of the subjects excluded. This list
	// will only contain object IDs if `subject_object_id` is a wildcard (`*`) and
	// will only be populated if exclusions exist from the wildcard.
	// deprecated: use `excluded_subjects`
	//
	// Deprecated: Marked as deprecated in authzed/api/v1/permission_service.proto.
	ExcludedSubjectIds []string `protobuf:"bytes,3,rep,name=excluded_subject_ids,json=excludedSubjectIds,proto3" json:"excluded_subject_ids,omitempty"`
	// permissionship indicates whether the response was partially evaluated or not
	// deprecated: use `subject.permissionship`
	//
	// Deprecated: Marked as deprecated in authzed/api/v1/permission_service.proto.
	Permissionship LookupPermissionship `protobuf:"varint,4,opt,name=permissionship,proto3,enum=authzed.api.v1.LookupPermissionship" json:"permissionship,omitempty"`
	// partial_caveat_info holds information of a partially-evaluated caveated response
	// deprecated: use `subject.partial_caveat_info`
	//
	// Deprecated: Marked as deprecated in authzed/api/v1/permission_service.proto.
	PartialCaveatInfo *PartialCaveatInfo `protobuf:"bytes,5,opt,name=partial_caveat_info,json=partialCaveatInfo,proto3" json:"partial_caveat_info,omitempty"`
	// subject is the subject found, along with its permissionship.
	Subject *ResolvedSubject `protobuf:"bytes,6,opt,name=subject,proto3" json:"subject,omitempty"`
	// excluded_subjects are the subjects excluded. This list
	// will only contain subjects if `subject.subject_object_id` is a wildcard (`*`) and
	// will only be populated if exclusions exist from the wildcard.
	ExcludedSubjects []*ResolvedSubject `protobuf:"bytes,7,rep,name=excluded_subjects,json=excludedSubjects,proto3" json:"excluded_subjects,omitempty"`
	// after_result_cursor holds a cursor that can be used to resume the LookupSubjects stream after this
	// result.
	AfterResultCursor *Cursor `protobuf:"bytes,8,opt,name=after_result_cursor,json=afterResultCursor,proto3" json:"after_result_cursor,omitempty"`
	// contains filtered or unexported fields
}

LookupSubjectsResponse contains a single matching subject object ID for the requested subject object type on the permission or relation.

func (*LookupSubjectsResponse) Descriptor deprecated

func (*LookupSubjectsResponse) Descriptor() ([]byte, []int)

Deprecated: Use LookupSubjectsResponse.ProtoReflect.Descriptor instead.

func (*LookupSubjectsResponse) GetAfterResultCursor

func (x *LookupSubjectsResponse) GetAfterResultCursor() *Cursor

func (*LookupSubjectsResponse) GetExcludedSubjectIds deprecated

func (x *LookupSubjectsResponse) GetExcludedSubjectIds() []string

Deprecated: Marked as deprecated in authzed/api/v1/permission_service.proto.

func (*LookupSubjectsResponse) GetExcludedSubjects

func (x *LookupSubjectsResponse) GetExcludedSubjects() []*ResolvedSubject

func (*LookupSubjectsResponse) GetLookedUpAt

func (x *LookupSubjectsResponse) GetLookedUpAt() *ZedToken

func (*LookupSubjectsResponse) GetPartialCaveatInfo deprecated

func (x *LookupSubjectsResponse) GetPartialCaveatInfo() *PartialCaveatInfo

Deprecated: Marked as deprecated in authzed/api/v1/permission_service.proto.

func (*LookupSubjectsResponse) GetPermissionship deprecated

func (x *LookupSubjectsResponse) GetPermissionship() LookupPermissionship

Deprecated: Marked as deprecated in authzed/api/v1/permission_service.proto.

func (*LookupSubjectsResponse) GetSubject

func (x *LookupSubjectsResponse) GetSubject() *ResolvedSubject

func (*LookupSubjectsResponse) GetSubjectObjectId deprecated

func (x *LookupSubjectsResponse) GetSubjectObjectId() string

Deprecated: Marked as deprecated in authzed/api/v1/permission_service.proto.

func (*LookupSubjectsResponse) ProtoMessage

func (*LookupSubjectsResponse) ProtoMessage()

func (*LookupSubjectsResponse) ProtoReflect

func (x *LookupSubjectsResponse) ProtoReflect() protoreflect.Message

func (*LookupSubjectsResponse) Reset

func (x *LookupSubjectsResponse) Reset()

func (*LookupSubjectsResponse) String

func (x *LookupSubjectsResponse) String() string

type ObjectReference

type ObjectReference struct {
	ObjectType string `protobuf:"bytes,1,opt,name=object_type,json=objectType,proto3" json:"object_type,omitempty"`
	ObjectId   string `protobuf:"bytes,2,opt,name=object_id,json=objectId,proto3" json:"object_id,omitempty"`
	// contains filtered or unexported fields
}

ObjectReference is used to refer to a specific object in the system.

func (*ObjectReference) Descriptor deprecated

func (*ObjectReference) Descriptor() ([]byte, []int)

Deprecated: Use ObjectReference.ProtoReflect.Descriptor instead.

func (*ObjectReference) GetObjectId

func (x *ObjectReference) GetObjectId() string

func (*ObjectReference) GetObjectType

func (x *ObjectReference) GetObjectType() string

func (*ObjectReference) ProtoMessage

func (*ObjectReference) ProtoMessage()

func (*ObjectReference) ProtoReflect

func (x *ObjectReference) ProtoReflect() protoreflect.Message

func (*ObjectReference) Reset

func (x *ObjectReference) Reset()

func (*ObjectReference) String

func (x *ObjectReference) String() string

type PartialCaveatInfo

type PartialCaveatInfo struct {

	// missing_required_context is a list of one or more fields that were missing and prevented caveats
	// from being fully evaluated
	MissingRequiredContext []string `` /* 129-byte string literal not displayed */
	// contains filtered or unexported fields
}

PartialCaveatInfo carries information necessary for the client to take action in the event a response contains a partially evaluated caveat

func (*PartialCaveatInfo) Descriptor deprecated

func (*PartialCaveatInfo) Descriptor() ([]byte, []int)

Deprecated: Use PartialCaveatInfo.ProtoReflect.Descriptor instead.

func (*PartialCaveatInfo) GetMissingRequiredContext

func (x *PartialCaveatInfo) GetMissingRequiredContext() []string

func (*PartialCaveatInfo) ProtoMessage

func (*PartialCaveatInfo) ProtoMessage()

func (*PartialCaveatInfo) ProtoReflect

func (x *PartialCaveatInfo) ProtoReflect() protoreflect.Message

func (*PartialCaveatInfo) Reset

func (x *PartialCaveatInfo) Reset()

func (*PartialCaveatInfo) String

func (x *PartialCaveatInfo) String() string

type PermissionRelationshipTree

type PermissionRelationshipTree struct {

	// Types that are assignable to TreeType:
	//
	//	*PermissionRelationshipTree_Intermediate
	//	*PermissionRelationshipTree_Leaf
	TreeType         isPermissionRelationshipTree_TreeType `protobuf_oneof:"tree_type"`
	ExpandedObject   *ObjectReference                      `protobuf:"bytes,3,opt,name=expanded_object,json=expandedObject,proto3" json:"expanded_object,omitempty"`
	ExpandedRelation string                                `protobuf:"bytes,4,opt,name=expanded_relation,json=expandedRelation,proto3" json:"expanded_relation,omitempty"`
	// contains filtered or unexported fields
}

PermissionRelationshipTree is used for representing a tree of a resource and its permission relationships with other objects.

func (*PermissionRelationshipTree) Descriptor deprecated

func (*PermissionRelationshipTree) Descriptor() ([]byte, []int)

Deprecated: Use PermissionRelationshipTree.ProtoReflect.Descriptor instead.

func (*PermissionRelationshipTree) GetExpandedObject

func (x *PermissionRelationshipTree) GetExpandedObject() *ObjectReference

func (*PermissionRelationshipTree) GetExpandedRelation

func (x *PermissionRelationshipTree) GetExpandedRelation() string

func (*PermissionRelationshipTree) GetIntermediate

func (x *PermissionRelationshipTree) GetIntermediate() *AlgebraicSubjectSet

func (*PermissionRelationshipTree) GetLeaf

func (*PermissionRelationshipTree) GetTreeType

func (m *PermissionRelationshipTree) GetTreeType() isPermissionRelationshipTree_TreeType

func (*PermissionRelationshipTree) ProtoMessage

func (*PermissionRelationshipTree) ProtoMessage()

func (*PermissionRelationshipTree) ProtoReflect

func (*PermissionRelationshipTree) Reset

func (x *PermissionRelationshipTree) Reset()

func (*PermissionRelationshipTree) String

func (x *PermissionRelationshipTree) String() string

type PermissionRelationshipTree_Intermediate

type PermissionRelationshipTree_Intermediate struct {
	Intermediate *AlgebraicSubjectSet `protobuf:"bytes,1,opt,name=intermediate,proto3,oneof"`
}

type PermissionRelationshipTree_Leaf

type PermissionRelationshipTree_Leaf struct {
	Leaf *DirectSubjectSet `protobuf:"bytes,2,opt,name=leaf,proto3,oneof"`
}

type Precondition

type Precondition struct {
	Operation Precondition_Operation `protobuf:"varint,1,opt,name=operation,proto3,enum=authzed.api.v1.Precondition_Operation" json:"operation,omitempty"`
	Filter    *RelationshipFilter    `protobuf:"bytes,2,opt,name=filter,proto3" json:"filter,omitempty"`
	// contains filtered or unexported fields
}

Precondition specifies how and the existence or absence of certain relationships as expressed through the accompanying filter should affect whether or not the operation proceeds.

MUST_NOT_MATCH will fail the parent request if any relationships match the relationships filter. MUST_MATCH will fail the parent request if there are no relationships that match the filter.

func (*Precondition) Descriptor deprecated

func (*Precondition) Descriptor() ([]byte, []int)

Deprecated: Use Precondition.ProtoReflect.Descriptor instead.

func (*Precondition) GetFilter

func (x *Precondition) GetFilter() *RelationshipFilter

func (*Precondition) GetOperation

func (x *Precondition) GetOperation() Precondition_Operation

func (*Precondition) ProtoMessage

func (*Precondition) ProtoMessage()

func (*Precondition) ProtoReflect

func (x *Precondition) ProtoReflect() protoreflect.Message

func (*Precondition) Reset

func (x *Precondition) Reset()

func (*Precondition) String

func (x *Precondition) String() string

type Precondition_Operation

type Precondition_Operation int32
const (
	Precondition_OPERATION_UNSPECIFIED    Precondition_Operation = 0
	Precondition_OPERATION_MUST_NOT_MATCH Precondition_Operation = 1
	Precondition_OPERATION_MUST_MATCH     Precondition_Operation = 2
)

func (Precondition_Operation) Descriptor

func (Precondition_Operation) Enum

func (Precondition_Operation) EnumDescriptor deprecated

func (Precondition_Operation) EnumDescriptor() ([]byte, []int)

Deprecated: Use Precondition_Operation.Descriptor instead.

func (Precondition_Operation) Number

func (Precondition_Operation) String

func (x Precondition_Operation) String() string

func (Precondition_Operation) Type

type ReadRelationshipsRequest

type ReadRelationshipsRequest struct {
	Consistency *Consistency `protobuf:"bytes,1,opt,name=consistency,proto3" json:"consistency,omitempty"`
	// relationship_filter defines the filter to be applied to the relationships
	// to be returned.
	RelationshipFilter *RelationshipFilter `protobuf:"bytes,2,opt,name=relationship_filter,json=relationshipFilter,proto3" json:"relationship_filter,omitempty"`
	// optional_limit, if non-zero, specifies the limit on the number of relationships to return
	// before the stream is closed on the server side. By default, the stream will continue
	// resolving relationships until exhausted or the stream is closed due to the client or a
	// network issue.
	OptionalLimit uint32 `protobuf:"varint,3,opt,name=optional_limit,json=optionalLimit,proto3" json:"optional_limit,omitempty"`
	// optional_cursor, if specified, indicates the cursor after which results should resume being returned.
	// The cursor can be found on the ReadRelationshipsResponse object.
	OptionalCursor *Cursor `protobuf:"bytes,4,opt,name=optional_cursor,json=optionalCursor,proto3" json:"optional_cursor,omitempty"`
	// contains filtered or unexported fields
}

ReadRelationshipsRequest specifies one or more filters used to read matching relationships within the system.

func (*ReadRelationshipsRequest) Descriptor deprecated

func (*ReadRelationshipsRequest) Descriptor() ([]byte, []int)

Deprecated: Use ReadRelationshipsRequest.ProtoReflect.Descriptor instead.

func (*ReadRelationshipsRequest) GetConsistency

func (x *ReadRelationshipsRequest) GetConsistency() *Consistency

func (*ReadRelationshipsRequest) GetOptionalCursor

func (x *ReadRelationshipsRequest) GetOptionalCursor() *Cursor

func (*ReadRelationshipsRequest) GetOptionalLimit

func (x *ReadRelationshipsRequest) GetOptionalLimit() uint32

func (*ReadRelationshipsRequest) GetRelationshipFilter

func (x *ReadRelationshipsRequest) GetRelationshipFilter() *RelationshipFilter

func (*ReadRelationshipsRequest) ProtoMessage

func (*ReadRelationshipsRequest) ProtoMessage()

func (*ReadRelationshipsRequest) ProtoReflect

func (x *ReadRelationshipsRequest) ProtoReflect() protoreflect.Message

func (*ReadRelationshipsRequest) Reset

func (x *ReadRelationshipsRequest) Reset()

func (*ReadRelationshipsRequest) String

func (x *ReadRelationshipsRequest) String() string

type ReadRelationshipsResponse

type ReadRelationshipsResponse struct {

	// read_at is the ZedToken at which the relationship was found.
	ReadAt *ZedToken `protobuf:"bytes,1,opt,name=read_at,json=readAt,proto3" json:"read_at,omitempty"`
	// relationship is the found relationship.
	Relationship *Relationship `protobuf:"bytes,2,opt,name=relationship,proto3" json:"relationship,omitempty"`
	// after_result_cursor holds a cursor that can be used to resume the ReadRelationships stream after this
	// result.
	AfterResultCursor *Cursor `protobuf:"bytes,3,opt,name=after_result_cursor,json=afterResultCursor,proto3" json:"after_result_cursor,omitempty"`
	// contains filtered or unexported fields
}

ReadRelationshipsResponse contains a Relationship found that matches the specified relationship filter(s). A instance of this response message will be streamed to the client for each relationship found.

func (*ReadRelationshipsResponse) Descriptor deprecated

func (*ReadRelationshipsResponse) Descriptor() ([]byte, []int)

Deprecated: Use ReadRelationshipsResponse.ProtoReflect.Descriptor instead.

func (*ReadRelationshipsResponse) GetAfterResultCursor

func (x *ReadRelationshipsResponse) GetAfterResultCursor() *Cursor

func (*ReadRelationshipsResponse) GetReadAt

func (x *ReadRelationshipsResponse) GetReadAt() *ZedToken

func (*ReadRelationshipsResponse) GetRelationship

func (x *ReadRelationshipsResponse) GetRelationship() *Relationship

func (*ReadRelationshipsResponse) ProtoMessage

func (*ReadRelationshipsResponse) ProtoMessage()

func (*ReadRelationshipsResponse) ProtoReflect

func (*ReadRelationshipsResponse) Reset

func (x *ReadRelationshipsResponse) Reset()

func (*ReadRelationshipsResponse) String

func (x *ReadRelationshipsResponse) String() string

type ReadSchemaRequest

type ReadSchemaRequest struct {
	// contains filtered or unexported fields
}

ReadSchemaRequest returns the schema from the database.

func (*ReadSchemaRequest) Descriptor deprecated

func (*ReadSchemaRequest) Descriptor() ([]byte, []int)

Deprecated: Use ReadSchemaRequest.ProtoReflect.Descriptor instead.

func (*ReadSchemaRequest) ProtoMessage

func (*ReadSchemaRequest) ProtoMessage()

func (*ReadSchemaRequest) ProtoReflect

func (x *ReadSchemaRequest) ProtoReflect() protoreflect.Message

func (*ReadSchemaRequest) Reset

func (x *ReadSchemaRequest) Reset()

func (*ReadSchemaRequest) String

func (x *ReadSchemaRequest) String() string

type ReadSchemaResponse

type ReadSchemaResponse struct {

	// schema_text is the textual form of the current schema in the system
	SchemaText string `protobuf:"bytes,1,opt,name=schema_text,json=schemaText,proto3" json:"schema_text,omitempty"`
	// read_at is the ZedToken at which the schema was read.
	ReadAt *ZedToken `protobuf:"bytes,2,opt,name=read_at,json=readAt,proto3" json:"read_at,omitempty"`
	// contains filtered or unexported fields
}

ReadSchemaResponse is the resulting data after having read the Object Definitions from a Schema.

func (*ReadSchemaResponse) Descriptor deprecated

func (*ReadSchemaResponse) Descriptor() ([]byte, []int)

Deprecated: Use ReadSchemaResponse.ProtoReflect.Descriptor instead.

func (*ReadSchemaResponse) GetReadAt

func (x *ReadSchemaResponse) GetReadAt() *ZedToken

func (*ReadSchemaResponse) GetSchemaText

func (x *ReadSchemaResponse) GetSchemaText() string

func (*ReadSchemaResponse) ProtoMessage

func (*ReadSchemaResponse) ProtoMessage()

func (*ReadSchemaResponse) ProtoReflect

func (x *ReadSchemaResponse) ProtoReflect() protoreflect.Message

func (*ReadSchemaResponse) Reset

func (x *ReadSchemaResponse) Reset()

func (*ReadSchemaResponse) String

func (x *ReadSchemaResponse) String() string

type Relationship

type Relationship struct {

	// resource is the resource to which the subject is related, in some manner
	Resource *ObjectReference `protobuf:"bytes,1,opt,name=resource,proto3" json:"resource,omitempty"`
	// relation is how the resource and subject are related.
	Relation string `protobuf:"bytes,2,opt,name=relation,proto3" json:"relation,omitempty"`
	// subject is the subject to which the resource is related, in some manner.
	Subject *SubjectReference `protobuf:"bytes,3,opt,name=subject,proto3" json:"subject,omitempty"`
	// optional_caveat is a reference to a the caveat that must be enforced over the relationship
	OptionalCaveat *ContextualizedCaveat `protobuf:"bytes,4,opt,name=optional_caveat,json=optionalCaveat,proto3" json:"optional_caveat,omitempty"`
	// contains filtered or unexported fields
}

Relationship specifies how a resource relates to a subject. Relationships form the data for the graph over which all permissions questions are answered.

func (*Relationship) Descriptor deprecated

func (*Relationship) Descriptor() ([]byte, []int)

Deprecated: Use Relationship.ProtoReflect.Descriptor instead.

func (*Relationship) GetOptionalCaveat

func (x *Relationship) GetOptionalCaveat() *ContextualizedCaveat

func (*Relationship) GetRelation

func (x *Relationship) GetRelation() string

func (*Relationship) GetResource

func (x *Relationship) GetResource() *ObjectReference

func (*Relationship) GetSubject

func (x *Relationship) GetSubject() *SubjectReference

func (*Relationship) ProtoMessage

func (*Relationship) ProtoMessage()

func (*Relationship) ProtoReflect

func (x *Relationship) ProtoReflect() protoreflect.Message

func (*Relationship) Reset

func (x *Relationship) Reset()

func (*Relationship) String

func (x *Relationship) String() string

type RelationshipFilter

type RelationshipFilter struct {

	// resource_type is the *optional* resource type of the relationship.
	// NOTE: It is not prefixed with "optional_" for legacy compatibility.
	ResourceType string `protobuf:"bytes,1,opt,name=resource_type,json=resourceType,proto3" json:"resource_type,omitempty"`
	// optional_resource_id is the *optional* resource ID of the relationship.
	// If specified, optional_resource_id_prefix cannot be specified.
	OptionalResourceId string `protobuf:"bytes,2,opt,name=optional_resource_id,json=optionalResourceId,proto3" json:"optional_resource_id,omitempty"`
	// optional_resource_id_prefix is the *optional* prefix for the resource ID of the relationship.
	// If specified, optional_resource_id cannot be specified.
	OptionalResourceIdPrefix string `` /* 137-byte string literal not displayed */
	// relation is the *optional* relation of the relationship.
	OptionalRelation string `protobuf:"bytes,3,opt,name=optional_relation,json=optionalRelation,proto3" json:"optional_relation,omitempty"`
	// optional_subject_filter is the optional filter for the subjects of the relationships.
	OptionalSubjectFilter *SubjectFilter `` /* 126-byte string literal not displayed */
	// contains filtered or unexported fields
}

RelationshipFilter is a collection of filters which when applied to a relationship will return relationships that have exactly matching fields.

All fields are optional and if left unspecified will not filter relationships, but at least one field must be specified.

NOTE: The performance of the API will be affected by the selection of fields on which to filter. If a field is not indexed, the performance of the API can be significantly slower.

func (*RelationshipFilter) Descriptor deprecated

func (*RelationshipFilter) Descriptor() ([]byte, []int)

Deprecated: Use RelationshipFilter.ProtoReflect.Descriptor instead.

func (*RelationshipFilter) GetOptionalRelation

func (x *RelationshipFilter) GetOptionalRelation() string

func (*RelationshipFilter) GetOptionalResourceId

func (x *RelationshipFilter) GetOptionalResourceId() string

func (*RelationshipFilter) GetOptionalResourceIdPrefix

func (x *RelationshipFilter) GetOptionalResourceIdPrefix() string

func (*RelationshipFilter) GetOptionalSubjectFilter

func (x *RelationshipFilter) GetOptionalSubjectFilter() *SubjectFilter

func (*RelationshipFilter) GetResourceType

func (x *RelationshipFilter) GetResourceType() string

func (*RelationshipFilter) ProtoMessage

func (*RelationshipFilter) ProtoMessage()

func (*RelationshipFilter) ProtoReflect

func (x *RelationshipFilter) ProtoReflect() protoreflect.Message

func (*RelationshipFilter) Reset

func (x *RelationshipFilter) Reset()

func (*RelationshipFilter) String

func (x *RelationshipFilter) String() string

type RelationshipUpdate

type RelationshipUpdate struct {
	Operation    RelationshipUpdate_Operation `protobuf:"varint,1,opt,name=operation,proto3,enum=authzed.api.v1.RelationshipUpdate_Operation" json:"operation,omitempty"`
	Relationship *Relationship                `protobuf:"bytes,2,opt,name=relationship,proto3" json:"relationship,omitempty"`
	// contains filtered or unexported fields
}

RelationshipUpdate is used for mutating a single relationship within the service.

CREATE will create the relationship only if it doesn't exist, and error otherwise.

TOUCH will upsert the relationship, and will not error if it already exists.

DELETE will delete the relationship. If the relationship does not exist, this operation will no-op.

func (*RelationshipUpdate) Descriptor deprecated

func (*RelationshipUpdate) Descriptor() ([]byte, []int)

Deprecated: Use RelationshipUpdate.ProtoReflect.Descriptor instead.

func (*RelationshipUpdate) GetOperation

func (*RelationshipUpdate) GetRelationship

func (x *RelationshipUpdate) GetRelationship() *Relationship

func (*RelationshipUpdate) ProtoMessage

func (*RelationshipUpdate) ProtoMessage()

func (*RelationshipUpdate) ProtoReflect

func (x *RelationshipUpdate) ProtoReflect() protoreflect.Message

func (*RelationshipUpdate) Reset

func (x *RelationshipUpdate) Reset()

func (*RelationshipUpdate) String

func (x *RelationshipUpdate) String() string

type RelationshipUpdate_Operation

type RelationshipUpdate_Operation int32
const (
	RelationshipUpdate_OPERATION_UNSPECIFIED RelationshipUpdate_Operation = 0
	RelationshipUpdate_OPERATION_CREATE      RelationshipUpdate_Operation = 1
	RelationshipUpdate_OPERATION_TOUCH       RelationshipUpdate_Operation = 2
	RelationshipUpdate_OPERATION_DELETE      RelationshipUpdate_Operation = 3
)

func (RelationshipUpdate_Operation) Descriptor

func (RelationshipUpdate_Operation) Enum

func (RelationshipUpdate_Operation) EnumDescriptor deprecated

func (RelationshipUpdate_Operation) EnumDescriptor() ([]byte, []int)

Deprecated: Use RelationshipUpdate_Operation.Descriptor instead.

func (RelationshipUpdate_Operation) Number

func (RelationshipUpdate_Operation) String

func (RelationshipUpdate_Operation) Type

type ResolvedSubject

type ResolvedSubject struct {

	// subject_object_id is the Object ID of the subject found. May be a `*` if
	// a wildcard was found.
	SubjectObjectId string `protobuf:"bytes,1,opt,name=subject_object_id,json=subjectObjectId,proto3" json:"subject_object_id,omitempty"`
	// permissionship indicates whether the response was partially evaluated or not
	Permissionship LookupPermissionship `protobuf:"varint,2,opt,name=permissionship,proto3,enum=authzed.api.v1.LookupPermissionship" json:"permissionship,omitempty"`
	// partial_caveat_info holds information of a partially-evaluated caveated response
	PartialCaveatInfo *PartialCaveatInfo `protobuf:"bytes,3,opt,name=partial_caveat_info,json=partialCaveatInfo,proto3" json:"partial_caveat_info,omitempty"`
	// contains filtered or unexported fields
}

ResolvedSubject is a single subject resolved within LookupSubjects.

func (*ResolvedSubject) Descriptor deprecated

func (*ResolvedSubject) Descriptor() ([]byte, []int)

Deprecated: Use ResolvedSubject.ProtoReflect.Descriptor instead.

func (*ResolvedSubject) GetPartialCaveatInfo

func (x *ResolvedSubject) GetPartialCaveatInfo() *PartialCaveatInfo

func (*ResolvedSubject) GetPermissionship

func (x *ResolvedSubject) GetPermissionship() LookupPermissionship

func (*ResolvedSubject) GetSubjectObjectId

func (x *ResolvedSubject) GetSubjectObjectId() string

func (*ResolvedSubject) ProtoMessage

func (*ResolvedSubject) ProtoMessage()

func (*ResolvedSubject) ProtoReflect

func (x *ResolvedSubject) ProtoReflect() protoreflect.Message

func (*ResolvedSubject) Reset

func (x *ResolvedSubject) Reset()

func (*ResolvedSubject) String

func (x *ResolvedSubject) String() string

type SubjectFilter

type SubjectFilter struct {
	SubjectType       string                        `protobuf:"bytes,1,opt,name=subject_type,json=subjectType,proto3" json:"subject_type,omitempty"`
	OptionalSubjectId string                        `protobuf:"bytes,2,opt,name=optional_subject_id,json=optionalSubjectId,proto3" json:"optional_subject_id,omitempty"`
	OptionalRelation  *SubjectFilter_RelationFilter `protobuf:"bytes,3,opt,name=optional_relation,json=optionalRelation,proto3" json:"optional_relation,omitempty"`
	// contains filtered or unexported fields
}

SubjectFilter specifies a filter on the subject of a relationship.

subject_type is required and all other fields are optional, and will not impose any additional requirements if left unspecified.

func (*SubjectFilter) Descriptor deprecated

func (*SubjectFilter) Descriptor() ([]byte, []int)

Deprecated: Use SubjectFilter.ProtoReflect.Descriptor instead.

func (*SubjectFilter) GetOptionalRelation

func (x *SubjectFilter) GetOptionalRelation() *SubjectFilter_RelationFilter

func (*SubjectFilter) GetOptionalSubjectId

func (x *SubjectFilter) GetOptionalSubjectId() string

func (*SubjectFilter) GetSubjectType

func (x *SubjectFilter) GetSubjectType() string

func (*SubjectFilter) ProtoMessage

func (*SubjectFilter) ProtoMessage()

func (*SubjectFilter) ProtoReflect

func (x *SubjectFilter) ProtoReflect() protoreflect.Message

func (*SubjectFilter) Reset

func (x *SubjectFilter) Reset()

func (*SubjectFilter) String

func (x *SubjectFilter) String() string

type SubjectFilter_RelationFilter

type SubjectFilter_RelationFilter struct {
	Relation string `protobuf:"bytes,1,opt,name=relation,proto3" json:"relation,omitempty"`
	// contains filtered or unexported fields
}

func (*SubjectFilter_RelationFilter) Descriptor deprecated

func (*SubjectFilter_RelationFilter) Descriptor() ([]byte, []int)

Deprecated: Use SubjectFilter_RelationFilter.ProtoReflect.Descriptor instead.

func (*SubjectFilter_RelationFilter) GetRelation

func (x *SubjectFilter_RelationFilter) GetRelation() string

func (*SubjectFilter_RelationFilter) ProtoMessage

func (*SubjectFilter_RelationFilter) ProtoMessage()

func (*SubjectFilter_RelationFilter) ProtoReflect

func (*SubjectFilter_RelationFilter) Reset

func (x *SubjectFilter_RelationFilter) Reset()

func (*SubjectFilter_RelationFilter) String

type SubjectReference

type SubjectReference struct {
	Object           *ObjectReference `protobuf:"bytes,1,opt,name=object,proto3" json:"object,omitempty"`
	OptionalRelation string           `protobuf:"bytes,2,opt,name=optional_relation,json=optionalRelation,proto3" json:"optional_relation,omitempty"`
	// contains filtered or unexported fields
}

SubjectReference is used for referring to the subject portion of a Relationship. The relation component is optional and is used for defining a sub-relation on the subject, e.g. group:123#members

func (*SubjectReference) Descriptor deprecated

func (*SubjectReference) Descriptor() ([]byte, []int)

Deprecated: Use SubjectReference.ProtoReflect.Descriptor instead.

func (*SubjectReference) GetObject

func (x *SubjectReference) GetObject() *ObjectReference

func (*SubjectReference) GetOptionalRelation

func (x *SubjectReference) GetOptionalRelation() string

func (*SubjectReference) ProtoMessage

func (*SubjectReference) ProtoMessage()

func (*SubjectReference) ProtoReflect

func (x *SubjectReference) ProtoReflect() protoreflect.Message

func (*SubjectReference) Reset

func (x *SubjectReference) Reset()

func (*SubjectReference) String

func (x *SubjectReference) String() string

type WatchRequest

type WatchRequest struct {

	// optional_object_types is a filter of resource object types to watch for changes.
	// If specified, only changes to the specified object types will be returned and
	// optional_relationship_filters cannot be used.
	OptionalObjectTypes []string `protobuf:"bytes,1,rep,name=optional_object_types,json=optionalObjectTypes,proto3" json:"optional_object_types,omitempty"`
	// optional_start_cursor is the ZedToken holding the point-in-time at
	// which to start watching for changes.
	// If not specified, the watch will begin at the current head revision
	// of the datastore, returning any updates that occur after the caller
	// makes the request.
	// Note that if this cursor references a point-in-time containing data
	// that has been garbage collected, an error will be returned.
	OptionalStartCursor *ZedToken `protobuf:"bytes,2,opt,name=optional_start_cursor,json=optionalStartCursor,proto3" json:"optional_start_cursor,omitempty"`
	// optional_relationship_filters, if specified, indicates the
	// filter(s) to apply to each relationship to be returned by watch.
	// The relationship will be returned as long as at least one filter matches,
	// this allows clients to match relationships on multiple filters on a single watch call.
	// If specified, optional_object_types cannot be used.
	OptionalRelationshipFilters []*RelationshipFilter `` /* 144-byte string literal not displayed */
	// contains filtered or unexported fields
}

WatchRequest specifies the object definitions for which we want to start watching mutations, and an optional start snapshot for when to start watching.

func (*WatchRequest) Descriptor deprecated

func (*WatchRequest) Descriptor() ([]byte, []int)

Deprecated: Use WatchRequest.ProtoReflect.Descriptor instead.

func (*WatchRequest) GetOptionalObjectTypes

func (x *WatchRequest) GetOptionalObjectTypes() []string

func (*WatchRequest) GetOptionalRelationshipFilters

func (x *WatchRequest) GetOptionalRelationshipFilters() []*RelationshipFilter

func (*WatchRequest) GetOptionalStartCursor

func (x *WatchRequest) GetOptionalStartCursor() *ZedToken

func (*WatchRequest) ProtoMessage

func (*WatchRequest) ProtoMessage()

func (*WatchRequest) ProtoReflect

func (x *WatchRequest) ProtoReflect() protoreflect.Message

func (*WatchRequest) Reset

func (x *WatchRequest) Reset()

func (*WatchRequest) String

func (x *WatchRequest) String() string

type WatchResponse

type WatchResponse struct {
	Updates        []*RelationshipUpdate `protobuf:"bytes,1,rep,name=updates,proto3" json:"updates,omitempty"`
	ChangesThrough *ZedToken             `protobuf:"bytes,2,opt,name=changes_through,json=changesThrough,proto3" json:"changes_through,omitempty"`
	// contains filtered or unexported fields
}

WatchResponse contains all tuple modification events in ascending timestamp order, from the requested start snapshot to a snapshot encoded in the watch response. The client can use the snapshot to resume watching where the previous watch response left off.

func (*WatchResponse) Descriptor deprecated

func (*WatchResponse) Descriptor() ([]byte, []int)

Deprecated: Use WatchResponse.ProtoReflect.Descriptor instead.

func (*WatchResponse) GetChangesThrough

func (x *WatchResponse) GetChangesThrough() *ZedToken

func (*WatchResponse) GetUpdates

func (x *WatchResponse) GetUpdates() []*RelationshipUpdate

func (*WatchResponse) ProtoMessage

func (*WatchResponse) ProtoMessage()

func (*WatchResponse) ProtoReflect

func (x *WatchResponse) ProtoReflect() protoreflect.Message

func (*WatchResponse) Reset

func (x *WatchResponse) Reset()

func (*WatchResponse) String

func (x *WatchResponse) String() string

type WriteRelationshipsRequest

type WriteRelationshipsRequest struct {
	Updates               []*RelationshipUpdate `protobuf:"bytes,1,rep,name=updates,proto3" json:"updates,omitempty"`
	OptionalPreconditions []*Precondition       `protobuf:"bytes,2,rep,name=optional_preconditions,json=optionalPreconditions,proto3" json:"optional_preconditions,omitempty"` // To be bounded by configuration
	// contains filtered or unexported fields
}

WriteRelationshipsRequest contains a list of Relationship mutations that should be applied to the service. If the optional_preconditions parameter is included, all of the specified preconditions must also be satisfied before the write will be committed.

func (*WriteRelationshipsRequest) Descriptor deprecated

func (*WriteRelationshipsRequest) Descriptor() ([]byte, []int)

Deprecated: Use WriteRelationshipsRequest.ProtoReflect.Descriptor instead.

func (*WriteRelationshipsRequest) GetOptionalPreconditions

func (x *WriteRelationshipsRequest) GetOptionalPreconditions() []*Precondition

func (*WriteRelationshipsRequest) GetUpdates

func (x *WriteRelationshipsRequest) GetUpdates() []*RelationshipUpdate

func (*WriteRelationshipsRequest) ProtoMessage

func (*WriteRelationshipsRequest) ProtoMessage()

func (*WriteRelationshipsRequest) ProtoReflect

func (*WriteRelationshipsRequest) Reset

func (x *WriteRelationshipsRequest) Reset()

func (*WriteRelationshipsRequest) String

func (x *WriteRelationshipsRequest) String() string

type WriteRelationshipsResponse

type WriteRelationshipsResponse struct {
	WrittenAt *ZedToken `protobuf:"bytes,1,opt,name=written_at,json=writtenAt,proto3" json:"written_at,omitempty"`
	// contains filtered or unexported fields
}

func (*WriteRelationshipsResponse) Descriptor deprecated

func (*WriteRelationshipsResponse) Descriptor() ([]byte, []int)

Deprecated: Use WriteRelationshipsResponse.ProtoReflect.Descriptor instead.

func (*WriteRelationshipsResponse) GetWrittenAt

func (x *WriteRelationshipsResponse) GetWrittenAt() *ZedToken

func (*WriteRelationshipsResponse) ProtoMessage

func (*WriteRelationshipsResponse) ProtoMessage()

func (*WriteRelationshipsResponse) ProtoReflect

func (*WriteRelationshipsResponse) Reset

func (x *WriteRelationshipsResponse) Reset()

func (*WriteRelationshipsResponse) String

func (x *WriteRelationshipsResponse) String() string

type WriteSchemaRequest

type WriteSchemaRequest struct {

	// The Schema containing one or more Object Definitions that will be written
	// to the Permissions System.
	Schema string `protobuf:"bytes,1,opt,name=schema,proto3" json:"schema,omitempty"` // 4MiB
	// contains filtered or unexported fields
}

WriteSchemaRequest is the required data used to "upsert" the Schema of a Permissions System.

func (*WriteSchemaRequest) Descriptor deprecated

func (*WriteSchemaRequest) Descriptor() ([]byte, []int)

Deprecated: Use WriteSchemaRequest.ProtoReflect.Descriptor instead.

func (*WriteSchemaRequest) GetSchema

func (x *WriteSchemaRequest) GetSchema() string

func (*WriteSchemaRequest) ProtoMessage

func (*WriteSchemaRequest) ProtoMessage()

func (*WriteSchemaRequest) ProtoReflect

func (x *WriteSchemaRequest) ProtoReflect() protoreflect.Message

func (*WriteSchemaRequest) Reset

func (x *WriteSchemaRequest) Reset()

func (*WriteSchemaRequest) String

func (x *WriteSchemaRequest) String() string

type WriteSchemaResponse

type WriteSchemaResponse struct {

	// written_at is the ZedToken at which the schema was written.
	WrittenAt *ZedToken `protobuf:"bytes,1,opt,name=written_at,json=writtenAt,proto3" json:"written_at,omitempty"`
	// contains filtered or unexported fields
}

WriteSchemaResponse is the resulting data after having written a Schema to a Permissions System.

func (*WriteSchemaResponse) Descriptor deprecated

func (*WriteSchemaResponse) Descriptor() ([]byte, []int)

Deprecated: Use WriteSchemaResponse.ProtoReflect.Descriptor instead.

func (*WriteSchemaResponse) GetWrittenAt

func (x *WriteSchemaResponse) GetWrittenAt() *ZedToken

func (*WriteSchemaResponse) ProtoMessage

func (*WriteSchemaResponse) ProtoMessage()

func (*WriteSchemaResponse) ProtoReflect

func (x *WriteSchemaResponse) ProtoReflect() protoreflect.Message

func (*WriteSchemaResponse) Reset

func (x *WriteSchemaResponse) Reset()

func (*WriteSchemaResponse) String

func (x *WriteSchemaResponse) String() string

type ZedToken

type ZedToken struct {
	Token string `protobuf:"bytes,1,opt,name=token,proto3" json:"token,omitempty"`
	// contains filtered or unexported fields
}

ZedToken is used to provide causality metadata between Write and Check requests.

See the authzed.api.v1.Consistency message for more information.

func (*ZedToken) Descriptor deprecated

func (*ZedToken) Descriptor() ([]byte, []int)

Deprecated: Use ZedToken.ProtoReflect.Descriptor instead.

func (*ZedToken) GetToken

func (x *ZedToken) GetToken() string

func (*ZedToken) ProtoMessage

func (*ZedToken) ProtoMessage()

func (*ZedToken) ProtoReflect

func (x *ZedToken) ProtoReflect() protoreflect.Message

func (*ZedToken) Reset

func (x *ZedToken) Reset()

func (*ZedToken) String

func (x *ZedToken) String() string

Jump to

Keyboard shortcuts

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