Students
This page describes all the APIs relating to students.
Retrieves a list of all students. Results are paginated. Use the page and per_page query parameters to control pagination.
The page number of results to return.
1Request for how many records to return.
50Synonym for per_page
Return results with an ID greater than the specified ID.
Return results updated since the specified date, in UTC timezone
2025-01-01T00:00:00ZIndicates the current state in a student's life-cycle
Filter students by status level, need to provide status slug
paidFilter students by enrollment year
2023Filter students by parent IDs
1,2,3Comma-separated list of fields to include in the response. Supports nested fields using parentheses
id,name,custom_fields(parent_guardians(id,email))Comma-separated list of fields to include in the response. Supports nested fields using parentheses
id,email,custom_fields(language)successful
GET /api/v3/students HTTP/1.1
Host: api.openapply.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
successful
{
"students": [
{
"id": 1,
"first_name": "text",
"last_name": "text",
"email": "text",
"student_id": "text",
"address": "text",
"address_ii": "text",
"city": "text",
"state": "text",
"postal_code": "text",
"enrollment_year": 1,
"birth_date": "2025-11-22",
"status": "pending",
"country": "text",
"other_name": "text",
"preferred_name": "text",
"name": "text",
"gender": "Male",
"status_level": "text",
"status_changed_at": "2025-11-22T14:54:59.679Z",
"updated_at": "2025-11-22T14:54:59.679Z",
"latest_activity_date": "2025-11-22T14:54:59.679Z",
"nationality": "text",
"grade": "text",
"serial_number": 1,
"agent_id": 1,
"managebac_student_id": 1,
"mb_id": "text",
"campus_id": 1,
"campus": "text",
"custom_id": "text",
"applicant_id": "text",
"tags": [
"text"
],
"applied_at": "2025-11-22T14:54:59.679Z",
"enrolled_at": "2025-11-22T14:54:59.679Z",
"inquired_date": "2025-11-22T14:54:59.679Z",
"inquired_at": "2025-11-22T14:54:59.679Z",
"applied_date": "2025-11-22T14:54:59.679Z",
"admitted_date": "2025-11-22T14:54:59.679Z",
"wait_listed_date": "2025-11-22T14:54:59.679Z",
"declined_date": "2025-11-22T14:54:59.679Z",
"enrolled_date": "2025-11-22T14:54:59.679Z",
"withdrawn_date": "2025-11-22T14:54:59.679Z",
"graduated_date": "2025-11-22T14:54:59.679Z",
"representative": "text",
"enrollment_date": "2025-11-22",
"source_campaign": "text",
"contact_date": "2025-11-22",
"checklist_state": "text",
"passport_id": "text",
"enrollment_grade": "text",
"parent_ids": [
1
],
"sibling_ids": [
1
],
"student_flags": [
"text"
],
"reenrollments": [
{
"ree_year": "text",
"ree_grade": "text",
"ree_status": "text",
"ree_decision_date": "2025-11-22",
"ree_status_changed_at": "2025-11-22T14:54:59.679Z"
}
],
"custom_fields": {
"ANY_ADDITIONAL_PROPERTY": "text"
}
}
],
"meta": {
"pages": 1,
"per_page": 1,
"count": 1
}
}Create a student. Returns the unique id in the body as well as attributes if successful.
Human-readable identifier commonly used for record reconciliation across platforms. Populated and maintained by the school.
The state of the application
The ISO 3166 country name
successful
unprocessable entity
POST /api/v3/students HTTP/1.1
Host: api.openapply.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 288
{
"first_name": "text",
"last_name": "text",
"email": "text",
"student_id": "text",
"address": "text",
"address_ii": "text",
"city": "text",
"state": "text",
"postal_code": "text",
"enrollment_year": 1,
"birth_date": "2025-11-22",
"status": "pending",
"country": "text",
"other_name": "text",
"preferred_name": "text"
}{
"id": 1,
"first_name": "text",
"last_name": "text",
"email": "text",
"student_id": "text",
"address": "text",
"address_ii": "text",
"city": "text",
"state": "text",
"postal_code": "text",
"enrollment_year": 1,
"birth_date": "2025-11-22",
"status": "pending",
"country": "text",
"other_name": "text",
"preferred_name": "text",
"name": "text",
"gender": "Male",
"status_level": "text",
"status_changed_at": "2025-11-22T14:54:59.679Z",
"updated_at": "2025-11-22T14:54:59.679Z",
"latest_activity_date": "2025-11-22T14:54:59.679Z",
"nationality": "text",
"grade": "text",
"serial_number": 1,
"agent_id": 1,
"managebac_student_id": 1,
"mb_id": "text",
"campus_id": 1,
"campus": "text",
"custom_id": "text",
"applicant_id": "text",
"tags": [
"text"
],
"applied_at": "2025-11-22T14:54:59.679Z",
"enrolled_at": "2025-11-22T14:54:59.679Z",
"inquired_date": "2025-11-22T14:54:59.679Z",
"inquired_at": "2025-11-22T14:54:59.679Z",
"applied_date": "2025-11-22T14:54:59.679Z",
"admitted_date": "2025-11-22T14:54:59.679Z",
"wait_listed_date": "2025-11-22T14:54:59.679Z",
"declined_date": "2025-11-22T14:54:59.679Z",
"enrolled_date": "2025-11-22T14:54:59.679Z",
"withdrawn_date": "2025-11-22T14:54:59.679Z",
"graduated_date": "2025-11-22T14:54:59.679Z",
"representative": "text",
"enrollment_date": "2025-11-22",
"source_campaign": "text",
"contact_date": "2025-11-22",
"checklist_state": "text",
"passport_id": "text",
"enrollment_grade": "text",
"parent_ids": [
1
],
"sibling_ids": [
1
],
"student_flags": [
"text"
],
"reenrollments": [
{
"ree_year": "text",
"ree_grade": "text",
"ree_status": "text",
"ree_decision_date": "2025-11-22",
"ree_status_changed_at": "2025-11-22T14:54:59.679Z"
}
],
"custom_fields": {
"ANY_ADDITIONAL_PROPERTY": "text"
}
}Fetch an instance of a student
Serial database ID used to refer to a unique student record in OpenApply
Comma-separated list of fields to include in the response. Supports nested fields using parentheses
id,name,custom_fields(parent_guardians(id,email))successful
student not found
GET /api/v3/students/{id} HTTP/1.1
Host: api.openapply.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"id": 1,
"first_name": "text",
"last_name": "text",
"email": "text",
"student_id": "text",
"address": "text",
"address_ii": "text",
"city": "text",
"state": "text",
"postal_code": "text",
"enrollment_year": 1,
"birth_date": "2025-11-22",
"status": "pending",
"country": "text",
"other_name": "text",
"preferred_name": "text",
"name": "text",
"gender": "Male",
"status_level": "text",
"status_changed_at": "2025-11-22T14:54:59.679Z",
"updated_at": "2025-11-22T14:54:59.679Z",
"latest_activity_date": "2025-11-22T14:54:59.679Z",
"nationality": "text",
"grade": "text",
"serial_number": 1,
"agent_id": 1,
"managebac_student_id": 1,
"mb_id": "text",
"campus_id": 1,
"campus": "text",
"custom_id": "text",
"applicant_id": "text",
"tags": [
"text"
],
"applied_at": "2025-11-22T14:54:59.679Z",
"enrolled_at": "2025-11-22T14:54:59.679Z",
"inquired_date": "2025-11-22T14:54:59.679Z",
"inquired_at": "2025-11-22T14:54:59.679Z",
"applied_date": "2025-11-22T14:54:59.679Z",
"admitted_date": "2025-11-22T14:54:59.679Z",
"wait_listed_date": "2025-11-22T14:54:59.679Z",
"declined_date": "2025-11-22T14:54:59.679Z",
"enrolled_date": "2025-11-22T14:54:59.679Z",
"withdrawn_date": "2025-11-22T14:54:59.679Z",
"graduated_date": "2025-11-22T14:54:59.679Z",
"representative": "text",
"enrollment_date": "2025-11-22",
"source_campaign": "text",
"contact_date": "2025-11-22",
"checklist_state": "text",
"passport_id": "text",
"enrollment_grade": "text",
"parent_ids": [
1
],
"sibling_ids": [
1
],
"student_flags": [
"text"
],
"reenrollments": [
{
"ree_year": "text",
"ree_grade": "text",
"ree_status": "text",
"ree_decision_date": "2025-11-22",
"ree_status_changed_at": "2025-11-22T14:54:59.679Z"
}
],
"custom_fields": {
"ANY_ADDITIONAL_PROPERTY": "text"
}
}Updates a student
Serial database ID used to refer to a unique student record in OpenApply
Comma-separated list of fields to include in the response. Supports nested fields using parentheses
id,name,custom_fields(parent_guardians(id,email))Human-readable identifier commonly used for record reconciliation across platforms. Populated and maintained by the school.
The state of the application
The ISO 3166 country name
successful
student not found
unprocessable entity
PATCH /api/v3/students/{id} HTTP/1.1
Host: api.openapply.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 288
{
"first_name": "text",
"last_name": "text",
"email": "text",
"student_id": "text",
"address": "text",
"address_ii": "text",
"city": "text",
"state": "text",
"postal_code": "text",
"enrollment_year": 1,
"birth_date": "2025-11-22",
"status": "pending",
"country": "text",
"other_name": "text",
"preferred_name": "text"
}{
"id": 1,
"first_name": "text",
"last_name": "text",
"email": "text",
"student_id": "text",
"address": "text",
"address_ii": "text",
"city": "text",
"state": "text",
"postal_code": "text",
"enrollment_year": 1,
"birth_date": "2025-11-22",
"status": "pending",
"country": "text",
"other_name": "text",
"preferred_name": "text",
"name": "text",
"gender": "Male",
"status_level": "text",
"status_changed_at": "2025-11-22T14:54:59.679Z",
"updated_at": "2025-11-22T14:54:59.679Z",
"latest_activity_date": "2025-11-22T14:54:59.679Z",
"nationality": "text",
"grade": "text",
"serial_number": 1,
"agent_id": 1,
"managebac_student_id": 1,
"mb_id": "text",
"campus_id": 1,
"campus": "text",
"custom_id": "text",
"applicant_id": "text",
"tags": [
"text"
],
"applied_at": "2025-11-22T14:54:59.679Z",
"enrolled_at": "2025-11-22T14:54:59.679Z",
"inquired_date": "2025-11-22T14:54:59.679Z",
"inquired_at": "2025-11-22T14:54:59.679Z",
"applied_date": "2025-11-22T14:54:59.679Z",
"admitted_date": "2025-11-22T14:54:59.679Z",
"wait_listed_date": "2025-11-22T14:54:59.679Z",
"declined_date": "2025-11-22T14:54:59.679Z",
"enrolled_date": "2025-11-22T14:54:59.679Z",
"withdrawn_date": "2025-11-22T14:54:59.679Z",
"graduated_date": "2025-11-22T14:54:59.679Z",
"representative": "text",
"enrollment_date": "2025-11-22",
"source_campaign": "text",
"contact_date": "2025-11-22",
"checklist_state": "text",
"passport_id": "text",
"enrollment_grade": "text",
"parent_ids": [
1
],
"sibling_ids": [
1
],
"student_flags": [
"text"
],
"reenrollments": [
{
"ree_year": "text",
"ree_grade": "text",
"ree_status": "text",
"ree_decision_date": "2025-11-22",
"ree_status_changed_at": "2025-11-22T14:54:59.679Z"
}
],
"custom_fields": {
"ANY_ADDITIONAL_PROPERTY": "text"
}
}Update a student's status and/or status level
Serial database ID used to refer to a unique student record in OpenApply
The new status for the student
The new status level for the student (must be valid for the given status)
successful
student not found
unprocessable entity
PATCH /api/v3/students/{id}/status HTTP/1.1
Host: api.openapply.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 39
{
"status": "text",
"status_level": "text"
}{
"id": 1,
"first_name": "text",
"last_name": "text",
"email": "text",
"student_id": "text",
"address": "text",
"address_ii": "text",
"city": "text",
"state": "text",
"postal_code": "text",
"enrollment_year": 1,
"birth_date": "2025-11-22",
"status": "pending",
"country": "text",
"other_name": "text",
"preferred_name": "text",
"name": "text",
"gender": "Male",
"status_level": "text",
"status_changed_at": "2025-11-22T14:54:59.679Z",
"updated_at": "2025-11-22T14:54:59.679Z",
"latest_activity_date": "2025-11-22T14:54:59.679Z",
"nationality": "text",
"grade": "text",
"serial_number": 1,
"agent_id": 1,
"managebac_student_id": 1,
"mb_id": "text",
"campus_id": 1,
"campus": "text",
"custom_id": "text",
"applicant_id": "text",
"tags": [
"text"
],
"applied_at": "2025-11-22T14:54:59.679Z",
"enrolled_at": "2025-11-22T14:54:59.679Z",
"inquired_date": "2025-11-22T14:54:59.679Z",
"inquired_at": "2025-11-22T14:54:59.679Z",
"applied_date": "2025-11-22T14:54:59.679Z",
"admitted_date": "2025-11-22T14:54:59.679Z",
"wait_listed_date": "2025-11-22T14:54:59.679Z",
"declined_date": "2025-11-22T14:54:59.679Z",
"enrolled_date": "2025-11-22T14:54:59.679Z",
"withdrawn_date": "2025-11-22T14:54:59.679Z",
"graduated_date": "2025-11-22T14:54:59.679Z",
"representative": "text",
"enrollment_date": "2025-11-22",
"source_campaign": "text",
"contact_date": "2025-11-22",
"checklist_state": "text",
"passport_id": "text",
"enrollment_grade": "text",
"parent_ids": [
1
],
"sibling_ids": [
1
],
"student_flags": [
"text"
],
"reenrollments": [
{
"ree_year": "text",
"ree_grade": "text",
"ree_status": "text",
"ree_decision_date": "2025-11-22",
"ree_status_changed_at": "2025-11-22T14:54:59.679Z"
}
],
"custom_fields": {
"ANY_ADDITIONAL_PROPERTY": "text"
}
}Get the application status history for a specific student
Serial database ID used to refer to a unique student record in OpenApply
successful
student not found
GET /api/v3/students/{id}/status_history HTTP/1.1
Host: api.openapply.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"student": {
"id": 1,
"serial_number": "text",
"custom_id": "text",
"applicant_id": "text",
"application_history": [
{
"status": {
"id": 1,
"name": "text",
"custom_name": "text",
"code": "text"
},
"enrollment_year": "text",
"effective_on": "2025-11-22",
"created_at": "2025-11-22T14:54:59.679Z",
"updated_at": "2025-11-22T14:54:59.679Z",
"status_level": {
"id": 1,
"name": "text",
"created_at": "2025-11-22T14:54:59.679Z",
"updated_at": "2025-11-22T14:54:59.679Z"
}
}
]
}
}Returns a paginated list of student status change events.
Filterable by status updated_at (since_date_to_status) and enrollment_year.
Filter on status.updated_at
Filter on enrollment_year
The page number of results to return.
1Request for how many records to return.
50Synonym for per_page
successful
GET /api/v3/students/status_events HTTP/1.1
Host: api.openapply.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
successful
{
"students": [
{
"student": {
"id": 1,
"custom_id": "text",
"enrollment_year": 1
},
"to": {
"status": {
"id": 1,
"name": "text",
"display_name": "text",
"updated_at": "2025-11-22",
"created_at": "2025-11-22"
},
"status_level": {
"id": 1,
"name": "text",
"updated_at": "2025-11-22",
"created_at": "2025-11-22"
}
},
"from": {
"status": {
"id": 1,
"name": "text",
"display_name": "text",
"updated_at": "2025-11-22",
"created_at": "2025-11-22"
},
"status_level": {
"id": 1,
"name": "text",
"updated_at": "2025-11-22",
"created_at": "2025-11-22"
}
}
}
],
"meta": {
"pages": 1,
"per_page": 1,
"total_entries": 1,
"total_pages": 1
}
}Last updated
Was this helpful?

