> ## 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.

# POST - Student Answer Sheet

> 
The API allows clients to create a new answer sheet for a specific student in an exam. It associates the student's ID with an answer sheet and returns the unique ID for the answer sheet. The answer sheet can later be updated with documents (e.g., scanned PDFs or images). 

**Scenarios:**

1. **Creating a New Answer Sheet for a Student:**
   - A teacher provides the student's ID to create a new answer sheet.
   - **Outcome:**
     - The API generates a unique answer sheet ID linked to the student.
     - This ID is used for future reference and document uploads.

2. **Associating Documents with the Created Answer Sheet:**
   - After scanning the student’s handwritten answer sheet, the teacher uploads a PDF or JPEG images using the unique answer sheet ID.
   - **Outcome:**
     - The scanned document is associated with the student’s answer sheet, enabling it to be evaluated or graded in subsequent steps.



<div
  style={{
background: 'linear-gradient(135deg, #667eea 0%, #764ba2 100%)',
borderRadius: '16px',
padding: '4px',
marginTop: '20px',
marginBottom: '20px',
boxShadow: '0 10px 40px rgba(102, 126, 234, 0.3)'
}}
>
  <iframe
    className="w-full aspect-video rounded-xl"
    src="https://www.youtube.com/embed/3Xh1BQpzlcs"
    title="Evaluation Platform | POST | API Reference Guide"
    frameBorder="0"
    allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
    allowFullScreen
    style={{
  borderRadius: '12px',
  boxShadow: '0 4px 6px rgba(0, 0, 0, 0.1)'
}}
  />
</div>

**Video link -** [https://youtu.be/3Xh1BQpzlcs?si=4EKU4MeoY60VfW7I](https://youtu.be/3Xh1BQpzlcs?si=4EKU4MeoY60VfW7I)


## OpenAPI

````yaml POST /evaluation-platform/v1/exam/{examId}/answer-sheet/
openapi: 3.0.1
info:
  title: Evaluation Report API
  description: An API for retrieving evaluation reports.
  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:
  /evaluation-platform/v1/exam/{examId}/answer-sheet/:
    post:
      summary: Create a new answer sheet for an exam
      description: Create a new answer sheet for an exam
      parameters:
        - in: path
          name: examId
          schema:
            type: string
          required: true
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                studentId:
                  type: string
                  nullable: true
                  example: '2017009807'
                instituteId:
                  type: string
                  nullable: true
                  example: '98765'
                teacherId:
                  type: string
                  nullable: true
                  example: '54321'
                studentName:
                  type: string
                  nullable: true
                  example: John Doe
                parentId:
                  type: string
                  nullable: true
                  example: '11223'
      responses:
        '201':
          description: Successfully Created
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                    description: Unique identifier of the student answer sheet
                    example: 3bbf06fe-f348-48cf-8995-dd71fc33589a
                  documents:
                    type: array
                    description: >-
                      List of documents associated with the student answer sheet
                      initially empty
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                          description: Unique identifier of the document
                          example: 10d5661d-df3a-4d22-aa58-fddfa1230040
                        status:
                          type: integer
                          description: Status of the document
                          example: 1
                        pageNo:
                          type: integer
                          description: Page number of the document
                          example: 1
                        uploadTime:
                          type: string
                          description: Time of document upload
                          example: '2025-01-06T12:28:22.992639Z'
                        url:
                          type: string
                          description: URL of the document
                          example: >-
                            https://cgfblob.blob.core.windows.net/ielts/evaluation/2017009807.pdf
                        fileType:
                          type: integer
                          description: Type of the document
                          example: 1
                    example: []
                  studentId:
                    type: string
                    description: Unique identifier of the student
                    example: '2017009807'
                  instituteId:
                    type: string
                    description: Unique identifier of the institute
                    example: '98765'
                  teacherId:
                    type: string
                    description: Unique identifier of the teacher
                    example: '54321'
                  studentName:
                    type: string
                    description: Name of the student
                    example: John Doe
                  parentId:
                    type: string
                    description: Unique identifier of the parent
                    example: '11223'
                example:
                  id: 3bbf06fe-f348-48cf-8995-dd71fc33589a
                  documents: []
                  studentId: '2017009807'
                  instituteId: '98765'
                  teacherId: '54321'
                  studentName: John Doe
                  parentId: '11223'
        '403':
          description: Authentication failed.
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
                    example: Token has expired
              example:
                detail: Token has expired
        '404':
          description: Bad Request - Answer sheet not evaluated
          content:
            application/json:
              schema:
                type: object
                properties:
                  'error:':
                    type: object
                    properties:
                      code:
                        type: integer
                        example: 400
                      message:
                        type: object
                        properties:
                          non_field_errors:
                            type: array
                            items:
                              type: string
                              example: Exam not found
      security:
        - bearerAuth: []
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT

````