Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.omi.me/llms.txt

Use this file to discover all available pages before exploring further.

Endpoints

GET

List all folders

List Folders

GET /v1/dev/user/folders

Retrieve all folders for the authenticated user
This endpoint is strictly read-only. If the user has not yet had folders initialized, an empty array is returned. System folders (Work, Personal, Social) are created lazily through other paths — when the mobile app opens the conversations screen or when a new conversation is created. In normal usage, any user who can issue a Developer API key has already gone through one of those paths.
curl -H "Authorization: Bearer $API_KEY" \
  "https://api.omi.me/v1/dev/user/folders"

Response Example

[
  {
    "id": "folder_uuid_work",
    "name": "Work",
    "description": "Work, business, professional, and career-related conversations",
    "color": "#3B82F6",
    "icon": "💼",
    "created_at": "2025-01-15T10:00:00Z",
    "updated_at": "2025-01-20T13:50:00Z",
    "order": 0,
    "is_default": false,
    "is_system": true,
    "category_mapping": "work",
    "conversation_count": 12
  },
  {
    "id": "folder_uuid_personal",
    "name": "Personal",
    "description": "Personal life, family, health, hobbies, and self-improvement",
    "color": "#10B981",
    "icon": "👤",
    "created_at": "2025-01-15T10:00:00Z",
    "updated_at": "2025-01-18T09:00:00Z",
    "order": 1,
    "is_default": false,
    "is_system": true,
    "category_mapping": "personal",
    "conversation_count": 7
  },
  {
    "id": "folder_uuid_social",
    "name": "Social",
    "description": "Friends, social gatherings, entertainment, and casual conversations",
    "color": "#8B5CF6",
    "icon": "👥",
    "created_at": "2025-01-15T10:00:00Z",
    "updated_at": "2025-01-19T11:30:00Z",
    "order": 2,
    "is_default": false,
    "is_system": true,
    "category_mapping": "social",
    "conversation_count": 4
  }
]
FieldTypeDescription
idstringUnique folder identifier
namestringDisplay name of the folder
descriptionstring | nullNatural language description of what belongs in this folder
colorstringHex color code for the folder (e.g. #3B82F6)
iconstringEmoji or icon identifier
created_atdatetimeWhen the folder was created
updated_atdatetimeWhen the folder was last updated
orderintegerDisplay order index (lower = earlier)
is_defaultbooleanWhether this is the default folder for unassigned conversations
is_systembooleantrue for category-based system folders (Work, Personal, Social)
category_mappingstring | nullMaps to a conversation category for backwards compatibility
conversation_countintegerNumber of non-discarded conversations in this folder

Using Folder IDs to Filter Conversations

Once you have folder IDs, you can filter conversations by folder using the folder_id query parameter on the conversations endpoint:
# Step 1: Get folder list
FOLDERS=$(curl -s -H "Authorization: Bearer $API_KEY" \
  "https://api.omi.me/v1/dev/user/folders")

# Step 2: Extract the Work folder ID (using jq)
WORK_FOLDER_ID=$(echo "$FOLDERS" | jq -r '.[] | select(.name=="Work") | .id')

# Step 3: Fetch conversations in Work folder
curl -H "Authorization: Bearer $API_KEY" \
  "https://api.omi.me/v1/dev/user/conversations?folder_id=$WORK_FOLDER_ID"
You can also filter by starred=true to get only starred conversations, or combine both folder_id and starred to get starred conversations within a specific folder.