{"id":5757,"library":"composio-client","title":"Composio Client","description":"Composio Client is the official Python library for interacting with the Composio API. It enables developers to integrate and automate actions across various tools and platforms. The library maintains a rapid release cadence, with frequent updates to its API surface to reflect changes and additions in the underlying Composio platform.","status":"active","version":"1.33.0","language":"en","source_language":"en","source_url":"https://github.com/ComposioHQ/composio-base-py","tags":["api client","ai","tools","automation","integrations"],"install":[{"cmd":"pip install composio-client","lang":"bash","label":"Install Composio Client"}],"dependencies":[{"reason":"Used for making HTTP requests to the Composio API.","package":"httpx","optional":false},{"reason":"Used for data validation and parsing API responses.","package":"pydantic","optional":false}],"imports":[{"symbol":"ComposioClient","correct":"from composio_client import ComposioClient"},{"note":"Commonly imported enum for specifying action types.","symbol":"ActionType","correct":"from composio_client.enums import ActionType"}],"quickstart":{"code":"import os\nfrom composio_client import ComposioClient\n\n# Ensure COMPOSIO_API_KEY is set in your environment\n# Example: export COMPOSIO_API_KEY=\"your_api_key_here\"\napi_key = os.environ.get('COMPOSIO_API_KEY', '')\n\nif not api_key:\n    print(\"Error: COMPOSIO_API_KEY environment variable not set.\")\n    print(\"Please set it before running the quickstart.\")\nelse:\n    try:\n        client = ComposioClient(api_key=api_key)\n        # Fetch a list of installed tools\n        tools = client.tool.get_installed_tools()\n        print(f\"Successfully initialized ComposioClient. Found {len(tools)} installed tools:\")\n        for tool in tools:\n            print(f\"- {tool.name} (ID: {tool.id})\")\n\n    except Exception as e:\n        print(f\"An error occurred: {e}\")","lang":"python","description":"Initializes the ComposioClient and fetches a list of currently installed tools. This demonstrates basic connectivity and authentication. Ensure `COMPOSIO_API_KEY` is set in your environment variables."},"warnings":[{"fix":"Always check the latest changelog or GitHub releases when upgrading, especially before deploying to production. Pinning exact minor versions (`composio-client==1.x.y`) can help, but regular updates are recommended for new features and bug fixes.","message":"The Composio API client is frequently updated, often multiple times a week. While semantic versioning (v1.x.y) is used, rapid 'api update' commits can sometimes introduce subtle changes to method signatures or return types within minor versions, requiring careful attention during upgrades.","severity":"gotcha","affected_versions":"1.0.0+"},{"fix":"Set the `COMPOSIO_API_KEY` environment variable (e.g., `export COMPOSIO_API_KEY=\"your_key\"`) or pass it directly: `client = ComposioClient(api_key=\"your_key\")`.","message":"Authentication requires a `COMPOSIO_API_KEY`. The client expects this to be provided either as an environment variable or explicitly passed during client instantiation. Failing to provide a valid key will result in authentication errors.","severity":"gotcha","affected_versions":"1.0.0+"},{"fix":"Before using the client to interact with specific tools, ensure they are set up in your Composio dashboard. Use `client.tool.get_installed_tools()` to verify available tools and their IDs.","message":"The library primarily interacts with 'tools' registered within the Composio platform. To perform meaningful actions (e.g., calling `client.action.run_action`), you must have corresponding tools configured and installed in your Composio account.","severity":"gotcha","affected_versions":"1.0.0+"}],"env_vars":null,"last_verified":"2026-04-14T00:00:00.000Z","next_check":"2026-07-13T00:00:00.000Z"}