Midwater
Overview
Send each finished AI-agent conversation to Midwater and read back its outcome, check results and agent health.
Midwater API v1
Section titled “Midwater API v1”Midwater checks every conversation your AI agents have, voice calls and chats. Send each finished conversation with its transcript; Midwater scores it in the background and you read the outcome, the result of every check, and each agent’s health.
Authentication. Every request carries Authorization: Bearer <key>. A key belongs to one environment
of one project: test keys start mw_test_, live keys mw_live_. Keys made before October 2026 start vk_ and still work.
Base URL. A variable: use the base URL for your Midwater environment. There is no default host.
Versioning. The version is in the path (/v1). Adding fields, endpoints, event types or enum values
doesn’t change the version, so accept values you don’t recognise. A breaking change gets /v2, with at
least 6 months of overlap.
Errors. Every error is JSON: { "error": { "type", "message", "fields"?, "request_id" } }, with a fixed
list of types and status codes. Treat an unknown type by its status class.
Pagination. None in v1. When list endpoints arrive they are cursor-based: limit and cursor in,
{ "data", "next_cursor" } out.
Planned behaviour. Anything marked x-status: planned is agreed but not yet built. Don’t rely on it yet.
Each operation’s x-midwater-verified is the date it was last checked against a running Midwater stack.
Authentication
Section titled “Authentication”apiKey
Section titled “apiKey”An API key: mw_test_… for the test environment, mw_live_… for live.
Security scheme type: http