{"record":{"id":"bdfe548e098a990b","repo":"openai/openai-python","slug":"the-default-query-and-set-default-query-argume-bdfe54","errorCode":null,"errorMessage":"The `default_query` and `set_default_query` arguments are mutually exclusive","messagePattern":"The `default_query` and `set_default_query` arguments are mutually exclusive","errorType":"validation","errorClass":"ValueError","httpStatus":null,"severity":"error","filePath":"src/openai/lib/bedrock.py","lineNumber":577,"sourceCode":"        set_default_headers: Mapping[str, str] | None = None,\n        default_query: Mapping[str, object] | None = None,\n        set_default_query: Mapping[str, object] | None = None,\n        _enforce_credentials: bool | None = None,\n        _extra_kwargs: Mapping[str, Any] = {},\n    ) -> Self:\n        if data_residency is not None:\n            raise OpenAIError(\"`data_residency` is only supported by OpenAI clients\")\n        base_url = None if isinstance(base_url, NotGiven) else base_url\n        if callable(api_key):\n            raise OpenAIError(\"Pass refreshable Bedrock credentials via `bedrock_token_provider`, not `api_key`.\")\n        if not isinstance(provider, NotGiven):\n            raise OpenAIError(\"Configure `provider` on `OpenAI`, not on `BedrockOpenAI.with_options()`.\")\n        if admin_api_key is not None or workload_identity is not None:\n            raise OpenAIError(\"BedrockOpenAI only supports Bedrock bearer token or AWS credential authentication.\")\n        if default_headers is not None and set_default_headers is not None:\n            raise ValueError(\"The `default_headers` and `set_default_headers` arguments are mutually exclusive\")\n        if default_query is not None and set_default_query is not None:\n            raise ValueError(\"The `default_query` and `set_default_query` arguments are mutually exclusive\")\n\n        headers = self._custom_headers\n        if default_headers is not None:\n            headers = {**headers, **default_headers}\n        elif set_default_headers is not None:\n            headers = set_default_headers\n        params = self._custom_query\n        if default_query is not None:\n            params = {**params, **default_query}\n        elif set_default_query is not None:\n            params = set_default_query\n\n        provider_kwargs, inherited_provider, inherited_state = _copy_configuration(\n            self,\n            api_key=api_key,\n            token_provider=bedrock_token_provider,\n            aws_region=aws_region,\n            aws_profile=aws_profile,","sourceCodeStart":559,"sourceCodeEnd":595,"githubUrl":"https://github.com/openai/openai-python/blob/9917c6e28e66e90e1227b3d223c06a8c5441515a/src/openai/lib/bedrock.py#L559-L595","documentation":"Same exclusivity rule as headers but for query parameters: `default_query` merges into the client's existing default query params while `set_default_query` replaces them. Supplying both in the sync Bedrock `copy()` is rejected as ambiguous.","triggerScenarios":"`bedrock_client.with_options(default_query={'api-version':'v1'}, set_default_query={'beta':'true'})` — both non-None.","commonSituations":"Chained `with_options` builders each adding query params via different arguments; config layering that mixes merge and replace semantics.","solutions":["Merge the query dicts manually and pass one argument","Choose `default_query` (merge) or `set_default_query` (replace) deliberately"],"exampleFix":"# before\nc = bedrock_client.with_options(default_query={'a':'1'}, set_default_query={'b':'2'})\n# after\nc = bedrock_client.with_options(set_default_query={'a':'1','b':'2'})","handlingStrategy":"validation","validationCode":"assert not (default_query is not None and set_default_query is not None)","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Pass exactly one of default_query/set_default_query"],"tags":["bedrock","query-params","with-options","mutually-exclusive"],"backgroundTag":"mutually-exclusive-arguments","analyzedSha":"9917c6e28e66e90e1227b3d223c06a8c5441515a","analyzedAt":"2026-08-28T11:46:34.183Z","schemaVersion":2},"datasetVersion":"2026-08-28T16:17:29.566Z"}