uipath 1.0.0__tar.gz → 2.0.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.

Potentially problematic release.


This version of uipath might be problematic. Click here for more details.

Files changed (107) hide show
  1. uipath-2.0.0/.gitignore +19 -0
  2. uipath-2.0.0/PKG-INFO +197 -0
  3. uipath-2.0.0/README.md +170 -0
  4. uipath-2.0.0/pyproject.toml +112 -0
  5. uipath-2.0.0/uipath/__init__.py +24 -0
  6. uipath-2.0.0/uipath/_cli/README.md +11 -0
  7. uipath-2.0.0/uipath/_cli/__init__.py +54 -0
  8. uipath-2.0.0/uipath/_cli/_auth/_auth_server.py +165 -0
  9. uipath-2.0.0/uipath/_cli/_auth/_models.py +51 -0
  10. uipath-2.0.0/uipath/_cli/_auth/_oidc_utils.py +69 -0
  11. uipath-2.0.0/uipath/_cli/_auth/_portal_service.py +163 -0
  12. uipath-2.0.0/uipath/_cli/_auth/_utils.py +51 -0
  13. uipath-2.0.0/uipath/_cli/_auth/auth_config.json +6 -0
  14. uipath-2.0.0/uipath/_cli/_auth/index.html +167 -0
  15. uipath-2.0.0/uipath/_cli/_auth/localhost.crt +25 -0
  16. uipath-2.0.0/uipath/_cli/_auth/localhost.key +27 -0
  17. uipath-2.0.0/uipath/_cli/_runtime/_contracts.py +429 -0
  18. uipath-2.0.0/uipath/_cli/_runtime/_logging.py +193 -0
  19. uipath-2.0.0/uipath/_cli/_runtime/_runtime.py +264 -0
  20. uipath-2.0.0/uipath/_cli/_templates/.psmdcp.template +9 -0
  21. uipath-2.0.0/uipath/_cli/_templates/.rels.template +5 -0
  22. uipath-2.0.0/uipath/_cli/_templates/[Content_Types].xml.template +9 -0
  23. uipath-2.0.0/uipath/_cli/_templates/main.py.template +25 -0
  24. uipath-2.0.0/uipath/_cli/_templates/package.nuspec.template +10 -0
  25. uipath-2.0.0/uipath/_cli/_utils/_common.py +24 -0
  26. uipath-2.0.0/uipath/_cli/_utils/_input_args.py +126 -0
  27. uipath-2.0.0/uipath/_cli/_utils/_parse_ast.py +542 -0
  28. uipath-2.0.0/uipath/_cli/cli_auth.py +97 -0
  29. uipath-2.0.0/uipath/_cli/cli_deploy.py +13 -0
  30. uipath-2.0.0/uipath/_cli/cli_init.py +113 -0
  31. uipath-2.0.0/uipath/_cli/cli_new.py +76 -0
  32. uipath-2.0.0/uipath/_cli/cli_pack.py +337 -0
  33. uipath-2.0.0/uipath/_cli/cli_publish.py +113 -0
  34. uipath-2.0.0/uipath/_cli/cli_run.py +133 -0
  35. uipath-2.0.0/uipath/_cli/middlewares.py +113 -0
  36. uipath-2.0.0/uipath/_config.py +6 -0
  37. uipath-2.0.0/uipath/_execution_context.py +83 -0
  38. uipath-2.0.0/uipath/_folder_context.py +62 -0
  39. uipath-2.0.0/uipath/_models/__init__.py +37 -0
  40. uipath-2.0.0/uipath/_models/action_schema.py +26 -0
  41. uipath-2.0.0/uipath/_models/actions.py +64 -0
  42. uipath-2.0.0/uipath/_models/assets.py +48 -0
  43. uipath-2.0.0/uipath/_models/connections.py +51 -0
  44. uipath-2.0.0/uipath/_models/context_grounding.py +18 -0
  45. uipath-2.0.0/uipath/_models/context_grounding_index.py +60 -0
  46. uipath-2.0.0/uipath/_models/exceptions.py +6 -0
  47. uipath-2.0.0/uipath/_models/interrupt_models.py +28 -0
  48. uipath-2.0.0/uipath/_models/job.py +66 -0
  49. uipath-2.0.0/uipath/_models/llm_gateway.py +101 -0
  50. uipath-2.0.0/uipath/_models/processes.py +48 -0
  51. uipath-2.0.0/uipath/_models/queues.py +167 -0
  52. uipath-2.0.0/uipath/_services/__init__.py +26 -0
  53. uipath-2.0.0/uipath/_services/_base_service.py +250 -0
  54. uipath-2.0.0/uipath/_services/actions_service.py +271 -0
  55. uipath-2.0.0/uipath/_services/api_client.py +89 -0
  56. uipath-2.0.0/uipath/_services/assets_service.py +257 -0
  57. uipath-2.0.0/uipath/_services/buckets_service.py +268 -0
  58. uipath-2.0.0/uipath/_services/connections_service.py +185 -0
  59. uipath-2.0.0/uipath/_services/connections_service.pyi +50 -0
  60. uipath-2.0.0/uipath/_services/context_grounding_service.py +402 -0
  61. uipath-2.0.0/uipath/_services/folder_service.py +49 -0
  62. uipath-2.0.0/uipath/_services/jobs_service.py +265 -0
  63. uipath-2.0.0/uipath/_services/llm_gateway_service.py +311 -0
  64. uipath-2.0.0/uipath/_services/processes_service.py +168 -0
  65. uipath-2.0.0/uipath/_services/queues_service.py +314 -0
  66. uipath-2.0.0/uipath/_uipath.py +98 -0
  67. uipath-2.0.0/uipath/_utils/__init__.py +17 -0
  68. uipath-2.0.0/uipath/_utils/_endpoint.py +79 -0
  69. uipath-2.0.0/uipath/_utils/_infer_bindings.py +30 -0
  70. uipath-2.0.0/uipath/_utils/_logs.py +15 -0
  71. uipath-2.0.0/uipath/_utils/_request_override.py +18 -0
  72. uipath-2.0.0/uipath/_utils/_request_spec.py +23 -0
  73. uipath-2.0.0/uipath/_utils/_user_agent.py +16 -0
  74. uipath-2.0.0/uipath/_utils/constants.py +25 -0
  75. uipath-2.0.0/uipath/py.typed +0 -0
  76. uipath-1.0.0/.github/workflows/docs.yml +0 -40
  77. uipath-1.0.0/.gitignore +0 -47
  78. uipath-1.0.0/LICENSE +0 -21
  79. uipath-1.0.0/PKG-INFO +0 -181
  80. uipath-1.0.0/README.md +0 -140
  81. uipath-1.0.0/docs/index.md +0 -30
  82. uipath-1.0.0/docs/requirements.txt +0 -3
  83. uipath-1.0.0/mkdocs.yml +0 -58
  84. uipath-1.0.0/pyproject.toml +0 -25
  85. uipath-1.0.0/setup.cfg +0 -4
  86. uipath-1.0.0/setup.py +0 -44
  87. uipath-1.0.0/uipath/__init__.py +0 -9
  88. uipath-1.0.0/uipath/__version__.py +0 -3
  89. uipath-1.0.0/uipath/auth/authentication.py +0 -53
  90. uipath-1.0.0/uipath/client/api_client.py +0 -58
  91. uipath-1.0.0/uipath/client/base_client.py +0 -46
  92. uipath-1.0.0/uipath/client/resources/__init__.py +0 -5
  93. uipath-1.0.0/uipath/client/resources/assets.py +0 -29
  94. uipath-1.0.0/uipath/client/resources/folders.py +0 -107
  95. uipath-1.0.0/uipath/client/resources/jobs.py +0 -113
  96. uipath-1.0.0/uipath/client/resources/libraries.py +0 -120
  97. uipath-1.0.0/uipath/client/resources/machines.py +0 -136
  98. uipath-1.0.0/uipath/client/resources/packages.py +0 -112
  99. uipath-1.0.0/uipath/client/resources/processes.py +0 -173
  100. uipath-1.0.0/uipath/client/resources/queues.py +0 -90
  101. uipath-1.0.0/uipath/client/resources/releases.py +0 -114
  102. uipath-1.0.0/uipath/client/resources/robots.py +0 -155
  103. uipath-1.0.0/uipath.egg-info/PKG-INFO +0 -181
  104. uipath-1.0.0/uipath.egg-info/SOURCES.txt +0 -30
  105. uipath-1.0.0/uipath.egg-info/dependency_links.txt +0 -1
  106. uipath-1.0.0/uipath.egg-info/requires.txt +0 -12
  107. uipath-1.0.0/uipath.egg-info/top_level.txt +0 -1
@@ -0,0 +1,19 @@
1
+ # Python-generated files
2
+ __pycache__/
3
+ *.py[oc]
4
+ build/
5
+ dist/
6
+ wheels/
7
+ *.egg-info
8
+
9
+ # Virtual environments
10
+ .venv
11
+ **/.env
12
+ **/uipath.db
13
+ **/.uipath
14
+ **/**.nupkg
15
+ **/uipath.json
16
+ **/__uipath/
17
+
18
+ **/playground.py
19
+ **/.idea
uipath-2.0.0/PKG-INFO ADDED
@@ -0,0 +1,197 @@
1
+ Metadata-Version: 2.4
2
+ Name: uipath
3
+ Version: 2.0.0
4
+ Summary: Python SDK and CLI for UiPath Platform, enabling programmatic interaction with automation services, process management, and deployment tools.
5
+ Project-URL: Homepage, https://uipath.com
6
+ Project-URL: Repository, https://github.com/UiPath/uipath-python
7
+ Maintainer-email: Marius Cosareanu <marius.cosareanu@uipath.com>, Cristian Pufu <cristian.pufu@uipath.com>
8
+ Classifier: Development Status :: 3 - Alpha
9
+ Classifier: Intended Audience :: Developers
10
+ Classifier: Programming Language :: Python :: 3.10
11
+ Classifier: Programming Language :: Python :: 3.11
12
+ Classifier: Programming Language :: Python :: 3.12
13
+ Classifier: Topic :: Software Development :: Build Tools
14
+ Requires-Python: >=3.10
15
+ Requires-Dist: click>=8.1.8
16
+ Requires-Dist: httpx>=0.28.1
17
+ Requires-Dist: pydantic>=2.11.1
18
+ Requires-Dist: pytest-asyncio>=0.25.3
19
+ Requires-Dist: python-dotenv>=1.0.1
20
+ Requires-Dist: requests>=2.32.3
21
+ Requires-Dist: tenacity>=9.0.0
22
+ Requires-Dist: tomli>=2.2.1
23
+ Requires-Dist: types-requests>=2.32.0.20250306
24
+ Provides-Extra: langchain
25
+ Requires-Dist: uipath-langchain==0.0.85; extra == 'langchain'
26
+ Description-Content-Type: text/markdown
27
+
28
+ # UiPath Python SDK
29
+
30
+ [![PyPI downloads](https://img.shields.io/pypi/dm/uipath.svg)](https://pypi.org/project/uipath/)
31
+ [![PyPI - Version](https://img.shields.io/pypi/v/uipath)](https://img.shields.io/pypi/v/uipath)
32
+ [![Python versions](https://img.shields.io/pypi/pyversions/uipath.svg)](https://pypi.org/project/uipath/)
33
+
34
+
35
+ A Python SDK that enables programmatic interaction with UiPath Platform services including processes, assets, buckets, context grounding, data services, jobs, and more. The package also features a CLI for creation, packaging, and deployment of automations to UiPath Platform.
36
+
37
+ ## Table of Contents
38
+
39
+ - [Installation](#installation)
40
+ - [Configuration](#configuration)
41
+ - [Environment Variables](#environment-variables)
42
+ - [Basic Usage](#basic-usage)
43
+ - [Available Services](#available-services)
44
+ - [Examples](#examples)
45
+ - [Buckets Service](#buckets-service)
46
+ - [Context Grounding Service](#context-grounding-service)
47
+ - [Command Line Interface (CLI)](#command-line-interface-cli)
48
+ - [Authentication](#authentication)
49
+ - [Initialize a Project](#initialize-a-project)
50
+ - [Debug a Project](#debug-a-project)
51
+ - [Package a Project](#package-a-project)
52
+ - [Publish a Package](#publish-a-package)
53
+ - [Project Structure](#project-structure)
54
+ - [Development](#development)
55
+ - [Setting Up a Development Environment](#setting-up-a-development-environment)
56
+
57
+ ## Installation
58
+
59
+ ```bash
60
+ pip install uipath
61
+ ```
62
+
63
+ using `uv`:
64
+
65
+ ```bash
66
+ uv add uipath
67
+ ```
68
+
69
+ ## Configuration
70
+
71
+ ### Environment Variables
72
+
73
+ Create a `.env` file in your project root with the following variables:
74
+
75
+ ```
76
+ UIPATH_URL=https://cloud.uipath.com/ACCOUNT_NAME/TENANT_NAME
77
+ UIPATH_ACCESS_TOKEN=YOUR_TOKEN_HERE
78
+ ```
79
+
80
+ ## Basic Usage
81
+
82
+ ```python
83
+ from uipath import UiPath
84
+ # Initialize the SDK
85
+ sdk = UiPath()
86
+ # Execute a process
87
+ job = sdk.processes.invoke(
88
+ name="MyProcess",
89
+ input_arguments={"param1": "value1", "param2": 42}
90
+ )
91
+ # Work with assets
92
+ asset = sdk.assets.retrieve(name="MyAsset")
93
+ ```
94
+
95
+ ## Available Services
96
+
97
+ The SDK provides access to various UiPath services:
98
+ - `sdk.processes` - Manage and execute UiPath automation processes
99
+ - `sdk.assets` - Work with assets (variables, credentials) stored in UiPath
100
+ - `sdk.buckets` - Manage cloud storage containers for automation files
101
+ - `sdk.connections` - Handle connections to external systems
102
+ - `sdk.context_grounding` - Work with semantic contexts for AI-enabled automation
103
+ - `sdk.jobs` - Monitor and manage automation jobs
104
+ - `sdk.queues` - Work with transaction queues
105
+ - `sdk.actions` - Work with Action Center
106
+ - `sdk.api_client` - Direct access to the API client for custom requests
107
+
108
+ ## Examples
109
+
110
+ ### Buckets Service
111
+
112
+ ```python
113
+ # Download a file from a bucket
114
+ sdk.buckets.download(
115
+ bucket_key="my-bucket",
116
+ blob_file_path="path/to/file.xlsx",
117
+ destination_path="local/path/file.xlsx"
118
+ )
119
+ ```
120
+
121
+ ### Context Grounding Service
122
+
123
+ ```python
124
+ # Search for contextual information
125
+ results = sdk.context_grounding.search(
126
+ name="my-knowledge-index",
127
+ query="How do I process an invoice?",
128
+ number_of_results=5
129
+ )
130
+ ```
131
+
132
+ ## Command Line Interface (CLI)
133
+
134
+ The SDK also provides a command-line interface for creating, packaging, and deploying automations:
135
+
136
+ ### Authentication
137
+
138
+ ```bash
139
+ uipath auth
140
+ ```
141
+
142
+ This command opens a browser for authentication and creates/updates your `.env` file with the proper credentials.
143
+
144
+ ### Initialize a Project
145
+
146
+ ```bash
147
+ uipath init [ENTRYPOINT]
148
+ ```
149
+
150
+ Creates a `uipath.json` configuration file for your project. If the entrypoint is not provided, it will try to find a single Python file in the current directory.
151
+
152
+ ### Debug a Project
153
+
154
+ ```bash
155
+ uipath run ENTRYPOINT [INPUT]
156
+ ```
157
+
158
+ Executes a Python script with the provided JSON input arguments.
159
+
160
+ ### Package a Project
161
+
162
+ ```bash
163
+ uipath pack
164
+ ```
165
+
166
+ Packages your project into a `.nupkg` file that can be deployed to UiPath.
167
+
168
+ **Note:** Your `pyproject.toml` must include:
169
+ - A description field (avoid characters: &, <, >, ", ', ;)
170
+ - Author information
171
+
172
+ Example:
173
+ ```toml
174
+ description = "Your package description"
175
+ authors = [{name = "Your Name", email = "your.email@example.com"}]
176
+ ```
177
+
178
+ ### Publish a Package
179
+
180
+ ```bash
181
+ uipath publish
182
+ ```
183
+
184
+ Publishes the most recently created package to your UiPath Orchestrator.
185
+
186
+ ## Project Structure
187
+
188
+ To properly use the CLI for packaging and publishing, your project should include:
189
+ - A `pyproject.toml` file with project metadata
190
+ - A `uipath.json` file (generated by `uipath init`)
191
+ - Any Python files needed for your automation
192
+
193
+ ## Development
194
+
195
+ ### Setting Up a Development Environment
196
+
197
+ Please read our [contribution guidelines](CONTRIBUTING.md) before submitting a pull request.
uipath-2.0.0/README.md ADDED
@@ -0,0 +1,170 @@
1
+ # UiPath Python SDK
2
+
3
+ [![PyPI downloads](https://img.shields.io/pypi/dm/uipath.svg)](https://pypi.org/project/uipath/)
4
+ [![PyPI - Version](https://img.shields.io/pypi/v/uipath)](https://img.shields.io/pypi/v/uipath)
5
+ [![Python versions](https://img.shields.io/pypi/pyversions/uipath.svg)](https://pypi.org/project/uipath/)
6
+
7
+
8
+ A Python SDK that enables programmatic interaction with UiPath Platform services including processes, assets, buckets, context grounding, data services, jobs, and more. The package also features a CLI for creation, packaging, and deployment of automations to UiPath Platform.
9
+
10
+ ## Table of Contents
11
+
12
+ - [Installation](#installation)
13
+ - [Configuration](#configuration)
14
+ - [Environment Variables](#environment-variables)
15
+ - [Basic Usage](#basic-usage)
16
+ - [Available Services](#available-services)
17
+ - [Examples](#examples)
18
+ - [Buckets Service](#buckets-service)
19
+ - [Context Grounding Service](#context-grounding-service)
20
+ - [Command Line Interface (CLI)](#command-line-interface-cli)
21
+ - [Authentication](#authentication)
22
+ - [Initialize a Project](#initialize-a-project)
23
+ - [Debug a Project](#debug-a-project)
24
+ - [Package a Project](#package-a-project)
25
+ - [Publish a Package](#publish-a-package)
26
+ - [Project Structure](#project-structure)
27
+ - [Development](#development)
28
+ - [Setting Up a Development Environment](#setting-up-a-development-environment)
29
+
30
+ ## Installation
31
+
32
+ ```bash
33
+ pip install uipath
34
+ ```
35
+
36
+ using `uv`:
37
+
38
+ ```bash
39
+ uv add uipath
40
+ ```
41
+
42
+ ## Configuration
43
+
44
+ ### Environment Variables
45
+
46
+ Create a `.env` file in your project root with the following variables:
47
+
48
+ ```
49
+ UIPATH_URL=https://cloud.uipath.com/ACCOUNT_NAME/TENANT_NAME
50
+ UIPATH_ACCESS_TOKEN=YOUR_TOKEN_HERE
51
+ ```
52
+
53
+ ## Basic Usage
54
+
55
+ ```python
56
+ from uipath import UiPath
57
+ # Initialize the SDK
58
+ sdk = UiPath()
59
+ # Execute a process
60
+ job = sdk.processes.invoke(
61
+ name="MyProcess",
62
+ input_arguments={"param1": "value1", "param2": 42}
63
+ )
64
+ # Work with assets
65
+ asset = sdk.assets.retrieve(name="MyAsset")
66
+ ```
67
+
68
+ ## Available Services
69
+
70
+ The SDK provides access to various UiPath services:
71
+ - `sdk.processes` - Manage and execute UiPath automation processes
72
+ - `sdk.assets` - Work with assets (variables, credentials) stored in UiPath
73
+ - `sdk.buckets` - Manage cloud storage containers for automation files
74
+ - `sdk.connections` - Handle connections to external systems
75
+ - `sdk.context_grounding` - Work with semantic contexts for AI-enabled automation
76
+ - `sdk.jobs` - Monitor and manage automation jobs
77
+ - `sdk.queues` - Work with transaction queues
78
+ - `sdk.actions` - Work with Action Center
79
+ - `sdk.api_client` - Direct access to the API client for custom requests
80
+
81
+ ## Examples
82
+
83
+ ### Buckets Service
84
+
85
+ ```python
86
+ # Download a file from a bucket
87
+ sdk.buckets.download(
88
+ bucket_key="my-bucket",
89
+ blob_file_path="path/to/file.xlsx",
90
+ destination_path="local/path/file.xlsx"
91
+ )
92
+ ```
93
+
94
+ ### Context Grounding Service
95
+
96
+ ```python
97
+ # Search for contextual information
98
+ results = sdk.context_grounding.search(
99
+ name="my-knowledge-index",
100
+ query="How do I process an invoice?",
101
+ number_of_results=5
102
+ )
103
+ ```
104
+
105
+ ## Command Line Interface (CLI)
106
+
107
+ The SDK also provides a command-line interface for creating, packaging, and deploying automations:
108
+
109
+ ### Authentication
110
+
111
+ ```bash
112
+ uipath auth
113
+ ```
114
+
115
+ This command opens a browser for authentication and creates/updates your `.env` file with the proper credentials.
116
+
117
+ ### Initialize a Project
118
+
119
+ ```bash
120
+ uipath init [ENTRYPOINT]
121
+ ```
122
+
123
+ Creates a `uipath.json` configuration file for your project. If the entrypoint is not provided, it will try to find a single Python file in the current directory.
124
+
125
+ ### Debug a Project
126
+
127
+ ```bash
128
+ uipath run ENTRYPOINT [INPUT]
129
+ ```
130
+
131
+ Executes a Python script with the provided JSON input arguments.
132
+
133
+ ### Package a Project
134
+
135
+ ```bash
136
+ uipath pack
137
+ ```
138
+
139
+ Packages your project into a `.nupkg` file that can be deployed to UiPath.
140
+
141
+ **Note:** Your `pyproject.toml` must include:
142
+ - A description field (avoid characters: &, <, >, ", ', ;)
143
+ - Author information
144
+
145
+ Example:
146
+ ```toml
147
+ description = "Your package description"
148
+ authors = [{name = "Your Name", email = "your.email@example.com"}]
149
+ ```
150
+
151
+ ### Publish a Package
152
+
153
+ ```bash
154
+ uipath publish
155
+ ```
156
+
157
+ Publishes the most recently created package to your UiPath Orchestrator.
158
+
159
+ ## Project Structure
160
+
161
+ To properly use the CLI for packaging and publishing, your project should include:
162
+ - A `pyproject.toml` file with project metadata
163
+ - A `uipath.json` file (generated by `uipath init`)
164
+ - Any Python files needed for your automation
165
+
166
+ ## Development
167
+
168
+ ### Setting Up a Development Environment
169
+
170
+ Please read our [contribution guidelines](CONTRIBUTING.md) before submitting a pull request.
@@ -0,0 +1,112 @@
1
+ [project]
2
+ name = "uipath"
3
+ version = "2.0.0"
4
+ description = "Python SDK and CLI for UiPath Platform, enabling programmatic interaction with automation services, process management, and deployment tools."
5
+ readme = { file = "README.md", content-type = "text/markdown" }
6
+ requires-python = ">=3.10"
7
+ dependencies = [
8
+ "click>=8.1.8",
9
+ "httpx>=0.28.1",
10
+ "pydantic>=2.11.1",
11
+ "pytest-asyncio>=0.25.3",
12
+ "python-dotenv>=1.0.1",
13
+ "requests>=2.32.3",
14
+ "tenacity>=9.0.0",
15
+ "tomli>=2.2.1",
16
+ "types-requests>=2.32.0.20250306",
17
+ ]
18
+ classifiers = [
19
+ "Development Status :: 3 - Alpha",
20
+ "Intended Audience :: Developers",
21
+ "Topic :: Software Development :: Build Tools",
22
+ "Programming Language :: Python :: 3.10",
23
+ "Programming Language :: Python :: 3.11",
24
+ "Programming Language :: Python :: 3.12",
25
+ ]
26
+ maintainers = [
27
+ { name = "Marius Cosareanu", email = "marius.cosareanu@uipath.com" },
28
+ { name = "Cristian Pufu", email = "cristian.pufu@uipath.com" },
29
+ ]
30
+
31
+ [project.urls]
32
+ Homepage = "https://uipath.com"
33
+ Repository = "https://github.com/UiPath/uipath-python"
34
+
35
+ [project.scripts]
36
+ uipath = "uipath._cli:cli"
37
+
38
+ [build-system]
39
+ requires = ["hatchling"]
40
+ build-backend = "hatchling.build"
41
+
42
+ [tool.hatch.build.targets.wheel]
43
+ packages = ["src/uipath"]
44
+
45
+ [tool.hatch.build.targets.sdist]
46
+ packages = ["src/uipath"]
47
+
48
+ [dependency-groups]
49
+ dev = [
50
+ "bandit>=1.8.2",
51
+ "mypy>=1.14.1",
52
+ "ruff>=0.9.4",
53
+ "rust-just>=1.39.0",
54
+ "pytest>=7.4.0",
55
+ "pytest-cov>=4.1.0",
56
+ "pytest-mock>=3.11.1",
57
+ "pre-commit>=4.1.0",
58
+ "mkdocs>=1.6.1",
59
+ "mkdocs-material>=9.6.7",
60
+ "mkdocstrings>=0.29.0",
61
+ "mkdocstrings-python>=1.16.5",
62
+ ]
63
+
64
+ [project.optional-dependencies]
65
+ langchain = ["uipath-langchain==0.0.85"]
66
+
67
+ [tool.ruff]
68
+ line-length = 88
69
+ indent-width = 4
70
+
71
+ [tool.ruff.lint]
72
+ select = ["E", "F", "B", "I", "D"]
73
+ ignore = ["D417"]
74
+
75
+ [tool.ruff.lint.pydocstyle]
76
+ convention = "google"
77
+ ignore-decorators = []
78
+
79
+ [tool.ruff.lint.per-file-ignores]
80
+ "*" = ["E501"]
81
+ "tests/**" = ["D"]
82
+ "*_test.py" = ["D"]
83
+ # TODO: Remove this once the documentation for CLI is updated
84
+ "uipath/_cli/**" = ["D"]
85
+
86
+ [tool.ruff.format]
87
+ quote-style = "double"
88
+ indent-style = "space"
89
+ skip-magic-trailing-comma = false
90
+ line-ending = "auto"
91
+
92
+ [tool.mypy]
93
+ plugins = ["pydantic.mypy"]
94
+
95
+ follow_imports = "silent"
96
+ warn_redundant_casts = true
97
+ warn_unused_ignores = true
98
+ disallow_any_generics = true
99
+ check_untyped_defs = true
100
+ no_implicit_reexport = true
101
+
102
+ disallow_untyped_defs = false
103
+
104
+ [tool.pydantic-mypy]
105
+ init_forbid_extra = true
106
+ init_typed = true
107
+ warn_required_dynamic_aliases = true
108
+
109
+ [tool.pytest.ini_options]
110
+ testpaths = ["tests"]
111
+ python_files = "test_*.py"
112
+ addopts = "-ra -q"
@@ -0,0 +1,24 @@
1
+ """UiPath SDK for Python.
2
+
3
+ This package provides a Python interface to interact with UiPath's automation platform.
4
+
5
+
6
+ The main entry point is the UiPath class, which provides access to all SDK functionality.
7
+
8
+ Example:
9
+ ```python
10
+ # First set these environment variables:
11
+ # export UIPATH_URL="https://cloud.uipath.com/organization-name/default-tenant"
12
+ # export UIPATH_ACCESS_TOKEN="your_**_token"
13
+ # export UIPATH_FOLDER_PATH="your/folder/path"
14
+
15
+ from uipath import UiPath
16
+ sdk = UiPath()
17
+ # Invoke a process by name
18
+ sdk.processes.invoke("MyProcess")
19
+ ```
20
+ """
21
+
22
+ from ._uipath import UiPath
23
+
24
+ __all__ = ["UiPath"]
@@ -0,0 +1,11 @@
1
+ # parse
2
+
3
+ `parse-ast.py` will extract names and types of resources to prepare for bindings. currently it's hardcoded to run on `dummy-main.py`
4
+
5
+ # init
6
+
7
+ asks for project name, type (process/agent) description and target directory where to init the project. it inits a script, a requirements.txt for the user to install, and a config.json file that we'll use at packing time.
8
+
9
+ # pack
10
+
11
+ asks for target directory of the package files and the version and will create a nupkg file
@@ -0,0 +1,54 @@
1
+ import importlib.metadata
2
+ import sys
3
+
4
+ import click
5
+
6
+ from .cli_auth import auth as auth # type: ignore
7
+ from .cli_deploy import deploy as deploy # type: ignore
8
+ from .cli_init import init as init # type: ignore
9
+ from .cli_new import new as new # type: ignore
10
+ from .cli_pack import pack as pack # type: ignore
11
+ from .cli_publish import publish as publish # type: ignore
12
+ from .cli_run import run as run # type: ignore
13
+
14
+
15
+ @click.group(invoke_without_command=True)
16
+ @click.version_option(
17
+ importlib.metadata.version("uipath"),
18
+ prog_name="uipath",
19
+ message="%(prog)s version %(version)s",
20
+ )
21
+ @click.option(
22
+ "-lv",
23
+ is_flag=True,
24
+ help="Display the current version of uipath-langchain.",
25
+ )
26
+ @click.option(
27
+ "-v",
28
+ is_flag=True,
29
+ help="Display the current version of uipath.",
30
+ )
31
+ def cli(lv: bool, v: bool) -> None:
32
+ if lv:
33
+ try:
34
+ version = importlib.metadata.version("uipath-langchain")
35
+ click.echo(f"uipath-langchain version {version}")
36
+ except importlib.metadata.PackageNotFoundError:
37
+ click.echo("uipath-langchain is not installed", err=True)
38
+ sys.exit(1)
39
+ if v:
40
+ try:
41
+ version = importlib.metadata.version("uipath")
42
+ click.echo(f"uipath version {version}")
43
+ except importlib.metadata.PackageNotFoundError:
44
+ click.echo("uipath is not installed", err=True)
45
+ sys.exit(1)
46
+
47
+
48
+ cli.add_command(new)
49
+ cli.add_command(init)
50
+ cli.add_command(pack)
51
+ cli.add_command(publish)
52
+ cli.add_command(run)
53
+ cli.add_command(deploy)
54
+ cli.add_command(auth)