scalekit-sdk-python 2.19.1__tar.gz → 2.21.0__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.19.1 → scalekit_sdk_python-2.21.0}/PKG-INFO +2 -2
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/README.md +1 -1
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/_version.py +1 -1
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/actions/actions.py +110 -24
- scalekit_sdk_python-2.21.0/scalekit/actions/models/custom_provider.py +596 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/actions/types.py +8 -1
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/client.py +17 -3
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/common/scalekit.py +8 -3
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/core.py +1 -1
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/mcp.py +158 -20
- scalekit_sdk_python-2.21.0/scalekit/resource.py +438 -0
- scalekit_sdk_python-2.21.0/scalekit/v1/auth/auth_pb2.py +248 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/auth/auth_pb2.pyi +59 -3
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/auth/auth_pb2_grpc.py +46 -13
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/auth/passwordless_pb2.py +19 -19
- scalekit_sdk_python-2.21.0/scalekit/v1/billing/billing_pb2.py +171 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/billing/billing_pb2.pyi +72 -12
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/billing/billing_pb2_grpc.py +131 -14
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/clients/clients_pb2.py +248 -200
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/clients/clients_pb2.pyi +69 -12
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/commons/commons_pb2.py +29 -29
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/connected_accounts/connected_accounts_pb2.py +75 -61
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/connected_accounts/connected_accounts_pb2.pyi +18 -2
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/connected_accounts/connected_accounts_pb2_grpc.py +34 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/connections/connections_pb2.py +108 -98
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/connections/connections_pb2.pyi +14 -4
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/environments/environments_pb2.py +164 -160
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/environments/environments_pb2.pyi +8 -4
- scalekit_sdk_python-2.21.0/scalekit/v1/gateway/gateway_pb2.py +153 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/gateway/gateway_pb2.pyi +6 -2
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/mcp/mcp_pb2.py +16 -10
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/mcp/mcp_pb2.pyi +6 -2
- scalekit_sdk_python-2.21.0/scalekit/v1/migrations/migrations_pb2.py +129 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/migrations/migrations_pb2.pyi +32 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/migrations/migrations_pb2_grpc.py +33 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/organizations/organizations_pb2.py +63 -29
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/organizations/organizations_pb2.pyi +47 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/organizations/organizations_pb2_grpc.py +66 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/tools/tools_pb2.py +48 -48
- scalekit_sdk_python-2.21.0/scalekit/v1/triggers/triggers_pb2.py +376 -0
- scalekit_sdk_python-2.21.0/scalekit/v1/triggers/triggers_pb2.pyi +567 -0
- scalekit_sdk_python-2.21.0/scalekit/v1/triggers/triggers_pb2_grpc.py +518 -0
- scalekit_sdk_python-2.21.0/scalekit/v1/workspaces/__init__.py +0 -0
- scalekit_sdk_python-2.21.0/scalekit/v1/workspaces/workspaces_pb2.py +277 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/workspaces/workspaces_pb2.pyi +13 -4
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit_sdk_python.egg-info/PKG-INFO +2 -2
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit_sdk_python.egg-info/SOURCES.txt +8 -0
- scalekit_sdk_python-2.21.0/tests/test_actions_list_connected_accounts_pagination.py +41 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/tests/test_domain.py +18 -9
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/tests/test_mcp.py +46 -0
- scalekit_sdk_python-2.21.0/tests/test_mcp_connection_session_token.py +351 -0
- scalekit_sdk_python-2.21.0/tests/test_mcp_session_token_access_level.py +75 -0
- scalekit_sdk_python-2.21.0/tests/test_multi_issuer.py +143 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/tests/test_providers.py +366 -0
- scalekit_sdk_python-2.21.0/tests/test_resource.py +506 -0
- scalekit_sdk_python-2.19.1/scalekit/actions/models/custom_provider.py +0 -380
- scalekit_sdk_python-2.19.1/scalekit/resource.py +0 -96
- scalekit_sdk_python-2.19.1/scalekit/v1/auth/auth_pb2.py +0 -202
- scalekit_sdk_python-2.19.1/scalekit/v1/billing/billing_pb2.py +0 -135
- scalekit_sdk_python-2.19.1/scalekit/v1/gateway/gateway_pb2.py +0 -151
- scalekit_sdk_python-2.19.1/scalekit/v1/migrations/migrations_pb2.py +0 -119
- scalekit_sdk_python-2.19.1/scalekit/v1/workspaces/workspaces_pb2.py +0 -273
- scalekit_sdk_python-2.19.1/tests/test_resource.py +0 -81
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/LICENSE +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/buf/__init__.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/buf/validate/__init__.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/buf/validate/validate_pb2.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/buf/validate/validate_pb2.pyi +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/buf/validate/validate_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/pyproject.toml +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/__init__.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/actions/__init__.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/actions/frameworks/__init__.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/actions/frameworks/google_adk.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/actions/frameworks/langchain.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/actions/frameworks/types/__init__.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/actions/frameworks/types/google_adk_tool.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/actions/frameworks/util.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/actions/models/__init__.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/actions/models/mcp_config.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/actions/models/mcp_connection_auth_state.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/actions/models/mcp_instance.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/actions/models/requests/__init__.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/actions/models/requests/create_connected_account_request.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/actions/models/requests/create_custom_provider_request.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/actions/models/requests/delete_custom_provider_request.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/actions/models/requests/list_providers_request.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/actions/models/requests/mcp_request.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/actions/models/requests/tool_request.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/actions/models/requests/update_connected_account_request.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/actions/models/requests/update_custom_provider_request.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/actions/models/responses/__init__.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/actions/models/responses/create_connected_account_response.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/actions/models/responses/create_custom_provider_response.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/actions/models/responses/create_mcp_config_response.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/actions/models/responses/create_mcp_response.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/actions/models/responses/create_mcp_session_token_response.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/actions/models/responses/delete_connected_account_response.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/actions/models/responses/delete_custom_provider_response.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/actions/models/responses/delete_mcp_config_response.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/actions/models/responses/delete_mcp_instance_response.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/actions/models/responses/ensure_mcp_instance_response.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/actions/models/responses/execute_tool_response.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/actions/models/responses/get_connected_account_auth_response.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/actions/models/responses/get_mcp_instance_auth_state_response.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/actions/models/responses/get_mcp_instance_response.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/actions/models/responses/get_mcp_response.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/actions/models/responses/list_connected_accounts_response.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/actions/models/responses/list_mcp_configs_response.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/actions/models/responses/list_mcp_connected_accounts_response.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/actions/models/responses/list_mcp_instances_response.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/actions/models/responses/list_providers_response.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/actions/models/responses/list_tools_response.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/actions/models/responses/magic_link_response.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/actions/models/responses/update_connected_account_response.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/actions/models/responses/update_custom_provider_response.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/actions/models/responses/update_mcp_config_response.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/actions/models/responses/update_mcp_instance_response.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/actions/models/responses/verify_connected_account_user_response.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/actions/models/tool_input_output.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/actions/models/tool_mapping.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/actions/modifier.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/auth.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/common/__init__.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/common/exceptions.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/common/user.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/connected_accounts.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/connection.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/constants/__init__.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/constants/user.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/directory.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/domain.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/events.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/frameworks/__init__.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/frameworks/django.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/frameworks/fastapi.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/frameworks/flask.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/m2m_client.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/middleware/__init__.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/middleware/csrf_state.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/middleware/protocol.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/middleware/session_crypto.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/middleware/session_manager.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/organization.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/passwordless.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/permissions.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/providers.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/role.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/sessions.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/token.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/tools.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/users.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/utils/__init__.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/utils/directory.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/__init__.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/agentkit_logs/__init__.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/agentkit_logs/agentkit_analytics_pb2.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/agentkit_logs/agentkit_analytics_pb2.pyi +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/agentkit_logs/agentkit_analytics_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/agentkit_logs/agentkit_logs_pb2.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/agentkit_logs/agentkit_logs_pb2.pyi +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/agentkit_logs/agentkit_logs_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/auditlogs/__init__.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/auditlogs/auditlogs_pb2.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/auditlogs/auditlogs_pb2.pyi +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/auditlogs/auditlogs_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/auth/__init__.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/auth/passwordless_pb2.pyi +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/auth/passwordless_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/auth/totp_pb2.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/auth/totp_pb2.pyi +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/auth/totp_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/auth/webauthn_pb2.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/auth/webauthn_pb2.pyi +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/auth/webauthn_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/billing/__init__.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/clients/__init__.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/clients/clients_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/commons/__init__.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/commons/commons_pb2.pyi +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/commons/commons_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/connected_accounts/__init__.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/connections/__init__.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/connections/connections_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/directories/__init__.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/directories/directories_pb2.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/directories/directories_pb2.pyi +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/directories/directories_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/domains/__init__.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/domains/domains_pb2.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/domains/domains_pb2.pyi +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/domains/domains_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/emails/__init__.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/emails/emails_pb2.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/emails/emails_pb2.pyi +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/emails/emails_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/environments/__init__.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/environments/environments_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/errdetails/__init__.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/errdetails/errdetails_pb2.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/errdetails/errdetails_pb2.pyi +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/errdetails/errdetails_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/events/__init__.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/events/events_pb2.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/events/events_pb2.pyi +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/events/events_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/gateway/__init__.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/gateway/gateway_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/interceptors/__init__.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/interceptors/interceptors_pb2.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/interceptors/interceptors_pb2.pyi +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/interceptors/interceptors_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/keys/__init__.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/keys/keys_pb2.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/keys/keys_pb2.pyi +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/keys/keys_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/logstreams/__init__.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/logstreams/logstreams_pb2.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/logstreams/logstreams_pb2.pyi +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/logstreams/logstreams_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/mcp/__init__.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/mcp/mcp_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/members/__init__.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/members/members_pb2.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/members/members_pb2.pyi +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/members/members_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/migrations/__init__.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/options/__init__.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/options/options_pb2.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/options/options_pb2.pyi +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/options/options_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/organizations/__init__.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/providers/__init__.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/providers/providers_pb2.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/providers/providers_pb2.pyi +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/providers/providers_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/roles/__init__.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/roles/roles_pb2.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/roles/roles_pb2.pyi +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/roles/roles_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/secrets/__init__.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/secrets/secrets_pb2.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/secrets/secrets_pb2.pyi +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/secrets/secrets_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/sessions/__init__.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/sessions/sessions_pb2.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/sessions/sessions_pb2.pyi +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/sessions/sessions_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/tokens/__init__.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/tokens/tokens_pb2.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/tokens/tokens_pb2.pyi +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/tokens/tokens_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/tools/__init__.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/tools/tools_pb2.pyi +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/tools/tools_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.19.1/scalekit/v1/user_attributes → scalekit_sdk_python-2.21.0/scalekit/v1/triggers}/__init__.py +0 -0
- {scalekit_sdk_python-2.19.1/scalekit/v1/users → scalekit_sdk_python-2.21.0/scalekit/v1/user_attributes}/__init__.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/user_attributes/user_attributes_pb2.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/user_attributes/user_attributes_pb2.pyi +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/user_attributes/user_attributes_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.19.1/scalekit/v1/webhooks → scalekit_sdk_python-2.21.0/scalekit/v1/users}/__init__.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/users/users_pb2.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/users/users_pb2.pyi +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/users/users_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.19.1/scalekit/v1/workspaces → scalekit_sdk_python-2.21.0/scalekit/v1/webhooks}/__init__.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/webhooks/webhooks_pb2.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/webhooks/webhooks_pb2.pyi +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/webhooks/webhooks_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/v1/workspaces/workspaces_pb2_grpc.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit/webauthn.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit_sdk_python.egg-info/dependency_links.txt +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit_sdk_python.egg-info/requires.txt +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/scalekit_sdk_python.egg-info/top_level.txt +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/setup.cfg +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/setup.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/tests/test_actions.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/tests/test_call_timeout.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/tests/test_connected_accounts.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/tests/test_connection.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/tests/test_directory.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/tests/test_events.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/tests/test_http_timeout.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/tests/test_keepalive_channel_options.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/tests/test_login.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/tests/test_m2m_client.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/tests/test_middleware_csrf_state.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/tests/test_middleware_django.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/tests/test_middleware_fastapi.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/tests/test_middleware_flask.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/tests/test_middleware_session_crypto.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/tests/test_middleware_session_manager.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/tests/test_org_roles.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/tests/test_organization.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/tests/test_organization_session_policy.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/tests/test_organization_slug_logo.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/tests/test_passwordless.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/tests/test_permissions.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/tests/test_role_defaults_dependent.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/tests/test_roles.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/tests/test_sessions.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/tests/test_sk819_retry_behavior.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/tests/test_tokens.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/tests/test_tools.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/tests/test_transient_error_no_retry.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/tests/test_user_roles_permissions.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/tests/test_users.py +0 -0
- {scalekit_sdk_python-2.19.1 → scalekit_sdk_python-2.21.0}/tests/test_webauthn_credentials.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: scalekit-sdk-python
|
|
3
|
-
Version: 2.
|
|
3
|
+
Version: 2.21.0
|
|
4
4
|
Summary: Scalekit official Python SDK
|
|
5
5
|
Home-page: https://github.com/scalekit-inc/scalekit-sdk-python
|
|
6
6
|
Author: Team Scalekit
|
|
@@ -60,7 +60,7 @@ Dynamic: summary
|
|
|
60
60
|
[](https://opensource.org/licenses/MIT)
|
|
61
61
|
[](https://pypi.org/project/scalekit-sdk-python/)
|
|
62
62
|
|
|
63
|
-
<a href="https://scalekit.com" target="_blank" rel="noopener noreferrer">Scalekit</a>
|
|
63
|
+
<a href="https://scalekit.com" target="_blank" rel="noopener noreferrer">Scalekit</a> provides auth and actions on behalf of users, with 500+ connectors and 20,000+ tools. 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.
|
|
64
64
|
|
|
65
65
|
## 🤖 Agent-First Features
|
|
66
66
|
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
[](https://opensource.org/licenses/MIT)
|
|
14
14
|
[](https://pypi.org/project/scalekit-sdk-python/)
|
|
15
15
|
|
|
16
|
-
<a href="https://scalekit.com" target="_blank" rel="noopener noreferrer">Scalekit</a>
|
|
16
|
+
<a href="https://scalekit.com" target="_blank" rel="noopener noreferrer">Scalekit</a> provides auth and actions on behalf of users, with 500+ connectors and 20,000+ tools. 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
17
|
|
|
18
18
|
## 🤖 Agent-First Features
|
|
19
19
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
from datetime import timedelta
|
|
2
|
-
from typing import Optional, Any, List, Dict, Union
|
|
2
|
+
from typing import Optional, Any, List, Dict, Union, overload
|
|
3
3
|
import requests
|
|
4
4
|
from scalekit.actions.types import ToolRequest,ExecuteToolResponse,MagicLinkResponse,ListConnectedAccountsResponse,ListToolsResponse,DeleteConnectedAccountResponse,GetConnectedAccountAuthResponse,GetConnectedAccountDetailsResponse,ToolInput, \
|
|
5
5
|
UpdateConnectedAccountResponse,CreateMcpConfigResponse,ListMcpConfigsResponse,UpdateMcpConfigResponse,DeleteMcpConfigResponse, \
|
|
@@ -16,6 +16,7 @@ from scalekit.actions.modifier import (
|
|
|
16
16
|
apply_pre_modifiers, apply_post_modifiers
|
|
17
17
|
)
|
|
18
18
|
from scalekit.common.exceptions import ScalekitNotFoundException
|
|
19
|
+
from scalekit.mcp import _check_connection_token_args
|
|
19
20
|
from scalekit.v1.tools.tools_pb2 import Filter
|
|
20
21
|
from google.protobuf.wrappers_pb2 import BoolValue
|
|
21
22
|
|
|
@@ -328,6 +329,8 @@ class ActionClient:
|
|
|
328
329
|
identifier: Optional[str] = None,
|
|
329
330
|
provider: Optional[str] = None,
|
|
330
331
|
connection_names: Optional[List[str]] = None,
|
|
332
|
+
page_size: Optional[int] = None,
|
|
333
|
+
page_token: Optional[str] = None,
|
|
331
334
|
**kwargs
|
|
332
335
|
) -> ListConnectedAccountsResponse:
|
|
333
336
|
"""List connected accounts with optional filtering.
|
|
@@ -341,14 +344,20 @@ class ActionClient:
|
|
|
341
344
|
of these connection slugs. Useful when you want to check multiple
|
|
342
345
|
connectors at once, e.g. ``["github", "google-calendar", "slack"]``.
|
|
343
346
|
Can be combined with ``identifier`` to narrow results to a specific user.
|
|
347
|
+
page_size: Maximum number of connected accounts per page (optional).
|
|
348
|
+
page_token: ``next_page_token`` from a previous response, to fetch the
|
|
349
|
+
next page (optional).
|
|
344
350
|
|
|
345
351
|
Returns:
|
|
346
|
-
ListConnectedAccountsResponse containing the matching connected accounts
|
|
352
|
+
ListConnectedAccountsResponse containing the matching connected accounts,
|
|
353
|
+
with ``next_page_token`` set when more pages remain.
|
|
347
354
|
"""
|
|
348
355
|
result_tuple = self.connected_accounts.list_connected_accounts(
|
|
349
356
|
connector=connection_name,
|
|
350
357
|
identifier=identifier,
|
|
351
358
|
provider=provider,
|
|
359
|
+
page_size=page_size,
|
|
360
|
+
page_token=page_token,
|
|
352
361
|
connection_names=connection_names,
|
|
353
362
|
)
|
|
354
363
|
return ListConnectedAccountsResponse.from_proto(result_tuple[0])
|
|
@@ -1358,63 +1367,140 @@ class ActionMcp:
|
|
|
1358
1367
|
)
|
|
1359
1368
|
return ListMcpConnectedAccountsResponse.from_proto(result_tuple[0])
|
|
1360
1369
|
|
|
1370
|
+
@overload
|
|
1361
1371
|
def create_session_token(
|
|
1362
1372
|
self,
|
|
1363
1373
|
mcp_config_id: str,
|
|
1364
1374
|
identifier: str,
|
|
1365
|
-
expiry:
|
|
1375
|
+
expiry: timedelta | None = None,
|
|
1376
|
+
access_level: str | None = None,
|
|
1377
|
+
) -> CreateMcpSessionTokenResponse: ...
|
|
1378
|
+
|
|
1379
|
+
@overload
|
|
1380
|
+
def create_session_token(
|
|
1381
|
+
self,
|
|
1382
|
+
*,
|
|
1383
|
+
connection_name: str,
|
|
1384
|
+
identifier: str,
|
|
1385
|
+
expiry: timedelta | None = None,
|
|
1386
|
+
access_level: str | None = None,
|
|
1387
|
+
) -> CreateMcpSessionTokenResponse: ...
|
|
1388
|
+
|
|
1389
|
+
def create_session_token(
|
|
1390
|
+
self,
|
|
1391
|
+
mcp_config_id: str | None = None,
|
|
1392
|
+
identifier: str | None = None,
|
|
1393
|
+
expiry: timedelta | None = None,
|
|
1394
|
+
access_level: str | None = None,
|
|
1395
|
+
*,
|
|
1396
|
+
connection_name: str | None = None,
|
|
1366
1397
|
) -> CreateMcpSessionTokenResponse:
|
|
1367
1398
|
"""Create a short-lived session token for a user to access an MCP server.
|
|
1368
1399
|
|
|
1369
|
-
|
|
1370
|
-
|
|
1371
|
-
|
|
1400
|
+
Pass exactly one of ``mcp_config_id`` or ``connection_name``; the
|
|
1401
|
+
token works only on the MCP server of that target:
|
|
1402
|
+
|
|
1403
|
+
- ``mcp_config_id``: the MCP configuration's server, at the config's
|
|
1404
|
+
``mcp_server_url``. It serves the tools the configuration exposes.
|
|
1405
|
+
- ``connection_name``: the connection's own MCP server, at
|
|
1406
|
+
``<environment_url>/mcp/v3/connections/<connection_name>``. It
|
|
1407
|
+
serves every tool of that connection, with no MCP configuration.
|
|
1408
|
+
|
|
1409
|
+
Send the token as a ``Bearer`` token in the ``Authorization`` header
|
|
1410
|
+
when calling that URL.
|
|
1372
1411
|
|
|
1373
1412
|
Args:
|
|
1374
|
-
mcp_config_id: Scalekit ID of the MCP configuration the token
|
|
1375
|
-
|
|
1376
|
-
identifier: End-user identifier
|
|
1377
|
-
the same email or opaque ID used when
|
|
1378
|
-
e.g. ``"alice@example.com"
|
|
1413
|
+
mcp_config_id: Scalekit ID of the MCP configuration the token
|
|
1414
|
+
grants access to, e.g. ``"cfg_01abc123"``.
|
|
1415
|
+
identifier: End-user identifier the token acts as. For a
|
|
1416
|
+
configuration, typically the same email or opaque ID used when
|
|
1417
|
+
calling ``ensure_instance``, e.g. ``"alice@example.com"``; for
|
|
1418
|
+
a connection, the user whose connected account on it is used.
|
|
1419
|
+
1 to 255 characters. Required.
|
|
1379
1420
|
expiry: Requested lifetime for the token as a Python ``timedelta``.
|
|
1380
|
-
|
|
1381
|
-
|
|
1421
|
+
The server accepts 60 seconds to 24 hours and applies 1 hour
|
|
1422
|
+
when omitted. Fractions of a second are dropped. Example values:
|
|
1382
1423
|
|
|
1383
1424
|
- ``timedelta(minutes=30)`` — 30-minute token
|
|
1384
1425
|
- ``timedelta(hours=8)`` — 8-hour token (work-day session)
|
|
1385
1426
|
- ``timedelta(days=1)`` — 24-hour token
|
|
1427
|
+
access_level: Tools the token can use. ``"READ_ONLY"`` limits it to
|
|
1428
|
+
tools annotated read-only: other tools are left out of the tool
|
|
1429
|
+
list and refused when called. ``"FULL"``, or omitting it, exposes
|
|
1430
|
+
every tool of the target. Values are case-sensitive.
|
|
1431
|
+
connection_name: Name of the connection whose MCP server the token
|
|
1432
|
+
grants access to, e.g. ``"gmail"``. Keyword-only. Matched
|
|
1433
|
+
without regard to case, but the server URL path is
|
|
1434
|
+
case-sensitive: connect using the name exactly as stored, e.g.
|
|
1435
|
+
copied from the dashboard.
|
|
1386
1436
|
|
|
1387
1437
|
Returns:
|
|
1388
1438
|
CreateMcpSessionTokenResponse: Contains:
|
|
1389
1439
|
|
|
1390
1440
|
- ``token`` (``str``) — opaque bearer token string.
|
|
1391
|
-
- ``expires_at`` (``datetime``) —
|
|
1441
|
+
- ``expires_at`` (``datetime``) — naive datetime, in UTC, when the
|
|
1442
|
+
token expires.
|
|
1392
1443
|
|
|
1393
1444
|
Raises:
|
|
1394
|
-
ValueError:
|
|
1445
|
+
ValueError: Raised before any request. Without
|
|
1446
|
+
``connection_name``: ``mcp_config_id`` or ``identifier`` is
|
|
1447
|
+
empty or missing. With ``connection_name``: ``mcp_config_id``
|
|
1448
|
+
is also given, ``connection_name`` is empty, or ``identifier``
|
|
1449
|
+
is missing or empty.
|
|
1450
|
+
ScalekitNotFoundException: No active connection has
|
|
1451
|
+
``connection_name``.
|
|
1452
|
+
ScalekitBadRequestException: Any other invalid request, e.g. an
|
|
1453
|
+
invalid ``identifier``, ``expiry`` or ``access_level``, or a
|
|
1454
|
+
connection that is not an AgentKit connection. Depending on
|
|
1455
|
+
the environment's configuration, a connection token also
|
|
1456
|
+
requires ``identifier`` to have an active connected account on
|
|
1457
|
+
the connection; otherwise the server creates a pending
|
|
1458
|
+
connected account for ``identifier`` if it has none on the
|
|
1459
|
+
connection, a token is minted, and the account is reported as
|
|
1460
|
+
not connected when tools are called.
|
|
1395
1461
|
|
|
1396
1462
|
Example::
|
|
1397
1463
|
|
|
1398
1464
|
from datetime import timedelta
|
|
1399
1465
|
|
|
1466
|
+
# MCP configuration
|
|
1400
1467
|
resp = client.actions.mcp.create_session_token(
|
|
1401
1468
|
mcp_config_id="cfg_01abc123",
|
|
1402
1469
|
identifier="alice@example.com",
|
|
1403
1470
|
expiry=timedelta(hours=8),
|
|
1404
1471
|
)
|
|
1405
1472
|
|
|
1473
|
+
# A connection's MCP server, read-only tools for 15 minutes
|
|
1474
|
+
resp = client.actions.mcp.create_session_token(
|
|
1475
|
+
connection_name="gmail",
|
|
1476
|
+
identifier="user_123",
|
|
1477
|
+
expiry=timedelta(minutes=15),
|
|
1478
|
+
access_level="READ_ONLY",
|
|
1479
|
+
)
|
|
1480
|
+
|
|
1406
1481
|
headers = {"Authorization": f"Bearer {resp.token}"}
|
|
1407
1482
|
# Use headers when calling the MCP server URL
|
|
1408
1483
|
"""
|
|
1409
|
-
if
|
|
1410
|
-
|
|
1411
|
-
|
|
1412
|
-
|
|
1413
|
-
|
|
1414
|
-
|
|
1415
|
-
|
|
1416
|
-
|
|
1417
|
-
|
|
1484
|
+
if connection_name is None:
|
|
1485
|
+
# Checks and messages unchanged from before connection_name existed.
|
|
1486
|
+
if not mcp_config_id:
|
|
1487
|
+
raise ValueError("mcp_config_id is required")
|
|
1488
|
+
if not identifier:
|
|
1489
|
+
raise ValueError("identifier is required")
|
|
1490
|
+
result_tuple = self._client().create_session_token(
|
|
1491
|
+
mcp_config_id=mcp_config_id,
|
|
1492
|
+
identifier=identifier,
|
|
1493
|
+
expiry=expiry,
|
|
1494
|
+
access_level=access_level,
|
|
1495
|
+
)
|
|
1496
|
+
else:
|
|
1497
|
+
identifier = _check_connection_token_args(mcp_config_id, connection_name, identifier)
|
|
1498
|
+
result_tuple = self._client().create_session_token(
|
|
1499
|
+
connection_name=connection_name,
|
|
1500
|
+
identifier=identifier,
|
|
1501
|
+
expiry=expiry,
|
|
1502
|
+
access_level=access_level,
|
|
1503
|
+
)
|
|
1418
1504
|
return CreateMcpSessionTokenResponse.from_proto(result_tuple[0])
|
|
1419
1505
|
|
|
1420
1506
|
|