Skip to content

feat: initial implementation of list connections#628

Merged
uipreliga merged 2 commits into
mainfrom
feat/connections-list
Oct 8, 2025
Merged

feat: initial implementation of list connections#628
uipreliga merged 2 commits into
mainfrom
feat/connections-list

Conversation

@uipreliga

Copy link
Copy Markdown
Collaborator

This pull request adds a new list and list_async method to the ConnectionsService, enabling users to retrieve and filter connections with flexible options such as name, folder, connector type, and pagination. It also introduces robust folder path resolution, OData filter construction, and improves test coverage for these new features.

New connection listing functionality:

  • Added list and list_async methods to ConnectionsService for retrieving connections with optional filters (name, folder path/key, connector key, pagination). These methods support both synchronous and asynchronous usage and include comprehensive docstrings and usage examples.
  • Implemented _list_spec helper to construct OData filter queries, resolve folder paths to keys using FolderService, and build request headers for folder scoping. Raises a ValueError if folder path cannot be resolved.
  • Added _parse_and_validate_list_response to handle both OData and raw list API responses, ensuring robust parsing and validation of returned connections.

Integration and dependency management:

  • Updated the ConnectionsService constructor to require a FolderService instance for folder path resolution, and modified the SDK entrypoint (_uipath.py) to inject this dependency. [1] [2]

Testing improvements:

  • Added extensive unit tests for the new listing methods, covering filter combinations, folder path resolution, OData escaping, pagination, error handling, and response parsing. Tests use a mock FolderService to simulate folder key resolution. [1] [2] [3]

@uipreliga uipreliga requested a review from Copilot September 30, 2025 21:57

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This pull request introduces new connection listing capabilities to the ConnectionsService, enabling users to retrieve and filter connections with flexible options such as name, folder, connector type, and pagination. The implementation includes both synchronous and asynchronous methods with comprehensive error handling and robust folder path resolution.

  • Added list and list_async methods with optional filtering parameters (name, folder path/key, connector key, pagination)
  • Implemented folder path resolution using FolderService dependency injection and OData filter construction
  • Enhanced test coverage with comprehensive unit tests for various filter combinations and edge cases

Reviewed Changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 2 comments.

File Description
src/uipath/_services/connections_service.py Added list/list_async methods, helper functions for OData filtering, and folder path resolution
src/uipath/_uipath.py Updated connections property to inject FolderService dependency
tests/sdk/services/test_connections_service.py Added comprehensive test coverage for new listing functionality with mock FolderService

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

Comment thread src/uipath/_services/connections_service.py
Comment thread tests/sdk/services/test_connections_service.py
@uipreliga uipreliga force-pushed the feat/connections-list branch from ca3cb2a to 4ab90b8 Compare October 7, 2025 19:57
@github-actions github-actions Bot added test:uipath-langchain Triggers tests in the uipath-langchain-python repository test:uipath-llamaindex Triggers tests in the uipath-llamaindex-python repository labels Oct 7, 2025

@akshaylive akshaylive left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is great! Thanks for improving the sdk! :)

Comment thread src/uipath/_services/connections_service.py
Comment thread tests/sdk/services/test_connections_service.py Outdated
@uipreliga uipreliga requested a review from cristipufu October 8, 2025 15:45
@uipreliga uipreliga force-pushed the feat/connections-list branch 3 times, most recently from c93472f to 99cb99e Compare October 8, 2025 17:19
@uipreliga uipreliga force-pushed the feat/connections-list branch from 99cb99e to a4b4228 Compare October 8, 2025 17:22
@uipreliga uipreliga enabled auto-merge October 8, 2025 17:26
@uipreliga uipreliga merged commit 112452a into main Oct 8, 2025
55 checks passed
@uipreliga uipreliga deleted the feat/connections-list branch October 8, 2025 17:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

test:uipath-langchain Triggers tests in the uipath-langchain-python repository test:uipath-llamaindex Triggers tests in the uipath-llamaindex-python repository

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants