Skip to main content
GET
/
v1
/
tracks
/
{trackId}
/
enrollees
/
{enrolleeId}
Get a specific enrollment
curl --request GET \
  --url https://api.doozy.live/v1/tracks/{trackId}/enrollees/{enrolleeId} \
  --header 'x-api-key: <api-key>'
{
  "object": "track_enrollee",
  "id": "inst_abc123",
  "user_id": "user_abc123",
  "email": "jane.doe@example.com",
  "display_name": "Jane Doe",
  "slack_user_id": "U01234567",
  "department": "Engineering",
  "location": "San Francisco, CA",
  "manager_name": "John Smith",
  "manager_email": "john.smith@example.com",
  "manager_id": "user_mgr456",
  "mentor_id": "user_mentor123",
  "mentor_name": "Alex Johnson",
  "mentor_email": "alex.johnson@example.com",
  "mentor_assigned_at": "2026-01-15T11:00:00.000Z",
  "groups": [
    "Engineering",
    "Backend"
  ],
  "trigger": "user_join",
  "status": "active",
  "failure_reason": null,
  "failure_reason_message": "The user could not be found",
  "started_at": "2026-01-15T10:30:00.000Z",
  "delivered_at": "2026-01-20T10:00:00.000Z",
  "completed_at": null,
  "failed_at": null,
  "next_step_at": "2026-01-20T09:00:00.000Z",
  "added_by_user_id": "user_admin789",
  "added_by_workflow_id": "wf_source456",
  "timezone": "America/New_York",
  "steps_delivered": 4,
  "steps_completed": 3,
  "steps_total": 5,
  "delivery_progress_percentage": 80,
  "completion_progress_percentage": 60,
  "step_progress": [
    {
      "object": "track_step_progress",
      "step_id": "step_abc123",
      "step_type": "survey",
      "title": "Onboarding Survey",
      "order": 1,
      "status": "completed",
      "started_at": "2026-01-15T10:30:00.000Z",
      "delivered_at": "2026-01-15T11:00:00.000Z",
      "completed_at": "2026-01-16T14:30:00.000Z",
      "failed_at": null,
      "skipped_at": null,
      "failure_reason": null,
      "failure_reason_message": "No mentor is available for assignment",
      "destination_type": "user",
      "result": {
        "object": "track_step_survey_result",
        "survey_id": "survey_abc123",
        "survey_instance_id": "inst_xyz789",
        "status": "responded",
        "responded_at": "2026-01-16T14:30:00.000Z",
        "answers": [
          {
            "question_id": "q_abc123",
            "question_text": "How satisfied are you with your onboarding?",
            "question_type": "scale_1_to_10",
            "value": 8,
            "comment": "Great experience!"
          }
        ]
      }
    }
  ]
}

Authorizations

x-api-key
string
header
required

API key for authentication. Generate keys in the Doozy dashboard.

Path Parameters

trackId
string
required

The unique identifier of the track

Minimum string length: 1
Example:

"wf_abc123"

enrolleeId
string
required

The unique identifier of the enrollment (workflow instance ID)

Minimum string length: 1
Example:

"inst_abc123"

Response

Enrollment details with step progress

object
enum<string>
required

Object type identifier

Available options:
track_enrollee
Example:

"track_enrollee"

id
string
required

Workflow instance ID

Example:

"inst_abc123"

user_id
string
required

User ID

Example:

"user_abc123"

email
string | null
required

Enrollee's email address

Example:

"jane.doe@example.com"

display_name
string | null
required

Enrollee's display name

Example:

"Jane Doe"

slack_user_id
string | null
required

Enrollee's Slack user ID

Example:

"U01234567"

department
string | null
required

Enrollee's department or group

Example:

"Engineering"

location
string | null
required

Enrollee's work location

Example:

"San Francisco, CA"

manager_name
string | null
required

Manager's display name

Example:

"John Smith"

manager_email
string | null
required

Manager's email address

Example:

"john.smith@example.com"

manager_id
string | null
required

Manager's user ID

Example:

"user_mgr456"

mentor_id
string | null
required

Assigned mentor's user ID

Example:

"user_mentor123"

mentor_name
string | null
required

Assigned mentor's display name

Example:

"Alex Johnson"

mentor_email
string | null
required

Assigned mentor's email address

Example:

"alex.johnson@example.com"

mentor_assigned_at
string | null
required

When the mentor was assigned (ISO 8601)

Example:

"2026-01-15T11:00:00.000Z"

groups
string[]
required

Groups the enrollee belongs to

Example:
["Engineering", "Backend"]
trigger
enum<string>
required

How this user was enrolled in the track (user_join, manual_user_trigger, self_join, schedule, work_anniversary, added_by_another_workflow)

Available options:
user_join,
manual_user_trigger,
schedule,
work_anniversary,
added_by_another_workflow,
self_join
Example:

"user_join"

status
enum<string>
required

Current enrollment status

Available options:
new,
active,
processing,
active_batch,
processing_batch,
delivered,
completed,
failed,
paused,
canceled
Example:

"active"

failure_reason
string | null
required

Reason for enrollment failure, if applicable. Possible values: user_not_found, user_already_in_workflow, user_removed_from_workflow, workflow_not_active, unknown_error

Example:

null

failure_reason_message
string | null
required

Human-readable message for the failure reason

Example:

"The user could not be found"

started_at
string
required

When the enrollee started the track (ISO 8601)

Example:

"2026-01-15T10:30:00.000Z"

delivered_at
string | null
required

When all steps were delivered to the enrollee (ISO 8601). Null if not all steps have been delivered yet.

Example:

"2026-01-20T10:00:00.000Z"

completed_at
string | null
required

When the enrollee completed all user-completable steps in the track (ISO 8601). Null if not yet completed.

Example:

null

failed_at
string | null
required

When the enrollment failed (ISO 8601)

Example:

null

next_step_at
string | null
required

When the next step is scheduled to run (ISO 8601)

Example:

"2026-01-20T09:00:00.000Z"

added_by_user_id
string | null
required

User ID of who manually enrolled this user (if applicable)

Example:

"user_admin789"

added_by_workflow_id
string | null
required

If enrolled via an addToWorkflow step, the source workflow ID

Example:

"wf_source456"

timezone
string | null
required

Timezone this enrollment is running in

Example:

"America/New_York"

steps_delivered
integer
required

Number of steps delivered to the user (status = delivered or completed)

Example:

4

steps_completed
integer
required

Number of steps the user has completed (status = completed only)

Example:

3

steps_total
integer
required

Total number of steps in the track

Example:

5

delivery_progress_percentage
number
required

Delivery progress as a percentage (0-100). Calculated as steps_delivered / steps_total * 100.

Example:

80

completion_progress_percentage
number
required

Completion progress as a percentage (0-100). Calculated as steps_completed / steps_total * 100.

Example:

60

step_progress
object[]
required

Per-step progress details