--- id: civis version: "2.9.3" license: BSD-3-Clause license_treatment: permissive maintenance: active --- # civis — Civis API Python Client License: permissive · Maintenance: active · Downloads: 196.2K/mo ## What it is and what it does Civis is a Python client for the Civis Platform, a cloud-based data and analytics service. It bridges programmatic Python workflows with Civis's hosted infrastructure, allowing analysts and developers to read/write data, train machine learning models, and orchestrate jobs without leaving Python. The package provides both convenience wrappers (e.g., civis.io.read_civis) for common tasks and a low-level APIClient for direct API calls. The client depends on click, cloudpickle, joblib, jsonref, jsonschema, PyYAML, requests, tenacity, and typing-extensions. It has soft dependencies on pandas, polars, scikit-learn, and feather-format for advanced features like dataframe I/O and model export. Authentication requires a Civis Platform API key stored in the CIVIS_API_KEY environment variable. Use it for: - Read data from Civis-hosted databases into a local pandas or polars DataFrame for analysis. - Write analysis results back to Civis databases or data warehouses from Python scripts. - Train and deploy machine learning models on Civis Platform infrastructure using the ml namespace. - Automate data workflows and job orchestration by calling Civis API methods directly. - Manage Civis Platform resources (databases, tables, users) programmatically from Python applications. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Python client library for programmatically interacting with the Civis Platform API, providing both high-level wrappers for common workflows and direct API access. Yes. The package is actively maintained, has low install friction, carries no known vulnerabilities, and is licensed permissively. Install it if you need to integrate Python workflows with Civis Platform. The main prerequisite is a valid Civis API key and Python >= 3.11; soft dependencies (pandas, scikit-learn) are only needed for specific features, not for basic API access. ## Install pip install civis uv add civis poetry add civis ## Installing civis Before you install: Low install friction with a pure-Python wheel distribution. Active maintenance with a release 3 days ago; the project has been stable since 2016 and supports current Python versions (3.11–3.14). Nine runtime dependencies are all standard, well-maintained libraries. License in practice: BSD-3-Clause is permissive; you may use, modify, and distribute this package with minimal restrictions, provided you include the license notice. Quickstart: pip install civis import civis client = civis.APIClient() print(client.users.get_me()['username']) # Or use high-level wrappers: df = civis.io.read_civis(table="my_schema.my_table", database="database", return_as="pandas") Requires CIVIS_API_KEY environment variable set with a valid Civis Platform API key (expires every 30 days and must be renewed). Requires Python >= 3.11. Verify before relying: - Whether soft dependencies (pandas, polars, scikit-learn, feather-format, civisml-extensions, glmnet, muffnn) are required for specific workflows or truly optional. - Performance characteristics and rate-limiting behavior when making large numbers of API requests. - Support for authentication methods beyond environment variable (e.g., config files, credential managers). ## Package facts - License: BSD-3-Clause (permissive) - Python support: supports_current - Install friction: low - Maintenance: active - Downloads: 196.2K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags civis platform api client, python api wrapper, data platform integration, machine learning model deployment, data workflow automation, api client library, platform sdk python, api-client, data-platform, cloud-integration [View on SkillFed](https://skillfed.io/packages/civis) · [View on PyPI](https://pypi.org/project/civis/)