Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/aaronsegura/nextcloud-async
Async-capable python wrapper for Nextcloud APIs
https://github.com/aaronsegura/nextcloud-async
asyncio maps nextcloud ocs python3 spreed
Last synced: 2 months ago
JSON representation
Async-capable python wrapper for Nextcloud APIs
- Host: GitHub
- URL: https://github.com/aaronsegura/nextcloud-async
- Owner: aaronsegura
- License: gpl-3.0
- Created: 2022-06-18T12:54:46.000Z (over 2 years ago)
- Default Branch: master
- Last Pushed: 2024-04-17T15:59:55.000Z (8 months ago)
- Last Synced: 2024-09-30T02:42:34.389Z (3 months ago)
- Topics: asyncio, maps, nextcloud, ocs, python3, spreed
- Language: Python
- Homepage:
- Size: 144 KB
- Stars: 13
- Watchers: 2
- Forks: 5
- Open Issues: 15
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# nextcloud-async
## Asynchronous Nextcloud ClientThis module provides an asyncio-friendly interface to public NextCloud APIs.
### Covered APIs
* File Management API
* User Management API
* Group Management API
* GroupFolders API
* App Management API
* LDAP Configuration API
* Status API
* Share API (except Federated shares)
* Talk/spreed API
* Notifications API
* Login Flow v2 API
* Remote Wipe API
* Maps API### APIs To Do
* Sharee API
* Reaction API
* User Preferences API
* Federated Shares API
* Cookbook API
* Passwords API
* Notes API
* Deck API
* Calendar CalDAV API
* Tasks CalDAV API
* Contacts CardDAV APIIf you know of any APIs missing from this list, please open an issue at
https://github.com/aaronsegura/nextcloud-async/issues with a link to
the API documentation so it can be added. This project aims to eventually
cover any API provided by NextCloud and commonly used NextCloud apps.### Example Usage
import httpx
import asyncio
from nextcloud_async import NextCloudAsyncnca = NextCloudAsync(
client=httpx.AsyncClient(),
endpoint='http://localhost:8181',
user='user',
password='password')async def main():
users = await nca.get_users()
tasks = [nca.get_user(user) for user in users]
results = await asyncio.gather(*tasks)
for user_info in results:
print(user_info)if __name__ == "__main__":
asyncio.run(main())----
This project is not endorsed or recognized in any way by the NextCloud
project.