paperap.client module
METADATA:
- File: client.py
Project: paperap
- Created: 2025-03-04
Version: 0.0.10
Author: Jess Mann Email: jess@jmann.me
Copyright (c) 2025 Jess Mann
LAST MODIFIED:
2025-03-04 By Jess Mann
- class paperap.client.PaperlessClient(settings=None, **kwargs)[source]
Bases:
objectClient for interacting with the Paperless-NgX API.
Examples
```python # Using token authentication client = PaperlessClient(
- Settings(
base_url=”https://paperless.example.com”, token=”40characterslong40characterslong40charac”
)
)
# Using basic authentication client = PaperlessClient(
- Settings(
base_url=”https://paperless.example.com”, username=”user”, password=”pass”
)
)
# Loading all settings from environment variables (e.g. PAPERLESS_TOKEN) client = PaperlessClient()
# With context manager with PaperlessClient(…) as client:
docs = client.documents.list()
- Parameters:
kwargs (
Unpack[SettingsArgs])
-
correspondents:
CorrespondentResource
-
custom_fields:
CustomFieldResource
-
document_types:
DocumentTypeResource
-
document_metadata:
DocumentMetadataResource
-
document_suggestions:
DocumentSuggestionsResource
-
downloaded_documents:
DownloadedDocumentResource
-
documents:
DocumentResource
-
document_notes:
DocumentNoteResource
-
groups:
GroupResource
-
profile:
ProfileResource
-
saved_views:
SavedViewResource
-
storage_paths:
StoragePathResource
-
tags:
TagResource
-
tasks:
TaskResource
-
ui_settings:
UISettingsResource
-
users:
UserResource
-
workflow_actions:
WorkflowActionResource
-
workflow_triggers:
WorkflowTriggerResource
-
workflows:
WorkflowResource
- __init__(settings=None, **kwargs)[source]
- Parameters:
kwargs (
Unpack[SettingsArgs])
- request_raw(method, endpoint, *, params=None, data=None, files=None)[source]
Make a request to the Paperless-NgX API.
- Parameters:
- Return type:
- Returns:
Response object or None if no content.
- Raises:
AuthenticationError – If authentication fails.
ResourceNotFoundError – If the requested resource doesn’t exist.
APIError – If the API returns an error.
PaperapError – For other errors.
- request(method, endpoint, *, params=None, data=None, files=None, json_response=True)[source]
Make a request to the Paperless-NgX API.
Generally, this should be done using resources, not by calling this method directly.
- generate_token(base_url, username, password, timeout=None)[source]
Generate an API token using username and password.
- Parameters:
- Return type:
- Returns:
Generated API token.
- Raises:
AuthenticationError – If authentication fails.
PaperapError – For other errors.