View on GitHub


lakeFS - Data version control for your data lake | Git for data



This Python package is automatically generated by the OpenAPI Generator project:


Python >= 3.6

Installation & Usage

pip install

If the python package is hosted on a repository, you can install directly using:

pip install git+

(you may need to run pip with root permission: sudo pip install git+

Then import the package:

import lakefs_client


Install via Setuptools.

python install --user

(or sudo python install to install the package for all users)

Then import the package:

import lakefs_client

Getting Started

Please follow the installation procedure and then run the following:

import time
import lakefs_client
from pprint import pprint
from lakefs_client.api import actions_api
from lakefs_client.model.action_run import ActionRun
from lakefs_client.model.action_run_list import ActionRunList
from lakefs_client.model.error import Error
from lakefs_client.model.hook_run_list import HookRunList
# Defining the host is optional and defaults to http://localhost/api/v1
# See for a list of all supported configuration parameters.
configuration = lakefs_client.Configuration(
    host = "http://localhost/api/v1"

# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.

# Configure HTTP basic authorization: basic_auth
configuration = lakefs_client.Configuration(
    username = 'YOUR_USERNAME',
    password = 'YOUR_PASSWORD'

# Configure API key authorization: cookie_auth
configuration.api_key['cookie_auth'] = 'YOUR_API_KEY'

# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['cookie_auth'] = 'Bearer'

# Configure Bearer authorization (JWT): jwt_token
configuration = lakefs_client.Configuration(
    access_token = 'YOUR_BEARER_TOKEN'

# Configure API key authorization: oidc_auth
configuration.api_key['oidc_auth'] = 'YOUR_API_KEY'

# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['oidc_auth'] = 'Bearer'

# Configure API key authorization: saml_auth
configuration.api_key['saml_auth'] = 'YOUR_API_KEY'

# Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
# configuration.api_key_prefix['saml_auth'] = 'Bearer'

# Enter a context with an instance of the API client
with lakefs_client.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = actions_api.ActionsApi(api_client)
    repository = "repository_example" # str | 
run_id = "run_id_example" # str | 

        # get a run
        api_response = api_instance.get_run(repository, run_id)
    except lakefs_client.ApiException as e:
        print("Exception when calling ActionsApi->get_run: %s\n" % e)

Documentation for API Endpoints

All URIs are relative to http://localhost/api/v1

Class Method HTTP request Description
ActionsApi get_run GET /repositories/{repository}/actions/runs/{run_id} get a run
ActionsApi get_run_hook_output GET /repositories/{repository}/actions/runs/{run_id}/hooks/{hook_run_id}/output get run hook output
ActionsApi list_repository_runs GET /repositories/{repository}/actions/runs list runs
ActionsApi list_run_hooks GET /repositories/{repository}/actions/runs/{run_id}/hooks list run hooks
AuthApi add_group_membership PUT /auth/groups/{groupId}/members/{userId} add group membership
AuthApi attach_policy_to_group PUT /auth/groups/{groupId}/policies/{policyId} attach policy to group
AuthApi attach_policy_to_user PUT /auth/users/{userId}/policies/{policyId} attach policy to user
AuthApi create_credentials POST /auth/users/{userId}/credentials create credentials
AuthApi create_group POST /auth/groups create group
AuthApi create_policy POST /auth/policies create policy
AuthApi create_user POST /auth/users create user
AuthApi delete_credentials DELETE /auth/users/{userId}/credentials/{accessKeyId} delete credentials
AuthApi delete_group DELETE /auth/groups/{groupId} delete group
AuthApi delete_group_membership DELETE /auth/groups/{groupId}/members/{userId} delete group membership
AuthApi delete_policy DELETE /auth/policies/{policyId} delete policy
AuthApi delete_user DELETE /auth/users/{userId} delete user
AuthApi detach_policy_from_group DELETE /auth/groups/{groupId}/policies/{policyId} detach policy from group
AuthApi detach_policy_from_user DELETE /auth/users/{userId}/policies/{policyId} detach policy from user
AuthApi get_credentials GET /auth/users/{userId}/credentials/{accessKeyId} get credentials
AuthApi get_current_user GET /user get current user
AuthApi get_group GET /auth/groups/{groupId} get group
AuthApi get_group_acl GET /auth/groups/{groupId}/acl get ACL of group
AuthApi get_policy GET /auth/policies/{policyId} get policy
AuthApi get_user GET /auth/users/{userId} get user
AuthApi list_group_members GET /auth/groups/{groupId}/members list group members
AuthApi list_group_policies GET /auth/groups/{groupId}/policies list group policies
AuthApi list_groups GET /auth/groups list groups
AuthApi list_policies GET /auth/policies list policies
AuthApi list_user_credentials GET /auth/users/{userId}/credentials list user credentials
AuthApi list_user_groups GET /auth/users/{userId}/groups list user groups
AuthApi list_user_policies GET /auth/users/{userId}/policies list user policies
AuthApi list_users GET /auth/users list users
AuthApi login POST /auth/login perform a login
AuthApi set_group_acl POST /auth/groups/{groupId}/acl set ACL of group
AuthApi update_policy PUT /auth/policies/{policyId} update policy
BranchesApi cherry_pick POST /repositories/{repository}/branches/{branch}/cherry-pick Replay the changes from the given commit on the branch
BranchesApi create_branch POST /repositories/{repository}/branches create branch
BranchesApi delete_branch DELETE /repositories/{repository}/branches/{branch} delete branch
BranchesApi diff_branch GET /repositories/{repository}/branches/{branch}/diff diff branch
BranchesApi get_branch GET /repositories/{repository}/branches/{branch} get branch
BranchesApi list_branches GET /repositories/{repository}/branches list branches
BranchesApi reset_branch PUT /repositories/{repository}/branches/{branch} reset branch
BranchesApi revert_branch POST /repositories/{repository}/branches/{branch}/revert revert
CommitsApi commit POST /repositories/{repository}/branches/{branch}/commits create commit
CommitsApi get_commit GET /repositories/{repository}/commits/{commitId} get commit
ConfigApi get_garbage_collection_config GET /config/garbage-collection  
ConfigApi get_lake_fs_version GET /config/version  
ConfigApi get_storage_config GET /config/storage  
ExperimentalApi get_otf_diffs GET /otf/diffs get the available Open Table Format diffs
ExperimentalApi otf_diff GET /repositories/{repository}/otf/refs/{left_ref}/diff/{right_ref} perform otf diff
HealthCheckApi health_check GET /healthcheck  
ImportApi create_meta_range POST /repositories/{repository}/branches/metaranges create a lakeFS metarange file from the given ranges
ImportApi import_cancel DELETE /repositories/{repository}/branches/{branch}/import cancel ongoing import
ImportApi import_start POST /repositories/{repository}/branches/{branch}/import import data from object store
ImportApi import_status GET /repositories/{repository}/branches/{branch}/import get import status
ImportApi ingest_range POST /repositories/{repository}/branches/ranges create a lakeFS range file from the source uri
InternalApi create_branch_protection_rule_preflight GET /repositories/{repository}/branch_protection/set_allowed  
InternalApi get_auth_capabilities GET /auth/capabilities list authentication capabilities supported
InternalApi get_setup_state GET /setup_lakefs check if the lakeFS installation is already set up
InternalApi post_stats_events POST /statistics post stats events, this endpoint is meant for internal use only
InternalApi set_garbage_collection_rules_preflight GET /repositories/{repository}/gc/rules/set_allowed  
InternalApi setup POST /setup_lakefs setup lakeFS and create a first user
InternalApi setup_comm_prefs POST /setup_comm_prefs setup communications preferences
InternalApi update_branch_token PUT /repositories/{repository}/branches/{branch}/update_token modify branch staging token
InternalApi upload_object_preflight GET /repositories/{repository}/branches/{branch}/objects/stage_allowed  
MetadataApi create_symlink_file POST /repositories/{repository}/refs/{branch}/symlink creates symlink files corresponding to the given directory
MetadataApi get_meta_range GET /repositories/{repository}/metadata/meta_range/{meta_range} return URI to a meta-range file
MetadataApi get_range GET /repositories/{repository}/metadata/range/{range} return URI to a range file
ObjectsApi copy_object POST /repositories/{repository}/branches/{branch}/objects/copy create a copy of an object
ObjectsApi delete_object DELETE /repositories/{repository}/branches/{branch}/objects delete object. Missing objects will not return a NotFound error.
ObjectsApi delete_objects POST /repositories/{repository}/branches/{branch}/objects/delete delete objects. Missing objects will not return a NotFound error.
ObjectsApi get_object GET /repositories/{repository}/refs/{ref}/objects get object content
ObjectsApi get_underlying_properties GET /repositories/{repository}/refs/{ref}/objects/underlyingProperties get object properties on underlying storage
ObjectsApi head_object HEAD /repositories/{repository}/refs/{ref}/objects check if object exists
ObjectsApi list_objects GET /repositories/{repository}/refs/{ref}/objects/ls list objects under a given prefix
ObjectsApi stage_object PUT /repositories/{repository}/branches/{branch}/objects stage an object's metadata for the given branch
ObjectsApi stat_object GET /repositories/{repository}/refs/{ref}/objects/stat get object metadata
ObjectsApi upload_object POST /repositories/{repository}/branches/{branch}/objects  
RefsApi diff_refs GET /repositories/{repository}/refs/{leftRef}/diff/{rightRef} diff references
RefsApi dump_refs PUT /repositories/{repository}/refs/dump Dump repository refs (tags, commits, branches) to object store
RefsApi find_merge_base GET /repositories/{repository}/refs/{sourceRef}/merge/{destinationBranch} find the merge base for 2 references
RefsApi log_commits GET /repositories/{repository}/refs/{ref}/commits get commit log from ref. If both objects and prefixes are empty, return all commits.
RefsApi merge_into_branch POST /repositories/{repository}/refs/{sourceRef}/merge/{destinationBranch} merge references
RefsApi restore_refs PUT /repositories/{repository}/refs/restore Restore repository refs (tags, commits, branches) from object store
RepositoriesApi create_branch_protection_rule POST /repositories/{repository}/branch_protection  
RepositoriesApi create_repository POST /repositories create repository
RepositoriesApi delete_branch_protection_rule DELETE /repositories/{repository}/branch_protection  
RepositoriesApi delete_repository DELETE /repositories/{repository} delete repository
RepositoriesApi get_branch_protection_rules GET /repositories/{repository}/branch_protection get branch protection rules
RepositoriesApi get_repository GET /repositories/{repository} get repository
RepositoriesApi get_repository_metadata GET /repositories/{repository}/metadata get repository metadata
RepositoriesApi list_repositories GET /repositories list repositories
RetentionApi delete_garbage_collection_rules DELETE /repositories/{repository}/gc/rules  
RetentionApi get_garbage_collection_rules GET /repositories/{repository}/gc/rules  
RetentionApi prepare_garbage_collection_commits POST /repositories/{repository}/gc/prepare_commits save lists of active and expired commits for garbage collection
RetentionApi prepare_garbage_collection_uncommitted POST /repositories/{repository}/gc/prepare_uncommited save repository uncommitted metadata for garbage collection
RetentionApi set_garbage_collection_rules POST /repositories/{repository}/gc/rules  
StagingApi get_physical_address GET /repositories/{repository}/branches/{branch}/staging/backing get a physical address and a return token to write object to underlying storage
StagingApi link_physical_address PUT /repositories/{repository}/branches/{branch}/staging/backing associate staging on this physical address with a path
TagsApi create_tag POST /repositories/{repository}/tags create tag
TagsApi delete_tag DELETE /repositories/{repository}/tags/{tag} delete tag
TagsApi get_tag GET /repositories/{repository}/tags/{tag} get tag
TagsApi list_tags GET /repositories/{repository}/tags list tags

Documentation For Models

Documentation For Authorization






Notes for Large OpenAPI documents

If the OpenAPI document is large, imports in lakefs_client.apis and lakefs_client.models may fail with a RecursionError indicating the maximum recursion limit has been exceeded. In that case, there are a couple of solutions:

Solution 1: Use specific imports for apis and models like:

Solution 2: Before importing the package, adjust the maximum recursion limit as shown below:

import sys
import lakefs_client
from lakefs_client.apis import *
from lakefs_client.models import *