Using the Python SDK
Authenticating Using Service Account Credentials
The example Python code shows how to authenticate the Arthur SDK using Service Account credentials.
import os
from scope_client.api_bindings import WorkspacesV1Api
from scope_client.api_bindings.api_client import ApiClient
from scope_client.auth import (
ArthurOAuthSessionAPIConfiguration,
ArthurOIDCMetadata,
ArthurClientCredentialsAPISession,
)
ARTHUR_HOST = "https://platform.arthur.ai"
SERVICE_ACCOUNT_ID = os.environ["ARTHUR_CLIENT_ID"]
SERVICE_ACCOUNT_SECRET = os.environ["ARTHUR_CLIENT_SECRET"]
if __name__ == "__main__":
sess = ArthurClientCredentialsAPISession(
client_id=SERVICE_ACCOUNT_ID,
client_secret=SERVICE_ACCOUNT_SECRET,
metadata=ArthurOIDCMetadata(arthur_host=ARTHUR_HOST),
)
api_client = ApiClient(
configuration=ArthurOAuthSessionAPIConfiguration(session=sess)
)
workspaces_client = WorkspacesV1Api(api_client)
print(f"Workspaces: {[ws.name for ws in workspaces_client.get_workspaces().records]}")
Authenticating Using User Credentials
This example Python code shows how to authenticate the Arthur SDK using user credentials (email + password).
from scope_client.api_bindings import WorkspacesV1Api
from scope_client.api_bindings.api_client import ApiClient
from scope_client.auth import ArthurOAuthSessionAPIConfiguration, DeviceAuthorizer
ARTHUR_HOST = "https://platform.arthur.ai"
if __name__ == "__main__":
sess = DeviceAuthorizer(arthur_host=ARTHUR_HOST).authorize()
api_client = ApiClient(
configuration=ArthurOAuthSessionAPIConfiguration(session=sess)
)
workspaces_client = WorkspacesV1Api(api_client)
print(f"Workspaces: {[ws.name for ws in workspaces_client.get_workspaces().records]}")
Updated about 2 months ago