Skip to main content
GET
Get a teacher action plan
Step 2 of 4 in Create action plans. Poll every 5 seconds until status is Completed or Partial.

Rules

  • exam_id is the same exam UUID you sent to Create a teacher action plan.
  • You only see plans that your own API user started. Use the same API user for both calls.
  • If you started the plan more than once for this exam, you get the newest one.

Reading the response

status has four values: In Progress, Completed, Partial, and Failed. A plan starts as In Progress. Partial is a finished plan, not a running one, so treat it as ready and stop polling.

What the plan contains

All four parts are always in the response with the same type. Until the plan is Completed or Partial they are empty: action_plan, learning_outcomes and student_groups are empty lists, and overview is an empty object. Every number in the plan is computed from the evaluation’s marks. The AI writes the text.

overview

action_plan

class_summary counts only the students for whom the question counted. A student who chose another question in an “answer any 8 of 12” section is not in it.

learning_outcomes

student_groups

A student is placed in a group by their percentage on the whole paper. Only groups that have students are returned.
group_score_percent is the group’s score on one question, so 0.0 means nobody in the group scored on that question. The group’s overall average is group_average_percent.

How students are named

Names come from the answer sheets and are never sent to the AI.
Instead of polling, register a webhook for teacher_action_plan. See Async jobs and webhooks.

Next step

Create a student action plan

Generate personalized next steps for one student’s answer sheet.

Authorizations

Authorization
string
header
required

Access token from Get an access token.

Path Parameters

exam_id
string<uuid>
required

The exam unique_id from the Exam Evaluation API, the same ID you send to Create a teacher action plan.

Example:

"d19e6868-98dd-4274-a2a5-4a616dd93ea7"

Response

The plan exists. It is returned with HTTP 200 for every status, including Failed.

data
object