skillfed

nc-py-api

Nextcloud Python Framework

nc-py-api v0.30.3 1.0M downloads/30d#4,497 on PyPI156
Permissive license BSD-3-Clause Active released

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-api

uv

uv add nc-py-api

poetry

poetry add nc-py-api

Installing 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

Development Status :: 4 - BetaIntended Audience :: DevelopersLicense :: OSI Approved :: BSD LicenseOperating System :: MacOS :: MacOS XOperating System :: Microsoft :: WindowsOperating System :: POSIX :: LinuxProgramming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Programming Language :: Python :: Implementation :: CPythonProgramming Language :: Python :: Implementation :: PyPyTopic :: Internet :: WWW/HTTPTopic :: Internet :: WWW/HTTP :: Dynamic ContentTopic :: Software DevelopmentTopic :: Software Development :: LibrariesTopic :: Software Development :: Libraries :: Application FrameworksTopic :: Software Development :: Libraries :: Python Modules

Tags

nextcloud python clientnextcloud api librarynextcloud app frameworkasync nextcloud integrationnextcloud server interactionpython nextcloud sdknextcloud application development
nextcloud-integrationasync-firstapp-framework

More Software Development packages