- Authentication: HoneyHive routes accept different key types, so the connection holds up to three keys, each sent as
Authorization: Bearer <key>:api_key: a classic project API key (hh_..., Settings > Project > API Keys > Project). Used by sessions, event ingestion and updates, metrics, configurations and the legacy (non-project-scoped) dataset, run and event routes.data_plane_api_key(account field, optional): a data plane fine-grained key (hh_fgdp_...). Required by the project-scoped operations that take aproject_id(datasets.list,experiments.getRun,events.searchand the rest); HoneyHive rejects a classic key there.control_plane_api_key(account field, optional): a control plane fine-grained key (hh_fgcp_..., Settings > Workspace > API Keys > Control Plane). Required byprojects.*, which run onhttps://api.cp.us.honeyhive.ai.- A connection with only fine-grained keys works for the operations those keys cover; operations that need the classic key raise
AuthMissingErrorinstead of sending a fine-grained key.
- Dedicated or self-hosted data plane: set the
base_urlaccount field to your project’s Data plane URL (defaulthttps://api.dp1.us.honeyhive.ai, shown under Settings > Project > API Keys). - Tracing & Sessions: Group multi-step agent and tool spans into sessions with
sessions.createand stream event batches withsessions.createEventBatchorevents.createBatch. - Datasets & Experiments: Curate evaluation datasets and run automated test suites across prompts, configurations, and models.
- Evaluators & Metrics: Define custom metrics, deploy metric version snapshots, and run automated evaluations against trace events.
- 49 typed API operations
Setup
1
Install
2
Add the plugin
corsair.ts
multiTenancy: true, scope calls with corsair.withTenant(id). See Quick start for KEK + Hub keys, and Multi-tenancy for account isolation.3
Choose authentication
- API Key (Recommended)
Store the HoneyHive API key before the first call: More: API Key
pnpm corsair setup --plugin=honeyhive --tenant=acme api_key=<your-key> (leave out --tenant without multiTenancy), or pass it as key in the plugin options. With Hub, each tenant enters their own key on the connect page. See API key auth.4
Connect a tenant
Mint a connect link and send the tenant to it. Hub hosts the page and delivers the result to your app — see Connect / OAuth.
Example API calls
List evaluators and metricsWhat’s next
API reference
Every
honeyhive.api.* operation with input and output types.Connect / OAuth
createLink, Hub delivery, and tenant connect flows.
Use with agents
Expose this plugin’s operations as MCP tools.