Parameters to send while creating openai object in python

As given in Openai API doc, to create an object of openai class , this is the format:
client = OpenAI(
But on some places, I can also see base_url as one of the parameters .


So , what all are the parameters I can send while creating an OpenAI class object.

Perhaps the best reference is within the source. Here is the copy method, giving what will be duplicated into a new client from the existing one

    def copy(
        api_key: str | None = None,
        organization: str | None = None,
        project: str | None = None,
        base_url: str | httpx.URL | None = None,
        timeout: float | Timeout | None | NotGiven = NOT_GIVEN,
        http_client: httpx.Client | None = None,
        max_retries: int | NotGiven = NOT_GIVEN,
        default_headers: Mapping[str, str] | None = None,
        set_default_headers: Mapping[str, str] | None = None,
        default_query: Mapping[str, object] | None = None,
        set_default_query: Mapping[str, object] | None = None,
        _extra_kwargs: Mapping[str, Any] = {},
    ) -> Self:

Some will take a bit more pondering, such as “Timeout” being a httpx timeout object where particular network timeouts can be set.