diff --git a/packages/uipath/pyproject.toml b/packages/uipath/pyproject.toml index 28d05e372..edd1ec0e9 100644 --- a/packages/uipath/pyproject.toml +++ b/packages/uipath/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "uipath" -version = "2.14.30" +version = "2.14.31" description = "Python SDK and CLI for UiPath Platform, enabling programmatic interaction with automation services, process management, and deployment tools." readme = { file = "README.md", content-type = "text/markdown" } requires-python = ">=3.11" diff --git a/packages/uipath/src/uipath/_cli/_job_api.py b/packages/uipath/src/uipath/_cli/_job_api.py index 8777bc3a8..7f911ad56 100644 --- a/packages/uipath/src/uipath/_cli/_job_api.py +++ b/packages/uipath/src/uipath/_cli/_job_api.py @@ -64,6 +64,15 @@ class PythonJobLogDto: logLevel: int = LogLevel.INFORMATION.value +@dataclass +class PythonUserAccessTokenRequestDto: + """A token request; field names are the wire keys (do not rename).""" + + jobKey: str + resumeVersion: int | None = None + scopes: str | None = None + + @dataclass class JobExecutorError: """A result error; field names are the wire keys (do not rename).""" @@ -99,6 +108,11 @@ async def SendLog(self, log: PythonJobLogDto) -> None: async def SetResult(self, result: PythonJobResultDto) -> bool: """Submit the final result.""" + # Not abstract, so existing implementers still instantiate; the IPC proxy never runs the body. + async def GetUserAccessToken(self, request: PythonUserAccessTokenRequestDto) -> str: + """Request a user access token for the job; empty scopes means the job's default scopes.""" + raise NotImplementedError + def _to_log_level(levelno: int) -> int: if levelno >= logging.CRITICAL: diff --git a/packages/uipath/uv.lock b/packages/uipath/uv.lock index d4eb5cac9..7441005c5 100644 --- a/packages/uipath/uv.lock +++ b/packages/uipath/uv.lock @@ -2599,7 +2599,7 @@ wheels = [ [[package]] name = "uipath" -version = "2.14.30" +version = "2.14.31" source = { editable = "." } dependencies = [ { name = "applicationinsights" },