View on GitHub

lakeFS

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

lakefs_client.ExternalApi

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

Method HTTP request Description
create_user_external_principal POST /auth/users/{userId}/external/principals attach external principal to user
delete_user_external_principal DELETE /auth/users/{userId}/external/principals delete external principal from user
external_principal_login POST /auth/external/principal/login perform a login using an external authenticator
get_external_principal GET /auth/external/principals describe external principal by id
list_user_external_principals GET /auth/users/{userId}/external/principals/ls list user external policies attached to a user

create_user_external_principal

create_user_external_principal(user_id, principal_id)

attach external principal to user

Example

import time
import lakefs_client
from lakefs_client.api import external_api
from lakefs_client.model.error import Error
from lakefs_client.model.external_principal_creation import ExternalPrincipalCreation
from pprint import pprint
# Defining the host is optional and defaults to http://localhost/api/v1
# See configuration.py 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 = external_api.ExternalApi(api_client)
    user_id = "userId_example" # str | 
    principal_id = "principalId_example" # str | 
    external_principal_creation = ExternalPrincipalCreation(
        settings=[
            ExternalPrincipalSettings(
                key="key_example",
            ),
        ],
    ) # ExternalPrincipalCreation |  (optional)

    # example passing only required values which don't have defaults set
    try:
        # attach external principal to user
        api_instance.create_user_external_principal(user_id, principal_id)
    except lakefs_client.ApiException as e:
        print("Exception when calling ExternalApi->create_user_external_principal: %s\n" % e)

    # example passing only required values which don't have defaults set
    # and optional values
    try:
        # attach external principal to user
        api_instance.create_user_external_principal(user_id, principal_id, external_principal_creation=external_principal_creation)
    except lakefs_client.ApiException as e:
        print("Exception when calling ExternalApi->create_user_external_principal: %s\n" % e)

Parameters

Name Type Description Notes
user_id str    
principal_id str    
external_principal_creation ExternalPrincipalCreation   [optional]

Return type

void (empty response body)

Authorization

basic_auth, cookie_auth, jwt_token, oidc_auth, saml_auth

HTTP request headers

HTTP response details

Status code Description Response headers
201 external principal attached successfully -
401 Unauthorized -
404 Resource Not Found -
409 Resource Conflicts With Target -
420 too many requests -
0 Internal Server Error -

[Back to top] [Back to API list] [Back to Model list] [Back to README]

delete_user_external_principal

delete_user_external_principal(user_id, principal_id)

delete external principal from user

Example

import time
import lakefs_client
from lakefs_client.api import external_api
from lakefs_client.model.error import Error
from pprint import pprint
# Defining the host is optional and defaults to http://localhost/api/v1
# See configuration.py 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 = external_api.ExternalApi(api_client)
    user_id = "userId_example" # str | 
    principal_id = "principalId_example" # str | 

    # example passing only required values which don't have defaults set
    try:
        # delete external principal from user
        api_instance.delete_user_external_principal(user_id, principal_id)
    except lakefs_client.ApiException as e:
        print("Exception when calling ExternalApi->delete_user_external_principal: %s\n" % e)

Parameters

Name Type Description Notes
user_id str    
principal_id str    

Return type

void (empty response body)

Authorization

basic_auth, cookie_auth, jwt_token, oidc_auth, saml_auth

HTTP request headers

HTTP response details

Status code Description Response headers
204 external principal detached successfully -
401 Unauthorized -
404 Resource Not Found -
420 too many requests -
0 Internal Server Error -

[Back to top] [Back to API list] [Back to Model list] [Back to README]

external_principal_login

AuthenticationToken external_principal_login()

perform a login using an external authenticator

Example

import time
import lakefs_client
from lakefs_client.api import external_api
from lakefs_client.model.authentication_token import AuthenticationToken
from lakefs_client.model.external_login_information import ExternalLoginInformation
from lakefs_client.model.error import Error
from pprint import pprint
# Defining the host is optional and defaults to http://localhost/api/v1
# See configuration.py for a list of all supported configuration parameters.
configuration = lakefs_client.Configuration(
    host = "http://localhost/api/v1"
)


# Enter a context with an instance of the API client
with lakefs_client.ApiClient() as api_client:
    # Create an instance of the API class
    api_instance = external_api.ExternalApi(api_client)
    external_login_information = ExternalLoginInformation(
        token_expiration_duration=1,
        identity_request={},
    ) # ExternalLoginInformation |  (optional)

    # example passing only required values which don't have defaults set
    # and optional values
    try:
        # perform a login using an external authenticator
        api_response = api_instance.external_principal_login(external_login_information=external_login_information)
        pprint(api_response)
    except lakefs_client.ApiException as e:
        print("Exception when calling ExternalApi->external_principal_login: %s\n" % e)

Parameters

Name Type Description Notes
external_login_information ExternalLoginInformation   [optional]

Return type

AuthenticationToken

Authorization

No authorization required

HTTP request headers

HTTP response details

Status code Description Response headers
200 successful external login -
400 Bad Request -
401 Unauthorized -
403 Forbidden -
404 Resource Not Found -
420 too many requests -
0 Internal Server Error -

[Back to top] [Back to API list] [Back to Model list] [Back to README]

get_external_principal

ExternalPrincipal get_external_principal(principal_id)

describe external principal by id

Example

import time
import lakefs_client
from lakefs_client.api import external_api
from lakefs_client.model.external_principal import ExternalPrincipal
from lakefs_client.model.error import Error
from pprint import pprint
# Defining the host is optional and defaults to http://localhost/api/v1
# See configuration.py 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 = external_api.ExternalApi(api_client)
    principal_id = "principalId_example" # str | 

    # example passing only required values which don't have defaults set
    try:
        # describe external principal by id
        api_response = api_instance.get_external_principal(principal_id)
        pprint(api_response)
    except lakefs_client.ApiException as e:
        print("Exception when calling ExternalApi->get_external_principal: %s\n" % e)

Parameters

Name Type Description Notes
principal_id str    

Return type

ExternalPrincipal

Authorization

basic_auth, cookie_auth, jwt_token, oidc_auth, saml_auth

HTTP request headers

HTTP response details

Status code Description Response headers
200 external principal -
401 Unauthorized -
404 Resource Not Found -
420 too many requests -
0 Internal Server Error -

[Back to top] [Back to API list] [Back to Model list] [Back to README]

list_user_external_principals

ExternalPrincipalList list_user_external_principals(user_id)

list user external policies attached to a user

Example

import time
import lakefs_client
from lakefs_client.api import external_api
from lakefs_client.model.error import Error
from lakefs_client.model.external_principal_list import ExternalPrincipalList
from pprint import pprint
# Defining the host is optional and defaults to http://localhost/api/v1
# See configuration.py 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 = external_api.ExternalApi(api_client)
    user_id = "userId_example" # str | 
    prefix = "prefix_example" # str | return items prefixed with this value (optional)
    after = "after_example" # str | return items after this value (optional)
    amount = 100 # int | how many items to return (optional) if omitted the server will use the default value of 100

    # example passing only required values which don't have defaults set
    try:
        # list user external policies attached to a user
        api_response = api_instance.list_user_external_principals(user_id)
        pprint(api_response)
    except lakefs_client.ApiException as e:
        print("Exception when calling ExternalApi->list_user_external_principals: %s\n" % e)

    # example passing only required values which don't have defaults set
    # and optional values
    try:
        # list user external policies attached to a user
        api_response = api_instance.list_user_external_principals(user_id, prefix=prefix, after=after, amount=amount)
        pprint(api_response)
    except lakefs_client.ApiException as e:
        print("Exception when calling ExternalApi->list_user_external_principals: %s\n" % e)

Parameters

Name Type Description Notes
user_id str    
prefix str return items prefixed with this value [optional]
after str return items after this value [optional]
amount int how many items to return [optional] if omitted the server will use the default value of 100

Return type

ExternalPrincipalList

Authorization

basic_auth, cookie_auth, jwt_token, oidc_auth, saml_auth

HTTP request headers

HTTP response details

Status code Description Response headers
200 external principals list -
401 Unauthorized -
404 Resource Not Found -
420 too many requests -
0 Internal Server Error -

[Back to top] [Back to API list] [Back to Model list] [Back to README]