Dispatch
Service-plane endpoints for the fleet. New endpoints give you a key map for your services and a path to ingest usage directly. This is phase 3 of the service-plane work.
Usage ingest, hardened. Ingest now rejects reserved names, drops echo-free locations, and requires exact integers so your submitted usage lands cleanly. Ingest identities are validated on the way in.
Cleaner draft totals. Service events no longer count toward draft totals, so the numbers you see reflect actual usage.
Plane API improvements.
- A defined error contract, so failures return predictable, actionable responses.
- MCP services now have full parity across the plane.
- Documentation for plane secrets.
- Oversized integers now return a clear 422 instead of failing silently.
Agent discovery for media encoding. The media-encoding service now publishes a service card, an llms.txt, and an OpenAPI 3.1 spec so agents can discover and call it.
Media Encoding
Per-product API keys. Authenticate with keys scoped to each product through the shared service-plane key map. During the transition, both new and legacy keys are accepted, and legacy keys are tried first so existing setups keep working.
Job IDs are namespaced per product. The same job ID in different products no longer collides. Use a / separator in IDs, with idempotency scoped to the rollout window.
Metering you can trust. Encoding usage is recorded to the platform ledger with one event per terminal outcome. Failed encodes now meter their partial costs, and failed downloads meter the bytes actually transferred, so your usage reflects real work done.
Honest rate limiting. Retry-After values now reflect the actual wait. The retryable auth 503 response is documented so you can handle it correctly.
Agent discovery surface. New service card, llms.txt, and OpenAPI 3.1 description make the encoding API easier to discover and integrate.