As of January 1, 2020 this library no longer supports Python 2 on the latest released version. Library versions released prior to that date will continue to be available. For more information please visit Python 2 support on Google Cloud.

Client Options

Client options class.

Client options provide a consistent interface for user options to be defined across clients.

You can pass a client options object to a client.

from google.api_core.client_options import ClientOptions
from google.cloud.vision_v1 import ImageAnnotatorClient

def get_client_cert():
    # code to load client certificate and private key.
    return client_cert_bytes, client_private_key_bytes

options = ClientOptions(api_endpoint="foo.googleapis.com",
    client_cert_source=get_client_cert)

client = ImageAnnotatorClient(client_options=options)

You can also pass a mapping object.

from google.cloud.vision_v1 import ImageAnnotatorClient

client = ImageAnnotatorClient(
    client_options={
        "api_endpoint": "foo.googleapis.com",
        "client_cert_source" : get_client_cert
    })
class google.api_core.client_options.ClientOptions(api_endpoint: Optional[str] = None, client_cert_source: Optional[Callable[[], Tuple[bytes, bytes]]] = None, client_encrypted_cert_source: Optional[Callable[[], Tuple[str, str, bytes]]] = None, quota_project_id: Optional[str] = None, credentials_file: Optional[str] = None, scopes: Optional[Sequence[str]] = None, api_key: Optional[str] = None, api_audience: Optional[str] = None, universe_domain: Optional[str] = None)[source]

Bases: object

Client Options used to set options on clients.

Parameters
  • api_endpoint (Optional[str]) – The desired API endpoint, e.g., compute.googleapis.com

  • client_cert_source (Optional[Callable[[], Tuple[bytes, bytes]]]) – A callback which returns client certificate bytes and private key bytes both in PEM format. client_cert_source and client_encrypted_cert_source are mutually exclusive.

  • client_encrypted_cert_source (Optional[Callable[[], Tuple[str, str, bytes]]]) – A callback which returns client certificate file path, encrypted private key file path, and the passphrase bytes.``client_cert_source`` and client_encrypted_cert_source are mutually exclusive.

  • quota_project_id (Optional[str]) – A project name that a client’s quota belongs to.

  • credentials_file (Optional[str]) –

    A path to a file storing credentials. credentials_file` and ``api_key are mutually exclusive.

    Warning

    Important: If you accept a credential configuration (credential JSON/File/Stream) from an external source for authentication to Google Cloud Platform, you must validate it before providing it to any Google API or client library. Providing an unvalidated credential configuration to Google APIs or libraries can compromise the security of your systems and data. For more information, refer to Validate credential configurations from external sources.

    https://cloud.google.com/docs/authentication/external/externally-sourced-credentials

  • scopes (Optional[Sequence[str]]) – OAuth access token override scopes.

  • api_key (Optional[str]) – Google API key. credentials_file and api_key are mutually exclusive.

  • api_audience (Optional[str]) – The intended audience for the API calls to the service that will be set when using certain 3rd party authentication flows. Audience is typically a resource identifier. If not set, the service endpoint value will be used as a default. An example of a valid api_audience is: “https://language.googleapis.com”.

  • universe_domain (Optional[str]) – The desired universe domain. This must match the one in credentials. If not set, the default universe domain is googleapis.com. If both api_endpoint and universe_domain are set, then api_endpoint is used as the service endpoint. If api_endpoint is not specified, the format will be {service}.{universe_domain}.

Raises

ValueError – If both client_cert_source and client_encrypted_cert_source are provided, or both credentials_file and api_key are provided.

google.api_core.client_options.from_dict(options: Mapping[str, object]) google.api_core.client_options.ClientOptions[source]

Construct a client options object from a mapping object.

Parameters

options (collections.abc.Mapping) – A mapping object with client options. See the docstring for ClientOptions for details on valid arguments.