> ## Documentation Index
> Fetch the complete documentation index at: https://docs.crazygoldfish.com/llms.txt
> Use this file to discover all available pages before exploring further.

# GET - Student Action Plan

>  This API allows authenticated clients to retrieve the student-specific action plan associated with a given answer sheet. 

 **How to Use:**

 1. Call `GET /action-plan/v1/k12/student/{answer_sheet_id}` with a valid `answer_sheet_id` (UUID) as a path parameter.
 2. The API validates the UUID format and ensures the answer sheet exists.
 3. If a corresponding action plan exists, the system returns detailed information including student details, creation timestamp, and the action plan data.
 4. If the ID is invalid or the action plan is not found, a descriptive error is returned. 

 **Example Scenario:**

 A teacher wants to view a personalized action plan for a student:
 - They send a GET request with the `answer_sheet_id` of the student's answer sheet.
 - The API validates the ID and checks for an associated action plan.
 - If found, the system returns the student's information and the generated action plan for further review. 



## OpenAPI

````yaml GET /action-plan/v1/k12/student/{answer_sheet_id}
openapi: 3.0.1
info:
  title: Student Action Plan API
  description: An API for managing student action plans.
  version: 1.0.0
servers:
  - url: https://api-staging.crazygoldfish.com
    description: SandBox endpoint
  - url: https://api.crazygoldfish.com
    description: Prod End Point
security: []
paths:
  /action-plan/v1/k12/student/{answer_sheet_id}:
    get:
      tags:
        - Action Plan
      summary: Retrieve Student Action Plan
      description: >-
        Returns the student action plan for the given `answer_sheet_id`,
        including student details and detailed remediation actions.
      operationId: getStudentActionPlan
      parameters:
        - name: answer_sheet_id
          in: path
          description: Unique identifier of the student's answer sheet.
          required: true
          schema:
            type: string
            format: uuid
          example: c0f312dc-4613-400b-9092-1eb65bda7ae7
      responses:
        '200':
          description: Successful response containing the full student action plan.
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    properties:
                      answer_sheet_id:
                        type: string
                        format: uuid
                        description: Unique identifier of the answer sheet.
                      status:
                        type: string
                        description: Status of the action plan (e.g., Completed, Pending).
                      student_id:
                        type: string
                        description: Internal ID of the student.
                      student_name:
                        type: string
                        description: Full name of the student.
                      created_at:
                        type: string
                        format: date-time
                        description: Timestamp when the action plan was created (ISO 8601).
                      action_plan:
                        type: array
                        description: List of high-level action plan entries.
                        items:
                          type: object
                          properties:
                            action:
                              type: string
                              description: Overall action/summary for the student.
                            questions:
                              type: array
                              description: Per-question recommended actions.
                              items:
                                type: object
                                properties:
                                  action:
                                    type: string
                                    description: >-
                                      Detailed remediation action for this
                                      question.
                                  action_type:
                                    type: string
                                    description: Type of action (e.g., Remediation).
                                  question_number:
                                    type: string
                                    description: Associated question number.
                                required:
                                  - action
                                  - action_type
                                  - question_number
                            skill_focus:
                              type: string
                              description: Key skill or focus area for improvement.
                            overall_insight:
                              type: string
                              description: >-
                                Summary of the student’s learning gaps and
                                challenges.
                            overall_action_type:
                              type: string
                              description: Overall action type (e.g., Remediation).
                            confidence_booster_tip:
                              type: string
                              description: Motivational or study tip to improve confidence.
                          required:
                            - action
                            - questions
                            - skill_focus
                            - overall_insight
                            - overall_action_type
                            - confidence_booster_tip
                    required:
                      - answer_sheet_id
                      - status
                      - student_id
                      - student_name
                      - created_at
                      - action_plan
                required:
                  - data
              example:
                data:
                  answer_sheet_id: c0f312dc-4613-400b-9092-1eb65bda7ae7
                  status: Completed
                  student_id: '7'
                  student_name: Govardhani
                  created_at: '2025-09-18T04:32:06.820172'
                  action_plan:
                    - action: >-
                        Focus on clarifying fundamental concepts and completing
                        answers fully by reviewing key properties and
                        definitions in chemistry, especially on mixtures, atomic
                        structure, and nomenclature.
                      questions:
                        - action: >-
                            Review the properties and separation techniques for
                            both suspensions and colloids. Practice identifying
                            all correct options in multiple-answer questions to
                            avoid partial credit loss.
                          action_type: Remediation
                          question_number: Q5
                        - action: >-
                            Revisit the characteristics of mixtures and their
                            behavior over time, particularly focusing on light
                            scattering. Use examples to differentiate mixtures P
                            and Q clearly.
                          action_type: Remediation
                          question_number: Q7
                        - action: >-
                            Study the relation between statements and their
                            explanations carefully. Understand why some
                            explanations correctly justify the statements to
                            choose the best matching option.
                          action_type: Remediation
                          question_number: Q14
                        - action: >-
                            Learn the key indicators for confirming pure water,
                            specifically boiling and freezing points, rather
                            than relying on indirect signs such as water vapors.
                          action_type: Remediation
                          question_number: Q16
                        - action: >-
                            Ensure to include all required elements in your
                            answer. Memorize the Latin-derived names of elements
                            such as both Sodium and Potassium to maximize marks.
                          action_type: Remediation
                          question_number: Q17
                        - action: >-
                            Review definitions of phase changes, distinguishing
                            clearly between sublimation and vaporisation to
                            apply the correct term.
                          action_type: Remediation
                          question_number: Q19
                        - action: >-
                            Study the physical properties and common forms of
                            non-metals like iodine and the correct names of
                            their antiseptic solutions. Also, review definitions
                            and examples of colloids such as emulsions and
                            foams.
                          action_type: Remediation
                          question_number: Q20
                        - action: >-
                            Focus on the fundamental differences between atoms
                            and ions, particularly highlighting charge. Also,
                            review correct examples of polyatomic ions and
                            chemical nomenclature rules.
                          action_type: Remediation
                          question_number: Q21
                        - action: >-
                            Understand that neutral atoms have zero charge and
                            ions have positive or negative charges. Correctly
                            state atomic neutrality when describing atoms.
                          action_type: Remediation
                          question_number: Q22
                        - action: >-
                            Interpret experimental results precisely, paying
                            attention to ratios and frequencies. Avoid
                            repetition and ensure clear explanation of atomic
                            structure concepts based on experimental evidence.
                          action_type: Remediation
                          question_number: Q23
                        - action: >-
                            Clarify the definition of valency as combining
                            capacity without unnecessary details. Focus answers
                            specifically on the question asked, avoiding
                            irrelevant information.
                          action_type: Remediation
                          question_number: Q26
                      skill_focus: Concept Understanding and Application
                      overall_insight: >-
                        The student demonstrates some grasp of core concepts
                        such as properties of mixtures and atomic structure but
                        often misses additional components needed for full
                        understanding. Common challenges include incomplete
                        answers, confusion between related terms (e.g.,
                        sublimation vs vaporisation), and inaccuracies in
                        chemical nomenclature and ion charges. The student
                        benefits from reviewing fundamental definitions and
                        paying close attention to all parts of multi-answer
                        questions.
                      overall_action_type: Remediation
                      confidence_booster_tip: >-
                        Remember that making mistakes is a natural part of
                        learning. Take your time to understand each concept
                        clearly, and don't hesitate to review topics multiple
                        times to build confidence.
        '400':
          description: Bad Request – Invalid answer_sheet_id format.
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: object
                    properties:
                      loc:
                        type: string
                        description: Location of the invalid field.
                        example: path.answer_sheet_id
                      msg:
                        type: string
                        description: Human-readable error message.
                        example: >-
                          Input should be a valid UUID, invalid group length in
                          group 4: expected 12, found 11
                      input_value:
                        type: string
                        description: The input value that failed validation.
                        example: 654387a0-c412-477a-9126-4ee12d25e4d
                      ctx:
                        type: object
                        additionalProperties: true
                required:
                  - detail
        '404':
          description: Not Found – No action plan exists for the given answer sheet ID.
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: object
                    properties:
                      loc:
                        type: string
                      msg:
                        type: string
                      input_value:
                        type: string
                required:
                  - detail
        '500':
          description: Internal Server Error – Unexpected server error.
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
                required:
                  - detail
      security:
        - bearerAuth: []
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT

````