Request
This endpoint accepts a multipart form-data request with a CSV file.CSV file containing student data. Must be UTF-8 encoded.
CSV Format
The CSV file should include the following columns. Both English and Spanish column names are supported:| English Column Name | Spanish Column Name | Required | Description |
|---|---|---|---|
full_name | nombre_completo | Yes | Student’s full name |
document_number | numero_documento | Yes | Identification document number |
document_type | tipo_documento | No | Document type (defaults to TI if not provided) |
gender | genero | No | Student’s gender |
The bulk upload endpoint currently supports basic student information only. Guardian relationships and other advanced fields (
birth_date, extra_data, piar_data) must be added individually using the Update Student endpoint.CSV Example
Response
Returns a summary of the bulk upload process.Status message indicating the process is complete
Number of students successfully created
Array of error messages for rows that failed validation or already exist
Validation Rules
full_nameanddocument_numberare required for each row- The combination of
document_typeanddocument_numbermust be unique within the school - If a student with the same document already exists, that row will be skipped and added to the errors array
- Empty or invalid rows are skipped and reported in the errors array
Behavior
- All successfully validated students are created in a single transaction
- If any student fails validation, it will be reported in the errors array, but other valid students will still be created
- Students are always created with
is_active = true - Empty
extra_dataandpiar_dataobjects are initialized for all students
Permissions Required
Requires thewrite:all permission (more restrictive than individual student creation).