From sundial-org-awesome-openclaw-skills-4
Manages documents in Paperless-ngx via REST API: search, upload, download, update metadata, organize with tags, correspondents, document types. Use for Paperless-ngx instance automation.
npx claudepluginhub joshuarweaver/cascade-ai-ml-agents-misc-2 --plugin sundial-org-awesome-openclaw-skills-4This skill uses the workspace's default tool permissions.
Manage documents in Paperless-ngx via its REST API using HTTP requests.
Guides Next.js Cache Components and Partial Prerendering (PPR) with cacheComponents enabled. Implements 'use cache', cacheLife(), cacheTag(), revalidateTag(), static/dynamic optimization, and cache debugging.
Guides building MCP servers enabling LLMs to interact with external services via tools. Covers best practices, TypeScript/Node (MCP SDK), Python (FastMCP).
Generates original PNG/PDF visual art via design philosophy manifestos for posters, graphics, and static designs on user request.
Manage documents in Paperless-ngx via its REST API using HTTP requests.
Requires environment variables:
PAPERLESS_URL: Base URL (e.g., https://paperless.example.com)PAPERLESS_TOKEN: API token from Paperless-ngx settingsInclude token in all requests:
Authorization: Token $PAPERLESS_TOKEN
curl -s "$PAPERLESS_URL/api/documents/?query=invoice" \
-H "Authorization: Token $PAPERLESS_TOKEN"
Filter options: correspondent__id, document_type__id, tags__id__in, created__date__gte, created__date__lte, added__date__gte.
curl -s "$PAPERLESS_URL/api/documents/{id}/" \
-H "Authorization: Token $PAPERLESS_TOKEN"
# Original file
curl -s "$PAPERLESS_URL/api/documents/{id}/download/" \
-H "Authorization: Token $PAPERLESS_TOKEN" -o document.pdf
# Archived (OCR'd) version
curl -s "$PAPERLESS_URL/api/documents/{id}/download/?original=false" \
-H "Authorization: Token $PAPERLESS_TOKEN" -o document.pdf
curl -s "$PAPERLESS_URL/api/documents/post_document/" \
-H "Authorization: Token $PAPERLESS_TOKEN" \
-F "document=@/path/to/file.pdf" \
-F "title=Document Title" \
-F "correspondent=1" \
-F "document_type=2" \
-F "tags=3" \
-F "tags=4"
Optional fields: title, created, correspondent, document_type, storage_path, tags (repeatable), archive_serial_number, custom_fields.
curl -s -X PATCH "$PAPERLESS_URL/api/documents/{id}/" \
-H "Authorization: Token $PAPERLESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{"title": "New Title", "correspondent": 1, "tags": [1, 2]}'
curl -s -X DELETE "$PAPERLESS_URL/api/documents/{id}/" \
-H "Authorization: Token $PAPERLESS_TOKEN"
# List tags
curl -s "$PAPERLESS_URL/api/tags/" -H "Authorization: Token $PAPERLESS_TOKEN"
# Create tag
curl -s -X POST "$PAPERLESS_URL/api/tags/" \
-H "Authorization: Token $PAPERLESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{"name": "Important", "color": "#ff0000"}'
# List correspondents
curl -s "$PAPERLESS_URL/api/correspondents/" -H "Authorization: Token $PAPERLESS_TOKEN"
# Create correspondent
curl -s -X POST "$PAPERLESS_URL/api/correspondents/" \
-H "Authorization: Token $PAPERLESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{"name": "ACME Corp"}'
# List document types
curl -s "$PAPERLESS_URL/api/document_types/" -H "Authorization: Token $PAPERLESS_TOKEN"
# Create document type
curl -s -X POST "$PAPERLESS_URL/api/document_types/" \
-H "Authorization: Token $PAPERLESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{"name": "Invoice"}'
curl -s -X POST "$PAPERLESS_URL/api/documents/bulk_edit/" \
-H "Authorization: Token $PAPERLESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"documents": [1, 2, 3],
"method": "add_tag",
"parameters": {"tag": 5}
}'
Methods: set_correspondent, set_document_type, add_tag, remove_tag, delete, reprocess.
After upload, check task status:
curl -s "$PAPERLESS_URL/api/tasks/?task_id={uuid}" \
-H "Authorization: Token $PAPERLESS_TOKEN"
{"count": N, "results": [...]} with pagination?page=2 for pagination?ordering=-created for sorting (prefix - for descending)