Install & Compatibility
Where this runs
tested against v0.129.389 · pip install
no network on importno background threads
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
muslpy 3.10–3.920 runs
installs and imports cleanly · install 0.0s · import 0.380s · 21.4MB
glibcpy 3.10–3.920 runs
installs and imports cleanly · install 2.9s · import 0.335s · 22MB
20MB installed
● package 20MB
Code
Verified usage
Verified import paths — ran on the pinned version, not inferred.
Configuration
✓ from cybrid_api_id.configuration import Configuration
Used to configure API client with base URL and authentication.
ApiClient
✓ from cybrid_api_id.api_client import ApiClient
The core client for making API requests.
BankApplicationsApi
✓ from cybrid_api_id.api.bank_applications_api import BankApplicationsApi
Example API class for interacting with bank application endpoints.
CustomerTokensApi
✓ from cybrid_api_id.api.customer_tokens_api import CustomerTokensApi
Example API class for generating customer access tokens.
UsersApi
✓ from cybrid_api_id.api.users_api import UsersApi
Example API class for managing user resources.
This quickstart demonstrates how to initialize the Cybrid Identity API client using an OAuth 2.0 Bearer Token and make a sample call to list users. You must first obtain a Bearer Token from the Cybrid Identity Provider using your Client ID and Client Secret, which are generated in the Cybrid dashboard. This token should be passed as the `access_token` to the `Configuration`. The example uses the sandbox environment.
import os
from cybrid_api_id.configuration import Configuration
from cybrid_api_id.api_client import ApiClient
from cybrid_api_id.api.users_api import UsersApi
from pprint import pprint
# Retrieve Bearer Token from environment variable
# Ensure you obtain a token from the Cybrid platform (Sandbox or Production)
# using your Client ID and Client Secret.
# Example cURL to get token:
# curl -X POST https://id.production.cybrid.app/oauth/token -d '{"client_id":"YOUR_CLIENT_ID","client_secret":"YOUR_CLIENT_SECRET","grant_type":"client_credentials","scope":"users:read"}'
CYBRID_BEARER_TOKEN = os.environ.get('CYBRID_BEARER_TOKEN', 'YOUR_BEARER_TOKEN')
if CYBRID_BEARER_TOKEN == 'YOUR_BEARER_TOKEN':
print("WARNING: Please set the CYBRID_BEARER_TOKEN environment variable or replace 'YOUR_BEARER_TOKEN' with a valid token.")
exit()
configuration = Configuration(
host = "https://id.sandbox.cybrid.app", # Use https://id.production.cybrid.app for production
access_token = CYBRID_BEARER_TOKEN
)
with ApiClient(configuration) as api_client:
api_instance = UsersApi(api_client)
try:
# List users
# Requires 'users:read' scope
api_response = api_instance.list_users(page=1, per_page=10)
print("Successfully listed users:")
pprint(api_response)
except Exception as e:
print(f"Exception when calling UsersApi->list_users: {e}")
Debug
Known issues
gotchaNever expose your Client ID or Client Secret publicly or embed them directly in your source code repository. These credentials are used to obtain Bearer Tokens and should be treated as highly sensitive.fixStore Client ID and Secret in environment variables, a secure vault, or a secrets management service. Retrieve them at runtime and do not commit them to version control.
affects: All
breakingAs an auto-generated OpenAPI client, breaking changes in the underlying Cybrid API specification can lead to breaking changes in the Python client. While efforts are made to maintain backward compatibility, significant API changes may require client updates and code adjustments.fixRegularly review the Cybrid API changelog and client release notes. Pin exact library versions in your `requirements.txt` to prevent unexpected breaks and test updates thoroughly before deploying to production.
affects: All versions, especially with major API changes.
gotchaDefault Bearer Tokens might have broad scopes. Follow the principle of least privilege by requesting and using tokens with the minimum necessary scopes required for your application's operations to limit potential damage from compromised tokens.fixWhen generating tokens (e.g., using the OAuth Client Credential Grant flow), explicitly specify only the required scopes (e.g., `users:read` instead of full access).
affects: All
gotchaDirectly exposing raw API errors to end-users can leak sensitive internal information. Cybrid API error responses may contain internal identifiers or diagnostic data.fixIntercept API errors and map them to generic, user-friendly messages. Log detailed error information securely, filtering out any sensitive request or response data, focusing on `message_code` where available.
affects: All
Errors
Common errors & fixes
cybrid_api_id.exceptions.ApiException: (401) Reason: Unauthorized - Authentication failed
The API request was sent without a valid Bearer Token, or the provided token is expired or malformed.
fixEnsure you have obtained a current Bearer Token from the Cybrid Identity Provider and correctly set it in the `Configuration` object's `access_token` field. Verify that the token is not expired.
cybrid_api_id.exceptions.ApiException: (403) Reason: Forbidden - Invalid scope
The Bearer Token used for the API request does not possess the necessary scopes (permissions) to perform the requested operation.
fixCheck the Cybrid API documentation for the specific endpoint to determine the required scopes. Generate a new Bearer Token that includes all necessary permissions for the intended API calls.
cybrid_api_id.exceptions.ApiException: (404) Reason: Not Found
The requested resource (e.g., a user by GUID) does not exist, or the endpoint path is incorrect.
fixVerify that the GUIDs or identifiers for resources are correct. Double-check the API endpoint path and ensure you're using the correct API class and method for the resource you're trying to access.
Upgrade
Version history
0.129.389latest on PyPI · released Jun 14, 2026
Audit
Dependencies
urllib3requiredHTTP client for API requests, common in OpenAPI generated clients.
python-dateutilrequiredDate and time parsing, common in OpenAPI generated clients.
frozendictrequiredImmutable dictionary implementation, often used for configuration in OpenAPI generated clients.
certifirequiredMozilla's collection of Root Certificates for validating the trustworthiness of SSL certificates.