SSL/TLS Configuration
Use ssl_config with SSLConfig for custom CA bundles, client certificates (mutual TLS), or to disable verification in development only.
Custom CA Bundle
For APIs that use an internal or custom certificate authority:
from intapp_rest_client import RestClient, SSLConfig
client = RestClient(
base_url="https://internal-api.example.com",
api_key="your-key",
ssl_config=SSLConfig(ca_bundle="/etc/ssl/certs/company-ca.crt")
)Mutual TLS (Client Certificate)
When the API requires a client certificate:
from intapp_rest_client import RestClient, SSLConfig
client = RestClient(
base_url="https://api.example.com",
api_key="your-key",
ssl_config=SSLConfig(
client_cert="/path/to/client.crt",
client_key="/path/to/client.key"
)
)If the client key is encrypted:
ssl_config=SSLConfig(
client_cert="/path/to/client.crt",
client_key="/path/to/client.key",
client_key_password="key-passphrase"
)Development: Disable Verification
⚠️
Set verify=False only for local development or testing. Never disable verification in production.
from intapp_rest_client import RestClient, SSLConfig
# For local/dev only
client = RestClient(
base_url="https://localhost:8443",
api_key="key",
ssl_config=SSLConfig(verify=False)
)SSLConfig Fields
| Field | Default | Description |
|---|---|---|
verify | True | Enable SSL certificate verification |
ca_bundle | None | Path to custom CA bundle file or directory |
client_cert | None | Path to client certificate (mutual TLS) |
client_key | None | Path to client private key (required if client_cert is set) |
client_key_password | None | Password for encrypted client key |
See Also
- Models: SSLConfig
- API Reference: Constructor –
ssl_configparameter