Skip to Content
API

API

The bee proxy command starts a local HTTP API proxy server, allowing you to access your Bee data through standard HTTP requests. This is useful for building local applications, testing integrations, or accessing Bee data from tools that don’t support the Bee protocol directly.

The proxy server is intended for local development only. Do not expose it to the public internet as it provides unauthenticated access to your Bee data.

You must authenticate first with bee login, then start bee proxy.

Usage

bee proxy [--port 8080]

This starts a local HTTP server, typically on http://127.0.0.1:8787. Only paths under /v1/* are forwarded by the proxy.

API Reference

Once the proxy is running, you can access your Bee data through these HTTP endpoints:

User

# Get user profile GET /v1/me

Changes

# Get changed entity ids since cursor (or default window when cursor is omitted) GET /v1/changes

Facts

# List all facts GET /v1/facts # Get a specific fact GET /v1/facts/:id # Create a new fact POST /v1/facts Content-Type: application/json {"text": "Your fact here"} # Update a fact PUT /v1/facts/:id Content-Type: application/json {"text": "Updated fact", "confirmed": true} # Delete a fact DELETE /v1/facts/:id

Todos

# List all todos GET /v1/todos # Get a specific todo GET /v1/todos/:id # Create a new todo POST /v1/todos Content-Type: application/json {"text": "New todo", "alarm_at": "2026-02-11T09:00:00Z"} # Update a todo PUT /v1/todos/:id Content-Type: application/json {"text": "Updated todo", "completed": true, "alarm_at": null} # Delete a todo DELETE /v1/todos/:id

Journals

# List journals GET /v1/journals # Get a specific journal GET /v1/journals/:id

Conversations

# List conversations GET /v1/conversations # Get a specific conversation GET /v1/conversations/:id

Daily Summaries

# List daily summaries GET /v1/daily # Get a specific daily summary GET /v1/daily/:id
# BM25 keyword search POST /v1/search/conversations Content-Type: application/json {"query": "project roadmap", "limit": 20, "cursor": null} # Neural search POST /v1/search/conversations/neural Content-Type: application/json {"query": "project roadmap", "limit": 20}

Streaming

# SSE stream (optional: ?types=new-utterance,todo-created) GET /v1/stream # Common event types: # new-conversation, update-conversation, update-conversation-summary, delete-conversation # new-utterance, todo-created, todo-updated, todo-deleted # journal-created, journal-updated, journal-deleted, journal-text

Direct API (No Proxy)

If you want to call Bee API directly (without bee proxy), use the same developer API endpoints (/v1/*) and authenticate with a Bearer token.

curl --cacert ./bee-ca.pem \ -H "Authorization: Bearer $BEE_TOKEN" \ "$BEE_API_BASE/v1/me"

You must trust Bee’s certificate in your client implementation. The Bee API uses a private CA (not a public CA), so standard system trust stores alone are not enough.

Certificate source used by Bee CLI:

Last updated on