scalekit-sdk-python 2.4.1__tar.gz → 2.4.3__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- scalekit_sdk_python-2.4.3/PKG-INFO +204 -0
- scalekit_sdk_python-2.4.3/README.md +164 -0
- scalekit_sdk_python-2.4.3/scalekit/actions/__init__.py +6 -0
- scalekit_sdk_python-2.4.1/scalekit/connect/connect.py → scalekit_sdk_python-2.4.3/scalekit/actions/actions.py +8 -8
- {scalekit_sdk_python-2.4.1/scalekit/connect → scalekit_sdk_python-2.4.3/scalekit/actions}/frameworks/langchain.py +1 -1
- {scalekit_sdk_python-2.4.1/scalekit/connect → scalekit_sdk_python-2.4.3/scalekit/actions}/models/requests/mcp_request.py +1 -1
- {scalekit_sdk_python-2.4.1/scalekit/connect → scalekit_sdk_python-2.4.3/scalekit/actions}/models/responses/create_mcp_response.py +2 -2
- {scalekit_sdk_python-2.4.1/scalekit/connect → scalekit_sdk_python-2.4.3/scalekit/actions}/models/responses/get_mcp_response.py +1 -1
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/client.py +7 -2
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/core.py +1 -1
- scalekit_sdk_python-2.4.3/scalekit/permissions.py +206 -0
- scalekit_sdk_python-2.4.3/scalekit/role.py +335 -0
- scalekit_sdk_python-2.4.3/scalekit/sessions.py +66 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/domains/domains_pb2.py +8 -12
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/domains/domains_pb2.pyi +2 -6
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/environments/environments_pb2.py +34 -36
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/environments/environments_pb2.pyi +6 -4
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/roles/roles_pb2.py +24 -24
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/roles/roles_pb2_grpc.py +1 -26
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/sessions/sessions_pb2.py +7 -7
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/sessions/sessions_pb2.pyi +2 -6
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/tools/tools_pb2.py +28 -26
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/tools/tools_pb2.pyi +4 -2
- scalekit_sdk_python-2.4.3/scalekit_sdk_python.egg-info/PKG-INFO +204 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit_sdk_python.egg-info/SOURCES.txt +40 -23
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit_sdk_python.egg-info/requires.txt +1 -1
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/setup.py +2 -2
- scalekit_sdk_python-2.4.3/tests/test_connect.py +769 -0
- scalekit_sdk_python-2.4.3/tests/test_connected_accounts.py +342 -0
- scalekit_sdk_python-2.4.3/tests/test_connection.py +100 -0
- scalekit_sdk_python-2.4.3/tests/test_directory.py +133 -0
- scalekit_sdk_python-2.4.3/tests/test_domain.py +159 -0
- scalekit_sdk_python-2.4.3/tests/test_m2m_client.py +397 -0
- scalekit_sdk_python-2.4.3/tests/test_mcp.py +102 -0
- scalekit_sdk_python-2.4.3/tests/test_org_roles.py +121 -0
- scalekit_sdk_python-2.4.3/tests/test_organization.py +158 -0
- scalekit_sdk_python-2.4.3/tests/test_passwordless.py +248 -0
- scalekit_sdk_python-2.4.3/tests/test_permissions.py +337 -0
- scalekit_sdk_python-2.4.3/tests/test_roles.py +394 -0
- scalekit_sdk_python-2.4.3/tests/test_sessions.py +192 -0
- scalekit_sdk_python-2.4.3/tests/test_tools.py +117 -0
- scalekit_sdk_python-2.4.3/tests/test_users.py +600 -0
- scalekit_sdk_python-2.4.1/PKG-INFO +0 -167
- scalekit_sdk_python-2.4.1/README.md +0 -127
- scalekit_sdk_python-2.4.1/scalekit/connect/__init__.py +0 -6
- scalekit_sdk_python-2.4.1/scalekit/role.py +0 -137
- scalekit_sdk_python-2.4.1/scalekit_sdk_python.egg-info/PKG-INFO +0 -167
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/LICENSE +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/buf/__init__.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/buf/validate/__init__.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/buf/validate/expression_pb2.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/buf/validate/expression_pb2.pyi +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/buf/validate/expression_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/buf/validate/priv/__init__.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/buf/validate/priv/private_pb2.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/buf/validate/priv/private_pb2.pyi +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/buf/validate/priv/private_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/buf/validate/validate_pb2.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/buf/validate/validate_pb2.pyi +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/buf/validate/validate_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/__init__.py +0 -0
- {scalekit_sdk_python-2.4.1/scalekit/common → scalekit_sdk_python-2.4.3/scalekit/actions/frameworks}/__init__.py +0 -0
- {scalekit_sdk_python-2.4.1/scalekit/connect/frameworks → scalekit_sdk_python-2.4.3/scalekit/actions/models}/__init__.py +0 -0
- {scalekit_sdk_python-2.4.1/scalekit/connect/models → scalekit_sdk_python-2.4.3/scalekit/actions/models/requests}/__init__.py +0 -0
- {scalekit_sdk_python-2.4.1/scalekit/connect → scalekit_sdk_python-2.4.3/scalekit/actions}/models/requests/create_connected_account_request.py +0 -0
- {scalekit_sdk_python-2.4.1/scalekit/connect → scalekit_sdk_python-2.4.3/scalekit/actions}/models/requests/tool_request.py +0 -0
- {scalekit_sdk_python-2.4.1/scalekit/connect/models/requests → scalekit_sdk_python-2.4.3/scalekit/actions/models/responses}/__init__.py +0 -0
- {scalekit_sdk_python-2.4.1/scalekit/connect → scalekit_sdk_python-2.4.3/scalekit/actions}/models/responses/create_connected_account_response.py +0 -0
- {scalekit_sdk_python-2.4.1/scalekit/connect → scalekit_sdk_python-2.4.3/scalekit/actions}/models/responses/delete_connected_account_response.py +0 -0
- {scalekit_sdk_python-2.4.1/scalekit/connect → scalekit_sdk_python-2.4.3/scalekit/actions}/models/responses/execute_tool_response.py +0 -0
- {scalekit_sdk_python-2.4.1/scalekit/connect → scalekit_sdk_python-2.4.3/scalekit/actions}/models/responses/get_connected_account_auth_response.py +0 -0
- {scalekit_sdk_python-2.4.1/scalekit/connect → scalekit_sdk_python-2.4.3/scalekit/actions}/models/responses/list_connected_accounts_response.py +0 -0
- {scalekit_sdk_python-2.4.1/scalekit/connect → scalekit_sdk_python-2.4.3/scalekit/actions}/models/responses/magic_link_response.py +0 -0
- {scalekit_sdk_python-2.4.1/scalekit/connect → scalekit_sdk_python-2.4.3/scalekit/actions}/models/tool_input_output.py +0 -0
- {scalekit_sdk_python-2.4.1/scalekit/connect → scalekit_sdk_python-2.4.3/scalekit/actions}/models/tool_mapping.py +0 -0
- {scalekit_sdk_python-2.4.1/scalekit/connect → scalekit_sdk_python-2.4.3/scalekit/actions}/modifier.py +0 -0
- {scalekit_sdk_python-2.4.1/scalekit/connect → scalekit_sdk_python-2.4.3/scalekit/actions}/types.py +0 -0
- {scalekit_sdk_python-2.4.1/scalekit/connect/models/responses → scalekit_sdk_python-2.4.3/scalekit/common}/__init__.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/common/exceptions.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/common/scalekit.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/common/user.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/connected_accounts.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/connection.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/constants/__init__.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/constants/user.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/directory.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/domain.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/m2m_client.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/mcp.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/organization.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/passwordless.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/tools.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/users.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/utils/__init__.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/utils/directory.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/__init__.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/auditlogs/__init__.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/auditlogs/auditlogs_pb2.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/auditlogs/auditlogs_pb2.pyi +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/auditlogs/auditlogs_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/auth/__init__.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/auth/auth_pb2.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/auth/auth_pb2.pyi +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/auth/auth_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/auth/passwordless_pb2.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/auth/passwordless_pb2.pyi +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/auth/passwordless_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/auth/totp_pb2.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/auth/totp_pb2.pyi +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/auth/totp_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/clients/__init__.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/clients/clients_pb2.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/clients/clients_pb2.pyi +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/clients/clients_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/commons/__init__.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/commons/commons_pb2.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/commons/commons_pb2.pyi +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/commons/commons_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/connected_accounts/__init__.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/connected_accounts/connected_accounts_pb2.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/connected_accounts/connected_accounts_pb2.pyi +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/connected_accounts/connected_accounts_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/connections/__init__.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/connections/connections_pb2.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/connections/connections_pb2.pyi +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/connections/connections_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/directories/__init__.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/directories/directories_pb2.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/directories/directories_pb2.pyi +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/directories/directories_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/domains/__init__.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/domains/domains_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/emails/__init__.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/emails/emails_pb2.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/emails/emails_pb2.pyi +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/emails/emails_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/environments/__init__.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/environments/environments_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/errdetails/__init__.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/errdetails/errdetails_pb2.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/errdetails/errdetails_pb2.pyi +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/errdetails/errdetails_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/events/__init__.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/events/events_pb2.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/events/events_pb2.pyi +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/events/events_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/mcp/__init__.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/mcp/mcp_pb2.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/mcp/mcp_pb2.pyi +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/mcp/mcp_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/members/__init__.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/members/members_pb2.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/members/members_pb2.pyi +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/members/members_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/migrations/__init__.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/migrations/migrations_pb2.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/migrations/migrations_pb2.pyi +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/migrations/migrations_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/options/__init__.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/options/options_pb2.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/options/options_pb2.pyi +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/options/options_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/organizations/__init__.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/organizations/organizations_pb2.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/organizations/organizations_pb2.pyi +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/organizations/organizations_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/providers/__init__.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/providers/providers_pb2.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/providers/providers_pb2.pyi +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/providers/providers_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/roles/__init__.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/roles/roles_pb2.pyi +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/sessions/__init__.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/sessions/sessions_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/tools/__init__.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/tools/tools_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/user_attributes/__init__.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/user_attributes/user_attributes_pb2.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/user_attributes/user_attributes_pb2.pyi +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/user_attributes/user_attributes_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/users/__init__.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/users/users_pb2.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/users/users_pb2.pyi +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/users/users_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/webhooks/__init__.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/webhooks/webhooks_pb2.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/webhooks/webhooks_pb2.pyi +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/webhooks/webhooks_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/workspaces/__init__.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/workspaces/workspaces_pb2.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/workspaces/workspaces_pb2.pyi +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit/v1/workspaces/workspaces_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit_sdk_python.egg-info/dependency_links.txt +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/scalekit_sdk_python.egg-info/top_level.txt +0 -0
- {scalekit_sdk_python-2.4.1 → scalekit_sdk_python-2.4.3}/setup.cfg +0 -0
|
@@ -0,0 +1,204 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: scalekit-sdk-python
|
|
3
|
+
Version: 2.4.3
|
|
4
|
+
Summary: Scalekit official Python SDK
|
|
5
|
+
Home-page: https://github.com/scalekit-inc/scalekit-sdk-python
|
|
6
|
+
Author: Team Scalekit
|
|
7
|
+
Author-email: support@scalekit.com
|
|
8
|
+
License: MIT
|
|
9
|
+
Classifier: Programming Language :: Python :: 3
|
|
10
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
11
|
+
Classifier: Operating System :: OS Independent
|
|
12
|
+
Description-Content-Type: text/markdown
|
|
13
|
+
License-File: LICENSE
|
|
14
|
+
Requires-Dist: grpcio>=1.64.1
|
|
15
|
+
Requires-Dist: protobuf<6.0.0,>=5.26.1
|
|
16
|
+
Requires-Dist: google>=3.0
|
|
17
|
+
Requires-Dist: requests>=2.32.3
|
|
18
|
+
Requires-Dist: PyJWT<2.10,>=2.8
|
|
19
|
+
Requires-Dist: cffi>=1.15.1
|
|
20
|
+
Requires-Dist: cryptography==45.0.6
|
|
21
|
+
Requires-Dist: setuptools>=78.1.1
|
|
22
|
+
Requires-Dist: grpcio-status<1.67,>=1.64
|
|
23
|
+
Requires-Dist: protoc-gen-openapiv2>=0.0.1
|
|
24
|
+
Requires-Dist: googleapis-common-protos<1.66.0,>=1.56.1
|
|
25
|
+
Requires-Dist: deprecation>=2.1.0
|
|
26
|
+
Requires-Dist: python-dotenv>=1.1.0
|
|
27
|
+
Requires-Dist: Faker~=25.8.0
|
|
28
|
+
Requires-Dist: pydantic~=2.11.2
|
|
29
|
+
Requires-Dist: langchain-core<0.4,>=0.3.36
|
|
30
|
+
Dynamic: author
|
|
31
|
+
Dynamic: author-email
|
|
32
|
+
Dynamic: classifier
|
|
33
|
+
Dynamic: description
|
|
34
|
+
Dynamic: description-content-type
|
|
35
|
+
Dynamic: home-page
|
|
36
|
+
Dynamic: license
|
|
37
|
+
Dynamic: license-file
|
|
38
|
+
Dynamic: requires-dist
|
|
39
|
+
Dynamic: summary
|
|
40
|
+
|
|
41
|
+
<p align="left">
|
|
42
|
+
<a href="https://scalekit.com" target="_blank" rel="noopener noreferrer">
|
|
43
|
+
<picture>
|
|
44
|
+
<img src="https://cdn.scalekit.cloud/v1/scalekit-logo-dark.svg" height="64">
|
|
45
|
+
</picture>
|
|
46
|
+
</a>
|
|
47
|
+
<br/>
|
|
48
|
+
</p>
|
|
49
|
+
|
|
50
|
+
# Official Python SDK
|
|
51
|
+
|
|
52
|
+
[](https://pypi.org/project/scalekit-sdk-python/)
|
|
53
|
+
[](https://opensource.org/licenses/MIT)
|
|
54
|
+
[](https://pypi.org/project/scalekit-sdk-python/)
|
|
55
|
+
|
|
56
|
+
<a href="https://scalekit.com" target="_blank" rel="noopener noreferrer">Scalekit</a> is the **auth stack for AI apps** - from human authentication to agent authorization. Build secure AI products faster with authentication for humans (SSO, passwordless, full-stack auth) and agents (MCP/APIs, delegated actions), all unified on one platform. This Python SDK enables both traditional B2B authentication and cutting-edge agentic workflows.
|
|
57
|
+
|
|
58
|
+
## 🤖 Agent-First Features
|
|
59
|
+
|
|
60
|
+
- **🔐 Agent Identity**: Agents as first-class actors with human ownership and org context
|
|
61
|
+
- **🎯 MCP-Native OAuth 2.1**: Purpose-built for Model Context Protocol with DCR/PKCE support
|
|
62
|
+
- **⏰ Ephemeral Credentials**: Time-bound, task-based authorization (minutes, not days)
|
|
63
|
+
- **🔒 Token Vault**: Per-user, per-tool token storage with rotation and progressive consent
|
|
64
|
+
- **👥 Human-in-the-Loop**: Step-up authentication when risk crosses thresholds
|
|
65
|
+
- **📊 Immutable Audit**: Track which user initiated, which agent acted, what resource was accessed
|
|
66
|
+
|
|
67
|
+
## 👨💼 Human Authentication
|
|
68
|
+
|
|
69
|
+
- **🔐 Enterprise SSO**: Support for SAML and OIDC protocols
|
|
70
|
+
- **👥 SCIM Provisioning**: Automated user provisioning and deprovisioning
|
|
71
|
+
- **🚀 Passwordless Authentication**: Magic links, OTP, and modern auth flows
|
|
72
|
+
- **🏢 Multi-tenant Architecture**: Organization-level authentication policies
|
|
73
|
+
- **📱 Social Logins**: Support for popular social identity providers
|
|
74
|
+
- **🛡️ Full-Stack Auth**: Complete IdP-of-record solution for B2B SaaS
|
|
75
|
+
- **🐍 Pythonic API**: Clean, intuitive interface following Python conventions
|
|
76
|
+
|
|
77
|
+
<div>
|
|
78
|
+
📚 <a target="_blank" href="https://docs.scalekit.com">Documentation</a> • 🚀 <a target="_blank" href="https://docs.scalekit.com/sso/quickstart/">SSO Quickstart</a> • 💻 <a target="_blank" href="https://docs.scalekit.com/apis">API Reference</a>
|
|
79
|
+
</div>
|
|
80
|
+
<hr />
|
|
81
|
+
|
|
82
|
+
## Pre-requisites
|
|
83
|
+
|
|
84
|
+
1. [Sign up](https://scalekit.com) for a Scalekit account.
|
|
85
|
+
2. Get your ```env_url```, ```client_id``` and ```client_secret``` from the Scalekit dashboard.
|
|
86
|
+
|
|
87
|
+
## Installation
|
|
88
|
+
|
|
89
|
+
Install Scalekit SDK using your preferred package manager.
|
|
90
|
+
|
|
91
|
+
```sh
|
|
92
|
+
pip install scalekit-sdk-python
|
|
93
|
+
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
## Usage
|
|
97
|
+
|
|
98
|
+
```py
|
|
99
|
+
|
|
100
|
+
from scalekit import ScalekitClient
|
|
101
|
+
|
|
102
|
+
sc = ScalekitClient(
|
|
103
|
+
env_url,
|
|
104
|
+
client_id,
|
|
105
|
+
client_secret
|
|
106
|
+
)
|
|
107
|
+
|
|
108
|
+
# Use the sc object to interact with the Scalekit API
|
|
109
|
+
auth_url = sc.get_authorization_url(
|
|
110
|
+
"https://acme-corp.com/redirect-uri",
|
|
111
|
+
state="state",
|
|
112
|
+
connection_id="con_123456789"
|
|
113
|
+
)
|
|
114
|
+
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
##### Minimum Requirements
|
|
118
|
+
|
|
119
|
+
To use the Scalekit Python SDK, you must have the following:
|
|
120
|
+
|
|
121
|
+
| Component | Version |
|
|
122
|
+
| --------- | ------- |
|
|
123
|
+
| Python | 3.8+ |
|
|
124
|
+
|
|
125
|
+
> **Tip:** Although Python 3.8 meets the minimum requirement, using a more recent version (such as Python 3.9 or later) is advisable.
|
|
126
|
+
|
|
127
|
+
|
|
128
|
+
## Examples - SSO with FastAPI
|
|
129
|
+
|
|
130
|
+
Below is a simple code sample that showcases how to implement Single Sign-on using Scalekit SDK
|
|
131
|
+
|
|
132
|
+
```py
|
|
133
|
+
from fastapi import FastAPI, Request, Response
|
|
134
|
+
from scalekit import ScalekitClient
|
|
135
|
+
import uvicorn
|
|
136
|
+
|
|
137
|
+
app = FastAPI()
|
|
138
|
+
|
|
139
|
+
sc = ScalekitClient(
|
|
140
|
+
env_url,
|
|
141
|
+
client_id,
|
|
142
|
+
client_secret
|
|
143
|
+
)
|
|
144
|
+
|
|
145
|
+
redirect_uri = "http://localhost:8000/auth/callback"
|
|
146
|
+
|
|
147
|
+
@app.get("/auth/login")
|
|
148
|
+
async def auth_login(request: Request):
|
|
149
|
+
auth_url = sc.get_authorization_url(
|
|
150
|
+
redirect_uri,
|
|
151
|
+
state="state",
|
|
152
|
+
connection_id="con_123456789"
|
|
153
|
+
)
|
|
154
|
+
return Response(status_code=302, headers={"Location": auth_url})
|
|
155
|
+
|
|
156
|
+
@app.get("/auth/callback")
|
|
157
|
+
async def auth_callback(request: Request):
|
|
158
|
+
code = request.query_params.get("code")
|
|
159
|
+
token = sc.authenticate_with_code(
|
|
160
|
+
code,
|
|
161
|
+
redirect_uri
|
|
162
|
+
)
|
|
163
|
+
response = JSONResponse(content=token)
|
|
164
|
+
response.set_cookie("access_token", token["access_token"])
|
|
165
|
+
|
|
166
|
+
return response
|
|
167
|
+
|
|
168
|
+
if __name__ == "__main__":
|
|
169
|
+
uvicorn.run(app, port=8080)
|
|
170
|
+
|
|
171
|
+
```
|
|
172
|
+
|
|
173
|
+
## 📱 Example Apps
|
|
174
|
+
|
|
175
|
+
Explore fully functional sample applications built with popular Python frameworks and the Scalekit SDK:
|
|
176
|
+
|
|
177
|
+
| Framework | Repository | Description |
|
|
178
|
+
|-----------|------------|-------------|
|
|
179
|
+
| **FastAPI** | [scalekit-fastapi-example](https://github.com/scalekit-developers/scalekit-fastapi-example) | Modern async Python API framework |
|
|
180
|
+
|
|
181
|
+
## 🔗 Helpful Links
|
|
182
|
+
|
|
183
|
+
### 📖 Quickstart Guides
|
|
184
|
+
- [**SSO Integration**](https://docs.scalekit.com/sso/quickstart/) - Implement enterprise Single Sign-on
|
|
185
|
+
- [**Full Stack Auth**](https://docs.scalekit.com/fsa/quickstart/) - Complete authentication solution
|
|
186
|
+
- [**Passwordless Auth**](https://docs.scalekit.com/passwordless/quickstart/) - Modern authentication flows
|
|
187
|
+
- [**Social Logins**](https://docs.scalekit.com/social-logins/quickstart/) - Popular social identity providers
|
|
188
|
+
- [**Machine-to-Machine**](https://docs.scalekit.com/m2m/quickstart/) - API authentication
|
|
189
|
+
|
|
190
|
+
### 📚 Documentation & Reference
|
|
191
|
+
- [**API Reference**](https://docs.scalekit.com/apis) - Complete API documentation
|
|
192
|
+
- [**Developer Kit**](https://docs.scalekit.com/dev-kit/) - Tools and utilities
|
|
193
|
+
- [**API Authentication Guide**](https://docs.scalekit.com/guides/authenticate-scalekit-api/) - Secure API access
|
|
194
|
+
|
|
195
|
+
### 🛠️ Additional Resources
|
|
196
|
+
- [**Setup Guide**](https://docs.scalekit.com/guides/setup-scalekit/) - Initial platform configuration
|
|
197
|
+
- [**Code Examples**](https://docs.scalekit.com/directory/code-examples/) - Ready-to-use code snippets
|
|
198
|
+
- [**Admin Portal Guide**](https://docs.scalekit.com/directory/guides/admin-portal/) - Administrative interface
|
|
199
|
+
- [**Launch Checklist**](https://docs.scalekit.com/directory/guides/launch-checklist/) - Pre-production checklist
|
|
200
|
+
|
|
201
|
+
## License
|
|
202
|
+
|
|
203
|
+
This project is licensed under the **MIT license**.
|
|
204
|
+
See the [LICENSE](LICENSE) file for more information.
|
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
<p align="left">
|
|
2
|
+
<a href="https://scalekit.com" target="_blank" rel="noopener noreferrer">
|
|
3
|
+
<picture>
|
|
4
|
+
<img src="https://cdn.scalekit.cloud/v1/scalekit-logo-dark.svg" height="64">
|
|
5
|
+
</picture>
|
|
6
|
+
</a>
|
|
7
|
+
<br/>
|
|
8
|
+
</p>
|
|
9
|
+
|
|
10
|
+
# Official Python SDK
|
|
11
|
+
|
|
12
|
+
[](https://pypi.org/project/scalekit-sdk-python/)
|
|
13
|
+
[](https://opensource.org/licenses/MIT)
|
|
14
|
+
[](https://pypi.org/project/scalekit-sdk-python/)
|
|
15
|
+
|
|
16
|
+
<a href="https://scalekit.com" target="_blank" rel="noopener noreferrer">Scalekit</a> is the **auth stack for AI apps** - from human authentication to agent authorization. Build secure AI products faster with authentication for humans (SSO, passwordless, full-stack auth) and agents (MCP/APIs, delegated actions), all unified on one platform. This Python SDK enables both traditional B2B authentication and cutting-edge agentic workflows.
|
|
17
|
+
|
|
18
|
+
## 🤖 Agent-First Features
|
|
19
|
+
|
|
20
|
+
- **🔐 Agent Identity**: Agents as first-class actors with human ownership and org context
|
|
21
|
+
- **🎯 MCP-Native OAuth 2.1**: Purpose-built for Model Context Protocol with DCR/PKCE support
|
|
22
|
+
- **⏰ Ephemeral Credentials**: Time-bound, task-based authorization (minutes, not days)
|
|
23
|
+
- **🔒 Token Vault**: Per-user, per-tool token storage with rotation and progressive consent
|
|
24
|
+
- **👥 Human-in-the-Loop**: Step-up authentication when risk crosses thresholds
|
|
25
|
+
- **📊 Immutable Audit**: Track which user initiated, which agent acted, what resource was accessed
|
|
26
|
+
|
|
27
|
+
## 👨💼 Human Authentication
|
|
28
|
+
|
|
29
|
+
- **🔐 Enterprise SSO**: Support for SAML and OIDC protocols
|
|
30
|
+
- **👥 SCIM Provisioning**: Automated user provisioning and deprovisioning
|
|
31
|
+
- **🚀 Passwordless Authentication**: Magic links, OTP, and modern auth flows
|
|
32
|
+
- **🏢 Multi-tenant Architecture**: Organization-level authentication policies
|
|
33
|
+
- **📱 Social Logins**: Support for popular social identity providers
|
|
34
|
+
- **🛡️ Full-Stack Auth**: Complete IdP-of-record solution for B2B SaaS
|
|
35
|
+
- **🐍 Pythonic API**: Clean, intuitive interface following Python conventions
|
|
36
|
+
|
|
37
|
+
<div>
|
|
38
|
+
📚 <a target="_blank" href="https://docs.scalekit.com">Documentation</a> • 🚀 <a target="_blank" href="https://docs.scalekit.com/sso/quickstart/">SSO Quickstart</a> • 💻 <a target="_blank" href="https://docs.scalekit.com/apis">API Reference</a>
|
|
39
|
+
</div>
|
|
40
|
+
<hr />
|
|
41
|
+
|
|
42
|
+
## Pre-requisites
|
|
43
|
+
|
|
44
|
+
1. [Sign up](https://scalekit.com) for a Scalekit account.
|
|
45
|
+
2. Get your ```env_url```, ```client_id``` and ```client_secret``` from the Scalekit dashboard.
|
|
46
|
+
|
|
47
|
+
## Installation
|
|
48
|
+
|
|
49
|
+
Install Scalekit SDK using your preferred package manager.
|
|
50
|
+
|
|
51
|
+
```sh
|
|
52
|
+
pip install scalekit-sdk-python
|
|
53
|
+
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
## Usage
|
|
57
|
+
|
|
58
|
+
```py
|
|
59
|
+
|
|
60
|
+
from scalekit import ScalekitClient
|
|
61
|
+
|
|
62
|
+
sc = ScalekitClient(
|
|
63
|
+
env_url,
|
|
64
|
+
client_id,
|
|
65
|
+
client_secret
|
|
66
|
+
)
|
|
67
|
+
|
|
68
|
+
# Use the sc object to interact with the Scalekit API
|
|
69
|
+
auth_url = sc.get_authorization_url(
|
|
70
|
+
"https://acme-corp.com/redirect-uri",
|
|
71
|
+
state="state",
|
|
72
|
+
connection_id="con_123456789"
|
|
73
|
+
)
|
|
74
|
+
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
##### Minimum Requirements
|
|
78
|
+
|
|
79
|
+
To use the Scalekit Python SDK, you must have the following:
|
|
80
|
+
|
|
81
|
+
| Component | Version |
|
|
82
|
+
| --------- | ------- |
|
|
83
|
+
| Python | 3.8+ |
|
|
84
|
+
|
|
85
|
+
> **Tip:** Although Python 3.8 meets the minimum requirement, using a more recent version (such as Python 3.9 or later) is advisable.
|
|
86
|
+
|
|
87
|
+
|
|
88
|
+
## Examples - SSO with FastAPI
|
|
89
|
+
|
|
90
|
+
Below is a simple code sample that showcases how to implement Single Sign-on using Scalekit SDK
|
|
91
|
+
|
|
92
|
+
```py
|
|
93
|
+
from fastapi import FastAPI, Request, Response
|
|
94
|
+
from scalekit import ScalekitClient
|
|
95
|
+
import uvicorn
|
|
96
|
+
|
|
97
|
+
app = FastAPI()
|
|
98
|
+
|
|
99
|
+
sc = ScalekitClient(
|
|
100
|
+
env_url,
|
|
101
|
+
client_id,
|
|
102
|
+
client_secret
|
|
103
|
+
)
|
|
104
|
+
|
|
105
|
+
redirect_uri = "http://localhost:8000/auth/callback"
|
|
106
|
+
|
|
107
|
+
@app.get("/auth/login")
|
|
108
|
+
async def auth_login(request: Request):
|
|
109
|
+
auth_url = sc.get_authorization_url(
|
|
110
|
+
redirect_uri,
|
|
111
|
+
state="state",
|
|
112
|
+
connection_id="con_123456789"
|
|
113
|
+
)
|
|
114
|
+
return Response(status_code=302, headers={"Location": auth_url})
|
|
115
|
+
|
|
116
|
+
@app.get("/auth/callback")
|
|
117
|
+
async def auth_callback(request: Request):
|
|
118
|
+
code = request.query_params.get("code")
|
|
119
|
+
token = sc.authenticate_with_code(
|
|
120
|
+
code,
|
|
121
|
+
redirect_uri
|
|
122
|
+
)
|
|
123
|
+
response = JSONResponse(content=token)
|
|
124
|
+
response.set_cookie("access_token", token["access_token"])
|
|
125
|
+
|
|
126
|
+
return response
|
|
127
|
+
|
|
128
|
+
if __name__ == "__main__":
|
|
129
|
+
uvicorn.run(app, port=8080)
|
|
130
|
+
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
## 📱 Example Apps
|
|
134
|
+
|
|
135
|
+
Explore fully functional sample applications built with popular Python frameworks and the Scalekit SDK:
|
|
136
|
+
|
|
137
|
+
| Framework | Repository | Description |
|
|
138
|
+
|-----------|------------|-------------|
|
|
139
|
+
| **FastAPI** | [scalekit-fastapi-example](https://github.com/scalekit-developers/scalekit-fastapi-example) | Modern async Python API framework |
|
|
140
|
+
|
|
141
|
+
## 🔗 Helpful Links
|
|
142
|
+
|
|
143
|
+
### 📖 Quickstart Guides
|
|
144
|
+
- [**SSO Integration**](https://docs.scalekit.com/sso/quickstart/) - Implement enterprise Single Sign-on
|
|
145
|
+
- [**Full Stack Auth**](https://docs.scalekit.com/fsa/quickstart/) - Complete authentication solution
|
|
146
|
+
- [**Passwordless Auth**](https://docs.scalekit.com/passwordless/quickstart/) - Modern authentication flows
|
|
147
|
+
- [**Social Logins**](https://docs.scalekit.com/social-logins/quickstart/) - Popular social identity providers
|
|
148
|
+
- [**Machine-to-Machine**](https://docs.scalekit.com/m2m/quickstart/) - API authentication
|
|
149
|
+
|
|
150
|
+
### 📚 Documentation & Reference
|
|
151
|
+
- [**API Reference**](https://docs.scalekit.com/apis) - Complete API documentation
|
|
152
|
+
- [**Developer Kit**](https://docs.scalekit.com/dev-kit/) - Tools and utilities
|
|
153
|
+
- [**API Authentication Guide**](https://docs.scalekit.com/guides/authenticate-scalekit-api/) - Secure API access
|
|
154
|
+
|
|
155
|
+
### 🛠️ Additional Resources
|
|
156
|
+
- [**Setup Guide**](https://docs.scalekit.com/guides/setup-scalekit/) - Initial platform configuration
|
|
157
|
+
- [**Code Examples**](https://docs.scalekit.com/directory/code-examples/) - Ready-to-use code snippets
|
|
158
|
+
- [**Admin Portal Guide**](https://docs.scalekit.com/directory/guides/admin-portal/) - Administrative interface
|
|
159
|
+
- [**Launch Checklist**](https://docs.scalekit.com/directory/guides/launch-checklist/) - Pre-production checklist
|
|
160
|
+
|
|
161
|
+
## License
|
|
162
|
+
|
|
163
|
+
This project is licensed under the **MIT license**.
|
|
164
|
+
See the [LICENSE](LICENSE) file for more information.
|
|
@@ -2,27 +2,27 @@ from typing import Optional, Any, List, Dict
|
|
|
2
2
|
from scalekit.v1.mcp.mcp_pb2 import Mcp
|
|
3
3
|
from scalekit.v1.mcp.mcp_pb2 import ToolMapping as ProtoToolMapping
|
|
4
4
|
|
|
5
|
-
from scalekit.
|
|
6
|
-
from scalekit.
|
|
5
|
+
from scalekit.actions.models.tool_mapping import ToolMapping
|
|
6
|
+
from scalekit.actions.types import ToolRequest,ExecuteToolResponse,MagicLinkResponse,ListConnectedAccountsResponse,DeleteConnectedAccountResponse,GetConnectedAccountAuthResponse,ToolInput, \
|
|
7
7
|
McpRequest,CreateMcpResponse,GetMcpResponse
|
|
8
|
-
from scalekit.
|
|
9
|
-
from scalekit.
|
|
10
|
-
from scalekit.
|
|
8
|
+
from scalekit.actions.models.responses.create_connected_account_response import CreateConnectedAccountResponse
|
|
9
|
+
from scalekit.actions.models.requests.create_connected_account_request import CreateConnectedAccountRequest
|
|
10
|
+
from scalekit.actions.modifier import (
|
|
11
11
|
Modifier, ModifierType, ToolNames,
|
|
12
12
|
apply_pre_modifiers, apply_post_modifiers
|
|
13
13
|
)
|
|
14
|
-
from scalekit.
|
|
14
|
+
from scalekit.actions.frameworks.langchain import LangChain
|
|
15
15
|
from scalekit.common.exceptions import ScalekitNotFoundException
|
|
16
16
|
|
|
17
17
|
|
|
18
18
|
|
|
19
19
|
|
|
20
|
-
class
|
|
20
|
+
class ActionClient:
|
|
21
21
|
"""Class definition for Connect Client"""
|
|
22
22
|
|
|
23
23
|
def __init__(self,tools_client, connected_accounts_client, mcp_client=None):
|
|
24
24
|
"""
|
|
25
|
-
Initialize
|
|
25
|
+
Initialize ActionClient with tools, connected accounts, and MCP dependencies
|
|
26
26
|
|
|
27
27
|
:param tools_client: ToolsClient instance
|
|
28
28
|
:type: ToolsClient
|
|
@@ -77,7 +77,7 @@ class LangChain:
|
|
|
77
77
|
def _call(**arguments: Dict[str, Any]) -> str:
|
|
78
78
|
try:
|
|
79
79
|
# Import here to avoid circular imports
|
|
80
|
-
from scalekit.
|
|
80
|
+
from scalekit.actions.types import ToolInput
|
|
81
81
|
|
|
82
82
|
|
|
83
83
|
# Call connect.execute_tool via callback (includes modifiers and enhanced handling)
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
from typing import Optional, List
|
|
2
2
|
from pydantic import BaseModel, Field, field_validator
|
|
3
3
|
|
|
4
|
-
from scalekit.
|
|
4
|
+
from scalekit.actions.models.tool_mapping import ToolMapping
|
|
5
5
|
|
|
6
6
|
# TODO: Add validation for tool_mappings to ensure unique tool names across mappings
|
|
7
7
|
class McpRequest(BaseModel):
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
from typing import Optional, Dict, Any, List
|
|
2
2
|
from pydantic import BaseModel, Field
|
|
3
|
-
from google.protobuf.json_format import MessageToDict
|
|
4
3
|
|
|
5
|
-
|
|
4
|
+
|
|
5
|
+
from scalekit.actions.models.tool_mapping import ToolMapping
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
class CreateMcpResponse(BaseModel):
|
|
@@ -2,7 +2,7 @@ from typing import Optional, Dict, Any, List
|
|
|
2
2
|
from pydantic import BaseModel, Field
|
|
3
3
|
from google.protobuf.json_format import MessageToDict
|
|
4
4
|
|
|
5
|
-
from scalekit.
|
|
5
|
+
from scalekit.actions.models.tool_mapping import ToolMapping
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
class GetMcpResponse(BaseModel):
|
|
@@ -16,11 +16,13 @@ from scalekit.organization import OrganizationClient
|
|
|
16
16
|
from scalekit.directory import DirectoryClient
|
|
17
17
|
from scalekit.users import UserClient
|
|
18
18
|
from scalekit.role import RoleClient
|
|
19
|
+
from scalekit.permissions import PermissionClient
|
|
19
20
|
from scalekit.connected_accounts import ConnectedAccountsClient
|
|
20
21
|
from scalekit.tools import ToolsClient
|
|
21
|
-
from scalekit.
|
|
22
|
+
from scalekit.actions import ActionClient
|
|
22
23
|
from scalekit.passwordless import PasswordlessClient
|
|
23
24
|
from scalekit.mcp import McpClient
|
|
25
|
+
from scalekit.sessions import SessionsClient
|
|
24
26
|
from scalekit.common.scalekit import (
|
|
25
27
|
AuthorizationUrlOptions,
|
|
26
28
|
CodeAuthenticationOptions,
|
|
@@ -66,11 +68,14 @@ class ScalekitClient:
|
|
|
66
68
|
self.m2m_client = M2MClient(self.core_client)
|
|
67
69
|
self.users = UserClient(self.core_client)
|
|
68
70
|
self.roles = RoleClient(self.core_client)
|
|
71
|
+
self.permissions = PermissionClient(self.core_client)
|
|
69
72
|
self.connected_accounts = ConnectedAccountsClient(self.core_client)
|
|
70
73
|
self.tools = ToolsClient(self.core_client)
|
|
71
74
|
self.mcp = McpClient(self.core_client)
|
|
72
|
-
self.connect =
|
|
75
|
+
self.connect = ActionClient(self.tools, self.connected_accounts, self.mcp)
|
|
76
|
+
self.actions = ActionClient(self.tools, self.connected_accounts, self.mcp)
|
|
73
77
|
self.passwordless = PasswordlessClient(self.core_client)
|
|
78
|
+
self.sessions = SessionsClient(self.core_client)
|
|
74
79
|
except Exception as exp:
|
|
75
80
|
raise exp
|
|
76
81
|
|
|
@@ -26,7 +26,7 @@ class WithCall(Protocol):
|
|
|
26
26
|
class CoreClient:
|
|
27
27
|
"""Class definition for Core Client"""
|
|
28
28
|
|
|
29
|
-
sdk_version = "Scalekit-Python/2.4.
|
|
29
|
+
sdk_version = "Scalekit-Python/2.4.3"
|
|
30
30
|
api_version = "20250901"
|
|
31
31
|
user_agent = f"{sdk_version} Python/{platform.python_version()} ({platform.system()}; {platform.architecture()}"
|
|
32
32
|
|