ClawKit Logo
ClawKitReliability Toolkit
Back to Registry
Official Verified

openkm-rest

OpenKM Document Management via REST API (folders, documents, metadata, versioning, search, workflows)

skill-install — Terminal

Install via CLI (Recommended)

clawhub install openclaw/skills/skills/pes0/openkm-rest
Or

OpenKM REST Skill

This skill provides a local CLI that accesses OpenKM exclusively via REST (no SOAP, no CMIS).

The agent uses shell calls to openkm_cli.py.

Environment Variables (Required)

OPENKM_BASE_URL=https://openkm.example.com   # WITHOUT /OpenKM
OPENKM_USERNAME=okm_admin
OPENKM_PASSWORD=secret

Folder Operations

List folder contents

python3 openkm_cli.py list --folder-path /okm:root

Create folder structure

Creates parent folders if they don't exist:

python3 openkm_cli.py ensure-structure --parts Folder1 Subfolder

Document Operations

Upload document

python3 openkm_cli.py upload --okm-path /okm:root/Folder/file.pdf --local-path /path/file.pdf

Download document

python3 openkm_cli.py download --doc-id <uuid> --local-path /path/file.pdf

Move document

Move a document to another folder (using folder UUID as target):

python3 openkm_cli.py move --doc-id <doc-uuid> --target-path <folder-uuid>

Rename document

python3 openkm_cli.py rename --doc-id <uuid> --new-name new_filename.pdf

Delete document

python3 openkm_cli.py delete --doc-id <uuid>

Metadata & Organization

Get document properties

Shows title, description, keywords, categories, and other metadata:

python3 openkm_cli.py properties --doc-id <uuid>

Set title and description

python3 openkm_cli.py set-properties --doc-id <uuid> --title "My Title" --description "My description"

Add keyword

python3 openkm_cli.py add-keyword --doc-id <uuid> --keyword "Invoice"

Remove keyword

python3 openkm_cli.py remove-keyword --doc-id <uuid> --keyword "Invoice"

Add category

Category ID can be a UUID or path (e.g., /okm:categories/Finance):

python3 openkm_cli.py add-category --doc-id <uuid> --category-id <category-uuid-or-path>

Remove category

python3 openkm_cli.py remove-category --doc-id <uuid> --category-id <category-uuid-or-path>

Versioning

Get version history

python3 openkm_cli.py versions --doc-id <uuid>

Download specific version

python3 openkm_cli.py download-version --doc-id <uuid> --version 1.0 --local-path /path/file_v1.pdf

Restore version

Restores document to a previous version:

python3 openkm_cli.py restore-version --doc-id <uuid> --version 1.0

Search

Search by content (full-text)

python3 openkm_cli.py search-content --content "invoice hosting"

Search by filename

python3 openkm_cli.py search-name --name "hetzner"

Search by keywords

python3 openkm_cli.py search-keywords --keywords "Invoice,Hosting"

General search with filters

python3 openkm_cli.py search --content "server" --author "john.doe" --path "/okm:root"

Workflows

Metadata

Author@pes0
Stars1217
Views0
Updated2026-02-20
View Author Profile
AI Skill Finder

Not sure this is the right skill?

Describe what you want to build — we'll match you to the best skill from 16,000+ options.

Find the right skill
Add to Configuration

Paste this into your clawhub.json to enable this plugin.

{
  "plugins": {
    "official-pes0-openkm-rest": {
      "enabled": true,
      "auto_update": true
    }
  }
}
Safety NoteClawKit audits metadata but not runtime behavior. Use with caution.