From 0c123e6665991b66fc2e1748ba26c0f89d9e045d Mon Sep 17 00:00:00 2001 From: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> Date: Mon, 12 Oct 2026 23:50:46 +0000 Subject: [PATCH] feat(cloud): link direct-access guidance to the dedicated enable-direct-access route Co-Authored-By: AJ Steers --- airbyte/cloud/connectors.py | 2 +- tests/unit_tests/test_cloud_direct_execute.py | 10 ++++++++-- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/airbyte/cloud/connectors.py b/airbyte/cloud/connectors.py index 2f931220a..0ee993bb8 100644 --- a/airbyte/cloud/connectors.py +++ b/airbyte/cloud/connectors.py @@ -676,7 +676,7 @@ def _raise_if_feature_not_enabled( @property def _direct_access_enablement_url(self) -> str: """Get the web URL where the user can enable direct access for this connector.""" - return self.connector_url + return f"{self.connector_url}/enable-direct-access?skip-consent-screen=false" def _execute_direct_action( # noqa: PLR0913 # Explicit args mirror the public methods. self, diff --git a/tests/unit_tests/test_cloud_direct_execute.py b/tests/unit_tests/test_cloud_direct_execute.py index 70acb891f..e2e111b45 100644 --- a/tests/unit_tests/test_cloud_direct_execute.py +++ b/tests/unit_tests/test_cloud_direct_execute.py @@ -342,7 +342,10 @@ def test_execute_error_handling( assert isinstance(exc_info.value, AirbyteExternalAccessNotEnabledError) assert exc_info.value.connector_id == "source-1" assert exc_info.value.connector_name == "GitHub Issues" - assert exc_info.value.enablement_url == source.connector_url + assert ( + exc_info.value.enablement_url + == f"{source.connector_url}/enable-direct-access?skip-consent-screen=false" + ) assert exc_info.value.guidance == AirbyteExternalAccessNotEnabledError.guidance else: assert isinstance(exc_info.value, AirbyteCloudError) @@ -372,7 +375,10 @@ def test_execute_error_sets_enablement_url_without_connector_info( ): source.execute_api_query("issues") - assert exc_info.value.enablement_url == source.connector_url + assert ( + exc_info.value.enablement_url + == f"{source.connector_url}/enable-direct-access?skip-consent-screen=false" + ) assert exc_info.value.guidance == AirbyteExternalAccessNotEnabledError.guidance