diff --git a/src/openrouter/sdk.py b/src/openrouter/sdk.py index a6a9afda..83e8be0e 100644 --- a/src/openrouter/sdk.py +++ b/src/openrouter/sdk.py @@ -137,6 +137,7 @@ def __init__( server: Optional[str] = None, url_params: Optional[Dict[str, str]] = None, server_url: Optional[str] = None, + base_url: Optional[str] = None, client: Optional[HttpClient] = None, async_client: Optional[AsyncHttpClient] = None, retry_config: OptionalNullable[RetryConfig] = UNSET, @@ -187,6 +188,9 @@ def __init__( else: security = components.Security(api_key=api_key) + if server_url is None and base_url is not None: + server_url = base_url + if server_url is not None: if url_params is not None: server_url = utils.template_url(server_url, url_params) diff --git a/tests/test_sdk_base_url.py b/tests/test_sdk_base_url.py new file mode 100644 index 00000000..7404be30 --- /dev/null +++ b/tests/test_sdk_base_url.py @@ -0,0 +1,11 @@ +import unittest +from openrouter.sdk import OpenRouter + +class TestOpenRouterSDKBaseURL(unittest.TestCase): + def test_base_url_initialization(self): + custom_url = "https://custom.openrouter.ai/api/v1" + client = OpenRouter(api_key="test_key", base_url=custom_url) + self.assertEqual(client.sdk_configuration.server_url, custom_url) + +if __name__ == "__main__": + unittest.main()