Module: OpenFga

Defined in:
lib/openfga/version.rb,
lib/openfga.rb,
lib/openfga/client.rb,
lib/openfga/helpers.rb,
lib/openfga/api_error.rb,
lib/openfga/constants.rb,
lib/openfga/api_client.rb,
lib/openfga/models/any.rb,
lib/openfga/models/leaf.rb,
lib/openfga/models/node.rb,
lib/openfga/models/user.rb,
lib/openfga/models/nodes.rb,
lib/openfga/models/store.rb,
lib/openfga/models/tuple.rb,
lib/openfga/models/users.rb,
lib/openfga/configuration.rb,
lib/openfga/models/status.rb,
lib/openfga/api_model_base.rb,
lib/openfga/models/userset.rb,
lib/openfga/models/computed.rb,
lib/openfga/models/metadata.rb,
lib/openfga/models/usersets.rb,
lib/openfga/api/open_fga_api.rb,
lib/openfga/models/assertion.rb,
lib/openfga/models/condition.rb,
lib/openfga/models/tuple_key.rb,
lib/openfga/models/type_name.rb,
lib/openfga/models/difference.rb,
lib/openfga/models/error_code.rb,
lib/openfga/models/fga_object.rb,
lib/openfga/models/null_value.rb,
lib/openfga/models/check_error.rb,
lib/openfga/models/source_info.rb,
lib/openfga/models/read_request.rb,
lib/openfga/models/tuple_change.rb,
lib/openfga/models/userset_tree.rb,
lib/openfga/models/userset_user.rb,
lib/openfga/models/check_request.rb,
lib/openfga/models/read_response.rb,
lib/openfga/models/write_request.rb,
lib/openfga/client/openfga_client.rb,
lib/openfga/models/check_response.rb,
lib/openfga/models/expand_request.rb,
lib/openfga/models/typed_wildcard.rb,
lib/openfga/models/auth_error_code.rb,
lib/openfga/models/expand_response.rb,
lib/openfga/models/object_relation.rb,
lib/openfga/models/tuple_operation.rb,
lib/openfga/models/type_definition.rb,
lib/openfga/models/batch_check_item.rb,
lib/openfga/models/tuple_to_userset.rb,
lib/openfga/models/user_type_filter.rb,
lib/openfga/models/relation_metadata.rb,
lib/openfga/models/condition_metadata.rb,
lib/openfga/models/forbidden_response.rb,
lib/openfga/models/get_store_response.rb,
lib/openfga/models/list_users_request.rb,
lib/openfga/models/relation_reference.rb,
lib/openfga/models/assertion_tuple_key.rb,
lib/openfga/models/authorization_model.rb,
lib/openfga/models/batch_check_request.rb,
lib/openfga/models/internal_error_code.rb,
lib/openfga/models/list_users_response.rb,
lib/openfga/models/batch_check_response.rb,
lib/openfga/models/create_store_request.rb,
lib/openfga/models/list_objects_request.rb,
lib/openfga/models/list_stores_response.rb,
lib/openfga/models/not_found_error_code.rb,
lib/openfga/models/write_request_writes.rb,
lib/openfga/token_manager/token_manager.rb,
lib/openfga/models/contextual_tuple_keys.rb,
lib/openfga/models/create_store_response.rb,
lib/openfga/models/list_objects_response.rb,
lib/openfga/models/read_changes_response.rb,
lib/openfga/models/write_request_deletes.rb,
lib/openfga/models/consistency_preference.rb,
lib/openfga/models/read_request_tuple_key.rb,
lib/openfga/models/relationship_condition.rb,
lib/openfga/models/check_request_tuple_key.rb,
lib/openfga/models/userset_tree_difference.rb,
lib/openfga/models/aborted_message_response.rb,
lib/openfga/models/condition_param_type_ref.rb,
lib/openfga/models/expand_request_tuple_key.rb,
lib/openfga/models/read_assertions_response.rb,
lib/openfga/models/unauthenticated_response.rb,
lib/openfga/models/write_assertions_request.rb,
lib/openfga/models/batch_check_single_result.rb,
lib/openfga/models/tuple_key_without_condition.rb,
lib/openfga/models/userset_tree_tuple_to_userset.rb,
lib/openfga/models/internal_error_message_response.rb,
lib/openfga/models/unprocessable_content_error_code.rb,
lib/openfga/models/read_authorization_model_response.rb,
lib/openfga/models/validation_error_message_response.rb,
lib/openfga/models/write_authorization_model_request.rb,
lib/openfga/models/read_authorization_models_response.rb,
lib/openfga/models/write_authorization_model_response.rb,
lib/openfga/models/path_unknown_error_message_response.rb,
lib/openfga/models/unprocessable_content_message_response.rb

Overview

#OpenFGA

#A high performance and flexible authorization/permission engine built for developers and inspired by Google Zanzibar.

The version of the OpenAPI document: 1.x Contact: community@openfga.dev Generated by: openapi-generator.tech Generator version: 6.4.0

Defined Under Namespace

Modules: TokenManager Classes: AbortedMessageResponse, Any, ApiClient, ApiError, ApiModelBase, Assertion, AssertionTupleKey, AuthErrorCode, AuthorizationModel, BatchCheckItem, BatchCheckRequest, BatchCheckResponse, BatchCheckSingleResult, CheckError, CheckRequest, CheckRequestTupleKey, CheckResponse, Client, Computed, Condition, ConditionMetadata, ConditionParamTypeRef, Configuration, ConsistencyPreference, ContextualTupleKeys, CreateStoreRequest, CreateStoreResponse, Difference, ErrorCode, ExpandRequest, ExpandRequestTupleKey, ExpandResponse, FgaObject, ForbiddenResponse, GetStoreResponse, InternalErrorCode, InternalErrorMessageResponse, Leaf, ListObjectsRequest, ListObjectsResponse, ListStoresResponse, ListUsersRequest, ListUsersResponse, Metadata, Node, Nodes, NotFoundErrorCode, NullValue, ObjectRelation, OpenFgaApi, PathUnknownErrorMessageResponse, ReadAssertionsResponse, ReadAuthorizationModelResponse, ReadAuthorizationModelsResponse, ReadChangesResponse, ReadRequest, ReadRequestTupleKey, ReadResponse, RelationMetadata, RelationReference, RelationshipCondition, SdkClient, SourceInfo, Status, Store, Tuple, TupleChange, TupleKey, TupleKeyWithoutCondition, TupleOperation, TupleToUserset, TypeDefinition, TypeName, TypedWildcard, UnauthenticatedResponse, UnprocessableContentErrorCode, UnprocessableContentMessageResponse, User, UserTypeFilter, Users, Userset, UsersetTree, UsersetTreeDifference, UsersetTreeTupleToUserset, UsersetUser, Usersets, ValidationErrorMessageResponse, WriteAssertionsRequest, WriteAuthorizationModelRequest, WriteAuthorizationModelResponse, WriteRequest, WriteRequestDeletes, WriteRequestWrites

Constant Summary collapse

VERSION =
'0.2.0'
SDK_VERSION =

Version of the OpenFGA Ruby SDK.

OpenFga::VERSION
USER_AGENT =

User agent used in HTTP requests.

'openfga-sdk ruby/0.1.4'
SAMPLE_BASE_DOMAIN =

Example API domain for documentation/tests.

'fga.example'
TEST_API_URL =

API URL used for tests.

"https://api.#{SAMPLE_BASE_DOMAIN}"
TEST_ISSUER_URL =

API Token Issuer URL used for tests.

"https://issuer.#{SAMPLE_BASE_DOMAIN}"
DEFAULT_API_URL =

Default API URL.

'http://localhost:8080'
RETRY_MAX_ALLOWED_NUMBER =

Maximum allowed number of retries for HTTP requests.

15
DEFAULT_MAX_RETRY =

Default maximum number of retries for HTTP requests.

3
DEFAULT_MIN_WAIT_IN_MS =

Default minimum wait time between retries in milliseconds.

100
MAX_BACKOFF_TIME_IN_SEC =

Maximum backoff time in seconds.

120
RETRY_HEADER_MAX_ALLOWABLE_DURATION_IN_SEC =

Maximum allowable duration for retry headers in seconds.

1800
RETRY_AFTER_HEADER_NAME =

Standard HTTP header for retry-after.

'Retry-After'
RATE_LIMIT_RESET_HEADER_NAME =

Rate limit reset header name.

'X-RateLimit-Reset'
RATE_LIMIT_RESET_ALT_HEADER_NAME =

Alternative rate limit reset header name.

'X-Rate-Limit-Reset'
CLIENT_MAX_METHOD_PARALLEL_REQUESTS =

Maximum number of parallel requests for a single method.

10
CLIENT_MAX_BATCH_SIZE =

Maximum batch size for batch requests.

50
CLIENT_METHOD_HEADER =

Header used to identify the client method.

'X-OpenFGA-Client-Method'
CLIENT_BULK_REQUEST_ID_HEADER =

Header used to identify bulk requests.

'X-OpenFGA-Client-Bulk-Request-Id'
DEFAULT_REQUEST_TIMEOUT_IN_MS =

Default timeout for HTTP requests in milliseconds.

10000
DEFAULT_CONNECTION_TIMEOUT_IN_MS =

Default connection timeout in milliseconds.

10000
TOKEN_EXPIRY_THRESHOLD_BUFFER_IN_SEC =

Buffer time in seconds before token expiry to consider it expired.

300
TOKEN_EXPIRY_JITTER_IN_SEC =

Jitter time in seconds to add randomness to token expiry checks.

300
QUERY_DURATION_HEADER_NAME =

Response header name for query duration in milliseconds.

'fga-query-duration-ms'

Class Method Summary collapse

Class Method Details

.blank?(value) ⇒ Boolean

Returns:

  • (Boolean)


4
5
6
# File 'lib/openfga/helpers.rb', line 4

def blank?(value)
  value.respond_to?(:empty?) ? value.empty? : !value
end

.configureObject

Customize default settings for the SDK using block.

OpenFga.configure do |config|
  config.username = "xxx"
  config.password = "xxx"
end

If no block given, return the default Configuration object.



123
124
125
126
127
128
129
# File 'lib/openfga.rb', line 123

def configure
  if block_given?
    yield(Configuration.default)
  else
    Configuration.default
  end
end