nc-py-api
Nextcloud Python Framework
What it is and what it does
nc-py-api is a Python framework for interacting with Nextcloud servers and building Nextcloud applications. It provides two main client classes: Nextcloud (for standard client authentication via username/password) and NextcloudApp (for building full Nextcloud applications with graphical interfaces and multi-user support via AppAPI). The library is async-first, with sync wrappers being gradually removed; as of version 0.30.0, several modules (Activity, Notes, User Status, Weather Status) have already dropped sync support.
The package depends on fastapi, starlette, pydantic, niquests, filelock, python-dotenv, and xmltodict. It is actively maintained, supports Python 3.10 through 3.14, and runs on CPython and PyPy. The library is in Beta status and has no known security vulnerabilities.
Use it for:
- Build a Python application that reads or modifies files, users, or settings on a Nextcloud server
- Create a Nextcloud app with a web interface that integrates with the Nextcloud ecosystem
- Automate Nextcloud administration tasks (user management, file operations, logging)
- Develop a custom integration or sync tool between Nextcloud and external systems
- Monitor or audit Nextcloud activity and user status programmatically
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Python client library for interacting with Nextcloud servers and building Nextcloud applications via async and sync APIs.
Yes. Active maintenance, low install friction, permissive license, no known vulnerabilities, and broad Python version support make this a solid choice for Nextcloud integration. The async-first design is modern; be aware that sync wrappers are being phased out, so new code should target the async API.
Install
nc-py-api on PyPI
pip
pip install nc-py-apiuv
uv add nc-py-apipoetry
poetry add nc-py-apiInstalling nc-py-api
Before you install
Low friction installation with a pure-Python wheel. Active maintenance with a release 3 days ago and recent commits. Supports modern Python versions (3.10–3.14) and runs on CPython and PyPy.
License in practice
BSD-3-Clause permissive license allows commercial and private use with minimal restrictions; attribution required.
Quickstart
pip install nc-py-api
from nc_py_api import AsyncNextcloud
nc = AsyncNextcloud(nextcloud_url="https://example.com", user="user", password="pass")
await nc.users.list()
Requires Python 3.10 or later. Async API is primary; sync wrappers are being phased out as of version 0.30.0.
Verify before relying
- Whether the library's test coverage claim ('all code covered with tests as much as possible') reflects actual coverage percentage
- Performance characteristics and latency benchmarks for typical Nextcloud API operations
- Which specific Nextcloud server versions are supported and tested
Package facts
| License | BSD-3-Clause (permissive) |
| Python support | supports the current Python release (>=3.10) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 7 — fastapi, filelock, niquests, pydantic, python-dotenv, starlette, xmltodict |
| Maintenance | actively maintained — 3 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 1,018,960/month — #4,497 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: nc_py_api-0.30.3-py3-none-any.whl
Keywords: api, client, framework, library, nextcloud
Tags
More Software Development packages
Provides backported and experimental type hints…
permissive · top 100 on PyPI
numpyNumPy provides an N-dimensional array object…
permissive · top 100 on PyPI
fastapiFastAPI is a Python web framework for building…
permissive · top 100 on PyPI
annotated-docProvides a way to document function parameters,…
permissive · top 100 on PyPI
typerTyper builds command-line applications from…
permissive · top 1,000 on PyPI
distlibDistlib provides low-level packaging utilities…
permissive · top 1,000 on PyPI
nextcloudmonitorWraps the Nextcloud monitor API to retrieve…
permissive · top 15,000 on PyPI
nextcloud-mcp-serverProvides a Model Context Protocol (MCP) server…
agpl · top 15,000 on PyPI
fastcrudFastCRUD provides async CRUD operations and…
permissive · top 15,000 on PyPI
fastapi-lifespan-managerProvides a lifespan manager for FastAPI that…
permissive · top 15,000 on PyPI
fastapi-utilitiesProvides reusable utilities for FastAPI…
permissive · top 15,000 on PyPI
fastapi-cache2Caches FastAPI endpoint and function results…
permissive · top 5,000 on PyPI
fastapi-cloud-cliA command-line tool for deploying and managing…
permissive · top 1,000 on PyPI
restflyRESTfly is a framework for building libraries…
permissive · top 15,000 on PyPI
async_generatorProvides async generators and async context…
permissive · top 5,000 on PyPI
pynwsAsynchronously fetch weather observations,…
permissive · top 15,000 on PyPI