---
canonical_url: "https://docs.composio.dev/toolkits/hjarni"
markdown_url: "https://docs.composio.dev/toolkits/hjarni.md"
product: "platform"
version: null
last_updated: null
---

# Hjarni

Hjarni is a personal knowledge management platform for organizing, searching, linking, and maintaining notes, containers, and tags.

- **Category:** notes
- **Auth:** API_KEY
- **Composio-managed OAuth available?** N/A
- **Tools:** 15
- **Triggers:** 0
- **Slug:** `HJARNI`
- **Version:** 00000000_00

## Tools

### Create Container

**Slug:** `HJARNI_CREATE_CONTAINER`

Create a root or nested Hjarni container for organizing notes.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | Container name. |
| `position` | integer | No | Optional order position among sibling containers. |
| `parent_id` | integer | No | Parent container ID; omit to create a root container. |
| `description` | string | No | Optional container description. |
| `llm_instructions` | string | No | Optional AI instructions scoped to this container. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Note

**Slug:** `HJARNI_CREATE_NOTE`

Create a Markdown note in the inbox or a container. Tags named in tag_names are applied as part of creation. Free accounts are limited to 25 notes, so check account status if quota pressure is possible.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `body` | string | No | Markdown note body. |
| `title` | string | Yes | Note title. |
| `summary` | string | No | Optional note summary. |
| `position` | integer | No | Optional position within the destination scope. |
| `tag_names` | array | No | Tag names to apply to the note. |
| `source_url` | string | No | Optional URL from which the note content originated. |
| `container_id` | integer | No | Destination container ID; omit to create the note in the inbox. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Notes

**Slug:** `HJARNI_CREATE_NOTES`

Create 1-25 Markdown notes in order and return one result per input. This batch is non-atomic: successful notes remain created if another item fails.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `notes` | array | Yes | Notes to create in order (1-25). The batch is non-atomic: successful notes remain created if another item fails. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Tag

**Slug:** `HJARNI_CREATE_TAG`

Create a Hjarni tag for organizing notes.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | Non-blank tag name. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Account Status

**Slug:** `HJARNI_GET_ACCOUNT_STATUS`

Return the connected Hjarni identity, token scope, plan, teams, and current resource usage and quotas. Use this before creating many notes or attachments; Free accounts allow 25 notes, 5 attachments, and 20 MB of attachment storage.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Note

**Slug:** `HJARNI_GET_NOTE`

Get one Hjarni note by ID with its Markdown body, tags, container, attachments, links, and optimistic-lock version.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `note_id` | integer | Yes | ID of the note to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Containers

**Slug:** `HJARNI_LIST_CONTAINERS`

List Hjarni containers as active roots, archived roots, or all active containers in a flat view. Use next_cursor to page through results.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `scope` | string ("archived" | "all") | No | Container subset: omit for active roots, archived for archived roots, or all for all active containers in a flat view. |
| `per_page` | integer | No | Maximum containers in this page (1-100). |
| `next_cursor` | string | No | Continuation cursor returned by a previous call; omit for the first page. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Notes

**Slug:** `HJARNI_LIST_NOTES`

List and filter personal Hjarni notes, including active, inbox, archived, or favorited notes. Use next_cursor to page through results; use query for simple personal-note filtering.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `tag` | string | No | Only return notes carrying this tag name. |
| `query` | string | No | Optional text filter for personal notes. |
| `scope` | string ("archived" | "inbox" | "favorited") | No | Optional note subset; omit for active notes. |
| `per_page` | integer | No | Maximum notes in this page (1-100). |
| `next_cursor` | string | No | Continuation cursor returned by a previous call; omit for the first page. |
| `container_id` | integer | No | Only return notes directly in this container. |
| `exclude_body` | boolean | No | Omit note bodies to reduce response size; set false when bodies are needed. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Tags

**Slug:** `HJARNI_LIST_TAGS`

List all Hjarni tags and their note counts. Use next_cursor to page through results.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `per_page` | integer | No | Maximum tags in this page (1-100). |
| `next_cursor` | string | No | Continuation cursor returned by a previous call; omit for the first page. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Trashed Notes

**Slug:** `HJARNI_LIST_TRASHED_NOTES`

List recoverable trashed Hjarni notes with their deletion and scheduled purge times. Use next_cursor to page through results.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `per_page` | integer | No | Maximum trashed notes in this page (1-100). |
| `next_cursor` | string | No | Continuation cursor returned by a previous call; omit for the first page. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Rename Tag

**Slug:** `HJARNI_RENAME_TAG`

Rename an existing Hjarni tag without changing its note associations.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | New non-blank tag name. |
| `tag_id` | integer | Yes | ID of the tag to rename. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Restore Note

**Slug:** `HJARNI_RESTORE_NOTE`

Restore a note from Trash before its scheduled purge and return the active note.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `note_id` | integer | Yes | ID of the trashed note to restore. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Move Note to Trash

**Slug:** `HJARNI_TRASH_NOTE`

Move a note to recoverable Trash. This is not immediate permanent deletion: Hjarni retains the note for about 30 days, and RESTORE_NOTE can recover it before purge.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `note_id` | integer | Yes | ID of the note to move to recoverable Trash. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Container

**Slug:** `HJARNI_UPDATE_CONTAINER`

Update a Hjarni container's name, description, parent, position, or container-specific AI instructions.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | Replacement name. |
| `position` | integer | No | Replacement order position among sibling containers. |
| `parent_id` | integer | No | Move under this parent. Explicit null moves the container to the root; omission leaves the parent unchanged. |
| `description` | string | No | Replacement description. |
| `container_id` | integer | Yes | ID of the container to update. |
| `llm_instructions` | string | No | Replacement container-specific AI instructions. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Note

**Slug:** `HJARNI_UPDATE_NOTE`

Update note metadata, placement, tags, or body. body replaces the entire Markdown body; append_body safely appends text. Provide expected_lock_version from GET_NOTE to prevent overwriting concurrent edits.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `body` | string | No | Complete replacement Markdown body; mutually exclusive with append_body. |
| `title` | string | No | Replacement title. |
| `note_id` | integer | Yes | ID of the note to update. |
| `summary` | string | No | Replacement summary. |
| `position` | integer | No | Replacement position within the note's scope. |
| `tag_names` | array | No | Complete replacement tag-name list. An empty list removes all tags; omission leaves tags unchanged. |
| `source_url` | string | No | Replacement source URL. |
| `append_body` | string | No | Markdown text to append; mutually exclusive with body. |
| `container_id` | integer | No | Move to this container. Explicit null moves the note to inbox; omission leaves placement unchanged. |
| `expected_lock_version` | integer | No | Current lock_version from GET_NOTE. A stale value returns a conflict instead of overwriting a concurrent edit. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |
