Enrollment
The Enrollment object
The Enrollment object looks like this in JSON:
{
"object": "enrollment",
"id": 6000000,
"course_offering_id": 21908,
"catalog_course_id": 688,
"student_id": 16,
"status": "enrolled",
"status_expires_at": null,
"pending_reason": null,
"final_comment": null,
"final_grade": 91.5,
"final_attendance": 0,
"released_final_grade": null,
"commented_by_id": null,
"enrolled_by_id": null,
"enrolled_by_type": "registrar",
"status_date": "2022-10-05",
"enrolled_date": null,
"credits": 2,
"hours": 2,
"attendance_hours": null,
"clinical_hours": null,
"pass_fail": false,
"finalized": false,
"finalized_at": null,
"delivery_method_id": null,
"automatically_removed_at": null,
"automatically_removed_from": null,
"added_at": null,
"added_by_id": null,
"updated_at": null,
"display_status": "Enrolled",
"sandbox": true
}
| Attribute | Required | Data Type |
|---|---|---|
| id | Yes | int |
| course_offering_id | Yes | int |
| catalog_course_id | No | int |
| student_id | Yes | int |
| status | Yes | enum (pending, enrolled, pending_auditor, auditor, withdrawn, incomplete, deleted, waiting) |
| status_expires_at | No | datetime |
| pending_reason | No | enum (enrollment_agreement) |
| final_comment | Yes | text |
| final_grade | Yes | decimal |
| final_attendance | Yes | decimal |
| released_final_grade | No | decimal |
| commented_by_id | No | int |
| enrolled_by_id | No | int |
| enrolled_by_type | Yes | enum (registrar, student, advisor, waiting_list, system) |
| status_date | Yes | date |
| enrolled_date | Yes | date |
| credits | Yes | decimal |
| hours | Yes | decimal |
| attendance_hours | No | decimal |
| clinical_hours | No | decimal |
| pass_fail | Yes | bool |
| finalized | Yes | bool |
| finalized_at | No | datetime |
| delivery_method_id | No | int |
| automatically_removed_at | No | datetime |
| automatically_removed_from | No | enum (roster, waiting_list) |
| added_at | No | datetime |
| added_by_id | No | int |
| updated_at | No | datetime |
| display_status | No | text |
| sandbox | No | bool |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/enrollments" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"filter": {"0":{"logic":"ALL","fields":[{"name":"finalized","value":"YES","positive":1}]}}
}' \
require 'httparty'
response = HTTParty.get(
'https://yourschool.populiweb.com/api2/enrollments',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
)
puts response.body
import requests
response = requests.get(
'https://yourschool.populiweb.com/api2/enrollments',
headers={
'Authorization': 'Bearer YOUR_POPULI_API_KEY'
},
)
print(response.json())
using Newtonsoft.Json;
using RestSharp;
var client = new RestClient();
var request = new RestRequest(new Uri("https://yourschool.populiweb.com/api2/enrollments"), Method.Get);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
var response = client.Execute(request);
var response_object = JsonConvert.DeserializeObject(response.Content);
Console.Write(response_object);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'https://yourschool.populiweb.com/api2/enrollments');
curl_setopt($curl, CURLOPT_HTTPHEADER, ['Authorization: Bearer YOUR_POPULI_API_KEY']);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'GET');
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);
Example response:
{
"object": "list",
"count": 53,
"results": 53,
"results_per_page": 200,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "person",
"id": 16,
"first_name": "Abby",
"last_name": "Admin",
"middle_name": null,
"prefix": null,
"suffix": null,
"preferred_name": null,
"display_name": "Abby Admin",
"salutation": "Abby Admin",
"addressee": "Abby Admin",
"gender": "female",
"other_gender": null,
"image_file_id": null,
"birth_date": null,
"status": "active",
"social_security_number": null,
"alien_registration_number": null,
"social_insurance_number": null,
"home_city": null,
"home_state": null,
"home_country": null,
"former_name": null,
"license_plate": null,
"bio": null,
"hispanic_latino": false,
"resident_alien": false,
"localization_id": null,
"notification_email_id": null,
"deceased_date": null,
"import_id": null,
"staff_id": null,
"faculty_id": null,
"degree_level_id": null,
"added_at": null,
"added_by_id": null,
"updated_at": "2026-07-25T16:24:11+00:00",
"report_data": {
"student_person_id": 16,
"student_name": "Abby Admin",
"academic_term_id": 4,
"academic_term_name": "Spring 2008 2007-2008",
"catalog_course_abbrv": "LAT101",
"course_offering_id": 21908,
"full_course_offering_name": "LAT101-1: Beginning Latin I",
"course_student_status": "ENROLLED",
"status_mapid": null,
"status_map_abbrv": null,
"programid": 0,
"program_name": null,
"grade_abbrv": null,
"grade": "90.00",
"delivery_method": null,
"enrollment_id": 6000000,
"course_offering_student_program_id": null,
"pass_fail": 0,
"student_middle_name": "",
"student_preferred_name": "",
"academic_term_start_date": "2008-02-01",
"visible_student_id": "20220xx001",
"course_campus_id": null,
"academic_term_end_date": "2008-05-15",
"student_first_name": "Abby",
"student_last_name": "Admin",
"course_offering_section": "1",
"course_offering_name": "Beginning Latin I",
"credits": "2.00",
"hours": "2.00",
"retake": null,
"course_campus_name": null,
"finalized": 0,
"program_units": "CREDITS",
"catalog_course_id": 688,
"row_id": "16_0_21908"
},
"private_profile": false,
"is_user": true
}
],
"sandbox": true
}
Retrieves all Enrollment objects that match given filter conditions.
HTTP Request
GET /enrollments
Parameters
| Name | Required | Data Type | Description |
|---|---|---|---|
| filter | No | mixed | See available filter conditions |
| page | No | int | The page of results to return if more than 200 records are found. |
Expandable Properties
- course_offering
- catalog_course
- course_offering_student_programs
- student
Filter Condition Parameters
These conditions can be used to narrow the results returned.
| Name | Type |
|---|---|
| academic_year | object id |
| added_at | datetime |
| advisor | advisor |
| age | integer |
| automatically_removed_at | datetime |
| automatically_removed_from | enum |
| billing_term | object_id |
| catalog_course | object_id |
| course | object_id |
| course_affects_standing | bool |
| course_campus | object id |
| course_delivery_method | object id |
| course_department | object id |
| course_end_date | date |
| course_faculty | object id |
| course_has_been_retaken | bool |
| course_section | alphanumeric |
| course_start_date | date |
| academic_term | object_id |
| credits | decimal |
| custom_field | custom |
| degree | object id |
| degree_level | choice |
| degree_seeking | bool |
| enrolled_by | object_id |
| enrollment_date | date |
| final_attendance | decimal |
| finalized | bool |
| finalized_at | datetime |
| first_time | bool |
| full_time | bool |
| gender | enum (male, female, unknown, other) |
| grade | decimal |
| has_active_student_role | enum (yes, no) |
| hours | decimal |
| include_deleted_students | bool |
| include_dropped_students | bool |
| include_waitlisted_students | bool |
| last_attendance | datetime |
| letter | text |
| pass_fail | bool |
| pay_period_end_date | date |
| pay_period_start_date | date |
| program | object id |
| race_ethnicity | object id |
| specialization | specialization |
| standing | academicstanding |
| status | enum |
| status_date | date |
| student | object_id |
| students_campus | object id |
| tag | tag |
| term_end_date | date |
| term_start_date | date |
| transcript_term | object_id |
| updated_at | datetime |
Permissions
One of the following roles is required to call this method:
- Academic Admin
- Registrar
- Academic Auditor
index (courseoffering)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/students" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
require 'httparty'
response = HTTParty.get(
'https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/students',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
)
puts response.body
import requests
response = requests.get(
'https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/students',
headers={
'Authorization': 'Bearer YOUR_POPULI_API_KEY'
},
)
print(response.json())
using Newtonsoft.Json;
using RestSharp;
var client = new RestClient();
var request = new RestRequest(new Uri("https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/students"), Method.Get);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
var response = client.Execute(request);
var response_object = JsonConvert.DeserializeObject(response.Content);
Console.Write(response_object);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/students');
curl_setopt($curl, CURLOPT_HTTPHEADER, ['Authorization: Bearer YOUR_POPULI_API_KEY']);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'GET');
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "enrollment",
"id": 6000000,
"course_offering_id": 21908,
"catalog_course_id": 688,
"student_id": 16,
"status": "enrolled",
"status_expires_at": null,
"pending_reason": null,
"final_comment": null,
"final_grade": 10,
"final_attendance": 0,
"released_final_grade": 10,
"commented_by_id": null,
"enrolled_by_id": null,
"enrolled_by_type": "registrar",
"status_date": "2022-10-05",
"enrolled_date": null,
"credits": 2,
"hours": 2,
"attendance_hours": null,
"clinical_hours": null,
"pass_fail": false,
"finalized": false,
"finalized_at": null,
"delivery_method_id": null,
"automatically_removed_at": null,
"automatically_removed_from": null,
"added_at": null,
"added_by_id": null,
"updated_at": "2026-07-25T16:24:06+00:00",
"display_status": "Enrolled"
}
],
"sandbox": true
}
Retrieves all Enrollment objects tied to a specific Courseoffering.
HTTP Request
GET /courseofferings/(courseoffering)/students
Parameters
None
Expandable Properties
- course_offering
- catalog_course
- course_offering_student_programs
- student
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Academic Admin
- Registrar
show (courseoffering)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/students/(enrollment)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
require 'httparty'
response = HTTParty.get(
'https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/students/(enrollment)',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
)
puts response.body
import requests
response = requests.get(
'https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/students/(enrollment)',
headers={
'Authorization': 'Bearer YOUR_POPULI_API_KEY'
},
)
print(response.json())
using Newtonsoft.Json;
using RestSharp;
var client = new RestClient();
var request = new RestRequest(new Uri("https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/students/(enrollment)"), Method.Get);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
var response = client.Execute(request);
var response_object = JsonConvert.DeserializeObject(response.Content);
Console.Write(response_object);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/students/(enrollment)');
curl_setopt($curl, CURLOPT_HTTPHEADER, ['Authorization: Bearer YOUR_POPULI_API_KEY']);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'GET');
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);
Example response:
{
"object": "enrollment",
"id": 6000000,
"course_offering_id": 21908,
"catalog_course_id": 688,
"student_id": 16,
"status": "enrolled",
"status_expires_at": null,
"pending_reason": null,
"final_comment": null,
"final_grade": 10,
"final_attendance": 0,
"released_final_grade": 10,
"commented_by_id": null,
"enrolled_by_id": null,
"enrolled_by_type": "registrar",
"status_date": "2022-10-05",
"enrolled_date": null,
"credits": 2,
"hours": 2,
"attendance_hours": null,
"clinical_hours": null,
"pass_fail": false,
"finalized": false,
"finalized_at": null,
"delivery_method_id": null,
"automatically_removed_at": null,
"automatically_removed_from": null,
"added_at": null,
"added_by_id": null,
"updated_at": "2026-07-25T16:24:06+00:00",
"display_status": "Enrolled",
"sandbox": true
}
Retrieves a specific Enrollment object.
HTTP Request
GET /courseofferings/(courseoffering)/students/(enrollment)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- course_offering
- catalog_course
- course_offering_student_programs
- student
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Academic Admin
- Registrar
update_final_grade
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/students/(enrollment)/update_final_grade" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X PUT
-d '{
"final_grade": 90
}' \
require 'httparty'
response = HTTParty.put(
'https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/students/(enrollment)/update_final_grade',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
body: {
:final_grade => 90
}.to_json
)
puts response.body
import requests
response = requests.put(
'https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/students/(enrollment)/update_final_grade',
headers={
'Authorization': 'Bearer YOUR_POPULI_API_KEY'
},
json={
'final_grade': 90
}
)
print(response.json())
using Newtonsoft.Json;
using RestSharp;
var client = new RestClient();
var request = new RestRequest(new Uri("https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/students/(enrollment)/update_final_grade"), Method.Put);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
request.AddJsonBody(new {
final_grade = 90
});
var response = client.Execute(request);
var response_object = JsonConvert.DeserializeObject(response.Content);
Console.Write(response_object);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/students/(enrollment)/update_final_grade');
curl_setopt($curl, CURLOPT_HTTPHEADER, ['Authorization: Bearer YOUR_POPULI_API_KEY']);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'PUT');
curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode([
'final_grade' => 90
]));
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);
Example response:
{
"object": "enrollment",
"id": 6000000,
"course_offering_id": 21908,
"catalog_course_id": 688,
"student_id": 16,
"status": "enrolled",
"status_expires_at": null,
"pending_reason": null,
"final_comment": null,
"final_grade": 90,
"final_attendance": 0,
"released_final_grade": 10,
"commented_by_id": null,
"enrolled_by_id": null,
"enrolled_by_type": "registrar",
"status_date": "2022-10-05",
"enrolled_date": null,
"credits": 2,
"hours": 2,
"attendance_hours": null,
"clinical_hours": null,
"pass_fail": false,
"finalized": false,
"finalized_at": null,
"delivery_method_id": null,
"automatically_removed_at": null,
"automatically_removed_from": null,
"added_at": null,
"added_by_id": null,
"updated_at": "2026-07-25T16:24:06+00:00",
"display_status": "Enrolled",
"sandbox": true
}
Updates the final_grade attribute of an existing Enrollment object.
HTTP Request
PUT /courseofferings/(courseoffering)/students/(enrollment)/update_final_grade
Parameters
| Name | Required | Data Type | Description |
|---|---|---|---|
| final_grade | Yes | decimal | |
| final_comment | No | text | |
| final_attendance | No | decimal |
Permissions
One of the following roles is required to call this method:
- Academic Admin
- Registrar
attendance
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/students/(enrollment)/attendance" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
require 'httparty'
response = HTTParty.get(
'https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/students/(enrollment)/attendance',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
)
puts response.body
import requests
response = requests.get(
'https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/students/(enrollment)/attendance',
headers={
'Authorization': 'Bearer YOUR_POPULI_API_KEY'
},
)
print(response.json())
using Newtonsoft.Json;
using RestSharp;
var client = new RestClient();
var request = new RestRequest(new Uri("https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/students/(enrollment)/attendance"), Method.Get);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
var response = client.Execute(request);
var response_object = JsonConvert.DeserializeObject(response.Content);
Console.Write(response_object);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/students/(enrollment)/attendance');
curl_setopt($curl, CURLOPT_HTTPHEADER, ['Authorization: Bearer YOUR_POPULI_API_KEY']);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'GET');
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "course_attendance",
"id": "6",
"student_name": "Alice Admin",
"status": "present",
"note": null,
"start_time": "2022-10-01 01:00:00",
"end_time": "2022-10-01 02:30:00",
"course_meeting_id": "3",
"summary": "Main class",
"counts_toward_attendance_hours": "1",
"counts_toward_clinical_hours": "1",
"attendance_hours": null,
"clinical_hours": null,
"beacon_id": null,
"kiosk_id": null
}
]
}
HTTP Request
GET /courseofferings/(courseoffering)/students/(enrollment)/attendance
Parameters
None
Permissions
One of the following roles is required to call this method:
- Academic Admin
- Registrar
finalize
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/students/(enrollment)/finalize" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"finalize": 1
}' \
require 'httparty'
response = HTTParty.get(
'https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/students/(enrollment)/finalize',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
body: {
:finalize => 1
}.to_json
)
puts response.body
import requests
response = requests.get(
'https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/students/(enrollment)/finalize',
headers={
'Authorization': 'Bearer YOUR_POPULI_API_KEY'
},
json={
'finalize': 1
}
)
print(response.json())
using Newtonsoft.Json;
using RestSharp;
var client = new RestClient();
var request = new RestRequest(new Uri("https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/students/(enrollment)/finalize"), Method.Get);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
request.AddJsonBody(new {
finalize = 1
});
var response = client.Execute(request);
var response_object = JsonConvert.DeserializeObject(response.Content);
Console.Write(response_object);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/students/(enrollment)/finalize');
curl_setopt($curl, CURLOPT_HTTPHEADER, ['Authorization: Bearer YOUR_POPULI_API_KEY']);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'GET');
curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode([
'finalize' => 1
]));
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);
Example response:
{
"object": "enrollment",
"id": 6000000,
"course_offering_id": 21908,
"catalog_course_id": 688,
"student_id": 16,
"status": "enrolled",
"status_expires_at": null,
"pending_reason": null,
"final_comment": null,
"final_grade": 85,
"final_attendance": 0,
"released_final_grade": 85,
"commented_by_id": null,
"enrolled_by_id": null,
"enrolled_by_type": "registrar",
"status_date": "2022-10-05",
"enrolled_date": null,
"credits": 2,
"hours": 2,
"attendance_hours": null,
"clinical_hours": null,
"pass_fail": false,
"finalized": true,
"finalized_at": "2026-07-25T16:24:13+00:00",
"delivery_method_id": null,
"automatically_removed_at": null,
"automatically_removed_from": null,
"added_at": null,
"added_by_id": null,
"updated_at": "2026-07-25T16:24:13+00:00",
"display_status": "Enrolled",
"sandbox": true
}
HTTP Request
GET /courseofferings/(courseoffering)/students/(enrollment)/finalize
Parameters
| Name | Required | Data Type | Description |
|---|---|---|---|
| finalize | Yes | bool | To unfinalize an enrollment, set this parameter to false. |
Permissions
One of the following roles is required to call this method:
- Academic Admin
- Registrar
create
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/enrollments" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"course_offering_id": 21908
}' \
require 'httparty'
response = HTTParty.post(
'https://yourschool.populiweb.com/api2/people/(person)/enrollments',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
body: {
:course_offering_id => 21908
}.to_json
)
puts response.body
import requests
response = requests.post(
'https://yourschool.populiweb.com/api2/people/(person)/enrollments',
headers={
'Authorization': 'Bearer YOUR_POPULI_API_KEY'
},
json={
'course_offering_id': 21908
}
)
print(response.json())
using Newtonsoft.Json;
using RestSharp;
var client = new RestClient();
var request = new RestRequest(new Uri("https://yourschool.populiweb.com/api2/people/(person)/enrollments"), Method.Post);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
request.AddJsonBody(new {
course_offering_id = 21908
});
var response = client.Execute(request);
var response_object = JsonConvert.DeserializeObject(response.Content);
Console.Write(response_object);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'https://yourschool.populiweb.com/api2/people/(person)/enrollments');
curl_setopt($curl, CURLOPT_HTTPHEADER, ['Authorization: Bearer YOUR_POPULI_API_KEY']);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode([
'course_offering_id' => 21908
]));
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);
Example response:
{
"object": "enrollment",
"course_offering_id": 21908,
"person_id": 12,
"action": "Enrollment is being created."
}
Creates a new Enrollment object. Enrollments are created asyncronously, so you will not immediately get a CourseStudent object back.
HTTP Request
POST /people/(person)/enrollments
Parameters
| Name | Required | Data Type | Description |
|---|---|---|---|
| course_offering_id | Yes | int | |
| status | No | enum (enrolled, auditor, waiting) | Default is enrolled |
| status_date | No | date | Default is today |
| catalog_course_id | No | int |
Permissions
One of the following roles is required to call this method:
- Academic Admin
- Registrar
This is a heavy call. For performance reasons, only one heavy call may be made at a time.
show (person)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/enrollments/(enrollment)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
require 'httparty'
response = HTTParty.get(
'https://yourschool.populiweb.com/api2/people/(person)/enrollments/(enrollment)',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
)
puts response.body
import requests
response = requests.get(
'https://yourschool.populiweb.com/api2/people/(person)/enrollments/(enrollment)',
headers={
'Authorization': 'Bearer YOUR_POPULI_API_KEY'
},
)
print(response.json())
using Newtonsoft.Json;
using RestSharp;
var client = new RestClient();
var request = new RestRequest(new Uri("https://yourschool.populiweb.com/api2/people/(person)/enrollments/(enrollment)"), Method.Get);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
var response = client.Execute(request);
var response_object = JsonConvert.DeserializeObject(response.Content);
Console.Write(response_object);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'https://yourschool.populiweb.com/api2/people/(person)/enrollments/(enrollment)');
curl_setopt($curl, CURLOPT_HTTPHEADER, ['Authorization: Bearer YOUR_POPULI_API_KEY']);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'GET');
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);
Example response:
{
"object": "enrollment",
"id": 6000003,
"course_offering_id": 21910,
"catalog_course_id": 688,
"student_id": 12,
"status": "enrolled",
"status_expires_at": null,
"pending_reason": null,
"final_comment": null,
"final_grade": 91.5,
"final_attendance": 0,
"released_final_grade": null,
"commented_by_id": null,
"enrolled_by_id": null,
"enrolled_by_type": "registrar",
"status_date": "2022-10-05",
"enrolled_date": null,
"credits": 2,
"hours": 2,
"attendance_hours": null,
"clinical_hours": null,
"pass_fail": false,
"finalized": false,
"finalized_at": null,
"delivery_method_id": null,
"automatically_removed_at": null,
"automatically_removed_from": null,
"added_at": null,
"added_by_id": null,
"updated_at": null,
"display_status": "Enrolled",
"sandbox": true
}
Retrieves a specific Enrollment object.
HTTP Request
GET /people/(person)/enrollments/(enrollment)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Academic Admin
- Registrar
update
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/enrollments/(enrollment)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X PUT
require 'httparty'
response = HTTParty.put(
'https://yourschool.populiweb.com/api2/people/(person)/enrollments/(enrollment)',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
)
puts response.body
import requests
response = requests.put(
'https://yourschool.populiweb.com/api2/people/(person)/enrollments/(enrollment)',
headers={
'Authorization': 'Bearer YOUR_POPULI_API_KEY'
},
)
print(response.json())
using Newtonsoft.Json;
using RestSharp;
var client = new RestClient();
var request = new RestRequest(new Uri("https://yourschool.populiweb.com/api2/people/(person)/enrollments/(enrollment)"), Method.Put);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
var response = client.Execute(request);
var response_object = JsonConvert.DeserializeObject(response.Content);
Console.Write(response_object);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'https://yourschool.populiweb.com/api2/people/(person)/enrollments/(enrollment)');
curl_setopt($curl, CURLOPT_HTTPHEADER, ['Authorization: Bearer YOUR_POPULI_API_KEY']);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'PUT');
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);
Example response:
{
"object": "enrollment",
"id": 6000003,
"course_offering_id": 21910,
"catalog_course_id": 688,
"student_id": 12,
"status": "enrolled",
"status_expires_at": null,
"pending_reason": null,
"final_comment": null,
"final_grade": 91.5,
"final_attendance": 0,
"released_final_grade": null,
"commented_by_id": null,
"enrolled_by_id": null,
"enrolled_by_type": "registrar",
"status_date": "2022-10-05",
"enrolled_date": null,
"credits": 2,
"hours": 2,
"attendance_hours": null,
"clinical_hours": null,
"pass_fail": false,
"finalized": false,
"finalized_at": null,
"delivery_method_id": null,
"automatically_removed_at": null,
"automatically_removed_from": null,
"added_at": null,
"added_by_id": null,
"updated_at": null,
"display_status": "Enrolled",
"sandbox": true
}
Updates an existing Enrollment object.
HTTP Request
PUT /people/(person)/enrollments/(enrollment)
Parameters
| Name | Required | Data Type | Description |
|---|---|---|---|
| status | No | enum (pending, enrolled, pending_auditor, auditor, withdrawn, incomplete, deleted, waiting) | |
| status_date | No | date |
Permissions
One of the following roles is required to call this method:
- Academic Admin
- Registrar
This is a heavy call. For performance reasons, only one heavy call may be made at a time.
delete
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/enrollments/(enrollment)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
require 'httparty'
response = HTTParty.delete(
'https://yourschool.populiweb.com/api2/people/(person)/enrollments/(enrollment)',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
)
puts response.body
import requests
response = requests.delete(
'https://yourschool.populiweb.com/api2/people/(person)/enrollments/(enrollment)',
headers={
'Authorization': 'Bearer YOUR_POPULI_API_KEY'
},
)
print(response.json())
using Newtonsoft.Json;
using RestSharp;
var client = new RestClient();
var request = new RestRequest(new Uri("https://yourschool.populiweb.com/api2/people/(person)/enrollments/(enrollment)"), Method.Delete);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
var response = client.Execute(request);
var response_object = JsonConvert.DeserializeObject(response.Content);
Console.Write(response_object);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'https://yourschool.populiweb.com/api2/people/(person)/enrollments/(enrollment)');
curl_setopt($curl, CURLOPT_HTTPHEADER, ['Authorization: Bearer YOUR_POPULI_API_KEY']);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'DELETE');
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);
Example response:
{
"object": "enrollment",
"id": 6000001,
"course_offering_id": 21909,
"person_id": 16,
"action": "Enrollment is being updated."
}
Deletes an existing Enrollment object.
HTTP Request
DELETE /people/(person)/enrollments/(enrollment)
Parameters
No additional parameters are needed beyond the ID of the object to delete that appears in the URL.
Permissions
One of the following roles is required to call this method:
- Academic Admin
- Registrar