Resolved Steps API: Sample Flows

This article presents possible use cases and corresponding sample flows that you can support. It provides a useful starting point as you plan your implementation.

Track non-quiz step completion

Your app can record when a participant completes an article, video, or other non-quiz program step. The API marks the resolved step as completed without requiring quiz data.

To track non-quiz step completion:

  1. Obtain the participant ID and the ID of the non-quiz program step.
  2. Call Upsert Resolved Step. Specify the IDs in resolvedStep.participantId and resolvedStep.programStepId, and omit resolvedStep.quizSubmissionId.
  3. Store the returned resolved step ID if your app needs to retrieve or delete this record directly.

Record a quiz attempt

Your app can connect a participant's quiz submission to the corresponding program step. The API uses the quiz submission to populate the earned score, passing grade, and completion status.

To record a quiz attempt:

  1. Obtain the participant ID, the quiz program step ID, and the quiz submission ID.
  2. Call Upsert Resolved Step. Specify the IDs in resolvedStep.participantId, resolvedStep.programStepId, and resolvedStep.quizSubmissionId.
  3. Call Get Resolved Step with the returned resolved step ID to retrieve the participant's earned score, passing grade, and status.

Build a participant progress view

Your app can show which program steps a participant has completed or attempted. It can also display pass or fail outcomes for quiz steps.

To build a participant progress view:

  1. Call Query Resolved Steps. Filter by participantId, and specify an appropriate cursorPaging.limit.
  2. Read the returned resolvedSteps to display each step's status and any quiz scores.
  3. If pagingMetadata.hasNext is true, call Query Resolved Steps again and specify pagingMetadata.cursors.next in query.cursorPaging.cursor.

Last updated: 16 September 2026

Did this help?