skillfed

civis

Civis API Python Client

civis v2.9.3 196.2K downloads/30d#9,792 on PyPI35
Permissive license BSD-3-Clause Active released

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 on this page — 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

civis on PyPI

pip

pip install civis

uv

uv add civis

poetry

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 the current Python release (>=3.11)
Install friction low — pure-Python wheel
Runtime dependencies 9 — click, cloudpickle, joblib, jsonref, jsonschema, PyYAML, requests, tenacity, typing-extensions
Maintenance actively maintained — 3 days since the last release
Last repo commit
First released
Downloads 196,225/month — #9,792 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: civis-2.9.3-py3-none-any.whl

Development Status :: 5 - Production/StableProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14

Tags

civis platform api clientpython api wrapperdata platform integrationmachine learning model deploymentdata workflow automationapi client libraryplatform sdk python
api-clientdata-platformcloud-integration

More WWW/HTTP packages