Skip to main content
The Doozy API is currently in closed beta. To request access, please email hello@doozy.live.
The Doozy Public API provides access to your Doozy data, designed primarily for reporting and analytics use cases, as well as enrolling users on to tracks. Use it to extract quiz results, survey responses, and other engagement data into your preferred reporting tools. For conversational reporting, use MCP reporting. MCP connections use OAuth and the mcp:reporting:read scope, not REST API keys. The MCP server exposes read-only tools for quizzes, surveys, tracks, activities, workspace members, member status, and account usage.

Base URL

All API requests should be made to:

Available Endpoints

Quizzes

The Quiz API allows you to retrieve quiz data and detailed analytics reports:

Tracks

The Track API lets you read track definitions and progress and enroll users. Each step has a day, counted in the Track’s working days from enrollment (0 is the enrollment day), and a time such as 09:00; null uses 9:00 AM. catch_up controls overdue steps. true makes them eligible in order, subject to Working Hours. false shifts Day 1 to the next working day. Nothing is skipped. working_hours contains days_of_week, start_time, end_time, and an IANA time_zone. Working days and overdue catch-up hours are evaluated in each recipient’s time zone, including both time boundaries. time_zone is the default only when a recipient has no time zone. A Track value of null inherits the workspace policy. A legacy Track that omits working_hours keeps run_days as its working-day list while inheriting workspace/default hours and time zone. An enrollment request can override all four fields. Each enrollment snapshots the resolved policy, so later workspace or Track changes do not affect it. For schedule triggers, frequency: "once" schedules one run at the configured start date and time. The read-only next_run_at field contains the next scheduled run time. It is null for draft or paused tracks and after Doozy finishes processing a one-off schedule. Updating other track fields does not schedule another run. To schedule another run, change the start date, time, or time zone.

Surveys

Introductions

Pagination

The API uses cursor-based pagination for list endpoints. Use these query parameters:

Example

OpenAPI Specification

Download the full OpenAPI specification for use with API clients, code generators, or other tooling:

Download OpenAPI Spec

OpenAPI 3.0 specification (JSON)

Next Steps

Authentication

Learn how to generate and manage API keys

Error Handling

Understand API error responses