Configuring the Python bindings
Zulip provides a set of tools that allows interacting with its API more
easily, called the Python bindings.
One of the most notable use cases for these bindings are bots developed
using Zulip's bot framework.
In order to use them, you need to configure them with your API key and other
settings. There are two ways to achieve that:
- With a file called .zuliprc, located in your home directory.
- With
   environment variables
   set up in your host machine.
A .zuliprc file is a plain text document that looks like this:
[api]
key=<API key from the web interface>
email=<your email address>
site=<your Zulip server's URI>
...
The keys you can use in this file (and their equivalent environment variables)
can be found in the following table:
    
        
            | .zuliprckey | Environment variable | Required | Description | 
    
    
        | key | ZULIP_API_KEY | Yes | API key, which you can get through
            Zulip's web interface. | 
    
        | email | ZULIP_EMAIL | Yes | The email address of the user who owns the API key mentioned
            above. | 
    
        | site | ZULIP_SITE | No | URL where your Zulip server is located. | 
    
        | client_cert_key | ZULIP_CERT_KEY | No | Path to the SSL/TLS private key that the binding should use to
            connect to the server. | 
    
        | client_cert | ZULIP_CERT | No* | The public counterpart of client_cert_key/ZULIP_CERT_KEY. This setting is required if a cert
            key has been set. | 
    
        | client_bundle | ZULIP_CERT_BUNDLE | No | Path where the server's PEM-encoded certificate is located. CA
            certificates are also accepted, in case those CA's have issued the
            server's certificate. Defaults to the built-in CA bundle trusted
            by Python. | 
    
        | insecure | ZULIP_ALLOW_INSECURE | No | Allows connecting to Zulip servers with an invalid SSL/TLS
            certificate. Please note that enabling this will make the HTTPS
            connection insecure. Defaults to false. |