Files
budget-tracker/skills/anytype/SKILL.md
T

3.2 KiB

name, description, metadata
name description metadata
anytype Interact with Anytype knowledge base via self-hosted JSON API. Create, search, list and manage objects, spaces, types and lists.
clawdbot
emoji
🧠

Anytype Integration

You have access to a self-hosted Anytype instance via its JSON API.

Connection Details

  • Base URL: http://192.168.1.150:31009
  • Auth Header: Authorization: Bearer VVP91vUjVAPF4xcnDZF2p61kgxu+4M04n3CGj/mngtk=
  • Version Header: Anytype-Version: 2025-05-20

Every request MUST include both headers. Use curl for all API calls.

Common curl template

curl -s -X METHOD "http://192.168.1.150:31009/v1/ENDPOINT" \
  -H "Authorization: Bearer VVP91vUjVAPF4xcnDZF2p61kgxu+4M04n3CGj/mngtk=" \
  -H "Anytype-Version: 2025-05-20" \
  -H "Content-Type: application/json" \
  -d '{"key":"value"}'

Available Endpoints

Spaces

  • List spaces: GET /v1/spaces
  • Get space: GET /v1/spaces/{space_id}
  • Get space members: GET /v1/spaces/{space_id}/members
  • Global search: POST /v1/search with body {"query": "search term"}
  • Search in space: POST /v1/spaces/{space_id}/search with body {"query": "search term"}

Objects

  • List objects in space: GET /v1/spaces/{space_id}/objects
  • Get object: GET /v1/spaces/{space_id}/objects/{object_id}
  • Create object: POST /v1/spaces/{space_id}/objects with body:
  {
    "name": "Object title",
    "icon": "📝",
    "body": "Content in markdown format",
    "type_key": "ot-page",
    "description": "Optional description"
  }
  • Update object: PATCH /v1/spaces/{space_id}/objects/{object_id}
  • Delete object: DELETE /v1/spaces/{space_id}/objects/{object_id}

Types

  • List types in space: GET /v1/spaces/{space_id}/types
  • Get type: GET /v1/spaces/{space_id}/types/{type_id}

Lists / Collections

  • List lists: GET /v1/spaces/{space_id}/lists
  • Get list content: GET /v1/spaces/{space_id}/lists/{list_id}
  • Add object to list: POST /v1/spaces/{space_id}/lists/{list_id}/objects with body {"object_id": "..."}

Properties / Relations

  • List properties: GET /v1/spaces/{space_id}/properties

Templates

  • List templates for type: GET /v1/spaces/{space_id}/types/{type_id}/templates

Workflow

  1. Always start by listing spaces to get the space_id
  2. Then use the space_id in subsequent calls
  3. For creating objects, first list types to find the correct type_key
  4. Present results in a clean, readable format to the user
  5. When searching, use global search first, then refine by space if needed

Error Handling

  • 401: Token invalid or expired
  • 404: Object/space not found
  • 400: Bad request (check JSON body format)
  • If an endpoint returns an error, show the full response to help debug

Important Notes

  • The API is RESTful with JSON responses
  • All dates are in ISO 8601 format
  • Object content (body) uses Markdown
  • The type_key for common types: ot-page (Page), ot-task (Task), ot-note (Note), ot-bookmark (Bookmark)
  • Always use -s flag with curl to suppress progress bars
  • Pipe through python3 -m json.tool or jq for readable output when showing to user