{"id":3471,"library":"dropbox-sign","title":"Dropbox Sign Python SDK","description":"The official Python SDK for interacting with the Dropbox Sign API (formerly HelloSign). It provides a programmatic interface to send signature requests, manage documents, handle templates, and more. The current version is 1.10.0, with a release cadence that generally follows API updates and bug fixes.","status":"active","version":"1.10.0","language":"en","source_language":"en","source_url":"https://github.com/hellosign/dropbox-sign-python","tags":["api client","e-signature","dropbox sign","hellosign"],"install":[{"cmd":"pip install dropbox-sign","lang":"bash","label":"Install stable version"}],"dependencies":[],"imports":[{"note":"The package name and module paths changed significantly from 'hellosign-sdk' to 'dropbox-sign'.","wrong":"from hellosign_sdk import Configuration","symbol":"Configuration","correct":"from dropbox_sign import Configuration"},{"note":"The core API client class now resides under the 'dropbox_sign' namespace.","wrong":"from hellosign_sdk import ApiClient","symbol":"ApiClient","correct":"from dropbox_sign import ApiClient"},{"note":"Specific API modules are now located within the 'dropbox_sign.apis' subpackage.","wrong":"from hellosign_sdk.apis import account_api","symbol":"account_api","correct":"from dropbox_sign.apis import account_api"},{"note":"Specific exceptions like ApiException for API errors are found here.","symbol":"ApiException","correct":"from dropbox_sign.exceptions import ApiException"}],"quickstart":{"code":"import os\nfrom dropbox_sign import Configuration, ApiClient\nfrom dropbox_sign.apis import account_api\nfrom dropbox_sign.exceptions import ApiException\n\n# It's recommended to load your API key from environment variables\napi_key = os.environ.get('DROPBOX_SIGN_API_KEY', '')\n\nif not api_key:\n    print(\"Warning: DROPBOX_SIGN_API_KEY environment variable not set. \"\n          \"This example will likely fail. Please set it for a successful run.\")\n\n# Configure API key authorization\nconfiguration = Configuration(api_key=api_key)\n\ntry:\n    # Create an API client instance\n    with ApiClient(configuration) as api_client:\n        # Instantiate a specific API (e.g., AccountApi) with the client\n        account_api_instance = account_api.AccountApi(api_client)\n        \n        # Call an API method, e.g., get the current account information\n        response = account_api_instance.account_get()\n        \n        print(\"Successfully retrieved account information:\")\n        print(response.to_dict()) # Convert response model to dictionary for easy printing\n        \nexcept ApiException as e:\n    print(f\"Error calling Dropbox Sign API: Status {e.status}, Reason {e.reason}, Body {e.body}\")\nexcept Exception as e:\n    print(f\"An unexpected error occurred: {e}\")","lang":"python","description":"This quickstart demonstrates how to initialize the Dropbox Sign client using an API key from an environment variable, fetch basic account information, and handle potential API errors. Replace `DROPBOX_SIGN_API_KEY` with your actual API key."},"warnings":[{"fix":"You must uninstall `hellosign-sdk` and install `dropbox-sign`. All import paths and class names will need to be updated. Refer to the official migration guide on GitHub: `github.com/hellosign/dropbox-sign-python#migration-from-hellosign-sdk-to-dropbox-sign-python-sdk`","message":"The package name and entire module structure changed from `hellosign-sdk` to `dropbox-sign`. This is not a simple upgrade.","severity":"breaking","affected_versions":"All versions migrating from `hellosign-sdk` to `dropbox-sign`"},{"fix":"For API Key authentication, set `Configuration.api_key = 'YOUR_API_KEY'`. For OAuth2, set `Configuration.username` (client ID) and `Configuration.password` (client secret). Using environment variables for sensitive credentials like `os.environ.get('DROPBOX_SIGN_API_KEY')` is highly recommended.","message":"API Key vs. OAuth2 for authentication: Ensure you use the correct configuration method for your chosen authentication flow.","severity":"gotcha","affected_versions":"All versions"},{"fix":"Always catch `dropbox_sign.exceptions.ApiException` for API-specific errors. This allows you to inspect `e.status`, `e.reason`, and `e.body` for detailed error information returned by the Dropbox Sign API.","message":"API errors are raised as `ApiException`. Catching generic `Exception` might mask specific API response issues.","severity":"gotcha","affected_versions":"All versions"}],"env_vars":null,"last_verified":"2026-04-11T00:00:00.000Z","next_check":"2026-07-10T00:00:00.000Z"}