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 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="",

client = ImageAnnotatorClient(client_options=options)

You can also pass a mapping object.

from import ImageAnnotatorClient

client = ImageAnnotatorClient(
        "api_endpoint": "",
        "client_cert_source" : get_client_cert
class google.api_core.client_options.ClientOptions(api_endpoint=None, client_cert_source=None, client_encrypted_cert_source=None, quota_project_id=None, credentials_file=None, scopes=None, api_key=None, api_audience=None)[source]

Bases: object

Client Options used to set options on clients.

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

  • client_cert_source (Optional[Callable[[], (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[[], (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.

  • 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: “”.


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


Construct a client options object from a mapping object.


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