uipath 2.0.66__tar.gz → 2.0.67__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 (196) hide show
  1. {uipath-2.0.66 → uipath-2.0.67}/PKG-INFO +1 -1
  2. {uipath-2.0.66 → uipath-2.0.67}/docs/cli/index.md +36 -3
  3. {uipath-2.0.66 → uipath-2.0.67}/pyproject.toml +1 -1
  4. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_services/context_grounding_service.py +4 -2
  5. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_services/folder_service.py +8 -14
  6. {uipath-2.0.66 → uipath-2.0.67}/tests/sdk/services/test_context_grounding_service.py +12 -18
  7. {uipath-2.0.66 → uipath-2.0.67}/tests/sdk/services/test_folder_service.py +13 -15
  8. {uipath-2.0.66 → uipath-2.0.67}/uv.lock +1 -1
  9. {uipath-2.0.66 → uipath-2.0.67}/.cursorrules +0 -0
  10. {uipath-2.0.66 → uipath-2.0.67}/.editorconfig +0 -0
  11. {uipath-2.0.66 → uipath-2.0.67}/.gitattributes +0 -0
  12. {uipath-2.0.66 → uipath-2.0.67}/.github/workflows/cd.yml +0 -0
  13. {uipath-2.0.66 → uipath-2.0.67}/.github/workflows/ci.yml +0 -0
  14. {uipath-2.0.66 → uipath-2.0.67}/.github/workflows/commitlint.yml +0 -0
  15. {uipath-2.0.66 → uipath-2.0.67}/.github/workflows/lint.yml +0 -0
  16. {uipath-2.0.66 → uipath-2.0.67}/.github/workflows/publish-dev.yml +0 -0
  17. {uipath-2.0.66 → uipath-2.0.67}/.github/workflows/publish-docs.yml +0 -0
  18. {uipath-2.0.66 → uipath-2.0.67}/.github/workflows/slack.yml +0 -0
  19. {uipath-2.0.66 → uipath-2.0.67}/.github/workflows/test.yml +0 -0
  20. {uipath-2.0.66 → uipath-2.0.67}/.gitignore +0 -0
  21. {uipath-2.0.66 → uipath-2.0.67}/.pre-commit-config.yaml +0 -0
  22. {uipath-2.0.66 → uipath-2.0.67}/.python-version +0 -0
  23. {uipath-2.0.66 → uipath-2.0.67}/.vscode/extensions.json +0 -0
  24. {uipath-2.0.66 → uipath-2.0.67}/.vscode/launch.json +0 -0
  25. {uipath-2.0.66 → uipath-2.0.67}/.vscode/settings.json +0 -0
  26. {uipath-2.0.66 → uipath-2.0.67}/CONTRIBUTING.md +0 -0
  27. {uipath-2.0.66 → uipath-2.0.67}/LICENSE +0 -0
  28. {uipath-2.0.66 → uipath-2.0.67}/README.md +0 -0
  29. {uipath-2.0.66 → uipath-2.0.67}/docs/CONTRIBUTING.md +0 -0
  30. {uipath-2.0.66 → uipath-2.0.67}/docs/FAQ.md +0 -0
  31. {uipath-2.0.66 → uipath-2.0.67}/docs/assets/env-preparation-failed-dark.png +0 -0
  32. {uipath-2.0.66 → uipath-2.0.67}/docs/assets/env-preparation-failed-light.png +0 -0
  33. {uipath-2.0.66 → uipath-2.0.67}/docs/assets/favicon.png +0 -0
  34. {uipath-2.0.66 → uipath-2.0.67}/docs/assets/logo-dark.svg +0 -0
  35. {uipath-2.0.66 → uipath-2.0.67}/docs/assets/logo-light.svg +0 -0
  36. {uipath-2.0.66 → uipath-2.0.67}/docs/core/actions.md +0 -0
  37. {uipath-2.0.66 → uipath-2.0.67}/docs/core/assets/cloud_env_var_dark.gif +0 -0
  38. {uipath-2.0.66 → uipath-2.0.67}/docs/core/assets/cloud_env_var_light.gif +0 -0
  39. {uipath-2.0.66 → uipath-2.0.67}/docs/core/assets/cloud_env_var_secret_dark.png +0 -0
  40. {uipath-2.0.66 → uipath-2.0.67}/docs/core/assets/cloud_env_var_secret_light.png +0 -0
  41. {uipath-2.0.66 → uipath-2.0.67}/docs/core/assets/copy_path_dark.png +0 -0
  42. {uipath-2.0.66 → uipath-2.0.67}/docs/core/assets/copy_path_light.png +0 -0
  43. {uipath-2.0.66 → uipath-2.0.67}/docs/core/assets.md +0 -0
  44. {uipath-2.0.66 → uipath-2.0.67}/docs/core/attachments.md +0 -0
  45. {uipath-2.0.66 → uipath-2.0.67}/docs/core/buckets.md +0 -0
  46. {uipath-2.0.66 → uipath-2.0.67}/docs/core/connections.md +0 -0
  47. {uipath-2.0.66 → uipath-2.0.67}/docs/core/context_grounding.md +0 -0
  48. {uipath-2.0.66 → uipath-2.0.67}/docs/core/environment_variables.md +0 -0
  49. {uipath-2.0.66 → uipath-2.0.67}/docs/core/getting_started.md +0 -0
  50. {uipath-2.0.66 → uipath-2.0.67}/docs/core/jobs.md +0 -0
  51. {uipath-2.0.66 → uipath-2.0.67}/docs/core/processes.md +0 -0
  52. {uipath-2.0.66 → uipath-2.0.67}/docs/core/queues.md +0 -0
  53. {uipath-2.0.66 → uipath-2.0.67}/docs/core/traced.md +0 -0
  54. {uipath-2.0.66 → uipath-2.0.67}/docs/hooks.py +0 -0
  55. {uipath-2.0.66 → uipath-2.0.67}/docs/javascripts/extra.js +0 -0
  56. {uipath-2.0.66 → uipath-2.0.67}/docs/langchain/chat_models.md +0 -0
  57. {uipath-2.0.66 → uipath-2.0.67}/docs/langchain/context_grounding.md +0 -0
  58. {uipath-2.0.66 → uipath-2.0.67}/docs/langchain/human_in_the_loop.md +0 -0
  59. {uipath-2.0.66 → uipath-2.0.67}/docs/overrides/main.html +0 -0
  60. {uipath-2.0.66 → uipath-2.0.67}/docs/overrides/partials/actions.html +0 -0
  61. {uipath-2.0.66 → uipath-2.0.67}/docs/overrides/partials/logo.html +0 -0
  62. {uipath-2.0.66 → uipath-2.0.67}/docs/release_policy.md +0 -0
  63. {uipath-2.0.66 → uipath-2.0.67}/docs/stylesheets/extra.css +0 -0
  64. {uipath-2.0.66 → uipath-2.0.67}/justfile +0 -0
  65. {uipath-2.0.66 → uipath-2.0.67}/mkdocs.yml +0 -0
  66. {uipath-2.0.66 → uipath-2.0.67}/py.typed +0 -0
  67. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/__init__.py +0 -0
  68. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_cli/README.md +0 -0
  69. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_cli/__init__.py +0 -0
  70. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_cli/_auth/_auth_server.py +0 -0
  71. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_cli/_auth/_models.py +0 -0
  72. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_cli/_auth/_oidc_utils.py +0 -0
  73. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_cli/_auth/_portal_service.py +0 -0
  74. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_cli/_auth/_utils.py +0 -0
  75. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_cli/_auth/auth_config.json +0 -0
  76. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_cli/_auth/index.html +0 -0
  77. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_cli/_auth/localhost.crt +0 -0
  78. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_cli/_auth/localhost.key +0 -0
  79. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_cli/_runtime/_contracts.py +0 -0
  80. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_cli/_runtime/_escalation.py +0 -0
  81. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_cli/_runtime/_hitl.py +0 -0
  82. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_cli/_runtime/_logging.py +0 -0
  83. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_cli/_runtime/_runtime.py +0 -0
  84. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_cli/_templates/.psmdcp.template +0 -0
  85. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_cli/_templates/.rels.template +0 -0
  86. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_cli/_templates/[Content_Types].xml.template +0 -0
  87. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_cli/_templates/main.py.template +0 -0
  88. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_cli/_templates/package.nuspec.template +0 -0
  89. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_cli/_utils/_common.py +0 -0
  90. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_cli/_utils/_console.py +0 -0
  91. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_cli/_utils/_constants.py +0 -0
  92. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_cli/_utils/_debug.py +0 -0
  93. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_cli/_utils/_folders.py +0 -0
  94. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_cli/_utils/_input_args.py +0 -0
  95. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_cli/_utils/_parse_ast.py +0 -0
  96. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_cli/_utils/_processes.py +0 -0
  97. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_cli/_utils/_tracing.py +0 -0
  98. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_cli/cli_auth.py +0 -0
  99. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_cli/cli_deploy.py +0 -0
  100. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_cli/cli_init.py +0 -0
  101. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_cli/cli_invoke.py +0 -0
  102. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_cli/cli_new.py +0 -0
  103. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_cli/cli_pack.py +0 -0
  104. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_cli/cli_publish.py +0 -0
  105. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_cli/cli_run.py +0 -0
  106. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_cli/middlewares.py +0 -0
  107. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_cli/spinner.py +0 -0
  108. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_config.py +0 -0
  109. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_execution_context.py +0 -0
  110. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_folder_context.py +0 -0
  111. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_services/__init__.py +0 -0
  112. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_services/_base_service.py +0 -0
  113. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_services/actions_service.py +0 -0
  114. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_services/api_client.py +0 -0
  115. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_services/assets_service.py +0 -0
  116. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_services/attachments_service.py +0 -0
  117. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_services/buckets_service.py +0 -0
  118. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_services/connections_service.py +0 -0
  119. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_services/jobs_service.py +0 -0
  120. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_services/llm_gateway_service.py +0 -0
  121. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_services/processes_service.py +0 -0
  122. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_services/queues_service.py +0 -0
  123. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_uipath.py +0 -0
  124. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_utils/__init__.py +0 -0
  125. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_utils/_endpoint.py +0 -0
  126. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_utils/_infer_bindings.py +0 -0
  127. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_utils/_logs.py +0 -0
  128. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_utils/_read_overwrites.py +0 -0
  129. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_utils/_request_override.py +0 -0
  130. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_utils/_request_spec.py +0 -0
  131. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_utils/_url.py +0 -0
  132. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_utils/_user_agent.py +0 -0
  133. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/_utils/constants.py +0 -0
  134. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/models/__init__.py +0 -0
  135. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/models/action_schema.py +0 -0
  136. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/models/actions.py +0 -0
  137. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/models/assets.py +0 -0
  138. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/models/attachment.py +0 -0
  139. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/models/buckets.py +0 -0
  140. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/models/connections.py +0 -0
  141. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/models/context_grounding.py +0 -0
  142. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/models/context_grounding_index.py +0 -0
  143. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/models/errors.py +0 -0
  144. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/models/exceptions.py +0 -0
  145. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/models/interrupt_models.py +0 -0
  146. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/models/job.py +0 -0
  147. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/models/llm_gateway.py +0 -0
  148. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/models/processes.py +0 -0
  149. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/models/queues.py +0 -0
  150. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/py.typed +0 -0
  151. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/telemetry/__init__.py +0 -0
  152. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/telemetry/_constants.py +0 -0
  153. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/telemetry/_track.py +0 -0
  154. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/tracing/__init__.py +0 -0
  155. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/tracing/_otel_exporters.py +0 -0
  156. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/tracing/_traced.py +0 -0
  157. {uipath-2.0.66 → uipath-2.0.67}/src/uipath/tracing/_utils.py +0 -0
  158. {uipath-2.0.66 → uipath-2.0.67}/tests/__init__.py +0 -0
  159. {uipath-2.0.66 → uipath-2.0.67}/tests/cli/conftest.py +0 -0
  160. {uipath-2.0.66 → uipath-2.0.67}/tests/cli/mocks/bindings_script.py +0 -0
  161. {uipath-2.0.66 → uipath-2.0.67}/tests/cli/mocks/pyproject.toml +0 -0
  162. {uipath-2.0.66 → uipath-2.0.67}/tests/cli/mocks/simple_script.py +0 -0
  163. {uipath-2.0.66 → uipath-2.0.67}/tests/cli/mocks/uipath-mock.json +0 -0
  164. {uipath-2.0.66 → uipath-2.0.67}/tests/cli/mocks/uipath-simple-script-mock.json +0 -0
  165. {uipath-2.0.66 → uipath-2.0.67}/tests/cli/test_hitl.py +0 -0
  166. {uipath-2.0.66 → uipath-2.0.67}/tests/cli/test_init.py +0 -0
  167. {uipath-2.0.66 → uipath-2.0.67}/tests/cli/test_invoke.py +0 -0
  168. {uipath-2.0.66 → uipath-2.0.67}/tests/cli/test_new.py +0 -0
  169. {uipath-2.0.66 → uipath-2.0.67}/tests/cli/test_pack.py +0 -0
  170. {uipath-2.0.66 → uipath-2.0.67}/tests/cli/test_publish.py +0 -0
  171. {uipath-2.0.66 → uipath-2.0.67}/tests/cli/test_run.py +0 -0
  172. {uipath-2.0.66 → uipath-2.0.67}/tests/cli/test_utils.py +0 -0
  173. {uipath-2.0.66 → uipath-2.0.67}/tests/cli/utils/project_details.py +0 -0
  174. {uipath-2.0.66 → uipath-2.0.67}/tests/cli/utils/uipath_json.py +0 -0
  175. {uipath-2.0.66 → uipath-2.0.67}/tests/conftest.py +0 -0
  176. {uipath-2.0.66 → uipath-2.0.67}/tests/sdk/services/conftest.py +0 -0
  177. {uipath-2.0.66 → uipath-2.0.67}/tests/sdk/services/test_actions_service.py +0 -0
  178. {uipath-2.0.66 → uipath-2.0.67}/tests/sdk/services/test_api_client.py +0 -0
  179. {uipath-2.0.66 → uipath-2.0.67}/tests/sdk/services/test_assets_service.py +0 -0
  180. {uipath-2.0.66 → uipath-2.0.67}/tests/sdk/services/test_attachments_service.py +0 -0
  181. {uipath-2.0.66 → uipath-2.0.67}/tests/sdk/services/test_base_service.py +0 -0
  182. {uipath-2.0.66 → uipath-2.0.67}/tests/sdk/services/test_buckets_service.py +0 -0
  183. {uipath-2.0.66 → uipath-2.0.67}/tests/sdk/services/test_connections_service.py +0 -0
  184. {uipath-2.0.66 → uipath-2.0.67}/tests/sdk/services/test_jobs_service.py +0 -0
  185. {uipath-2.0.66 → uipath-2.0.67}/tests/sdk/services/test_llm_integration.py +0 -0
  186. {uipath-2.0.66 → uipath-2.0.67}/tests/sdk/services/test_llm_service.py +0 -0
  187. {uipath-2.0.66 → uipath-2.0.67}/tests/sdk/services/test_processes_service.py +0 -0
  188. {uipath-2.0.66 → uipath-2.0.67}/tests/sdk/services/test_queues_service.py +0 -0
  189. {uipath-2.0.66 → uipath-2.0.67}/tests/sdk/services/test_uipath_llm_integration.py +0 -0
  190. {uipath-2.0.66 → uipath-2.0.67}/tests/sdk/test_bindings_inference.py +0 -0
  191. {uipath-2.0.66 → uipath-2.0.67}/tests/sdk/test_config.py +0 -0
  192. {uipath-2.0.66 → uipath-2.0.67}/tests/sdk/test_overwrites.py +0 -0
  193. {uipath-2.0.66 → uipath-2.0.67}/tests/tracing/test_otel_exporters.py +0 -0
  194. {uipath-2.0.66 → uipath-2.0.67}/tests/tracing/test_span_utils.py +0 -0
  195. {uipath-2.0.66 → uipath-2.0.67}/tests/tracing/test_traced.py +0 -0
  196. {uipath-2.0.66 → uipath-2.0.67}/tests/tracing/test_tracing_manager.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: uipath
3
- Version: 2.0.66
3
+ Version: 2.0.67
4
4
  Summary: Python SDK and CLI for UiPath Platform, enabling programmatic interaction with automation services, process management, and deployment tools.
5
5
  Project-URL: Homepage, https://uipath.com
6
6
  Project-URL: Repository, https://github.com/UiPath/uipath-python
@@ -54,9 +54,10 @@ For step-by-step debugging with breakpoints and variable inspection (supported f
54
54
  # Run agent with debugging enabled
55
55
  uipath run [ENTRYPOINT] [INPUT] --debug
56
56
  ```
57
- For vscode: add the [debug configuration](https://github.com/UiPath/uipath-python/blob/main/.vscode/launch.json) in your .vscode/launch.json file.
58
- Place breakpoints in your code where needed.
59
- Use the shortcut `F5`, or navigate to Run -> Start Debugging -> Python Debugger: Attach
57
+ For vscode:
58
+ 1. add the [debug configuration](https://github.com/UiPath/uipath-python/blob/main/.vscode/launch.json) in your `.vscode/launch.json` file.
59
+ 2. Place breakpoints in your code where needed.
60
+ 3. Use the shortcut `F5`, or navigate to Run -> Start Debugging -> Python Debugger: Attach.
60
61
 
61
62
  Upon starting the debugging process, one should see the following logs in terminal:
62
63
  ```console
@@ -106,6 +107,38 @@ uipath run agent '{\"topic\":\"uipath\"}'
106
107
 
107
108
  Packages your project into a `.nupkg` file that can be deployed to UiPath.
108
109
 
110
+ /// info
111
+ ### Default Files Included in `.nupkg`
112
+
113
+ By default, the following file types are included in the `.nupkg` file:
114
+
115
+ - `.py`
116
+ - `.mermaid`
117
+ - `.json`
118
+ - `.yaml`
119
+ - `.yml`
120
+
121
+ ---
122
+
123
+ ### Including Extra Files
124
+
125
+ To include additional files, update the `uipath.json` file by adding a `settings` section. Use the following configuration format:
126
+
127
+ ```json
128
+ {
129
+ "settings": {
130
+ "filesIncluded": [
131
+ "<file here>"
132
+ ],
133
+ "fileExtensionsIncluded": [
134
+ "<new file extension to include (e.g., 'go')>"
135
+ ]
136
+ }
137
+ }
138
+ ```
139
+
140
+ ///
141
+
109
142
  /// warning
110
143
  Your `pyproject.toml` must include:
111
144
 
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "uipath"
3
- version = "2.0.66"
3
+ version = "2.0.67"
4
4
  description = "Python SDK and CLI for UiPath Platform, enabling programmatic interaction with automation services, process management, and deployment tools."
5
5
  readme = { file = "README.md", content-type = "text/markdown" }
6
6
  requires-python = ">=3.10"
@@ -673,7 +673,7 @@ class ContextGroundingService(FolderContext, BaseService):
673
673
  )
674
674
 
675
675
  if folder_key is None:
676
- raise ValueError("Folder key or folder path is required")
676
+ raise ValueError("ContextGrounding: Failed to resolve folder key")
677
677
 
678
678
  return folder_key
679
679
 
@@ -681,4 +681,6 @@ class ContextGroundingService(FolderContext, BaseService):
681
681
  try:
682
682
  return index.data_source.bucketName, index.data_source.folder # type: ignore
683
683
  except AttributeError as e:
684
- raise Exception("Cannot extract bucket data from index") from e
684
+ raise Exception(
685
+ "ContextGrounding: Cannot extract bucket data from index"
686
+ ) from e
@@ -34,25 +34,19 @@ class FolderService(BaseService):
34
34
  url=spec.endpoint,
35
35
  params=spec.params,
36
36
  ).json()
37
-
38
- return next(
39
- (
40
- item["Key"]
41
- for item in response["PageItems"]
42
- if item["FullyQualifiedName"] == folder_path
43
- ),
44
- None,
45
- )
37
+ try:
38
+ return response["value"][0]["Key"]
39
+ except KeyError:
40
+ return None
46
41
 
47
42
  def _retrieve_spec(self, folder_path: str) -> RequestSpec:
48
43
  folder_name = folder_path.split("/")[-1]
49
44
  return RequestSpec(
50
45
  method="GET",
51
- endpoint=Endpoint(
52
- "orchestrator_/api/FoldersNavigation/GetFoldersForCurrentUser"
53
- ),
46
+ endpoint=Endpoint("orchestrator_/odata/Folders"),
54
47
  params={
55
- "searchText": folder_name,
56
- "take": 1,
48
+ "$filter": f"DisplayName eq '{folder_name}'",
49
+ "$top": 1,
50
+ "$select": "Key",
57
51
  },
58
52
  )
@@ -38,13 +38,12 @@ class TestContextGroundingService:
38
38
  version: str,
39
39
  ) -> None:
40
40
  httpx_mock.add_response(
41
- url=f"{base_url}{org}{tenant}/orchestrator_/api/FoldersNavigation/GetFoldersForCurrentUser?searchText=test-folder-path&take=1",
41
+ url=f"{base_url}{org}{tenant}/orchestrator_/odata/Folders?%24filter=DisplayName+eq+%27test-folder-path%27&%24top=1&%24select=Key",
42
42
  status_code=200,
43
43
  json={
44
- "PageItems": [
44
+ "value": [
45
45
  {
46
46
  "Key": "test-folder-key",
47
- "FullyQualifiedName": "test-folder-path",
48
47
  }
49
48
  ]
50
49
  },
@@ -68,13 +67,12 @@ class TestContextGroundingService:
68
67
  )
69
68
 
70
69
  httpx_mock.add_response(
71
- url=f"{base_url}{org}{tenant}/orchestrator_/api/FoldersNavigation/GetFoldersForCurrentUser?searchText=test-folder-path&take=1",
70
+ url=f"{base_url}{org}{tenant}/orchestrator_/odata/Folders?%24filter=DisplayName+eq+%27test-folder-path%27&%24top=1&%24select=Key",
72
71
  status_code=200,
73
72
  json={
74
- "PageItems": [
73
+ "value": [
75
74
  {
76
75
  "Key": "test-folder-key",
77
- "FullyQualifiedName": "test-folder-path",
78
76
  }
79
77
  ]
80
78
  },
@@ -132,13 +130,12 @@ class TestContextGroundingService:
132
130
  version: str,
133
131
  ) -> None:
134
132
  httpx_mock.add_response(
135
- url=f"{base_url}{org}{tenant}/orchestrator_/api/FoldersNavigation/GetFoldersForCurrentUser?searchText=test-folder-path&take=1",
133
+ url=f"{base_url}{org}{tenant}/orchestrator_/odata/Folders?%24filter=DisplayName+eq+%27test-folder-path%27&%24top=1&%24select=Key",
136
134
  status_code=200,
137
135
  json={
138
- "PageItems": [
136
+ "value": [
139
137
  {
140
138
  "Key": "test-folder-key",
141
- "FullyQualifiedName": "test-folder-path",
142
139
  }
143
140
  ]
144
141
  },
@@ -162,13 +159,12 @@ class TestContextGroundingService:
162
159
  )
163
160
 
164
161
  httpx_mock.add_response(
165
- url=f"{base_url}{org}{tenant}/orchestrator_/api/FoldersNavigation/GetFoldersForCurrentUser?searchText=test-folder-path&take=1",
162
+ url=f"{base_url}{org}{tenant}/orchestrator_/odata/Folders?%24filter=DisplayName+eq+%27test-folder-path%27&%24top=1&%24select=Key",
166
163
  status_code=200,
167
164
  json={
168
- "PageItems": [
165
+ "value": [
169
166
  {
170
167
  "Key": "test-folder-key",
171
- "FullyQualifiedName": "test-folder-path",
172
168
  }
173
169
  ]
174
170
  },
@@ -225,13 +221,12 @@ class TestContextGroundingService:
225
221
  version: str,
226
222
  ) -> None:
227
223
  httpx_mock.add_response(
228
- url=f"{base_url}{org}{tenant}/orchestrator_/api/FoldersNavigation/GetFoldersForCurrentUser?searchText=test-folder-path&take=1",
224
+ url=f"{base_url}{org}{tenant}/orchestrator_/odata/Folders?%24filter=DisplayName+eq+%27test-folder-path%27&%24top=1&%24select=Key",
229
225
  status_code=200,
230
226
  json={
231
- "PageItems": [
227
+ "value": [
232
228
  {
233
229
  "Key": "test-folder-key",
234
- "FullyQualifiedName": "test-folder-path",
235
230
  }
236
231
  ]
237
232
  },
@@ -285,13 +280,12 @@ class TestContextGroundingService:
285
280
  version: str,
286
281
  ) -> None:
287
282
  httpx_mock.add_response(
288
- url=f"{base_url}{org}{tenant}/orchestrator_/api/FoldersNavigation/GetFoldersForCurrentUser?searchText=test-folder-path&take=1",
283
+ url=f"{base_url}{org}{tenant}/orchestrator_/odata/Folders?%24filter=DisplayName+eq+%27test-folder-path%27&%24top=1&%24select=Key",
289
284
  status_code=200,
290
285
  json={
291
- "PageItems": [
286
+ "value": [
292
287
  {
293
288
  "Key": "test-folder-key",
294
- "FullyQualifiedName": "test-folder-path",
295
289
  }
296
290
  ]
297
291
  },
@@ -28,20 +28,19 @@ class TestFolderService:
28
28
  version: str,
29
29
  ) -> None:
30
30
  httpx_mock.add_response(
31
- url=f"{base_url}{org}{tenant}/orchestrator_/api/FoldersNavigation/GetFoldersForCurrentUser?searchText=test-folder-path&take=1",
31
+ url=f"{base_url}{org}{tenant}/orchestrator_/odata/Folders?%24filter=DisplayName+eq+%27test_folder_path%27&%24top=1&%24select=Key",
32
32
  status_code=200,
33
33
  json={
34
- "PageItems": [
34
+ "value": [
35
35
  {
36
36
  "Key": "test-folder-key",
37
- "FullyQualifiedName": "test-folder-path",
38
37
  }
39
38
  ]
40
39
  },
41
40
  )
42
41
 
43
42
  with pytest.warns(DeprecationWarning, match="Use retrieve_key instead"):
44
- folder_key = service.retrieve_key_by_folder_path("test-folder-path")
43
+ folder_key = service.retrieve_key_by_folder_path("test_folder_path")
45
44
 
46
45
  assert folder_key == "test-folder-key"
47
46
 
@@ -52,7 +51,7 @@ class TestFolderService:
52
51
  assert sent_request.method == "GET"
53
52
  assert (
54
53
  sent_request.url
55
- == f"{base_url}{org}{tenant}/orchestrator_/api/FoldersNavigation/GetFoldersForCurrentUser?searchText=test-folder-path&take=1"
54
+ == f"{base_url}{org}{tenant}/orchestrator_/odata/Folders?%24filter=DisplayName+eq+%27test_folder_path%27&%24top=1&%24select=Key"
56
55
  )
57
56
 
58
57
  assert HEADER_USER_AGENT in sent_request.headers
@@ -71,9 +70,9 @@ class TestFolderService:
71
70
  version: str,
72
71
  ) -> None:
73
72
  httpx_mock.add_response(
74
- url=f"{base_url}{org}{tenant}/orchestrator_/api/FoldersNavigation/GetFoldersForCurrentUser?searchText=non-existent-folder&take=1",
73
+ url=f"{base_url}{org}{tenant}/orchestrator_/odata/Folders?%24filter=DisplayName+eq+%27non-existent-folder%27&%24top=1&%24select=Key",
75
74
  status_code=200,
76
- json={"PageItems": []},
75
+ json={},
77
76
  )
78
77
 
79
78
  with pytest.warns(DeprecationWarning, match="Use retrieve_key instead"):
@@ -88,7 +87,7 @@ class TestFolderService:
88
87
  assert sent_request.method == "GET"
89
88
  assert (
90
89
  sent_request.url
91
- == f"{base_url}{org}{tenant}/orchestrator_/api/FoldersNavigation/GetFoldersForCurrentUser?searchText=non-existent-folder&take=1"
90
+ == f"{base_url}{org}{tenant}/orchestrator_/odata/Folders?%24filter=DisplayName+eq+%27non-existent-folder%27&%24top=1&%24select=Key"
92
91
  )
93
92
 
94
93
  assert HEADER_USER_AGENT in sent_request.headers
@@ -107,13 +106,12 @@ class TestFolderService:
107
106
  version: str,
108
107
  ) -> None:
109
108
  httpx_mock.add_response(
110
- url=f"{base_url}{org}{tenant}/orchestrator_/api/FoldersNavigation/GetFoldersForCurrentUser?searchText=test-folder-path&take=1",
109
+ url=f"{base_url}{org}{tenant}/orchestrator_/odata/Folders?%24filter=DisplayName+eq+%27test-folder-path%27&%24top=1&%24select=Key",
111
110
  status_code=200,
112
111
  json={
113
- "PageItems": [
112
+ "value": [
114
113
  {
115
114
  "Key": "test-folder-key",
116
- "FullyQualifiedName": "test-folder-path",
117
115
  }
118
116
  ]
119
117
  },
@@ -130,7 +128,7 @@ class TestFolderService:
130
128
  assert sent_request.method == "GET"
131
129
  assert (
132
130
  sent_request.url
133
- == f"{base_url}{org}{tenant}/orchestrator_/api/FoldersNavigation/GetFoldersForCurrentUser?searchText=test-folder-path&take=1"
131
+ == f"{base_url}{org}{tenant}/orchestrator_/odata/Folders?%24filter=DisplayName+eq+%27test-folder-path%27&%24top=1&%24select=Key"
134
132
  )
135
133
 
136
134
  assert HEADER_USER_AGENT in sent_request.headers
@@ -149,9 +147,9 @@ class TestFolderService:
149
147
  version: str,
150
148
  ) -> None:
151
149
  httpx_mock.add_response(
152
- url=f"{base_url}{org}{tenant}/orchestrator_/api/FoldersNavigation/GetFoldersForCurrentUser?searchText=non-existent-folder&take=1",
150
+ url=f"{base_url}{org}{tenant}/orchestrator_/odata/Folders?%24filter=DisplayName+eq+%27non-existent-folder%27&%24top=1&%24select=Key",
153
151
  status_code=200,
154
- json={"PageItems": []},
152
+ json={},
155
153
  )
156
154
 
157
155
  folder_key = service.retrieve_key_by_folder_path("non-existent-folder")
@@ -165,7 +163,7 @@ class TestFolderService:
165
163
  assert sent_request.method == "GET"
166
164
  assert (
167
165
  sent_request.url
168
- == f"{base_url}{org}{tenant}/orchestrator_/api/FoldersNavigation/GetFoldersForCurrentUser?searchText=non-existent-folder&take=1"
166
+ == f"{base_url}{org}{tenant}/orchestrator_/odata/Folders?%24filter=DisplayName+eq+%27non-existent-folder%27&%24top=1&%24select=Key"
169
167
  )
170
168
 
171
169
  assert HEADER_USER_AGENT in sent_request.headers
@@ -3111,7 +3111,7 @@ wheels = [
3111
3111
 
3112
3112
  [[package]]
3113
3113
  name = "uipath"
3114
- version = "2.0.66"
3114
+ version = "2.0.67"
3115
3115
  source = { editable = "." }
3116
3116
  dependencies = [
3117
3117
  { name = "azure-monitor-opentelemetry" },
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes