Skip to main content

Unreleased

  • Added public reference catalogs for languages, interview modes, voice choices, and study-type planning templates, plus a versioned interview usage read. MCP resources and the usage tool now use these public routes.
  • BYOP participant invitations accept a study-scoped external_id and bounded scalar metadata on creation. Participant reads return both fields, lists can filter by exact external_id with study_id, and PATCH can update or clear the customer ID or replace metadata.
  • Interview and participant lists now default to 20 results per page, matching studies and feasibility requests. Set page_size explicitly to retain a different page size.
  • PATCH /api/public/v1/participants/{participant_id} updates the participant email. The older PUT operation remains available but is deprecated; the MCP update tool now uses PATCH.
  • The API host serves the curated public specification at /.well-known/openapi.json as well as /openapi.json in production.
  • Interview summaries include ended_at, interview_format, and language. language is the study’s current configured language, not a detected transcript language; older interviews may have used a previous setting. Unknown historical modes remain null.
  • Transcript messages now have a typed public segment schema: id, role, message, and optional text_offset, start_s, and end_s. The response remains paged and bounded.
  • DELETE /api/public/v1/webhooks/ is deprecated. Use DELETE /api/public/v1/webhooks/{webhook_id}; the body-based route continues to work during migration.
  • The OpenAPI Bearer security scheme no longer labels every credential as a JWT. It continues to accept both API keys and dashboard tokens.
See versioning and deprecation for how to handle future changes.