Introduction
Welcome to the documentation site for the Populi API version 2.0.
This is a modern REST API, allowing you to integrate most of the data in your school's Populi instance with other outside services and your own custom software. The data object format shown here is also used by webhooks coming from Populi.
If you are looking for our old API, it is deprecated and will receive no further development (except for security updates), however you can still look up the legacy API reference.
If you need help, first check your API logs in Populi and look at the provided examples. The API channel on our Discord server is also a good place to ask help or see what other developers are doing. For specific questions, please email support@populi.co.
Authentication
Every request must contain an API Key token in the header.
# With shell, you can just pass the correct header with each request
curl "https://yourschool.populiweb.com/api2/object/method" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY"
Make sure to replace
YOUR_POPULI_API_KEY
with your API key token.
Populi uses API Keys to control access to the API. Populi Account Administrators can create API Keys and give them to developers to use. API Keys are given roles just like users are, which determines what exactly they have access to. You can also specify which users are Log Viewers of a particular key. You should make your developers log viewers of the keys they use so they can debug their own calls. To manage your API Keys, go to Account & Settings; under the Account heading, click API and go to the Keys view.
API Keys can have up to two active tokens associated with them. Tokens will look something like: sk_j4U265CpkDEIXSAYwAVV1ryf2hiYo
Populi expects for an API Key token to be included in all API requests to the server in a header that looks like the following:
Authorization: Bearer sk_j4U265CpkDEIXSAYwAVV1ryf2hiYo
Request and Response Format
All API calls will be to your school's Populi instance URL + /api2/
+ the route.
Example
GET https://yourschool.populiweb.com/api2/people
Some API calls include parameters (integers) in the URL path.
Example
POST https://yourschool.populiweb.com/api2/people/55782/phonenumbers/223950/update
Some calls require additional parameters. These will need to be included as JSON in the body of the request.
Example
POST https://yourschool.populiweb.com/api2/people/55782/phonenumbers/create
{
"number": "555-893-0032",
"type": "home"
}
Most parameters correspond to properties of the data object in question and should be at the top level of your JSON request. However, some calls also have "action parameters", that should be nested under a key named action
.
Example
POST https://yourschool.populiweb.com/api2/users/55782
{
"username": "jimmy57",
"action": [
"send_welcome_email": true
]
}
All API calls will contain JSON in the body of the HTTP response. This response will always be either:
- A single data object
- A list object containing an array of data objects
- An error object containing information on what went wrong or why the request was invalid
There are a tiny handful of exceptions to this convention.
- API calls that contain a file upload will contain the file data in the body of the request and any additional parameters must be included as POST variables instead of JSON in the body.
- API calls that return a file to download (such as a XLS, CSV, or PDF), will contain the file in the response instead of JSON.
- If you are using a strict software library that does not allow GET calls to have any data in the request body, then you may alternately include parameters as JSON in the URL string. Use a single parameter in the url called
parameters
for this purpose.
Alternate Example, JSON in a URL parameter
POST https://yourschool.populiweb.com/api2/courseofferings?parameters={"academic_term_id":5557}
JSON in the request must be valid. Trailing commas are not permitted. The documentation provides example requests and responses for every call.
All responses include the "sandbox"
property. This will be set to true
for responses or webhooks originating from a validation or demo instance. It will be false
for data or events from your live production instance.
Objects
Most API calls return a data object. A data object will always include its type name (e.g. "object": "person"
) and its unique numeric id (e.g. "id": "88932"
). The data object will also contain many other fields, some of which may contain additional nested objects.
Expandable Objects
Some calls are expandable. That means, in the request, you can specify that you want additional information included in the response. For example calling /people/123
will give you back basic information about the person with ID 123. However, calling /people/123
with "expand": ["addresses", "phone_numbers", "tags"]
in the JSON request body will cause that person's addresses, phone numbers, and tags to be included in the response.
Lists and Paging
Some API calls return a list of many data objects. For example, a call to find everyone with the last name smith
may return several hundred results. Most lists contain a maximum of 200 records per response. You can use the page
parameter in your request to request additional results.
Errors
Example
{
"object": "error",
"code": 400,
"type": "missing_parameter",
"message": "Missing required parameter: academic_term_id",
"sandbox": true
}
Some API calls will return an error object. The error object will contain additional details about what happened to assist with your debugging. Errors can result from many things such as requesting an object that doesn't exist, or supplying an invalid parameter, or trying to call a route your API key does not have permission to use.
Rate Limits
Populi enforces API rate-limits in order to stay responsive for all users. The rate limits are as follows:
- 3AM - 7PM (Pacific Standard Time): 50 requests per minute per API key.
- 7PM - 3AM (Pacific Standard Time): 100 requests per minute per API key.
- Certain "heavy" API calls, cannot be called concurrently. That is, you can only make one heavy call at a time (e.g. pulling a Data Slicer report).
- There are additional per-IP and per-school limits.
If you pass your limit, Populi will return HTTP response code 429 (Too Many Requests).
Handling 429 response codes by exponentially backing off
If your app exceeds its rate limit, you should pause for just over a minute before sending additional requests (that way you'll be guaranteed that the timer has been re-set). However, it's much more efficient to design your app to stay below the limit and avoid 429 responses altogether! You could do this by placing a small delay between calls.
If your app is making API requests from multiple threads, you'll need to make sure all threads are backing off when receiving 429 responses.
Best practices to avoid rate limits
We recommend the following practices to reduce interruptions:
- Avoid constant polling. Listen for automation webhooks where possible.
- Add a small delay between rapid API calls (e.g.
sleep(1)
or equivalent) - Cache your own data when you need to store specialized values or rapidly query large data sets.
- Only pull the data you need by adding filter condition parameters to reports
Example Code
Example code for each call is provided below for each route in shell (curl), Ruby, Python, C#.Net, and PHP. Some of the provided examples depend on popular libraries you may need to include in your project. Feel free to use whatever libraries or methods you want.
If you a power user, but lacking in development skills, parts of this API can be accessed via the Zapier service for building third party integrations. If you are a Zapier user, you may email support@populi.co and ask for a feature invite link.
If you are just getting started, we recommend making a few of your first calls using the Postman tool. Postman is a cross-platform API experimentation tool that provides an easy interface to see what is going on. We also have a Postman collection of example calls to get you started! After downloading it, go to the variable settings and replace the school_url
with the URL of your own school's Populi instance. Under the Authorization settings you'll need to paste in a working API key of your own.
--- API Routes ---
timezone
Example code to call this method:
Example response:
{
"object": "timezone",
"timezone": "America\/Los_Angeles",
"now": "2024-11-20T12:03:37+00:00"
}
Get the timezone of your school. All dates and times returned by the API will be in this timezone. Includes a representation of the current time.
HTTP Request
GET /timezone
Parameters
None
Permissions
Any role may call this method.
show example webhook payload
Example response:
{}
This method returns an example JSON payload of a Webhook coming from Populi triggered by a specified type of Automation. Replace :trigger_abbrv in the URL with the trigger type abbreviation (e.g. person_created).
HTTP Request
GET /webhooks/examples/:trigger_abbrv
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:
- Staff
- Development
AcademicTerm
The AcademicTerm object
The AcademicTerm object looks like this in JSON:
{
"object": "academic_term",
"id": 8,
"academic_year_id": 4,
"name": "Spring 2010",
"display_name": "Spring 2010 2009-2010",
"start_date": "2010-02-01",
"end_date": "2010-05-15",
"grades_date": "2010-05-10",
"add_drop_time": "2010-02-15T00:00:00+00:00",
"enrollment_start_time": "2010-01-01T00:00:00+00:00",
"non_standard": false,
"type": "standard",
"max_enrolled_credits": null,
"max_enrolled_hours": null,
"max_audit_credits": null,
"max_audit_hours": null,
"evaluations_available_from": null,
"evaluations_available_to": null,
"evaluations_lock_grades_at": null,
"online_registration_delay_until": null,
"online_registration_randomization_seconds": 0,
"evaluations_lock_grades_until": null,
"evaluations_available_to_faculty": null,
"lms_sync": null,
"external_id": null,
"start_year": 2009,
"end_year": 2010,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
academic_year_id | Yes | int |
name | Yes | text (255) |
display_name | Yes | text (200) |
start_date | Yes | date |
end_date | Yes | date |
grades_date | Yes | date |
add_drop_time | Yes | datetime |
enrollment_start_time | No | datetime |
non_standard | Yes | bool |
type | Yes | enum (standard, non_standard, super) |
max_enrolled_credits | No | decimal |
max_enrolled_hours | No | decimal |
max_audit_credits | No | decimal |
max_audit_hours | No | decimal |
evaluations_available_from | No | datetime |
evaluations_available_to | No | datetime |
evaluations_lock_grades_at | No | datetime |
online_registration_delay_until | No | datetime |
online_registration_randomization_seconds | Yes | int |
evaluations_lock_grades_until | No | datetime |
evaluations_available_to_faculty | No | enum (not_available, available_after_60_percent_completion, available_after_60_percent_completion_and_course_finalized) |
lms_sync | No | enum (none, canvas) |
external_id | No | text (100) |
start_year | No | int |
end_year | No | int |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/academicterms" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 8,
"results": 8,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "academic_term",
"id": 8,
"academic_year_id": 4,
"name": "Spring 2010",
"display_name": "Spring 2010 2009-2010",
"start_date": "2010-02-01",
"end_date": "2010-05-15",
"grades_date": "2010-05-10",
"add_drop_time": "2010-02-15T00:00:00+00:00",
"enrollment_start_time": "2010-01-01T00:00:00+00:00",
"non_standard": false,
"type": "standard",
"max_enrolled_credits": null,
"max_enrolled_hours": null,
"max_audit_credits": null,
"max_audit_hours": null,
"evaluations_available_from": null,
"evaluations_available_to": null,
"evaluations_lock_grades_at": null,
"online_registration_delay_until": null,
"online_registration_randomization_seconds": 0,
"evaluations_lock_grades_until": null,
"evaluations_available_to_faculty": null,
"lms_sync": null,
"external_id": null,
"start_year": 2009,
"end_year": 2010,
"added_at": null,
"added_by_id": null
}
],
"sandbox": true
}
Retrieves all AcademicTerm objects.
HTTP Request
GET /academicterms
Parameters
None
Expandable Properties
- academic_year
- enrollment_periods
- subterms
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Academic Admin
- Registrar
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/academicterms/(academicterm)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "academic_term",
"id": 8,
"academic_year_id": 4,
"name": "Spring 2010",
"display_name": "Spring 2010 2009-2010",
"start_date": "2010-02-01",
"end_date": "2010-05-15",
"grades_date": "2010-05-10",
"add_drop_time": "2010-02-15T00:00:00+00:00",
"enrollment_start_time": "2010-01-01T00:00:00+00:00",
"non_standard": false,
"type": "standard",
"max_enrolled_credits": null,
"max_enrolled_hours": null,
"max_audit_credits": null,
"max_audit_hours": null,
"evaluations_available_from": null,
"evaluations_available_to": null,
"evaluations_lock_grades_at": null,
"online_registration_delay_until": null,
"online_registration_randomization_seconds": 0,
"evaluations_lock_grades_until": null,
"evaluations_available_to_faculty": null,
"lms_sync": null,
"external_id": null,
"start_year": 2009,
"end_year": 2010,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Retrieves a specific AcademicTerm object.
HTTP Request
GET /academicterms/(academicterm)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- academic_year
- enrollment_periods
- subterms
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Academic Admin
- Registrar
billing
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/academicterms/(academicterm)/billing" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"filter": {"0":{"logic":"ALL","fields":[{"name":"total_charges","value":{"type":"RANGE","start":"10.5","end":"900.15"},"positive":1}]}}
}' \
Example response:
{
"object": "list",
"count": 2,
"results": 2,
"results_per_page": 0,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "person",
"id": 16,
"first_name": "Academic",
"last_name": "Admin",
"middle_name": "",
"prefix": null,
"suffix": null,
"preferred_name": null,
"display_name": "Academic 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,
"added_at": null,
"added_by_id": null,
"updated_at": null,
"report_data": {
"studentid": 16,
"dummyid": "20220xx001",
"enrollment_agreements_signed": "0",
"enrollment_agreements_unsigned": "0",
"tuition": "0.00",
"fees": "0.00",
"room_plan": "0.00",
"meal_plan": "0.00",
"bookstore": "0.00",
"pending_and_invoices_total_charges": "0.00",
"grants": "3644.90",
"loans": "0.00",
"total_aid": "3644.90",
"schedule_names": null,
"schedule_ids": null,
"row_id": 16
},
"private_profile": false,
"is_user": true
}
],
"sandbox": true
}
Returns a variety of collected individual student billing information for a specified term.
HTTP Request
GET /academicterms/(academicterm)/billing
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
- academic_year
- enrollment_periods
- subterms
Filter Condition Parameters
These conditions can be used to narrow the results returned.
Name | Type |
---|---|
tuition_schedule | object id |
tuition | decimal |
fees_and_bookstore | decimal |
room_and_board | decimal |
total_charges | decimal |
expected_aid | decimal |
charges_less_expected_aid | decimal |
student_campus | campus |
invoice_posted_date | date |
term_amount_due | decimal |
enrollment_agreement_status | enrollmentagreementstatus |
tag | tag |
custom_field | custom |
Permissions
One of the following roles is required to call this method:
- Financial Admin
- Student Billing
courseofferings
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/academicterms/(academicterm)/courseofferings" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"filter": {"0":{"logic":"ALL","fields":[{"name":"enrolled","value":{"type":"RANGE","start":"1","end":"9"},"positive":1}]}}
}' \
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": 200,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "course_offering",
"id": 21910,
"academic_term_id": 8,
"campus_id": 0,
"finalized": false,
"finalized_at": null,
"max_enrolled": null,
"max_auditors": null,
"roster_visibility": true,
"start_date": "2022-05-20",
"end_date": "2022-10-08",
"add_drop_time": null,
"published": true,
"open_to_students_date": "2022-05-20",
"closed_to_students_date": "2022-10-08",
"course_evaluation_id": null,
"evaluation_available_from": null,
"evaluation_available_to": null,
"evaluation_lock_grades_at": null,
"evaluation_lock_grades_until": null,
"evaluation_available_to_faculty": null,
"faculty_can_manage_roster": false,
"faculty_can_override_enrollment": false,
"students_can_add_discussions": true,
"disable_student_bulletin_board_posts": false,
"allow_auditor_assignments": false,
"allow_auditor_attendance": false,
"waiting_list_management": "automatic",
"report_data": {
"course_offering_catalog_course_id": 40,
"name": "Beginning Latin I",
"description": "",
"catalog_course_id": 688,
"section": "1",
"credits": "2.00",
"hours": "2.00",
"pass_fail": 0,
"attendance_hours": "0.00",
"enable_clinical_hours": 0,
"clinical_hours": "0.00",
"fulfills_program_requirements": 1,
"affects_standing": 1,
"affects_full_time_status": 1,
"pass_affects_gpa": 1,
"fail_affects_gpa": 1,
"pass_fail_pass_affects_gpa": 1,
"pass_fail_fail_affects_gpa": 1,
"course_abbrv": "LAT101",
"department_name": "Undergraduate",
"campus_name": null,
"num_finalized_students": "0",
"num_students": "2",
"num_auditors": "0",
"num_incomplete": "0",
"num_withdrawn": "0",
"num_waiting": 1,
"primary_faculty_id": null,
"primary_faculty_display_name": null,
"primary_faculty_first_name": null,
"primary_faculty_last_name": null,
"other_faculty_ids": null,
"other_faculty": null,
"teaching_assistants": null,
"primary_faculty_email_address": null,
"other_faculty_email_addresses": null,
"teaching_assistant_email_addresses": null,
"add_drop_time_local": "2010-02-14 16:00:00",
"department_id": 1,
"program_name_ids": null,
"hide_self_register": 0,
"self_enroll": "YES",
"self_audit": 1,
"course_books": null,
"course_links": null,
"delivery_method_ids": null,
"delivery_method_names": null,
"primary_delivery_method_id": null,
"primary_delivery_method_name": null,
"has_course_evaluation": 0,
"num_course_evaluation_completions": "0",
"row_id": 40
},
"show_progress_to_students": false,
"catalog_courses": [
{
"object": "catalog_course",
"id": 40,
"course_offering_id": 21910,
"catalog_course_id": 688,
"primary": true,
"abbrv": "LAT101",
"name": "Beginning Latin I",
"description": null,
"section": "1",
"credits": 2,
"hours": 2,
"attendance_hours": 0,
"clinical_hours": 0,
"affects_standing": true,
"affects_full_time_status": true,
"pass_fail": false,
"pass_affects_gpa": true,
"fail_affects_gpa": true,
"pass_fail_pass_affects_gpa": true,
"pass_fail_fail_affects_gpa": true,
"fulfills_program_requirements": true,
"minimum_attendance": null,
"hide_self_register": false,
"self_enroll": "yes",
"self_audit": true,
"delivery_methods": [],
"added_at": null,
"added_by_id": null
}
]
}
],
"sandbox": true
}
HTTP Request
GET /academicterms/(academicterm)/courseofferings
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
- academic_year
- enrollment_periods
- subterms
Filter Condition Parameters
These conditions can be used to narrow the results returned.
Name | Type |
---|---|
finalized | bool |
campus | campus |
section | alphanumeric |
instructor | search |
department | object id |
enrolled | integer |
auditors | integer |
incomplete | integer |
withdrawn | integer |
waiting | integer |
pass_fail | bool |
max_enrolled | enrollment |
max_auditors | enrollment |
delivery_method | object id |
published | bool |
program | program |
show_self_register | bool |
self_enroll | choice |
self_audit | bool |
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Academic Admin
- Registrar
enrollments
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/academicterms/(academicterm)/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}]}}
}' \
Example response:
{
"object": "list",
"count": 2,
"results": 2,
"results_per_page": 200,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "person",
"id": 16,
"first_name": "Academic",
"last_name": "Admin",
"middle_name": "",
"prefix": null,
"suffix": null,
"preferred_name": null,
"display_name": "Academic 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,
"added_at": null,
"added_by_id": null,
"updated_at": null,
"report_data": {
"student_person_id": 16,
"student_name": "Academic Admin",
"academic_term_id": 8,
"academic_term_name": "Spring 2010 2009-2010",
"catalog_course_abbrv": "LAT101",
"course_offering_id": 21910,
"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": "91.50",
"enrollment_id": 6000002,
"course_offering_student_program_id": null,
"pass_fail": 0,
"student_middle_name": "",
"student_preferred_name": "",
"academic_term_start_date": "2010-02-01",
"course_campus_id": null,
"academic_term_end_date": "2010-05-15",
"student_first_name": "Academic",
"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_21910"
},
"private_profile": false,
"is_user": true
}
],
"sandbox": true
}
HTTP Request
GET /academicterms/(academicterm)/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
- academic_year
- enrollment_periods
- subterms
Filter Condition Parameters
These conditions can be used to narrow the results returned.
Name | Type |
---|---|
student | search |
program | program |
academic_term | academic_term |
transcript_term | academic_term |
billing_term | academic_term |
course | search |
status | course_student_status |
include_dropped_students | bool |
include_deleted_students | bool |
include_waitlisted_students | bool |
grade | decimal |
letter | text |
added_at | datetime |
updated_at | datetime |
academic_year | academic_year |
catalog_course | search |
course_department | object id |
course_section | alphanumeric |
course_delivery_method | object id |
course_affects_standing | bool |
course_faculty | faculty |
course_campus | campus |
has_active_student_role | has_active_student_role |
students_campus | campus |
standing | academicstanding |
degree_seeking | bool |
degree_level | choice |
degree | degree |
specialization | specialization |
first_time | bool |
full_time | bool |
finalized | bool |
finalized_at | datetime |
enrolled_by | search |
enrollment_date | date |
status_date | date |
term_start_date | date |
term_end_date | date |
course_start_date | date |
course_end_date | date |
credits | decimal |
hours | decimal |
pass_fail | bool |
final_attendance | decimal |
last_attendance | datetime |
course_has_been_retaken | bool |
advisor | advisor |
automatically_removed_at | datetime |
automatically_removed_from | enum |
age | integer |
gender | gender |
race_ethnicity | base_object id |
tag | tag |
custom_field | custom |
pay_period_start_date | date |
pay_period_end_date | date |
Permissions
One of the following roles is required to call this method:
- Academic Admin
- Registrar
students
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/academicterms/(academicterm)/students" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"filter": []
}' \
Example response:
{
"object": "list",
"count": 2,
"results": 2,
"results_per_page": 200,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "person",
"id": 16,
"first_name": "Academic",
"last_name": "Admin",
"middle_name": "",
"prefix": null,
"suffix": null,
"preferred_name": null,
"display_name": "Academic 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,
"added_at": null,
"added_by_id": null,
"updated_at": null,
"report_data": {
"degree_list": null,
"specialization_list": null,
"standing_name": null,
"term_gpa": null,
"cum_gpa": null,
"term_units_attempted": null,
"program_id": null,
"program_name": null,
"full_time": null,
"cum_units_granted": null,
"courses_mapped_elsewhere": 0,
"row_id": "16_0"
},
"private_profile": false,
"is_user": true
}
],
"sandbox": true
}
HTTP Request
GET /academicterms/(academicterm)/students
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
- academic_year
- enrollment_periods
- subterms
Filter Condition Parameters
These conditions can be used to narrow the results returned.
Name | Type |
---|---|
program | program |
standing | academicstanding |
degree_seeking | bool |
degree_level | choice |
degree | degree |
specialization | specialization |
first_time | bool |
full_time | bool |
term_units | decimal |
term_units_granted | decimal |
term_gpa | decimal |
cum_units | decimal |
resident_cum_gpa | decimal |
total_cum_gpa | decimal |
total_transfer_credits | decimal |
region | choice |
race_ethnicity | base_object id |
gender | gender |
campus | campus |
tag | tag |
custom_field | custom |
lock_type | locktype |
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Academic Admin
- Registrar
waitinglist
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/academicterms/(academicterm)/waitinglist" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"filter": []
}' \
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": 200,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "person",
"id": 16,
"first_name": "Academic",
"last_name": "Admin",
"middle_name": "",
"prefix": null,
"suffix": null,
"preferred_name": null,
"display_name": "Academic 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,
"added_at": null,
"added_by_id": null,
"updated_at": null,
"report_data": {
"waiting_list_added_at": "2022-10-11 17:08:57",
"waiting_list_position": 2,
"course_offering_id": 21910,
"full_course_offering_name": "LAT101-1: Beginning Latin I",
"max_enrolled": null,
"num_enrolled_incomplete": 2,
"openings": null,
"row_id": "40_16"
},
"private_profile": false,
"is_user": true
}
],
"sandbox": true
}
HTTP Request
GET /academicterms/(academicterm)/waitinglist
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
- academic_year
- enrollment_periods
- subterms
Filter Condition Parameters
These conditions can be used to narrow the results returned.
Name | Type |
---|---|
course | search |
student | search |
position | integer |
added_at | datetime |
max_enrolled | integer |
enrolled | integer |
openings | integer |
catalog_course | search |
course_delivery_method | object id |
course_faculty | faculty |
finalized | bool |
credits | decimal |
hours | decimal |
pass_fail | bool |
course_campus | campus |
has_active_student_role | has_active_student_role |
students_campus | campus |
program | program |
standing | academicstanding |
degree_seeking | bool |
degree_level | choice |
degree | degree |
first_time | bool |
full_time | bool |
age | integer |
gender | gender |
race_ethnicity | base_object id |
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Academic Admin
- Registrar
current
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/academicterms/current" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "academic_term",
"id": 8,
"academic_year_id": 4,
"name": "Spring 2010",
"display_name": "Spring 2010 2009-2010",
"start_date": "2010-02-01",
"end_date": "2010-05-15",
"grades_date": "2010-05-10",
"add_drop_time": "2010-02-15T00:00:00+00:00",
"enrollment_start_time": "2010-01-01T00:00:00+00:00",
"non_standard": false,
"type": "standard",
"max_enrolled_credits": null,
"max_enrolled_hours": null,
"max_audit_credits": null,
"max_audit_hours": null,
"evaluations_available_from": null,
"evaluations_available_to": null,
"evaluations_lock_grades_at": null,
"online_registration_delay_until": null,
"online_registration_randomization_seconds": 0,
"evaluations_lock_grades_until": null,
"evaluations_available_to_faculty": null,
"lms_sync": null,
"external_id": null,
"start_year": 2009,
"end_year": 2010,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Returns the current default term.
HTTP Request
GET /academicterms/current
Parameters
None
Expandable Properties
- academic_year
- enrollment_periods
- subterms
Permissions
One of the following roles is required to call this method:
- Academic Admin
- Registrar
AcademicTermPersonSettings
The AcademicTermPersonSettings object
The AcademicTermPersonSettings object looks like this in JSON:
{
"object": "academic_term_person_settings",
"id": 6,
"academic_term_id": 75,
"person_id": 13,
"refund_policy_id": 2,
"payment_plan_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
academic_term_id | No | int |
person_id | No | int |
refund_policy_id | No | int |
payment_plan_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/termsettings" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 3,
"results": 3,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "academic_term_person_settings",
"id": 480,
"academic_term_id": 4,
"person_id": 12,
"refund_policy_id": null,
"payment_plan_id": null
}
],
"sandbox": true
}
Retrieves all AcademicTermPersonSettings objects tied to a specific Person.
HTTP Request
GET /people/(person)/termsettings
Parameters
None
Permissions
One of the following roles is required to call this method:
- Financial Aid
- Financial Admin
- Student Billing
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/termsettings/(academicterm)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "academic_term_person_settings",
"id": 481,
"academic_term_id": 8,
"person_id": 12,
"refund_policy_id": null,
"payment_plan_id": null,
"sandbox": true
}
Retrieves a specific AcademicTermPersonSettings object.
HTTP Request
GET /people/(person)/termsettings/(academicterm)
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:
- Financial Aid
- Financial Admin
- Student Billing
AcademicYear
The AcademicYear object
The AcademicYear object looks like this in JSON:
{
"object": "academic_year",
"id": 4,
"start_year": 2009,
"end_year": 2010,
"num_academic_terms": 2,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
start_year | Yes | int |
end_year | Yes | int |
num_academic_terms | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/academicyears" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 4,
"results": 4,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "academic_year",
"id": 4,
"start_year": 2009,
"end_year": 2010,
"num_academic_terms": 2
}
],
"sandbox": true
}
Retrieves all AcademicYear objects.
HTTP Request
GET /academicyears
Parameters
None
Permissions
One of the following roles is required to call this method:
- Academic Admin
- Registrar
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/academicyears/(academicyear)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "academic_year",
"id": 4,
"start_year": 2009,
"end_year": 2010,
"sandbox": true
}
Retrieves a specific AcademicYear object.
HTTP Request
GET /academicyears/(academicyear)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- academic_terms
- academic_super_terms
Permissions
One of the following roles is required to call this method:
- Academic Admin
- Registrar
current
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/academicyears/current" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "academic_year",
"id": 4,
"start_year": 2009,
"end_year": 2010,
"sandbox": true
}
HTTP Request
GET /academicyears/current
Parameters
None
Permissions
One of the following roles is required to call this method:
- Academic Admin
- Registrar
Account
The Account object
The Account object looks like this in JSON:
{
"object": "account",
"id": 3,
"name": "Accounts Receivable",
"account_number": "12345-8",
"description": "Money you do not have, but might later.",
"type": "asset",
"currency": "USD",
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
name | Yes | text (300) |
account_number | Yes | text (50) |
description | Yes | text (500) |
type | No | enum (income, asset, expense, liability, equity) |
currency | No | text (3) |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/accounts" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 5,
"results": 5,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "account",
"id": 3,
"name": "Accounts Receivable",
"account_number": "12345-8",
"description": "Money you do not have, but might later.",
"type": "asset",
"currency": "USD"
}
],
"sandbox": true
}
Retrieves all Account objects.
HTTP Request
GET /accounts
Parameters
None
Permissions
One of the following roles is required to call this method:
- Financial Auditor
- Financial Admin
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/accounts/(account)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "account",
"id": 3,
"name": "Accounts Receivable",
"account_number": "12345-8",
"description": "Money you do not have, but might later.",
"type": "asset",
"currency": "USD",
"sandbox": true
}
Retrieves a specific Account object.
HTTP Request
GET /accounts/(account)
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:
- Financial Auditor
- Financial Admin
Address
The Address object
The Address object looks like this in JSON:
{
"object": "address",
"id": 777,
"owner_id": 1,
"owner_type": "person",
"street": "6600 Park Crest Court",
"city": "Lincoln",
"state": "NE",
"postal": "68506",
"country": "US",
"type": "home",
"primary": true,
"old": false,
"public": true,
"synced_from": null,
"import_id": null,
"added_at": null,
"added_by_id": 1,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
owner_id | Yes | int |
owner_type | Yes | enum (person, organization, inquiry, application) |
street | Yes | text (255) |
city | Yes | text (50) |
state | Yes | text (50) |
postal | Yes | text (50) |
country | Yes | text (50) |
type | Yes | enum (home, work, other, main, billing, shipping, school) |
primary | Yes | bool |
old | Yes | bool |
public | Yes | bool |
synced_from | Yes | int |
import_id | No | int |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index (organization)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/organizations/(organization)/addresses" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "address",
"id": 800,
"owner_id": 1,
"owner_type": "organization",
"street": "123 Street",
"city": "Seattle",
"state": "WA",
"postal": "89000",
"country": "US",
"type": "other",
"primary": false,
"old": false,
"public": true,
"synced_from": null,
"import_id": null,
"added_at": null,
"added_by_id": 20
}
],
"sandbox": true
}
Retrieves all Address objects tied to a specific Organization.
HTTP Request
GET /organizations/(organization)/addresses
Parameters
None
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Financial Auditor
- Staff
create (organization)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/organizations/(organization)/addresses" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"street": "444 Oak Ave",
"city": "Cityburg",
"type": "main"
}' \
Example response:
{
"object": "address",
"id": 804,
"owner_id": 1,
"owner_type": "organization",
"street": "444 Oak Ave",
"city": "Cityburg",
"state": null,
"postal": null,
"country": null,
"type": "main",
"primary": false,
"old": false,
"public": false,
"synced_from": null,
"import_id": null,
"added_at": "2024-11-20T20:03:34+00:00",
"added_by_id": 22,
"sandbox": true
}
Creates a new Address object.
HTTP Request
POST /organizations/(organization)/addresses
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
street | Yes | text (255) | |
city | Yes | text (50) | |
state | No | text (50) | |
postal | No | text (50) | |
country | No | text (50) | |
type | Yes | enum (home, work, other, main, billing, shipping, school) |
Permissions
One of the following roles is required to call this method:
- Staff
show (organization)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/organizations/(organization)/addresses/(address)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "address",
"id": 777,
"owner_id": 1,
"owner_type": "person",
"street": "6600 Park Crest Court",
"city": "Lincoln",
"state": "NE",
"postal": "68506",
"country": "US",
"type": "home",
"primary": true,
"old": false,
"public": true,
"synced_from": null,
"import_id": null,
"added_at": null,
"added_by_id": 1,
"sandbox": true
}
Retrieves a specific Address object.
HTTP Request
GET /organizations/(organization)/addresses/(address)
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:
- Staff
update (organization)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/organizations/(organization)/addresses/(address)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X PUT
-d '{
"street": "555 Maple Street",
"city": "Townville",
"type": "main"
}' \
Example response:
{
"object": "address",
"id": 800,
"owner_id": 1,
"owner_type": "organization",
"street": "555 Maple Street",
"city": "Townville",
"state": "WA",
"postal": "89000",
"country": "US",
"type": "main",
"primary": true,
"old": false,
"public": true,
"synced_from": null,
"import_id": null,
"added_at": null,
"added_by_id": 20,
"sandbox": true
}
Updates an existing Address object.
HTTP Request
PUT /organizations/(organization)/addresses/(address)
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
street | No | text (255) | |
city | No | text (50) | |
state | No | text (50) | |
postal | No | text (50) | |
country | No | text (50) | |
type | No | enum (home, work, other, main, billing, shipping, school) | |
is_primary | No | bool | |
old | No | bool | |
public | No | bool |
Permissions
One of the following roles is required to call this method:
- Staff
delete (organization)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/organizations/(organization)/addresses/(address)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "address",
"id": 800,
"deleted": true
}
Deletes an existing Address object.
HTTP Request
DELETE /organizations/(organization)/addresses/(address)
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:
- Staff
index (person)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/addresses" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "address",
"id": 801,
"owner_id": 12,
"owner_type": "person",
"street": "123 Street",
"city": "Seattle",
"state": "WA",
"postal": "89000",
"country": "US",
"type": "other",
"primary": false,
"old": false,
"public": true,
"synced_from": null,
"import_id": null,
"added_at": null,
"added_by_id": 20
}
],
"sandbox": true
}
Retrieves all Address objects tied to a specific Person.
HTTP Request
GET /people/(person)/addresses
Parameters
None
Permissions
One of the following roles is required to call this method:
- Staff
create (person)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/addresses" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"street": "222 Ash Court",
"city": "Prairie City",
"type": "home"
}' \
Example response:
{
"object": "address",
"id": 805,
"owner_id": 12,
"owner_type": "person",
"street": "222 Ash Court",
"city": "Prairie City",
"state": null,
"postal": null,
"country": null,
"type": "home",
"primary": false,
"old": false,
"public": false,
"synced_from": null,
"import_id": null,
"added_at": "2024-11-20T20:03:35+00:00",
"added_by_id": 22,
"sandbox": true
}
Creates a new Address object.
HTTP Request
POST /people/(person)/addresses
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
street | Yes | text (255) | |
city | Yes | text (50) | |
state | No | text (50) | |
postal | No | text (50) | |
country | No | text (50) | |
type | Yes | enum (home, work, other, main, billing, shipping, school) |
Permissions
One of the following roles is required to call this method:
- Staff
show (person)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/addresses/(address)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "address",
"id": 801,
"owner_id": 12,
"owner_type": "person",
"street": "123 Street",
"city": "Seattle",
"state": "WA",
"postal": "89000",
"country": "US",
"type": "other",
"primary": false,
"old": false,
"public": true,
"synced_from": null,
"import_id": null,
"added_at": null,
"added_by_id": 20,
"sandbox": true
}
Retrieves a specific Address object.
HTTP Request
GET /people/(person)/addresses/(address)
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:
- Staff
update (person)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/addresses/(address)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X PUT
-d '{
"street": "333 Fir Street",
"city": "Placeville",
"type": "home"
}' \
Example response:
{
"object": "address",
"id": 801,
"owner_id": 12,
"owner_type": "person",
"street": "333 Fir Street",
"city": "Placeville",
"state": "WA",
"postal": "89000",
"country": "US",
"type": "home",
"primary": true,
"old": false,
"public": true,
"synced_from": null,
"import_id": null,
"added_at": null,
"added_by_id": 20,
"sandbox": true
}
Updates an existing Address object.
HTTP Request
PUT /people/(person)/addresses/(address)
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
street | No | text (255) | |
city | No | text (50) | |
state | No | text (50) | |
postal | No | text (50) | |
country | No | text (50) | |
type | No | enum (home, work, other, main, billing, shipping, school) | |
is_primary | No | bool | |
old | No | bool | |
public | No | bool |
Permissions
One of the following roles is required to call this method:
- Staff
delete (person)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/addresses/(address)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "address",
"id": 801,
"deleted": true
}
Deletes an existing Address object.
HTTP Request
DELETE /people/(person)/addresses/(address)
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:
- Staff
Advisee
The Advisee object
The Advisee object looks like this in JSON:
{
"object": "student",
"id": 1,
"entrance_term_id": 8,
"exit_date": null,
"exit_reason": null,
"grades_withheld": false,
"meal_plan_id": 0,
"room_plan_id": 0,
"receives_1098t": true,
"loa_start_date": null,
"loa_end_date": null,
"proctored": false,
"first_time": false,
"max_enrolled_credits": null,
"max_enrolled_hours": null,
"max_audit_credits": null,
"max_audit_hours": null,
"student_type_campus": "enroll_audit",
"student_type_online": "enroll_audit",
"housing": null,
"advisor_ids": null,
"visible_student_id": "20020xx000",
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | No | int |
entrance_term_id | Yes | int |
exit_date | Yes | date |
exit_reason | Yes | int |
grades_withheld | Yes | bool |
meal_plan_id | No | int |
room_plan_id | No | int |
receives_1098t | Yes | bool |
loa_start_date | No | date |
loa_end_date | No | date |
proctored | No | bool |
first_time | Yes | bool |
max_enrolled_credits | No | decimal |
max_enrolled_hours | No | decimal |
max_audit_credits | No | decimal |
max_audit_hours | No | decimal |
student_type_campus | Yes | enum (enroll_audit, enroll, audit, none) |
student_type_online | Yes | enum (enroll_audit, enroll, audit, none) |
housing | No | enum (on_campus, with_parent, off_campus, on_campus_with_dependents) |
advisor_ids | No | Array of Person IDs |
visible_student_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/advisees" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"filter": {"0":{"logic":"ALL","fields":[{"name":"last_name","value":{"type":"CONTAINS","text":"blah"},"positive":1}]}}
}' \
Example response:
{
"object": "list",
"count": 2,
"results": 2,
"results_per_page": 200,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "student",
"id": 12,
"entrance_term_id": 0,
"exit_date": null,
"exit_reason": null,
"grades_withheld": false,
"meal_plan_id": 0,
"room_plan_id": 0,
"receives_1098t": true,
"loa_start_date": null,
"loa_end_date": null,
"proctored": false,
"first_time": false,
"max_enrolled_credits": null,
"max_enrolled_hours": null,
"max_audit_credits": null,
"max_audit_hours": null,
"student_type_campus": "enroll_audit",
"student_type_online": "enroll_audit",
"housing": null,
"visible_student_id": "20220xx002",
"report_data": {
"advisor_names": "Financial Admin~|~Academic Admin",
"advisor_types": "NOT_PRIMARY~|~HIDDEN",
"advisor_ids": "17,16",
"raw_advisor_names": "Financial Admin (Advisor), Academic Admin (Hidden Advisor)",
"current_user_is_advisor": null,
"firstname": "Taylor",
"preferred_name": "",
"lastname": "Forest",
"image_id": 0,
"last_attendance_date": null,
"registration_locked": 1,
"registration_locks": "Financial~|~3~|~4~|~*_*_*Registration~|~2~|~3~|~Needs academic counseling",
"discipline": null,
"color": null,
"entrance_term_name": null,
"row_id": 12
}
}
],
"sandbox": true
}
Retrieves all Advisee objects that match given filter conditions.
HTTP Request
GET /advisees
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. |
Filter Condition Parameters
These conditions can be used to narrow the results returned.
Name | Type |
---|---|
first_name | text |
preferred_name | text |
last_name | text |
program | program |
degree | degree |
specialization | specialization |
course_term | academic_term |
entrance_term | object id |
flag | choice |
last_attendance | DATE |
discipline | object id |
registration_lock | bool |
student_campus | campus |
custom_field | custom |
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Academic Admin
- Registrar
AidApplication
The AidApplication object
The AidApplication object looks like this in JSON:
{
"object": "aid_application",
"id": 6,
"student_id": 35,
"aid_year_id": 3,
"aid_classification_id": 6,
"auto_expand_award_dates": false,
"parental_data_missing": false,
"dependency": "independent",
"enrollment": "full_time",
"enrollment_intensity": false,
"program_months": 9,
"year_coa": 10000,
"program_coa": 10000,
"year_efc": 10000,
"program_efc": 10000,
"verification": "selected_by_college",
"verification_status": "in_progress",
"verification_group": null,
"verification_exempt_reason": null,
"status": "in_progress",
"assigned_to": 2921,
"student_agi": 0,
"parents_agi": 0,
"auto_zero_efc": false,
"fisap_total_income": null,
"legal_residence_state": null,
"housing": null,
"award_letter_layout_id": null,
"last_isir_id": null,
"last_isir_transaction_date": null,
"cod_student_level_code": null,
"cod_academic_year_start_date": null,
"cod_academic_year_end_date": null,
"cod_degree_id": null,
"cod_program_length": null,
"cod_program_length_units": null,
"cod_program_credential_level": null,
"cod_special_program": null,
"cod_weeks_programs_academic_year": null,
"cod_default_overpay_code": null,
"cod_student_eligibility_code": null,
"cod_ability_to_benefit_administrator_code": null,
"cod_ability_to_benefit_test_code": null,
"cod_ability_to_benefit_state_code": null,
"cod_ability_to_benefit_date": null,
"cod_program_cip_code": null,
"cod_additional_unsubsidized_eligibility": false,
"cod_additional_pell_eligibility": false,
"cod_campus_id": null,
"updated_on": null,
"added_at": "2011-05-04T23:15:23+00:00",
"added_by_id": 2921,
"updated_at": null,
"updated_by_id": 2011,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
student_id | No | int |
aid_year_id | No | int |
aid_classification_id | No | int |
auto_expand_award_dates | No | bool |
parental_data_missing | No | bool |
dependency | No | enum (dependent, independent) |
enrollment | Yes | enum (full_time, three_quarter_time, half_time, less_than_half_time) |
enrollment_intensity | No | bool |
program_months | No | int |
year_coa | Yes | decimal |
program_coa | Yes | decimal |
year_efc | Yes | decimal |
program_efc | Yes | decimal |
verification | No | enum (selected_by_college, selected_by_government) |
verification_status | No | enum (in_progress, completed, rejected, exempted) |
verification_group | No | text (200) |
verification_exempt_reason | No | text (1000) |
status | Yes | enum (setup, in_progress, completed, needs_attention, canceled, deleted) |
assigned_to | No | int |
student_agi | Yes | decimal |
parents_agi | Yes | decimal |
auto_zero_efc | No | bool |
fisap_total_income | No | decimal |
legal_residence_state | No | text (3) |
housing | No | enum (on_campus, with_parent, off_campus, on_campus_with_dependents) |
award_letter_layout_id | No | int |
last_isir_id | No | int |
last_isir_transaction_date | No | date |
cod_student_level_code | No | int |
cod_academic_year_start_date | No | date |
cod_academic_year_end_date | No | date |
cod_degree_id | No | int |
cod_program_length | No | decimal |
cod_program_length_units | No | enum (years, months, weeks) |
cod_program_credential_level | No | int |
cod_special_program | No | char |
cod_weeks_programs_academic_year | No | decimal |
cod_default_overpay_code | No | char |
cod_student_eligibility_code | No | char |
cod_ability_to_benefit_administrator_code | No | char |
cod_ability_to_benefit_test_code | No | char |
cod_ability_to_benefit_state_code | No | char |
cod_ability_to_benefit_date | No | date |
cod_program_cip_code | No | text (20) |
cod_additional_unsubsidized_eligibility | No | bool |
cod_additional_pell_eligibility | No | bool |
cod_campus_id | No | int |
updated_on | No | date |
added_at | No | datetime |
added_by_id | No | int |
updated_at | No | datetime |
updated_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/aidapplications" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"filter": {"0":{"logic":"ALL","fields":[{"name":"assigned_to","value":1,"positive":1}]}}
}' \
Example response:
{
"object": "list",
"count": 0,
"results": 0,
"results_per_page": 200,
"pages": 0,
"page": 0,
"offset": 0,
"has_more": false,
"data": [],
"sandbox": true
}
Retrieves all AidApplication objects that match given filter conditions.
HTTP Request
GET /aidapplications
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
aid_year_id | No | int | |
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
- components
- monthly_efcs
- questions
Filter Condition Parameters
These conditions can be used to narrow the results returned.
Name | Type |
---|---|
student | search |
status | enum |
verification_status | choice |
dependency | enum |
assigned_to | aidofficer |
updated | datetime |
classification | object id |
coa | decimal |
efc | decimal |
need | decimal |
completion | integer |
campus | campus |
aid_authorization | aidauthorization |
has_not_set_aid_authorization | aidauthorizationunset |
tag | tag |
custom_field | custom |
has_active_student_role | has_active_student_role |
Permissions
One of the following roles is required to call this method:
- Financial Admin
- Student Billing
- Financial Auditor
- Financial Aid
index (person)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/aidapplications" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "aid_application",
"id": 6,
"student_id": 35,
"aid_year_id": 3,
"aid_classification_id": 6,
"auto_expand_award_dates": false,
"parental_data_missing": false,
"dependency": "independent",
"enrollment": "full_time",
"enrollment_intensity": false,
"program_months": 9,
"year_coa": 10000,
"program_coa": 10000,
"year_efc": 10000,
"program_efc": 10000,
"verification": "selected_by_college",
"verification_status": "in_progress",
"verification_group": null,
"verification_exempt_reason": null,
"status": "in_progress",
"assigned_to": 2921,
"student_agi": 0,
"parents_agi": 0,
"auto_zero_efc": false,
"fisap_total_income": null,
"legal_residence_state": null,
"housing": null,
"award_letter_layout_id": null,
"last_isir_id": null,
"last_isir_transaction_date": null,
"cod_student_level_code": null,
"cod_academic_year_start_date": null,
"cod_academic_year_end_date": null,
"cod_degree_id": null,
"cod_program_length": null,
"cod_program_length_units": null,
"cod_program_credential_level": null,
"cod_special_program": null,
"cod_weeks_programs_academic_year": null,
"cod_default_overpay_code": null,
"cod_student_eligibility_code": null,
"cod_ability_to_benefit_administrator_code": null,
"cod_ability_to_benefit_test_code": null,
"cod_ability_to_benefit_state_code": null,
"cod_ability_to_benefit_date": null,
"cod_program_cip_code": null,
"cod_additional_unsubsidized_eligibility": false,
"cod_additional_pell_eligibility": false,
"cod_campus_id": null,
"updated_on": null,
"added_at": "2011-05-04T23:15:23+00:00",
"added_by_id": 2921,
"updated_at": null,
"updated_by_id": 2011
}
],
"sandbox": true
}
Retrieves all AidApplication objects tied to a specific Person.
HTTP Request
GET /people/(person)/aidapplications
Parameters
None
Expandable Properties
- components
- monthly_efcs
- questions
Permissions
One of the following roles is required to call this method:
- Staff
create
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/aidapplications" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"aid_year_id": 3,
"status": "setup",
"enrollment": "full_time"
}' \
Example response:
{
"object": "aid_application",
"id": 7,
"student_id": 12,
"aid_year_id": 3,
"aid_classification_id": null,
"auto_expand_award_dates": false,
"parental_data_missing": false,
"dependency": null,
"enrollment": "full_time",
"enrollment_intensity": false,
"program_months": null,
"year_coa": 0,
"program_coa": 0,
"year_efc": 0,
"program_efc": 0,
"verification": null,
"verification_status": null,
"verification_group": null,
"verification_exempt_reason": null,
"status": "setup",
"assigned_to": null,
"student_agi": 0,
"parents_agi": 0,
"auto_zero_efc": false,
"fisap_total_income": 0,
"legal_residence_state": null,
"housing": null,
"award_letter_layout_id": null,
"last_isir_id": null,
"last_isir_transaction_date": null,
"cod_student_level_code": null,
"cod_academic_year_start_date": null,
"cod_academic_year_end_date": null,
"cod_degree_id": 2,
"cod_program_length": null,
"cod_program_length_units": null,
"cod_program_credential_level": null,
"cod_special_program": null,
"cod_weeks_programs_academic_year": null,
"cod_default_overpay_code": null,
"cod_student_eligibility_code": null,
"cod_ability_to_benefit_administrator_code": null,
"cod_ability_to_benefit_test_code": null,
"cod_ability_to_benefit_state_code": null,
"cod_ability_to_benefit_date": null,
"cod_program_cip_code": null,
"cod_additional_unsubsidized_eligibility": false,
"cod_additional_pell_eligibility": false,
"cod_campus_id": null,
"updated_on": null,
"added_at": "2024-11-20T20:03:32+00:00",
"added_by_id": 22,
"updated_at": "2024-11-20T20:03:32+00:00",
"updated_by_id": 22,
"sandbox": true
}
Creates a new AidApplication object.
HTTP Request
POST /people/(person)/aidapplications
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
aid_year_id | Yes | int | |
status | Yes | enum (setup, in_progress, completed, needs_attention, canceled, deleted) | |
enrollment | Yes | enum (full_time, three_quarter_time, half_time, less_than_half_time) | |
assigned_to | No | int | |
dependency | No | enum (dependent, independent) | |
student_aid_class_id | No | int | |
program_months | No | int | |
year_coa | No | decimal | |
program_coa | No | decimal | |
year_efc | No | decimal | |
program_efc | No | decimal | |
student_agi | No | decimal | |
parents_agi | No | decimal | |
legal_residence_state | No | text (3) | |
verification | No | enum (selected_by_college, selected_by_government) | |
verification_status | No | enum (in_progress, completed, rejected, exempted) | |
verification_group | No | text (200) | |
auto_zero_efc | No | bool | |
fisap_total_income | No | decimal | |
housing | No | enum (on_campus, with_parent, off_campus, on_campus_with_dependents) | |
coa_breakout_field | No | array of CoaCateogry ids | |
award_letter_layout_id | No | int | |
cod_ability_to_benefit_date | No | date | |
cod_ability_to_benefit_administrator_code | No | char | |
cod_ability_to_benefit_test_code | No | char | |
cod_ability_to_benefit_state_code | No | char | |
cod_student_eligibility_code | No | char | |
cod_default_overpay_code | No | char | |
cod_special_program | No | char | |
cod_program_credential_level | No | int | |
cod_weeks_programs_academic_year | No | decimal | |
cod_program_length_units | No | enum (years, months, weeks) | |
cod_program_length | No | decimal | |
cod_academic_year_end_date | No | date | |
cod_academic_year_start_date | No | date | |
cod_student_level_code | No | int | |
cod_program_cip_code | No | text (20) |
Permissions
One of the following roles is required to call this method:
- Financial Aid
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/aidapplications/(aidapplication)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "aid_application",
"id": 6,
"student_id": 35,
"aid_year_id": 3,
"aid_classification_id": 6,
"auto_expand_award_dates": false,
"parental_data_missing": false,
"dependency": "independent",
"enrollment": "full_time",
"enrollment_intensity": false,
"program_months": 9,
"year_coa": 10000,
"program_coa": 10000,
"year_efc": 10000,
"program_efc": 10000,
"verification": "selected_by_college",
"verification_status": "in_progress",
"verification_group": null,
"verification_exempt_reason": null,
"status": "in_progress",
"assigned_to": 2921,
"student_agi": 0,
"parents_agi": 0,
"auto_zero_efc": false,
"fisap_total_income": null,
"legal_residence_state": null,
"housing": null,
"award_letter_layout_id": null,
"last_isir_id": null,
"last_isir_transaction_date": null,
"cod_student_level_code": null,
"cod_academic_year_start_date": null,
"cod_academic_year_end_date": null,
"cod_degree_id": null,
"cod_program_length": null,
"cod_program_length_units": null,
"cod_program_credential_level": null,
"cod_special_program": null,
"cod_weeks_programs_academic_year": null,
"cod_default_overpay_code": null,
"cod_student_eligibility_code": null,
"cod_ability_to_benefit_administrator_code": null,
"cod_ability_to_benefit_test_code": null,
"cod_ability_to_benefit_state_code": null,
"cod_ability_to_benefit_date": null,
"cod_program_cip_code": null,
"cod_additional_unsubsidized_eligibility": false,
"cod_additional_pell_eligibility": false,
"cod_campus_id": null,
"updated_on": null,
"added_at": "2011-05-04T23:15:23+00:00",
"added_by_id": 2921,
"updated_at": null,
"updated_by_id": 2011,
"sandbox": true
}
Retrieves a specific AidApplication object.
HTTP Request
GET /people/(person)/aidapplications/(aidapplication)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- components
- monthly_efcs
- questions
Permissions
One of the following roles is required to call this method:
- Financial Auditor
- Financial Aid
update
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/aidapplications/(aidapplication)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X PUT
-d '{
"status": "completed",
"enrollment": "half_time"
}' \
Example response:
{
"object": "aid_application",
"id": 7,
"student_id": 12,
"aid_year_id": 3,
"aid_classification_id": null,
"auto_expand_award_dates": false,
"parental_data_missing": false,
"dependency": null,
"enrollment": "half_time",
"enrollment_intensity": false,
"program_months": null,
"year_coa": 0,
"program_coa": 0,
"year_efc": 0,
"program_efc": 0,
"verification": null,
"verification_status": null,
"verification_group": null,
"verification_exempt_reason": null,
"status": "completed",
"assigned_to": null,
"student_agi": 0,
"parents_agi": 0,
"auto_zero_efc": false,
"fisap_total_income": 0,
"legal_residence_state": null,
"housing": null,
"award_letter_layout_id": null,
"last_isir_id": null,
"last_isir_transaction_date": null,
"cod_student_level_code": null,
"cod_academic_year_start_date": null,
"cod_academic_year_end_date": null,
"cod_degree_id": 2,
"cod_program_length": null,
"cod_program_length_units": null,
"cod_program_credential_level": null,
"cod_special_program": null,
"cod_weeks_programs_academic_year": null,
"cod_default_overpay_code": null,
"cod_student_eligibility_code": null,
"cod_ability_to_benefit_administrator_code": null,
"cod_ability_to_benefit_test_code": null,
"cod_ability_to_benefit_state_code": null,
"cod_ability_to_benefit_date": null,
"cod_program_cip_code": null,
"cod_additional_unsubsidized_eligibility": false,
"cod_additional_pell_eligibility": false,
"cod_campus_id": null,
"updated_on": null,
"added_at": "2024-11-20T12:03:32+00:00",
"added_by_id": 22,
"updated_at": "2024-11-20T12:03:32+00:00",
"updated_by_id": 22,
"sandbox": true
}
Updates an existing AidApplication object.
HTTP Request
PUT /people/(person)/aidapplications/(aidapplication)
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
status | Yes | enum (setup, in_progress, completed, needs_attention, canceled, deleted) | |
enrollment | Yes | enum (full_time, three_quarter_time, half_time, less_than_half_time) | |
assigned_to | No | int | |
dependency | No | enum (dependent, independent) | |
student_aid_class_id | No | int | |
program_months | No | int | |
year_coa | No | decimal | |
program_coa | No | decimal | |
year_efc | No | decimal | |
program_efc | No | decimal | |
student_agi | No | decimal | |
parents_agi | No | decimal | |
legal_residence_state | No | text (3) | |
verification | No | enum (selected_by_college, selected_by_government) | |
verification_status | No | enum (in_progress, completed, rejected, exempted) | |
verification_group | No | text (200) | |
auto_zero_efc | No | bool | |
fisap_total_income | No | decimal | |
housing | No | enum (on_campus, with_parent, off_campus, on_campus_with_dependents) | |
coa_breakout_field | No | array of CoaCateogry ids | |
award_letter_layout_id | No | int | |
cod_ability_to_benefit_date | No | date | |
cod_ability_to_benefit_administrator_code | No | char | |
cod_ability_to_benefit_test_code | No | char | |
cod_ability_to_benefit_state_code | No | char | |
cod_student_eligibility_code | No | char | |
cod_default_overpay_code | No | char | |
cod_special_program | No | char | |
cod_program_credential_level | No | int | |
cod_weeks_programs_academic_year | No | decimal | |
cod_program_length_units | No | enum (years, months, weeks) | |
cod_program_length | No | decimal | |
cod_academic_year_end_date | No | date | |
cod_academic_year_start_date | No | date | |
cod_student_level_code | No | int | |
cod_program_cip_code | No | text (20) |
Permissions
One of the following roles is required to call this method:
- Financial Aid
delete
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/aidapplications/(aidapplication)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "aid_application",
"id": 7,
"deleted": true
}
Deletes an existing AidApplication object.
HTTP Request
DELETE /people/(person)/aidapplications/(aidapplication)
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:
- Financial Aid
AidAuthorization
The AidAuthorization object
The AidAuthorization object looks like this in JSON:
{
"object": "aid_authorization",
"id": 1,
"name": "EXCESS_AID",
"description": "Student gives permission to use federal aid to non-aid-applicable charges.",
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
name | Yes | text (255) |
description | Yes | text (5000) |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/aidauthorizations" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 2,
"results": 2,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "aid_authorization",
"id": 1,
"name": "EXCESS_AID",
"description": "Student gives permission to use federal aid to non-aid-applicable charges."
}
],
"sandbox": true
}
Retrieves all AidAuthorization objects.
HTTP Request
GET /aidauthorizations
Parameters
None
Permissions
One of the following roles is required to call this method:
- Financial Aid
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/aidauthorizations/(aidauthorization)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "aid_authorization",
"id": 1,
"name": "EXCESS_AID",
"description": "Student gives permission to use federal aid to non-aid-applicable charges.",
"sandbox": true
}
Retrieves a specific AidAuthorization object.
HTTP Request
GET /aidauthorizations/(aidauthorization)
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:
- Financial Aid
AidAward
The AidAward object
The AidAward object looks like this in JSON:
{
"object": "aid_award",
"id": 6,
"student_id": 1,
"aid_year_id": 1,
"aid_type_id": 1,
"sequence_number": 1,
"original_accepted_amount": 1000,
"award_limit": 1000,
"max_amount": 1000,
"net_amount": 1000,
"multiplier": null,
"auto_calc_percent_amount": false,
"fee_percent": null,
"status": "accepted",
"loan_booked_on": null,
"loan_payment_to_servicer_amount": 0,
"loan_payment_to_servicer_date": null,
"plus_loan_has_endorser": false,
"plus_loan_endorser_amount": null,
"plus_loan_credit_requirements_met": false,
"loan_booked_cod_response_id": null,
"year_coa": null,
"cod_id": null,
"cod_amount": 0,
"cod_origination_fee_percent": null,
"cod_start_date": null,
"cod_end_date": null,
"cod_student_level_code": null,
"cod_academic_year_start_date": null,
"cod_academic_year_end_date": null,
"cod_program_length": null,
"cod_program_length_units": null,
"cod_program_credential_level": null,
"cod_special_program": null,
"cod_weeks_programs_academic_year": null,
"cod_program_cip_code": null,
"cod_plus_application_id": null,
"cod_borrower_id": null,
"refunds_go_to": "student",
"cod_most_recent_response_id": null,
"cod_status": null,
"cod_sync_logic": "automatic",
"cod_syncable": true,
"cod_syncable_errors": null,
"cod_needs_sync": true,
"cod_originated": false,
"external_id": null,
"esign_by_student_at": null,
"esign_by_student_ip": null,
"work_study_hours_per_week": null,
"added_at": "2015-09-08T07:53:22+00:00",
"added_by_id": 11,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
student_id | No | int |
aid_year_id | Yes | int |
aid_type_id | Yes | int |
sequence_number | Yes | int |
original_accepted_amount | Yes | decimal |
award_limit | Yes | decimal |
max_amount | Yes | decimal |
net_amount | Yes | decimal |
multiplier | No | decimal |
auto_calc_percent_amount | Yes | bool |
fee_percent | No | decimal |
status | Yes | enum (setup, offered, accepted, declined, canceled, deleted) |
loan_booked_on | No | date |
loan_payment_to_servicer_amount | Yes | decimal |
loan_payment_to_servicer_date | No | date |
plus_loan_has_endorser | No | bool |
plus_loan_endorser_amount | No | decimal |
plus_loan_credit_requirements_met | Yes | bool |
loan_booked_cod_response_id | No | int |
year_coa | No | decimal |
cod_id | No | text (200) |
cod_amount | Yes | decimal |
cod_origination_fee_percent | No | decimal |
cod_start_date | No | date |
cod_end_date | No | date |
cod_student_level_code | No | int |
cod_academic_year_start_date | No | date |
cod_academic_year_end_date | No | date |
cod_program_length | No | decimal |
cod_program_length_units | No | enum (years, months, weeks) |
cod_program_credential_level | No | int |
cod_special_program | No | char |
cod_weeks_programs_academic_year | No | decimal |
cod_program_cip_code | No | text (20) |
cod_plus_application_id | No | int |
cod_borrower_id | No | int |
refunds_go_to | Yes | enum (student, borrower) |
cod_most_recent_response_id | No | int |
cod_status | No | enum (pending, accepted, rejected, corrected) |
cod_sync_logic | Yes | enum (manual, automatic) |
cod_syncable | Yes | bool |
cod_syncable_errors | No | text |
cod_needs_sync | Yes | bool |
cod_originated | Yes | bool |
external_id | No | text (50) |
esign_by_student_at | No | datetime |
esign_by_student_ip | No | text (60) |
work_study_hours_per_week | No | decimal |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/aidawards" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"filter": {"0":{"logic":"ALL","fields":[{"name":"net_amount","value":{"type":"RANGE","start":"10.5","end":"900.15"},"positive":1}]}}
}' \
Example response:
{
"object": "list",
"count": 5,
"results": 5,
"results_per_page": 200,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "aid_award",
"id": 8,
"student_id": 16,
"aid_year_id": 1,
"aid_type_id": 9,
"sequence_number": 1,
"original_accepted_amount": 4000,
"award_limit": 4000,
"max_amount": 4000,
"net_amount": 4000,
"multiplier": null,
"auto_calc_percent_amount": false,
"fee_percent": null,
"status": "accepted",
"loan_booked_on": null,
"loan_payment_to_servicer_amount": 0,
"loan_payment_to_servicer_date": null,
"plus_loan_has_endorser": false,
"plus_loan_endorser_amount": null,
"plus_loan_credit_requirements_met": false,
"loan_booked_cod_response_id": null,
"year_coa": null,
"cod_id": null,
"cod_amount": 0,
"cod_origination_fee_percent": null,
"cod_start_date": null,
"cod_end_date": null,
"cod_student_level_code": null,
"cod_academic_year_start_date": null,
"cod_academic_year_end_date": null,
"cod_program_length": null,
"cod_program_length_units": null,
"cod_program_credential_level": null,
"cod_special_program": null,
"cod_weeks_programs_academic_year": null,
"cod_program_cip_code": null,
"cod_plus_application_id": null,
"cod_borrower_id": null,
"refunds_go_to": "student",
"cod_most_recent_response_id": null,
"cod_status": null,
"cod_sync_logic": "automatic",
"cod_syncable": true,
"cod_syncable_errors": null,
"cod_needs_sync": true,
"cod_originated": false,
"external_id": null,
"esign_by_student_at": null,
"esign_by_student_ip": null,
"work_study_hours_per_week": null,
"added_at": "2015-09-09T07:53:22+00:00",
"added_by_id": 11,
"report_data": {
"person_id": 16,
"aid_name": "Institutional Grant",
"aid_abbrv": "INST",
"financial_aid_type": "GRANT",
"is_scholarship": 0,
"aid_source": "INSTITUTION",
"firstname": "Academic",
"lastname": "Admin",
"amount_scheduled": "440.70",
"amount_disbursed": "0.00",
"row_id": 8
}
}
],
"sandbox": true
}
Retrieves all AidAward objects that match given filter conditions.
HTTP Request
GET /aidawards
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
- aid_year
- aid_type
- aid_disbursements
Filter Condition Parameters
These conditions can be used to narrow the results returned.
Name | Type |
---|---|
aid_accepted_by_student | bool |
aid_amount | decimal |
aid_authorization | aidauthorization |
aid_year | baseobject id |
award | object id |
award_percent | percent |
campus | campus |
classification | object id |
custom_field | custom |
disbursed | decimal |
has_active_student_role | has_active_student_role |
net_amount | decimal |
setup_scheduled | decimal |
source | choice |
status | enum |
student | search |
student_decision | date |
tag | tag |
type | awardtype |
unapplied_scheduled_aid | bool |
Permissions
One of the following roles is required to call this method:
- Financial Aid
index_by_student
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/aidawards/" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "aid_award",
"id": 10,
"student_id": 12,
"aid_year_id": 1,
"aid_type_id": 9,
"sequence_number": 2,
"original_accepted_amount": 4000,
"award_limit": 4000,
"max_amount": 4000,
"net_amount": 4000,
"multiplier": null,
"auto_calc_percent_amount": false,
"fee_percent": null,
"status": "accepted",
"loan_booked_on": null,
"loan_payment_to_servicer_amount": 0,
"loan_payment_to_servicer_date": null,
"plus_loan_has_endorser": false,
"plus_loan_endorser_amount": null,
"plus_loan_credit_requirements_met": false,
"loan_booked_cod_response_id": null,
"year_coa": null,
"cod_id": null,
"cod_amount": 0,
"cod_origination_fee_percent": null,
"cod_start_date": null,
"cod_end_date": null,
"cod_student_level_code": null,
"cod_academic_year_start_date": null,
"cod_academic_year_end_date": null,
"cod_program_length": null,
"cod_program_length_units": null,
"cod_program_credential_level": null,
"cod_special_program": null,
"cod_weeks_programs_academic_year": null,
"cod_program_cip_code": null,
"cod_plus_application_id": null,
"cod_borrower_id": null,
"refunds_go_to": "student",
"cod_most_recent_response_id": null,
"cod_status": null,
"cod_sync_logic": "automatic",
"cod_syncable": true,
"cod_syncable_errors": null,
"cod_needs_sync": true,
"cod_originated": false,
"external_id": null,
"esign_by_student_at": null,
"esign_by_student_ip": null,
"work_study_hours_per_week": null,
"added_at": "2015-09-09T07:53:22+00:00",
"added_by_id": 11
}
],
"sandbox": true
}
HTTP Request
GET /people/(person)/aidawards/
Parameters
None
Permissions
One of the following roles is required to call this method:
- Financial Aid
create
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/aidawards" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"aid_year_id": 3,
"aid_type_id": 1,
"status": "offered",
"amount": 2000,
"net_amount": 1950.45
}' \
Example response:
{
"object": "aid_award",
"id": 11,
"student_id": 12,
"aid_year_id": 3,
"aid_type_id": 1,
"sequence_number": 1,
"original_accepted_amount": 1950.45,
"award_limit": 2000,
"max_amount": 2000,
"net_amount": 1950.45,
"multiplier": null,
"auto_calc_percent_amount": false,
"fee_percent": null,
"status": "offered",
"loan_booked_on": null,
"loan_payment_to_servicer_amount": 0,
"loan_payment_to_servicer_date": null,
"plus_loan_has_endorser": false,
"plus_loan_endorser_amount": null,
"plus_loan_credit_requirements_met": false,
"loan_booked_cod_response_id": null,
"year_coa": null,
"cod_id": null,
"cod_amount": 2000,
"cod_origination_fee_percent": null,
"cod_start_date": null,
"cod_end_date": null,
"cod_student_level_code": null,
"cod_academic_year_start_date": null,
"cod_academic_year_end_date": null,
"cod_program_length": null,
"cod_program_length_units": null,
"cod_program_credential_level": null,
"cod_special_program": null,
"cod_weeks_programs_academic_year": null,
"cod_program_cip_code": null,
"cod_plus_application_id": null,
"cod_borrower_id": null,
"refunds_go_to": "student",
"cod_most_recent_response_id": null,
"cod_status": null,
"cod_sync_logic": "automatic",
"cod_syncable": false,
"cod_syncable_errors": "[\"Award must be Accepted or Canceled in order to sync to COD.\",\"Student does not have a valid SSN (9 numeric digits).\",\"Your institution doesn't have an OPE ID entered in financial aid settings.\",\"No ISIR for this student for this aid year.\",\"No birth date for this student.\",\"No COD student eligibility code for this student (High School Diploma, etc).\",\"Dependency status must be set to Dependent or Independent on this student's aid application.\",\"No COD program length set for this student.\",\"No COD program credential level for this student.\",\"No CIP code.\"]",
"cod_needs_sync": true,
"cod_originated": false,
"external_id": null,
"esign_by_student_at": null,
"esign_by_student_ip": null,
"work_study_hours_per_week": null,
"added_at": "2024-11-20T20:03:35+00:00",
"added_by_id": 22,
"sandbox": true
}
Creates a new AidAward object.
HTTP Request
POST /people/(person)/aidawards
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
aid_year_id | Yes | int | |
aid_type_id | Yes | int | |
status | Yes | enum (setup, offered, accepted, declined, canceled, deleted) | |
amount | Yes | decimal | |
net_amount | Yes | decimal | |
max_amount | No | decimal |
Permissions
One of the following roles is required to call this method:
- Financial Aid
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/aidawards/(aidaward)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "aid_award",
"id": 8,
"student_id": 16,
"aid_year_id": 1,
"aid_type_id": 9,
"sequence_number": 1,
"original_accepted_amount": 4000,
"award_limit": 4000,
"max_amount": 4000,
"net_amount": 4000,
"multiplier": null,
"auto_calc_percent_amount": false,
"fee_percent": null,
"status": "accepted",
"loan_booked_on": null,
"loan_payment_to_servicer_amount": 0,
"loan_payment_to_servicer_date": null,
"plus_loan_has_endorser": false,
"plus_loan_endorser_amount": null,
"plus_loan_credit_requirements_met": false,
"loan_booked_cod_response_id": null,
"year_coa": null,
"cod_id": null,
"cod_amount": 0,
"cod_origination_fee_percent": null,
"cod_start_date": null,
"cod_end_date": null,
"cod_student_level_code": null,
"cod_academic_year_start_date": null,
"cod_academic_year_end_date": null,
"cod_program_length": null,
"cod_program_length_units": null,
"cod_program_credential_level": null,
"cod_special_program": null,
"cod_weeks_programs_academic_year": null,
"cod_program_cip_code": null,
"cod_plus_application_id": null,
"cod_borrower_id": null,
"refunds_go_to": "student",
"cod_most_recent_response_id": null,
"cod_status": null,
"cod_sync_logic": "automatic",
"cod_syncable": true,
"cod_syncable_errors": null,
"cod_needs_sync": true,
"cod_originated": false,
"external_id": null,
"esign_by_student_at": null,
"esign_by_student_ip": null,
"work_study_hours_per_week": null,
"aid_year": {
"object": "aid_year",
"id": 1,
"name": "2010-2011",
"start_date": "2010-07-01",
"end_date": "2011-06-30"
},
"aid_type": {
"object": "aid_type",
"id": 9,
"startyear": 1,
"endyear": 0,
"name": "Institutional Grant",
"abbrv": "INST",
"cod_abbrv": "NULL",
"title_iv": false,
"type": "grant",
"is_scholarship": false,
"source": "institution",
"multiplier": null,
"federal_aid_id": null,
"need_based": true,
"count_against_need": true,
"report_on_1098t": true,
"non_eligible_fee_aid": false,
"count_as_tuition_discount": false,
"counts_as_efa": true,
"only_allow_whole_dollar_amounts": false,
"allow_partial_acceptance": false,
"require_enrollment_verification": false,
"status": "active",
"veterans_benefits": false,
"external_id": null
},
"aid_disbursements": [
{
"object": "aid_disbursement",
"id": 15,
"academic_term_id": 8,
"student_id": 16,
"aid_id": 9,
"aid_award_id": 8,
"type": "disbursement",
"status": "scheduled",
"amount": 440.7,
"gross_amount": 440.7,
"max_amount": 0,
"multiplier": null,
"scheduled_date": "2023-02-16",
"posted_date": null,
"status_date": "2023-02-16",
"payment_id": null,
"refund_id": null,
"transaction_id": null,
"disbursement_number": true,
"sequence_number": false,
"enrollment_status": null,
"enrollment_intensity": false,
"enrollment_verified": false,
"enrollment_verified_by_id": null,
"enrollment_verified_at": null,
"cod_status": null,
"cod_amount": 0,
"cod_originated": false,
"cod_net_amount": 0,
"cod_released": false,
"cod_needs_sync": true,
"cod_program_cip_code": null,
"cod_payment_period_start_date": null,
"external_id": null,
"email_message_id": null,
"added_at": null,
"added_by_id": null
}
],
"added_at": "2015-09-09T07:53:22+00:00",
"added_by_id": 11,
"sandbox": true
}
Retrieves a specific AidAward object.
HTTP Request
GET /people/(person)/aidawards/(aidaward)
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:
- Financial Aid
update
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/aidawards/(aidaward)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X PUT
Example response:
{
"object": "aid_award",
"id": 8,
"student_id": 16,
"aid_year_id": 1,
"aid_type_id": 9,
"sequence_number": 1,
"original_accepted_amount": 0,
"award_limit": 4000,
"max_amount": 4000,
"net_amount": 4000,
"multiplier": null,
"auto_calc_percent_amount": false,
"fee_percent": null,
"status": "accepted",
"loan_booked_on": null,
"loan_payment_to_servicer_amount": 0,
"loan_payment_to_servicer_date": null,
"plus_loan_has_endorser": false,
"plus_loan_endorser_amount": null,
"plus_loan_credit_requirements_met": false,
"loan_booked_cod_response_id": null,
"year_coa": null,
"cod_id": null,
"cod_amount": 0,
"cod_origination_fee_percent": null,
"cod_start_date": null,
"cod_end_date": null,
"cod_student_level_code": null,
"cod_academic_year_start_date": null,
"cod_academic_year_end_date": null,
"cod_program_length": null,
"cod_program_length_units": null,
"cod_program_credential_level": null,
"cod_special_program": null,
"cod_weeks_programs_academic_year": null,
"cod_program_cip_code": null,
"cod_plus_application_id": null,
"cod_borrower_id": null,
"refunds_go_to": "student",
"cod_most_recent_response_id": null,
"cod_status": null,
"cod_sync_logic": "automatic",
"cod_syncable": false,
"cod_syncable_errors": "[\"Student does not have a valid SSN (9 numeric digits).\",\"No address found for this student.\",\"Your institution doesn't have an OPE ID entered in financial aid settings.\",\"No aid application for this student for this aid year.\",\"No birth date for this student.\",\"Dependency status must be set to Dependent or Independent on this student's aid application.\",\"No COD program length set for this student.\",\"No COD program credential level for this student.\",\"Feb 16, 2023 disbursement in \\\"Spring 2010 2009-2010\\\" has an invalid sequence number.\",\"No CIP code.\"]",
"cod_needs_sync": true,
"cod_originated": false,
"external_id": null,
"esign_by_student_at": null,
"esign_by_student_ip": null,
"work_study_hours_per_week": null,
"added_at": "2015-09-09T00:53:22+00:00",
"added_by_id": 11,
"sandbox": true
}
Updates an existing AidAward object.
HTTP Request
PUT /people/(person)/aidawards/(aidaward)
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
status | No | enum (setup, offered, accepted, declined, canceled, deleted) | |
amount | No | decimal | |
net_amount | No | decimal | |
max_amount | No | decimal |
Permissions
One of the following roles is required to call this method:
- Financial Aid
delete
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/aidawards/(aidaward)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "aid_award",
"id": 9,
"deleted": true
}
Deletes an existing AidAward object.
HTTP Request
DELETE /people/(person)/aidawards/(aidaward)
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:
- Financial Aid
AidClassification
The AidClassification object
The AidClassification object looks like this in JSON:
{
"object": "aid_classification",
"id": 6,
"name": "Arc Welding",
"year_coa_on_campus": 900,
"year_coa_off_campus": null,
"year_coa_off_campus_with_parents": 900,
"program_coa_on_campus": 900,
"program_coa_off_campus": null,
"program_coa_off_campus_with_parents": null,
"enrollment": "full_time",
"months": 9,
"auto_expand_award_dates": false,
"status": "active",
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
name | Yes | text (100) |
year_coa_on_campus | No | decimal |
year_coa_off_campus | No | decimal |
year_coa_off_campus_with_parents | No | decimal |
program_coa_on_campus | No | decimal |
program_coa_off_campus | No | decimal |
program_coa_off_campus_with_parents | No | decimal |
enrollment | No | enum (full_time, three_quarter_time, half_time, less_than_half_time) |
months | No | int |
auto_expand_award_dates | No | bool |
status | Yes | enum (active, retired) |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/aidclassifications" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "aid_classification",
"id": 6,
"name": "Arc Welding",
"year_coa_on_campus": 900,
"year_coa_off_campus": null,
"year_coa_off_campus_with_parents": 900,
"program_coa_on_campus": 900,
"program_coa_off_campus": null,
"program_coa_off_campus_with_parents": null,
"enrollment": "full_time",
"months": 9,
"auto_expand_award_dates": false,
"status": "active"
}
],
"sandbox": true
}
Retrieves all AidClassification objects.
HTTP Request
GET /aidclassifications
Parameters
None
Permissions
One of the following roles is required to call this method:
- Student Billing
- Financial Admin
- Financial Auditor
- Financial Aid
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/aidclassifications/(aidclassification)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "aid_classification",
"id": 6,
"name": "Arc Welding",
"year_coa_on_campus": 900,
"year_coa_off_campus": null,
"year_coa_off_campus_with_parents": 900,
"program_coa_on_campus": 900,
"program_coa_off_campus": null,
"program_coa_off_campus_with_parents": null,
"enrollment": "full_time",
"months": 9,
"auto_expand_award_dates": false,
"status": "active",
"sandbox": true
}
Retrieves a specific AidClassification object.
HTTP Request
GET /aidclassifications/(aidclassification)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- coa_categories
Permissions
One of the following roles is required to call this method:
- Financial Aid
AidDisbursement
The AidDisbursement object
The AidDisbursement object looks like this in JSON:
{
"object": "aid_disbursement",
"id": 6,
"academic_term_id": 8,
"student_id": 1,
"aid_id": 9,
"aid_award_id": 7,
"type": "disbursement",
"status": "scheduled",
"amount": 430.7,
"gross_amount": 430.7,
"max_amount": 0,
"multiplier": null,
"scheduled_date": "2023-02-14",
"posted_date": null,
"status_date": "2023-02-14",
"payment_id": null,
"refund_id": null,
"transaction_id": null,
"disbursement_number": true,
"sequence_number": false,
"enrollment_status": null,
"enrollment_intensity": false,
"enrollment_verified": false,
"enrollment_verified_by_id": null,
"enrollment_verified_at": null,
"cod_status": null,
"cod_amount": 0,
"cod_originated": false,
"cod_net_amount": 0,
"cod_released": false,
"cod_needs_sync": true,
"cod_program_cip_code": null,
"cod_payment_period_start_date": null,
"external_id": null,
"email_message_id": null,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
academic_term_id | No | int |
student_id | Yes | int |
aid_id | Yes | int |
aid_award_id | No | int |
type | Yes | enum (disbursement, refund_to_student, refund_to_source) |
status | Yes | enum (setup, scheduled, posted, deleted, void) |
amount | Yes | decimal |
gross_amount | Yes | decimal |
max_amount | Yes | decimal |
multiplier | No | decimal |
scheduled_date | No | date |
posted_date | No | date |
status_date | No | date |
payment_id | No | int |
refund_id | No | int |
transaction_id | No | int |
disbursement_number | Yes | bool |
sequence_number | No | bool |
enrollment_status | No | enum (full_time, three_quarter_time, half_time, less_than_half_time) |
enrollment_intensity | No | bool |
enrollment_verified | Yes | bool |
enrollment_verified_by_id | No | int |
enrollment_verified_at | No | datetime |
cod_status | No | enum (pending, accepted, rejected, corrected) |
cod_amount | Yes | decimal |
cod_originated | Yes | bool |
cod_net_amount | Yes | decimal |
cod_released | Yes | bool |
cod_needs_sync | Yes | bool |
cod_program_cip_code | No | text (20) |
cod_payment_period_start_date | No | date |
external_id | No | text (50) |
email_message_id | No | int |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/aiddisbursements" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"filter": {"0":{"logic":"ALL","fields":[{"name":"date","value":{"type":"RANGE","start":"2021-01-01","end":"2022-03-17"},"positive":1}]}}
}' \
Example response:
{
"object": "list",
"count": 9,
"results": 9,
"results_per_page": 200,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "aid_disbursement",
"id": 8,
"academic_term_id": 8,
"student_id": 16,
"aid_id": 9,
"aid_award_id": 7,
"type": "disbursement",
"status": "scheduled",
"amount": 430.7,
"gross_amount": 430.7,
"max_amount": 0,
"multiplier": null,
"scheduled_date": "2023-02-14",
"posted_date": null,
"status_date": "2023-02-14",
"payment_id": null,
"refund_id": null,
"transaction_id": null,
"disbursement_number": true,
"sequence_number": false,
"enrollment_status": null,
"enrollment_intensity": false,
"enrollment_verified": false,
"enrollment_verified_by_id": null,
"enrollment_verified_at": null,
"cod_status": null,
"cod_amount": 0,
"cod_originated": false,
"cod_net_amount": 0,
"cod_released": false,
"cod_needs_sync": true,
"cod_program_cip_code": null,
"cod_payment_period_start_date": null,
"external_id": null,
"email_message_id": null,
"added_at": null,
"added_by_id": null,
"report_data": {
"firstname": "Academic",
"lastname": "Admin",
"display_name": "Academic Admin",
"aid_name": "Institutional Grant",
"aid_type": "GRANT",
"is_scholarship": 0,
"aid_source": "INSTITUTION",
"aid_abbrv": "INST",
"require_enrollment_verification": 0,
"term_name": "Spring 2010 2009-2010",
"aid_year_id": 1,
"aid_year_name": "2010-2011",
"row_id": 8
}
}
],
"sandbox": true
}
Retrieves all AidDisbursement objects that match given filter conditions.
HTTP Request
GET /aiddisbursements
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
- allocated
Filter Condition Parameters
These conditions can be used to narrow the results returned.
Name | Type |
---|---|
date | date |
student | search |
type | awardtype |
disbursement_type | enum |
award | object id |
percent_award | bool |
status | enum |
aid_year | baseobject id |
academic_term | academic_term |
amount | decimal |
source | choice |
campus | campus |
classification | object id |
enrollment_verified | bool |
cod_status | enum |
tag | tag |
disbursement_batch_number | integer |
student_has_courses | bool |
unapplied_scheduled_aid | bool |
custom_field | custom |
added_at | datetime |
Permissions
One of the following roles is required to call this method:
- Financial Admin
- Financial Auditor
- Student Billing
- Financial Aid
index_by_award
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/aidawards/(aidaward)/disbursements" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "aid_disbursement",
"id": 15,
"academic_term_id": 8,
"student_id": 16,
"aid_id": 9,
"aid_award_id": 8,
"type": "disbursement",
"status": "scheduled",
"amount": 440.7,
"gross_amount": 440.7,
"max_amount": 0,
"multiplier": null,
"scheduled_date": "2023-02-16",
"posted_date": null,
"status_date": "2023-02-16",
"payment_id": null,
"refund_id": null,
"transaction_id": null,
"disbursement_number": true,
"sequence_number": false,
"enrollment_status": null,
"enrollment_intensity": false,
"enrollment_verified": false,
"enrollment_verified_by_id": null,
"enrollment_verified_at": null,
"cod_status": null,
"cod_amount": 0,
"cod_originated": false,
"cod_net_amount": 0,
"cod_released": false,
"cod_needs_sync": true,
"cod_program_cip_code": null,
"cod_payment_period_start_date": null,
"external_id": null,
"email_message_id": null,
"added_at": null,
"added_by_id": null
}
],
"sandbox": true
}
HTTP Request
GET /people/(person)/aidawards/(aidaward)/disbursements
Parameters
None
Permissions
One of the following roles is required to call this method:
- Financial Aid
create (disbursement)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/aidawards/(aidaward)/disbursements" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"scheduled_date": "2022-10-20",
"academic_term_id": 8,
"amount": 650
}' \
Example response:
{
"object": "aid_disbursement",
"id": 16,
"academic_term_id": 8,
"student_id": 16,
"aid_id": 9,
"aid_award_id": 8,
"type": "disbursement",
"status": "scheduled",
"amount": 650,
"gross_amount": 650,
"max_amount": 0,
"multiplier": null,
"scheduled_date": "2022-10-20",
"posted_date": null,
"status_date": "2022-10-20",
"payment_id": null,
"refund_id": null,
"transaction_id": null,
"disbursement_number": true,
"sequence_number": true,
"enrollment_status": null,
"enrollment_intensity": false,
"enrollment_verified": false,
"enrollment_verified_by_id": null,
"enrollment_verified_at": null,
"cod_status": null,
"cod_amount": 650,
"cod_originated": false,
"cod_net_amount": 650,
"cod_released": false,
"cod_needs_sync": true,
"cod_program_cip_code": null,
"cod_payment_period_start_date": null,
"external_id": null,
"email_message_id": null,
"added_at": "2024-11-20T20:03:35+00:00",
"added_by_id": 22,
"sandbox": true
}
Creates a new AidDisbursement object.
HTTP Request
POST /people/(person)/aidawards/(aidaward)/disbursements
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
scheduled_date | Yes | date | |
academic_term_id | Yes | int | |
amount | Yes | decimal | |
gross_amount | No | decimal |
Permissions
One of the following roles is required to call this method:
- Financial Aid
show (disbursement)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/aidawards/(aidaward)/disbursements/(aiddisbursement)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "aid_disbursement",
"id": 8,
"academic_term_id": 8,
"student_id": 16,
"aid_id": 9,
"aid_award_id": 7,
"type": "disbursement",
"status": "scheduled",
"amount": 430.7,
"gross_amount": 430.7,
"max_amount": 0,
"multiplier": null,
"scheduled_date": "2023-02-14",
"posted_date": null,
"status_date": "2023-02-14",
"payment_id": null,
"refund_id": null,
"transaction_id": null,
"disbursement_number": true,
"sequence_number": false,
"enrollment_status": null,
"enrollment_intensity": false,
"enrollment_verified": false,
"enrollment_verified_by_id": null,
"enrollment_verified_at": null,
"cod_status": null,
"cod_amount": 0,
"cod_originated": false,
"cod_net_amount": 0,
"cod_released": false,
"cod_needs_sync": true,
"cod_program_cip_code": null,
"cod_payment_period_start_date": null,
"external_id": null,
"email_message_id": null,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Retrieves a specific AidDisbursement object.
HTTP Request
GET /people/(person)/aidawards/(aidaward)/disbursements/(aiddisbursement)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- allocated
Permissions
One of the following roles is required to call this method:
- Financial Admin
- Financial Auditor
- Student Billing
- Financial Aid
update (disbursement)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/aidawards/(aidaward)/disbursements/(aiddisbursement)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X PUT
Example response:
{
"object": "aid_disbursement",
"id": 8,
"academic_term_id": 8,
"student_id": 16,
"aid_id": 9,
"aid_award_id": 7,
"type": "disbursement",
"status": "scheduled",
"amount": 430.7,
"gross_amount": 430.7,
"max_amount": 0,
"multiplier": null,
"scheduled_date": "2023-02-14",
"posted_date": null,
"status_date": "2023-02-14",
"payment_id": null,
"refund_id": null,
"transaction_id": null,
"disbursement_number": true,
"sequence_number": false,
"enrollment_status": null,
"enrollment_intensity": false,
"enrollment_verified": false,
"enrollment_verified_by_id": null,
"enrollment_verified_at": null,
"cod_status": null,
"cod_amount": 0,
"cod_originated": false,
"cod_net_amount": 0,
"cod_released": false,
"cod_needs_sync": true,
"cod_program_cip_code": null,
"cod_payment_period_start_date": null,
"external_id": null,
"email_message_id": null,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Updates an existing AidDisbursement object.
HTTP Request
PUT /people/(person)/aidawards/(aidaward)/disbursements/(aiddisbursement)
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
scheduled_date | No | date | |
amount | No | decimal | |
gross_amount | No | decimal | |
academic_term_id | No | int |
Permissions
One of the following roles is required to call this method:
- Financial Aid
delete (disbursement)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/aidawards/(aidaward)/disbursements/(aiddisbursement)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "aid_disbursement",
"id": 11,
"deleted": true
}
Deletes an existing AidDisbursement object.
HTTP Request
DELETE /people/(person)/aidawards/(aidaward)/disbursements/(aiddisbursement)
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:
- Financial Aid
post
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/aidawards/(aidaward)/disbursements/(aiddisbursement)/post" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"transaction_description": "Manual 3rd PELL grant disbusement."
}' \
Example response:
{
"object": "aid_disbursement",
"id": 8,
"academic_term_id": 8,
"student_id": 16,
"aid_id": 9,
"aid_award_id": 7,
"type": "disbursement",
"status": "posted",
"amount": 430.7,
"gross_amount": 430.7,
"max_amount": 0,
"multiplier": null,
"scheduled_date": "2023-02-14",
"posted_date": "2024-11-20",
"status_date": "2024-11-20",
"payment_id": 101,
"refund_id": null,
"transaction_id": 103,
"disbursement_number": true,
"sequence_number": false,
"enrollment_status": null,
"enrollment_intensity": false,
"enrollment_verified": false,
"enrollment_verified_by_id": null,
"enrollment_verified_at": null,
"cod_status": null,
"cod_amount": 0,
"cod_originated": false,
"cod_net_amount": 0,
"cod_released": false,
"cod_needs_sync": true,
"cod_program_cip_code": null,
"cod_payment_period_start_date": null,
"external_id": null,
"email_message_id": null,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
HTTP Request
GET /people/(person)/aidawards/(aidaward)/disbursements/(aiddisbursement)/post
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
posted_date | No | date | Default is today |
transaction_description | No | text |
Action Parameters
Name | Data Type | Description |
---|---|---|
notify_student |
Permissions
One of the following roles is required to call this method:
- Financial Aid
create (refund)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/aidawards/(aidaward)/refunds" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"scheduled_date": "2022-11-02",
"amount": 720,
"type": "refund_to_student",
"refund_asset_account_id": 1
}' \
Example response:
{
"object": "aid_disbursement",
"id": 17,
"academic_term_id": null,
"student_id": 16,
"aid_id": 9,
"aid_award_id": 8,
"type": "refund_to_student",
"status": "scheduled",
"amount": -720,
"gross_amount": -720,
"max_amount": 0,
"multiplier": null,
"scheduled_date": "2022-11-02",
"posted_date": null,
"status_date": "2022-11-02",
"payment_id": null,
"refund_id": null,
"transaction_id": null,
"disbursement_number": true,
"sequence_number": false,
"enrollment_status": null,
"enrollment_intensity": false,
"enrollment_verified": false,
"enrollment_verified_by_id": null,
"enrollment_verified_at": null,
"cod_status": null,
"cod_amount": 0,
"cod_originated": false,
"cod_net_amount": 0,
"cod_released": false,
"cod_needs_sync": true,
"cod_program_cip_code": null,
"cod_payment_period_start_date": null,
"external_id": null,
"email_message_id": null,
"added_at": "2024-11-20T20:03:35+00:00",
"added_by_id": 22,
"sandbox": true
}
Creates a new AidDisbursement object.
HTTP Request
POST /people/(person)/aidawards/(aidaward)/refunds
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
scheduled_date | Yes | date | |
amount | Yes | decimal | |
type | Yes | enum (disbursement, refund_to_student, refund_to_source) | |
refund_asset_account_id | No | int |
Permissions
One of the following roles is required to call this method:
- Financial Aid
show (refund)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/aidawards/(aidaward)/refunds/(aiddisbursement)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "aid_disbursement",
"id": 9,
"academic_term_id": 8,
"student_id": 16,
"aid_id": 9,
"aid_award_id": 7,
"type": "refund_to_source",
"status": "scheduled",
"amount": 430.7,
"gross_amount": 430.7,
"max_amount": 0,
"multiplier": null,
"scheduled_date": "2023-02-14",
"posted_date": null,
"status_date": "2023-02-14",
"payment_id": null,
"refund_id": null,
"transaction_id": null,
"disbursement_number": true,
"sequence_number": false,
"enrollment_status": null,
"enrollment_intensity": false,
"enrollment_verified": false,
"enrollment_verified_by_id": null,
"enrollment_verified_at": null,
"cod_status": null,
"cod_amount": 0,
"cod_originated": false,
"cod_net_amount": 0,
"cod_released": false,
"cod_needs_sync": true,
"cod_program_cip_code": null,
"cod_payment_period_start_date": null,
"external_id": null,
"email_message_id": null,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Retrieves a specific AidDisbursement object.
HTTP Request
GET /people/(person)/aidawards/(aidaward)/refunds/(aiddisbursement)
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:
- Financial Admin
- Financial Auditor
- Student Billing
- Financial Aid
update (refund)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/aidawards/(aidaward)/refunds/(aiddisbursement)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X PUT
Example response:
{
"object": "aid_disbursement",
"id": 9,
"academic_term_id": 8,
"student_id": 16,
"aid_id": 9,
"aid_award_id": 7,
"type": "refund_to_source",
"status": "scheduled",
"amount": -430.7,
"gross_amount": 430.7,
"max_amount": 0,
"multiplier": null,
"scheduled_date": "2023-02-14",
"posted_date": null,
"status_date": "2023-02-14",
"payment_id": null,
"refund_id": null,
"transaction_id": null,
"disbursement_number": true,
"sequence_number": false,
"enrollment_status": null,
"enrollment_intensity": false,
"enrollment_verified": false,
"enrollment_verified_by_id": null,
"enrollment_verified_at": null,
"cod_status": null,
"cod_amount": 0,
"cod_originated": false,
"cod_net_amount": 0,
"cod_released": false,
"cod_needs_sync": true,
"cod_program_cip_code": null,
"cod_payment_period_start_date": null,
"external_id": null,
"email_message_id": null,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Updates an existing AidDisbursement object.
HTTP Request
PUT /people/(person)/aidawards/(aidaward)/refunds/(aiddisbursement)
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
scheduled_date | No | date | |
amount | No | decimal | |
type | No | enum (disbursement, refund_to_student, refund_to_source) | |
refund_asset_account_id | No | int |
Permissions
One of the following roles is required to call this method:
- Financial Aid
delete (refund)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/aidawards/(aidaward)/refunds/(aiddisbursement)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "aid_disbursement",
"id": 12,
"deleted": true
}
Deletes an existing AidDisbursement object.
HTTP Request
DELETE /people/(person)/aidawards/(aidaward)/refunds/(aiddisbursement)
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:
- Financial Aid
AidDisbursementBatch
The AidDisbursementBatch object
The AidDisbursementBatch object looks like this in JSON:
{
"object": "aid_disbursement_batch",
"id": 1,
"aid_type_ids": "[7]",
"campus_id": null,
"number": 1,
"type": "disbursement",
"status": "open",
"stage_id": 7,
"import_id": null,
"transaction_id": null,
"notify_students": false,
"added_at": "2023-05-23T21:10:45+00:00",
"added_by_id": 2923,
"updated_at": "2023-05-23T21:37:38+00:00",
"updated_by_id": 2923,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
aid_type_ids | No | -- |
campus_id | No | int |
number | No | int |
type | No | enum (disbursement, refund_to_student, refund_to_source) |
status | Yes | enum (open, closed, canceled) |
stage_id | No | int |
import_id | No | int |
transaction_id | No | int |
notify_students | No | bool |
added_at | No | datetime |
added_by_id | No | int |
updated_at | No | datetime |
updated_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/aiddisbursementbatches" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"filter": {"0":{"logic":"ALL","fields":[{"name":"award","value":1,"positive":1}]}}
}' \
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": 200,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "aid_disbursement_batch",
"id": 1,
"aid_type_ids": "[7]",
"campus_id": null,
"number": 1,
"type": "disbursement",
"status": "open",
"stage_id": 7,
"import_id": null,
"transaction_id": null,
"notify_students": false,
"added_at": "2023-05-23T21:10:45+00:00",
"added_by_id": 2923,
"updated_at": "2023-05-23T21:37:38+00:00",
"updated_by_id": 2923,
"report_data": {
"stage_name": "Posted to Student Accounts",
"num_disbursements": "0",
"amount": "0.00",
"financial_aid_ids": null,
"student_ids": null,
"campus_name": null
}
}
],
"sandbox": true
}
Retrieves all AidDisbursementBatch objects that match given filter conditions.
HTTP Request
GET /aiddisbursementbatches
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. |
Filter Condition Parameters
These conditions can be used to narrow the results returned.
Name | Type |
---|---|
batch_number | integer |
type | enum |
campus | campus |
status | enum |
stage | object id |
added | datetime |
updated | datetime |
disbursements | integer |
amount | decimal |
award | object id |
student | search |
Permissions
One of the following roles is required to call this method:
- Financial Admin
- Financial Auditor
- Student Billing
- Financial Aid
create
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/aiddisbursementbatches" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"type": "disbursement",
"aid_disbursement_ids": "[13,14]"
}' \
Example response:
{
"object": "aid_disbursement_batch",
"id": 2,
"aid_type_ids": "[9]",
"campus_id": null,
"number": 2,
"type": "disbursement",
"status": "open",
"stage_id": 1,
"import_id": null,
"transaction_id": null,
"notify_students": false,
"added_at": "2024-11-20T20:03:33+00:00",
"added_by_id": 22,
"updated_at": null,
"updated_by_id": null,
"sandbox": true
}
Creates a new AidDisbursementBatch object.
HTTP Request
POST /aiddisbursementbatches
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
type | Yes | enum (disbursement, refund_to_student, refund_to_source) | |
aid_disbursement_ids | Yes | array of AidDisbursement ids |
Permissions
One of the following roles is required to call this method:
- Financial Aid
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/aiddisbursementbatches/(aiddisbursementbatch)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "aid_disbursement_batch",
"id": 1,
"aid_type_ids": "[7]",
"campus_id": null,
"number": 1,
"type": "disbursement",
"status": "open",
"stage_id": 7,
"import_id": null,
"transaction_id": null,
"notify_students": false,
"added_at": "2023-05-23T21:10:45+00:00",
"added_by_id": 2923,
"updated_at": "2023-05-23T21:37:38+00:00",
"updated_by_id": 2923,
"sandbox": true
}
Retrieves a specific AidDisbursementBatch object.
HTTP Request
GET /aiddisbursementbatches/(aiddisbursementbatch)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- disbursements
Permissions
One of the following roles is required to call this method:
- Financial Admin
- Financial Auditor
- Student Billing
- Financial Aid
AidStudentAuthorization
The AidStudentAuthorization object
The AidStudentAuthorization object looks like this in JSON:
{
"object": "aid_student_authorization",
"id": 12,
"student_id": 18499,
"borrower_id": null,
"aid_authorization_id": 2,
"aid_year_id": 50,
"added_at": "2021-12-23T17:33:30+00:00",
"added_by_id": 24469716,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
student_id | No | int |
borrower_id | No | int |
aid_authorization_id | Yes | int |
aid_year_id | No | int |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/aidauthorizations/" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "aid_student_authorization",
"id": 13,
"student_id": 12,
"borrower_id": null,
"aid_authorization_id": 2,
"aid_year_id": 5,
"added_at": "2021-12-23T17:33:30+00:00",
"added_by_id": 16
}
],
"sandbox": true
}
Retrieves all AidStudentAuthorization objects tied to a specific Person.
HTTP Request
GET /people/(person)/aidauthorizations/
Parameters
None
Permissions
One of the following roles is required to call this method:
- Financial Aid
AidType
The AidType object
The AidType object looks like this in JSON:
{
"object": "aid_type",
"id": 1,
"startyear": 1,
"endyear": 0,
"name": "Pell Grant",
"abbrv": "PELL",
"cod_abbrv": "PELL",
"title_iv": true,
"type": "grant",
"is_scholarship": false,
"source": "federal",
"multiplier": null,
"federal_aid_id": null,
"need_based": true,
"count_against_need": true,
"report_on_1098t": true,
"non_eligible_fee_aid": false,
"count_as_tuition_discount": false,
"counts_as_efa": true,
"only_allow_whole_dollar_amounts": false,
"allow_partial_acceptance": false,
"require_enrollment_verification": false,
"status": "active",
"veterans_benefits": false,
"external_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
startyear | Yes | int |
endyear | Yes | int |
name | Yes | text (100) |
abbrv | Yes | text (25) |
cod_abbrv | No | text (100) |
title_iv | No | bool |
type | Yes | enum (grant, loan, work_study) |
is_scholarship | Yes | bool |
source | Yes | enum (federal, state, institution, private, employer, other) |
multiplier | No | decimal |
federal_aid_id | No | int |
need_based | Yes | bool |
count_against_need | Yes | bool |
report_on_1098t | Yes | bool |
non_eligible_fee_aid | Yes | bool |
count_as_tuition_discount | Yes | bool |
counts_as_efa | Yes | bool |
only_allow_whole_dollar_amounts | Yes | bool |
allow_partial_acceptance | No | bool |
require_enrollment_verification | Yes | bool |
status | Yes | enum (active, retired) |
veterans_benefits | Yes | bool |
external_id | No | text (100) |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/aidtypes" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 12,
"results": 12,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "aid_type",
"id": 1,
"startyear": 1,
"endyear": 0,
"name": "Pell Grant",
"abbrv": "PELL",
"cod_abbrv": "PELL",
"title_iv": true,
"type": "grant",
"is_scholarship": false,
"source": "federal",
"multiplier": null,
"federal_aid_id": null,
"need_based": true,
"count_against_need": true,
"report_on_1098t": true,
"non_eligible_fee_aid": false,
"count_as_tuition_discount": false,
"counts_as_efa": true,
"only_allow_whole_dollar_amounts": false,
"allow_partial_acceptance": false,
"require_enrollment_verification": false,
"status": "active",
"veterans_benefits": false,
"external_id": null
}
],
"sandbox": true
}
Retrieves all AidType objects.
HTTP Request
GET /aidtypes
Parameters
None
Permissions
One of the following roles is required to call this method:
- Student Billing
- Financial Admin
- Financial Auditor
- Financial Aid
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/aidtypes/(aidtype)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "aid_type",
"id": 1,
"startyear": 1,
"endyear": 0,
"name": "Pell Grant",
"abbrv": "PELL",
"cod_abbrv": "PELL",
"title_iv": true,
"type": "grant",
"is_scholarship": false,
"source": "federal",
"multiplier": null,
"federal_aid_id": null,
"need_based": true,
"count_against_need": true,
"report_on_1098t": true,
"non_eligible_fee_aid": false,
"count_as_tuition_discount": false,
"counts_as_efa": true,
"only_allow_whole_dollar_amounts": false,
"allow_partial_acceptance": false,
"require_enrollment_verification": false,
"status": "active",
"veterans_benefits": false,
"external_id": null,
"sandbox": true
}
Retrieves a specific AidType object.
HTTP Request
GET /aidtypes/(aidtype)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- account
- origination_fees
- percent_bases
Permissions
One of the following roles is required to call this method:
- Financial Aid
AidYear
The AidYear object
The AidYear object looks like this in JSON:
{
"object": "aid_year",
"id": 60,
"name": "2025-2026",
"start_date": "2025-07-01",
"end_date": "2026-06-30",
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
name | No | text (50) |
start_date | No | date |
end_date | No | date |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/aidyears" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 19,
"results": 19,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "aid_year",
"id": 60,
"name": "2025-2026",
"start_date": "2025-07-01",
"end_date": "2026-06-30"
}
],
"sandbox": true
}
Retrieves all AidYear objects.
HTTP Request
GET /aidyears
Parameters
None
Permissions
One of the following roles is required to call this method:
- Financial Aid
- Financial Auditor
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/aidyears/(aidyear)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "aid_year",
"id": 60,
"name": "2025-2026",
"start_date": "2025-07-01",
"end_date": "2026-06-30",
"sandbox": true
}
Retrieves a specific AidYear object.
HTTP Request
GET /aidyears/(aidyear)
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:
- Financial Aid
- Financial Auditor
AidYearSchedule
The AidYearSchedule object
The AidYearSchedule object looks like this in JSON:
{
"object": "aid_year_schedule",
"id": 9,
"name": "Undergraduate Standard Schedule",
"aid_year_id": 3,
"equal_disbursement_amounts": true,
"status": "active",
"aid_year_name": "2012-2013",
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
name | Yes | text (100) |
aid_year_id | No | int |
equal_disbursement_amounts | Yes | bool |
status | Yes | enum (active, retired) |
aid_year_name | No | -- |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/aidyears/(aidyear)/schedules" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 0,
"results": 0,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [],
"sandbox": true
}
Retrieves all AidYearSchedule objects tied to a specific Aidyear.
HTTP Request
GET /aidyears/(aidyear)/schedules
Parameters
None
Permissions
One of the following roles is required to call this method:
- Financial Aid
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/aidyears/(aidyear)/schedules/(aidyearschedule)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "aid_year_schedule",
"id": 8,
"name": "Undergraduate Standard Schedule",
"aid_year_id": 2,
"equal_disbursement_amounts": true,
"status": "active",
"aid_year_name": "2011-2012",
"sandbox": true
}
Retrieves a specific AidYearSchedule object.
HTTP Request
GET /aidyears/(aidyear)/schedules/(aidyearschedule)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- disbursements
- aid_types
- student_classifications
Permissions
One of the following roles is required to call this method:
- Financial Aid
Appeal
The Appeal object
The Appeal object looks like this in JSON:
{
"object": "appeal",
"id": 6,
"campaign_id": 3,
"name": "Email blast #21",
"appeal_medium_id": 6,
"made_on": "2018-04-07",
"cost": 10.1,
"status": "active",
"added_at": "2018-04-07T22:21:45+00:00",
"added_by_id": 1257,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
campaign_id | Yes | int |
name | Yes | text (200) |
appeal_medium_id | No | int |
made_on | Yes | date |
cost | No | decimal |
status | Yes | enum (active, inactive, deleted) |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/appeals" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "appeal",
"id": 6,
"campaign_id": 3,
"name": "Email blast #21",
"appeal_medium_id": 6,
"made_on": "2018-04-07",
"cost": 10.1,
"status": "active",
"added_at": "2018-04-07T22:21:45+00:00",
"added_by_id": 1257
}
],
"sandbox": true
}
Retrieves all Appeal objects.
HTTP Request
GET /appeals
Parameters
None
Permissions
One of the following roles is required to call this method:
- Financial Admin
- Donations
- Financial Admin
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/appeals/(appeal)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "appeal",
"id": 6,
"campaign_id": 3,
"name": "Email blast #21",
"appeal_medium_id": 6,
"made_on": "2018-04-07",
"cost": 10.1,
"status": "active",
"added_at": "2018-04-07T22:21:45+00:00",
"added_by_id": 1257,
"sandbox": true
}
Retrieves a specific Appeal object.
HTTP Request
GET /appeals/(appeal)
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:
- Financial Admin
AppealMedium
The AppealMedium object
The AppealMedium object looks like this in JSON:
{
"object": "appeal_medium",
"id": 6,
"name": "Postcard",
"status": "active",
"added_at": "2014-04-07T19:18:30+00:00",
"added_by_id": 1,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
name | No | text (500) |
status | Yes | enum (active, inactive, deleted) |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/appealmedia" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "appeal_medium",
"id": 6,
"name": "Postcard",
"status": "active",
"added_at": "2014-04-07T19:18:30+00:00",
"added_by_id": 1
}
],
"sandbox": true
}
Retrieves all AppealMedium objects.
HTTP Request
GET /appealmedia
Parameters
None
Permissions
One of the following roles is required to call this method:
- Financial Admin
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/appealmedia/(appealmedium)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "appeal_medium",
"id": 6,
"name": "Postcard",
"status": "active",
"added_at": "2014-04-07T19:18:30+00:00",
"added_by_id": 1,
"sandbox": true
}
Retrieves a specific AppealMedium object.
HTTP Request
GET /appealmedia/(appealmedium)
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:
- Financial Admin
Application
The Application object
The Application object looks like this in JSON:
{
"object": "application",
"id": 1,
"cloned_from_id": null,
"person_id": null,
"lead_id": null,
"first_name": "Homestar",
"middle_name": null,
"last_name": "Runner",
"email": "homestar@populi.co",
"phone": null,
"address_id": null,
"application_template_id": 3,
"form_version_id": 2,
"counselor_id": null,
"program_id": 1,
"degree_seeking": true,
"degree_id": null,
"specialization_id": null,
"academic_term_id": 1,
"lead_source_id": null,
"started_on": "2013-03-19",
"submitted_at": null,
"pending_decision_on": null,
"decision_on": null,
"confirmed_on": null,
"withdrawn_on": null,
"expected_enrollment": "full_time",
"status": "in_progress",
"provisional": false,
"provisional_note": null,
"hs_grad_date": null,
"fee_status": "unpaid",
"fee_id": null,
"fee_amount": null,
"fee_discount": null,
"fee_payment": "before_start",
"sales_receipt_id": null,
"prospect_activity_at": null,
"staff_activity_at": null,
"percent_complete": 0,
"active_questions": null,
"localization_id": null,
"added_at": "2013-03-19T21:20:18+00:00",
"added_by_id": null,
"applicant_url": "https:\/\/yourschool.populiweb.com\/router\/admissions\/onlineapplications\/show\/g64c8ee3f6da7a2293a0f77a7a697b178cc281eaf34e1c8ac6c5b784920d90c6944c03ac9ff54c31fc4b06ac3952ebc36969975080cc106f69f060ccb76abb9",
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
cloned_from_id | No | int |
person_id | No | int |
lead_id | No | int |
first_name | No | text (50) |
middle_name | No | text (50) |
last_name | No | text (50) |
No | text (100) | |
phone | No | text (45) |
address_id | No | int |
application_template_id | No | int |
form_version_id | No | int |
counselor_id | No | int |
program_id | No | int |
degree_seeking | Yes | bool |
degree_id | No | int |
specialization_id | No | int |
academic_term_id | No | int |
lead_source_id | No | int |
started_on | No | date |
submitted_at | No | datetime |
pending_decision_on | No | date |
decision_on | No | date |
confirmed_on | No | date |
withdrawn_on | No | date |
expected_enrollment | Yes | enum (full_time, half_time, less_than_half_time) |
status | Yes | enum (in_progress, submitted, pending_decision, accepted, declined, withdrawn, deferred, waitlisted, deleted) |
provisional | Yes | bool |
provisional_note | No | text |
hs_grad_date | No | date |
fee_status | Yes | enum (unpaid, paid, waived) |
fee_id | No | int |
fee_amount | No | decimal |
fee_discount | No | decimal |
fee_payment | Yes | enum (before_start, before_submit) |
sales_receipt_id | No | int |
prospect_activity_at | No | datetime |
staff_activity_at | No | datetime |
percent_complete | Yes | int |
active_questions | No | int |
localization_id | No | int |
added_at | No | datetime |
added_by_id | No | int |
applicant_url | No | text |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/applications" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"filter": {"0":{"logic":"ALL","fields":[{"name":"program","value":"NONE","positive":1}]}}
}' \
Example response:
{
"object": "list",
"count": 5,
"results": 5,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "application",
"id": 1,
"cloned_from_id": null,
"person_id": null,
"lead_id": null,
"first_name": "Homestar",
"middle_name": null,
"last_name": "Runner",
"email": "homestar@populi.co",
"phone": null,
"address_id": null,
"application_template_id": 3,
"form_version_id": 2,
"counselor_id": null,
"program_id": 1,
"degree_seeking": true,
"degree_id": null,
"specialization_id": null,
"academic_term_id": 1,
"lead_source_id": null,
"started_on": "2013-03-19",
"submitted_at": null,
"pending_decision_on": null,
"decision_on": null,
"confirmed_on": null,
"withdrawn_on": null,
"expected_enrollment": "full_time",
"status": "in_progress",
"provisional": false,
"provisional_note": null,
"hs_grad_date": null,
"fee_status": "unpaid",
"fee_id": null,
"fee_amount": null,
"fee_discount": null,
"fee_payment": "before_start",
"sales_receipt_id": null,
"prospect_activity_at": null,
"staff_activity_at": null,
"percent_complete": 0,
"active_questions": null,
"localization_id": null,
"person_first_name": "Homestar",
"person_preferred_name": null,
"person_last_name": "Runner",
"application_template_name": "Test v3",
"program_name": "Undergraduate",
"academic_term_display_name": "2006-2007: Fall 2006",
"lead_source_full_name": null,
"counselor_name": null,
"counselor_first_name": null,
"counselor_last_name": null,
"owner_type": "application",
"has_aid_application": 0,
"added_at": "2013-03-19T21:20:18+00:00",
"added_by_id": null,
"applicant_url": "https:\/\/yourschool.populiweb.com\/router\/admissions\/onlineapplications\/show\/g64c8ee3f6da7a2293a0f77a7a697b178cc281eaf34e1c8ac6c5b784920d90c6944c03ac9ff54c31fc4b06ac3952ebc36969975080cc106f69f060ccb76abb9"
}
],
"sandbox": true
}
Retrieves all Application objects that match given filter conditions.
HTTP Request
GET /applications
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
- application_form
- form_version
- answers
- person
- program
- degree
- specialization
- academic_term
- representative
- email_address
- address
- lead_source
- lead
- notes
- questions
Filter Condition Parameters
These conditions can be used to narrow the results returned.
Name | Type |
---|---|
first_name | text |
last_name | text |
gender | gender |
application_form | object id |
discount_code | object id |
source | leadsource |
lead_source | leadsource |
program | program |
degree | degree |
specialization | specialization |
academic_term | academic_term |
counselor | admissions_counselor |
status | enum |
provisional | bool |
active_questions | integer |
applicant_activity | date_time |
percent_completed | integer |
linked_to_person | bool |
has_aid_application | bool |
expected_enrollment | choice |
fee_status | enum |
started_on | date |
submitted_at | date_time |
pending_decision_on | date |
decision_date | date |
withdrawn_date | date |
tag | tag |
custom_field | custom |
has_active_student_role | has_active_student_role |
Permissions
One of the following roles is required to call this method:
- Admissions Admin
- Admissions
- Academic Admin
- Registrar
create
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/applications" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"application_template_id": 2,
"first_name": "Darrin",
"last_name": "Walker",
"email": "dwalker88@somewhere.net",
"phone": "208-555-4321",
"started_on": "2022-08-25",
"address": "{\"street\":\"555 Maple Street\",\"city\":\"Dallas\",\"state\":\"TX\",\"postal\":\"55123\",\"country\":\"US\"}"
}' \
Example response:
{
"object": "application",
"id": 6,
"cloned_from_id": null,
"person_id": null,
"lead_id": null,
"first_name": "Darrin",
"middle_name": null,
"last_name": "Walker",
"email": "dwalker88@somewhere.net",
"phone": "(208) 555-4321",
"address_id": 803,
"application_template_id": 2,
"form_version_id": 4,
"counselor_id": null,
"program_id": 1,
"degree_seeking": true,
"degree_id": null,
"specialization_id": null,
"academic_term_id": 1,
"lead_source_id": null,
"started_on": "2022-08-25",
"submitted_at": null,
"pending_decision_on": null,
"decision_on": null,
"confirmed_on": null,
"withdrawn_on": null,
"expected_enrollment": "full_time",
"status": "in_progress",
"provisional": false,
"provisional_note": null,
"hs_grad_date": null,
"fee_status": "unpaid",
"fee_id": null,
"fee_amount": 75,
"fee_discount": null,
"fee_payment": "before_start",
"sales_receipt_id": null,
"prospect_activity_at": null,
"staff_activity_at": null,
"percent_complete": 0,
"active_questions": null,
"localization_id": null,
"address": {
"object": "address",
"id": 803,
"owner_id": 6,
"owner_type": "application",
"street": "555 Maple Street",
"city": "Dallas",
"state": "TX",
"postal": "55123",
"country": "US",
"type": "home",
"primary": true,
"old": false,
"public": false,
"synced_from": null,
"import_id": null,
"added_at": "2024-11-20T20:03:34+00:00",
"added_by_id": 22
},
"added_at": "2024-11-20T20:03:34+00:00",
"added_by_id": 22,
"applicant_url": "https:\/\/yourschool.populiweb.com\/router\/admissions\/onlineapplications\/show\/g64c8ee3f6da7a2293a0f77a7a697b178cc281eaf34e1c8ac6c5b784920d90c6944c03ac9ff54c31fc4b06ac3952ebc36969975080cc106f69f060ccb76abb9",
"sandbox": true
}
Creates a new Application object.
HTTP Request
POST /applications
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
application_template_id | Yes | int | |
first_name | No | text (50) | |
middle_name | No | text (50) | |
last_name | No | text (50) | |
No | text (100) | ||
phone | No | text (45) | |
started_on | Yes | date | |
person_id | No | int | |
lead_id | No | int | |
representative_id | No | int | |
degree_seeking | No | bool | |
program_id | No | int | |
degree_id | No | int | |
specialization_id | No | int | |
academic_term_id | No | int | |
expected_enrollment | No | enum (full_time, half_time, less_than_half_time) | |
fee_status | No | enum (unpaid, paid, waived) | |
address | No | address |
Action Parameters
Name | Data Type | Description |
---|---|---|
email_applicant | bool | Send the applicant an email link to the newly created application. |
update_lead_status | bool | If the application is tied to a Lead, update it's status and program information. |
Permissions
One of the following roles is required to call this method:
- Admissions Admin
- Admissions
- Academic Admin
- Registrar
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/applications/(application)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "application",
"id": 1,
"cloned_from_id": null,
"person_id": null,
"lead_id": null,
"first_name": "Homestar",
"middle_name": null,
"last_name": "Runner",
"email": "homestar@populi.co",
"phone": null,
"address_id": null,
"application_template_id": 3,
"form_version_id": 2,
"counselor_id": null,
"program_id": 1,
"degree_seeking": true,
"degree_id": null,
"specialization_id": null,
"academic_term_id": 1,
"lead_source_id": null,
"started_on": "2013-03-19",
"submitted_at": null,
"pending_decision_on": null,
"decision_on": null,
"confirmed_on": null,
"withdrawn_on": null,
"expected_enrollment": "full_time",
"status": "in_progress",
"provisional": false,
"provisional_note": null,
"hs_grad_date": null,
"fee_status": "unpaid",
"fee_id": null,
"fee_amount": null,
"fee_discount": null,
"fee_payment": "before_start",
"sales_receipt_id": null,
"prospect_activity_at": null,
"staff_activity_at": null,
"percent_complete": 0,
"active_questions": null,
"localization_id": null,
"added_at": "2013-03-19T21:20:18+00:00",
"added_by_id": null,
"applicant_url": "https:\/\/yourschool.populiweb.com\/router\/admissions\/onlineapplications\/show\/g64c8ee3f6da7a2293a0f77a7a697b178cc281eaf34e1c8ac6c5b784920d90c6944c03ac9ff54c31fc4b06ac3952ebc36969975080cc106f69f060ccb76abb9",
"sandbox": true
}
Retrieves a specific Application object. To include field definitions, use the expandable property form_version. To include the values of submitted answers to fields, use the expandable property answers.
HTTP Request
GET /applications/(application)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- application_form
- form_version
- answers
- person
- program
- degree
- specialization
- academic_term
- representative
- email_address
- address
- lead_source
- lead
- notes
- questions
Permissions
One of the following roles is required to call this method:
- Admissions Admin
- Admissions
- Academic Admin
- Registrar
update
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/applications/(application)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X PUT
-d '{
"status": "in_progress"
}' \
Example response:
{
"object": "application",
"id": 1,
"cloned_from_id": null,
"person_id": null,
"lead_id": null,
"first_name": "Homestar",
"middle_name": null,
"last_name": "Runner",
"email": "homestar@populi.co",
"phone": null,
"address_id": null,
"application_template_id": 3,
"form_version_id": 2,
"counselor_id": null,
"program_id": 1,
"degree_seeking": true,
"degree_id": null,
"specialization_id": null,
"academic_term_id": 1,
"lead_source_id": null,
"started_on": "2013-03-19",
"submitted_at": null,
"pending_decision_on": null,
"decision_on": null,
"confirmed_on": null,
"withdrawn_on": null,
"expected_enrollment": "full_time",
"status": "in_progress",
"provisional": false,
"provisional_note": null,
"hs_grad_date": null,
"fee_status": "unpaid",
"fee_id": null,
"fee_amount": null,
"fee_discount": null,
"fee_payment": "before_start",
"sales_receipt_id": null,
"prospect_activity_at": null,
"staff_activity_at": "2024-11-20T20:03:34+00:00",
"percent_complete": 0,
"active_questions": null,
"localization_id": null,
"address": null,
"added_at": "2013-03-19T21:20:18+00:00",
"added_by_id": null,
"applicant_url": "https:\/\/yourschool.populiweb.com\/router\/admissions\/onlineapplications\/show\/g64c8ee3f6da7a2293a0f77a7a697b178cc281eaf34e1c8ac6c5b784920d90c6944c03ac9ff54c31fc4b06ac3952ebc36969975080cc106f69f060ccb76abb9",
"sandbox": true
}
Updates an existing Application object.
HTTP Request
PUT /applications/(application)
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
status | Yes | enum (in_progress, submitted, pending_decision, accepted, declined, withdrawn, deferred, waitlisted, deleted) | |
fee_status | No | enum (unpaid, paid, waived) | |
provisional | No | bool | |
provisional_note | No | text |
Action Parameters
Name | Data Type | Description |
---|---|---|
import_course_of_study | ||
add_student_role |
Permissions
One of the following roles is required to call this method:
- Admissions Admin
- Admissions
- Academic Admin
- Registrar
delete
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/applications/(application)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "application",
"id": 1,
"deleted": true
}
Deletes an existing Application object.
HTTP Request
DELETE /applications/(application)
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:
- Admissions Admin
- Admissions
- Academic Admin
- Registrar
fields
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/applications/(application)/fields" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 46,
"results": 46,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": {
"object": "application",
"id": 1,
"cloned_from_id": null,
"person_id": 2,
"lead_id": 7,
"first_name": "Charles",
"middle_name": "",
"last_name": "Fulton",
"email": "charlesf@populi.co",
"phone": null,
"address_id": null,
"application_template_id": 3,
"form_version_id": 2,
"counselor_id": null,
"program_id": 1,
"degree_seeking": true,
"degree_id": null,
"specialization_id": null,
"academic_term_id": 1,
"lead_source_id": null,
"started_on": "2013-03-19",
"submitted_at": "2024-11-20T20:03:34+00:00",
"pending_decision_on": null,
"decision_on": null,
"confirmed_on": null,
"withdrawn_on": null,
"expected_enrollment": "full_time",
"status": "submitted",
"provisional": false,
"provisional_note": null,
"hs_grad_date": null,
"fee_status": "unpaid",
"fee_id": null,
"fee_amount": null,
"fee_discount": null,
"fee_payment": "before_start",
"sales_receipt_id": null,
"prospect_activity_at": null,
"staff_activity_at": "2024-11-20T20:03:34+00:00",
"percent_complete": 0,
"active_questions": null,
"localization_id": null,
"added_at": "2013-03-19T21:20:18+00:00",
"added_by_id": null,
"applicant_url": "https:\/\/yourschool.populiweb.com\/router\/admissions\/onlineapplications\/show\/g64c8ee3f6da7a2293a0f77a7a697b178cc281eaf34e1c8ac6c5b784920d90c6944c03ac9ff54c31fc4b06ac3952ebc36969975080cc106f69f060ccb76abb9",
"pages": [
{
"object": "form_version_page",
"id": 1,
"form_version_id": 2,
"derived_from_id": null,
"name": null,
"order_id": 1,
"added_at": null,
"added_by_id": null,
"fields": [
{
"object": "form_field",
"id": 1,
"reporting_id": 1,
"name": "Short Answer",
"description": null,
"input_type": "short_answer",
"model_type": null,
"model_id": null,
"min": null,
"max": null,
"added_at": null,
"added_by_id": null
},
{
"object": "form_field",
"id": 2,
"reporting_id": 2,
"name": "Long Answer",
"description": null,
"input_type": "long_answer",
"model_type": null,
"model_id": null,
"min": null,
"max": null,
"added_at": null,
"added_by_id": null
},
{
"object": "form_field",
"id": 3,
"reporting_id": 3,
"name": "Boolean",
"description": null,
"input_type": "boolean",
"model_type": null,
"model_id": null,
"min": null,
"max": null,
"added_at": null,
"added_by_id": null
},
{
"object": "form_field",
"id": 7,
"reporting_id": 7,
"name": "Ref",
"description": null,
"input_type": "model",
"model_type": "online_reference_template",
"model_id": 4,
"min": null,
"max": null,
"added_at": null,
"added_by_id": null
}
]
}
]
}
}
HTTP Request
GET /applications/(application)/fields
Parameters
None
Permissions
One of the following roles is required to call this method:
- Admissions Admin
- Admissions
- Academic Admin
- Registrar
link_to_person
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/applications/(application)/link_to_person" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"person_id": 2
}' \
Example response:
{
"object": "application",
"id": 1,
"cloned_from_id": null,
"person_id": 2,
"lead_id": 7,
"first_name": "Charles",
"middle_name": "",
"last_name": "Fulton",
"email": "charlesf@populi.co",
"phone": null,
"address_id": null,
"application_template_id": 3,
"form_version_id": 2,
"counselor_id": null,
"program_id": 1,
"degree_seeking": true,
"degree_id": null,
"specialization_id": null,
"academic_term_id": 1,
"lead_source_id": null,
"started_on": "2013-03-19",
"submitted_at": "2024-11-20T20:03:34+00:00",
"pending_decision_on": null,
"decision_on": null,
"confirmed_on": null,
"withdrawn_on": null,
"expected_enrollment": "full_time",
"status": "submitted",
"provisional": false,
"provisional_note": null,
"hs_grad_date": null,
"fee_status": "unpaid",
"fee_id": null,
"fee_amount": null,
"fee_discount": null,
"fee_payment": "before_start",
"sales_receipt_id": null,
"prospect_activity_at": null,
"staff_activity_at": "2024-11-20T20:03:34+00:00",
"percent_complete": 0,
"active_questions": null,
"localization_id": null,
"added_at": "2013-03-19T21:20:18+00:00",
"added_by_id": null,
"applicant_url": "https:\/\/yourschool.populiweb.com\/router\/admissions\/onlineapplications\/show\/g64c8ee3f6da7a2293a0f77a7a697b178cc281eaf34e1c8ac6c5b784920d90c6944c03ac9ff54c31fc4b06ac3952ebc36969975080cc106f69f060ccb76abb9",
"sandbox": true
}
HTTP Request
GET /applications/(application)/link_to_person
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
person_id | Yes | int |
Permissions
One of the following roles is required to call this method:
- Admissions Admin
- Admissions
- Academic Admin
- Registrar
submit
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/applications/(application)/submit" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "application",
"id": 1,
"cloned_from_id": null,
"person_id": null,
"lead_id": null,
"first_name": "Homestar",
"middle_name": null,
"last_name": "Runner",
"email": "homestar@populi.co",
"phone": null,
"address_id": null,
"application_template_id": 3,
"form_version_id": 2,
"counselor_id": null,
"program_id": 1,
"degree_seeking": true,
"degree_id": null,
"specialization_id": null,
"academic_term_id": 1,
"lead_source_id": null,
"started_on": "2013-03-19",
"submitted_at": "2024-11-20T20:03:34+00:00",
"pending_decision_on": null,
"decision_on": null,
"confirmed_on": null,
"withdrawn_on": null,
"expected_enrollment": "full_time",
"status": "submitted",
"provisional": false,
"provisional_note": null,
"hs_grad_date": null,
"fee_status": "unpaid",
"fee_id": null,
"fee_amount": null,
"fee_discount": null,
"fee_payment": "before_start",
"sales_receipt_id": null,
"prospect_activity_at": null,
"staff_activity_at": "2024-11-20T20:03:34+00:00",
"percent_complete": 0,
"active_questions": null,
"localization_id": null,
"added_at": "2013-03-19T21:20:18+00:00",
"added_by_id": null,
"applicant_url": "https:\/\/yourschool.populiweb.com\/router\/admissions\/onlineapplications\/show\/g64c8ee3f6da7a2293a0f77a7a697b178cc281eaf34e1c8ac6c5b784920d90c6944c03ac9ff54c31fc4b06ac3952ebc36969975080cc106f69f060ccb76abb9",
"sandbox": true
}
HTTP Request
GET /applications/(application)/submit
Parameters
None
Permissions
One of the following roles is required to call this method:
- Admissions Admin
- Admissions
- Academic Admin
- Registrar
unlink_person
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/applications/(application)/unlink_person" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "application",
"id": 1,
"cloned_from_id": null,
"person_id": null,
"lead_id": null,
"first_name": "Homestar",
"middle_name": null,
"last_name": "Runner",
"email": "homestar@populi.co",
"phone": null,
"address_id": null,
"application_template_id": 3,
"form_version_id": 2,
"counselor_id": null,
"program_id": 1,
"degree_seeking": true,
"degree_id": null,
"specialization_id": null,
"academic_term_id": 1,
"lead_source_id": null,
"started_on": "2013-03-19",
"submitted_at": "2024-11-20T20:03:34+00:00",
"pending_decision_on": null,
"decision_on": null,
"confirmed_on": null,
"withdrawn_on": null,
"expected_enrollment": "full_time",
"status": "submitted",
"provisional": false,
"provisional_note": null,
"hs_grad_date": null,
"fee_status": "unpaid",
"fee_id": null,
"fee_amount": null,
"fee_discount": null,
"fee_payment": "before_start",
"sales_receipt_id": null,
"prospect_activity_at": null,
"staff_activity_at": "2024-11-20T20:03:34+00:00",
"percent_complete": 0,
"active_questions": null,
"localization_id": null,
"added_at": "2013-03-19T21:20:18+00:00",
"added_by_id": null,
"applicant_url": "https:\/\/yourschool.populiweb.com\/router\/admissions\/onlineapplications\/show\/g64c8ee3f6da7a2293a0f77a7a697b178cc281eaf34e1c8ac6c5b784920d90c6944c03ac9ff54c31fc4b06ac3952ebc36969975080cc106f69f060ccb76abb9",
"sandbox": true
}
HTTP Request
GET /applications/(application)/unlink_person
Parameters
None
Permissions
One of the following roles is required to call this method:
- Admissions Admin
- Admissions
- Academic Admin
- Registrar
index by person
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/applications" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 2,
"results": 2,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "application",
"id": 4,
"cloned_from_id": null,
"person_id": 12,
"lead_id": null,
"first_name": "Taylor",
"middle_name": "",
"last_name": "Forest",
"email": "icecream@nowhere.co",
"phone": "333-555-6666",
"address_id": "801",
"application_template_id": 1,
"form_version_id": null,
"counselor_id": null,
"program_id": 1,
"degree_seeking": true,
"degree_id": 1,
"specialization_id": 1,
"academic_term_id": 1,
"lead_source_id": null,
"started_on": "2013-03-19",
"submitted_at": "2013-04-19T00:00:00+00:00",
"pending_decision_on": null,
"decision_on": null,
"confirmed_on": null,
"withdrawn_on": null,
"expected_enrollment": "full_time",
"status": "submitted",
"provisional": false,
"provisional_note": null,
"hs_grad_date": null,
"fee_status": "unpaid",
"fee_id": null,
"fee_amount": null,
"fee_discount": null,
"fee_payment": "before_start",
"sales_receipt_id": null,
"prospect_activity_at": "2013-05-19T21:22:19+00:00",
"staff_activity_at": null,
"percent_complete": 100,
"active_questions": 1,
"localization_id": null,
"added_at": null,
"added_by_id": null,
"applicant_url": "https:\/\/yourschool.populiweb.com\/router\/admissions\/onlineapplications\/show\/g64c8ee3f6da7a2293a0f77a7a697b178cc281eaf34e1c8ac6c5b784920d90c6944c03ac9ff54c31fc4b06ac3952ebc36969975080cc106f69f060ccb76abb9"
}
],
"sandbox": true
}
Retrieves all Application objects tied to a specific Person.
HTTP Request
GET /people/(person)/applications
Parameters
None
Permissions
One of the following roles is required to call this method:
- Admissions Admin
- Admissions
- Academic Admin
- Registrar
- Academic Auditor
ApplicationTemplate
The ApplicationTemplate object
The ApplicationTemplate object looks like this in JSON:
{
"object": "application_template",
"id": 3,
"current_version_id": 2,
"name": "Test v3",
"type": "application",
"published": true,
"custom_css": null,
"show_online": true,
"require_address": false,
"fee_id": null,
"fee_amount": 75,
"fee_payment": "before_start",
"allow_undecided": true,
"enable_sms_verification": true,
"redirect_url": null,
"thank_you_message": null,
"initial_email_template_id": null,
"enable_initial_email": true,
"retired_by_id": null,
"retired_at": null,
"default_localization_id": null,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
current_version_id | No | int |
name | Yes | text (300) |
type | Yes | enum (application, online_reference) |
published | Yes | bool |
custom_css | No | text |
show_online | Yes | bool |
require_address | Yes | bool |
fee_id | No | int |
fee_amount | No | decimal |
fee_payment | Yes | enum (before_start, before_submit) |
allow_undecided | Yes | bool |
enable_sms_verification | Yes | bool |
redirect_url | No | text (2000) |
thank_you_message | No | text |
initial_email_template_id | No | int |
enable_initial_email | Yes | bool |
retired_by_id | No | int |
retired_at | No | datetime |
default_localization_id | No | int |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/applicationtemplates" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 3,
"results": 3,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "application_template",
"id": 3,
"current_version_id": 2,
"name": "Test v3",
"type": "application",
"published": true,
"custom_css": null,
"show_online": true,
"require_address": false,
"fee_id": null,
"fee_amount": 75,
"fee_payment": "before_start",
"allow_undecided": true,
"enable_sms_verification": true,
"redirect_url": null,
"thank_you_message": null,
"initial_email_template_id": null,
"enable_initial_email": true,
"retired_by_id": null,
"retired_at": null,
"default_localization_id": null,
"added_at": null,
"added_by_id": null
}
],
"sandbox": true
}
Retrieves all ApplicationTemplate objects.
HTTP Request
GET /applicationtemplates
Parameters
None
Permissions
One of the following roles is required to call this method:
- Admissions Admin
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/applicationtemplates/(applicationtemplate)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "application_template",
"id": 3,
"current_version_id": 2,
"name": "Test v3",
"type": "application",
"published": true,
"custom_css": null,
"show_online": true,
"require_address": false,
"fee_id": null,
"fee_amount": 75,
"fee_payment": "before_start",
"allow_undecided": true,
"enable_sms_verification": true,
"redirect_url": null,
"thank_you_message": null,
"initial_email_template_id": null,
"enable_initial_email": true,
"retired_by_id": null,
"retired_at": null,
"default_localization_id": null,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Retrieves a specific ApplicationTemplate object.
HTTP Request
GET /applicationtemplates/(applicationtemplate)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- current_version
- academic_terms
- programs
- enrollment_options
- initial_email_template
Permissions
One of the following roles is required to call this method:
- Admissions Admin
Assignment
The Assignment object
The Assignment object looks like this in JSON:
{
"object": "assignment",
"id": 29656,
"course_offering_id": 21908,
"name": "Testy",
"points": 100,
"due_at": null,
"available_from": null,
"available_until": null,
"published": true,
"description": "This is a test",
"assignment_group_id": 0,
"lesson_id": 0,
"type": "test",
"visible_to_students_before_available": true,
"extra_credit": false,
"pass_fail": false,
"mandatory_pass": false,
"peer_review": false,
"anonymous_reviews": true,
"submission_visibility": "always",
"randomize_submissions": false,
"review_visibility": "never",
"allow_review_comments": false,
"peer_grade": false,
"grade_submissions": null,
"grade_reviews": null,
"reviews_due_at": null,
"reviews_closed_at": null,
"auto_check_submissions_for_plagiarism": false,
"plagiarism_checks_visible_to_students": false,
"plagiarism_check_provider": null,
"release_grades": "yes",
"release_grades_at": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
course_offering_id | Yes | int |
name | Yes | text (255) |
points | Yes | int |
due_at | No | datetime |
available_from | No | datetime |
available_until | No | datetime |
published | Yes | bool |
description | Yes | text |
assignment_group_id | No | int |
lesson_id | Yes | int |
type | Yes | enum (test, file_upload, neither, attendance, discussion, essay, lti_tool) |
visible_to_students_before_available | Yes | bool |
extra_credit | Yes | bool |
pass_fail | Yes | bool |
mandatory_pass | Yes | bool |
peer_review | Yes | bool |
anonymous_reviews | Yes | bool |
submission_visibility | Yes | enum (after_submission, always) |
randomize_submissions | Yes | bool |
review_visibility | Yes | enum (never, after_review, always) |
allow_review_comments | Yes | bool |
peer_grade | Yes | bool |
grade_submissions | No | int |
grade_reviews | No | int |
reviews_due_at | No | datetime |
reviews_closed_at | No | datetime |
auto_check_submissions_for_plagiarism | Yes | bool |
plagiarism_checks_visible_to_students | No | bool |
plagiarism_check_provider | No | enum (unicheck, turnitin, plagiarism_check) |
release_grades | Yes | enum (yes, no, date) |
release_grades_at | No | datetime |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/assignments" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 2,
"results": 2,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "assignment",
"id": 30070,
"course_offering_id": 21908,
"name": "Homework #1",
"points": 100,
"due_at": null,
"available_from": null,
"available_until": null,
"published": true,
"description": null,
"assignment_group_id": 9,
"lesson_id": 0,
"type": "neither",
"visible_to_students_before_available": true,
"extra_credit": false,
"pass_fail": false,
"mandatory_pass": false,
"peer_review": false,
"anonymous_reviews": true,
"submission_visibility": "always",
"randomize_submissions": false,
"review_visibility": "never",
"allow_review_comments": false,
"peer_grade": false,
"grade_submissions": null,
"grade_reviews": null,
"reviews_due_at": null,
"reviews_closed_at": null,
"auto_check_submissions_for_plagiarism": false,
"plagiarism_checks_visible_to_students": false,
"plagiarism_check_provider": null,
"release_grades": "yes",
"release_grades_at": null
}
],
"sandbox": true
}
Retrieves all Assignment objects tied to a specific Courseoffering.
HTTP Request
GET /courseofferings/(courseoffering)/assignments
Parameters
None
Permissions
One of the following roles is required to call this method:
- Staff
- Faculty
- Advisor
- Academic Auditor
- Academic Admin
- Registrar
create
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/assignments" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"name": "Reading Homework #1",
"type": "discussion"
}' \
Example response:
{
"object": "assignment",
"id": 40001,
"course_offering_id": 21908,
"name": "Reading Homework #1",
"points": null,
"due_at": null,
"available_from": null,
"available_until": null,
"published": false,
"description": null,
"assignment_group_id": 0,
"lesson_id": 0,
"type": "discussion",
"visible_to_students_before_available": false,
"extra_credit": false,
"pass_fail": false,
"mandatory_pass": false,
"peer_review": false,
"anonymous_reviews": false,
"submission_visibility": "after_submission",
"randomize_submissions": false,
"review_visibility": "never",
"allow_review_comments": false,
"peer_grade": false,
"grade_submissions": null,
"grade_reviews": null,
"reviews_due_at": null,
"reviews_closed_at": null,
"auto_check_submissions_for_plagiarism": false,
"plagiarism_checks_visible_to_students": false,
"plagiarism_check_provider": null,
"release_grades": "yes",
"release_grades_at": "2024-11-20T20:03:33+00:00",
"sandbox": true
}
Creates a new Assignment object.
HTTP Request
POST /courseofferings/(courseoffering)/assignments
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
name | Yes | text (255) | |
type | Yes | enum (test, file_upload, neither, attendance, discussion, essay, lti_tool) | |
description | No | text | |
assignment_group_id | No | int | |
discussion_id | No | bool | Default is 0 |
catalog_course_ids | No | array of CatalogCourse ids | |
points | No | int | |
extra_credit | No | bool | |
published | No | bool | Default is false |
time_due | No | datetime | |
visible_to_students_before_available | No | bool | |
availability | No | enum (from, after, before, always) | |
start_window | No | datetime | |
end_window | No | datetime | |
time_limit | No | int | |
retake_policy | No | enum (keep_highest, keep_last, average) | |
retakes | No | int | |
proctored | No | bool | |
test_submit_feedback | No | enum (score, feedback, answers) | |
test_end_feedback | No | enum (score, feedback, answers) | |
course_end_feedback | No | enum (score, feedback, answers) | |
peer_grade | No | bool | |
grade_submission_points | No | int | |
grade_review_points | No | int | |
anonymous_reviews | No | bool | |
review_visibility | No | enum (never, after_review, always) | |
allow_review_comments | No | bool | |
reviews_time_due | No | datetime | |
reviews_closed_date_time | No | datetime |
Permissions
One of the following roles is required to call this method:
- Academic Admin
- Registrar
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/assignments/(assignment)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "assignment",
"id": 29656,
"course_offering_id": 21908,
"name": "Testy",
"points": 100,
"due_at": null,
"available_from": null,
"available_until": null,
"published": true,
"description": "This is a test",
"assignment_group_id": 0,
"lesson_id": 0,
"type": "test",
"visible_to_students_before_available": true,
"extra_credit": false,
"pass_fail": false,
"mandatory_pass": false,
"peer_review": false,
"anonymous_reviews": true,
"submission_visibility": "always",
"randomize_submissions": false,
"review_visibility": "never",
"allow_review_comments": false,
"peer_grade": false,
"grade_submissions": null,
"grade_reviews": null,
"reviews_due_at": null,
"reviews_closed_at": null,
"auto_check_submissions_for_plagiarism": false,
"plagiarism_checks_visible_to_students": false,
"plagiarism_check_provider": null,
"release_grades": "yes",
"release_grades_at": null,
"sandbox": true
}
Retrieves a specific Assignment object.
HTTP Request
GET /courseofferings/(courseoffering)/assignments/(assignment)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- requirements
- catalog_courses
- student_exceptions
- rubrics
- test
- discussion
- lti_link
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/courseofferings/(courseoffering)/assignments/(assignment)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X PUT
Example response:
{
"object": "assignment",
"id": 29656,
"course_offering_id": 21908,
"name": "Testy",
"points": 100,
"due_at": null,
"available_from": null,
"available_until": null,
"published": true,
"description": "This is a test",
"assignment_group_id": 0,
"lesson_id": 0,
"type": "test",
"visible_to_students_before_available": false,
"extra_credit": false,
"pass_fail": false,
"mandatory_pass": false,
"peer_review": false,
"anonymous_reviews": false,
"submission_visibility": "after_submission",
"randomize_submissions": false,
"review_visibility": "never",
"allow_review_comments": false,
"peer_grade": false,
"grade_submissions": null,
"grade_reviews": null,
"reviews_due_at": null,
"reviews_closed_at": null,
"auto_check_submissions_for_plagiarism": false,
"plagiarism_checks_visible_to_students": false,
"plagiarism_check_provider": null,
"release_grades": "yes",
"release_grades_at": "2024-11-20T12:03:33+00:00",
"sandbox": true
}
Updates an existing Assignment object.
HTTP Request
PUT /courseofferings/(courseoffering)/assignments/(assignment)
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
name | No | text (255) | |
description | No | text | |
assignment_group_id | No | int | |
discussion_id | No | bool | Default is 0 |
catalog_course_ids | No | array of CatalogCourse ids | |
points | No | int | |
extra_credit | No | bool | |
published | No | bool | Default is false |
time_due | No | datetime | |
visible_to_students_before_available | No | bool | |
availability | No | enum (from, after, before, always) | |
start_window | No | datetime | |
end_window | No | datetime | |
time_limit | No | int | |
retake_policy | No | enum (keep_highest, keep_last, average) | |
retakes | No | int | |
proctored | No | bool | |
test_submit_feedback | No | enum (score, feedback, answers) | |
test_end_feedback | No | enum (score, feedback, answers) | |
course_end_feedback | No | enum (score, feedback, answers) | |
peer_grade | No | bool | |
grade_submission_points | No | int | |
grade_review_points | No | int | |
anonymous_reviews | No | bool | |
review_visibility | No | enum (never, after_review, always) | |
allow_review_comments | No | bool | |
reviews_time_due | No | datetime | |
reviews_closed_date_time | No | datetime |
Permissions
One of the following roles is required to call this method:
- Academic Admin
- Registrar
delete
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/assignments/(assignment)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "assignment",
"id": 40000,
"deleted": true
}
Deletes an existing Assignment object.
HTTP Request
DELETE /courseofferings/(courseoffering)/assignments/(assignment)
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
AssignmentGrade
The AssignmentGrade object
The AssignmentGrade object looks like this in JSON:
{
"object": "assignment_grade",
"id": 216741,
"course_offering_id": 22776,
"assignment_id": 21998,
"student_id": 1,
"grade": 93,
"excused": false,
"added_at": null,
"added_by_id": null,
"updated_at": null,
"updated_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
course_offering_id | Yes | int |
assignment_id | Yes | int |
student_id | Yes | int |
grade | No | decimal |
excused | Yes | bool |
added_at | No | datetime |
added_by_id | No | int |
updated_at | No | datetime |
updated_by_id | No | int |
sandbox | No | -- |
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/assignments/(assignment)/students/(person)/grade" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "assignment_grade",
"id": 280000,
"course_offering_id": 21908,
"assignment_id": 29656,
"student_id": 16,
"grade": 10,
"excused": false,
"added_at": null,
"added_by_id": null,
"updated_at": null,
"updated_by_id": null,
"sandbox": true
}
Retrieves a specific AssignmentGrade object.
HTTP Request
GET /courseofferings/(courseoffering)/assignments/(assignment)/students/(person)/grade
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 Admin
- Registrar
update
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/assignments/(assignment)/students/(person)/grade/update" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X PUT
-d '{
"grade": 85
}' \
Example response:
{
"object": "assignment_grade",
"id": 280000,
"course_offering_id": 21908,
"assignment_id": 29656,
"student_id": 16,
"grade": 85,
"excused": false,
"added_at": null,
"added_by_id": null,
"updated_at": "2024-11-20T20:03:33+00:00",
"updated_by_id": 22,
"sandbox": true
}
Updates an existing AssignmentGrade object.
HTTP Request
PUT /courseofferings/(courseoffering)/assignments/(assignment)/students/(person)/grade/update
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
grade | Yes | decimal |
Action Parameters
Name | Data Type | Description |
---|---|---|
recalculate_final_grade | bool |
Permissions
One of the following roles is required to call this method:
- Academic Admin
- Registrar
AssignmentGroup
The AssignmentGroup object
The AssignmentGroup object looks like this in JSON:
{
"object": "assignment_group",
"id": 1,
"course_offering_id": 23370,
"name": "Tests",
"weight": 40,
"extra_credit": false,
"drop_lowest": 0,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
course_offering_id | Yes | int |
name | Yes | text (255) |
weight | Yes | int |
extra_credit | Yes | bool |
drop_lowest | Yes | int |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/assignmentgroups" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 2,
"results": 2,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "assignment_group",
"id": 11,
"course_offering_id": 21908,
"name": "Homework",
"weight": 25,
"extra_credit": false,
"drop_lowest": 0,
"added_at": null,
"added_by_id": null
}
],
"sandbox": true
}
Retrieves all AssignmentGroup objects tied to a specific Courseoffering.
HTTP Request
GET /courseofferings/(courseoffering)/assignmentgroups
Parameters
None
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/courseofferings/(courseoffering)/assignmentgroups" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"name": "Weekly Quizes"
}' \
Example response:
{
"object": "assignment_group",
"id": 12,
"course_offering_id": 21908,
"name": "Weekly Quizes",
"weight": null,
"extra_credit": false,
"drop_lowest": 0,
"added_at": "2024-11-20T20:03:33+00:00",
"added_by_id": 22,
"sandbox": true
}
Creates a new AssignmentGroup object.
HTTP Request
POST /courseofferings/(courseoffering)/assignmentgroups
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
name | Yes | text (255) | |
weight | No | int | Default is 0 |
extra_credit | No | bool | Default is false |
drop_lowest | No | int | Default is 0 |
Permissions
One of the following roles is required to call this method:
- Academic Admin
- Registrar
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/assignmentgroups/(assignmentgroup)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "assignment_group",
"id": 1,
"course_offering_id": 23370,
"name": "Tests",
"weight": 40,
"extra_credit": false,
"drop_lowest": 0,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Retrieves a specific AssignmentGroup object.
HTTP Request
GET /courseofferings/(courseoffering)/assignmentgroups/(assignmentgroup)
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 Admin
- Registrar
update
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/assignmentgroups/(assignmentgroup)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X PUT
Example response:
{
"object": "assignment_group",
"id": 11,
"course_offering_id": 21908,
"name": "Homework",
"weight": 25,
"extra_credit": false,
"drop_lowest": 0,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Updates an existing AssignmentGroup object.
HTTP Request
PUT /courseofferings/(courseoffering)/assignmentgroups/(assignmentgroup)
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
name | No | text (255) | |
weight | No | int | |
extra_credit | No | bool | |
drop_lowest | No | int |
Permissions
One of the following roles is required to call this method:
- Academic Admin
- Registrar
delete
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/assignmentgroups/(assignmentgroup)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "assignment_group",
"id": 11,
"deleted": true
}
Deletes an existing AssignmentGroup object.
HTTP Request
DELETE /courseofferings/(courseoffering)/assignmentgroups/(assignmentgroup)
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
AssignmentSubmission
The AssignmentSubmission object
The AssignmentSubmission object looks like this in JSON:
{
"object": "assignment_submission",
"id": 6,
"assignment_id": 24668,
"student_id": 2921,
"comment": "comment #5",
"content": "blah blah",
"file_id": null,
"student_visibility": "visible",
"draft": false,
"student_submission": false,
"assignment_time_due": null,
"plagiarism_checks_visible_to_student": false,
"added_at": "2011-07-21T21:45:16+00:00",
"added_by_id": 2921,
"updated_at": null,
"updated_by_id": null,
"deleted_at": null,
"deleted_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
assignment_id | Yes | int |
student_id | Yes | int |
comment | No | text |
content | No | text |
file_id | No | int |
student_visibility | Yes | enum (visible, visible_after_grade_release, not_visible) |
draft | Yes | bool |
student_submission | Yes | bool |
assignment_time_due | Yes | datetime |
plagiarism_checks_visible_to_student | Yes | bool |
added_at | Yes | datetime |
added_by_id | No | int |
updated_at | No | datetime |
updated_by_id | No | int |
deleted_at | No | datetime |
deleted_by_id | No | int |
sandbox | No | -- |
comments
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/assignments/(assignment)/students/(person)/comments" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "assignment_submission",
"id": 8,
"assignment_id": 29656,
"student_id": 12,
"comment": "comment #55",
"content": "blah blah",
"file_id": null,
"student_visibility": "visible",
"draft": false,
"student_submission": false,
"assignment_time_due": null,
"plagiarism_checks_visible_to_student": false,
"added_at": "2011-07-21T21:45:16+00:00",
"added_by_id": 16,
"updated_at": null,
"updated_by_id": null,
"deleted_at": null,
"deleted_by_id": null
}
],
"sandbox": true
}
HTTP Request
GET /courseofferings/(courseoffering)/assignments/(assignment)/students/(person)/comments
Parameters
None
Permissions
One of the following roles is required to call this method:
- Registrar
- Academic Admin
create_comment
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/assignments/(assignment)/students/(person)/comments/create" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"comment": "I thought the introductory paragraph was too long."
}' \
Example response:
"Example response not available."
HTTP Request
POST /courseofferings/(courseoffering)/assignments/(assignment)/students/(person)/comments/create
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
comment | Yes | text | |
internal | No |
You can optionally include a file upload with this route. Use a form post parameter called "file". Read about request and response format to see how parameters need to be specified differently when there is a file upload.
Permissions
One of the following roles is required to call this method:
- Registrar
- Academic Admin
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/assignments/(assignment)/submissions/(person)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "assignment_submission",
"id": 8,
"assignment_id": 29656,
"student_id": 12,
"comment": "comment #55",
"content": "blah blah",
"file_id": null,
"student_visibility": "visible",
"draft": false,
"student_submission": false,
"assignment_time_due": null,
"plagiarism_checks_visible_to_student": false,
"added_at": "2011-07-21T21:45:16+00:00",
"added_by_id": 16,
"updated_at": null,
"updated_by_id": null,
"deleted_at": null,
"deleted_by_id": null
}
],
"sandbox": true
}
Retrieves all AssignmentSubmission objects tied to a specific Courseoffering.
HTTP Request
GET /courseofferings/(courseoffering)/assignments/(assignment)/submissions/(person)
Parameters
None
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Registrar
- Academic Admin
create
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/assignments/(assignment)/submissions/(person)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"comment": "The third paragraph needs a footnote."
}' \
Example response:
"Example response not available."
Creates a new AssignmentSubmission object.
HTTP Request
POST /courseofferings/(courseoffering)/assignments/(assignment)/submissions/(person)
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
content | No | text | |
draft | No | bool | |
comment | No | text |
You can optionally include a file upload with this route. Use a form post parameter called "file". Read about request and response format to see how parameters need to be specified differently when there is a file upload.
Permissions
One of the following roles is required to call this method:
- Registrar
- Academic Admin
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/assignments/(assignment)/submissions/(person)/(assignmentsubmission)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "assignment_submission",
"id": 9,
"assignment_id": 29656,
"student_id": 16,
"comment": "comment #57",
"content": "blah blah",
"file_id": null,
"student_visibility": "visible",
"draft": false,
"student_submission": false,
"assignment_time_due": null,
"plagiarism_checks_visible_to_student": false,
"added_at": "2011-07-21T21:45:16+00:00",
"added_by_id": 16,
"updated_at": null,
"updated_by_id": null,
"deleted_at": null,
"deleted_by_id": null,
"sandbox": true
}
Retrieves a specific AssignmentSubmission object.
HTTP Request
GET /courseofferings/(courseoffering)/assignments/(assignment)/submissions/(person)/(assignmentsubmission)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- file
- discussion
- faculty_grade
- peer_grades
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Registrar
- Academic Admin
delete
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/assignments/(assignment)/submissions/(person)/(assignmentsubmission)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "assignment_submission",
"id": 9,
"deleted": true
}
Deletes an existing AssignmentSubmission object.
HTTP Request
DELETE /courseofferings/(courseoffering)/assignments/(assignment)/submissions/(person)/(assignmentsubmission)
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:
- Registrar
- Academic Admin
Automation
The Automation object
The Automation object looks like this in JSON:
{
"object": "automation",
"id": 1,
"abbrv": "PERSON_CREATED",
"name": "Person Added",
"description": "Whenever a new person is added.",
"module": "people",
"status": "active",
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
abbrv | No | text (200) |
name | No | text (300) |
description | No | text (1000) |
module | No | enum (admissions, academics, donations, billing, library, bookstore, financial, campus_life, groups, people, users, students, contact_organizations, course_offerings, accounting, financial_aid, forms) |
status | No | enum (active, deleted) |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/automations" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 76,
"results": 76,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "automation",
"id": 224,
"abbrv": "ADVISOR_ASSIGNED_TO_STUDENT",
"name": "Advisor Assigned to Student",
"description": "Whenever an advisor is assigned to a student.",
"module": "students",
"status": "active"
}
],
"sandbox": true
}
Retrieves all Automation objects.
HTTP Request
GET /automations
Parameters
None
Permissions
One of the following roles is required to call this method:
- Staff
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/automations/(automation)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "automation",
"id": 1,
"abbrv": "PERSON_CREATED",
"name": "Person Added",
"description": "Whenever a new person is added.",
"module": "people",
"status": "active",
"sandbox": true
}
Retrieves a specific Automation object.
HTTP Request
GET /automations/(automation)
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:
- Staff
AutomationHandler
The AutomationHandler object
The AutomationHandler object looks like this in JSON:
{
"object": "automation_handler",
"id": 1,
"automation_id": 61,
"owner_type": null,
"owner_id": null,
"name": "Notify me when my grades change",
"description": "Whenever a grade in a course changes for a student, notify them.",
"abbrv": "notify_me_when_my_grades_change",
"user_managed_subscriptions": true,
"status": "active",
"overrides_handler_id": null,
"cloned_from_id": null,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
automation_id | No | int |
owner_type | No | text (100) |
owner_id | No | int |
name | No | text (100) |
description | No | text (1000) |
abbrv | No | text (100) |
user_managed_subscriptions | Yes | bool |
status | Yes | enum (active, paused, deleted) |
overrides_handler_id | No | int |
cloned_from_id | No | int |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/automationhandler/(automationhandler)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "automation_handler",
"id": 1,
"automation_id": 61,
"owner_type": null,
"owner_id": null,
"name": "Notify me when my grades change",
"description": "Whenever a grade in a course changes for a student, notify them.",
"abbrv": "notify_me_when_my_grades_change",
"user_managed_subscriptions": true,
"status": "active",
"overrides_handler_id": null,
"cloned_from_id": null,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Retrieves a specific AutomationHandler object.
HTTP Request
GET /automationhandler/(automationhandler)
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:
- Development
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/automationhandlers" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 4,
"results": 4,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "automation_handler",
"id": 2,
"automation_id": 49,
"owner_type": null,
"owner_id": null,
"name": "Notify me of instructor bulletin board posts",
"description": "Whenever an instructor posts to a bulletin board in one of my courses, let me know.",
"abbrv": "notify_me_of_instructor_bulletin_board_posts",
"user_managed_subscriptions": true,
"status": "active",
"overrides_handler_id": null,
"cloned_from_id": null,
"added_at": null,
"added_by_id": null
}
],
"sandbox": true
}
Retrieves all AutomationHandler objects.
HTTP Request
GET /automationhandlers
Parameters
None
Permissions
One of the following roles is required to call this method:
- Development
Backup
The Backup object
The Backup object looks like this in JSON:
{
"object": "backup",
"id": 6,
"status": "in_progress",
"started_at": "2020-11-16T20:00:01+00:00",
"completed_at": null,
"on_complete_email": "0",
"on_complete_url": null,
"added_at": "2020-11-10T19:59:25+00:00",
"added_by_id": 1,
"deleted_at": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
status | Yes | enum (waiting, in_progress, completed, deleted, error) |
started_at | No | datetime |
completed_at | No | datetime |
on_complete_email | No | text (300) |
on_complete_url | No | text (1000) |
added_at | No | datetime |
added_by_id | No | int |
deleted_at | No | datetime |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/backups" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 2,
"results": 2,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "backup",
"id": 6,
"status": "in_progress",
"started_at": "2020-11-16T20:00:01+00:00",
"completed_at": null,
"on_complete_email": "0",
"on_complete_url": null,
"added_at": "2020-11-10T19:59:25+00:00",
"added_by_id": 1,
"deleted_at": null
}
],
"sandbox": true
}
Retrieves all Backup objects.
HTTP Request
GET /backups
Parameters
None
Permissions
Only keys that have been granted Populi Account Administrator permissions may call this method.
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/backups/(backup)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "backup",
"id": 6,
"status": "in_progress",
"started_at": "2020-11-16T20:00:01+00:00",
"completed_at": null,
"on_complete_email": "0",
"on_complete_url": null,
"added_at": "2020-11-10T19:59:25+00:00",
"added_by_id": 1,
"deleted_at": null,
"sandbox": true
}
Retrieves a specific Backup object.
HTTP Request
GET /backups/(backup)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Permissions
Only keys that have been granted Populi Account Administrator permissions may call this method.
download
curl "https://yourschool.populiweb.com/api2/backups/(backup)/download" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{}
HTTP Request
GET /backups/(backup)/download
Parameters
None
Permissions
Only keys that have been granted Populi Account Administrator permissions may call this method.
most_recent_completed
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/backups/most_recent_completed" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "backup",
"id": 7,
"status": "completed",
"started_at": "2020-11-16T20:00:01+00:00",
"completed_at": null,
"on_complete_email": "0",
"on_complete_url": null,
"added_at": "2020-11-10T19:59:25+00:00",
"added_by_id": 1,
"deleted_at": null,
"sandbox": true
}
HTTP Request
GET /backups/most_recent_completed
Parameters
None
Permissions
Only keys that have been granted Populi Account Administrator permissions may call this method.
request
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/backups/request" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
Example response:
{
"object": "backup",
"id": 8,
"status": "waiting",
"started_at": null,
"completed_at": null,
"on_complete_email": null,
"on_complete_url": null,
"added_at": "2024-11-20T20:03:34+00:00",
"added_by_id": 22,
"deleted_at": null,
"sandbox": true
}
HTTP Request
POST /backups/request
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
on_complete_email | No | text (300) | |
on_complete_url | No | text (1000) |
Permissions
Only keys that have been granted Populi Account Administrator permissions may call this method.
BookstoreBookstoreItemCategory
The BookstoreBookstoreItemCategory object
The BookstoreBookstoreItemCategory object looks like this in JSON:
{
"object": "bookstore_item_category",
"id": 9,
"parent_id": 0,
"name": "Science Fiction",
"status": "active",
"order_id": 3,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | No | int |
parent_id | Yes | int |
name | Yes | text (30) |
status | Yes | enum (active, deleted) |
order_id | Yes | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/itemcategories" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "bookstore_item_category",
"id": 9,
"parent_id": 0,
"name": "Science Fiction",
"status": "active",
"order_id": 3
}
],
"sandbox": true
}
Retrieves all BookstoreBookstoreItemCategory objects.
HTTP Request
GET /itemcategories
Parameters
None
Permissions
One of the following roles is required to call this method:
- Bookstore Admin
- Financial Admin
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/itemcategories/(bookstoreitemcategory)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 7,
"results": 7,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": {
"object": "bookstore_item_category",
"id": 9,
"parent_id": 0,
"name": "Science Fiction",
"status": "active",
"order_id": 3,
"items": []
}
}
Retrieves a specific BookstoreBookstoreItemCategory object. Includes all Items in the specified ItemCategory.
HTTP Request
GET /itemcategories/(bookstoreitemcategory)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Permissions
Any role may call this method.
BookstoreDiscountCode
The BookstoreDiscountCode object
The BookstoreDiscountCode object looks like this in JSON:
{
"object": "discount_code",
"id": 1,
"code": "SUPERSALE!",
"type": "bookstore",
"amount": 0,
"percent": 30,
"applies_to": "all",
"available_to": "all",
"min_total": null,
"max_uses": null,
"can_combine": false,
"pos_only": false,
"starts": null,
"expires": null,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
code | No | text (100) |
type | No | enum (bookstore, application, form) |
amount | No | decimal |
percent | No | int |
applies_to | No | enum (all, selected, shipping) |
available_to | No | enum (all, roles) |
min_total | No | decimal |
max_uses | No | int |
can_combine | Yes | bool |
pos_only | Yes | bool |
starts | No | datetime |
expires | No | datetime |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/discountcodes" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"filter": {"0":{"logic":"ALL","fields":[{"name":"active","value":"YES","positive":1}]}}
}' \
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": 200,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "discount_code",
"id": 1,
"code": "SUPERSALE!",
"type": "bookstore",
"amount": 0,
"percent": 30,
"applies_to": "all",
"available_to": "all",
"min_total": null,
"max_uses": null,
"can_combine": false,
"pos_only": false,
"starts": null,
"expires": null,
"added_at": null,
"added_by_id": null,
"report_data": {
"num_uses": 0
}
}
],
"sandbox": true
}
Retrieves all BookstoreDiscountCode objects that match given filter conditions.
HTTP Request
GET /discountcodes
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. |
Filter Condition Parameters
These conditions can be used to narrow the results returned.
Name | Type |
---|---|
active | bool |
amount_off | decimal |
applies_to | choice |
available_to | choice |
can_combine | bool |
expires | datetime |
max_uses | integer |
minimum_order | decimal |
percent_off | integer |
uses | integer |
valid_starting | datetime |
Permissions
One of the following roles is required to call this method:
- Bookstore Admin
- Financial Admin
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/discountcodes/(bookstorediscountcode)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "discount_code",
"id": 1,
"code": "SUPERSALE!",
"type": "bookstore",
"amount": 0,
"percent": 30,
"applies_to": "all",
"available_to": "all",
"min_total": null,
"max_uses": null,
"can_combine": false,
"pos_only": false,
"starts": null,
"expires": null,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Retrieves a specific BookstoreDiscountCode object.
HTTP Request
GET /discountcodes/(bookstorediscountcode)
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:
- Bookstore Admin
- Financial Admin
BookstoreItem
The BookstoreItem object
The BookstoreItem object looks like this in JSON:
{
"object": "bookstore_item",
"id": 40,
"category_id": 7,
"name": "Infinity in Most Directions",
"description": "Revised with extensive footnotes.",
"status": "available",
"tax_free": false,
"isbn": "9781411179988",
"image_file_id": null,
"income_account_id": 0,
"can_charge_to_account": false,
"vendor_id": 10,
"report_on_1098t": true,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | No | int |
category_id | No | int |
name | Yes | text (200) |
description | Yes | text |
status | Yes | enum (available, not_available, deleted) |
tax_free | Yes | bool |
isbn | No | text (20) |
image_file_id | No | int |
income_account_id | No | int |
can_charge_to_account | Yes | bool |
vendor_id | No | int |
report_on_1098t | Yes | bool |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/items" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"filter": {"0":{"logic":"ALL","fields":[{"name":"status","value":"BLAH","positive":1}]}}
}' \
Example response:
{
"object": "list",
"count": 2,
"results": 2,
"results_per_page": 200,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "bookstore_item",
"id": 40,
"category_id": 7,
"name": "Infinity in Most Directions",
"description": "Revised with extensive footnotes.",
"status": "available",
"tax_free": false,
"isbn": "9781411179988",
"image_file_id": null,
"income_account_id": 0,
"can_charge_to_account": false,
"vendor_id": 10,
"report_on_1098t": true,
"report_data": {
"price": "12.00",
"max_price": "12.00",
"min_list_price": "12.00",
"max_list_price": "12.00",
"has_variations_on_sale": 0,
"num_variations": 1,
"total_sold": "31",
"quantity_available": "50",
"category_name": null,
"item_status": "available",
"vendor_name": null
}
}
],
"sandbox": true
}
Retrieves all BookstoreItem objects that match given filter conditions.
HTTP Request
GET /items
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
- variations
Filter Condition Parameters
These conditions can be used to narrow the results returned.
Name | Type |
---|---|
search | text |
category | itemcategory |
status | choice |
tax_free | bool |
inventory | integer |
isbn | text |
total_sold | integer |
min_price | decimal |
max_price | decimal |
Permissions
One of the following roles is required to call this method:
- Bookstore
- Financial Auditor
- Bookstore Admin
- Financial Admin
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/items/(bookstoreitem)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "bookstore_item",
"id": 40,
"category_id": 7,
"name": "Infinity in Most Directions",
"description": "Revised with extensive footnotes.",
"status": "available",
"tax_free": false,
"isbn": "9781411179988",
"image_file_id": null,
"income_account_id": 0,
"can_charge_to_account": false,
"vendor_id": 10,
"report_on_1098t": true,
"sandbox": true
}
Retrieves a specific BookstoreItem object.
HTTP Request
GET /items/(bookstoreitem)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- variations
Permissions
Any role may call this method.
BookstoreOrder
The BookstoreOrder object
The BookstoreOrder object looks like this in JSON:
{
"object": "bookstore_order",
"id": 10,
"user_id": 1257,
"first_name": "James",
"last_name": "Hill",
"email": "jjames@yahoo.com",
"phone": "555-995-4444 x 4401",
"transaction_id": 0,
"online_payment_id": null,
"shipping_method_id": null,
"carrier_id": 0,
"tracking_number": null,
"secret": "a4afg174197c5a",
"source": "internet",
"ship_to_name": null,
"ship_to_street": "111 Bobski Ln",
"ship_to_city": "Bobtecka",
"ship_to_state": "IA",
"ship_to_postal": "8888",
"ship_to_country": null,
"is_picking_up": true,
"item_total": 109.5,
"item_discount": 0,
"return_item_total": 0,
"shipping": 0,
"shipping_discount": 0,
"tax_exempt": false,
"tax": 7.11,
"return_tax": 0,
"total": 116.61,
"status": "fulfilled",
"payment_gateway_id": null,
"placed_at": "2019-11-05T20:58:06+00:00",
"fulfilled_at": null,
"voided_at": null,
"academic_term_id": 0,
"online_amount": 0,
"cash_amount": 0,
"check_amount": 0,
"on_account_amount": 0,
"refund_on_account_amount": 0,
"refund_tax_on_account_amount": 0,
"check_reference_number": null,
"special_instructions": null,
"tax_on_account": false,
"shipping_on_account": false,
"suspended_by_id": null,
"suspended_at": null,
"added_at": "2009-11-11T19:57:53+00:00",
"added_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | No | int |
user_id | Yes | int |
first_name | Yes | text (50) |
last_name | Yes | text (50) |
Yes | text (50) | |
phone | Yes | text (50) |
transaction_id | Yes | int |
online_payment_id | No | int |
shipping_method_id | Yes | int |
carrier_id | Yes | int |
tracking_number | No | text (100) |
secret | Yes | text (60) |
source | Yes | enum (internet, point_of_sale) |
ship_to_name | Yes | text (75) |
ship_to_street | Yes | text (150) |
ship_to_city | Yes | text (100) |
ship_to_state | Yes | text (50) |
ship_to_postal | Yes | text (50) |
ship_to_country | Yes | text (50) |
is_picking_up | Yes | bool |
item_total | Yes | decimal |
item_discount | Yes | decimal |
return_item_total | Yes | decimal |
shipping | Yes | decimal |
shipping_discount | Yes | decimal |
tax_exempt | Yes | bool |
tax | Yes | decimal |
return_tax | Yes | decimal |
total | Yes | decimal |
status | Yes | enum (construction, processing, void, pending, fulfilled) |
payment_gateway_id | No | int |
placed_at | No | datetime |
fulfilled_at | No | datetime |
voided_at | No | datetime |
academic_term_id | No | int |
online_amount | Yes | decimal |
cash_amount | Yes | decimal |
check_amount | Yes | decimal |
on_account_amount | Yes | decimal |
refund_on_account_amount | Yes | decimal |
refund_tax_on_account_amount | Yes | decimal |
check_reference_number | Yes | text (100) |
special_instructions | No | text (1000) |
tax_on_account | Yes | bool |
shipping_on_account | Yes | bool |
suspended_by_id | No | int |
suspended_at | No | datetime |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/orders" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"filter": {"0":{"logic":"ALL","fields":[{"name":"last_name","value":{"type":"CONTAINS","text":"blah"},"positive":1}]}}
}' \
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": 200,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "bookstore_order",
"id": 10,
"user_id": 1257,
"first_name": "James",
"last_name": "Hill",
"email": "jjames@yahoo.com",
"phone": "555-995-4444 x 4401",
"transaction_id": 0,
"online_payment_id": null,
"shipping_method_id": null,
"carrier_id": 0,
"tracking_number": null,
"secret": "a4afg174197c5a",
"source": "internet",
"ship_to_name": null,
"ship_to_street": "111 Bobski Ln",
"ship_to_city": "Bobtecka",
"ship_to_state": "IA",
"ship_to_postal": "8888",
"ship_to_country": null,
"is_picking_up": true,
"item_total": 109.5,
"item_discount": 0,
"return_item_total": 0,
"shipping": 0,
"shipping_discount": 0,
"tax_exempt": false,
"tax": 7.11,
"return_tax": 0,
"total": 116.61,
"status": "fulfilled",
"payment_gateway_id": null,
"placed_at": "2019-11-05T20:58:06+00:00",
"fulfilled_at": null,
"voided_at": null,
"academic_term_id": 0,
"online_amount": 0,
"cash_amount": 0,
"check_amount": 0,
"on_account_amount": 0,
"refund_on_account_amount": 0,
"refund_tax_on_account_amount": 0,
"check_reference_number": null,
"special_instructions": null,
"tax_on_account": false,
"shipping_on_account": false,
"suspended_by_id": null,
"suspended_at": null,
"added_at": "2009-11-11T19:57:53+00:00",
"added_by_id": null,
"report_data": {
"shipping_method_name": null
}
}
],
"sandbox": true
}
Retrieves all BookstoreOrder objects that match given filter conditions.
HTTP Request
GET /orders
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
- items
- return_items
- discount_codes
- refunded_cards
- shipping_method
- online_payment
Filter Condition Parameters
These conditions can be used to narrow the results returned.
Name | Type |
---|---|
placed | datetime |
first_name | text |
last_name | text |
shipping_method | object id |
source | choice |
status | choice |
total | decimal |
Permissions
One of the following roles is required to call this method:
- Bookstore
- Financial Auditor
- Bookstore Admin
- Financial Admin
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/orders/(bookstoreorder)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "bookstore_order",
"id": 2787,
"user_id": 22,
"first_name": "API",
"last_name": "Dude",
"email": null,
"phone": null,
"transaction_id": 0,
"online_payment_id": null,
"shipping_method_id": null,
"carrier_id": 0,
"tracking_number": null,
"secret": "ostb673e4094c1991",
"source": "internet",
"ship_to_name": null,
"ship_to_street": null,
"ship_to_city": null,
"ship_to_state": null,
"ship_to_postal": null,
"ship_to_country": null,
"is_picking_up": true,
"item_total": 0,
"item_discount": 0,
"return_item_total": 0,
"shipping": 0,
"shipping_discount": 0,
"tax_exempt": false,
"tax": 0,
"return_tax": 0,
"total": 0,
"status": "construction",
"payment_gateway_id": null,
"placed_at": null,
"fulfilled_at": null,
"voided_at": null,
"academic_term_id": 0,
"online_amount": 0,
"cash_amount": 0,
"check_amount": 0,
"on_account_amount": 0,
"refund_on_account_amount": 0,
"refund_tax_on_account_amount": 0,
"check_reference_number": null,
"special_instructions": null,
"tax_on_account": false,
"shipping_on_account": false,
"suspended_by_id": null,
"suspended_at": null,
"added_at": "2024-11-20T20:03:32+00:00",
"added_by_id": 22,
"sandbox": true
}
Retrieves a specific BookstoreOrder object.
HTTP Request
GET /orders/(bookstoreorder)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- items
- return_items
- discount_codes
- refunded_cards
- shipping_method
- online_payment
Permissions
One of the following roles is required to call this method:
- Bookstore
- Financial Auditor
- Bookstore Admin
- Financial Admin
Building
The Building object
The Building object looks like this in JSON:
{
"object": "building",
"id": 1,
"campus_id": 8,
"name": "Anselm House Annex",
"street": "20500 East Fifth Street",
"city": "Moscow",
"state": "ID",
"postal": "83843",
"country": "US",
"floors": 2,
"basement_floors": 1,
"retired_at": null,
"retired_by_id": null,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
campus_id | Yes | int |
name | Yes | text (255) |
street | Yes | text (255) |
city | Yes | text (255) |
state | Yes | text (50) |
postal | No | -- |
country | Yes | text (50) |
floors | Yes | int |
basement_floors | No | int |
retired_at | No | datetime |
retired_by_id | No | int |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/buildings" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "building",
"id": 1,
"campus_id": 8,
"name": "Anselm House Annex",
"street": "20500 East Fifth Street",
"city": "Moscow",
"state": "ID",
"postal": "83843",
"country": "US",
"floors": 2,
"basement_floors": 1,
"retired_at": null,
"retired_by_id": null,
"added_at": null,
"added_by_id": null
}
],
"sandbox": true
}
Retrieves all Building objects.
HTTP Request
GET /buildings
Parameters
None
Permissions
One of the following roles is required to call this method:
- Staff
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/buildings/(building)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "building",
"id": 1,
"campus_id": 8,
"name": "Anselm House Annex",
"street": "20500 East Fifth Street",
"city": "Moscow",
"state": "ID",
"postal": "83843",
"country": "US",
"floors": 2,
"basement_floors": 1,
"retired_at": null,
"retired_by_id": null,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Retrieves a specific Building object.
HTTP Request
GET /buildings/(building)
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:
- Staff
COACategory
The COACategory object
The COACategory object looks like this in JSON:
{
"object": "coa_category",
"id": 1,
"name": "Books",
"type": "books_and_supplies",
"added_at": "2010-01-01T00:00:00+00:00",
"added_by_id": 4457,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
name | Yes | text (30) |
type | Yes | enum (books_and_supplies, transportation, other_costs, tuition, fee, housing, meals) |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/coacategories" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "coa_category",
"id": 1,
"name": "Books",
"type": "books_and_supplies",
"added_at": "2010-01-01T00:00:00+00:00",
"added_by_id": 4457
}
],
"sandbox": true
}
Retrieves all COACategory objects.
HTTP Request
GET /coacategories
Parameters
None
Permissions
One of the following roles is required to call this method:
- Financial Aid
- Financial Admin
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/coacategories/(coacategory)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "coa_category",
"id": 1,
"name": "Books",
"type": "books_and_supplies",
"added_at": "2010-01-01T00:00:00+00:00",
"added_by_id": 4457,
"sandbox": true
}
Retrieves a specific COACategory object.
HTTP Request
GET /coacategories/(coacategory)
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:
- Financial Aid
- Financial Admin
CalendarEvent
The CalendarEvent object
The CalendarEvent object looks like this in JSON:
{
"object": "calendar_event",
"id": 1,
"owner_id": 21908,
"owner_type": "instance",
"summary": "BR101: Main Class",
"description": null,
"start_date": "2022-08-01T13:00:00+00:00",
"end_date": "2022-08-01T14:00:00+00:00",
"all_day": false,
"rfrequency": "weekly",
"rinterval": 1,
"rcount": null,
"runtil": "2022-12-31",
"rbyday": "MO,WE,FR",
"rskips": null,
"closure": false,
"closure_academic_year_id": null,
"status": "active",
"busy": true,
"sequence": null,
"room_id": 0,
"location": null,
"room_status": "NONE",
"url": null,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
owner_id | Yes | int |
owner_type | Yes | enum (person, instance, org, room, resource, group, campus, library, library_hours) |
summary | No | text (255) |
description | No | text |
start_date | Yes | datetime |
end_date | Yes | datetime |
all_day | Yes | bool |
rfrequency | Yes | enum (none, daily, weekly, monthly, yearly) |
rinterval | Yes | int |
rcount | Yes | int |
runtil | Yes | date |
rbyday | No | set |
rskips | Yes | text |
closure | No | -- |
closure_academic_year_id | No | int |
status | Yes | enum (active, deleted) |
busy | Yes | bool |
sequence | Yes | int |
room_id | Yes | int |
location | Yes | text (100) |
room_status | No | -- |
url | No | text (2100) |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/events" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"start_date": "2022-01-05",
"end_date": "2023-02-06"
}' \
Example response:
{
"object": "list",
"count": 66,
"results": 66,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"eventid": "2",
"eventownertype": "org",
"eventownerid": "1",
"start": "2022-08-01T06:00:00+00:00",
"end": "2022-08-01T07:00:00+00:00",
"allday": "0",
"summary": "Convocation",
"description": "",
"rfrequency": "weekly",
"rinterval": "1",
"rcount": "0",
"rskips": "",
"runtil": "12\/31\/2022",
"rbyday": "MO,WE,FR",
"busy": "1",
"roomid": "0",
"location": "",
"roomstatus": "none",
"is_closure": "0",
"url": null,
"calendar_name": "School Calendar",
"ownertype": "org",
"ownerid": 1,
"recurrence": "2022-08-01",
"color": 2,
"access": "write",
"start_timestamp": 1659358800
}
]
}
Retrieves all CalendarEvent objects.
HTTP Request
GET /events
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
start_date | Yes | datetime | |
end_date | Yes | datetime |
Permissions
One of the following roles is required to call this method:
- Academic Admin
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/events/(calendarevent)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "calendar_event",
"id": 1,
"owner_id": 21908,
"owner_type": "instance",
"summary": "BR101: Main Class",
"description": null,
"start_date": "2022-08-01T13:00:00+00:00",
"end_date": "2022-08-01T14:00:00+00:00",
"all_day": false,
"rfrequency": "weekly",
"rinterval": 1,
"rcount": null,
"runtil": "2022-12-31",
"rbyday": "MO,WE,FR",
"rskips": null,
"closure": false,
"closure_academic_year_id": null,
"status": "active",
"busy": true,
"sequence": null,
"room_id": 0,
"location": null,
"room_status": "NONE",
"url": null,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Retrieves a specific CalendarEvent object.
HTTP Request
GET /events/(calendarevent)
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 Admin
Campaign
The Campaign object
The Campaign object looks like this in JSON:
{
"object": "campaign",
"id": 4,
"name": "Capital Campaign",
"goal": null,
"deadline": null,
"status": "inactive",
"added_at": "2017-04-04T17:26:52+00:00",
"added_by_id": 1257,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
name | No | text (500) |
goal | No | decimal |
deadline | No | datetime |
status | Yes | enum (active, inactive, deleted) |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/campaigns" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "campaign",
"id": 4,
"name": "Capital Campaign",
"goal": null,
"deadline": null,
"status": "inactive",
"added_at": "2017-04-04T17:26:52+00:00",
"added_by_id": 1257
}
],
"sandbox": true
}
Retrieves all Campaign objects.
HTTP Request
GET /campaigns
Parameters
None
Permissions
One of the following roles is required to call this method:
- Donations
- Financial Auditor
- Financial Admin
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/campaigns/(campaign)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "campaign",
"id": 4,
"name": "Capital Campaign",
"goal": null,
"deadline": null,
"status": "inactive",
"added_at": "2017-04-04T17:26:52+00:00",
"added_by_id": 1257,
"sandbox": true
}
Retrieves a specific Campaign object.
HTTP Request
GET /campaigns/(campaign)
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:
- Donations
- Financial Auditor
- Financial Admin
Campus
The Campus object
The Campus object looks like this in JSON:
{
"object": "campus",
"id": 8,
"name": "Main Campus",
"city": "Moscow",
"state": "ID",
"postal": "83843",
"country": "US",
"status": "active",
"primary": true,
"timezone": "America\/Los_Angeles",
"cod_routing_id": null,
"ope_id": null,
"export_prefix": null,
"ipeds_unit_id": null,
"country_full": "United States",
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
name | Yes | text (255) |
city | Yes | text (255) |
state | Yes | text (50) |
postal | No | -- |
country | Yes | text (50) |
status | Yes | enum (active, retired, deleted) |
primary | No | -- |
timezone | No | text (50) |
cod_routing_id | No | text (50) |
ope_id | No | text (50) |
export_prefix | No | text (50) |
ipeds_unit_id | No | int |
country_full | No | text |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/campuses" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 2,
"results": 2,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "campus",
"id": 8,
"name": "Main Campus",
"city": "Moscow",
"state": "ID",
"postal": "83843",
"country": "US",
"status": "active",
"primary": true,
"timezone": "America\/Los_Angeles",
"cod_routing_id": null,
"ope_id": null,
"export_prefix": null,
"ipeds_unit_id": null,
"country_full": "United States",
"added_at": null,
"added_by_id": null
}
],
"sandbox": true
}
Retrieves all Campus objects.
HTTP Request
GET /campuses
Parameters
None
Permissions
One of the following roles is required to call this method:
- Staff
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/campuses/(campus)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "campus",
"id": 8,
"name": "Main Campus",
"city": "Moscow",
"state": "ID",
"postal": "83843",
"country": "US",
"status": "active",
"primary": true,
"timezone": "America\/Los_Angeles",
"cod_routing_id": null,
"ope_id": null,
"export_prefix": null,
"ipeds_unit_id": null,
"country_full": "United States",
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Retrieves a specific Campus object.
HTTP Request
GET /campuses/(campus)
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:
- Staff
CanadianDonationReceipt
The CanadianDonationReceipt object
The CanadianDonationReceipt object looks like this in JSON:
{
"object": "canadian_donation_receipt",
"id": 1,
"tax_year": 2021,
"donor_id": 1,
"number": 1,
"num_donations": 5,
"donor_name": "Freddy Smith",
"donor_street": "45 Maple Street",
"donor_city": "Vancouver",
"donor_province": "BC",
"donor_postal": "99999",
"donor_country": "CA",
"donation_received_date": null,
"receipt_date": null,
"total_amount": 0,
"advantage_amount": 0,
"tax_deductible_amount": 0,
"original_currency": null,
"advantage_description": null,
"location_issued": null,
"charity_name": null,
"charity_street": null,
"charity_city": null,
"charity_province": null,
"charity_postal": null,
"charity_registration_number": null,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
tax_year | No | int |
donor_id | No | int |
number | No | int |
num_donations | No | int |
donor_name | No | text (500) |
donor_street | No | text (500) |
donor_city | No | text (200) |
donor_province | No | text (100) |
donor_postal | No | text (100) |
donor_country | No | text (100) |
donation_received_date | No | date |
receipt_date | No | date |
total_amount | Yes | decimal |
advantage_amount | Yes | decimal |
tax_deductible_amount | Yes | decimal |
original_currency | No | text (3) |
advantage_description | No | text (1000) |
location_issued | No | text (500) |
charity_name | No | text (500) |
charity_street | No | text (200) |
charity_city | No | text (100) |
charity_province | No | text (100) |
charity_postal | No | text (50) |
charity_registration_number | No | text (50) |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/canadiandonationreceipts/(canadiandonationreceipt)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "canadian_donation_receipt",
"id": 1,
"tax_year": 2021,
"donor_id": 1,
"number": 1,
"num_donations": 5,
"donor_name": "Freddy Smith",
"donor_street": "45 Maple Street",
"donor_city": "Vancouver",
"donor_province": "BC",
"donor_postal": "99999",
"donor_country": "CA",
"donation_received_date": null,
"receipt_date": null,
"total_amount": 0,
"advantage_amount": 0,
"tax_deductible_amount": 0,
"original_currency": null,
"advantage_description": null,
"location_issued": null,
"charity_name": null,
"charity_street": null,
"charity_city": null,
"charity_province": null,
"charity_postal": null,
"charity_registration_number": null,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Retrieves a specific CanadianDonationReceipt object.
HTTP Request
GET /canadiandonationreceipts/(canadiandonationreceipt)
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:
- Financial Admin
- Donations
- Financial Auditor
CatalogCourse
The CatalogCourse object
The CatalogCourse object looks like this in JSON:
{
"object": "catalog_course",
"id": 576,
"name": "Pentateuch",
"description": "Biblical Studies: Pentateuch.\n\nThis course explores the five books of Moses, with particular attention to the Mosaic tabernacle, its institutions of worship and sacrifice, the laws of clean and unclean. The course also explores cultural-anthropological perspectives on the Pentateuch. Unless they can produce a better overview, students will be required to be able to reproduce Dorsey???s outline of each book of the Pentateuch, as well as rational for the outline.\nIn addition to readings, instructor-led discussions of selected passages of the Pentateuch, and lectures, students will be required to exegete at least one assigned passage of the Pentateuch and lead a class discussion on that passage.",
"abbrv": "BS502",
"department_id": 2,
"credits": 2,
"hours": 2,
"attendance_hours": 0,
"clinical_hours": 0,
"finaid_credits": 0,
"finaid_hours": 0,
"fulfills_program_requirements": true,
"affects_standing": true,
"affects_full_time_status": true,
"count_retakes": 0,
"status": "active",
"max_enrolled": 100,
"max_auditors": 100,
"pass_fail": false,
"pass_affects_gpa": true,
"fail_affects_gpa": true,
"pass_fail_pass_affects_gpa": true,
"pass_fail_fail_affects_gpa": true,
"cip_code": null,
"self_enroll": "yes",
"self_audit": true,
"enable_clinical_hours": false,
"roster_visibility": true,
"faculty_can_manage_roster": false,
"faculty_can_override_enrollment": false,
"minimum_attendance": null,
"allowed_tuition_schedules": "all",
"allow_auditor_assignments": false,
"allow_auditor_attendance": false,
"waiting_list_management": "automatic",
"remedial": false,
"import_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
name | Yes | text (255) |
description | Yes | text |
abbrv | Yes | text (20) |
department_id | Yes | int |
credits | Yes | decimal |
hours | Yes | decimal |
attendance_hours | Yes | decimal |
clinical_hours | Yes | decimal |
finaid_credits | No | decimal |
finaid_hours | No | decimal |
fulfills_program_requirements | Yes | bool |
affects_standing | Yes | bool |
affects_full_time_status | Yes | bool |
count_retakes | Yes | bool |
status | Yes | enum (active, retired) |
max_enrolled | No | int |
max_auditors | No | int |
pass_fail | Yes | bool |
pass_affects_gpa | Yes | bool |
fail_affects_gpa | Yes | bool |
pass_fail_pass_affects_gpa | Yes | bool |
pass_fail_fail_affects_gpa | Yes | bool |
cip_code | Yes | text (15) |
self_enroll | Yes | enum (yes, no_repeats, no) |
self_audit | Yes | bool |
enable_clinical_hours | Yes | bool |
roster_visibility | Yes | bool |
faculty_can_manage_roster | Yes | bool |
faculty_can_override_enrollment | Yes | bool |
minimum_attendance | No | decimal |
allowed_tuition_schedules | Yes | enum (all, none, choose) |
allow_auditor_assignments | Yes | bool |
allow_auditor_attendance | Yes | bool |
waiting_list_management | Yes | enum (automatic, manual, none) |
remedial | Yes | bool |
import_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/catalogcourses" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"filter": {"0":{"logic":"ALL","fields":[{"name":"credits","value":{"type":"RANGE","start":"10.5","end":"900.15"},"positive":1}]}}
}' \
Example response:
{
"object": "list",
"count": 36,
"results": 36,
"results_per_page": 200,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "catalog_course",
"id": 576,
"name": "Pentateuch",
"description": "Biblical Studies: Pentateuch.\n\nThis course explores the five books of Moses, with particular attention to the Mosaic tabernacle, its institutions of worship and sacrifice, the laws of clean and unclean. The course also explores cultural-anthropological perspectives on the Pentateuch. Unless they can produce a better overview, students will be required to be able to reproduce Dorsey???s outline of each book of the Pentateuch, as well as rational for the outline.\nIn addition to readings, instructor-led discussions of selected passages of the Pentateuch, and lectures, students will be required to exegete at least one assigned passage of the Pentateuch and lead a class discussion on that passage.",
"abbrv": "BS502",
"department_id": 2,
"credits": 2,
"hours": 2,
"attendance_hours": 0,
"clinical_hours": 0,
"finaid_credits": 0,
"finaid_hours": 0,
"fulfills_program_requirements": true,
"affects_standing": true,
"affects_full_time_status": true,
"count_retakes": 0,
"status": "active",
"max_enrolled": 100,
"max_auditors": 100,
"pass_fail": false,
"pass_affects_gpa": true,
"fail_affects_gpa": true,
"pass_fail_pass_affects_gpa": true,
"pass_fail_fail_affects_gpa": true,
"cip_code": null,
"self_enroll": "yes",
"self_audit": true,
"enable_clinical_hours": false,
"roster_visibility": true,
"faculty_can_manage_roster": false,
"faculty_can_override_enrollment": false,
"minimum_attendance": null,
"allowed_tuition_schedules": "all",
"allow_auditor_assignments": false,
"allow_auditor_attendance": false,
"waiting_list_management": "automatic",
"remedial": false,
"import_id": null,
"report_data": {
"department_name": "Other",
"could_delete": 0,
"program_name_ids": null
}
}
],
"sandbox": true
}
Retrieves all CatalogCourse objects that match given filter conditions.
HTTP Request
GET /catalogcourses
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
- faculty
- corequisites
- course_equivalencies
- prerequisites
- programs
- department
- tuition_schedules
Filter Condition Parameters
These conditions can be used to narrow the results returned.
Name | Type |
---|---|
abbrv | text |
name | text |
credits | decimal |
hours | decimal |
status | enum |
program | program |
department | object id |
pass_fail | bool |
delivery_method | object id |
max_enrolled | enrollment |
max_auditors | enrollment |
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Academic Admin
- Registrar
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/catalogcourses/(catalogcourse)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "catalog_course",
"id": 576,
"name": "Pentateuch",
"description": "Biblical Studies: Pentateuch.\n\nThis course explores the five books of Moses, with particular attention to the Mosaic tabernacle, its institutions of worship and sacrifice, the laws of clean and unclean. The course also explores cultural-anthropological perspectives on the Pentateuch. Unless they can produce a better overview, students will be required to be able to reproduce Dorsey???s outline of each book of the Pentateuch, as well as rational for the outline.\nIn addition to readings, instructor-led discussions of selected passages of the Pentateuch, and lectures, students will be required to exegete at least one assigned passage of the Pentateuch and lead a class discussion on that passage.",
"abbrv": "BS502",
"department_id": 2,
"credits": 2,
"hours": 2,
"attendance_hours": 0,
"clinical_hours": 0,
"finaid_credits": 0,
"finaid_hours": 0,
"fulfills_program_requirements": true,
"affects_standing": true,
"affects_full_time_status": true,
"count_retakes": 0,
"status": "active",
"max_enrolled": 100,
"max_auditors": 100,
"pass_fail": false,
"pass_affects_gpa": true,
"fail_affects_gpa": true,
"pass_fail_pass_affects_gpa": true,
"pass_fail_fail_affects_gpa": true,
"cip_code": null,
"self_enroll": "yes",
"self_audit": true,
"enable_clinical_hours": false,
"roster_visibility": true,
"faculty_can_manage_roster": false,
"faculty_can_override_enrollment": false,
"minimum_attendance": null,
"allowed_tuition_schedules": "all",
"allow_auditor_assignments": false,
"allow_auditor_attendance": false,
"waiting_list_management": "automatic",
"remedial": false,
"import_id": null,
"sandbox": true
}
Retrieves a specific CatalogCourse object.
HTTP Request
GET /catalogcourses/(catalogcourse)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- faculty
- corequisites
- course_equivalencies
- prerequisites
- programs
- department
- tuition_schedules
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Academic Admin
- Registrar
ChangeLog
The ChangeLog object
The ChangeLog object looks like this in JSON:
{
"object": "change_log",
"id": 946156314,
"owner_type_id": 8,
"owner_id": 1862,
"changed_by_id": 13154473,
"changed_by_ip": "10.0.0.13",
"changed_time": "2024-07-08T19:49:36+00:00",
"type_id": 127,
"action": "changed",
"changed_from": "External LMS",
"changed_to": "Internal LMS",
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
owner_type_id | Yes | int |
owner_id | Yes | int |
changed_by_id | No | int |
changed_by_ip | Yes | text (50) |
changed_time | Yes | datetime |
type_id | Yes | int |
action | No | enum (added, changed, deleted, printed, restored, cloned, requested) |
changed_from | No | text |
changed_to | No | text |
sandbox | No | -- |
changelog
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/changelog" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"filter": []
}' \
Example response:
{
"object": "list",
"count": 96,
"results": 96,
"results_per_page": 200,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "change_log",
"id": 946156410,
"owner_type_id": 1,
"owner_id": 16,
"changed_by_id": 22,
"changed_by_ip": "10.0.0.1",
"changed_time": "2024-11-20T20:03:36+00:00",
"type_id": 151,
"action": "added",
"changed_from": "Cool Kids Plan",
"changed_to": null,
"report_data": {
"changed_time_local": "2024-11-20 12:03:36",
"owner_type": "PERSON",
"change_type": "DEFAULT_TUITION_SCHEDULE",
"changed_by_id": 22,
"changed_by_name": "API Dude"
}
}
],
"sandbox": true
}
HTTP Request
GET /changelog
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. |
Filter Condition Parameters
These conditions can be used to narrow the results returned.
Name | Type |
---|---|
changed_by | search |
affected | changelog_affected |
affected_type | choice |
type | choice |
action | enum |
Permissions
Only keys that have been granted Populi Account Administrator permissions may call this method.
This is a heavy call. For performance reasons, only one heavy call may be made at a time.
Check
The Check object
The Check object looks like this in JSON:
{
"object": "check",
"id": 1,
"owner_type": "person",
"owner_id": 12,
"amount": 400.5,
"transaction_id": 12,
"batch_number": 1,
"number": 1001,
"added_at": "2022-01-02T12:30:34+00:00",
"added_by_id": 1,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
owner_type | Yes | enum (person, donor) |
owner_id | Yes | int |
amount | Yes | decimal |
transaction_id | Yes | int |
batch_number | No | int |
number | No | int |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/checks" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"filter": {"0":{"logic":"ALL","fields":[{"name":"posted_date","value":{"type":"RANGE","start":"2021-01-01","end":"2022-03-17"},"positive":1}]}}
}' \
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": 200,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "check",
"id": 1,
"owner_type": "person",
"owner_id": 12,
"amount": 400.5,
"transaction_id": 12,
"batch_number": 1,
"number": 1001,
"added_at": "2015-03-10T19:33:11+00:00",
"added_by_id": 1,
"report_data": {
"payee_name": "Alice Admin",
"person_name": "Alice Admin",
"person_firstname": "Alice",
"person_lastname": "Admin",
"posted_date": "2015-03-10",
"transaction_number": 1237,
"refund_source": null,
"account_number": "12345-7",
"account_name": "Cooler Account",
"added_by_name": "Elizabeth Fox",
"student_dummy_id": "20220xx002",
"row_id": 1
}
}
],
"sandbox": true
}
Retrieves all Check objects that match given filter conditions.
HTTP Request
GET /checks
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
- person
- transaction
Filter Condition Parameters
These conditions can be used to narrow the results returned.
Name | Type |
---|---|
payee | text |
posted_date | date |
account | text |
transaction_number | integer |
check_number | integer |
batch_number | integer |
amount | decimal |
student | text |
tag | tag |
custom_field | custom |
Permissions
One of the following roles is required to call this method:
- Financial Auditor
- Financial Aid
- Student Billing
- Financial Admin
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/checks/(check)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "check",
"id": 1,
"owner_type": "person",
"owner_id": 12,
"amount": 400.5,
"transaction_id": 12,
"batch_number": 1,
"number": 1001,
"added_at": "2022-01-02T12:30:34+00:00",
"added_by_id": 1,
"sandbox": true
}
Retrieves a specific Check object.
HTTP Request
GET /checks/(check)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- person
- transaction
Permissions
One of the following roles is required to call this method:
- Financial Auditor
- Financial Aid
- Student Billing
- Financial Admin
Citizenship
The Citizenship object
The Citizenship object looks like this in JSON:
{
"object": "citizenship",
"id": 6,
"person_id": 1,
"country": "US",
"country_abbrv": "US",
"country_name": "United States of America",
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
person_id | Yes | int |
country | Yes | char |
country_abbrv | No | text |
country_name | No | text |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/citizenships" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "citizenship",
"id": 7,
"person_id": 12,
"country": "US",
"country_abbrv": "US",
"country_name": "United States of America",
"added_at": null,
"added_by_id": null
}
],
"sandbox": true
}
Retrieves all Citizenship objects tied to a specific Person.
HTTP Request
GET /people/(person)/citizenships
Parameters
None
Permissions
One of the following roles is required to call this method:
- Staff
create
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/citizenships" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"country": "US",
"resident_alien": "1"
}' \
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "citizenship",
"id": 7,
"person_id": 12,
"country": "US",
"country_abbrv": "US",
"country_name": "United States of America",
"added_at": null,
"added_by_id": null
}
],
"sandbox": true
}
Creates a new Citizenship object.
HTTP Request
POST /people/(person)/citizenships
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
country | Yes | char | |
resident_alien | No | bool |
Permissions
One of the following roles is required to call this method:
- Staff
delete
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/citizenships" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "person",
"id": 12,
"first_name": "Taylor",
"last_name": "Forest",
"middle_name": "",
"prefix": "Mrs.",
"suffix": null,
"preferred_name": null,
"display_name": "Alice 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,
"added_at": null,
"added_by_id": null,
"updated_at": "2024-11-20T12:03:37+00:00",
"private_profile": false,
"is_user": true,
"sandbox": true
}
Removes all citizenship data about a person.
HTTP Request
DELETE /people/(person)/citizenships
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:
- Staff
CommunicationPlan
The CommunicationPlan object
The CommunicationPlan object looks like this in JSON:
{
"object": "communication_plan",
"id": 9,
"name": "Prospect Plan 2",
"type": "admissions",
"added_at": "2016-05-18T18:46:47+00:00",
"added_by_id": 1,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | No | int |
name | Yes | text (300) |
type | No | text |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/communicationplans" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "communication_plan",
"id": 9,
"name": "Prospect Plan 2",
"type": "admissions",
"added_at": "2016-05-18T18:46:47+00:00",
"added_by_id": 1
}
],
"sandbox": true
}
Retrieves all CommunicationPlan objects.
HTTP Request
GET /communicationplans
Parameters
None
Permissions
One of the following roles is required to call this method:
- Staff
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/communicationplans/(communicationplan)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "communication_plan",
"id": 9,
"name": "Prospect Plan 2",
"type": "admissions",
"added_at": "2016-05-18T18:46:47+00:00",
"added_by_id": 1,
"sandbox": true
}
Retrieves a specific CommunicationPlan object.
HTTP Request
GET /communicationplans/(communicationplan)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- events
Permissions
One of the following roles is required to call this method:
- Staff
CommunicationPlanInstance
The CommunicationPlanInstance object
The CommunicationPlanInstance object looks like this in JSON:
{
"object": "communication_plan_instance",
"id": 1,
"person_id": 1,
"communication_plan_id": 1,
"sender_id": 2,
"start_date": "2022-07-11",
"added_at": "2022-07-11T18:18:37+00:00",
"added_by_id": 6,
"active": false,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
person_id | Yes | int |
communication_plan_id | Yes | int |
sender_id | No | int |
start_date | Yes | date |
added_at | No | datetime |
added_by_id | No | int |
active | No | -- |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/communicationplans" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "communication_plan_instance",
"id": 2,
"person_id": 12,
"communication_plan_id": 9,
"sender_id": 2,
"start_date": "2022-07-11",
"added_at": "2022-07-11T18:18:37+00:00",
"added_by_id": 6,
"active": false
}
],
"sandbox": true
}
Retrieves all CommunicationPlanInstance objects tied to a specific Person.
HTTP Request
GET /people/(person)/communicationplans
Parameters
None
Permissions
One of the following roles is required to call this method:
- Staff
create
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/communicationplans" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"communication_plan_id": 9,
"sender_id": 17
}' \
Example response:
{
"object": "communication_plan_instance",
"id": 3,
"person_id": 12,
"communication_plan_id": 9,
"sender_id": 17,
"start_date": "2024-11-20",
"added_at": "2024-11-20T20:03:35+00:00",
"added_by_id": 22,
"active": false,
"sandbox": true
}
Creates a new CommunicationPlanInstance object.
HTTP Request
POST /people/(person)/communicationplans
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
communication_plan_id | Yes | int | |
sender_id | Yes | int | |
start_date | No | date |
Permissions
One of the following roles is required to call this method:
- Staff
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/communicationplans/(communicationplaninstance)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "communication_plan_instance",
"id": 2,
"person_id": 12,
"communication_plan_id": 9,
"sender_id": 2,
"start_date": "2022-07-11",
"added_at": "2022-07-11T18:18:37+00:00",
"added_by_id": 6,
"active": false,
"sandbox": true
}
Retrieves a specific CommunicationPlanInstance object.
HTTP Request
GET /people/(person)/communicationplans/(communicationplaninstance)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- events
Permissions
One of the following roles is required to call this method:
- Staff
update
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/communicationplans/(communicationplaninstance)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X PUT
-d '{
"sender_id": 17
}' \
Example response:
{
"object": "communication_plan_instance",
"id": 2,
"person_id": 12,
"communication_plan_id": 9,
"sender_id": 17,
"start_date": "2022-07-11",
"added_at": "2022-07-11T18:18:37+00:00",
"added_by_id": 6,
"active": false,
"sandbox": true
}
Updates an existing CommunicationPlanInstance object.
HTTP Request
PUT /people/(person)/communicationplans/(communicationplaninstance)
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
sender_id | Yes | int |
Permissions
One of the following roles is required to call this method:
- Staff
delete
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/communicationplans/(communicationplaninstance)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "communication_plan_instance",
"id": 2,
"deleted": true
}
Deletes an existing CommunicationPlanInstance object.
HTTP Request
DELETE /people/(person)/communicationplans/(communicationplaninstance)
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:
- Staff
Consequence
The Consequence object
The Consequence object looks like this in JSON:
{
"object": "consequence",
"id": 2,
"name": "Written warning",
"description": null,
"fee_id": null,
"email_notification": false,
"apply_immediately": false,
"added_at": "2016-02-25T00:10:52+00:00",
"added_by_id": 1257,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
name | Yes | text (200) |
description | No | text |
fee_id | No | int |
email_notification | Yes | bool |
apply_immediately | Yes | bool |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/consequences" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "consequence",
"id": 2,
"name": "Written warning",
"description": null,
"fee_id": null,
"email_notification": false,
"apply_immediately": false,
"added_at": "2016-02-25T00:10:52+00:00",
"added_by_id": 1257
}
],
"sandbox": true
}
Retrieves all Consequence objects.
HTTP Request
GET /consequences
Parameters
None
Expandable Properties
- consequence_triggers
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/consequences/(consequence)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "consequence",
"id": 2,
"name": "Written warning",
"description": null,
"fee_id": null,
"email_notification": false,
"apply_immediately": false,
"added_at": "2016-02-25T00:10:52+00:00",
"added_by_id": 1257,
"sandbox": true
}
Retrieves a specific Consequence object.
HTTP Request
GET /consequences/(consequence)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- consequence_triggers
Country
The Country object
The Country object looks like this in JSON:
{
"object": "country",
"id": "AF",
"name": "Afghanistan",
"alpha3": "AFG",
"code": 4,
"calling_code": "93",
"status": "active",
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | No | int |
name | Yes | text (100) |
alpha3 | No | text (3) |
code | Yes | int |
calling_code | No | text (10) |
status | Yes | enum (active, retired) |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/countries" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 242,
"results": 242,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "country",
"id": "AF",
"name": "Afghanistan",
"alpha3": "AFG",
"code": 4,
"calling_code": "93",
"status": "active"
}
],
"sandbox": true
}
Retrieves all Country objects.
HTTP Request
GET /countries
Parameters
None
Permissions
One of the following roles is required to call this method:
- Staff
CourseAttendance
The CourseAttendance object
The CourseAttendance object looks like this in JSON:
{
"object": "course_attendance",
"id": 5,
"student_id": 12,
"course_meeting_id": 2,
"status": "present",
"present_coef": 1,
"note": null,
"kiosk_id": null,
"beacon_id": null,
"device_id": null,
"beacon_found_at": null,
"attendance_hours": null,
"clinical_hours": null,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
student_id | Yes | int |
course_meeting_id | Yes | int |
status | Yes | enum (present, tardy, absent, excused) |
present_coef | Yes | decimal |
note | No | text |
kiosk_id | No | int |
beacon_id | No | int |
device_id | No | int |
beacon_found_at | No | datetime |
attendance_hours | No | decimal |
clinical_hours | No | decimal |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/attendance/detail" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"filter": []
}' \
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": 200,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "person",
"id": 12,
"first_name": "Alice",
"last_name": "Admin",
"middle_name": "",
"prefix": "Mrs.",
"suffix": null,
"preferred_name": null,
"display_name": "Alice 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,
"added_at": null,
"added_by_id": null,
"updated_at": null,
"report_data": {
"dummy_id": "20220xx002",
"academic_term_id": 8,
"term_name": "Spring 2010 2009-2010",
"course_offering_id": 21910,
"course_name": "LAT101-1: Beginning Latin I",
"meeting_summary": "Main class",
"meeting_start_time": "2022-10-01 01:00:00",
"meeting_end_time": "2022-10-01 02:30:00",
"attendance_status": "PRESENT",
"attendance_method": "",
"attendance_note": null,
"attendance_added_at": null,
"attendance_added_by": null,
"row_id": "12_3"
},
"private_profile": false,
"is_user": true
}
],
"sandbox": true
}
Retrieves all CourseAttendance objects that match given filter conditions.
HTTP Request
GET /attendance/detail
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. |
Filter Condition Parameters
These conditions can be used to narrow the results returned.
Name | Type |
---|---|
student | search |
student_course_status | course_student_status |
has_active_student_role | has_active_student_role |
student_program | program |
student_campus | campus |
academic_term | academic_term |
academic_year | academic_year |
course | search |
catalog_course | search |
primary_faculty | faculty |
event_start_time | datetime |
method | choice |
status | choice |
tag | tag |
Permissions
One of the following roles is required to call this method:
- Academic Admin
- Registrar
- Academic Auditor
CourseDeliveryMethod
The CourseDeliveryMethod object
The CourseDeliveryMethod object looks like this in JSON:
{
"object": "course_delivery_method",
"id": 5,
"name": "Hybrid Online",
"distance_education": false,
"status": "active",
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
name | Yes | text (255) |
distance_education | Yes | bool |
status | Yes | enum (active, deleted, retired) |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/coursedeliverymethods" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "course_delivery_method",
"id": 5,
"name": "Hybrid Online",
"distance_education": false,
"status": "active",
"added_at": null,
"added_by_id": null
}
],
"sandbox": true
}
Retrieves all CourseDeliveryMethod objects.
HTTP Request
GET /coursedeliverymethods
Parameters
None
Permissions
One of the following roles is required to call this method:
- Academic Admin
- Registrar
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/coursedeliverymethods/(coursedeliverymethod)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "course_delivery_method",
"id": 5,
"name": "Hybrid Online",
"distance_education": false,
"status": "active",
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Retrieves a specific CourseDeliveryMethod object.
HTTP Request
GET /coursedeliverymethods/(coursedeliverymethod)
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 Admin
- Registrar
CourseEvaluation
The CourseEvaluation object
The CourseEvaluation object looks like this in JSON:
{
"object": "course_evaluation",
"id": 3,
"name": "Course Evaluation 1",
"status": "active",
"added_at": "2012-10-05T19:36:30+00:00",
"added_by_id": 213204,
"updated_at": "2012-10-05T19:36:30+00:00",
"updated_by_id": 213204,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
name | Yes | text (100) |
status | Yes | enum (active, deleted) |
added_at | No | datetime |
added_by_id | No | int |
updated_at | No | datetime |
updated_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/courseevaluations" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 2,
"results": 2,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "course_evaluation",
"id": 3,
"name": "Course Evaluation 1",
"status": "active",
"added_at": "2012-10-05T19:36:30+00:00",
"added_by_id": 213204,
"updated_at": "2012-10-05T19:36:30+00:00",
"updated_by_id": 213204
}
],
"sandbox": true
}
Retrieves all CourseEvaluation objects.
HTTP Request
GET /courseevaluations
Parameters
None
Permissions
One of the following roles is required to call this method:
- Academic Admin
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/courseevaluations/(courseevaluation)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "course_evaluation",
"id": 3,
"name": "Course Evaluation 1",
"status": "active",
"added_at": "2012-10-05T19:36:30+00:00",
"added_by_id": 213204,
"updated_at": "2012-10-05T19:36:30+00:00",
"updated_by_id": 213204,
"sandbox": true
}
Retrieves a specific CourseEvaluation object.
HTTP Request
GET /courseevaluations/(courseevaluation)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- questions
Permissions
One of the following roles is required to call this method:
- Academic Admin
answers
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/courseevaluations/(courseevaluation)/answers" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"academic_term_id": 8
}' \
Example response:
{
"object": "list",
"count": 0,
"results": 0,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [],
"sandbox": true
}
HTTP Request
GET /courseevaluations/(courseevaluation)/answers
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
academic_term_id | Yes |
Permissions
One of the following roles is required to call this method:
- Academic Admin
CourseGroup
The CourseGroup object
The CourseGroup object looks like this in JSON:
{
"object": "course_group",
"id": 1,
"name": "Undergrad Art",
"retired": false,
"added_at": null,
"added_by_id": 2010,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
name | Yes | text (150) |
retired | Yes | bool |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/coursegroups" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "course_group",
"id": 1,
"name": "Undergrad Art",
"retired": false,
"added_at": null,
"added_by_id": 2010
}
],
"sandbox": true
}
Retrieves all CourseGroup objects.
HTTP Request
GET /coursegroups
Parameters
None
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Academic Admin
- Registrar
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/coursegroups/(coursegroup)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "course_group",
"id": 1,
"name": "Undergrad Art",
"retired": false,
"added_at": null,
"added_by_id": 2010,
"sandbox": true
}
Retrieves a specific CourseGroup object.
HTTP Request
GET /coursegroups/(coursegroup)
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
CourseGroupRequirement
The CourseGroupRequirement object
The CourseGroupRequirement object looks like this in JSON:
{
"object": "course_group_requirement",
"id": 1,
"course_group_id": 1,
"requirement_id": 1,
"type": "courses",
"value": 0,
"gpa": 2.5,
"grade_points": 3,
"allow_equivalencies": true,
"exclusively_apply_data": false,
"order_id": 1,
"course_group_name": "Undergrad Art",
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
course_group_id | Yes | int |
requirement_id | Yes | int |
type | No | enum (units, courses, clinical_hours, attendance_hours) |
value | Yes | decimal |
gpa | No | decimal |
grade_points | No | decimal |
allow_equivalencies | Yes | bool |
exclusively_apply_data | Yes | bool |
order_id | Yes | int |
course_group_name | No | -- |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/coursegrouprequirements" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "course_group_requirement",
"id": 1,
"course_group_id": 1,
"requirement_id": 1,
"type": "courses",
"value": 0,
"gpa": 2.5,
"grade_points": 3,
"allow_equivalencies": true,
"exclusively_apply_data": false,
"order_id": 1,
"course_group_name": "Undergrad Art"
}
],
"sandbox": true
}
Retrieves all CourseGroupRequirement objects.
HTTP Request
GET /coursegrouprequirements
Parameters
None
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Academic Admin
- Registrar
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/coursegrouprequirements/(coursegrouprequirement)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "course_group_requirement",
"id": 1,
"course_group_id": 1,
"requirement_id": 1,
"type": "courses",
"value": 0,
"gpa": 2.5,
"grade_points": 3,
"allow_equivalencies": true,
"exclusively_apply_data": false,
"order_id": 1,
"course_group_name": "Undergrad Art",
"sandbox": true
}
Retrieves a specific CourseGroupRequirement object.
HTTP Request
GET /coursegrouprequirements/(coursegrouprequirement)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- academic_requirement
- course_group
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Academic Admin
- Registrar
CourseLesson
The CourseLesson object
The CourseLesson object looks like this in JSON:
{
"object": "course_lesson",
"id": 1,
"course_offering_id": 22746,
"name": "Lesson #1",
"content": null,
"available_at": "2024-11-20T20:03:28+00:00",
"sequential": false,
"orderid": 1,
"close_discussions": null,
"import_id": null,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | No | int |
course_offering_id | Yes | int |
name | Yes | text (255) |
content | Yes | text |
available_at | No | datetime |
sequential | Yes | bool |
orderid | Yes | int |
close_discussions | No | datetime |
import_id | No | int |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/lessons" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "course_lesson",
"id": 3,
"course_offering_id": 21908,
"name": "Lesson #1",
"content": null,
"available_at": "2024-11-20T20:03:28+00:00",
"sequential": false,
"orderid": 2,
"close_discussions": null,
"import_id": null,
"num_discussions": 0,
"num_new_posts": 0,
"added_at": null,
"added_by_id": null
}
],
"sandbox": true
}
Retrieves all CourseLesson objects tied to a specific Courseoffering.
HTTP Request
GET /courseofferings/(courseoffering)/lessons
Parameters
None
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Registrar
- Academic Admin
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/lessons/(courselesson)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "course_lesson",
"id": 3,
"course_offering_id": 21908,
"name": "Lesson #1",
"content": null,
"available_at": "2024-11-20T20:03:28+00:00",
"sequential": false,
"orderid": 2,
"close_discussions": null,
"import_id": null,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Retrieves a specific CourseLesson object.
HTTP Request
GET /courseofferings/(courseoffering)/lessons/(courselesson)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- pages
- links
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Registrar
- Academic Admin
CourseMeeting
The CourseMeeting object
The CourseMeeting object looks like this in JSON:
{
"object": "course_meeting",
"id": 1,
"course_offering_id": 1,
"summary": "Main class",
"start_at": "2022-10-04T08:00:00+00:00",
"end_at": "2022-10-04T09:30:00+00:00",
"room_id": 1,
"counts_toward_attendance_hours": true,
"counts_toward_clinical_hours": true,
"status": "active",
"present_until": null,
"tardy_until": null,
"beacon_active": false,
"is_online": false,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
course_offering_id | Yes | int |
summary | Yes | text (50) |
start_at | Yes | datetime |
end_at | Yes | datetime |
room_id | Yes | int |
counts_toward_attendance_hours | Yes | bool |
counts_toward_clinical_hours | Yes | bool |
status | Yes | enum (active, deleted) |
present_until | No | datetime |
tardy_until | No | datetime |
beacon_active | Yes | bool |
is_online | Yes | bool |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/coursemeetings" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "course_meeting",
"id": 2,
"course_offering_id": 21908,
"summary": "Main class",
"start_at": "2022-10-01T08:00:00+00:00",
"end_at": "2022-10-01T09:30:00+00:00",
"room_id": 1,
"counts_toward_attendance_hours": true,
"counts_toward_clinical_hours": true,
"status": "active",
"present_until": null,
"tardy_until": null,
"beacon_active": false,
"is_online": false
}
],
"sandbox": true
}
Retrieves all CourseMeeting objects tied to a specific Courseoffering.
HTTP Request
GET /courseofferings/(courseoffering)/coursemeetings
Parameters
None
Permissions
One of the following roles is required to call this method:
- Academic Admin
- Registrar
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/coursemeetings/(coursemeeting)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "course_meeting",
"id": 2,
"course_offering_id": 21908,
"summary": "Main class",
"start_at": "2022-10-01T08:00:00+00:00",
"end_at": "2022-10-01T09:30:00+00:00",
"room_id": 1,
"counts_toward_attendance_hours": true,
"counts_toward_clinical_hours": true,
"status": "active",
"present_until": null,
"tardy_until": null,
"beacon_active": false,
"is_online": false,
"sandbox": true
}
Retrieves a specific CourseMeeting object.
HTTP Request
GET /courseofferings/(courseoffering)/coursemeetings/(coursemeeting)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- attendance
Permissions
One of the following roles is required to call this method:
- Academic Admin
- Registrar
update_attendance
curl "https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/students/(enrollment)/attendance/update" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X PUT
-d '{
"start_time": "2022-10-15 08:00:00",
"status": "present",
"note": "Excused for doctor visit",
"keep_best_status": "true",
"counts_toward_attendance_hours": "true",
"counts_toward_clinical_hours": "false"
}' \
Example response:
{}
Updates the attendance attribute of an existing CourseMeeting object.
HTTP Request
PUT /courseofferings/(courseoffering)/students/(enrollment)/attendance/update
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
course_meeting_id | No | int | |
start_time | No | datetime | |
status | Yes | enum (present, tardy, absent, excused) | |
note | No | text | |
keep_best_status | No | bool | |
counts_toward_attendance_hours | No | bool | Default is true |
counts_toward_clinical_hours | No | bool | Default is true |
Permissions
One of the following roles is required to call this method:
- Academic Admin
- Registrar
CourseOffering
The CourseOffering object
The CourseOffering object looks like this in JSON:
{
"object": "course_offering",
"id": 21908,
"academic_term_id": 4,
"campus_id": 0,
"finalized": false,
"finalized_at": null,
"max_enrolled": null,
"max_auditors": null,
"roster_visibility": true,
"start_date": "2022-05-20",
"end_date": "2022-10-08",
"add_drop_time": null,
"published": true,
"open_to_students_date": null,
"closed_to_students_date": null,
"course_evaluation_id": null,
"evaluation_available_from": null,
"evaluation_available_to": null,
"evaluation_lock_grades_at": null,
"evaluation_lock_grades_until": null,
"evaluation_available_to_faculty": null,
"faculty_can_manage_roster": false,
"faculty_can_override_enrollment": false,
"students_can_add_discussions": true,
"disable_student_bulletin_board_posts": false,
"allow_auditor_assignments": false,
"allow_auditor_attendance": false,
"waiting_list_management": "automatic",
"show_progress_to_students": false,
"catalog_courses": [
{
"object": "catalog_course",
"id": 1,
"course_offering_id": 21908,
"catalog_course_id": 688,
"primary": true,
"abbrv": "LAT101",
"name": "Beginning Latin I",
"description": null,
"section": "1",
"credits": 2,
"hours": 2,
"attendance_hours": 0,
"clinical_hours": 0,
"affects_standing": true,
"affects_full_time_status": true,
"pass_fail": false,
"pass_affects_gpa": true,
"fail_affects_gpa": true,
"pass_fail_pass_affects_gpa": true,
"pass_fail_fail_affects_gpa": true,
"fulfills_program_requirements": true,
"minimum_attendance": null,
"hide_self_register": false,
"self_enroll": "yes",
"self_audit": true,
"delivery_methods": [
{
"object": "course_delivery_method",
"id": 5,
"name": "Hybrid Online",
"distance_education": false,
"status": "active",
"primary": 1,
"added_at": null,
"added_by_id": null
}
],
"added_at": null,
"added_by_id": null
}
],
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
academic_term_id | Yes | int |
campus_id | Yes | int |
finalized | Yes | bool |
finalized_at | No | datetime |
max_enrolled | No | int |
max_auditors | No | int |
roster_visibility | Yes | bool |
start_date | No | date |
end_date | No | date |
add_drop_time | No | datetime |
published | Yes | bool |
open_to_students_date | No | date |
closed_to_students_date | No | date |
course_evaluation_id | No | int |
evaluation_available_from | No | datetime |
evaluation_available_to | No | datetime |
evaluation_lock_grades_at | No | datetime |
evaluation_lock_grades_until | No | datetime |
evaluation_available_to_faculty | No | enum (not_available, available_after_60_percent_completion, available_after_60_percent_completion_and_course_finalized) |
faculty_can_manage_roster | Yes | bool |
faculty_can_override_enrollment | Yes | bool |
students_can_add_discussions | Yes | bool |
disable_student_bulletin_board_posts | Yes | bool |
allow_auditor_assignments | Yes | bool |
allow_auditor_attendance | Yes | bool |
waiting_list_management | Yes | enum (automatic, manual, none) |
show_progress_to_students | No | bool |
catalog_courses | No | Array of CatalogCourse objects |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/courseofferings" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"academic_term_id": 8,
"filter": {"0":{"logic":"ALL","fields":[{"name":"enrolled","value":{"type":"RANGE","start":"1","end":"9"},"positive":1}]}}
}' \
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": 200,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "course_offering",
"id": 21910,
"academic_term_id": 8,
"campus_id": 0,
"finalized": false,
"finalized_at": null,
"max_enrolled": null,
"max_auditors": null,
"roster_visibility": true,
"start_date": "2022-05-20",
"end_date": "2022-10-08",
"add_drop_time": null,
"published": true,
"open_to_students_date": "2022-05-20",
"closed_to_students_date": "2022-10-08",
"course_evaluation_id": null,
"evaluation_available_from": null,
"evaluation_available_to": null,
"evaluation_lock_grades_at": null,
"evaluation_lock_grades_until": null,
"evaluation_available_to_faculty": null,
"faculty_can_manage_roster": false,
"faculty_can_override_enrollment": false,
"students_can_add_discussions": true,
"disable_student_bulletin_board_posts": false,
"allow_auditor_assignments": false,
"allow_auditor_attendance": false,
"waiting_list_management": "automatic",
"report_data": {
"course_offering_catalog_course_id": 40,
"name": "Beginning Latin I",
"description": "",
"catalog_course_id": 688,
"section": "1",
"credits": "2.00",
"hours": "2.00",
"pass_fail": 0,
"attendance_hours": "0.00",
"enable_clinical_hours": 0,
"clinical_hours": "0.00",
"fulfills_program_requirements": 1,
"affects_standing": 1,
"affects_full_time_status": 1,
"pass_affects_gpa": 1,
"fail_affects_gpa": 1,
"pass_fail_pass_affects_gpa": 1,
"pass_fail_fail_affects_gpa": 1,
"course_abbrv": "LAT101",
"department_name": "Undergraduate",
"campus_name": null,
"num_finalized_students": "0",
"num_students": "2",
"num_auditors": "0",
"num_incomplete": "0",
"num_withdrawn": "0",
"num_waiting": 1,
"primary_faculty_id": null,
"primary_faculty_display_name": null,
"primary_faculty_first_name": null,
"primary_faculty_last_name": null,
"other_faculty_ids": null,
"other_faculty": null,
"teaching_assistants": null,
"primary_faculty_email_address": null,
"other_faculty_email_addresses": null,
"teaching_assistant_email_addresses": null,
"add_drop_time_local": "2010-02-14 16:00:00",
"department_id": 1,
"program_name_ids": null,
"hide_self_register": 0,
"self_enroll": "YES",
"self_audit": 1,
"course_books": null,
"course_links": null,
"delivery_method_ids": null,
"delivery_method_names": null,
"primary_delivery_method_id": null,
"primary_delivery_method_name": null,
"has_course_evaluation": 0,
"num_course_evaluation_completions": "0",
"row_id": 40
},
"show_progress_to_students": false,
"catalog_courses": [
{
"object": "catalog_course",
"id": 40,
"course_offering_id": 21910,
"catalog_course_id": 688,
"primary": true,
"abbrv": "LAT101",
"name": "Beginning Latin I",
"description": null,
"section": "1",
"credits": 2,
"hours": 2,
"attendance_hours": 0,
"clinical_hours": 0,
"affects_standing": true,
"affects_full_time_status": true,
"pass_fail": false,
"pass_affects_gpa": true,
"fail_affects_gpa": true,
"pass_fail_pass_affects_gpa": true,
"pass_fail_fail_affects_gpa": true,
"fulfills_program_requirements": true,
"minimum_attendance": null,
"hide_self_register": false,
"self_enroll": "yes",
"self_audit": true,
"delivery_methods": [],
"added_at": null,
"added_by_id": null
}
]
}
],
"sandbox": true
}
Retrieves all CourseOffering objects that match given filter conditions.
HTTP Request
GET /courseofferings
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
academic_term_id | Yes | int | |
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
- academic_term
- campus
- faculty
- schedule
- alternate_names
- supplies
- books
- teachers
- waiting_list
- grades
- meetings
- catalog_courses
Filter Condition Parameters
These conditions can be used to narrow the results returned.
Name | Type |
---|---|
finalized | bool |
campus | campus |
section | alphanumeric |
instructor | search |
department | object id |
enrolled | integer |
auditors | integer |
incomplete | integer |
withdrawn | integer |
waiting | integer |
pass_fail | bool |
max_enrolled | enrollment |
max_auditors | enrollment |
delivery_method | object id |
published | bool |
program | program |
show_self_register | bool |
self_enroll | choice |
self_audit | bool |
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Academic Admin
- Registrar
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "course_offering",
"id": 21908,
"academic_term_id": 4,
"campus_id": 0,
"finalized": false,
"finalized_at": null,
"max_enrolled": null,
"max_auditors": null,
"roster_visibility": true,
"start_date": "2022-05-20",
"end_date": "2022-10-08",
"add_drop_time": null,
"published": true,
"open_to_students_date": null,
"closed_to_students_date": null,
"course_evaluation_id": null,
"evaluation_available_from": null,
"evaluation_available_to": null,
"evaluation_lock_grades_at": null,
"evaluation_lock_grades_until": null,
"evaluation_available_to_faculty": null,
"faculty_can_manage_roster": false,
"faculty_can_override_enrollment": false,
"students_can_add_discussions": true,
"disable_student_bulletin_board_posts": false,
"allow_auditor_assignments": false,
"allow_auditor_attendance": false,
"waiting_list_management": "automatic",
"show_progress_to_students": false,
"catalog_courses": [
{
"object": "catalog_course",
"id": 1,
"course_offering_id": 21908,
"catalog_course_id": 688,
"primary": true,
"abbrv": "LAT101",
"name": "Beginning Latin I",
"description": null,
"section": "1",
"credits": 2,
"hours": 2,
"attendance_hours": 0,
"clinical_hours": 0,
"affects_standing": true,
"affects_full_time_status": true,
"pass_fail": false,
"pass_affects_gpa": true,
"fail_affects_gpa": true,
"pass_fail_pass_affects_gpa": true,
"pass_fail_fail_affects_gpa": true,
"fulfills_program_requirements": true,
"minimum_attendance": null,
"hide_self_register": false,
"self_enroll": "yes",
"self_audit": true,
"delivery_methods": [
{
"object": "course_delivery_method",
"id": 5,
"name": "Hybrid Online",
"distance_education": false,
"status": "active",
"primary": 1,
"added_at": null,
"added_by_id": null
}
],
"added_at": null,
"added_by_id": null
}
],
"sandbox": true
}
Retrieves a specific CourseOffering object.
HTTP Request
GET /courseofferings/(courseoffering)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- academic_term
- campus
- faculty
- schedule
- alternate_names
- supplies
- books
- teachers
- waiting_list
- grades
- meetings
- catalog_courses
Permissions
Any role may call this method.
calendar
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/calendar" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 30,
"results": 30,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "course_event",
"event_id": "1",
"start": "2022-08-01 06:00:00",
"end": "2022-08-01 07:00:00",
"all_day": "0",
"name": "BR101: Main Class",
"summary": "BR101: Main Class",
"description": "",
"rfrequency": "WEEKLY",
"rinterval": "1",
"rcount": "0",
"rskips": "",
"runtil": "12\/31\/2022",
"rbyday": "MO,WE,FR",
"recurrence": "2022-08-01",
"busy": "1",
"room_id": "0",
"location": "",
"room_status": "NONE",
"is_closure": "0",
"url": null,
"calendar_name": "",
"owner_type": "INSTANCE",
"owner_id": 21908
}
]
}
HTTP Request
GET /courseofferings/(courseoffering)/calendar
Parameters
None
Permissions
Any role may call this method.
finalize
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/finalize" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
Example response:
{
"object": "course_offering",
"id": 21908,
"academic_term_id": 4,
"campus_id": 0,
"finalized": true,
"finalized_at": "2024-11-20T12:03:38+00:00",
"max_enrolled": null,
"max_auditors": null,
"roster_visibility": true,
"start_date": "2022-05-20",
"end_date": "2022-10-08",
"add_drop_time": null,
"published": true,
"open_to_students_date": null,
"closed_to_students_date": null,
"course_evaluation_id": null,
"evaluation_available_from": null,
"evaluation_available_to": null,
"evaluation_lock_grades_at": null,
"evaluation_lock_grades_until": null,
"evaluation_available_to_faculty": null,
"faculty_can_manage_roster": false,
"faculty_can_override_enrollment": false,
"students_can_add_discussions": true,
"disable_student_bulletin_board_posts": false,
"allow_auditor_assignments": false,
"allow_auditor_attendance": false,
"waiting_list_management": "automatic",
"show_progress_to_students": false,
"catalog_courses": [
{
"object": "catalog_course",
"id": 1,
"course_offering_id": 21908,
"catalog_course_id": 688,
"primary": true,
"abbrv": "LAT101",
"name": "Beginning Latin I",
"description": null,
"section": "1",
"credits": 2,
"hours": 2,
"attendance_hours": 0,
"clinical_hours": 0,
"affects_standing": true,
"affects_full_time_status": true,
"pass_fail": false,
"pass_affects_gpa": true,
"fail_affects_gpa": true,
"pass_fail_pass_affects_gpa": true,
"pass_fail_fail_affects_gpa": true,
"fulfills_program_requirements": true,
"minimum_attendance": null,
"hide_self_register": false,
"self_enroll": "yes",
"self_audit": true,
"delivery_methods": [
{
"object": "course_delivery_method",
"id": 5,
"name": "Hybrid Online",
"distance_education": false,
"status": "active",
"primary": 1,
"added_at": null,
"added_by_id": null
}
],
"added_at": null,
"added_by_id": null
}
],
"sandbox": true
}
HTTP Request
POST /courseofferings/(courseoffering)/finalize
Parameters
None
Permissions
One of the following roles is required to call this method:
- Academic Admin
- Registrar
syllabus
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/syllabus" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "syllabus",
"id": 1,
"course_offering_catalog_course_id": 1,
"content": null,
"file_id": 1,
"draft": false,
"added_at": "2022-07-19T17:00:55+00:00",
"added_by_id": 10,
"updated_at": "2022-07-19T17:00:55+00:00",
"updated_by_id": 10,
"sandbox": true
}
HTTP Request
GET /courseofferings/(courseoffering)/syllabus
Parameters
None
Permissions
Any role may call this method.
Credit
The Credit object
The Credit object looks like this in JSON:
{
"object": "credit",
"id": 8,
"actor_type": "person",
"actor_id": 1,
"number": 2,
"description": null,
"transaction_id": 10,
"amount": 1234.56,
"due_on": "2009-04-07",
"status": null,
"posted_on": "2015-03-10",
"academic_term_id": null,
"items": [],
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
actor_type | Yes | enum (person, contact_org) |
actor_id | Yes | int |
number | Yes | int |
description | Yes | text |
transaction_id | Yes | int |
amount | Yes | decimal |
due_on | Yes | date |
status | No | enum (unpaid, paid, uncollectible) |
posted_on | No | date |
academic_term_id | Yes | int |
items | No | Array of InvoiceItem objects |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/credits" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"filter": []
}' \
Example response:
{
"object": "list",
"count": 2,
"results": 2,
"results_per_page": 200,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "credit",
"id": 9,
"actor_type": "person",
"actor_id": 12,
"number": 3,
"description": null,
"transaction_id": 11,
"amount": 1234.56,
"due_on": "2009-04-07",
"status": null,
"report_data": {
"term_name": null,
"term_start_date": null,
"firstname": "Alice",
"lastname": "Admin",
"preferred_name": "",
"display_name": "Alice Admin",
"personid": 12,
"studentid": 12,
"posted_date": "2015-03-10",
"dummyid": "20220xx002"
},
"posted_on": "2015-03-10",
"academic_term_id": null,
"items": []
}
],
"sandbox": true
}
Retrieves all Credit objects that match given filter conditions.
HTTP Request
GET /credits
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
- items
- payments
- credits
- courses
Filter Condition Parameters
These conditions can be used to narrow the results returned.
Name | Type |
---|---|
student | search |
credit_number | integer |
academic_term | academic_term |
posted_date | date |
total_amount | decimal |
student_campus | campus |
tag | tag |
added_time | datetime |
custom_field | custom |
Permissions
One of the following roles is required to call this method:
- Financial Auditor
- Financial Admin
- Student Billing
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/credits/(credit)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "credit",
"id": 8,
"actor_type": "person",
"actor_id": 1,
"number": 2,
"description": null,
"transaction_id": 10,
"amount": 1234.56,
"due_on": "2009-04-07",
"status": null,
"posted_on": "2015-03-10",
"academic_term_id": null,
"items": [],
"sandbox": true
}
Retrieves a specific Credit object.
HTTP Request
GET /credits/(credit)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- items
- payments
- credits
- courses
Permissions
One of the following roles is required to call this method:
- Financial Auditor
- Financial Admin
- Student Billing
CustomInfoData
The CustomInfoData object
The CustomInfoData object looks like this in JSON:
{
"object": "custom_info_data",
"id": 1,
"custom_info_field_id": 11,
"academic_term_id": null,
"value": "Silver Ford Escape",
"owner_id": 1,
"import_id": null,
"custom_info_field": {
"object": "custom_info_field",
"id": 11,
"name": "Car Model",
"input_type": "text_area",
"type": "person",
"description": null,
"value_permissions": "default"
},
"added_at": "2022-01-01T00:05:30+00:00",
"added_by_id": 2,
"updated_at": "2022-01-01T00:05:30+00:00",
"updated_by_id": 2,
"option_value": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
custom_info_field_id | Yes | int |
academic_term_id | No | int |
value | Yes | text |
owner_id | Yes | int |
import_id | No | int |
custom_info_field | No | -- |
added_at | No | datetime |
added_by_id | No | int |
updated_at | No | datetime |
updated_by_id | No | int |
option_value | No | text |
sandbox | No | -- |
index (all types)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/custominfodata" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"filter": []
}' \
Example response:
{
"object": "list",
"count": 27,
"results": 27,
"results_per_page": 200,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "custom_info_data",
"id": 8,
"custom_info_field_id": 18,
"academic_term_id": null,
"value": "159876",
"owner_id": 1,
"import_id": null,
"custom_info_field": {
"object": "custom_info_field",
"id": 18,
"name": "Business membership number",
"input_type": "text_area",
"type": "organization",
"description": null,
"value_permissions": "default"
},
"added_at": "2022-01-01T00:05:30+00:00",
"added_by_id": 2,
"updated_at": "2022-01-01T00:05:30+00:00",
"updated_by_id": 2,
"report_data": {
"name": "Business membership number",
"type": "CONTACT_ORG",
"input_type": "TEXT AREA",
"option_value": null
},
"option_value": null
}
],
"sandbox": true
}
Retrieves all CustomInfoData objects of all types. Requires both Financial and Academic admin roles.
HTTP Request
GET /custominfodata
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. |
Filter Condition Parameters
These conditions can be used to narrow the results returned.
Name | Type |
---|---|
custom_info_field_id | integer |
name | text |
type | text |
input_type | text |
owner_id | integer |
academic_term_id | integer |
value | text |
import_id | integer |
added_at | datetime |
added_by | integer |
updated_at | datetime |
updated_by | integer |
Permissions
One of the following roles is required to call this method:
- Staff
index (donation)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/donations/(donation)/custominfodata/" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "custom_info_data",
"id": 18,
"custom_info_field_id": 17,
"academic_term_id": null,
"value": "Books",
"owner_id": 6,
"import_id": null,
"custom_info_field": {
"object": "custom_info_field",
"id": 17,
"name": "Proxy gift description",
"input_type": "text_area",
"type": "donation",
"description": null,
"value_permissions": "default"
},
"added_at": "2022-01-01T00:05:30+00:00",
"added_by_id": 2,
"updated_at": "2022-01-01T00:05:30+00:00",
"updated_by_id": 2,
"option_value": null
}
],
"sandbox": true
}
Retrieves all CustomInfoData objects tied to a specific Donation, tied to a specified Donation object.
HTTP Request
GET /donations/(donation)/custominfodata/
Parameters
None
Permissions
One of the following roles is required to call this method:
- Staff
show (donation)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/donations/(donation)/custominfodata/(custominfodata)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "custom_info_data",
"id": 18,
"custom_info_field_id": 17,
"academic_term_id": null,
"value": "Books",
"owner_id": 6,
"import_id": null,
"custom_info_field": {
"object": "custom_info_field",
"id": 17,
"name": "Proxy gift description",
"input_type": "text_area",
"type": "donation",
"description": null,
"value_permissions": "default"
},
"added_at": "2022-01-01T00:05:30+00:00",
"added_by_id": 2,
"updated_at": "2022-01-01T00:05:30+00:00",
"updated_by_id": 2,
"option_value": null,
"sandbox": true
}
Retrieves a specific CustomInfoData object, tied to a specified Donation object.
HTTP Request
GET /donations/(donation)/custominfodata/(custominfodata)
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:
- Staff
create (donation)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/donations/(donation)/custominfodata" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"custom_info_field_id": 17,
"value": "2002 Ford Focus"
}' \
Example response:
{
"object": "custom_info_data",
"id": 18,
"custom_info_field_id": 17,
"academic_term_id": null,
"value": "2002 Ford Focus",
"owner_id": 6,
"import_id": null,
"custom_info_field": {
"object": "custom_info_field",
"id": 17,
"name": "Proxy gift description",
"input_type": "text_area",
"type": "donation",
"description": null,
"value_permissions": "default"
},
"added_at": "2022-01-01T00:05:30+00:00",
"added_by_id": 2,
"updated_at": "2024-11-20T20:03:33+00:00",
"updated_by_id": 22,
"option_value": null,
"sandbox": true
}
Creates a new CustomInfoData object, tied to a specified Donation object.
HTTP Request
POST /donations/(donation)/custominfodata
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
custom_info_field_id | Yes | int | |
value | Yes | text |
Permissions
One of the following roles is required to call this method:
- Staff
update (donation)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/donations/(donation)/custominfodata/(custominfodata)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X PUT
-d '{
"value": "1957 Chevy"
}' \
Example response:
{
"object": "custom_info_data",
"id": 18,
"custom_info_field_id": 17,
"academic_term_id": null,
"value": "1957 Chevy",
"owner_id": 6,
"import_id": null,
"custom_info_field": {
"object": "custom_info_field",
"id": 17,
"name": "Proxy gift description",
"input_type": "text_area",
"type": "donation",
"description": null,
"value_permissions": "default"
},
"added_at": "2021-12-31T16:05:30+00:00",
"added_by_id": 2,
"updated_at": "2024-11-20T12:03:33+00:00",
"updated_by_id": 22,
"option_value": null,
"sandbox": true
}
Updates an existing CustomInfoData object, tied to a specified Donation object.
HTTP Request
PUT /donations/(donation)/custominfodata/(custominfodata)
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
value | Yes | text |
Permissions
One of the following roles is required to call this method:
- Staff
delete (donation)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/donations/(donation)/custominfodata/(custominfodata)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "custom_info_data",
"id": 18,
"deleted": true
}
Deletes an existing CustomInfoData object, tied to a specified Donation object.
HTTP Request
DELETE /donations/(donation)/custominfodata/(custominfodata)
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:
- Staff
index (donor)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/donors/(donor)/custominfodata/" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "custom_info_data",
"id": 19,
"custom_info_field_id": 20,
"academic_term_id": null,
"value": "Special",
"owner_id": 14,
"import_id": null,
"custom_info_field": {
"object": "custom_info_field",
"id": 20,
"name": "VIP",
"input_type": "text_area",
"type": "donor",
"description": null,
"value_permissions": "default"
},
"added_at": "2022-01-01T00:05:30+00:00",
"added_by_id": 2,
"updated_at": "2022-01-01T00:05:30+00:00",
"updated_by_id": 2,
"option_value": null
}
],
"sandbox": true
}
Retrieves all CustomInfoData objects tied to a specific Donor, tied to a specified Donor object.
HTTP Request
GET /donors/(donor)/custominfodata/
Parameters
None
Permissions
One of the following roles is required to call this method:
- Staff
show (donor)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/donors/(donor)/custominfodata/(custominfodata)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "custom_info_data",
"id": 19,
"custom_info_field_id": 20,
"academic_term_id": null,
"value": "Special",
"owner_id": 14,
"import_id": null,
"custom_info_field": {
"object": "custom_info_field",
"id": 20,
"name": "VIP",
"input_type": "text_area",
"type": "donor",
"description": null,
"value_permissions": "default"
},
"added_at": "2022-01-01T00:05:30+00:00",
"added_by_id": 2,
"updated_at": "2022-01-01T00:05:30+00:00",
"updated_by_id": 2,
"option_value": null,
"sandbox": true
}
Retrieves a specific CustomInfoData object, tied to a specified Donor object.
HTTP Request
GET /donors/(donor)/custominfodata/(custominfodata)
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:
- Staff
create (donor)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/donors/(donor)/custominfodata" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"custom_info_field_id": 20,
"value": "Exempt"
}' \
Example response:
{
"object": "custom_info_data",
"id": 19,
"custom_info_field_id": 20,
"academic_term_id": null,
"value": "Exempt",
"owner_id": 14,
"import_id": null,
"custom_info_field": {
"object": "custom_info_field",
"id": 20,
"name": "VIP",
"input_type": "text_area",
"type": "donor",
"description": null,
"value_permissions": "default"
},
"added_at": "2022-01-01T00:05:30+00:00",
"added_by_id": 2,
"updated_at": "2024-11-20T20:03:33+00:00",
"updated_by_id": 22,
"option_value": null,
"sandbox": true
}
Creates a new CustomInfoData object, tied to a specified Donor object.
HTTP Request
POST /donors/(donor)/custominfodata
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
custom_info_field_id | Yes | int | |
value | Yes | text |
Permissions
One of the following roles is required to call this method:
- Staff
update (donor)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/donors/(donor)/custominfodata/(custominfodata)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X PUT
-d '{
"value": "Special"
}' \
Example response:
{
"object": "custom_info_data",
"id": 19,
"custom_info_field_id": 20,
"academic_term_id": null,
"value": "Special",
"owner_id": 14,
"import_id": null,
"custom_info_field": {
"object": "custom_info_field",
"id": 20,
"name": "VIP",
"input_type": "text_area",
"type": "donor",
"description": null,
"value_permissions": "default"
},
"added_at": "2021-12-31T16:05:30+00:00",
"added_by_id": 2,
"updated_at": "2021-12-31T16:05:30+00:00",
"updated_by_id": 2,
"option_value": null,
"sandbox": true
}
Updates an existing CustomInfoData object, tied to a specified Donor object.
HTTP Request
PUT /donors/(donor)/custominfodata/(custominfodata)
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
value | Yes | text |
Permissions
One of the following roles is required to call this method:
- Staff
delete (donor)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/donors/(donor)/custominfodata/(custominfodata)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "custom_info_data",
"id": 19,
"deleted": true
}
Deletes an existing CustomInfoData object, tied to a specified Donor object.
HTTP Request
DELETE /donors/(donor)/custominfodata/(custominfodata)
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:
- Staff
index (organization)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/organizations/(organization)/custominfodata" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "custom_info_data",
"id": 8,
"custom_info_field_id": 18,
"academic_term_id": null,
"value": "159876",
"owner_id": 1,
"import_id": null,
"custom_info_field": {
"object": "custom_info_field",
"id": 18,
"name": "Business membership number",
"input_type": "text_area",
"type": "organization",
"description": null,
"value_permissions": "default"
},
"added_at": "2022-01-01T00:05:30+00:00",
"added_by_id": 2,
"updated_at": "2022-01-01T00:05:30+00:00",
"updated_by_id": 2,
"option_value": null
}
],
"sandbox": true
}
Retrieves all CustomInfoData objects tied to a specific Organization, tied to a specified Organization object.
HTTP Request
GET /organizations/(organization)/custominfodata
Parameters
None
Permissions
One of the following roles is required to call this method:
- Staff
show (organization)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/organizations/(organization)/custominfodata/(custominfodata)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "custom_info_data",
"id": 8,
"custom_info_field_id": 18,
"academic_term_id": null,
"value": "159876",
"owner_id": 1,
"import_id": null,
"custom_info_field": {
"object": "custom_info_field",
"id": 18,
"name": "Business membership number",
"input_type": "text_area",
"type": "organization",
"description": null,
"value_permissions": "default"
},
"added_at": "2022-01-01T00:05:30+00:00",
"added_by_id": 2,
"updated_at": "2022-01-01T00:05:30+00:00",
"updated_by_id": 2,
"option_value": null,
"sandbox": true
}
Retrieves a specific CustomInfoData object, tied to a specified Organization object.
HTTP Request
GET /organizations/(organization)/custominfodata/(custominfodata)
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:
- Staff
create (organization)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/organizations/(organization)/custominfodata" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"custom_info_field_id": 18,
"value": "555400"
}' \
Example response:
{
"object": "custom_info_data",
"id": 8,
"custom_info_field_id": 18,
"academic_term_id": null,
"value": "555400",
"owner_id": 1,
"import_id": null,
"custom_info_field": {
"object": "custom_info_field",
"id": 18,
"name": "Business membership number",
"input_type": "text_area",
"type": "organization",
"description": null,
"value_permissions": "default"
},
"added_at": "2022-01-01T00:05:30+00:00",
"added_by_id": 2,
"updated_at": "2024-11-20T20:03:33+00:00",
"updated_by_id": 22,
"option_value": null,
"sandbox": true
}
Creates a new CustomInfoData object, tied to a specified Organization object.
HTTP Request
POST /organizations/(organization)/custominfodata
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
custom_info_field_id | Yes | int | |
value | Yes | text |
Permissions
One of the following roles is required to call this method:
- Staff
update (organization)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/organizations/(organization)/custominfodata/(custominfodata)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X PUT
-d '{
"value": "555771"
}' \
Example response:
{
"object": "custom_info_data",
"id": 8,
"custom_info_field_id": 18,
"academic_term_id": null,
"value": "555771",
"owner_id": 1,
"import_id": null,
"custom_info_field": {
"object": "custom_info_field",
"id": 18,
"name": "Business membership number",
"input_type": "text_area",
"type": "organization",
"description": null,
"value_permissions": "default"
},
"added_at": "2021-12-31T16:05:30+00:00",
"added_by_id": 2,
"updated_at": "2024-11-20T12:03:33+00:00",
"updated_by_id": 22,
"option_value": null,
"sandbox": true
}
Updates an existing CustomInfoData object, tied to a specified Organization object.
HTTP Request
PUT /organizations/(organization)/custominfodata/(custominfodata)
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
value | Yes | text |
Permissions
One of the following roles is required to call this method:
- Staff
delete (organization)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/organizations/(organization)/custominfodata/(custominfodata)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "custom_info_data",
"id": 8,
"deleted": true
}
Deletes an existing CustomInfoData object, tied to a specified Organization object.
HTTP Request
DELETE /organizations/(organization)/custominfodata/(custominfodata)
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:
- Staff
index (person)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/custominfodata" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 2,
"results": 2,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "custom_info_data",
"id": 30,
"custom_info_field_id": 11,
"academic_term_id": null,
"value": "Blue Honda Accord",
"owner_id": 12,
"import_id": null,
"custom_info_field": {
"object": "custom_info_field",
"id": 11,
"name": "Car Model",
"input_type": "text_area",
"type": "person",
"description": null,
"value_permissions": "default"
},
"added_at": "2022-02-01T00:05:30+00:00",
"added_by_id": 2,
"updated_at": "2022-03-01T00:05:30+00:00",
"updated_by_id": 2,
"option_value": null
}
],
"sandbox": true
}
Retrieves all CustomInfoData objects tied to a specific Person, tied to a specified Person object.
HTTP Request
GET /people/(person)/custominfodata
Parameters
None
Permissions
One of the following roles is required to call this method:
- Staff
show (person)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/custominfodata/(custominfodata)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "custom_info_data",
"id": 11,
"custom_info_field_id": 1,
"academic_term_id": null,
"value": "Robert",
"owner_id": 16,
"import_id": null,
"custom_info_field": {
"object": "custom_info_field",
"id": 1,
"name": "Dad's name",
"input_type": "text",
"type": "person",
"description": null,
"value_permissions": "default"
},
"added_at": "2022-01-01T00:05:30+00:00",
"added_by_id": 2,
"updated_at": "2022-01-01T00:05:30+00:00",
"updated_by_id": 2,
"option_value": null,
"sandbox": true
}
Retrieves a specific CustomInfoData object, tied to a specified Person object.
HTTP Request
GET /people/(person)/custominfodata/(custominfodata)
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:
- Staff
create (person)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/custominfodata" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"custom_info_field_id": 1,
"value": "Robert"
}' \
Example response:
{
"object": "custom_info_data",
"id": 37,
"custom_info_field_id": 1,
"academic_term_id": null,
"value": "Robert",
"owner_id": 12,
"import_id": null,
"custom_info_field": {
"object": "custom_info_field",
"id": 1,
"name": "Dad's name",
"input_type": "text",
"type": "person",
"description": null,
"value_permissions": "default"
},
"added_at": "2024-11-20T20:03:33+00:00",
"added_by_id": 22,
"updated_at": "2024-11-20T20:03:33+00:00",
"updated_by_id": 22,
"option_value": null,
"sandbox": true
}
Creates a new CustomInfoData object, tied to a specified Person object.
HTTP Request
POST /people/(person)/custominfodata
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
custom_info_field_id | Yes | int | |
value | Yes | text |
Permissions
One of the following roles is required to call this method:
- Staff
update (person)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/custominfodata/(custominfodata)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X PUT
-d '{
"value": "Robert"
}' \
Example response:
{
"object": "custom_info_data",
"id": 11,
"custom_info_field_id": 1,
"academic_term_id": null,
"value": "Robert",
"owner_id": 16,
"import_id": null,
"custom_info_field": {
"object": "custom_info_field",
"id": 1,
"name": "Dad's name",
"input_type": "text",
"type": "person",
"description": null,
"value_permissions": "default"
},
"added_at": "2021-12-31T16:05:30+00:00",
"added_by_id": 2,
"updated_at": "2021-12-31T16:05:30+00:00",
"updated_by_id": 2,
"option_value": null,
"sandbox": true
}
Updates an existing CustomInfoData object, tied to a specified Person object.
HTTP Request
PUT /people/(person)/custominfodata/(custominfodata)
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
value | Yes | text |
Permissions
One of the following roles is required to call this method:
- Staff
delete (person)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/custominfodata/(custominfodata)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "custom_info_data",
"id": 11,
"deleted": true
}
Deletes an existing CustomInfoData object, tied to a specified Person object.
HTTP Request
DELETE /people/(person)/custominfodata/(custominfodata)
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:
- Staff
index (admissions)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/custominfodata/admissions" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "custom_info_data",
"id": 35,
"custom_info_field_id": 14,
"academic_term_id": null,
"value": "Rocky Road",
"owner_id": 12,
"import_id": null,
"custom_info_field": {
"object": "custom_info_field",
"id": 14,
"name": "Favorite ice cream flavor",
"input_type": "text_area",
"type": "admissions",
"description": null,
"value_permissions": "default"
},
"added_at": "2022-02-01T00:05:30+00:00",
"added_by_id": 2,
"updated_at": "2022-03-01T00:05:30+00:00",
"updated_by_id": 2,
"option_value": null
}
],
"sandbox": true
}
Retrieves all CustomInfoData objects tied to a specific Person, of the admissions type, tied to a specified Person object.
HTTP Request
GET /people/(person)/custominfodata/admissions
Parameters
None
Permissions
One of the following roles is required to call this method:
- Staff
show (admissions)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/custominfodata/admissions/(custominfodata)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "custom_info_data",
"id": 15,
"custom_info_field_id": 14,
"academic_term_id": null,
"value": "Vanilla",
"owner_id": 16,
"import_id": null,
"custom_info_field": {
"object": "custom_info_field",
"id": 14,
"name": "Favorite ice cream flavor",
"input_type": "text_area",
"type": "admissions",
"description": null,
"value_permissions": "default"
},
"added_at": "2022-01-01T00:05:30+00:00",
"added_by_id": 2,
"updated_at": "2022-01-01T00:05:30+00:00",
"updated_by_id": 2,
"option_value": null,
"sandbox": true
}
Retrieves a specific CustomInfoData object, of the admissions type, tied to a specified Person object.
HTTP Request
GET /people/(person)/custominfodata/admissions/(custominfodata)
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:
- Staff
create (admissions)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/custominfodata/admissions" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"custom_info_field_id": 14,
"value": "Chocolate"
}' \
Example response:
{
"object": "custom_info_data",
"id": 35,
"custom_info_field_id": 14,
"academic_term_id": null,
"value": "Chocolate",
"owner_id": 12,
"import_id": null,
"custom_info_field": {
"object": "custom_info_field",
"id": 14,
"name": "Favorite ice cream flavor",
"input_type": "text_area",
"type": "admissions",
"description": null,
"value_permissions": "default"
},
"added_at": "2022-02-01T00:05:30+00:00",
"added_by_id": 2,
"updated_at": "2024-11-20T20:03:33+00:00",
"updated_by_id": 22,
"option_value": null,
"sandbox": true
}
Creates a new CustomInfoData object, of the admissions type, tied to a specified Person object.
HTTP Request
POST /people/(person)/custominfodata/admissions
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
custom_info_field_id | Yes | int | |
value | Yes | text |
Permissions
One of the following roles is required to call this method:
- Staff
update (admissions)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/custominfodata/admissions/(custominfodata)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X PUT
-d '{
"value": "Rocky Road"
}' \
Example response:
{
"object": "custom_info_data",
"id": 15,
"custom_info_field_id": 14,
"academic_term_id": null,
"value": "Rocky Road",
"owner_id": 16,
"import_id": null,
"custom_info_field": {
"object": "custom_info_field",
"id": 14,
"name": "Favorite ice cream flavor",
"input_type": "text_area",
"type": "admissions",
"description": null,
"value_permissions": "default"
},
"added_at": "2021-12-31T16:05:30+00:00",
"added_by_id": 2,
"updated_at": "2024-11-20T12:03:33+00:00",
"updated_by_id": 22,
"option_value": null,
"sandbox": true
}
Updates an existing CustomInfoData object, of the admissions type, tied to a specified Person object.
HTTP Request
PUT /people/(person)/custominfodata/admissions/(custominfodata)
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
value | Yes | text |
Permissions
One of the following roles is required to call this method:
- Staff
delete (admissions)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/custominfodata/admissions/(custominfodata)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "custom_info_data",
"id": 15,
"deleted": true
}
Deletes an existing CustomInfoData object, of the admissions type, tied to a specified Person object.
HTTP Request
DELETE /people/(person)/custominfodata/admissions/(custominfodata)
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:
- Staff
index (campus life)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/custominfodata/campuslife" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "custom_info_data",
"id": 36,
"custom_info_field_id": 19,
"academic_term_id": null,
"value": "Seahawks",
"owner_id": 12,
"import_id": null,
"custom_info_field": {
"object": "custom_info_field",
"id": 19,
"name": "Preferred sports team",
"input_type": "text_area",
"type": "campus_life",
"description": null,
"value_permissions": "default"
},
"added_at": "2022-02-01T00:05:30+00:00",
"added_by_id": 2,
"updated_at": "2022-03-01T00:05:30+00:00",
"updated_by_id": 2,
"option_value": null
}
],
"sandbox": true
}
Retrieves all CustomInfoData objects tied to a specific Person, of the campus life type, tied to a specified Person object.
HTTP Request
GET /people/(person)/custominfodata/campuslife
Parameters
None
Permissions
One of the following roles is required to call this method:
- Staff
show (campus life)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/custominfodata/campuslife/(custominfodata)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "custom_info_data",
"id": 20,
"custom_info_field_id": 19,
"academic_term_id": null,
"value": "Tigers",
"owner_id": 16,
"import_id": null,
"custom_info_field": {
"object": "custom_info_field",
"id": 19,
"name": "Preferred sports team",
"input_type": "text_area",
"type": "campus_life",
"description": null,
"value_permissions": "default"
},
"added_at": "2022-01-01T00:05:30+00:00",
"added_by_id": 2,
"updated_at": "2022-01-01T00:05:30+00:00",
"updated_by_id": 2,
"option_value": null,
"sandbox": true
}
Retrieves a specific CustomInfoData object, of the campus life type, tied to a specified Person object.
HTTP Request
GET /people/(person)/custominfodata/campuslife/(custominfodata)
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:
- Staff
create (campus life)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/custominfodata/campuslife" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"custom_info_field_id": 19,
"value": "Patriots"
}' \
Example response:
{
"object": "custom_info_data",
"id": 20,
"custom_info_field_id": 19,
"academic_term_id": null,
"value": "Patriots",
"owner_id": 16,
"import_id": null,
"custom_info_field": {
"object": "custom_info_field",
"id": 19,
"name": "Preferred sports team",
"input_type": "text_area",
"type": "campus_life",
"description": null,
"value_permissions": "default"
},
"added_at": "2022-01-01T00:05:30+00:00",
"added_by_id": 2,
"updated_at": "2024-11-20T20:03:33+00:00",
"updated_by_id": 22,
"option_value": null,
"sandbox": true
}
Creates a new CustomInfoData object, of the campus life type, tied to a specified Person object.
HTTP Request
POST /people/(person)/custominfodata/campuslife
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
custom_info_field_id | Yes | int | |
value | Yes | text |
Permissions
One of the following roles is required to call this method:
- Staff
update (campus life)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/custominfodata/campuslife/(custominfodata)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X PUT
-d '{
"value": "Hawks"
}' \
Example response:
{
"object": "custom_info_data",
"id": 20,
"custom_info_field_id": 19,
"academic_term_id": null,
"value": "Hawks",
"owner_id": 16,
"import_id": null,
"custom_info_field": {
"object": "custom_info_field",
"id": 19,
"name": "Preferred sports team",
"input_type": "text_area",
"type": "campus_life",
"description": null,
"value_permissions": "default"
},
"added_at": "2021-12-31T16:05:30+00:00",
"added_by_id": 2,
"updated_at": "2024-11-20T12:03:33+00:00",
"updated_by_id": 22,
"option_value": null,
"sandbox": true
}
Updates an existing CustomInfoData object, of the campus life type, tied to a specified Person object.
HTTP Request
PUT /people/(person)/custominfodata/campuslife/(custominfodata)
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
value | Yes | text |
Permissions
One of the following roles is required to call this method:
- Staff
delete (campus life)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/custominfodata/campuslife/(custominfodata)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "custom_info_data",
"id": 20,
"deleted": true
}
Deletes an existing CustomInfoData object, of the campus life type, tied to a specified Person object.
HTTP Request
DELETE /people/(person)/custominfodata/campuslife/(custominfodata)
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:
- Staff
index (financial)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/custominfodata/financial" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "custom_info_data",
"id": 33,
"custom_info_field_id": 16,
"academic_term_id": null,
"value": "Silver dollar",
"owner_id": 12,
"import_id": null,
"custom_info_field": {
"object": "custom_info_field",
"id": 16,
"name": "Favorite coin",
"input_type": "text_area",
"type": "financial",
"description": null,
"value_permissions": "default"
},
"added_at": "2022-02-01T00:05:30+00:00",
"added_by_id": 2,
"updated_at": "2022-03-01T00:05:30+00:00",
"updated_by_id": 2,
"option_value": null
}
],
"sandbox": true
}
Retrieves all CustomInfoData objects tied to a specific Person, of the financial type, tied to a specified Person object.
HTTP Request
GET /people/(person)/custominfodata/financial
Parameters
None
Permissions
One of the following roles is required to call this method:
- Staff
show (financial)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/custominfodata/financial/(custominfodata)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "custom_info_data",
"id": 16,
"custom_info_field_id": 16,
"academic_term_id": null,
"value": "Gold",
"owner_id": 16,
"import_id": null,
"custom_info_field": {
"object": "custom_info_field",
"id": 16,
"name": "Favorite coin",
"input_type": "text_area",
"type": "financial",
"description": null,
"value_permissions": "default"
},
"added_at": "2022-01-01T00:05:30+00:00",
"added_by_id": 2,
"updated_at": "2022-01-01T00:05:30+00:00",
"updated_by_id": 2,
"option_value": null,
"sandbox": true
}
Retrieves a specific CustomInfoData object, of the financial type, tied to a specified Person object.
HTTP Request
GET /people/(person)/custominfodata/financial/(custominfodata)
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:
- Staff
create (financial)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/custominfodata/financial" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"custom_info_field_id": 16,
"value": "Silver"
}' \
Example response:
{
"object": "custom_info_data",
"id": 33,
"custom_info_field_id": 16,
"academic_term_id": null,
"value": "Silver",
"owner_id": 12,
"import_id": null,
"custom_info_field": {
"object": "custom_info_field",
"id": 16,
"name": "Favorite coin",
"input_type": "text_area",
"type": "financial",
"description": null,
"value_permissions": "default"
},
"added_at": "2022-02-01T00:05:30+00:00",
"added_by_id": 2,
"updated_at": "2024-11-20T20:03:33+00:00",
"updated_by_id": 22,
"option_value": null,
"sandbox": true
}
Creates a new CustomInfoData object, of the financial type, tied to a specified Person object.
HTTP Request
POST /people/(person)/custominfodata/financial
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
custom_info_field_id | Yes | int | |
value | Yes | text |
Permissions
One of the following roles is required to call this method:
- Staff
update (financial)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/custominfodata/financial/(custominfodata)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X PUT
-d '{
"value": "Gold"
}' \
Example response:
{
"object": "custom_info_data",
"id": 16,
"custom_info_field_id": 16,
"academic_term_id": null,
"value": "Gold",
"owner_id": 16,
"import_id": null,
"custom_info_field": {
"object": "custom_info_field",
"id": 16,
"name": "Favorite coin",
"input_type": "text_area",
"type": "financial",
"description": null,
"value_permissions": "default"
},
"added_at": "2021-12-31T16:05:30+00:00",
"added_by_id": 2,
"updated_at": "2021-12-31T16:05:30+00:00",
"updated_by_id": 2,
"option_value": null,
"sandbox": true
}
Updates an existing CustomInfoData object, of the financial type, tied to a specified Person object.
HTTP Request
PUT /people/(person)/custominfodata/financial/(custominfodata)
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
value | Yes | text |
Permissions
One of the following roles is required to call this method:
- Staff
delete (financial)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/custominfodata/financial/(custominfodata)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "custom_info_data",
"id": 16,
"deleted": true
}
Deletes an existing CustomInfoData object, of the financial type, tied to a specified Person object.
HTTP Request
DELETE /people/(person)/custominfodata/financial/(custominfodata)
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:
- Staff
index (financial aid)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/custominfodata/financialaid" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "custom_info_data",
"id": 34,
"custom_info_field_id": 15,
"academic_term_id": null,
"value": "Cosigned",
"owner_id": 12,
"import_id": null,
"custom_info_field": {
"object": "custom_info_field",
"id": 15,
"name": "Favorite kind of loan",
"input_type": "text_area",
"type": "financial_aid",
"description": null,
"value_permissions": "default"
},
"added_at": "2022-02-01T00:05:30+00:00",
"added_by_id": 2,
"updated_at": "2022-03-01T00:05:30+00:00",
"updated_by_id": 2,
"option_value": null
}
],
"sandbox": true
}
Retrieves all CustomInfoData objects tied to a specific Person, of the financial aid type, tied to a specified Person object.
HTTP Request
GET /people/(person)/custominfodata/financialaid
Parameters
None
Permissions
One of the following roles is required to call this method:
- Staff
show (financial aid)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/custominfodata/financialaid/(custominfodata)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "custom_info_data",
"id": 14,
"custom_info_field_id": 15,
"academic_term_id": null,
"value": "Forgiven",
"owner_id": 16,
"import_id": null,
"custom_info_field": {
"object": "custom_info_field",
"id": 15,
"name": "Favorite kind of loan",
"input_type": "text_area",
"type": "financial_aid",
"description": null,
"value_permissions": "default"
},
"added_at": "2022-01-01T00:05:30+00:00",
"added_by_id": 2,
"updated_at": "2022-01-01T00:05:30+00:00",
"updated_by_id": 2,
"option_value": null,
"sandbox": true
}
Retrieves a specific CustomInfoData object, of the financial aid type, tied to a specified Person object.
HTTP Request
GET /people/(person)/custominfodata/financialaid/(custominfodata)
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:
- Staff
create (financial aid)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/custominfodata/financialaid" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"custom_info_field_id": 15,
"value": "Grant"
}' \
Example response:
{
"object": "custom_info_data",
"id": 34,
"custom_info_field_id": 15,
"academic_term_id": null,
"value": "Grant",
"owner_id": 12,
"import_id": null,
"custom_info_field": {
"object": "custom_info_field",
"id": 15,
"name": "Favorite kind of loan",
"input_type": "text_area",
"type": "financial_aid",
"description": null,
"value_permissions": "default"
},
"added_at": "2022-02-01T00:05:30+00:00",
"added_by_id": 2,
"updated_at": "2024-11-20T20:03:33+00:00",
"updated_by_id": 22,
"option_value": null,
"sandbox": true
}
Creates a new CustomInfoData object, of the financial aid type, tied to a specified Person object.
HTTP Request
POST /people/(person)/custominfodata/financialaid
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
custom_info_field_id | Yes | int | |
value | Yes | text |
Permissions
One of the following roles is required to call this method:
- Staff
update (financial aid)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/custominfodata/financialaid/(custominfodata)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X PUT
-d '{
"value": "Grant"
}' \
Example response:
{
"object": "custom_info_data",
"id": 14,
"custom_info_field_id": 15,
"academic_term_id": null,
"value": "Grant",
"owner_id": 16,
"import_id": null,
"custom_info_field": {
"object": "custom_info_field",
"id": 15,
"name": "Favorite kind of loan",
"input_type": "text_area",
"type": "financial_aid",
"description": null,
"value_permissions": "default"
},
"added_at": "2021-12-31T16:05:30+00:00",
"added_by_id": 2,
"updated_at": "2024-11-20T12:03:33+00:00",
"updated_by_id": 22,
"option_value": null,
"sandbox": true
}
Updates an existing CustomInfoData object, of the financial aid type, tied to a specified Person object.
HTTP Request
PUT /people/(person)/custominfodata/financialaid/(custominfodata)
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
value | Yes | text |
Permissions
One of the following roles is required to call this method:
- Staff
delete (financial aid)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/custominfodata/financialaid/(custominfodata)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "custom_info_data",
"id": 14,
"deleted": true
}
Deletes an existing CustomInfoData object, of the financial aid type, tied to a specified Person object.
HTTP Request
DELETE /people/(person)/custominfodata/financialaid/(custominfodata)
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:
- Staff
index (student)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/custominfodata/student" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "custom_info_data",
"id": 31,
"custom_info_field_id": 12,
"academic_term_id": null,
"value": "English",
"owner_id": 12,
"import_id": null,
"custom_info_field": {
"object": "custom_info_field",
"id": 12,
"name": "Favorite school subject",
"input_type": "text_area",
"type": "student",
"description": null,
"value_permissions": "default"
},
"added_at": "2022-02-01T00:05:30+00:00",
"added_by_id": 2,
"updated_at": "2022-03-01T00:05:30+00:00",
"updated_by_id": 2,
"option_value": null
}
],
"sandbox": true
}
Retrieves all CustomInfoData objects tied to a specific Person, of the student type, tied to a specified Person object.
HTTP Request
GET /people/(person)/custominfodata/student
Parameters
None
Permissions
One of the following roles is required to call this method:
- Staff
show (student)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/custominfodata/student/(custominfodata)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "custom_info_data",
"id": 12,
"custom_info_field_id": 12,
"academic_term_id": null,
"value": "Mathematics",
"owner_id": 16,
"import_id": null,
"custom_info_field": {
"object": "custom_info_field",
"id": 12,
"name": "Favorite school subject",
"input_type": "text_area",
"type": "student",
"description": null,
"value_permissions": "default"
},
"added_at": "2022-01-01T00:05:30+00:00",
"added_by_id": 2,
"updated_at": "2022-01-01T00:05:30+00:00",
"updated_by_id": 2,
"option_value": null,
"sandbox": true
}
Retrieves a specific CustomInfoData object, of the student type, tied to a specified Person object.
HTTP Request
GET /people/(person)/custominfodata/student/(custominfodata)
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:
- Staff
create (student)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/custominfodata/student" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"custom_info_field_id": 12,
"value": "Spanish"
}' \
Example response:
{
"object": "custom_info_data",
"id": 31,
"custom_info_field_id": 12,
"academic_term_id": null,
"value": "Spanish",
"owner_id": 12,
"import_id": null,
"custom_info_field": {
"object": "custom_info_field",
"id": 12,
"name": "Favorite school subject",
"input_type": "text_area",
"type": "student",
"description": null,
"value_permissions": "default"
},
"added_at": "2022-02-01T00:05:30+00:00",
"added_by_id": 2,
"updated_at": "2024-11-20T20:03:33+00:00",
"updated_by_id": 22,
"option_value": null,
"sandbox": true
}
Creates a new CustomInfoData object, of the student type, tied to a specified Person object.
HTTP Request
POST /people/(person)/custominfodata/student
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
custom_info_field_id | Yes | int | |
value | Yes | text |
Permissions
One of the following roles is required to call this method:
- Staff
update (student)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/custominfodata/student/(custominfodata)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X PUT
-d '{
"value": "Mathematics"
}' \
Example response:
{
"object": "custom_info_data",
"id": 12,
"custom_info_field_id": 12,
"academic_term_id": null,
"value": "Mathematics",
"owner_id": 16,
"import_id": null,
"custom_info_field": {
"object": "custom_info_field",
"id": 12,
"name": "Favorite school subject",
"input_type": "text_area",
"type": "student",
"description": null,
"value_permissions": "default"
},
"added_at": "2021-12-31T16:05:30+00:00",
"added_by_id": 2,
"updated_at": "2021-12-31T16:05:30+00:00",
"updated_by_id": 2,
"option_value": null,
"sandbox": true
}
Updates an existing CustomInfoData object, of the student type, tied to a specified Person object.
HTTP Request
PUT /people/(person)/custominfodata/student/(custominfodata)
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
value | Yes | text |
Permissions
One of the following roles is required to call this method:
- Staff
delete (student)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/custominfodata/student/(custominfodata)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "custom_info_data",
"id": 12,
"deleted": true
}
Deletes an existing CustomInfoData object, of the student type, tied to a specified Person object.
HTTP Request
DELETE /people/(person)/custominfodata/student/(custominfodata)
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:
- Staff
index (term student)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/custominfodata/term/(academicterm)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "custom_info_data",
"id": 32,
"custom_info_field_id": 13,
"academic_term_id": 8,
"value": "Blue",
"owner_id": 12,
"import_id": null,
"custom_info_field": {
"object": "custom_info_field",
"id": 13,
"name": "Favorite color",
"input_type": "text_area",
"type": "term_student",
"description": null,
"value_permissions": "default"
},
"added_at": "2022-02-01T00:05:30+00:00",
"added_by_id": 2,
"updated_at": "2022-03-01T00:05:30+00:00",
"updated_by_id": 2,
"option_value": null
}
],
"sandbox": true
}
Retrieves all CustomInfoData objects tied to a specific Person, of the term student type, tied to a specified Person object.
HTTP Request
GET /people/(person)/custominfodata/term/(academicterm)
Parameters
None
Permissions
One of the following roles is required to call this method:
- Staff
show (term student)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/custominfodata/term/(academicterm)/(custominfodata)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "custom_info_data",
"id": 17,
"custom_info_field_id": 13,
"academic_term_id": 8,
"value": "Green",
"owner_id": 16,
"import_id": null,
"custom_info_field": {
"object": "custom_info_field",
"id": 13,
"name": "Favorite color",
"input_type": "text_area",
"type": "term_student",
"description": null,
"value_permissions": "default"
},
"added_at": "2022-01-01T00:05:30+00:00",
"added_by_id": 2,
"updated_at": "2022-01-01T00:05:30+00:00",
"updated_by_id": 2,
"option_value": null,
"sandbox": true
}
Retrieves a specific CustomInfoData object, of the term student type, tied to a specified Person object.
HTTP Request
GET /people/(person)/custominfodata/term/(academicterm)/(custominfodata)
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:
- Staff
create (term student)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/custominfodata/term/(academicterm)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"custom_info_field_id": 13,
"value": "Yellow"
}' \
Example response:
{
"object": "custom_info_data",
"id": 32,
"custom_info_field_id": 13,
"academic_term_id": 8,
"value": "Yellow",
"owner_id": 12,
"import_id": null,
"custom_info_field": {
"object": "custom_info_field",
"id": 13,
"name": "Favorite color",
"input_type": "text_area",
"type": "term_student",
"description": null,
"value_permissions": "default"
},
"added_at": "2022-02-01T00:05:30+00:00",
"added_by_id": 2,
"updated_at": "2024-11-20T20:03:33+00:00",
"updated_by_id": 22,
"option_value": null,
"sandbox": true
}
Creates a new CustomInfoData object, of the term student type, tied to a specified Person object.
HTTP Request
POST /people/(person)/custominfodata/term/(academicterm)
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
custom_info_field_id | Yes | int | |
value | Yes | text |
Permissions
One of the following roles is required to call this method:
- Staff
update (term student)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/custominfodata/term/(academicterm)/(custominfodata)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X PUT
-d '{
"value": "Blue"
}' \
Example response:
{
"object": "custom_info_data",
"id": 17,
"custom_info_field_id": 13,
"academic_term_id": 8,
"value": "Blue",
"owner_id": 16,
"import_id": null,
"custom_info_field": {
"object": "custom_info_field",
"id": 13,
"name": "Favorite color",
"input_type": "text_area",
"type": "term_student",
"description": null,
"value_permissions": "default"
},
"added_at": "2021-12-31T16:05:30+00:00",
"added_by_id": 2,
"updated_at": "2024-11-20T12:03:33+00:00",
"updated_by_id": 22,
"option_value": null,
"sandbox": true
}
Updates an existing CustomInfoData object, of the term student type, tied to a specified Person object.
HTTP Request
PUT /people/(person)/custominfodata/term/(academicterm)/(custominfodata)
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
value | Yes | text |
Permissions
One of the following roles is required to call this method:
- Staff
delete (term student)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/custominfodata/term/(academicterm)/(custominfodata)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "custom_info_data",
"id": 17,
"deleted": true
}
Deletes an existing CustomInfoData object, of the term student type, tied to a specified Person object.
HTTP Request
DELETE /people/(person)/custominfodata/term/(academicterm)/(custominfodata)
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:
- Staff
CustomInfoField
The CustomInfoField object
See example response for details.
index (admissions)
Example code to call this method:
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "custom_info_field",
"id": 14,
"name": "Favorite ice cream flavor",
"input_type": "text_area",
"type": "admissions",
"description": null,
"value_permissions": "default"
}
],
"sandbox": true
}
Retrieves all CustomInfoField objects, of the admissions type.
HTTP Request
GET /admissionscustominfofields
Parameters
None
Permissions
One of the following roles is required to call this method:
- Admissions Admin
show (admissions)
Example code to call this method:
Example response:
{
"object": "custom_info_field",
"id": 14,
"name": "Favorite ice cream flavor",
"input_type": "text_area",
"type": "admissions",
"description": null,
"value_permissions": "default",
"sandbox": true
}
Retrieves a specific CustomInfoField object, of the admissions type.
HTTP Request
GET /admissionscustominfofields/(admissionscustominfofield)
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:
- Admissions Admin
index (campus life)
Example code to call this method:
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "custom_info_field",
"id": 19,
"name": "Preferred sports team",
"input_type": "text_area",
"type": "campus_life",
"description": null,
"value_permissions": "default"
}
],
"sandbox": true
}
Retrieves all CustomInfoField objects, of the campus life type.
HTTP Request
GET /campuslifecustominfofields
Parameters
None
show (campus life)
Example code to call this method:
Example response:
{
"object": "custom_info_field",
"id": 19,
"name": "Preferred sports team",
"input_type": "text_area",
"type": "campus_life",
"description": null,
"value_permissions": "default",
"sandbox": true
}
Retrieves a specific CustomInfoField object, of the campus life type.
HTTP Request
GET /campuslifecustominfofields/(campuslifecustominfofield)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
index (donation)
Example code to call this method:
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "custom_info_field",
"id": 17,
"name": "Proxy gift description",
"input_type": "text_area",
"type": "donation",
"description": null,
"value_permissions": "default"
}
],
"sandbox": true
}
Retrieves all CustomInfoField objects, of the donation type.
HTTP Request
GET /donationcustominfofields
Parameters
None
Permissions
One of the following roles is required to call this method:
- Financial Admin
show (donation)
Example code to call this method:
Example response:
{
"object": "custom_info_field",
"id": 17,
"name": "Proxy gift description",
"input_type": "text_area",
"type": "donation",
"description": null,
"value_permissions": "default",
"sandbox": true
}
Retrieves a specific CustomInfoField object, of the donation type.
HTTP Request
GET /donationcustominfofields/(donationcustominfofield)
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:
- Financial Admin
index (donor)
Example code to call this method:
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "custom_info_field",
"id": 20,
"name": "VIP",
"input_type": "text_area",
"type": "donor",
"description": null,
"value_permissions": "default"
}
],
"sandbox": true
}
Retrieves all CustomInfoField objects, of the donor type.
HTTP Request
GET /donorcustominfofields
Parameters
None
Permissions
One of the following roles is required to call this method:
- Financial Admin
show (donor)
Example code to call this method:
Example response:
{
"object": "custom_info_field",
"id": 20,
"name": "VIP",
"input_type": "text_area",
"type": "donor",
"description": null,
"value_permissions": "default",
"sandbox": true
}
Retrieves a specific CustomInfoField object, of the donor type.
HTTP Request
GET /donorcustominfofields/(donorcustominfofield)
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:
- Financial Admin
index (financial aid)
Example code to call this method:
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "custom_info_field",
"id": 15,
"name": "Favorite kind of loan",
"input_type": "text_area",
"type": "financial_aid",
"description": null,
"value_permissions": "default"
}
],
"sandbox": true
}
Retrieves all CustomInfoField objects, of the financial aid type.
HTTP Request
GET /financialaidcustominfofields
Parameters
None
Permissions
One of the following roles is required to call this method:
- Financial Admin
- Student Billing
- Financial Aid
show (financial aid)
Example code to call this method:
Example response:
{
"object": "custom_info_field",
"id": 15,
"name": "Favorite kind of loan",
"input_type": "text_area",
"type": "financial_aid",
"description": null,
"value_permissions": "default",
"sandbox": true
}
Retrieves a specific CustomInfoField object, of the financial aid type.
HTTP Request
GET /financialaidcustominfofields/(financialaidcustominfofield)
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:
- Financial Aid
index (financial)
Example code to call this method:
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "custom_info_field",
"id": 16,
"name": "Favorite coin",
"input_type": "text_area",
"type": "financial",
"description": null,
"value_permissions": "default"
}
],
"sandbox": true
}
Retrieves all CustomInfoField objects, of the financial type.
HTTP Request
GET /financialcustominfofields
Parameters
None
Permissions
One of the following roles is required to call this method:
- Financial Admin
show (financial)
Example code to call this method:
Example response:
{
"object": "custom_info_field",
"id": 16,
"name": "Favorite coin",
"input_type": "text_area",
"type": "financial",
"description": null,
"value_permissions": "default",
"sandbox": true
}
Retrieves a specific CustomInfoField object, of the financial type.
HTTP Request
GET /financialcustominfofields/(financialcustominfofield)
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:
- Financial Admin
index (organization)
Example code to call this method:
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "custom_info_field",
"id": 18,
"name": "Business membership number",
"input_type": "text_area",
"type": "organization",
"description": null,
"value_permissions": "default"
}
],
"sandbox": true
}
Retrieves all CustomInfoField objects, of the organization type.
HTTP Request
GET /organizationcustominfofields
Parameters
None
Permissions
One of the following roles is required to call this method:
- Staff
show (organization)
Example code to call this method:
Example response:
{
"object": "custom_info_field",
"id": 18,
"name": "Business membership number",
"input_type": "text_area",
"type": "organization",
"description": null,
"value_permissions": "default",
"sandbox": true
}
Retrieves a specific CustomInfoField object, of the organization type.
HTTP Request
GET /organizationcustominfofields/(organizationcustominfofield)
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:
- Staff
index (person)
Example code to call this method:
Example response:
{
"object": "list",
"count": 11,
"results": 11,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "custom_info_field",
"id": 10,
"name": "Another decimal?",
"input_type": "decimal",
"type": "person",
"description": null,
"value_permissions": "default"
}
],
"sandbox": true
}
Retrieves all CustomInfoField objects, of the person type.
HTTP Request
GET /personcustominfofields
Parameters
None
Permissions
One of the following roles is required to call this method:
- Staff
show (person)
Example code to call this method:
Example response:
{
"object": "custom_info_field",
"id": 10,
"name": "Another decimal?",
"input_type": "decimal",
"type": "person",
"description": null,
"value_permissions": "default",
"sandbox": true
}
Retrieves a specific CustomInfoField object, of the person type.
HTTP Request
GET /personcustominfofields/(personcustominfofield)
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:
- Staff
index (student)
Example code to call this method:
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "custom_info_field",
"id": 12,
"name": "Favorite school subject",
"input_type": "text_area",
"type": "student",
"description": null,
"value_permissions": "default"
}
],
"sandbox": true
}
Retrieves all CustomInfoField objects, of the student type.
HTTP Request
GET /studentcustominfofields
Parameters
None
Permissions
One of the following roles is required to call this method:
- Academic Admin
show (student)
Example code to call this method:
Example response:
{
"object": "custom_info_field",
"id": 12,
"name": "Favorite school subject",
"input_type": "text_area",
"type": "student",
"description": null,
"value_permissions": "default",
"sandbox": true
}
Retrieves a specific CustomInfoField object, of the student type.
HTTP Request
GET /studentcustominfofields/(studentcustominfofield)
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 Admin
index (term student)
Example code to call this method:
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "custom_info_field",
"id": 13,
"name": "Favorite color",
"input_type": "text_area",
"type": "term_student",
"description": null,
"value_permissions": "default"
}
],
"sandbox": true
}
Retrieves all CustomInfoField objects, of the term student type.
HTTP Request
GET /termstudentcustominfofields
Parameters
None
Permissions
One of the following roles is required to call this method:
- Academic Admin
show (term student)
Example code to call this method:
Example response:
{
"object": "custom_info_field",
"id": 13,
"name": "Favorite color",
"input_type": "text_area",
"type": "term_student",
"description": null,
"value_permissions": "default",
"sandbox": true
}
Retrieves a specific CustomInfoField object, of the term student type.
HTTP Request
GET /termstudentcustominfofields/(termstudentcustominfofield)
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 Admin
DataSlicerReport
The DataSlicerReport object
The DataSlicerReport object looks like this in JSON:
{
"object": "data_slicer_report",
"id": 30,
"name": "SAT Writing Report",
"added_at": "2019-09-25T22:38:35+00:00",
"added_by_id": 2921,
"updated_at": null,
"updated_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
name | Yes | text (255) |
added_at | No | datetime |
added_by_id | No | int |
updated_at | No | datetime |
updated_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/dataslicerreports" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "data_slicer_report",
"id": 30,
"name": "SAT Writing Report",
"added_at": "2019-09-25T22:38:35+00:00",
"added_by_id": 2921,
"updated_at": null,
"updated_by_id": null
}
],
"sandbox": true
}
Retrieves all DataSlicerReport objects.
HTTP Request
GET /dataslicerreports
Parameters
None
Permissions
One of the following roles is required to call this method:
- Academic Admin
- Academic Auditor
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/dataslicerreports/(dataslicerreport)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "data_slicer_report",
"id": 30,
"name": "SAT Writing Report",
"added_at": "2019-09-25T22:38:35+00:00",
"added_by_id": 2921,
"updated_at": null,
"updated_by_id": null,
"sandbox": true
}
Retrieves a specific DataSlicerReport object.
HTTP Request
GET /dataslicerreports/(dataslicerreport)
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 Admin
- Academic Auditor
results
curl "https://yourschool.populiweb.com/api2/dataslicerreports/(dataslicerreport)/results" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"export_format": "CSV"
}' \
Example response:
{}
Runs the specified Data Slicer report and returns the results as XLS, CSV, or JSON. Up to 10,000 results are returned. No paging.
HTTP Request
GET /dataslicerreports/(dataslicerreport)/results
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
export_format | No | text | Export Format can be JSON, CSV, or XLS |
Permissions
One of the following roles is required to call this method:
- Academic Admin
- Academic Auditor
This is a heavy call. For performance reasons, only one heavy call may be made at a time.
DeclinedReason
The DeclinedReason object
The DeclinedReason object looks like this in JSON:
{
"object": "declined_reason",
"id": 1,
"name": "Program\/Curriculum ",
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
name | Yes | text (255) |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/declinedreasons" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 7,
"results": 7,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "declined_reason",
"id": 1,
"name": "Program\/Curriculum "
}
],
"sandbox": true
}
Retrieves all DeclinedReason objects.
HTTP Request
GET /declinedreasons
Parameters
None
Permissions
One of the following roles is required to call this method:
- Admissions
- Admissions Admin
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/declinedreasons/(declinedreason)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "declined_reason",
"id": 1,
"name": "Program\/Curriculum ",
"sandbox": true
}
Retrieves a specific DeclinedReason object.
HTTP Request
GET /declinedreasons/(declinedreason)
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:
- Admissions
- Admissions Admin
Degree
The Degree object
The Degree object looks like this in JSON:
{
"object": "degree",
"id": 1,
"program_id": 1,
"degree_level_id": 1,
"department_id": 1,
"name": "Bachelor of Arts Degree in Liberal Arts and Culture",
"description": "Bachelor of Arts Degree in Liberal Arts and Culture",
"abbrv": "B.A.",
"diploma": 1,
"status": "active",
"cip_code": "24.0101",
"unit": "credits",
"distance_education": false,
"length": null,
"length_unit": "years",
"external_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
program_id | Yes | int |
degree_level_id | No | int |
department_id | Yes | int |
name | Yes | text (250) |
description | No | text |
abbrv | Yes | text (100) |
diploma | No | -- |
status | Yes | enum (construction, active, retired) |
cip_code | Yes | text (20) |
unit | Yes | enum (credits, hours) |
distance_education | Yes | bool |
length | No | int |
length_unit | No | enum (years, months, weeks) |
external_id | No | text (100) |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/degrees" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"filter": {"0":{"logic":"ALL","fields":[{"name":"level","value":1,"positive":1}]}}
}' \
Example response:
{
"object": "list",
"count": 2,
"results": 2,
"results_per_page": 200,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "degree",
"id": 1,
"program_id": 1,
"degree_level_id": 1,
"department_id": 1,
"name": "Bachelor of Arts Degree in Liberal Arts and Culture",
"description": "Bachelor of Arts Degree in Liberal Arts and Culture",
"abbrv": "B.A.",
"diploma": 1,
"status": "active",
"cip_code": "24.0101",
"unit": "credits",
"distance_education": false,
"length": null,
"length_unit": "years",
"external_id": null,
"report_data": {
"department_name": "Undergraduate",
"program_name": "Undergraduate",
"formatted_cip_code": null,
"degree_level_name": "Doctoral Degree - Professional Practice"
}
}
],
"sandbox": true
}
Retrieves all Degree objects that match given filter conditions.
HTTP Request
GET /degrees
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
- specializations
- academic_requirements
Filter Condition Parameters
These conditions can be used to narrow the results returned.
Name | Type |
---|---|
program | program |
status | enum |
department | object id |
diploma | bool |
level | base_object id |
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Academic Admin
- Registrar
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/degrees/(degree)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "degree",
"id": 1,
"program_id": 1,
"degree_level_id": 1,
"department_id": 1,
"name": "Bachelor of Arts Degree in Liberal Arts and Culture",
"description": "Bachelor of Arts Degree in Liberal Arts and Culture",
"abbrv": "B.A.",
"diploma": 1,
"status": "active",
"cip_code": "24.0101",
"unit": "credits",
"distance_education": false,
"length": null,
"length_unit": "years",
"external_id": null,
"sandbox": true
}
Retrieves a specific Degree object.
HTTP Request
GET /degrees/(degree)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- specializations
- academic_requirements
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Academic Admin
- Registrar
students
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/degrees/(degree)/students" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"filter": []
}' \
Example response:
{
"object": "list",
"count": 2,
"results": 2,
"results_per_page": 200,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "person",
"id": 16,
"first_name": "Academic",
"last_name": "Admin",
"middle_name": "",
"prefix": null,
"suffix": null,
"preferred_name": null,
"display_name": "Academic 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,
"added_at": null,
"added_by_id": null,
"updated_at": "2024-11-20T20:03:33+00:00",
"report_data": {
"person_id": 16,
"active_roles": "4,7,14",
"username": "academic.admin",
"primary_address_street": null,
"primary_address_city": null,
"primary_address_state": null,
"primary_address_country": null,
"is_alum": 0,
"primary_org_title": null,
"primary_org_name": null,
"contact_primary_email": "football@nowhere.co",
"contact_primary_phone": "333.555.6666 x 091",
"visible_student_id": "20220xx001"
},
"private_profile": false,
"is_user": true
}
],
"sandbox": true
}
HTTP Request
GET /degrees/(degree)/students
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
- specializations
- academic_requirements
Filter Condition Parameters
These conditions can be used to narrow the results returned.
Name | Type |
---|---|
degree | integer |
degree_level | integer |
last_active | date |
program | integer |
specialization | integer |
Permissions
One of the following roles is required to call this method:
- Academic Admin
- Registrar
DegreeLevel
The DegreeLevel object
The DegreeLevel object looks like this in JSON:
{
"object": "degree_level",
"id": 1,
"name": "Doctoral Degree - Professional Practice",
"graduate": 1,
"abbrv": "DOCTORAL_PROFESSIONAL",
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | No | int |
name | Yes | text (100) |
graduate | No | -- |
abbrv | No | text (50) |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/degreelevels" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 11,
"results": 11,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "degree_level",
"id": 1,
"name": "Doctoral Degree - Professional Practice",
"graduate": 1,
"abbrv": "DOCTORAL_PROFESSIONAL"
}
],
"sandbox": true
}
Retrieves all DegreeLevel objects.
HTTP Request
GET /degreelevels
Parameters
None
Permissions
One of the following roles is required to call this method:
- Staff
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/degreelevels/(degreelevel)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "degree_level",
"id": 1,
"name": "Doctoral Degree - Professional Practice",
"graduate": 1,
"abbrv": "DOCTORAL_PROFESSIONAL",
"sandbox": true
}
Retrieves a specific DegreeLevel object.
HTTP Request
GET /degreelevels/(degreelevel)
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:
- Staff
students
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/degreelevels/(degreelevel)/students" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"filter": []
}' \
Example response:
{
"object": "list",
"count": 3,
"results": 3,
"results_per_page": 200,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "person",
"id": 16,
"first_name": "Academic",
"last_name": "Admin",
"middle_name": "",
"prefix": null,
"suffix": null,
"preferred_name": null,
"display_name": "Academic 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,
"added_at": null,
"added_by_id": null,
"updated_at": "2024-11-20T20:03:35+00:00",
"report_data": {
"person_id": 16,
"active_roles": "4,7,14",
"username": "academic.admin",
"primary_address_street": null,
"primary_address_city": null,
"primary_address_state": null,
"primary_address_country": null,
"is_alum": 0,
"primary_org_title": null,
"primary_org_name": null,
"contact_primary_email": "football@nowhere.co",
"contact_primary_phone": "(333) 555-6666 x 091",
"visible_student_id": "20220xx001"
},
"private_profile": false,
"is_user": true
}
],
"sandbox": true
}
HTTP Request
GET /degreelevels/(degreelevel)/students
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. |
Filter Condition Parameters
These conditions can be used to narrow the results returned.
Name | Type |
---|---|
degree | integer |
degree_level | integer |
last_active | date |
program | integer |
specialization | integer |
Permissions
One of the following roles is required to call this method:
- Academic Admin
- Registrar
- Academic Auditor
Department
The Department object
The Department object looks like this in JSON:
{
"object": "department",
"id": 1,
"name": "Undergraduate",
"status": "active",
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
name | Yes | text (255) |
status | Yes | enum (active, deleted) |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/departments" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "department",
"id": 1,
"name": "Undergraduate",
"status": "active"
}
],
"sandbox": true
}
Retrieves all Department objects.
HTTP Request
GET /departments
Parameters
None
Permissions
One of the following roles is required to call this method:
- Academic Admin
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/departments/(department)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "department",
"id": 1,
"name": "Undergraduate",
"status": "active",
"sandbox": true
}
Retrieves a specific Department object.
HTTP Request
GET /departments/(department)
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 Admin
DisciplineType
The DisciplineType object
The DisciplineType object looks like this in JSON:
{
"object": "discipline_type",
"id": 5,
"name": "Warning",
"report_as": "warning",
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
name | Yes | text (100) |
report_as | No | enum (warning, probation, suspension, expulsion) |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/disciplinetypes" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "discipline_type",
"id": 5,
"name": "Warning",
"report_as": "warning"
}
],
"sandbox": true
}
Retrieves all DisciplineType objects.
HTTP Request
GET /disciplinetypes
Parameters
None
Permissions
One of the following roles is required to call this method:
- Academic Admin
- Discipline
- Development
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/disciplinetypes/(disciplinetype)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "discipline_type",
"id": 5,
"name": "Warning",
"report_as": "warning",
"sandbox": true
}
Retrieves a specific DisciplineType object.
HTTP Request
GET /disciplinetypes/(disciplinetype)
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 Admin
- Discipline
- Development
DonatePage
The DonatePage object
The DonatePage object looks like this in JSON:
{
"object": "donate_page",
"id": 30,
"name": "Special Page",
"title": null,
"content": null,
"fund_direction": "any",
"fund_id": 2,
"split_fund_id": null,
"split_fund_amount": null,
"campaign_id": null,
"appeal_id": null,
"amount_type": "variable",
"min_amount": 0,
"amount_choices": null,
"fixed_amount": 0,
"status": "active",
"thank_you_type": "default",
"thank_you_message": null,
"thank_you_url": null,
"send_receipt_email": true,
"enable_comment": true,
"custom_css": null,
"allow_recurring": true,
"payment_gateway_id": null,
"added_at": "2014-02-20T00:47:28+00:00",
"added_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
name | No | text (300) |
title | No | text (300) |
content | No | text |
fund_direction | Yes | enum (any, single, multi) |
fund_id | No | int |
split_fund_id | No | int |
split_fund_amount | No | decimal |
campaign_id | No | int |
appeal_id | No | int |
amount_type | Yes | enum (variable, choices, fixed, choices_variable) |
min_amount | No | decimal |
amount_choices | No | text (1000) |
fixed_amount | No | decimal |
status | Yes | enum (active, deleted) |
thank_you_type | Yes | enum (default, message, redirect) |
thank_you_message | No | text |
thank_you_url | No | text (2000) |
send_receipt_email | Yes | bool |
enable_comment | Yes | bool |
custom_css | No | text |
allow_recurring | Yes | bool |
payment_gateway_id | No | int |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/donatepages" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "donate_page",
"id": 30,
"name": "Special Page",
"title": null,
"content": null,
"fund_direction": "any",
"fund_id": 2,
"split_fund_id": null,
"split_fund_amount": null,
"campaign_id": null,
"appeal_id": null,
"amount_type": "variable",
"min_amount": 0,
"amount_choices": null,
"fixed_amount": 0,
"status": "active",
"thank_you_type": "default",
"thank_you_message": null,
"thank_you_url": null,
"send_receipt_email": true,
"enable_comment": true,
"custom_css": null,
"allow_recurring": true,
"payment_gateway_id": null,
"added_at": "2014-02-20T00:47:28+00:00",
"added_by_id": null
}
],
"sandbox": true
}
Retrieves all DonatePage objects.
HTTP Request
GET /donatepages
Parameters
None
Permissions
One of the following roles is required to call this method:
- Financial Admin
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/donatepages/(donatepage)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "donate_page",
"id": 30,
"name": "Special Page",
"title": null,
"content": null,
"fund_direction": "any",
"fund_id": 2,
"split_fund_id": null,
"split_fund_amount": null,
"campaign_id": null,
"appeal_id": null,
"amount_type": "variable",
"min_amount": 0,
"amount_choices": null,
"fixed_amount": 0,
"status": "active",
"thank_you_type": "default",
"thank_you_message": null,
"thank_you_url": null,
"send_receipt_email": true,
"enable_comment": true,
"custom_css": null,
"allow_recurring": true,
"payment_gateway_id": null,
"added_at": "2014-02-20T00:47:28+00:00",
"added_by_id": null,
"sandbox": true
}
Retrieves a specific DonatePage object.
HTTP Request
GET /donatepages/(donatepage)
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:
- Financial Admin
Donation
The Donation object
The Donation object looks like this in JSON:
{
"object": "donation",
"id": 6,
"transaction_id": 200,
"number": 43,
"canadian_donation_receipt_id": null,
"payment_method": "credit_card",
"payment_reference": null,
"online": true,
"online_payment_id": null,
"recurring": false,
"donor_id": null,
"first_name": "Bonny",
"last_name": "McMurry",
"initial_organization_name": null,
"phone_number": "444-7777",
"email_address": "bonny551@hotmail.co",
"donor_comment": null,
"staff_comment": null,
"gift_in_kind_description": null,
"acknowledged_at": null,
"acknowledged_by_id": null,
"secret": "16b97ef909e2f05dd1f16a3c2b0b8b6a",
"amount": 100,
"currency": "USD",
"exchange_rate": null,
"home_currency_amount": 100,
"donate_page_id": null,
"campaign_id": null,
"appeal_id": null,
"recurring_money_transfer_id": null,
"refunded_by_transaction_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
transaction_id | Yes | int |
number | No | int |
canadian_donation_receipt_id | No | int |
payment_method | No | enum (cash, check, credit_card, ach, money_order, gift_in_kind, other, external) |
payment_reference | No | text (300) |
online | No | -- |
online_payment_id | No | int |
recurring | No | -- |
donor_id | No | int |
first_name | No | text (100) |
last_name | No | text (100) |
initial_organization_name | No | -- |
phone_number | No | text (100) |
email_address | No | text (100) |
donor_comment | No | text |
staff_comment | No | text |
gift_in_kind_description | No | text |
acknowledged_at | No | datetime |
acknowledged_by_id | No | int |
secret | No | text (200) |
amount | Yes | decimal |
currency | No | text (3) |
exchange_rate | No | decimal |
home_currency_amount | Yes | decimal |
donate_page_id | No | int |
campaign_id | No | int |
appeal_id | No | int |
recurring_money_transfer_id | No | int |
refunded_by_transaction_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/donations" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"filter": {"0":{"logic":"ALL","fields":[{"name":"posted_date","value":{"type":"RANGE","start":"2021-01-01","end":"2022-03-17"},"positive":1},{"name":"amount","value":{"type":"RANGE","start":"10.5","end":"900.15"},"positive":1}]}}
}' \
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": 200,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "donation",
"id": 7,
"transaction_id": 13,
"number": 44,
"canadian_donation_receipt_id": null,
"payment_method": "credit_card",
"payment_reference": null,
"online": true,
"online_payment_id": null,
"recurring": false,
"donor_id": null,
"first_name": "Bobby",
"last_name": "Hilton",
"initial_organization_name": null,
"phone_number": "444-7777",
"email_address": "bobby662@yahoo.co",
"donor_comment": null,
"staff_comment": null,
"gift_in_kind_description": null,
"acknowledged_at": null,
"acknowledged_by_id": null,
"secret": "16b97ef909e2f02dd1f16a3c2b0b8b6a",
"amount": 100,
"currency": "USD",
"exchange_rate": null,
"home_currency_amount": 100,
"donate_page_id": null,
"campaign_id": null,
"appeal_id": null,
"recurring_money_transfer_id": 2,
"refunded_by_transaction_id": null,
"report_data": {
"posted_date": "2015-03-10",
"posted_year": 2015,
"added_at": "2015-03-10 19:33:11",
"fund_names": "Building Fund",
"fund_ids": "3",
"fund_breakdown": "7:3:100.00",
"acknowledged": null,
"donor_name": "Bobby Hilton",
"person_id": null,
"person_firstname": null,
"person_lastname": null,
"person_deceased": 0,
"contact_organization_id": null,
"contact_org_name": null,
"donor_model_type": null,
"donor_model_id": null,
"has_donor_model_id": 0,
"assigned_to_id": null,
"donor_primary_address_id": null,
"donor_street": null,
"donor_city": null,
"donor_state": null,
"donor_zip": null,
"donor_country": null,
"num_soft_credits": 0,
"export_helper_donation_id": 7,
"row_id": 7
}
}
],
"sandbox": true
}
Retrieves all Donation objects that match given filter conditions.
HTTP Request
GET /donations
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
- donor
- funds
- soft_credits
Filter Condition Parameters
These conditions can be used to narrow the results returned.
Name | Type |
---|---|
posted_date | date |
tax_year | integer |
donation_number | integer |
donor_name | text |
address_city | text |
address_state | state |
address_zip | text |
address_country | country |
donor_type | choice |
acknowledged | bool |
online_donation | bool |
online_donation_page | object id |
recurring_donation | bool |
campaign | object id |
appeal | object id |
fund | object id |
linked_to_donor | bool |
num_soft_credits | integer |
payment_method | enum |
amount | decimal |
donor_representative | object id |
donor_is_deceased | bool |
refunded | bool |
tag | tag |
donor_comment | text |
staff_comment | text |
custom_field | custom |
Permissions
One of the following roles is required to call this method:
- Financial Auditor
- Financial Admin
- Donations
create
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/donations" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"payment_method": "credit_card",
"amount": 40,
"funds": "{\"3\":40}",
"deposit_into_account_id": "56",
"posted_date": "2023-12-31",
"person_id": "344",
"organization_id": "48"
}' \
Example response:
{
"object": "donation",
"id": 21,
"transaction_id": 101,
"number": 1,
"canadian_donation_receipt_id": null,
"payment_method": "credit_card",
"payment_reference": null,
"online": false,
"online_payment_id": null,
"recurring": false,
"donor_id": null,
"first_name": null,
"last_name": null,
"initial_organization_name": null,
"phone_number": null,
"email_address": null,
"donor_comment": null,
"staff_comment": null,
"gift_in_kind_description": null,
"acknowledged_at": null,
"acknowledged_by_id": null,
"secret": "166997c399e2c0aca7d2f3af960a691d",
"amount": 40,
"currency": "USD",
"exchange_rate": null,
"home_currency_amount": 40,
"donate_page_id": null,
"campaign_id": null,
"appeal_id": null,
"recurring_money_transfer_id": null,
"refunded_by_transaction_id": null,
"donor": null,
"funds": [
{
"object": "donation_fund",
"id": 8,
"donation_id": 21,
"fund_id": 3,
"amount": 40,
"home_currency_amount": 40
}
],
"sandbox": true
}
Creates a new Donation object.
HTTP Request
POST /donations
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
payment_method | Yes | enum (cash, check, credit_card, ach, money_order, gift_in_kind, other, external) | |
amount | Yes | decimal | |
funds | Yes | collection of fund_ids and amounts | |
deposit_into_account_id | Yes | int | |
org_name | No | text (100) | |
campaign_id | No | int | |
appeal_id | No | int | |
staff_comment | No | text | |
gift_in_kind_description | No | text | |
payment_reference | No | text (300) | |
posted_date | No | date | |
currency | No | text (3) | |
exchange_rate | No | decimal | |
person_id | No | int | |
organization_id | No | int |
Permissions
One of the following roles is required to call this method:
- Financial Admin
- Donations
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/donations/(donation)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "donation",
"id": 6,
"transaction_id": 200,
"number": 43,
"canadian_donation_receipt_id": null,
"payment_method": "credit_card",
"payment_reference": null,
"online": true,
"online_payment_id": null,
"recurring": false,
"donor_id": null,
"first_name": "Bonny",
"last_name": "McMurry",
"initial_organization_name": null,
"phone_number": "444-7777",
"email_address": "bonny551@hotmail.co",
"donor_comment": null,
"staff_comment": null,
"gift_in_kind_description": null,
"acknowledged_at": null,
"acknowledged_by_id": null,
"secret": "16b97ef909e2f05dd1f16a3c2b0b8b6a",
"amount": 100,
"currency": "USD",
"exchange_rate": null,
"home_currency_amount": 100,
"donate_page_id": null,
"campaign_id": null,
"appeal_id": null,
"recurring_money_transfer_id": null,
"refunded_by_transaction_id": null,
"sandbox": true
}
Retrieves a specific Donation object.
HTTP Request
GET /donations/(donation)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- donor
- funds
- soft_credits
Permissions
One of the following roles is required to call this method:
- Financial Auditor
- Financial Admin
- Donations
update
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/donations/(donation)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X PUT
Example response:
{
"object": "donation",
"id": 6,
"transaction_id": 200,
"number": 43,
"canadian_donation_receipt_id": null,
"payment_method": "credit_card",
"payment_reference": null,
"online": true,
"online_payment_id": null,
"recurring": false,
"donor_id": null,
"first_name": "Bonny",
"last_name": "McMurry",
"initial_organization_name": null,
"phone_number": "444-7777",
"email_address": "bonny551@hotmail.co",
"donor_comment": null,
"staff_comment": null,
"gift_in_kind_description": null,
"acknowledged_at": null,
"acknowledged_by_id": null,
"secret": "16b97ef909e2f05dd1f16a3c2b0b8b6a",
"amount": 100,
"currency": "USD",
"exchange_rate": null,
"home_currency_amount": 100,
"donate_page_id": null,
"campaign_id": null,
"appeal_id": null,
"recurring_money_transfer_id": null,
"refunded_by_transaction_id": null,
"sandbox": true
}
Updates an existing Donation object.
HTTP Request
PUT /donations/(donation)
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
campaign_id | No | int | |
appeal_id | No | int | |
staff_comment | No | text | |
acknowledged_at | No | datetime | |
acknowledged_by | No | int |
Permissions
One of the following roles is required to call this method:
- Financial Admin
- Donations
link_to_owner
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/donations/(donation)/link_to_owner" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"owner_type": "person",
"owner_id": 11
}' \
Example response:
{
"object": "donation",
"id": 6,
"transaction_id": 200,
"number": 43,
"canadian_donation_receipt_id": null,
"payment_method": "credit_card",
"payment_reference": null,
"online": true,
"online_payment_id": null,
"recurring": false,
"donor_id": null,
"first_name": "Bonny",
"last_name": "McMurry",
"initial_organization_name": null,
"phone_number": "444-7777",
"email_address": "bonny551@hotmail.co",
"donor_comment": null,
"staff_comment": null,
"gift_in_kind_description": null,
"acknowledged_at": null,
"acknowledged_by_id": null,
"secret": "16b97ef909e2f05dd1f16a3c2b0b8b6a",
"amount": 100,
"currency": "USD",
"exchange_rate": null,
"home_currency_amount": 100,
"donate_page_id": null,
"campaign_id": null,
"appeal_id": null,
"recurring_money_transfer_id": null,
"refunded_by_transaction_id": null,
"donor": null,
"soft_credits": [],
"sandbox": true
}
HTTP Request
GET /donations/(donation)/link_to_owner
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
owner_type | Yes | enum | person OR contact_org |
owner_id | Yes | int | |
soft_credit | No | bool |
Permissions
One of the following roles is required to call this method:
- Financial Admin
- Donations
unlink_donor
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/donations/(donation)/unlink_donor" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "donation",
"id": 6,
"transaction_id": 200,
"number": 43,
"canadian_donation_receipt_id": null,
"payment_method": "credit_card",
"payment_reference": null,
"online": true,
"online_payment_id": null,
"recurring": false,
"donor_id": null,
"first_name": "Bonny",
"last_name": "McMurry",
"initial_organization_name": null,
"phone_number": "444-7777",
"email_address": "bonny551@hotmail.co",
"donor_comment": null,
"staff_comment": null,
"gift_in_kind_description": null,
"acknowledged_at": null,
"acknowledged_by_id": null,
"secret": "16b97ef909e2f05dd1f16a3c2b0b8b6a",
"amount": 100,
"currency": "USD",
"exchange_rate": null,
"home_currency_amount": 100,
"donate_page_id": null,
"campaign_id": null,
"appeal_id": null,
"recurring_money_transfer_id": null,
"refunded_by_transaction_id": null,
"sandbox": true
}
HTTP Request
GET /donations/(donation)/unlink_donor
Parameters
None
Permissions
One of the following roles is required to call this method:
- Financial Admin
- Donations
unlink_soft_credit
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/donations/(donation)/unlink_soft_credit" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"donor_id": 14
}' \
Example response:
{
"object": "donation",
"id": 6,
"transaction_id": 200,
"number": 43,
"canadian_donation_receipt_id": null,
"payment_method": "credit_card",
"payment_reference": null,
"online": true,
"online_payment_id": null,
"recurring": false,
"donor_id": null,
"first_name": "Bonny",
"last_name": "McMurry",
"initial_organization_name": null,
"phone_number": "444-7777",
"email_address": "bonny551@hotmail.co",
"donor_comment": null,
"staff_comment": null,
"gift_in_kind_description": null,
"acknowledged_at": null,
"acknowledged_by_id": null,
"secret": "16b97ef909e2f05dd1f16a3c2b0b8b6a",
"amount": 100,
"currency": "USD",
"exchange_rate": null,
"home_currency_amount": 100,
"donate_page_id": null,
"campaign_id": null,
"appeal_id": null,
"recurring_money_transfer_id": null,
"refunded_by_transaction_id": null,
"soft_credits": [],
"sandbox": true
}
HTTP Request
GET /donations/(donation)/unlink_soft_credit
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
donor_id | Yes | int |
Permissions
One of the following roles is required to call this method:
- Financial Admin
- Donations
recurring
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/donations/recurring" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"filter": {"0":{"logic":"ALL","fields":[{"name":"amount","value":{"type":"RANGE","start":"10.5","end":"900.15"},"positive":1}]}}
}' \
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "recurring_money_transfer",
"id": 2,
"type": "donation",
"donor_id": 1,
"student_id": null,
"payer_type": null,
"payer_id": null,
"payment_plan_student_id": null,
"treat_as_aid": false,
"pay_beyond_balance": false,
"payment_method": "credit_card",
"gateway_token_provider": "stripe",
"payment_gateway_id": null,
"gateway_customer_token": "cus_MLxeHuvTzFyb2N",
"gateway_source_token": "card_1Ld0FNGz1v34x3yFuC2B0L72",
"start_date": "2022-08-31",
"end_date": null,
"last_charged_on": "2022-09-16",
"last_attempt_at": null,
"last_attempt_by_id": null,
"interval": "1_month",
"day": true,
"max_additional_times": null,
"total_times_charged": 2,
"amount": 90,
"currency": "USD",
"secret": "bfb9d17fa8a24e02f864b12f5a732177",
"first_name": "Donny",
"last_name": "McDonor",
"org_name": null,
"email_address": "donnyd@yahoo.co",
"phone_number": "123-123-1234",
"street": "123 Street",
"city": "Moscow",
"state": "ID",
"postal": "83843",
"country": "US",
"last_digits": "4242",
"card_bin": null,
"card_is_international": false,
"bank_name": null,
"donation_campaign_id": 1,
"donation_appeal_id": null,
"donation_donate_page_id": null,
"donation_fund_id": 3,
"donation_split_fund_id": null,
"donation_split_fund_amount": 0,
"donation_staff_comment": "virtual terminal recurring test",
"status": "active",
"status_date": "2022-09-16",
"problem_message": null,
"cancel_type": null,
"times_left": null,
"fund_names": "Building Fund",
"donate_page_name": null,
"fund_ids": "|3|",
"donor_name": "Donny McDonor",
"donor_model_type": null,
"donor_model_id": null,
"donor_street": null,
"donor_city": null,
"donor_state": null,
"donor_zip": null,
"donor_country": null,
"campaign_name_cached": null,
"appeal_name_cached": null,
"assigned_to_id": null,
"donor_representative": null,
"person_first_name": null,
"person_last_name": null,
"contact_org_name": null,
"added_at": "2022-08-31T23:23:05+00:00",
"added_by_id": 10,
"updated_at": "2022-09-16T21:10:53+00:00",
"updated_by_id": 10
}
],
"sandbox": true
}
HTTP Request
GET /donations/recurring
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. |
Filter Condition Parameters
These conditions can be used to narrow the results returned.
Name | Type |
---|---|
start_date | date |
end_date | date |
scheduled_to_end | choice |
last_charged_on | date |
day | integer |
donor_name | text |
donor_type | choice |
online_donation_page | object id |
campaign | object id |
appeal | object id |
fund | object id |
donor_representative | object id |
linked_to_donor | bool |
payment_method | enum |
times_charged | integer |
times_left | integer |
amount | decimal |
status | enum |
tag | tag |
custom_field | custom |
Permissions
One of the following roles is required to call this method:
- Financial Admin
- Donations
- Financial Auditor
Donor
The Donor object
The Donor object looks like this in JSON:
{
"object": "donor",
"id": 14,
"model_type": "person",
"model_id": 1747,
"assigned_to_id": null,
"status": "active",
"has_donations": true,
"import_id": null,
"added_at": "2020-02-11T17:29:44+00:00",
"added_by_id": 1257,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
model_type | No | enum (person, contact_org) |
model_id | No | int |
assigned_to_id | No | int |
status | Yes | enum (none, potential, active, inactive) |
has_donations | Yes | bool |
import_id | No | int |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/donors" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"filter": {"0":{"logic":"ALL","fields":[{"name":"num_donations","value":{"type":"RANGE","start":"1","end":"9"},"positive":1}]}}
}' \
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": 200,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "donor",
"id": 14,
"model_type": "person",
"model_id": 1747,
"assigned_to_id": null,
"status": "active",
"has_donations": true,
"import_id": null,
"added_at": "2020-02-11T17:29:44+00:00",
"added_by_id": 1257,
"report_data": {
"name": null,
"person_id": null,
"lastname": null,
"firstname": null,
"person_deceased": 0,
"contact_organization_id": null,
"org_name": null,
"model_status": null,
"max_amount": null,
"most_recent_donation_date": null,
"most_recent_donation_amount": null,
"num_donations": 0,
"num_donations2": 0,
"num_soft_credits": 0,
"amount": "0.00",
"amount2": "0.00",
"soft_credit_amount": "0.00",
"amount_including_soft_credits": "0.00",
"campaign_ids": null,
"appeal_ids": null,
"fund_ids": null,
"donor_primary_address_id": null,
"donor_street": null,
"donor_city": null,
"donor_state": null,
"donor_zip": null,
"donor_country": null,
"email": null,
"phone": null,
"assigned_representative": null,
"row_id": 14
}
}
],
"sandbox": true
}
Retrieves all Donor objects that match given filter conditions.
HTTP Request
GET /donors
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. |
Filter Condition Parameters
These conditions can be used to narrow the results returned.
Name | Type |
---|---|
donation_posted_date | date |
tax_year | integer |
name | text |
address_city | text |
address_state | state |
address_zip | text |
address_country | country |
text | |
phone | text |
model_type | choice |
status | enum |
is_deceased | bool |
assigned_representative | object id |
has_ever_donated | bool |
largest_donation | decimal |
num_donations | integer |
num_soft_credits | integer |
has_donation_from_campaign | object id |
has_donation_from_appeal | object id |
has_donation_to_fund | object id |
donation_amount | decimal |
soft_credit_amount | decimal |
donation_amount_including_soft_credits | decimal |
donation_posted_date_set_2 | date |
num_donations_set_2 | integer |
amount_set_2 | decimal |
set_amount_comparison | donors_amounts_comparison |
tag | tag |
custom_field | custom |
Permissions
One of the following roles is required to call this method:
- Financial Auditor
- Financial Admin
- Donations
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/donors/(donor)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "donor",
"id": 14,
"model_type": "person",
"model_id": 1747,
"assigned_to_id": null,
"status": "active",
"has_donations": true,
"import_id": null,
"added_at": "2020-02-11T17:29:44+00:00",
"added_by_id": 1257,
"sandbox": true
}
Retrieves a specific Donor object.
HTTP Request
GET /donors/(donor)
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:
- Financial Auditor
- Financial Admin
- Donations
EducationLevel
The EducationLevel object
The EducationLevel object looks like this in JSON:
{
"object": "education_level",
"id": 1,
"name": "Less Than 9th Grade",
"abbrv": "9TH",
"order_id": 1,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
name | Yes | text (100) |
abbrv | Yes | char |
order_id | Yes | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/educationlevels" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 8,
"results": 8,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "education_level",
"id": 1,
"name": "Less Than 9th Grade",
"abbrv": "9TH",
"order_id": 1
}
],
"sandbox": true
}
Retrieves all EducationLevel objects.
HTTP Request
GET /educationlevels
Parameters
None
Permissions
Any role may call this method.
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/educationlevels/(educationlevel)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "education_level",
"id": 1,
"name": "Less Than 9th Grade",
"abbrv": "9TH",
"order_id": 1,
"sandbox": true
}
Retrieves a specific EducationLevel object.
HTTP Request
GET /educationlevels/(educationlevel)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Permissions
Any role may call this method.
EmailAddress
The EmailAddress object
The EmailAddress object looks like this in JSON:
{
"object": "email_address",
"id": 1,
"email": "testaddress@nowhere.com",
"owner_type": "person",
"owner_id": 1,
"type": "home",
"primary": false,
"old": false,
"system": false,
"public": true,
"synced_from": null,
"delivery_problem": null,
"delivery_problem_at": null,
"delivery_problem_info": null,
"verified_at": null,
"unsubscribed_at": null,
"import_id": null,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
Yes | text (255) | |
owner_type | Yes | enum (person, organization, inquiry, application) |
owner_id | Yes | int |
type | Yes | enum (home, work, other, school) |
primary | Yes | bool |
old | Yes | bool |
system | Yes | bool |
public | Yes | bool |
synced_from | Yes | int |
delivery_problem | No | enum (bounce, spam_report) |
delivery_problem_at | No | datetime |
delivery_problem_info | No | text (500) |
verified_at | No | datetime |
unsubscribed_at | No | -- |
import_id | No | int |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
resubscribe
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/emailaddresses/resubscribe" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"email": "coreycoors@yahoo.com"
}' \
Example response:
{
"object": "email",
"email": "coreycoors@yahoo.com",
"action": "resubscribed"
}
HTTP Request
POST /emailaddresses/resubscribe
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
Yes | text (255) |
Permissions
One of the following roles is required to call this method:
- Staff
unsubscribe
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/emailaddresses/unsubscribe" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"email": "billyblanton@yahoo.com"
}' \
Example response:
{
"object": "email",
"email": "billyblanton@yahoo.com",
"action": "unsubscribed"
}
HTTP Request
POST /emailaddresses/unsubscribe
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
Yes | text (255) |
Permissions
One of the following roles is required to call this method:
- Staff
index (organization)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/organizations/(organization)/emailaddresses" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "email_address",
"id": 6,
"email": "supercool@nowhere.co",
"owner_type": "organization",
"owner_id": 1,
"type": "work",
"primary": true,
"old": false,
"system": false,
"public": true,
"synced_from": null,
"delivery_problem": null,
"delivery_problem_at": null,
"delivery_problem_info": null,
"verified_at": null,
"unsubscribed_at": null,
"import_id": null,
"added_at": null,
"added_by_id": null
}
],
"sandbox": true
}
Retrieves all EmailAddress objects tied to a specific Organization.
HTTP Request
GET /organizations/(organization)/emailaddresses
Parameters
None
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Financial Auditor
- Staff
create (organization)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/organizations/(organization)/emailaddresses" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"email": "bsmith22@somewhere.net",
"type": "work"
}' \
Example response:
{
"object": "email_address",
"id": 31,
"email": "bsmith22@somewhere.net",
"owner_type": "organization",
"owner_id": 1,
"type": "work",
"primary": false,
"old": false,
"system": false,
"public": false,
"synced_from": null,
"delivery_problem": null,
"delivery_problem_at": null,
"delivery_problem_info": null,
"verified_at": null,
"unsubscribed_at": null,
"import_id": null,
"added_at": "2024-11-20T20:03:34+00:00",
"added_by_id": 22,
"sandbox": true
}
Creates a new EmailAddress object.
HTTP Request
POST /organizations/(organization)/emailaddresses
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
Yes | text (255) | ||
type | Yes | enum (home, work, other, school) |
Permissions
One of the following roles is required to call this method:
- Staff
show (organization)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/organizations/(organization)/emailaddresses/(emailaddress)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "email_address",
"id": 6,
"email": "supercool@nowhere.co",
"owner_type": "organization",
"owner_id": 1,
"type": "work",
"primary": true,
"old": false,
"system": false,
"public": true,
"synced_from": null,
"delivery_problem": null,
"delivery_problem_at": null,
"delivery_problem_info": null,
"verified_at": null,
"unsubscribed_at": null,
"import_id": null,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Retrieves a specific EmailAddress object.
HTTP Request
GET /organizations/(organization)/emailaddresses/(emailaddress)
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:
- Staff
update (organization)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/organizations/(organization)/emailaddresses/(emailaddress)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X PUT
Example response:
{
"object": "email_address",
"id": 6,
"email": "supercool@nowhere.co",
"owner_type": "organization",
"owner_id": 1,
"type": "work",
"primary": true,
"old": false,
"system": false,
"public": true,
"synced_from": null,
"delivery_problem": null,
"delivery_problem_at": null,
"delivery_problem_info": null,
"verified_at": null,
"unsubscribed_at": null,
"import_id": null,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Updates an existing EmailAddress object.
HTTP Request
PUT /organizations/(organization)/emailaddresses/(emailaddress)
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
No | text (255) | ||
type | No | enum (home, work, other, school) | |
is_primary | No | bool | |
old | No | bool | |
public | No | bool |
Permissions
One of the following roles is required to call this method:
- Staff
delete (organization)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/organizations/(organization)/emailaddresses/(emailaddress)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "email_address",
"id": 6,
"deleted": true
}
Deletes an existing EmailAddress object.
HTTP Request
DELETE /organizations/(organization)/emailaddresses/(emailaddress)
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:
- Staff
index (person)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/emailaddresses" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "email_address",
"id": 17,
"email": "icecream@nowhere.co",
"owner_type": "person",
"owner_id": 12,
"type": "home",
"primary": true,
"old": false,
"system": false,
"public": true,
"synced_from": null,
"delivery_problem": null,
"delivery_problem_at": null,
"delivery_problem_info": null,
"verified_at": null,
"unsubscribed_at": null,
"import_id": null,
"added_at": null,
"added_by_id": null
}
],
"sandbox": true
}
Retrieves all EmailAddress objects tied to a specific Person.
HTTP Request
GET /people/(person)/emailaddresses
Parameters
None
Permissions
One of the following roles is required to call this method:
- Staff
create (person)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/emailaddresses" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"email": "memelord19@hotmail.com",
"type": "home"
}' \
Example response:
{
"object": "email_address",
"id": 32,
"email": "memelord19@hotmail.com",
"owner_type": "person",
"owner_id": 12,
"type": "home",
"primary": false,
"old": false,
"system": false,
"public": false,
"synced_from": null,
"delivery_problem": null,
"delivery_problem_at": null,
"delivery_problem_info": null,
"verified_at": null,
"unsubscribed_at": null,
"import_id": null,
"added_at": "2024-11-20T20:03:35+00:00",
"added_by_id": 22,
"sandbox": true
}
Creates a new EmailAddress object.
HTTP Request
POST /people/(person)/emailaddresses
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
Yes | text (255) | ||
type | Yes | enum (home, work, other, school) |
Permissions
One of the following roles is required to call this method:
- Staff
show (person)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/emailaddresses/(emailaddress)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "email_address",
"id": 16,
"email": "football@nowhere.co",
"owner_type": "person",
"owner_id": 16,
"type": "home",
"primary": true,
"old": false,
"system": false,
"public": true,
"synced_from": null,
"delivery_problem": null,
"delivery_problem_at": null,
"delivery_problem_info": null,
"verified_at": null,
"unsubscribed_at": null,
"import_id": null,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Retrieves a specific EmailAddress object.
HTTP Request
GET /people/(person)/emailaddresses/(emailaddress)
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:
- Staff
update (person)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/emailaddresses/(emailaddress)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X PUT
Example response:
{
"object": "email_address",
"id": 16,
"email": "football@nowhere.co",
"owner_type": "person",
"owner_id": 16,
"type": "home",
"primary": true,
"old": false,
"system": false,
"public": true,
"synced_from": null,
"delivery_problem": null,
"delivery_problem_at": null,
"delivery_problem_info": null,
"verified_at": null,
"unsubscribed_at": null,
"import_id": null,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Updates an existing EmailAddress object.
HTTP Request
PUT /people/(person)/emailaddresses/(emailaddress)
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
No | text (255) | ||
type | No | enum (home, work, other, school) | |
is_primary | No | bool | |
old | No | bool | |
public | No | bool |
Permissions
One of the following roles is required to call this method:
- Staff
delete (person)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/emailaddresses/(emailaddress)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "email_address",
"id": 16,
"deleted": true
}
Deletes an existing EmailAddress object.
HTTP Request
DELETE /people/(person)/emailaddresses/(emailaddress)
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:
- Staff
EmailTemplate
The EmailTemplate object
The EmailTemplate object looks like this in JSON:
{
"object": "email_template",
"id": 7,
"modified_by_id": 1,
"name": "Overdue Invoices",
"body": "Dear {!RECIPIENT_FIRSTNAME!},<br \/><br \/>\nYou have overdue invoices. Please log in to Populi to view your invoiced charges and pay them now.",
"reply_to": null,
"cc": null,
"bcc": null,
"subject": "Overdue Invoices",
"added_at": "2009-01-14T23:12:01+00:00",
"added_by_id": 1,
"updated_at": "2020-04-21T00:37:40+00:00",
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
modified_by_id | No | int |
name | No | text |
body | Yes | text |
reply_to | Yes | text |
cc | No | text |
bcc | No | text |
subject | Yes | text |
added_at | Yes | datetime |
added_by_id | No | int |
updated_at | No | -- |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/emailtemplates" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "email_template",
"id": 7,
"modified_by_id": 1,
"name": "Overdue Invoices",
"body": "Dear {!RECIPIENT_FIRSTNAME!},<br \/><br \/>\nYou have overdue invoices. Please log in to Populi to view your invoiced charges and pay them now.",
"reply_to": null,
"cc": null,
"bcc": null,
"subject": "Overdue Invoices",
"added_at": "2009-01-14T23:12:01+00:00",
"added_by_id": 1,
"updated_at": "2020-04-21T00:37:40+00:00"
}
],
"sandbox": true
}
Retrieves all EmailTemplate objects.
HTTP Request
GET /emailtemplates
Parameters
None
Permissions
One of the following roles is required to call this method:
- Staff
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/emailtemplates/(emailtemplate)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "email_template",
"id": 7,
"modified_by_id": 1,
"name": "Overdue Invoices",
"body": "Dear {!RECIPIENT_FIRSTNAME!},<br \/><br \/>\nYou have overdue invoices. Please log in to Populi to view your invoiced charges and pay them now.",
"reply_to": null,
"cc": null,
"bcc": null,
"subject": "Overdue Invoices",
"files": [],
"added_at": "2009-01-14T23:12:01+00:00",
"added_by_id": 1,
"updated_at": "2020-04-21T00:37:40+00:00",
"sandbox": true
}
Retrieves a specific EmailTemplate object.
HTTP Request
GET /emailtemplates/(emailtemplate)
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:
- Staff
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 | -- |
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
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": "2024-11-20T20:03:33+00:00",
"display_status": "Enrolled"
}
],
"sandbox": true
}
Retrieves all Enrollment objects tied to a specific Courseoffering.
HTTP Request
GET /courseofferings/(courseoffering)/students
Parameters
None
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
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": "2024-11-20T20:03:33+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
}' \
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": "2024-11-20T12:03:33+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
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
}' \
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": "2024-11-20T12:03:37+00:00",
"delivery_method_id": null,
"automatically_removed_at": null,
"automatically_removed_from": null,
"added_at": null,
"added_by_id": null,
"updated_at": "2024-11-20T12:03:37+00:00",
"display_status": "Enrolled",
"sandbox": true
}
HTTP Request
GET /courseofferings/(courseoffering)/students/(enrollment)/finalize
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
finalize | Yes | To unfinalize an enrollment, set this parameter to false. |
Permissions
One of the following roles is required to call this method:
- Academic Admin
- Registrar
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}]}}
}' \
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": "Academic",
"last_name": "Admin",
"middle_name": "",
"prefix": null,
"suffix": null,
"preferred_name": null,
"display_name": "Academic 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,
"added_at": null,
"added_by_id": null,
"updated_at": "2024-11-20T20:03:35+00:00",
"report_data": {
"student_person_id": 16,
"student_name": "Academic 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",
"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",
"course_campus_id": null,
"academic_term_end_date": "2008-05-15",
"student_first_name": "Academic",
"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 |
---|---|
student | search |
program | program |
academic_term | academic_term |
transcript_term | academic_term |
billing_term | academic_term |
course | search |
status | course_student_status |
include_dropped_students | bool |
include_deleted_students | bool |
include_waitlisted_students | bool |
grade | decimal |
letter | text |
added_at | datetime |
updated_at | datetime |
academic_year | academic_year |
catalog_course | search |
course_department | object id |
course_section | alphanumeric |
course_delivery_method | object id |
course_affects_standing | bool |
course_faculty | faculty |
course_campus | campus |
has_active_student_role | has_active_student_role |
students_campus | campus |
standing | academicstanding |
degree_seeking | bool |
degree_level | choice |
degree | degree |
specialization | specialization |
first_time | bool |
full_time | bool |
finalized | bool |
finalized_at | datetime |
enrolled_by | search |
enrollment_date | date |
status_date | date |
term_start_date | date |
term_end_date | date |
course_start_date | date |
course_end_date | date |
credits | decimal |
hours | decimal |
pass_fail | bool |
final_attendance | decimal |
last_attendance | datetime |
course_has_been_retaken | bool |
advisor | advisor |
automatically_removed_at | datetime |
automatically_removed_from | enum |
age | integer |
gender | gender |
race_ethnicity | base_object id |
tag | tag |
custom_field | custom |
pay_period_start_date | date |
pay_period_end_date | date |
Permissions
One of the following roles is required to call this method:
- Academic Admin
- Registrar
- Academic Auditor
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
}' \
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
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": "2024-11-20T20:03:33+00:00",
"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
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": "2024-11-20T20:03:33+00:00",
"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
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
EnrollmentAgreement
The EnrollmentAgreement object
The EnrollmentAgreement object looks like this in JSON:
{
"object": "enrollment_agreement",
"id": 1,
"student_id": 1,
"academic_term_id": 1,
"print_layout_id": 6,
"signed": null,
"file_id": null,
"source": "uploaded_manually",
"amount": 1456.5,
"user_ip": null,
"status": "signed",
"status_at": "2020-05-06T23:45:33+00:00",
"notify_student": true,
"added_at": "2020-05-06T23:45:33+00:00",
"added_by_id": 1,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
student_id | Yes | int |
academic_term_id | Yes | int |
print_layout_id | No | int |
signed | Yes | int |
file_id | No | int |
source | Yes | enum (uploaded_manually, generated_manually, generated_in_bulk, generated_automatically, signed_during_registration, signed_manually, temporary) |
amount | No | decimal |
user_ip | No | text (75) |
status | Yes | enum (pending, generating, generated, signing, signed, error, deleted) |
status_at | No | datetime |
notify_student | Yes | bool |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/enrollmentagreements" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"filter": {"0":{"logic":"ALL","fields":[{"name":"academic_term","value":1,"positive":1}]}}
}' \
Example response:
{
"object": "list",
"count": 0,
"results": 0,
"results_per_page": 200,
"pages": 0,
"page": 0,
"offset": 0,
"has_more": false,
"data": [],
"sandbox": true
}
Retrieves all EnrollmentAgreement objects that match given filter conditions.
HTTP Request
GET /enrollmentagreements
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. |
Filter Condition Parameters
These conditions can be used to narrow the results returned.
Name | Type |
---|---|
student | text |
academic_term | academic_term |
added_on | datetime |
source | choice |
amount | decimal |
signed | bool |
tag | tag |
custom_field | custom |
Permissions
One of the following roles is required to call this method:
- Financial Auditor
- Financial Admin
- Student Billing
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/enrollmentagreements/(enrollmentagreement)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "enrollment_agreement",
"id": 1,
"student_id": 1,
"academic_term_id": 1,
"print_layout_id": 6,
"signed": null,
"file_id": null,
"source": "uploaded_manually",
"amount": 1456.5,
"user_ip": null,
"status": "signed",
"status_at": "2020-05-06T23:45:33+00:00",
"notify_student": true,
"added_at": "2020-05-06T23:45:33+00:00",
"added_by_id": 1,
"sandbox": true
}
Retrieves a specific EnrollmentAgreement object.
HTTP Request
GET /enrollmentagreements/(enrollmentagreement)
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:
- Financial Auditor
- Financial Admin
- Student Billing
ExitReason
The ExitReason object
The ExitReason object looks like this in JSON:
{
"object": "exit_reason",
"id": 7,
"name": "Medical Leave",
"retention": false,
"abbrv": "MEDICAL",
"report_as": null,
"retired_by_id": null,
"retired_at": null,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
name | Yes | text (256) |
retention | Yes | bool |
abbrv | No | text (45) |
report_as | No | int |
retired_by_id | No | int |
retired_at | No | datetime |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/exitreasons" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "exit_reason",
"id": 7,
"name": "Medical Leave",
"retention": false,
"abbrv": "MEDICAL",
"report_as": null,
"retired_by_id": null,
"retired_at": null,
"added_at": null,
"added_by_id": null
}
],
"sandbox": true
}
Retrieves all ExitReason objects.
HTTP Request
GET /exitreasons
Parameters
None
Permissions
One of the following roles is required to call this method:
- Academic Admin
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/exitreasons/(exitreason)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "exit_reason",
"id": 7,
"name": "Medical Leave",
"retention": false,
"abbrv": "MEDICAL",
"report_as": null,
"retired_by_id": null,
"retired_at": null,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Retrieves a specific ExitReason object.
HTTP Request
GET /exitreasons/(exitreason)
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 Admin
Fee
The Fee object
The Fee object looks like this in JSON:
{
"object": "fee",
"id": 10,
"name": "Important Textbook",
"description": null,
"type": "flat",
"amount": 1000,
"max_amount": 20,
"allow_zero": false,
"refundable": false,
"condition": "and",
"finaid_applies": true,
"status": "active",
"external_accountid": 0,
"account_id": 1,
"fee_class": "fee",
"report_on_1098t": true,
"report_on_t2202a": true,
"campus_life_permission": false,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
name | Yes | text (50) |
description | Yes | text (500) |
type | Yes | enum (flat, per_credit, per_hour, per_course, per_clinical_hour) |
amount | Yes | decimal |
max_amount | Yes | decimal |
allow_zero | Yes | bool |
refundable | Yes | bool |
condition | Yes | enum (and, or) |
finaid_applies | Yes | bool |
status | Yes | enum (construction, active, retired, deleted) |
external_accountid | Yes | int |
account_id | Yes | int |
fee_class | Yes | enum (fee, deposit, payment_plan) |
report_on_1098t | Yes | bool |
report_on_t2202a | Yes | bool |
campus_life_permission | Yes | bool |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/fees" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 2,
"results": 2,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "fee",
"id": 10,
"name": "Important Textbook",
"description": null,
"type": "flat",
"amount": 1000,
"max_amount": 20,
"allow_zero": false,
"refundable": false,
"condition": "and",
"finaid_applies": true,
"status": "active",
"external_accountid": 0,
"account_id": 1,
"fee_class": "fee",
"report_on_1098t": true,
"report_on_t2202a": true,
"campus_life_permission": false,
"added_at": null,
"added_by_id": null
}
],
"sandbox": true
}
Retrieves all Fee objects.
HTTP Request
GET /fees
Parameters
None
Permissions
One of the following roles is required to call this method:
- Financial Admin
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/fees/(fee)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "fee",
"id": 10,
"name": "Important Textbook",
"description": null,
"type": "flat",
"amount": 1000,
"max_amount": 20,
"allow_zero": false,
"refundable": false,
"condition": "and",
"finaid_applies": true,
"status": "active",
"external_accountid": 0,
"account_id": 1,
"fee_class": "fee",
"report_on_1098t": true,
"report_on_t2202a": true,
"campus_life_permission": false,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Retrieves a specific Fee object.
HTTP Request
GET /fees/(fee)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- fee_rule_groups
- fee_rules
Permissions
One of the following roles is required to call this method:
- Financial Admin
File
The File object
The File object looks like this in JSON:
{
"object": "file",
"id": 1,
"file_data_id": 2,
"name": "profile1.jpg",
"alt": null,
"contenttype": null,
"type": "profile_picture",
"size": 16814,
"added_to": 1,
"filename": null,
"status": "active",
"trashed_by_id": null,
"mime_type": "image\/jpeg",
"media_type": null,
"encoding_status": null,
"added_at": "2022-08-01T23:19:44+00:00",
"added_by_id": 1,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
file_data_id | Yes | int |
name | Yes | text (255) |
alt | No | text (1000) |
contenttype | Yes | text (255) |
type | No | enum (person, contact_org, course, assignment, folder, inbox, trash, shared, discipline, application_component, todo, custom_field, transaction, lesson, email, news, fin_aid_application, discussion_topic, discussion_comment, assignment_submission, profile_picture, contact_org_picture, bookstore_item, library_resource, question, page_layout, chat_message, inquiry_response, application_question, application_question_response, application_section_answer, application_note, application_template_section, application_section, digital_resource, editable_template_field, enrollment_agreement, bookstore_item_variation, news_attachment, settings_image, email_template, data_import, catalog_course_picture, course_offering_picture, group, group_picture, syllabus, form, form_field, form_response_field_answer, form_response_note, book, populi_custom_report, setting, form_image) |
size | Yes | int |
added_to | Yes | int |
filename | No | text (255) |
status | Yes | enum (uploading, active, deleted) |
trashed_by_id | No | int |
mime_type | No | text |
media_type | No | text |
encoding_status | No | text |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index (courseoffering)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/files" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "file",
"id": 2,
"file_data_id": 2,
"name": "course_handouts.pdf",
"alt": null,
"contenttype": null,
"type": "course",
"size": 16814,
"added_to": 21908,
"filename": null,
"status": "active",
"trashed_by_id": null,
"mime_type": "image\/jpeg",
"media_type": null,
"encoding_status": null,
"added_at": "2022-08-01T23:19:44+00:00",
"added_by_id": 1
}
],
"sandbox": true
}
Retrieves all File objects tied to a specific Courseoffering.
HTTP Request
GET /courseofferings/(courseoffering)/files
Parameters
None
Permissions
One of the following roles is required to call this method:
- Staff
- Faculty
- Advisor
- Academic Auditor
- Registrar
- Academic Admin
show (courseoffering)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/files/(file)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "file",
"id": 2,
"file_data_id": 2,
"name": "course_handouts.pdf",
"alt": null,
"contenttype": null,
"type": "course",
"size": 16814,
"added_to": 21908,
"filename": null,
"status": "active",
"trashed_by_id": null,
"mime_type": "image\/jpeg",
"media_type": null,
"encoding_status": null,
"added_at": "2022-08-01T23:19:44+00:00",
"added_by_id": 1,
"sandbox": true
}
Retrieves a specific File object.
HTTP Request
GET /courseofferings/(courseoffering)/files/(file)
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:
- Staff
- Faculty
- Advisor
- Academic Auditor
- Registrar
- Academic Admin
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/files/(file)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "file",
"id": 1,
"file_data_id": 2,
"name": "profile1.jpg",
"alt": null,
"contenttype": null,
"type": "profile_picture",
"size": 16814,
"added_to": 1,
"filename": null,
"status": "active",
"trashed_by_id": null,
"mime_type": "image\/jpeg",
"media_type": null,
"encoding_status": null,
"added_at": "2022-08-01T23:19:44+00:00",
"added_by_id": 1,
"sandbox": true
}
Retrieves a specific File object.
HTTP Request
GET /files/(file)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- roles
download
curl "https://yourschool.populiweb.com/api2/files/(file)/download" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{}
HTTP Request
GET /files/(file)/download
Parameters
None
download_link
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/files/(file)/download_link" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "file",
"id": 1,
"name": "profile1.jpg",
"download_link": "https:\/\/s3.amazonaws.com\/dev.populi.co\/d069f5039d2e80a4edda7b6ba44a034f.jpg?AWSAccessKeyId=AKIAJGVEOZ7CAMYX2QDQ&Expires=1732134010&response-content-disposition=inline;%20filename=%22profile1.jpg%22&Signature=8JquFVzpGgRXl1meaxjjt1J0BZg%3D"
}
HTTP Request
GET /files/(file)/download_link
Parameters
None
FinancialTransaction
The FinancialTransaction object
The FinancialTransaction object looks like this in JSON:
{
"object": "financial_transaction",
"id": 9,
"type": "sales_invoice",
"status": "posted",
"number": 1234,
"posted_on": "2015-03-10",
"actor_type": "person",
"actor_id": 1,
"voided_at": null,
"voided_by_id": null,
"link_type": null,
"link_id": 0,
"amount": 1234.56,
"reverses": null,
"reversed_by_id": null,
"reposts": null,
"reposted_by_id": null,
"repostable": true,
"added_at": "2015-03-10T19:33:11+00:00",
"added_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
type | Yes | enum (journal, sales_invoice, sales_credit, customer_payment, customer_repayment, aid_payment, aid_repayment, sales_receipt, library_fine, donation, purchase, inventory_adjustment, gateway_processing_fee, reversal, aid_drawdown, gateway_deposit, donation_refund, gateway_withdrawal) |
status | Yes | enum (construction, posted, void) |
number | Yes | int |
posted_on | Yes | date |
actor_type | Yes | enum (none, person, contact_org, loan, asset) |
actor_id | Yes | int |
voided_at | Yes | datetime |
voided_by_id | No | int |
link_type | No | enum (uncollectible_invoice, recollectible_invoice, application, bookstore_order, financial_aid, donation, inventory_batch, transcript_request, transaction, form_response, gateway_deposit, gateway_withdrawal) |
link_id | Yes | int |
amount | Yes | decimal |
reverses | No | int |
reversed_by_id | No | int |
reposts | No | int |
reposted_by_id | No | int |
repostable | Yes | bool |
added_at | Yes | datetime |
added_by_id | No | int |
sandbox | No | -- |
apply
curl "https://yourschool.populiweb.com/api2/people/(person)/deposits/apply" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"liability_account_id": 6,
"amount": 200
}' \
Example response:
{}
HTTP Request
GET /people/(person)/deposits/apply
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
liability_account_id | Yes | int | |
amount | Yes | decimal | |
posted_date | No | date |
Permissions
One of the following roles is required to call this method:
- Financial Admin
- Student Billing
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/transactions" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"posted_date_start": "2022-01-05",
"posted_date_end": "2023-02-06",
"filter": {"0":{"logic":"ALL","fields":[{"name":"posted_date","value":{"type":"RANGE","start":"2021-01-01","end":"2022-03-17"},"positive":1}]}}
}' \
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": 200,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "financial_transaction",
"id": 100,
"type": "customer_payment",
"status": "posted",
"number": 1,
"posted_on": "2022-10-24",
"actor_type": "person",
"actor_id": 12,
"voided_at": null,
"voided_by_id": null,
"link_type": null,
"link_id": 0,
"amount": 600,
"reverses": null,
"reversed_by_id": null,
"reposts": null,
"reposted_by_id": null,
"repostable": true,
"added_at": "2024-11-20T12:03:33+00:00",
"added_by_id": 22,
"report_data": {
"student_dummyid": "20220xx002",
"primary_actor": "Alice Admin",
"term_name": null,
"invoiceid": null,
"invoice_number": null,
"paymentid": 100,
"reference_number": "",
"payment_number": 1,
"payment_source_type": "CHECK",
"donation_id": null,
"donation_number": null,
"added_by_name": "API Dude",
"voided_by_name": null,
"linked_transaction_id": null,
"linked_transaction_number": null,
"payment_gateway_processing_fee": "0.00",
"online_charge_method": "",
"check_number": null,
"check_batch_number": null,
"inventory_batch_item_variation_name": null,
"inventory_batch_item_id": null,
"inventory_batch_item_variation_id": null,
"row_id": 100
}
}
],
"sandbox": true
}
Retrieves all FinancialTransaction objects that match given filter conditions. This report requires a start and end posted date range.
HTTP Request
GET /transactions
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
posted_date_start | Yes | date | |
posted_date_end | Yes | date | |
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
- ledger_entries
- description
- notes
Filter Condition Parameters
These conditions can be used to narrow the results returned.
Name | Type |
---|---|
transaction_number | integer |
posted_date | date |
type | choice |
primary_actor | search |
status | choice |
added_at | datetime |
added_by | search |
voided_at | datetime |
voided_by | search |
amount | decimal |
academic_term | academic_term |
student_campus | campus |
Permissions
One of the following roles is required to call this method:
- Student Billing
- Financial Aid
- Financial Auditor
- Financial Admin
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/transactions/(financialtransaction)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "financial_transaction",
"id": 100,
"type": "customer_payment",
"status": "posted",
"number": 1,
"posted_on": "2022-10-24",
"actor_type": "person",
"actor_id": 12,
"voided_at": null,
"voided_by_id": null,
"link_type": null,
"link_id": 0,
"amount": 600,
"reverses": null,
"reversed_by_id": null,
"reposts": null,
"reposted_by_id": null,
"repostable": true,
"added_at": "2024-11-20T20:03:33+00:00",
"added_by_id": 22,
"sandbox": true
}
Retrieves a specific FinancialTransaction object.
HTTP Request
GET /transactions/(financialtransaction)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- ledger_entries
- description
- notes
Permissions
One of the following roles is required to call this method:
- Student Billing
- Financial Aid
- Financial Auditor
- Financial Admin
Form
The Form object
The Form object looks like this in JSON:
{
"object": "form",
"id": 1,
"current_version_id": 1,
"type": "form",
"name": "Form",
"description": null,
"image_file_id": null,
"published": true,
"accept_responses": true,
"available_from": null,
"available_until": null,
"self_service": false,
"require_user": false,
"require_request": false,
"anonymous_responses": false,
"can_choose_linked_model": false,
"user_response_limit": null,
"total_response_limit": null,
"response_review": "review",
"enable_sms_verification": false,
"redirect_url": null,
"thank_you_message": null,
"custom_css": null,
"fee_id": null,
"fee_amount": null,
"can_charge_to_account": false,
"default_localization_id": null,
"retired_by_id": null,
"retired_at": null,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
current_version_id | No | int |
type | Yes | enum (form, inquiry) |
name | Yes | text (300) |
description | No | text (5000) |
image_file_id | No | int |
published | Yes | bool |
accept_responses | Yes | bool |
available_from | No | datetime |
available_until | No | datetime |
self_service | Yes | bool |
require_user | Yes | bool |
require_request | Yes | bool |
anonymous_responses | Yes | bool |
can_choose_linked_model | Yes | bool |
user_response_limit | No | int |
total_response_limit | No | int |
response_review | Yes | enum (none, review, decision) |
enable_sms_verification | Yes | bool |
redirect_url | No | text (2000) |
thank_you_message | No | text |
custom_css | No | text |
fee_id | No | int |
fee_amount | No | decimal |
can_charge_to_account | Yes | bool |
default_localization_id | No | int |
retired_by_id | No | int |
retired_at | No | datetime |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/forms" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"filter": []
}' \
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": 200,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "form",
"id": 1,
"current_version_id": 1,
"type": "form",
"name": "Form",
"description": null,
"image_file_id": null,
"published": true,
"accept_responses": true,
"available_from": null,
"available_until": null,
"self_service": false,
"require_user": false,
"require_request": false,
"anonymous_responses": false,
"can_choose_linked_model": false,
"user_response_limit": null,
"total_response_limit": null,
"response_review": "review",
"enable_sms_verification": false,
"redirect_url": null,
"thank_you_message": null,
"custom_css": null,
"fee_id": null,
"fee_amount": null,
"can_charge_to_account": false,
"default_localization_id": null,
"retired_by_id": null,
"retired_at": null,
"added_at": null,
"added_by_id": null,
"report_data": {
"num_responses_to_review": 1,
"category_names": null
}
}
],
"sandbox": true
}
Retrieves all Form objects that match given filter conditions.
HTTP Request
GET /forms
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
- current_version
- roles
- people
- fee
- form_categories
Filter Condition Parameters
These conditions can be used to narrow the results returned.
Name | Type |
---|---|
accepting_responses | bool |
category | search |
custom_css | bool |
custom_thank_you_message | bool |
fee | bool |
login_required | bool |
name | text |
notification | base_object id |
published | bool |
response_limit | integer |
response_limit_per_user | integer |
responses_to_review | bool |
retired | bool |
Permissions
One of the following roles is required to call this method:
- Staff
- Faculty
- Advisor
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/forms/(form)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "form",
"id": 1,
"current_version_id": 1,
"type": "form",
"name": "Form",
"description": null,
"image_file_id": null,
"published": true,
"accept_responses": true,
"available_from": null,
"available_until": null,
"self_service": false,
"require_user": false,
"require_request": false,
"anonymous_responses": false,
"can_choose_linked_model": false,
"user_response_limit": null,
"total_response_limit": null,
"response_review": "review",
"enable_sms_verification": false,
"redirect_url": null,
"thank_you_message": null,
"custom_css": null,
"fee_id": null,
"fee_amount": null,
"can_charge_to_account": false,
"default_localization_id": null,
"retired_by_id": null,
"retired_at": null,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Retrieves a specific Form object.
HTTP Request
GET /forms/(form)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- current_version
- roles
- people
- fee
- form_categories
FormResponse
The FormResponse object
The FormResponse object looks like this in JSON:
{
"object": "form_response",
"id": 1,
"form_id": 1,
"form_version_id": 1,
"form_response_batch_id": null,
"person_id": 10,
"first_name": null,
"last_name": null,
"email": null,
"review": "review",
"status": "submitted",
"needs_review": null,
"needs_resubmit": null,
"fee_id": null,
"fee_amount": null,
"fee_discount": null,
"can_charge_to_account": false,
"fee_status": "unpaid",
"charge_method": null,
"sales_receipt_id": null,
"started_at": "2022-07-13T23:07:51+00:00",
"submitted_at": "2022-07-13T23:08:31+00:00",
"decision_by_id": null,
"decision_at": null,
"localization_id": null,
"requested_by_id": null,
"requested_at": null,
"added_at": "2022-07-13T23:07:51+00:00",
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
form_id | No | int |
form_version_id | No | int |
form_response_batch_id | No | int |
person_id | No | int |
first_name | No | text (50) |
last_name | No | text (50) |
No | text (100) | |
review | Yes | enum (none, review, decision) |
status | Yes | enum (pending, in_progress, submitted, processing, accepted, rejected, completed) |
needs_review | No | int |
needs_resubmit | No | int |
fee_id | No | int |
fee_amount | No | decimal |
fee_discount | No | decimal |
can_charge_to_account | Yes | bool |
fee_status | Yes | enum (unpaid, paid, waived) |
charge_method | No | enum (account, credit_card, external) |
sales_receipt_id | No | int |
started_at | No | datetime |
submitted_at | No | datetime |
decision_by_id | No | int |
decision_at | No | datetime |
localization_id | No | int |
requested_by_id | No | int |
requested_at | No | datetime |
added_at | No | datetime |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/forms/(form)/responses" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"filter": []
}' \
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": 200,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "form_response",
"id": 1,
"form_id": 1,
"form_version_id": 1,
"form_response_batch_id": null,
"person_id": 10,
"first_name": null,
"last_name": null,
"email": null,
"review": "review",
"status": "submitted",
"needs_review": null,
"needs_resubmit": null,
"fee_id": null,
"fee_amount": null,
"fee_discount": null,
"can_charge_to_account": false,
"fee_status": "unpaid",
"charge_method": null,
"sales_receipt_id": null,
"started_at": "2022-07-13T23:07:51+00:00",
"submitted_at": "2022-07-13T23:08:31+00:00",
"decision_by_id": null,
"decision_at": null,
"localization_id": null,
"requested_by_id": null,
"requested_at": null,
"added_at": "2022-07-13T23:07:51+00:00",
"report_data": {
"person_display_name": null,
"person_last_name": null,
"person_first_name": null,
"batch_name": null,
"respondent_person_id": null,
"respondent_display_name": null,
"respondent_last_name": null,
"respondent_first_name": null,
"discount_code": null,
"row_id": 1
}
}
],
"sandbox": true
}
Retrieves all FormResponse objects that match given filter conditions.
HTTP Request
GET /forms/(form)/responses
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
- form
- form_version
- answers
- notes
Filter Condition Parameters
These conditions can be used to narrow the results returned.
Name | Type |
---|---|
linked_person | search |
respondent | search |
batch | object id |
discount_code | object id |
status | enum |
started_at | datetime |
signed_at | datetime |
submitted_at | datetime |
decision_at | datetime |
field | FormField |
needs_review | bool |
fields_to_review | integer |
tag | tag |
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/forms/(form)/responses/(formresponse)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"expand": [
"form_version",
"answers"
]
}' \
Example response:
{
"object": "form_response",
"id": 1,
"form_id": 1,
"form_version_id": 1,
"form_response_batch_id": null,
"person_id": 10,
"first_name": null,
"last_name": null,
"email": null,
"review": "review",
"status": "submitted",
"needs_review": null,
"needs_resubmit": null,
"fee_id": null,
"fee_amount": null,
"fee_discount": null,
"can_charge_to_account": false,
"fee_status": "unpaid",
"charge_method": null,
"sales_receipt_id": null,
"started_at": "2022-07-13T23:07:51+00:00",
"submitted_at": "2022-07-13T23:08:31+00:00",
"decision_by_id": null,
"decision_at": null,
"localization_id": null,
"requested_by_id": null,
"requested_at": null,
"form_version": {
"object": "form_version",
"id": 1,
"owner_type": "form",
"owner_id": 1,
"added_at": null,
"added_by_id": null,
"sections": [
{
"object": "form_heading",
"id": 8,
"content": "Heading",
"added_at": null,
"added_by_id": null,
"page_order_id": 1,
"order_id": 1,
"hidden": false
},
{
"object": "form_field",
"id": 9,
"reporting_id": 9,
"name": "Short Answer",
"description": null,
"input_type": "short_answer",
"model_type": null,
"model_id": null,
"min": null,
"max": null,
"added_at": null,
"added_by_id": null,
"is_required": false,
"page_order_id": 1,
"order_id": 2,
"hidden": false
},
{
"object": "form_field",
"id": 10,
"reporting_id": 10,
"name": "Paragraph",
"description": null,
"input_type": "long_answer",
"model_type": null,
"model_id": null,
"min": null,
"max": null,
"added_at": null,
"added_by_id": null,
"is_required": false,
"page_order_id": 1,
"order_id": 3,
"hidden": false
},
{
"object": "form_field",
"id": 11,
"reporting_id": 11,
"name": "Yes\/No",
"description": null,
"input_type": "boolean",
"model_type": null,
"model_id": null,
"min": null,
"max": null,
"added_at": null,
"added_by_id": null,
"is_required": false,
"page_order_id": 1,
"order_id": 4,
"hidden": false
},
{
"object": "form_field",
"id": 12,
"reporting_id": 12,
"name": "Number",
"description": null,
"input_type": "integer",
"model_type": null,
"model_id": null,
"min": null,
"max": null,
"added_at": null,
"added_by_id": null,
"is_required": false,
"page_order_id": 2,
"order_id": 1,
"hidden": false
},
{
"object": "form_field",
"id": 13,
"reporting_id": 13,
"name": "Date",
"description": null,
"input_type": "date",
"model_type": null,
"model_id": null,
"min": null,
"max": null,
"added_at": null,
"added_by_id": null,
"is_required": false,
"page_order_id": 2,
"order_id": 2,
"hidden": false
},
{
"object": "form_text",
"id": 14,
"content": "Text content",
"added_at": null,
"added_by_id": null,
"page_order_id": 2,
"order_id": 3,
"hidden": false
},
{
"object": "form_field",
"id": 15,
"reporting_id": 15,
"name": "Select",
"description": null,
"input_type": "multiple_choice_select",
"model_type": null,
"model_id": null,
"min": null,
"max": null,
"added_at": null,
"added_by_id": null,
"options": [
{
"object": "form_field_option",
"id": 5,
"display_value": "One",
"order_id": 1
},
{
"object": "form_field_option",
"id": 6,
"display_value": "Two",
"order_id": 2
},
{
"object": "form_field_option",
"id": 7,
"display_value": "Three",
"order_id": 3
},
{
"object": "form_field_option",
"id": 8,
"display_value": "Four",
"order_id": 4
}
],
"is_required": false,
"page_order_id": 2,
"order_id": 3,
"hidden": false
}
]
},
"answers": [
{
"object": "form_field_answer",
"id": 3,
"owner_type": "form_response",
"owner_id": 1,
"form_field_id": 9,
"subfield": null,
"text_value": "Short answer text...",
"integer_value": null,
"decimal_value": null,
"date_value": null,
"datetime_value": null,
"email_value": null,
"ip": null,
"added_at": null
},
{
"object": "form_field_answer",
"id": 4,
"owner_type": "form_response",
"owner_id": 1,
"form_field_id": 15,
"subfield": null,
"text_value": null,
"integer_value": 8,
"decimal_value": null,
"date_value": null,
"datetime_value": null,
"email_value": null,
"ip": null,
"added_at": null
}
],
"added_at": "2022-07-13T23:07:51+00:00",
"sandbox": true
}
Retrieves a specific FormResponse object. To match answers to form fields, you will need to expand form_version and answers.
HTTP Request
GET /forms/(form)/responses/(formresponse)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- form
- form_version
- answers
- notes
Fund
The Fund object
The Fund object looks like this in JSON:
{
"object": "fund",
"id": 3,
"name": "Building Fund",
"asset_account_id": null,
"income_account_id": 7,
"is_default": false,
"is_restricted": false,
"show_online": true,
"is_taxable": true,
"status": "active",
"added_at": "2015-01-02T19:53:14+00:00",
"added_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
name | Yes | text (255) |
asset_account_id | No | int |
income_account_id | No | int |
is_default | Yes | bool |
is_restricted | Yes | bool |
show_online | Yes | bool |
is_taxable | Yes | bool |
status | Yes | enum (active, deleted) |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/funds" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "fund",
"id": 3,
"name": "Building Fund",
"asset_account_id": null,
"income_account_id": 7,
"is_default": false,
"is_restricted": false,
"show_online": true,
"is_taxable": true,
"status": "active",
"added_at": "2015-01-02T19:53:14+00:00",
"added_by_id": null
}
],
"sandbox": true
}
Retrieves all Fund objects.
HTTP Request
GET /funds
Parameters
None
Permissions
One of the following roles is required to call this method:
- Financial Admin
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/funds/(fund)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "fund",
"id": 3,
"name": "Building Fund",
"asset_account_id": null,
"income_account_id": 7,
"is_default": false,
"is_restricted": false,
"show_online": true,
"is_taxable": true,
"status": "active",
"added_at": "2015-01-02T19:53:14+00:00",
"added_by_id": null,
"sandbox": true
}
Retrieves a specific Fund object.
HTTP Request
GET /funds/(fund)
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:
- Financial Admin
GradeScale
The GradeScale object
The GradeScale object looks like this in JSON:
{
"object": "grade_scale",
"id": 1,
"parent_id": 1,
"owner_type": "year",
"owner_id": 1,
"pass_fail": false,
"retake_threshold_grade_point_id": null,
"retake_threshold_inclusive_direction": "higher",
"retake_threshold_logic": "include_retakes_in_calculation",
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
parent_id | No | int |
owner_type | Yes | enum (year, term) |
owner_id | Yes | int |
pass_fail | Yes | bool |
retake_threshold_grade_point_id | No | int |
retake_threshold_inclusive_direction | Yes | enum (higher, lower) |
retake_threshold_logic | Yes | enum (include_retakes_in_calculation, exclude_retakes_from_calculation) |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/gradescales" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 2,
"results": 2,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "grade_scale",
"id": 1,
"parent_id": 1,
"owner_type": "year",
"owner_id": 1,
"pass_fail": false,
"retake_threshold_grade_point_id": null,
"retake_threshold_inclusive_direction": "higher",
"retake_threshold_logic": "include_retakes_in_calculation"
}
],
"sandbox": true
}
Retrieves all GradeScale objects.
HTTP Request
GET /gradescales
Parameters
None
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Academic Admin
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/gradescales/(gradescale)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "grade_scale",
"id": 1,
"parent_id": 1,
"owner_type": "year",
"owner_id": 1,
"pass_fail": false,
"retake_threshold_grade_point_id": null,
"retake_threshold_inclusive_direction": "higher",
"retake_threshold_logic": "include_retakes_in_calculation",
"sandbox": true
}
Retrieves a specific GradeScale object.
HTTP Request
GET /gradescales/(gradescale)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- grade_points
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Academic Admin
Group
The Group object
The Group object looks like this in JSON:
{
"object": "group",
"id": 1,
"parent_id": null,
"name": "Seagulls, stop it now",
"description": null,
"membership": "open",
"can_invite": "members",
"can_bulletin_board_posts": "members",
"can_add_discussions": "members",
"can_upload_files": "members",
"enable_chat": true,
"public": true,
"official": false,
"image_file_id": null,
"status": "active",
"status_by_id": null,
"status_at": null,
"added_at": "2019-01-22T23:50:55+00:00",
"added_by_id": 11,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
parent_id | No | int |
name | Yes | text (300) |
description | No | text |
membership | Yes | enum (open, roles, invitation_only) |
can_invite | Yes | enum (members, moderators, admins) |
can_bulletin_board_posts | Yes | enum (members, moderators, admins) |
can_add_discussions | Yes | enum (disabled, members, moderators, admins) |
can_upload_files | Yes | enum (disabled, members, moderators, admins) |
enable_chat | No | bool |
public | No | bool |
official | No | bool |
image_file_id | No | int |
status | Yes | enum (pending, active, denied) |
status_by_id | No | int |
status_at | No | datetime |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/groups" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"filter": {"0":{"logic":"ALL","fields":[{"name":"status","value":"BLAH","positive":1}]}}
}' \
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": 200,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "group",
"id": 1,
"parent_id": null,
"name": "Seagulls, stop it now",
"description": null,
"membership": "open",
"can_invite": "members",
"can_bulletin_board_posts": "members",
"can_add_discussions": "members",
"can_upload_files": "members",
"enable_chat": true,
"public": true,
"official": false,
"image_file_id": null,
"status": "active",
"status_by_id": null,
"status_at": null,
"added_at": "2019-01-22T23:50:55+00:00",
"added_by_id": 11,
"report_data": {
"user_member_status": null,
"user_member_type": null,
"num_members": 0
}
}
],
"sandbox": true
}
Retrieves all Group objects that match given filter conditions.
HTTP Request
GET /groups
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
- members
- roles
Filter Condition Parameters
These conditions can be used to narrow the results returned.
Name | Type |
---|---|
search | text |
status | enum |
Permissions
Any role may call this method.
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/groups/(group)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "group",
"id": 1,
"parent_id": null,
"name": "Seagulls, stop it now",
"description": null,
"membership": "open",
"can_invite": "members",
"can_bulletin_board_posts": "members",
"can_add_discussions": "members",
"can_upload_files": "members",
"enable_chat": true,
"public": true,
"official": false,
"image_file_id": null,
"status": "active",
"status_by_id": null,
"status_at": null,
"added_at": "2019-01-22T23:50:55+00:00",
"added_by_id": 11,
"sandbox": true
}
Retrieves a specific Group object.
HTTP Request
GET /groups/(group)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- members
- roles
Honor
The Honor object
The Honor object looks like this in JSON:
{
"object": "honor",
"id": 1,
"name": "Presidential List",
"min_gpa": null,
"max_gpa": null,
"gpa_type": "none",
"min_units": null,
"units_type": "none",
"owner_type": "program",
"type": "manual",
"tagid": 153698,
"start_date": null,
"retired_at": null,
"retired_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
name | Yes | text (255) |
min_gpa | No | decimal |
max_gpa | No | decimal |
gpa_type | Yes | enum (none, gpa_including_transfer, institutional_gpa) |
min_units | No | decimal |
units_type | Yes | enum (none, include_transfer_units, institutional_units) |
owner_type | Yes | enum (program, degree, term, student) |
type | Yes | enum (automatic, manual) |
tagid | Yes | int |
start_date | No | date |
retired_at | No | date |
retired_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/honors" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 5,
"results": 5,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "honor",
"id": 4,
"name": "Academic Probation",
"min_gpa": 1,
"max_gpa": 2,
"gpa_type": "institutional_gpa",
"min_units": 0,
"units_type": "include_transfer_units",
"owner_type": "term",
"type": "automatic",
"tagid": 443823,
"start_date": null,
"retired_at": null,
"retired_by_id": null
}
],
"sandbox": true
}
Retrieves all Honor objects.
HTTP Request
GET /honors
Parameters
None
Permissions
One of the following roles is required to call this method:
- Academic Admin
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/honors/(honor)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "honor",
"id": 1,
"name": "Presidential List",
"min_gpa": null,
"max_gpa": null,
"gpa_type": "none",
"min_units": null,
"units_type": "none",
"owner_type": "program",
"type": "manual",
"tagid": 153698,
"start_date": null,
"retired_at": null,
"retired_by_id": null,
"sandbox": true
}
Retrieves a specific Honor object.
HTTP Request
GET /honors/(honor)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- programs
- program_standings
- degrees
Permissions
One of the following roles is required to call this method:
- Academic Admin
IDCardTemplate
The IDCardTemplate object
The IDCardTemplate object looks like this in JSON:
{
"object": "id_card_template",
"id": 1,
"type": "ID_CARD",
"sub_type": "STUDENT",
"name": "Student",
"num_rows": 1,
"num_columns": 1,
"row_spacing": 0,
"column_spacing": 0,
"page_margin_top": 0,
"page_margin_left": 0,
"page_width": 3.37,
"page_height": 2.125,
"one_cell_per_page": true,
"cell_width": 3.37,
"cell_height": 2.125,
"cell_to_start_printing_on": 1,
"status": "active",
"is_default": true,
"added_at": "2015-08-12T05:41:29+00:00",
"added_by_id": 3483127,
"updated_at": "2016-11-30T08:09:44+00:00",
"updated_by_id": 7011453,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
type | Yes | text (50) |
sub_type | No | text (50) |
name | Yes | text (255) |
num_rows | Yes | int |
num_columns | Yes | int |
row_spacing | Yes | decimal |
column_spacing | Yes | decimal |
page_margin_top | Yes | decimal |
page_margin_left | Yes | decimal |
page_width | Yes | decimal |
page_height | Yes | decimal |
one_cell_per_page | Yes | bool |
cell_width | Yes | decimal |
cell_height | Yes | decimal |
cell_to_start_printing_on | Yes | int |
status | Yes | enum (active, deleted) |
is_default | Yes | bool |
added_at | No | datetime |
added_by_id | No | int |
updated_at | No | datetime |
updated_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/idcardtemplates" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "id_card_template",
"id": 1,
"type": "ID_CARD",
"sub_type": "STUDENT",
"name": "Student",
"num_rows": 1,
"num_columns": 1,
"row_spacing": 0,
"column_spacing": 0,
"page_margin_top": 0,
"page_margin_left": 0,
"page_width": 3.37,
"page_height": 2.125,
"one_cell_per_page": true,
"cell_width": 3.37,
"cell_height": 2.125,
"cell_to_start_printing_on": 1,
"status": "active",
"is_default": true,
"added_at": "2015-08-12T05:41:29+00:00",
"added_by_id": 3483127,
"updated_at": "2016-11-30T08:09:44+00:00",
"updated_by_id": 7011453
}
],
"sandbox": true
}
Retrieves all IDCardTemplate objects.
HTTP Request
GET /idcardtemplates
Parameters
None
Expandable Properties
- id_card_template_fields
Permissions
One of the following roles is required to call this method:
- Staff
Export (person)
curl "https://yourschool.populiweb.com/api2/people/(person)/idcard" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{}
Either id_card_template_id or print_layout_id is required.
HTTP Request
GET /people/(person)/idcard
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
id_card_template_id | No | ||
print_layout_id | No |
Permissions
One of the following roles is required to call this method:
- Staff
index (PrintLayouts)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/idcardtemplates/printlayouts" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "print_layout",
"id": 7,
"name": "Standard Student ID",
"print_layout_type_id": 24,
"active_revision": null,
"default": true,
"template_type": "html",
"content": null,
"subtype": "STUDENT",
"added_at": "2024-05-06T22:07:20+00:00",
"added_by_id": 1257
}
],
"sandbox": true
}
Retrieves all IdCardTemplate objects.
HTTP Request
GET /idcardtemplates/printlayouts
Parameters
None
Permissions
One of the following roles is required to call this method:
- Staff
Inquiry
The Inquiry object
The Inquiry object looks like this in JSON:
{
"object": "inquiry",
"id": 1,
"form_id": null,
"form_version_id": null,
"person_id": null,
"lead_id": null,
"first_name": "Homestar",
"middle_name": null,
"last_name": "Runner",
"email": "homestar@populi.co",
"phone": null,
"address_id": null,
"subject": "Email, scrollbuttons",
"content": "Yeah!",
"program_id": null,
"degree_id": null,
"specialization_id": null,
"academic_term_id": null,
"counselor_id": null,
"status": "waiting_on_us",
"closed_at": null,
"closed_by_id": null,
"lead_source_id": null,
"localization_id": null,
"added_on": "2013-03-15",
"added_at": "2013-03-15T21:06:03+00:00",
"added_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
form_id | No | int |
form_version_id | No | int |
person_id | No | int |
lead_id | No | int |
first_name | No | text (50) |
middle_name | No | text (50) |
last_name | No | text (50) |
No | text (100) | |
phone | No | text (45) |
address_id | No | int |
subject | Yes | text (255) |
content | No | text |
program_id | No | int |
degree_id | No | int |
specialization_id | No | int |
academic_term_id | No | int |
counselor_id | No | int |
status | Yes | enum (waiting_on_us, waiting_on_them, closed) |
closed_at | No | datetime |
closed_by_id | No | int |
lead_source_id | No | int |
localization_id | No | int |
added_on | No | date |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/inquiries" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"filter": {"0":{"logic":"ALL","fields":[{"name":"source","value":{"parent":"123","child":"456"},"positive":1}]}}
}' \
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": 200,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "inquiry",
"id": 1,
"form_id": null,
"form_version_id": null,
"person_id": null,
"lead_id": null,
"first_name": "Homestar",
"middle_name": null,
"last_name": "Runner",
"email": "homestar@populi.co",
"phone": null,
"address_id": null,
"subject": "Email, scrollbuttons",
"content": "Yeah!",
"program_id": null,
"degree_id": null,
"specialization_id": null,
"academic_term_id": null,
"counselor_id": null,
"status": "waiting_on_us",
"closed_at": null,
"closed_by_id": null,
"lead_source_id": null,
"localization_id": null,
"added_on": "2013-03-15",
"added_at": "2013-03-15T21:06:03+00:00",
"added_by_id": null,
"report_data": {
"person_first_name": "Homestar",
"person_preferred_name": null,
"person_last_name": "Runner",
"program_name": null,
"degree_name": null,
"specialization_name": null,
"academic_term_display_name": null,
"counselor_name": null,
"counselor_first_name": null,
"counselor_last_name": null,
"lead_source_name": null,
"street": null,
"city": null,
"state": null,
"zip": null,
"country": null,
"last_response": "2013-03-15 14:04:58",
"verified_email_address": null,
"owner_type": "INQUIRY",
"row_id": 1
}
}
],
"sandbox": true
}
Retrieves all Inquiry objects that match given filter conditions.
HTTP Request
GET /inquiries
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
- inquiry_form
- form_version
- answers
- person
- lead
- added_by
- counselor
- address
- comments
Filter Condition Parameters
These conditions can be used to narrow the results returned.
Name | Type |
---|---|
inquiry | text |
first_name | text |
last_name | text |
inquiry_form | object id |
linked_to_person | bool |
gender | gender |
counselor | admissions_counselor |
status | enum |
source | leadsource |
academic_term | academic_term |
added_on | date |
last_contacted | date_time |
verified | bool |
address_city | text |
address_state | state |
address_country | country |
tag | tag |
custom_field | custom |
Permissions
One of the following roles is required to call this method:
- Admissions Admin
- Admissions
- Academic Admin
- Registrar
create
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/inquiries" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"first_name": "Samantha",
"last_name": "Curry",
"email": "samantha.c.2002@somewhere.edu",
"address": "{\"street\":\"555 Maple Street\",\"city\":\"Dallas\",\"state\":\"TX\",\"postal\":\"55123\",\"country\":\"US\"}"
}' \
Example response:
{
"object": "inquiry",
"id": 10,
"form_id": null,
"form_version_id": null,
"person_id": null,
"lead_id": null,
"first_name": "Samantha",
"middle_name": null,
"last_name": "Curry",
"email": "samantha.c.2002@somewhere.edu",
"phone": null,
"address_id": 802,
"subject": null,
"content": null,
"program_id": null,
"degree_id": null,
"specialization_id": null,
"academic_term_id": null,
"counselor_id": null,
"status": "waiting_on_us",
"closed_at": null,
"closed_by_id": null,
"lead_source_id": null,
"localization_id": null,
"added_on": "2024-11-20",
"added_at": "2024-11-20T20:03:33+00:00",
"added_by_id": 22,
"sandbox": true
}
Creates a new Inquiry object.
HTTP Request
POST /inquiries
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
first_name | Yes | text (50) | |
middle_name | No | text (50) | |
last_name | Yes | text (50) | |
phone | No | text (45) | |
Yes | text (100) | ||
lead_source_id | No | int | |
program_id | No | int | |
degree_id | No | int | |
specialization_id | No | int | |
academic_term_id | No | int | |
content | No | text | |
added_on | No | date | |
address | No | address | |
subject | No | text (255) |
Action Parameters
Name | Data Type | Description |
---|---|---|
create_response |
Permissions
One of the following roles is required to call this method:
- Admissions Admin
- Admissions
- Academic Admin
- Registrar
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/inquiries/(inquiry)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "inquiry",
"id": 1,
"form_id": null,
"form_version_id": null,
"person_id": null,
"lead_id": null,
"first_name": "Homestar",
"middle_name": null,
"last_name": "Runner",
"email": "homestar@populi.co",
"phone": null,
"address_id": null,
"subject": "Email, scrollbuttons",
"content": "Yeah!",
"program_id": null,
"degree_id": null,
"specialization_id": null,
"academic_term_id": null,
"counselor_id": null,
"status": "waiting_on_us",
"closed_at": null,
"closed_by_id": null,
"lead_source_id": null,
"localization_id": null,
"added_on": "2013-03-15",
"added_at": "2013-03-15T21:06:03+00:00",
"added_by_id": null,
"sandbox": true
}
Retrieves a specific Inquiry object.
HTTP Request
GET /inquiries/(inquiry)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- inquiry_form
- form_version
- answers
- person
- lead
- added_by
- counselor
- address
- comments
Permissions
One of the following roles is required to call this method:
- Admissions Admin
- Admissions
- Academic Admin
- Registrar
update
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/inquiries/(inquiry)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X PUT
-d '{
"first_name": "Ben",
"last_name": "Ford",
"email": "bford@gmail2.edu",
"address": "{\"street\":\"555 Maple Street\",\"city\":\"Dallas\",\"state\":\"TX\",\"postal\":\"55123\",\"country\":\"US\"}"
}' \
Example response:
{
"object": "inquiry",
"id": 1,
"form_id": null,
"form_version_id": null,
"person_id": null,
"lead_id": null,
"first_name": "Ben",
"middle_name": null,
"last_name": "Ford",
"email": "bford@gmail2.edu",
"phone": null,
"address_id": null,
"subject": "Email, scrollbuttons",
"content": "Yeah!",
"program_id": null,
"degree_id": null,
"specialization_id": null,
"academic_term_id": null,
"counselor_id": null,
"status": "waiting_on_us",
"closed_at": null,
"closed_by_id": null,
"lead_source_id": null,
"localization_id": null,
"added_on": "2013-03-15",
"address": null,
"added_at": "2013-03-15T21:06:03+00:00",
"added_by_id": null,
"sandbox": true
}
Updates an existing Inquiry object. Once an inquiry is linked to a Person, name and contact information fields cannot be updated using this route. Update the related Person instead.
HTTP Request
PUT /inquiries/(inquiry)
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
first_name | Yes | text (50) | |
middle_name | No | text (50) | |
last_name | Yes | text (50) | |
phone | No | text (45) | |
Yes | text (100) | ||
lead_source_id | No | int | |
program_id | No | int | |
degree_id | No | int | |
specialization_id | No | int | |
academic_term_id | No | int | |
content | No | text | |
added_on | No | date | |
address | No | address | |
subject | No | text (255) |
Permissions
One of the following roles is required to call this method:
- Admissions Admin
- Admissions
- Academic Admin
- Registrar
delete
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/inquiries/(inquiry)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "inquiry",
"id": 1,
"deleted": true
}
Deletes an existing Inquiry object.
HTTP Request
DELETE /inquiries/(inquiry)
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:
- Admissions Admin
- Admissions
- Academic Admin
- Registrar
link_to_person
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/inquiries/(inquiry)/link_to_person" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"person_id": 2
}' \
Example response:
{
"object": "inquiry",
"id": 1,
"form_id": null,
"form_version_id": null,
"person_id": 2,
"lead_id": null,
"first_name": "Ben",
"middle_name": null,
"last_name": "Ford",
"email": "bford@gmail2.edu",
"phone": null,
"address_id": null,
"subject": "Email, scrollbuttons",
"content": "Yeah!",
"program_id": null,
"degree_id": null,
"specialization_id": null,
"academic_term_id": null,
"counselor_id": null,
"status": "waiting_on_us",
"closed_at": null,
"closed_by_id": null,
"lead_source_id": null,
"localization_id": null,
"added_on": "2013-03-15",
"added_at": "2013-03-15T21:06:03+00:00",
"added_by_id": null,
"sandbox": true
}
HTTP Request
GET /inquiries/(inquiry)/link_to_person
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
person_id | Yes | int |
Permissions
One of the following roles is required to call this method:
- Admissions Admin
- Admissions
- Academic Admin
- Registrar
InventoryBatch
The InventoryBatch object
The InventoryBatch object looks like this in JSON:
{
"object": "inventory_batch",
"id": 1,
"item_variation_id": 7,
"cost": 90,
"quantity": 55,
"added_on": "2022-07-12",
"added_at": "2022-07-12T18:49:11+00:00",
"added_by_id": 6,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
item_variation_id | No | int |
cost | Yes | decimal |
quantity | No | int |
added_on | No | date |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/inventorybatches" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "inventory_batch",
"id": 1,
"item_variation_id": 7,
"cost": 90,
"quantity": 55,
"added_on": "2022-07-12",
"has_adjustments": 0,
"added_at": "2022-07-12T18:49:11+00:00",
"added_by_id": 6
}
],
"sandbox": true
}
Retrieves all InventoryBatch objects.
HTTP Request
GET /inventorybatches
Parameters
None
Permissions
One of the following roles is required to call this method:
- Financial Auditor
- Bookstore Admin
- Financial Admin
- Bookstore
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/inventorybatches/(inventorybatch)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "inventory_batch",
"id": 1,
"item_variation_id": 7,
"cost": 90,
"quantity": 55,
"added_on": "2022-07-12",
"added_at": "2022-07-12T18:49:11+00:00",
"added_by_id": 6,
"sandbox": true
}
Retrieves a specific InventoryBatch object.
HTTP Request
GET /inventorybatches/(inventorybatch)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- adjustments
Permissions
One of the following roles is required to call this method:
- Financial Auditor
- Bookstore Admin
- Financial Admin
- Bookstore
Invoice
The Invoice object
The Invoice object looks like this in JSON:
{
"object": "invoice",
"id": 7,
"actor_type": "person",
"actor_id": 1,
"number": 1,
"description": null,
"transaction_id": 9,
"amount": 1234.56,
"due_on": "2009-04-07",
"status": "unpaid",
"marked_uncollectible_on": null,
"posted_on": "2015-03-10",
"academic_term_id": null,
"items": [
{
"object": "invoice_item",
"id": 6,
"invoice_id": 7,
"item_type": "fee",
"item_id": 9,
"name": null,
"amount": 20,
"description": "Parking Ticket"
}
],
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
actor_type | Yes | enum (person, contact_org) |
actor_id | Yes | int |
number | Yes | int |
description | Yes | text |
transaction_id | Yes | int |
amount | Yes | decimal |
due_on | Yes | date |
status | No | enum (unpaid, paid, uncollectible) |
marked_uncollectible_on | No | date |
posted_on | No | date |
academic_term_id | Yes | int |
items | No | Array of InvoiceItem objects |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/invoices" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"filter": {"0":{"logic":"ALL","fields":[{"name":"balance","value":{"type":"RANGE","start":"10.5","end":"900.15"},"positive":1}]}}
}' \
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": 200,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "invoice",
"id": 7,
"actor_type": "person",
"actor_id": 1,
"number": 1,
"description": null,
"transaction_id": 9,
"amount": 1234.56,
"due_on": "2009-04-07",
"status": "unpaid",
"marked_uncollectible_on": null,
"report_data": {
"amount_paid": "0.00",
"balance": "1234.56",
"overdue": 1,
"term_name": null,
"term_start_date": null,
"firstname": "Elizabeth",
"lastname": "Fox",
"preferred_name": "",
"display_name": "Elizabeth Fox",
"personid": 1,
"studentid": 1,
"posted_date": "2015-03-10",
"dummyid": "20020xx000",
"person_amount_paid": null,
"org_amount_paid": null,
"aid_amount_paid": null,
"plan_name": null,
"scheduled_aid_handling": null,
"recurring_money_transfer_linkable_term_level": null,
"recurring_money_transfer_linkable_existing": null,
"on_term_level_payment_plan": 0,
"invoice_due_date": "2022-08-11",
"on_payment_plan": 1,
"on_plan_total": null,
"plan_due_date": null,
"row_id": 7
},
"posted_on": "2015-03-10",
"academic_term_id": null,
"items": [
{
"object": "invoice_item",
"id": 6,
"invoice_id": 7,
"item_type": "fee",
"item_id": 9,
"name": null,
"amount": 20,
"description": "Parking Ticket"
}
]
}
],
"sandbox": true
}
Retrieves all Invoice objects that match given filter conditions.
HTTP Request
GET /invoices
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
- items
- payments
- credits
- courses
Filter Condition Parameters
These conditions can be used to narrow the results returned.
Name | Type |
---|---|
student | search |
invoice_number | integer |
academic_term | academic_term |
posted_date | date |
status | enum |
invoice_due_date | date |
payment_plan_due_date | date |
total_amount | decimal |
amount_paid | decimal |
balance | decimal |
student_campus | campus |
tag | tag |
on_payment_plan | bool |
added_time | datetime |
custom_field | custom |
Permissions
One of the following roles is required to call this method:
- Financial Aid
- Financial Auditor
- Financial Admin
- Student Billing
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/invoices/(invoice)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "invoice",
"id": 7,
"actor_type": "person",
"actor_id": 1,
"number": 1,
"description": null,
"transaction_id": 9,
"amount": 1234.56,
"due_on": "2009-04-07",
"status": "unpaid",
"marked_uncollectible_on": null,
"posted_on": "2015-03-10",
"academic_term_id": null,
"items": [
{
"object": "invoice_item",
"id": 6,
"invoice_id": 7,
"item_type": "fee",
"item_id": 9,
"name": null,
"amount": 20,
"description": "Parking Ticket"
}
],
"sandbox": true
}
Retrieves a specific Invoice object.
HTTP Request
GET /invoices/(invoice)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- items
- payments
- credits
- courses
Permissions
One of the following roles is required to call this method:
- Financial Aid
- Financial Auditor
- Financial Admin
- Student Billing
ISIR
The Isir object
The Isir object looks like this in JSON:
{
"object": "isir",
"id": 6,
"batch_id": 1,
"cps_transaction_number": 1,
"cps_processed_date": "2011-03-20",
"status": "pending",
"content": "2200100405ED01EDIT QUESTION BORN BEFORE ASSUME NO EDIT 1004 VA2078419880102 1 1 VA 2 1 2 3 100000{000000000000{00000{000000000000000000 1222222211111 1 391091111FATHERLASTNAME A19540101000000000 VA 03 121 00500{0000000300500{00999I000000000000000000 011 001002 20110101B I1A20110320 TG53275 200100405 1A20110320 001 Y20110320 Y Y 4 2 0000000000 5200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000{0008550000000{00000000008550000855}000427N 000000{000000{0008550000000{00000000008550000855}000427N00000000{000000000000000000 000000{000000{ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 000000000000010000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 1 8 8 F 4 149001146124219220221222115116118053117006000000000000000000 10 N 011 N04 N04 NY NY N05 NM YY N\/A 002405N\/A N\/A N\/A N\/A N\/A 777777008888999999 005309 NNNNNNNNNNNNNNYYY NNNNNN01Y 00280000003732 20090315 ",
"aid_year_id": 2,
"aid_application_id": null,
"imported_by_id": null,
"imported_at": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
batch_id | Yes | int |
cps_transaction_number | Yes | int |
cps_processed_date | No | date |
status | Yes | enum (pending, imported, skipped) |
content | Yes | text (10000) |
aid_year_id | No | int |
aid_application_id | No | int |
imported_by_id | No | int |
imported_at | No | datetime |
sandbox | No | -- |
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/isirs/(isir)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "isir",
"id": 6,
"batch_id": 1,
"cps_transaction_number": 1,
"cps_processed_date": "2011-03-20",
"status": "pending",
"content": "2200100405ED01EDIT QUESTION BORN BEFORE ASSUME NO EDIT 1004 VA2078419880102 1 1 VA 2 1 2 3 100000{000000000000{00000{000000000000000000 1222222211111 1 391091111FATHERLASTNAME A19540101000000000 VA 03 121 00500{0000000300500{00999I000000000000000000 011 001002 20110101B I1A20110320 TG53275 200100405 1A20110320 001 Y20110320 Y Y 4 2 0000000000 5200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000{0008550000000{00000000008550000855}000427N 000000{000000{0008550000000{00000000008550000855}000427N00000000{000000000000000000 000000{000000{ 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 000000000000010000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 1 8 8 F 4 149001146124219220221222115116118053117006000000000000000000 10 N 011 N04 N04 NY NY N05 NM YY N\/A 002405N\/A N\/A N\/A N\/A N\/A 777777008888999999 005309 NNNNNNNNNNNNNNYYY NNNNNN01Y 00280000003732 20090315 ",
"aid_year_id": 2,
"aid_application_id": null,
"imported_by_id": null,
"imported_at": null,
"sandbox": true
}
Retrieves a specific Isir object.
HTTP Request
GET /isirs/(isir)
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:
- Financial Aid
- Financial Admin
- Student Billing
LMS
Run LMS sync
curl "https://yourschool.populiweb.com/api2/lmssync/run" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{}
Begin a sync operation between Populi and an outside LMS (e.g. Canvas), if you have an integration configured.
HTTP Request
GET /lmssync/run
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
direction | No | enum (from_populi, to_populi, both) | Default is both |
Permissions
Only keys that have been granted Populi Account Administrator permissions may call this method.
Lead
The Lead object
The Lead object looks like this in JSON:
{
"object": "lead",
"id": 1,
"person_id": 1,
"status": "prospect",
"program_id": null,
"degree_id": null,
"specialization_id": null,
"academic_term_id": null,
"active": false,
"inactive_on": "2013-10-02",
"lead_source_id": null,
"ceeb_code": null,
"source_comment": null,
"education_level_id": 0,
"declined_reason_id": null,
"declined_reason_comment": null,
"counselor_id": null,
"highschool_graduation_date": null,
"most_recent": false,
"added_on": "2013-10-02",
"import_id": null,
"added_at": "2013-10-02T20:37:53+00:00",
"added_by_id": 185755,
"updated_at": "2013-10-02T14:35:29+00:00",
"updated_by_id": 1999,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
person_id | Yes | int |
status | Yes | enum (prospect, inquiry, application_started, application_completed, accepted, confirmed, enrolled) |
program_id | No | int |
degree_id | No | int |
specialization_id | No | int |
academic_term_id | No | int |
active | Yes | bool |
inactive_on | No | date |
lead_source_id | No | int |
ceeb_code | No | int |
source_comment | No | text |
education_level_id | No | int |
declined_reason_id | No | int |
declined_reason_comment | No | text |
counselor_id | No | int |
highschool_graduation_date | No | date |
most_recent | Yes | bool |
added_on | No | date |
import_id | No | int |
added_at | No | datetime |
added_by_id | No | int |
updated_at | No | datetime |
updated_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/leads" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"filter": {"0":{"logic":"ALL","fields":[{"name":"program","value":"NONE","positive":1}]}}
}' \
Example response:
{
"object": "list",
"count": 3,
"results": 3,
"results_per_page": 200,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "lead",
"id": 6,
"person_id": 12,
"status": "inquiry",
"program_id": null,
"degree_id": null,
"specialization_id": null,
"academic_term_id": null,
"active": true,
"inactive_on": null,
"lead_source_id": null,
"ceeb_code": null,
"source_comment": null,
"education_level_id": null,
"declined_reason_id": null,
"declined_reason_comment": null,
"counselor_id": 185037,
"highschool_graduation_date": null,
"most_recent": false,
"added_on": "2013-10-28",
"import_id": null,
"added_at": "2013-10-28T17:23:53+00:00",
"added_by_id": 185037,
"updated_at": "2013-10-28T17:23:53+00:00",
"updated_by_id": 185037,
"report_data": {
"person_first_name": "Alice",
"person_preferred_name": "",
"person_last_name": "Admin",
"program_name": null,
"academic_term_display_name": null,
"counselor_name": null,
"counselor_first_name": null,
"counselor_last_name": null,
"lead_source_name": null,
"row_id": 6
}
}
],
"sandbox": true
}
Retrieves all Lead objects that match given filter conditions.
HTTP Request
GET /leads
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
- person
- program
- degree
- specialization
- academic_term
- source
- counselor
- addresses
- phone_numbers
- email_addresses
- added_by
- updated_by
- status_changes
- tags
Filter Condition Parameters
These conditions can be used to narrow the results returned.
Name | Type |
---|---|
first_name | text |
last_name | text |
birthdate | date |
birthday | month_day |
age | integer |
gender | gender |
student_housing | student_housing |
status | enum |
program | program |
degree | degree |
specialization | specialization |
academic_term | academic_term |
counselor | admissions_counselor |
source | leadsource |
education_level | object id |
added_on | date |
updated_at | datetime |
active | bool |
inactive_on | date |
phone | phone |
has_verified_text_messaging_number | bool |
address_city | text |
address_state | state |
address_zip | alphanumeric |
address_country | country |
home_city | text |
home_state | state |
home_country | country |
citizenship | countryobject id |
declined_reason | object id |
provisional | bool |
has_active_student_role | has_active_student_role |
tag | tag |
custom_field | custom |
hsgrad_date | date |
import | object id |
Permissions
One of the following roles is required to call this method:
- Admissions Admin
- Admissions
- Academic Admin
- Registrar
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/leads/(lead)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "lead",
"id": 1,
"person_id": 1,
"status": "prospect",
"program_id": null,
"degree_id": null,
"specialization_id": null,
"academic_term_id": null,
"active": false,
"inactive_on": "2013-10-02",
"lead_source_id": null,
"ceeb_code": null,
"source_comment": null,
"education_level_id": 0,
"declined_reason_id": null,
"declined_reason_comment": null,
"counselor_id": null,
"highschool_graduation_date": null,
"most_recent": false,
"added_on": "2013-10-02",
"import_id": null,
"added_at": "2013-10-02T20:37:53+00:00",
"added_by_id": 185755,
"updated_at": "2013-10-02T14:35:29+00:00",
"updated_by_id": 1999,
"sandbox": true
}
Retrieves a specific Lead object.
HTTP Request
GET /leads/(lead)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- person
- program
- degree
- specialization
- academic_term
- source
- counselor
- addresses
- phone_numbers
- email_addresses
- added_by
- updated_by
- status_changes
- tags
Permissions
One of the following roles is required to call this method:
- Admissions Admin
- Admissions
- Academic Admin
- Registrar
index (person)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/leads" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "lead",
"id": 6,
"person_id": 12,
"status": "inquiry",
"program_id": null,
"degree_id": null,
"specialization_id": null,
"academic_term_id": null,
"active": true,
"inactive_on": null,
"lead_source_id": null,
"ceeb_code": null,
"source_comment": null,
"education_level_id": null,
"declined_reason_id": null,
"declined_reason_comment": null,
"counselor_id": 185037,
"highschool_graduation_date": null,
"most_recent": false,
"added_on": "2013-10-28",
"import_id": null,
"added_at": "2013-10-28T17:23:53+00:00",
"added_by_id": 185037,
"updated_at": "2013-10-28T17:23:53+00:00",
"updated_by_id": 185037
}
],
"sandbox": true
}
Retrieves all Lead objects tied to a specific Person.
HTTP Request
GET /people/(person)/leads
Parameters
None
Permissions
One of the following roles is required to call this method:
- Staff
create
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/leads" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
Example response:
{
"object": "lead",
"id": 8,
"person_id": 12,
"status": "prospect",
"program_id": null,
"degree_id": null,
"specialization_id": null,
"academic_term_id": null,
"active": true,
"inactive_on": null,
"lead_source_id": null,
"ceeb_code": null,
"source_comment": null,
"education_level_id": null,
"declined_reason_id": null,
"declined_reason_comment": null,
"counselor_id": null,
"highschool_graduation_date": null,
"most_recent": false,
"added_on": "2024-11-20",
"import_id": null,
"added_at": "2024-11-20T20:03:36+00:00",
"added_by_id": 22,
"updated_at": "2024-11-20T20:03:36+00:00",
"updated_by_id": 22,
"sandbox": true
}
Creates a new Lead object.
HTTP Request
POST /people/(person)/leads
Parameters
None
Permissions
One of the following roles is required to call this method:
- Admissions Admin
- Admissions
- Academic Admin
- Registrar
show (person)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/leads/(lead)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "lead",
"id": 1,
"person_id": 1,
"status": "prospect",
"program_id": null,
"degree_id": null,
"specialization_id": null,
"academic_term_id": null,
"active": false,
"inactive_on": "2013-10-02",
"lead_source_id": null,
"ceeb_code": null,
"source_comment": null,
"education_level_id": 0,
"declined_reason_id": null,
"declined_reason_comment": null,
"counselor_id": null,
"highschool_graduation_date": null,
"most_recent": false,
"added_on": "2013-10-02",
"import_id": null,
"added_at": "2013-10-02T20:37:53+00:00",
"added_by_id": 185755,
"updated_at": "2013-10-02T14:35:29+00:00",
"updated_by_id": 1999,
"sandbox": true
}
Retrieves a specific Lead object.
HTTP Request
GET /people/(person)/leads/(lead)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- person
- program
- degree
- specialization
- academic_term
- source
- counselor
- addresses
- phone_numbers
- email_addresses
- added_by
- updated_by
- status_changes
- tags
Permissions
One of the following roles is required to call this method:
- Admissions Admin
- Admissions
- Academic Admin
- Registrar
update
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/leads/(lead)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X PUT
Example response:
{
"object": "lead",
"id": 1,
"person_id": 1,
"status": "prospect",
"program_id": null,
"degree_id": null,
"specialization_id": null,
"academic_term_id": null,
"active": false,
"inactive_on": "2013-10-02",
"lead_source_id": null,
"ceeb_code": null,
"source_comment": null,
"education_level_id": 0,
"declined_reason_id": null,
"declined_reason_comment": null,
"counselor_id": null,
"highschool_graduation_date": null,
"most_recent": false,
"added_on": "2013-10-02",
"import_id": null,
"added_at": "2013-10-02T20:37:53+00:00",
"added_by_id": 185755,
"updated_at": "2013-10-02T14:35:29+00:00",
"updated_by_id": 1999,
"sandbox": true
}
Updates an existing Lead object.
HTTP Request
PUT /people/(person)/leads/(lead)
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
status | No | enum (prospect, inquiry, application_started, application_completed, accepted, confirmed, enrolled) | |
program_id | No | int | |
degree_id | No | int | |
specialization_id | No | int | |
academic_term_id | No | int | |
lead_source_id | No | int | |
source_comment | No | text | |
education_level_id | No | int | |
declined_reason_comment | No | text | |
declined_reason_id | No | int | |
counselor_id | No | int | |
hsgrad_date | No | date | |
active | No | bool |
Permissions
One of the following roles is required to call this method:
- Admissions Admin
- Admissions
- Academic Admin
- Registrar
delete
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/leads/(lead)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "lead",
"id": 1,
"deleted": true
}
Deletes an existing Lead object.
HTTP Request
DELETE /people/(person)/leads/(lead)
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:
- Admissions Admin
- Admissions
- Academic Admin
- Registrar
LeadSource
The LeadSource object
The LeadSource object looks like this in JSON:
{
"object": "lead_source",
"id": 1,
"parent_id": null,
"name": "Word of Mouth",
"retired_by_id": null,
"retired_at": null,
"added_at": "2020-01-01T00:00:00+00:00",
"added_by_id": 1,
"updated_at": null,
"updated_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
parent_id | No | int |
name | Yes | text (255) |
retired_by_id | No | int |
retired_at | No | datetime |
added_at | No | datetime |
added_by_id | No | int |
updated_at | No | datetime |
updated_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/leadsources" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "lead_source",
"id": 1,
"parent_id": null,
"name": "Word of Mouth",
"retired_by_id": null,
"retired_at": null,
"added_at": "2020-01-01T00:00:00+00:00",
"added_by_id": 1,
"updated_at": null,
"updated_by_id": null
}
],
"sandbox": true
}
Retrieves all LeadSource objects.
HTTP Request
GET /leadsources
Parameters
None
Permissions
One of the following roles is required to call this method:
- Admissions Admin
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/leadsources/(leadsource)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "lead_source",
"id": 1,
"parent_id": null,
"name": "Word of Mouth",
"retired_by_id": null,
"retired_at": null,
"added_at": "2020-01-01T00:00:00+00:00",
"added_by_id": 1,
"updated_at": null,
"updated_by_id": null,
"sandbox": true
}
Retrieves a specific LeadSource object.
HTTP Request
GET /leadsources/(leadsource)
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:
- Admissions Admin
LedgerEntry
The LedgerEntry object
The LedgerEntry object looks like this in JSON:
{
"object": "ledger_entry",
"id": 19,
"transaction_id": 9,
"direction": "credit",
"account_id": 2,
"actor_type": "person",
"actor_id": 1,
"debit": 0,
"credit": 1234.56,
"invoice_item_id": null,
"fund_id": null,
"is_deposit": false,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
transaction_id | Yes | int |
direction | Yes | enum (debit, credit) |
account_id | Yes | int |
actor_type | Yes | enum (person, contact_org, asset, liability) |
actor_id | Yes | int |
debit | Yes | decimal |
credit | Yes | decimal |
invoice_item_id | No | int |
fund_id | No | int |
is_deposit | Yes | bool |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/ledgerentries" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"filter": {"0":{"logic":"ALL","fields":[{"name":"account","value":123,"positive":1}]}}
}' \
Example response:
{
"object": "list",
"count": 0,
"results": 0,
"results_per_page": 200,
"pages": 0,
"page": 0,
"offset": 0,
"has_more": false,
"data": [],
"sandbox": true
}
Retrieves all LedgerEntry objects that match given filter conditions.
HTTP Request
GET /ledgerentries
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
- transaction
- fund
- account
Filter Condition Parameters
These conditions can be used to narrow the results returned.
Name | Type |
---|---|
time_period | date_period |
account | financial_accounts |
debit | decimal |
credit | decimal |
transaction_type | enum |
disbursement_type | enum |
term | academic_term |
degree | degree |
program | program |
transaction_number | integer |
Permissions
One of the following roles is required to call this method:
- Financial Admin
- Financial Auditor
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/ledgerentries/(ledgerentry)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "ledger_entry",
"id": 19,
"transaction_id": 9,
"direction": "credit",
"account_id": 2,
"actor_type": "person",
"actor_id": 1,
"debit": 0,
"credit": 1234.56,
"invoice_item_id": null,
"fund_id": null,
"is_deposit": false,
"sandbox": true
}
Retrieves a specific LedgerEntry object.
HTTP Request
GET /ledgerentries/(ledgerentry)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- transaction
- fund
- account
Permissions
One of the following roles is required to call this method:
- Financial Admin
- Financial Auditor
LessonPage
The LessonPage object
The LessonPage object looks like this in JSON:
{
"object": "lesson_page",
"id": 1,
"course_lesson_id": 1,
"name": "Page 1",
"order_id": 1,
"import_id": null,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
course_lesson_id | No | int |
name | No | text (255) |
order_id | Yes | int |
import_id | No | int |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/lessons/(courselesson)/pages" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "lesson_page",
"id": 3,
"course_lesson_id": 3,
"name": "Page 1",
"order_id": 1,
"import_id": null,
"added_at": null,
"added_by_id": null
}
],
"sandbox": true
}
Retrieves all LessonPage objects tied to a specific Courseoffering.
HTTP Request
GET /courseofferings/(courseoffering)/lessons/(courselesson)/pages
Parameters
None
Permissions
One of the following roles is required to call this method:
- Registrar
- Academic Admin
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/lessons/(courselesson)/pages/(lessonpage)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "lesson_page",
"id": 3,
"course_lesson_id": 3,
"name": "Page 1",
"order_id": 1,
"import_id": null,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Retrieves a specific LessonPage object.
HTTP Request
GET /courseofferings/(courseoffering)/lessons/(courselesson)/pages/(lessonpage)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- sections
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Registrar
- Academic Admin
Letter
The Letter object
The Letter object looks like this in JSON:
{
"object": "letter",
"id": 1,
"sender_id": 157,
"content": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Eget felis eget nunc lobortis mattis aliquam faucibus purus in. Ut porttitor leo a diam sollicitudin tempor id eu nisl. Congue quisque egestas diam in arcu. Cursus vitae congue mauris rhoncus aenean. Nisi est sit amet facilisis magna. Duis convallis convallis tellus id interdum. Tellus molestie nunc non blandit massa enim nec dui. At quis risus sed vulputate odio ut enim blandit.\r\n\r\nSincerely,\r\n\r\nLorem Ipsum, ESQ",
"print_on": "2024-02-28",
"num_recipients": 1,
"num_copies": 1,
"layout_id": 1,
"template_id": 1,
"mailing_list_id": null,
"communication_plan_id": 1,
"printed_at": null,
"printed_by_id": null,
"added_at": "2024-02-23T20:17:06+00:00",
"added_by_id": 157,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
sender_id | Yes | int |
content | No | text |
print_on | No | date |
num_recipients | Yes | int |
num_copies | Yes | int |
layout_id | Yes | int |
template_id | No | int |
mailing_list_id | No | int |
communication_plan_id | No | int |
printed_at | No | datetime |
printed_by_id | No | int |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/letters/(letter)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "letter",
"id": 1,
"sender_id": 157,
"content": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Eget felis eget nunc lobortis mattis aliquam faucibus purus in. Ut porttitor leo a diam sollicitudin tempor id eu nisl. Congue quisque egestas diam in arcu. Cursus vitae congue mauris rhoncus aenean. Nisi est sit amet facilisis magna. Duis convallis convallis tellus id interdum. Tellus molestie nunc non blandit massa enim nec dui. At quis risus sed vulputate odio ut enim blandit.\r\n\r\nSincerely,\r\n\r\nLorem Ipsum, ESQ",
"print_on": "2024-02-28",
"num_recipients": 1,
"num_copies": 1,
"layout_id": 1,
"template_id": 1,
"mailing_list_id": null,
"communication_plan_id": 1,
"printed_at": null,
"printed_by_id": null,
"added_at": "2024-02-23T20:17:06+00:00",
"added_by_id": 157,
"sandbox": true
}
Retrieves a specific Letter object.
HTTP Request
GET /letters/(letter)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- recipients
Permissions
One of the following roles is required to call this method:
- Staff
LetterTemplate
The LetterTemplate object
The LetterTemplate object looks like this in JSON:
{
"object": "letter_template",
"id": 6,
"name": "Acceptance Letter",
"letter": "{!DATE!}\nDear {!RECIPIENT_FIRSTNAME!},Congrats!\n\nSincerely,\n\n\n\n{!SENDER_FIRSTNAME!} {!SENDER_LASTNAME!}\n{!SENDER_TITLE!}",
"print_layout_id": 6,
"added_at": "2010-05-07T22:54:01+00:00",
"added_by_id": 1999,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
name | Yes | text (200) |
letter | Yes | text |
print_layout_id | No | int |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/lettertemplates" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "letter_template",
"id": 6,
"name": "Acceptance Letter",
"letter": "{!DATE!}\nDear {!RECIPIENT_FIRSTNAME!},Congrats!\n\nSincerely,\n\n\n\n{!SENDER_FIRSTNAME!} {!SENDER_LASTNAME!}\n{!SENDER_TITLE!}",
"print_layout_id": 6,
"added_at": "2010-05-07T22:54:01+00:00",
"added_by_id": 1999
}
],
"sandbox": true
}
Retrieves all LetterTemplate objects.
HTTP Request
GET /lettertemplates
Parameters
None
Permissions
One of the following roles is required to call this method:
- Staff
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/lettertemplates/(lettertemplate)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "letter_template",
"id": 6,
"name": "Acceptance Letter",
"letter": "{!DATE!}\nDear {!RECIPIENT_FIRSTNAME!},Congrats!\n\nSincerely,\n\n\n\n{!SENDER_FIRSTNAME!} {!SENDER_LASTNAME!}\n{!SENDER_TITLE!}",
"print_layout_id": 6,
"added_at": "2010-05-07T22:54:01+00:00",
"added_by_id": 1999,
"sandbox": true
}
Retrieves a specific LetterTemplate object.
HTTP Request
GET /lettertemplates/(lettertemplate)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- permissions
- communication_plan_events
- print_layout
- categories
Permissions
One of the following roles is required to call this method:
- Staff
LibraryResource
The LibraryResource object
The LibraryResource object looks like this in JSON:
{
"object": "library_resource",
"id": 6,
"resource_type_id": 11,
"title": "Purgatorio",
"authors": "Dante",
"replacement_price": null,
"lccn": null,
"total_loans": null,
"total_recommendations": null,
"image_file_id": null,
"import_id": null,
"added_at": null,
"added_by_id": null,
"updated_at": "2011-02-01T19:06:08+00:00",
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
resource_type_id | No | int |
title | No | text (500) |
authors | No | text (500) |
replacement_price | No | decimal |
lccn | No | text (50) |
total_loans | Yes | int |
total_recommendations | Yes | int |
image_file_id | No | int |
import_id | No | int |
added_at | No | datetime |
added_by_id | No | int |
updated_at | No | datetime |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/libraryresources" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"filter": []
}' \
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": 200,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "library_resource",
"id": 6,
"resource_type_id": 11,
"title": "Purgatorio",
"authors": "Dante",
"replacement_price": null,
"lccn": null,
"total_loans": null,
"total_recommendations": null,
"image_file_id": null,
"import_id": null,
"added_at": null,
"added_by_id": null,
"updated_at": "2011-02-01T19:06:08+00:00",
"report_data": {
"copies": 0,
"resource_type": null
}
}
],
"sandbox": true
}
Retrieves all LibraryResource objects that match given filter conditions.
HTTP Request
GET /libraryresources
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
- resource_copies
Filter Condition Parameters
These conditions can be used to narrow the results returned.
Name | Type |
---|---|
title | text |
authors | text |
added_at | datetime |
resource_copies | integer |
resource_type | text |
Permissions
One of the following roles is required to call this method:
- Library Admin
- Library Staff
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/libraryresources/(libraryresource)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "library_resource",
"id": 6,
"resource_type_id": 11,
"title": "Purgatorio",
"authors": "Dante",
"replacement_price": null,
"lccn": null,
"total_loans": null,
"total_recommendations": null,
"image_file_id": null,
"import_id": null,
"added_at": null,
"added_by_id": null,
"updated_at": "2011-02-01T19:06:08+00:00",
"sandbox": true
}
Retrieves a specific LibraryResource object.
HTTP Request
GET /libraryresources/(libraryresource)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- resource_copies
Link
The Link object
The Link object looks like this in JSON:
{
"object": "link",
"id": 3,
"owner_type": "instance",
"owner_id": 21908,
"name": "Professor Website",
"description": null,
"order_id": 1,
"url": "https:\/\/www.example.com",
"lti_tool_id": null,
"status": "active",
"import_id": null,
"lti_resource_id": null,
"lti_resource_tag": null,
"cloned_from_offering_ids": null,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | No | int |
owner_type | Yes | enum (instance, lesson, assignment, link_list) |
owner_id | Yes | int |
name | Yes | text (500) |
description | Yes | text |
order_id | No | int |
url | Yes | text (2100) |
lti_tool_id | No | int |
status | Yes | enum (active, deleted) |
import_id | No | int |
lti_resource_id | No | text (500) |
lti_resource_tag | No | text (100) |
cloned_from_offering_ids | No | text (255) |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index (courselesson)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/courselessons/(courselesson)/links" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 2,
"results": 2,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "link",
"id": 1,
"owner_type": "lesson",
"owner_id": 1,
"name": "SoftChalk WWII",
"description": "blah blah",
"order_id": 1,
"url": "https:\/\/www.softchalkcloud.com\/scorecenter\/lti\/6geILQsDzBpFVA",
"lti_tool_id": 1,
"status": "active",
"import_id": null,
"lti_resource_id": null,
"lti_resource_tag": null,
"cloned_from_offering_ids": null,
"added_at": null,
"added_by_id": null
}
],
"sandbox": true
}
Retrieves all Links from a course lesson.
HTTP Request
GET /courselessons/(courselesson)/links
Parameters
None
Permissions
One of the following roles is required to call this method:
- Registrar
- Academic Admin
show (courselesson)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/courselessons/(courselesson)/links/(link)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "link",
"id": 3,
"owner_type": "instance",
"owner_id": 21908,
"name": "Professor Website",
"description": null,
"order_id": 1,
"url": "https:\/\/www.example.com",
"lti_tool_id": null,
"status": "active",
"import_id": null,
"lti_resource_id": null,
"lti_resource_tag": null,
"cloned_from_offering_ids": null,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Retrieves a specific Link from a course lesson.
HTTP Request
GET /courselessons/(courselesson)/links/(link)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- custom_params
Permissions
One of the following roles is required to call this method:
- Registrar
- Academic Admin
update (courselesson)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/courselessons/(courselesson)/links/(link)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X PUT
-d '{
"custom_params": "{\"name1\":\"value1\",\"name2\":\"value2\"}"
}' \
Example response:
{
"object": "link",
"id": 3,
"owner_type": "instance",
"owner_id": 21908,
"name": "Professor Website",
"description": null,
"order_id": 1,
"url": "https:\/\/www.example.com",
"lti_tool_id": null,
"status": "active",
"import_id": null,
"lti_resource_id": null,
"lti_resource_tag": null,
"cloned_from_offering_ids": null,
"custom_params": [
{
"object": "lti_param",
"id": 2,
"owner_type": "link",
"owner_id": 3,
"param_name": "name1",
"param_value": "value1",
"param_type": "resource_link",
"added_at": "2024-11-20T20:03:33+00:00",
"added_by_id": 22,
"updated_at": "2024-11-20T20:03:33+00:00",
"updated_by_id": 22
},
{
"object": "lti_param",
"id": 3,
"owner_type": "link",
"owner_id": 3,
"param_name": "name2",
"param_value": "value2",
"param_type": "resource_link",
"added_at": "2024-11-20T20:03:33+00:00",
"added_by_id": 22,
"updated_at": "2024-11-20T20:03:33+00:00",
"updated_by_id": 22
}
],
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Updates a specific Link in a course lesson.
HTTP Request
PUT /courselessons/(courselesson)/links/(link)
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
name | No | text (500) | |
url | No | text (2100) | |
custom_params | No | Object with key/value pairs | Custom parameters for LTI links. Existing parameters will be updated if a matching parameter name is found. Any existing parameters not included in the object will be deleted. |
Permissions
One of the following roles is required to call this method:
- Registrar
- Academic Admin
delete (courselesson)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/courselessons/(courselesson)/links/(link)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "link",
"id": 2,
"deleted": true
}
Deletes a specific Link from a course lesson.
HTTP Request
DELETE /courselessons/(courselesson)/links/(link)
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:
- Registrar
- Academic Admin
index (syllabus and lessons)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/links" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"filter": []
}' \
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": 200,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "link",
"id": 3,
"owner_type": "instance",
"owner_id": 21908,
"name": "Professor Website",
"description": null,
"order_id": 1,
"url": "https:\/\/www.example.com",
"lti_tool_id": null,
"status": "active",
"import_id": null,
"lti_resource_id": null,
"lti_resource_tag": null,
"cloned_from_offering_ids": null,
"custom_params": [],
"added_at": null,
"added_by_id": null,
"report_data": []
}
],
"sandbox": true
}
Retrieves all Links from the course syllabus page and course lessons.
HTTP Request
GET /courseofferings/(courseoffering)/links
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. |
Filter Condition Parameters
These conditions can be used to narrow the results returned.
Name | Type |
---|---|
id | integer |
name | text |
url | text |
lti_tool_id | integer |
owner_id | integer |
owner_type | text |
lti_resource_id | text |
lti_resource_tag | text |
import_id | integer |
status | text |
added_at | datetime |
added_by | integer |
deleted_at | datetime |
deleted_by | integer |
Permissions
One of the following roles is required to call this method:
- Registrar
- Academic Admin
create (syllabus)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/links" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"name": "Author Interview",
"url": "http:\/\/www.youtube.com\/something"
}' \
Example response:
{
"object": "link",
"id": 4,
"owner_type": "instance",
"owner_id": 21908,
"name": "Author Interview",
"description": null,
"order_id": null,
"url": "http:\/\/www.youtube.com\/something",
"lti_tool_id": null,
"status": "active",
"import_id": null,
"lti_resource_id": null,
"lti_resource_tag": null,
"cloned_from_offering_ids": null,
"added_at": "2024-11-20T20:03:33+00:00",
"added_by_id": 22,
"sandbox": true
}
Creates a new Link on the course syllabus page.
HTTP Request
POST /courseofferings/(courseoffering)/links
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
name | Yes | text (500) | |
url | Yes | text (2100) |
Permissions
One of the following roles is required to call this method:
- Registrar
- Academic Admin
show (syllabus)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/links/(link)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "link",
"id": 3,
"owner_type": "instance",
"owner_id": 21908,
"name": "Professor Website",
"description": null,
"order_id": 1,
"url": "https:\/\/www.example.com",
"lti_tool_id": null,
"status": "active",
"import_id": null,
"lti_resource_id": null,
"lti_resource_tag": null,
"cloned_from_offering_ids": null,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Retrieves a specific Link from the course syllabus page.
HTTP Request
GET /courseofferings/(courseoffering)/links/(link)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- custom_params
Permissions
One of the following roles is required to call this method:
- Registrar
- Academic Admin
update (syllabus)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/links/(link)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X PUT
-d '{
"custom_params": "{\"name1\":\"value1\",\"name2\":\"value2\"}"
}' \
Example response:
{
"object": "link",
"id": 3,
"owner_type": "instance",
"owner_id": 21908,
"name": "Professor Website",
"description": null,
"order_id": 1,
"url": "https:\/\/www.example.com",
"lti_tool_id": null,
"status": "active",
"import_id": null,
"lti_resource_id": null,
"lti_resource_tag": null,
"cloned_from_offering_ids": null,
"custom_params": [
{
"object": "lti_param",
"id": 2,
"owner_type": "link",
"owner_id": 3,
"param_name": "name1",
"param_value": "value1",
"param_type": "resource_link",
"added_at": "2024-11-20T20:03:33+00:00",
"added_by_id": 22,
"updated_at": "2024-11-20T20:03:33+00:00",
"updated_by_id": 22
},
{
"object": "lti_param",
"id": 3,
"owner_type": "link",
"owner_id": 3,
"param_name": "name2",
"param_value": "value2",
"param_type": "resource_link",
"added_at": "2024-11-20T20:03:33+00:00",
"added_by_id": 22,
"updated_at": "2024-11-20T20:03:33+00:00",
"updated_by_id": 22
}
],
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Updates a Link on the course syllabus page.
HTTP Request
PUT /courseofferings/(courseoffering)/links/(link)
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
name | No | text (500) | |
url | No | text (2100) | |
custom_params | No | Object with key/value pairs | Custom parameters for LTI links. Existing parameters will be updated if a matching parameter name is found. Any existing parameters not included in the object will be deleted. |
Permissions
One of the following roles is required to call this method:
- Registrar
- Academic Admin
delete (syllabus)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/links/(link)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "link",
"id": 1,
"deleted": true
}
Deletes a Link from the course syllabus page.
HTTP Request
DELETE /courseofferings/(courseoffering)/links/(link)
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:
- Registrar
- Academic Admin
Localization
The Localization object
The Localization object looks like this in JSON:
{
"object": "localization",
"id": 1,
"name": "Spanish",
"country_code": null,
"language_code": null,
"default": false,
"base_localization_id": 1,
"added_at": "2022-07-13T17:43:08+00:00",
"added_by_id": 10,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
name | No | text (200) |
country_code | No | char |
language_code | No | text (20) |
default | No | -- |
base_localization_id | No | int |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/localizations" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "localization",
"id": 1,
"name": "Spanish",
"country_code": null,
"language_code": null,
"default": false,
"base_localization_id": 1,
"added_at": "2022-07-13T17:43:08+00:00",
"added_by_id": 10
}
],
"sandbox": true
}
Retrieves all Localization objects.
HTTP Request
GET /localizations
Parameters
None
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/localizations/(localization)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "localization",
"id": 1,
"name": "Spanish",
"country_code": null,
"language_code": null,
"default": false,
"base_localization_id": 1,
"added_at": "2022-07-13T17:43:08+00:00",
"added_by_id": 10,
"sandbox": true
}
Retrieves a specific Localization object.
HTTP Request
GET /localizations/(localization)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- translations
LockArea
The LockArea object
The LockArea object looks like this in JSON:
{
"object": "lock_area",
"id": 1,
"lock_type_id": 1,
"lock_area": "grades",
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
lock_type_id | Yes | int |
lock_area | Yes | enum (charge_to_account, courses, grades, registration, transcript) |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/lockareas" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 7,
"results": 7,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "lock_area",
"id": 1,
"lock_type_id": 1,
"lock_area": "grades"
}
],
"sandbox": true
}
Retrieves all LockArea objects.
HTTP Request
GET /lockareas
Parameters
None
Permissions
One of the following roles is required to call this method:
- Staff
- Development
LockStudent
The LockStudent object
The LockStudent object looks like this in JSON:
{
"object": "lock_student",
"id": 1,
"person_id": 2,
"lock_type_id": 1,
"reason": "Unpaid invoices.",
"note": null,
"added_at": "2022-07-13T17:58:35+00:00",
"added_by_id": 16,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
person_id | Yes | int |
lock_type_id | Yes | int |
reason | No | text |
note | No | text |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index (person)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/locks" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 2,
"results": 2,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "lock_student",
"id": 2,
"person_id": 12,
"lock_type_id": 1,
"reason": "Unpaid parking tickets.",
"note": null,
"added_at": "2022-08-13T17:58:35+00:00",
"added_by_id": 16
}
],
"sandbox": true
}
Retrieves all LockStudent objects tied to a specific Person.
HTTP Request
GET /people/(person)/locks
Parameters
None
Permissions
One of the following roles is required to call this method:
- Staff
create_lock
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/locks/create" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"lock_type_id": "3"
}' \
Example response:
{
"object": "lock_student",
"id": 4,
"person_id": 12,
"lock_type_id": 3,
"reason": null,
"note": null,
"added_at": "2024-11-20T20:03:35+00:00",
"added_by_id": 22,
"sandbox": true
}
HTTP Request
GET /people/(person)/locks/create
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
lock_type_id | Yes | int | |
reason | No | text | |
note | No | text |
Permissions
One of the following roles is required to call this method:
- Staff
- Advisor
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/locks/(lockstudent)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "lock_student",
"id": 2,
"person_id": 12,
"lock_type_id": 1,
"reason": "Unpaid parking tickets.",
"note": null,
"added_at": "2022-08-13T17:58:35+00:00",
"added_by_id": 16,
"sandbox": true
}
Retrieves a specific LockStudent object.
HTTP Request
GET /people/(person)/locks/(lockstudent)
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:
- Staff
- Advisor
update_lock
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/locks/(lockstudent)/update" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X PUT
Example response:
{
"object": "lock_student",
"id": 2,
"person_id": 12,
"lock_type_id": 1,
"reason": null,
"note": null,
"added_at": "2022-08-13T17:58:35+00:00",
"added_by_id": 16,
"sandbox": true
}
Updates the lock attribute of an existing LockStudent object.
HTTP Request
PUT /people/(person)/locks/(lockstudent)/update
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
reason | No | text | |
note | No | text |
Permissions
One of the following roles is required to call this method:
- Staff
- Advisor
delete_lock
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/locks/(lockstudent)/delete" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "lock_student",
"id": 2,
"deleted": true
}
HTTP Request
GET /people/(person)/locks/(lockstudent)/delete
Parameters
None
Permissions
One of the following roles is required to call this method:
- Staff
- Advisor
LockType
The LockType object
The LockType object looks like this in JSON:
{
"object": "lock_type",
"id": 4,
"name": "Courses",
"advisor_permission": "read",
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
name | Yes | text (100) |
advisor_permission | Yes | enum (none, read, write) |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/locktypes" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 4,
"results": 4,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "lock_type",
"id": 4,
"name": "Courses",
"advisor_permission": "read"
}
],
"sandbox": true
}
Retrieves all LockType objects.
HTTP Request
GET /locktypes
Parameters
None
Permissions
One of the following roles is required to call this method:
- Staff
- Development
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/locktypes/(locktype)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "lock_type",
"id": 4,
"name": "Courses",
"advisor_permission": "read",
"sandbox": true
}
Retrieves a specific LockType object.
HTTP Request
GET /locktypes/(locktype)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- roles
- areas
- students
Permissions
One of the following roles is required to call this method:
- Academic Admin
- Registrar
- Academic Auditor
- Development
MailingList
The MailingList object
The MailingList object looks like this in JSON:
{
"object": "mailing_list",
"id": 1,
"name": "Underclassmen",
"include_spouses": true,
"merge_spouses": false,
"include_org_members": false,
"include_orgs": false,
"added_by_name": "Elizabeth Fox",
"added_at": "2020-01-05T00:20:21+00:00",
"added_by_id": 1,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
name | Yes | text (255) |
include_spouses | Yes | bool |
merge_spouses | Yes | bool |
include_org_members | Yes | bool |
include_orgs | Yes | bool |
added_by_name | No | text |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/mailinglists" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "mailing_list",
"id": 1,
"name": "Underclassmen",
"include_spouses": true,
"merge_spouses": false,
"include_org_members": false,
"include_orgs": false,
"added_by_name": "Elizabeth Fox",
"added_at": "2020-01-05T00:20:21+00:00",
"added_by_id": 1
}
],
"sandbox": true
}
Retrieves all MailingList objects.
HTTP Request
GET /mailinglists
Parameters
None
Permissions
One of the following roles is required to call this method:
- Staff
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/mailinglists/(mailinglist)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "mailing_list",
"id": 1,
"name": "Underclassmen",
"include_spouses": true,
"merge_spouses": false,
"include_org_members": false,
"include_orgs": false,
"added_by_name": "Elizabeth Fox",
"added_at": "2020-01-05T00:20:21+00:00",
"added_by_id": 1,
"sandbox": true
}
Retrieves a specific MailingList object.
HTTP Request
GET /mailinglists/(mailinglist)
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:
- Staff
MealPlan
The MealPlan object
The MealPlan object looks like this in JSON:
{
"object": "meal_plan",
"id": 1,
"name": "Gold",
"amount": 1500,
"status": "active",
"external_account_id": 1,
"account_id": 1,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
name | Yes | text (100) |
amount | Yes | decimal |
status | Yes | enum (active, retired, deleted) |
external_account_id | Yes | int |
account_id | Yes | int |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/mealplans" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 2,
"results": 2,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "meal_plan",
"id": 1,
"name": "Gold",
"amount": 1500,
"status": "active",
"external_account_id": 1,
"account_id": 1,
"added_at": null,
"added_by_id": null
}
],
"sandbox": true
}
Retrieves all MealPlan objects.
HTTP Request
GET /mealplans
Parameters
None
Permissions
One of the following roles is required to call this method:
- Financial Auditor
- Campus Life
- Financial Admin
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/mealplans/(mealplan)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "meal_plan",
"id": 1,
"name": "Gold",
"amount": 1500,
"status": "active",
"external_account_id": 1,
"account_id": 1,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Retrieves a specific MealPlan object.
HTTP Request
GET /mealplans/(mealplan)
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:
- Financial Auditor
- Campus Life
- Financial Admin
MealPlanStudent
The MealPlanStudent object
The MealPlanStudent object looks like this in JSON:
{
"object": "meal_plan_student",
"id": 6,
"term_id": 73,
"student_id": 61,
"plan_id": 1,
"amount": 1500,
"adjustment": 0,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
term_id | Yes | int |
student_id | Yes | int |
plan_id | Yes | int |
amount | Yes | decimal |
adjustment | Yes | decimal |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/mealplans" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "meal_plan_student",
"id": 8,
"term_id": 7,
"student_id": 12,
"plan_id": 2,
"amount": 1500,
"adjustment": 0,
"meal_plan": {
"object": "meal_plan",
"id": 2,
"name": "Silver",
"amount": 1255.55,
"status": "active",
"external_account_id": 1,
"account_id": 1,
"added_at": null,
"added_by_id": null
},
"added_at": null,
"added_by_id": null
}
],
"sandbox": true
}
Retrieves all MealPlanStudent objects tied to a specific Person.
HTTP Request
GET /people/(person)/mealplans
Parameters
None
Permissions
One of the following roles is required to call this method:
- Financial Auditor
- Campus Life
- Financial Admin
- Student Billing
create
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/mealplans" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"academic_term_id": 8,
"meal_plan_id": 1
}' \
Example response:
{
"object": "meal_plan_student",
"id": 183,
"term_id": 8,
"student_id": 12,
"plan_id": 1,
"amount": 0,
"adjustment": 0,
"meal_plan": {
"object": "meal_plan",
"id": 1,
"name": "Gold",
"amount": 1500,
"status": "active",
"external_account_id": 1,
"account_id": 1,
"added_at": null,
"added_by_id": null
},
"added_at": "2024-11-20T20:03:36+00:00",
"added_by_id": 22,
"sandbox": true
}
Creates a new MealPlanStudent object.
HTTP Request
POST /people/(person)/mealplans
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
academic_term_id | Yes | int | |
meal_plan_id | Yes | int |
Permissions
One of the following roles is required to call this method:
- Financial Admin
- Student Billing
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/mealplans/(mealplanstudent)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "meal_plan_student",
"id": 7,
"term_id": 8,
"student_id": 16,
"plan_id": 1,
"amount": 1500,
"adjustment": 0,
"meal_plan": {
"object": "meal_plan",
"id": 1,
"name": "Gold",
"amount": 1500,
"status": "active",
"external_account_id": 1,
"account_id": 1,
"added_at": null,
"added_by_id": null
},
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Retrieves a specific MealPlanStudent object.
HTTP Request
GET /people/(person)/mealplans/(mealplanstudent)
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:
- Financial Auditor
- Campus Life
- Financial Admin
- Student Billing
update
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/mealplans/(mealplanstudent)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X PUT
Example response:
{
"object": "meal_plan_student",
"id": 7,
"term_id": 8,
"student_id": 16,
"plan_id": 1,
"amount": 0,
"adjustment": 0,
"meal_plan": {
"object": "meal_plan",
"id": 1,
"name": "Gold",
"amount": 1500,
"status": "active",
"external_account_id": 1,
"account_id": 1,
"added_at": null,
"added_by_id": null
},
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Updates an existing MealPlanStudent object.
HTTP Request
PUT /people/(person)/mealplans/(mealplanstudent)
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
meal_plan_id | No | int |
Permissions
One of the following roles is required to call this method:
- Financial Admin
- Student Billing
delete
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/mealplans/(mealplanstudent)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "meal_plan_student",
"id": 7,
"deleted": true
}
Deletes an existing MealPlanStudent object.
HTTP Request
DELETE /people/(person)/mealplans/(mealplanstudent)
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:
- Financial Admin
- Student Billing
News
The News object
The News object looks like this in JSON:
{
"object": "news",
"id": 8,
"title": "New Coffee Shop",
"content": "Check out the new coffee shop in the lobby of the school admin building!",
"publish": true,
"publish_time": "2008-01-29T01:08:56+00:00",
"pin": false,
"pin_until": null,
"allow_comments": true,
"visibility": "all",
"added_at": "2008-01-29T01:08:56+00:00",
"added_by_id": 16,
"updated_at": "2008-02-13T21:57:06+00:00",
"updated_by_id": 16,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | No | int |
title | Yes | text (200) |
content | Yes | text |
publish | No | bool |
publish_time | No | datetime |
pin | No | bool |
pin_until | No | date |
allow_comments | Yes | bool |
visibility | Yes | enum (all, select) |
added_at | Yes | datetime |
added_by_id | No | int |
updated_at | No | datetime |
updated_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/news" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"filter": {"0":{"logic":"ALL","fields":[{"name":"posted_by","value":{"display_text":"Blah","id":"123"},"positive":1}]}}
}' \
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": 200,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "news",
"id": 8,
"title": "New Coffee Shop",
"content": "Check out the new coffee shop in the lobby of the school admin building!",
"publish": true,
"publish_time": "2008-01-29T01:08:56+00:00",
"pin": false,
"pin_until": null,
"allow_comments": true,
"visibility": "all",
"added_at": "2008-01-29T01:08:56+00:00",
"added_by_id": 16,
"updated_at": "2008-02-13T21:57:06+00:00",
"updated_by_id": 16,
"report_data": {
"author_name": "Academic Admin",
"campus_names": null
}
}
],
"sandbox": true
}
Retrieves all News objects that match given filter conditions.
HTTP Request
GET /news
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
- comments
- likes
- campuses
- roles
- files
Filter Condition Parameters
These conditions can be used to narrow the results returned.
Name | Type |
---|---|
title | text |
publish | bool |
publish_time | datetime |
pin | bool |
pin_until | date |
allow_comments | bool |
posted_time | datetime |
posted_by | search |
Permissions
One of the following roles is required to call this method:
- Staff
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/news/(news)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "news",
"id": 8,
"title": "New Coffee Shop",
"content": "Check out the new coffee shop in the lobby of the school admin building!",
"publish": true,
"publish_time": "2008-01-29T01:08:56+00:00",
"pin": false,
"pin_until": null,
"allow_comments": true,
"visibility": "all",
"added_at": "2008-01-29T01:08:56+00:00",
"added_by_id": 16,
"updated_at": "2008-02-13T21:57:06+00:00",
"updated_by_id": 16,
"sandbox": true
}
Retrieves a specific News object.
HTTP Request
GET /news/(news)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- comments
- likes
- campuses
- roles
- files
Permissions
One of the following roles is required to call this method:
- Staff
Note
The Note object
The Note object looks like this in JSON:
{
"object": "note",
"id": 14,
"owner_type": "person",
"owner_id": 1,
"content": "They said on the phone they are deferring their enrollment.",
"hidden": false,
"added_at": "2018-01-30T00:04:04+00:00",
"added_by_id": 2,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
owner_type | Yes | enum (person, course, assignment, student, contact_org, contact, transaction, ledger_entry, todo, roster, bookstore_order, aid_year_award, room, transcript) |
owner_id | Yes | int |
content | Yes | text |
hidden | No | bool |
added_at | Yes | datetime |
added_by_id | No | int |
sandbox | No | -- |
index (organization)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/organizations/(organization)/notes" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "note",
"id": 16,
"owner_type": "contact_org",
"owner_id": 1,
"content": "Has 5 internship slots open for this summer.",
"hidden": false,
"added_at": "2020-01-30T00:04:04+00:00",
"added_by_id": 2
}
],
"sandbox": true
}
Retrieves all Note objects tied to a specific Organization.
HTTP Request
GET /organizations/(organization)/notes
Parameters
None
Expandable Properties
- flag
create (organization)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/organizations/(organization)/notes" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"note": "blah blah",
"is_private": "1",
"visibility_role_ids": "[7, 13, 14]"
}' \
Example response:
"Example response not available."
Creates a new Note object.
HTTP Request
POST /organizations/(organization)/notes
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
note | Yes | text | |
is_private | No | bool | |
visibility_role_ids | Yes | array of Role ids | |
is_flagged | No | bool |
You can optionally include a file upload with this route. Use a form post parameter called "file". Read about request and response format to see how parameters need to be specified differently when there is a file upload.
index (person)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/notes" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "note",
"id": 15,
"owner_type": "person",
"owner_id": 12,
"content": "Called and set up a school tour.",
"hidden": false,
"added_at": "2020-01-30T00:04:04+00:00",
"added_by_id": 2
}
],
"sandbox": true
}
Retrieves all Note objects tied to a specific Person.
HTTP Request
GET /people/(person)/notes
Parameters
None
Expandable Properties
- flag
create (person)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/notes" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"note": "blah blah",
"is_private": "1",
"visibility_role_ids": "[7, 13, 14]"
}' \
Example response:
{
"object": "note",
"id": 17,
"owner_type": "person",
"owner_id": 12,
"content": "blah blah",
"hidden": false,
"added_at": "2024-11-20T20:03:32+00:00",
"added_by_id": 22,
"sandbox": true
}
Creates a new Note object.
HTTP Request
POST /people/(person)/notes
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
note | Yes | text | |
is_private | No | bool | |
visibility_role_ids | No | array of Role ids | Default is [4] |
is_flagged | No | bool |
You can optionally include a file upload with this route. Use a form post parameter called "file". Read about request and response format to see how parameters need to be specified differently when there is a file upload.
Occupation
The Occupation object
The Occupation object looks like this in JSON:
{
"object": "occupation",
"id": 1,
"soc_code": "11-1011",
"name": "Chief Executives",
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
soc_code | No | text (10) |
name | No | text (255) |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/occupations" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "occupation",
"id": 1,
"soc_code": "11-1011",
"name": "Chief Executives"
}
],
"sandbox": true
}
Retrieves all Occupation objects.
HTTP Request
GET /occupations
Parameters
None
Permissions
Any role may call this method.
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/occupations/(occupation)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "occupation",
"id": 1,
"soc_code": "11-1011",
"name": "Chief Executives",
"sandbox": true
}
Retrieves a specific Occupation object.
HTTP Request
GET /occupations/(occupation)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Permissions
Any role may call this method.
OnlinePayment
The OnlinePayment object
The OnlinePayment object looks like this in JSON:
{
"object": "online_payment",
"id": 6,
"status": "construction",
"type": "credit_card",
"link_type": null,
"link_id": null,
"person_id": null,
"amount": 0,
"net_amount": null,
"preset_amount": null,
"first_name": "Jon",
"last_name": "Doe",
"street": "1000 1st Av",
"city": "Moscow",
"state": "ID",
"postal": "10101",
"country": "US",
"email": "jon@hotmail.org",
"phone": "777-888-7777",
"cc_status": null,
"cc_last_digits": "1111",
"cc_bin": null,
"cc_is_international": false,
"cc_expiration_month": 2,
"cc_expiration_year": 2010,
"cc_transaction_id": "A050B0F28A084EF1B9E445D2792A85B6",
"cc_approval_code": "17360",
"cc_processing_fee": null,
"cc_status_code": "APPROVED",
"cc_status_msg": "APPROVED",
"bank_name": null,
"bank_account_last_four": null,
"last_settlement_check_at": null,
"ach_status": null,
"ach_return_id": null,
"ach_settled_response": null,
"ach_return_message": null,
"ach_transaction_id": null,
"paypal_order_id": null,
"paypal_payer_id": null,
"paypal_authorization_id": null,
"paypal_status": null,
"reference_number": null,
"organization_name": null,
"payment_gateway_id": null,
"payment_gateway_processing_fee": null,
"gateway_customer_token": null,
"gateway_source_token": null,
"payment_frequency": null,
"recurring_interval": null,
"recurring_day": false,
"recurring_until": null,
"recurring_max_times": null,
"recurring_money_transfer_id": null,
"comment": null,
"donate_page_id": null,
"donation_campaign_id": null,
"donation_appeal_id": null,
"draft_date_id": null,
"back_url": null,
"payment_secret": null,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
status | Yes | enum (construction, checkout, payment, processing, complete, error) |
type | Yes | enum (credit_card, ach, paypal, charge_to_account) |
link_type | No | enum (payment, donation, application, bookstore_order, transcript_request, form_response, recurring_money_transfer, populi_client) |
link_id | No | int |
person_id | No | int |
amount | Yes | decimal |
net_amount | No | decimal |
preset_amount | No | decimal |
first_name | No | text (75) |
last_name | No | text (75) |
street | No | text (150) |
city | No | text (100) |
state | No | text (50) |
postal | No | text (50) |
country | No | text (50) |
No | text (75) | |
phone | No | text (50) |
cc_status | No | enum (authorized, captured, error, refunded, initialized, setup_complete) |
cc_last_digits | No | char |
cc_bin | No | char |
cc_is_international | Yes | bool |
cc_expiration_month | No | int |
cc_expiration_year | No | int |
cc_transaction_id | No | text (300) |
cc_approval_code | No | text (50) |
cc_processing_fee | No | decimal |
cc_status_code | No | text (50) |
cc_status_msg | No | text (300) |
bank_name | No | text (200) |
bank_account_last_four | No | char |
last_settlement_check_at | No | datetime |
ach_status | No | enum (pending, settled, error, initialized, setup_complete) |
ach_return_id | No | text (200) |
ach_settled_response | No | text (5000) |
ach_return_message | No | text (500) |
ach_transaction_id | No | text (200) |
paypal_order_id | No | text (128) |
paypal_payer_id | No | text (128) |
paypal_authorization_id | No | text (128) |
paypal_status | No | enum (initialized, authorized, captured, error, refunded) |
reference_number | No | text (100) |
organization_name | No | text |
payment_gateway_id | No | int |
payment_gateway_processing_fee | No | decimal |
gateway_customer_token | No | text (100) |
gateway_source_token | No | text (100) |
payment_frequency | No | enum (single, intverval, plan) |
recurring_interval | No | enum (1_week, 2_week, 4_week, 1_month, 3_month, 12_month) |
recurring_day | No | bool |
recurring_until | No | enum (forever, max_times) |
recurring_max_times | No | int |
recurring_money_transfer_id | No | int |
comment | No | text |
donate_page_id | No | int |
donation_campaign_id | No | int |
donation_appeal_id | No | int |
draft_date_id | No | int |
back_url | No | text (1000) |
payment_secret | No | text (100) |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/onlinepayments" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"filter": {"0":{"logic":"ALL","fields":[{"name":"amount","value":{"type":"RANGE","start":"10.5","end":"900.15"},"positive":1}]}}
}' \
Example response:
{
"object": "list",
"count": 0,
"results": 0,
"results_per_page": 200,
"pages": 0,
"page": 0,
"offset": 0,
"has_more": false,
"data": [],
"sandbox": true
}
Retrieves all OnlinePayment objects that match given filter conditions.
HTTP Request
GET /onlinepayments
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. |
Filter Condition Parameters
These conditions can be used to narrow the results returned.
Name | Type |
---|---|
created | date |
link_type | choice |
type | enum |
status | text |
gateway | object id |
payer_account | text |
first_name | text |
last_name | text |
text | |
phone | text |
processing_fee | decimal |
convenience_fee | decimal |
amount | decimal |
Permissions
One of the following roles is required to call this method:
- Financial Admin
- Financial Auditor
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/onlinepayments/(onlinepayment)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "online_payment",
"id": 6,
"status": "construction",
"type": "credit_card",
"link_type": null,
"link_id": null,
"person_id": null,
"amount": 0,
"net_amount": null,
"preset_amount": null,
"first_name": "Jon",
"last_name": "Doe",
"street": "1000 1st Av",
"city": "Moscow",
"state": "ID",
"postal": "10101",
"country": "US",
"email": "jon@hotmail.org",
"phone": "777-888-7777",
"cc_status": null,
"cc_last_digits": "1111",
"cc_bin": null,
"cc_is_international": false,
"cc_expiration_month": 2,
"cc_expiration_year": 2010,
"cc_transaction_id": "A050B0F28A084EF1B9E445D2792A85B6",
"cc_approval_code": "17360",
"cc_processing_fee": null,
"cc_status_code": "APPROVED",
"cc_status_msg": "APPROVED",
"bank_name": null,
"bank_account_last_four": null,
"last_settlement_check_at": null,
"ach_status": null,
"ach_return_id": null,
"ach_settled_response": null,
"ach_return_message": null,
"ach_transaction_id": null,
"paypal_order_id": null,
"paypal_payer_id": null,
"paypal_authorization_id": null,
"paypal_status": null,
"reference_number": null,
"organization_name": null,
"payment_gateway_id": null,
"payment_gateway_processing_fee": null,
"gateway_customer_token": null,
"gateway_source_token": null,
"payment_frequency": null,
"recurring_interval": null,
"recurring_day": false,
"recurring_until": null,
"recurring_max_times": null,
"recurring_money_transfer_id": null,
"comment": null,
"donate_page_id": null,
"donation_campaign_id": null,
"donation_appeal_id": null,
"draft_date_id": null,
"back_url": null,
"payment_secret": null,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Retrieves a specific OnlinePayment object.
HTTP Request
GET /onlinepayments/(onlinepayment)
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:
- Financial Admin
- Financial Auditor
Organization
The Organization object
The Organization object looks like this in JSON:
{
"object": "organization",
"id": 1,
"name": "The Oxford School",
"website": "https:\/\/www.wikipedia.org",
"image_file_id": null,
"industry_id": null,
"ceeb_code": null,
"info_changed_at": null,
"added_at": null,
"added_by_id": null,
"type": "College",
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
name | Yes | text (255) |
website | No | text (150) |
image_file_id | No | int |
industry_id | No | int |
ceeb_code | No | int |
info_changed_at | No | datetime |
added_at | No | datetime |
added_by_id | No | int |
type | No | text |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/organizations" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"filter": {"0":{"logic":"ALL","fields":[{"name":"tag","value":{"display_text":"Blah","id":"123"},"positive":1}]}}
}' \
Example response:
{
"object": "list",
"count": 3,
"results": 3,
"results_per_page": 200,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "organization",
"id": 4,
"name": "Art Academy",
"website": "https:\/\/www.yahoo.com",
"image_file_id": null,
"industry_id": null,
"ceeb_code": null,
"info_changed_at": null,
"added_at": null,
"added_by_id": null,
"report_data": {
"type_name": "College",
"primary_address_id": null,
"primary_address_street": null,
"primary_address_city": null,
"primary_address_state": null,
"primary_address_zip": null,
"primary_address_country": null,
"primary_address_type": null,
"primary_address_public": null,
"contact_primary_email": null,
"contact_primary_phone": null,
"member_count": 1
},
"type": "College"
}
],
"sandbox": true
}
Retrieves all Organization objects that match given filter conditions.
HTTP Request
GET /organizations
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
- tags
- members
- notes
- organization_type
- addresses
- phone_numbers
- email_addresses
- websites
Filter Condition Parameters
These conditions can be used to narrow the results returned.
Name | Type |
---|---|
address | address |
custom_field | custom |
has_profile_picture | bool |
name | text |
phone | phone |
tag | tag |
type | object id |
website | website |
members | integer |
added_at | datetime |
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Financial Auditor
- Staff
create
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/organizations" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"name": "Forest Academy"
}' \
Example response:
{
"object": "organization",
"id": 5,
"name": "Forest Academy",
"website": null,
"image_file_id": null,
"industry_id": null,
"ceeb_code": null,
"info_changed_at": null,
"added_at": "2024-11-20T20:03:34+00:00",
"added_by_id": 22,
"type": null,
"sandbox": true
}
Creates a new Organization object.
HTTP Request
POST /organizations
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
name | Yes | text (255) | |
organization_type_id | No | int |
Permissions
One of the following roles is required to call this method:
- Staff
- Staff
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/organizations/(organization)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "organization",
"id": 1,
"name": "The Oxford School",
"website": "https:\/\/www.wikipedia.org",
"image_file_id": null,
"industry_id": null,
"ceeb_code": null,
"info_changed_at": null,
"added_at": null,
"added_by_id": null,
"type": "College",
"sandbox": true
}
Retrieves a specific Organization object.
HTTP Request
GET /organizations/(organization)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- tags
- members
- notes
- organization_type
- addresses
- phone_numbers
- email_addresses
- websites
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Financial Auditor
- Staff
update
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/organizations/(organization)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X PUT
Example response:
{
"object": "organization",
"id": 1,
"name": "The Oxford School",
"website": "https:\/\/www.wikipedia.org",
"image_file_id": null,
"industry_id": null,
"ceeb_code": null,
"info_changed_at": null,
"added_at": null,
"added_by_id": null,
"type": "College",
"sandbox": true
}
Updates an existing Organization object.
HTTP Request
PUT /organizations/(organization)
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
name | No | text (255) | |
organization_type_id | No | int |
Permissions
One of the following roles is required to call this method:
- Staff
- Staff
delete
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/organizations/(organization)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "organization",
"id": 5,
"deleted": true
}
Deletes an existing Organization object.
HTTP Request
DELETE /organizations/(organization)
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:
- Staff
OrganizationDomain
The OrganizationDomain object
The OrganizationDomain object looks like this in JSON:
{
"object": "organization_domain",
"id": 1,
"domain": "nsa.edu",
"primary": true,
"for_usernames": true,
"dmarc_enabled": false,
"spf_verified": false,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
domain | Yes | text (100) |
primary | No | -- |
for_usernames | Yes | bool |
dmarc_enabled | Yes | bool |
spf_verified | Yes | bool |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/organizationdomains" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "organization_domain",
"id": 1,
"domain": "nsa.edu",
"primary": true,
"for_usernames": true,
"dmarc_enabled": false,
"spf_verified": false,
"added_at": null,
"added_by_id": null
}
],
"sandbox": true
}
Retrieves all OrganizationDomain objects.
HTTP Request
GET /organizationdomains
Parameters
None
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/organizationdomains/(organizationdomain)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "organization_domain",
"id": 1,
"domain": "nsa.edu",
"primary": true,
"for_usernames": true,
"dmarc_enabled": false,
"spf_verified": false,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Retrieves a specific OrganizationDomain object.
HTTP Request
GET /organizationdomains/(organizationdomain)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
OrganizationMember
The OrganizationMember object
The OrganizationMember object looks like this in JSON:
{
"object": "organization_member",
"id": 5,
"organization_id": 1,
"person_id": 8,
"type": "member",
"title": null,
"start_date": null,
"end_date": null,
"occupation_id": null,
"full_time": true,
"hours_worked": null,
"salary": null,
"reported_on": null,
"primary": false,
"is_private": false,
"show_on_transcript": false,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
organization_id | No | int |
person_id | Yes | int |
type | Yes | enum (job, field_of_study, member) |
title | No | text (255) |
start_date | No | date |
end_date | No | date |
occupation_id | No | int |
full_time | Yes | bool |
hours_worked | No | int |
salary | No | int |
reported_on | No | date |
primary | No | bool |
is_private | Yes | bool |
show_on_transcript | Yes | bool |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/organizations" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"organization_id": 1,
"type": "JOB"
}' \
Example response:
{
"object": "list",
"count": 0,
"results": 0,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [],
"sandbox": true
}
Retrieves all OrganizationMember objects tied to a specific Person.
HTTP Request
GET /people/(person)/organizations
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
organization_id | No | int | |
type | No | enum (job, field_of_study, member) |
Permissions
One of the following roles is required to call this method:
- Staff
create
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/organizations" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"organization_id": 1,
"type": "job"
}' \
Example response:
{
"object": "organization_member",
"id": 9,
"organization_id": 1,
"person_id": 12,
"type": "job",
"title": null,
"start_date": null,
"end_date": null,
"occupation_id": null,
"full_time": false,
"hours_worked": null,
"salary": null,
"reported_on": "2024-11-20",
"primary": true,
"is_private": false,
"show_on_transcript": true,
"contact_organization": {
"object": "organization",
"id": 1,
"name": "The Oxford School",
"website": "https:\/\/www.wikipedia.org",
"image_file_id": null,
"industry_id": null,
"ceeb_code": null,
"info_changed_at": "2024-11-20T20:03:34-0800",
"added_at": null,
"added_by_id": null,
"type": "College"
},
"added_at": "2024-11-20T20:03:35+00:00",
"added_by_id": 22,
"sandbox": true
}
Creates a new OrganizationMember object.
HTTP Request
POST /people/(person)/organizations
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
organization_id | Yes | int | |
type | Yes | enum (job, field_of_study, member) | |
primary | No | bool | |
full_time | No | bool | |
show_on_transcript | No | bool | |
is_private | No | bool | |
title | No | text (255) | |
start_date | No | date | |
end_date | No | date | |
occupation_id | No | int | |
hours_worked | No | int | |
salary | No | int |
Permissions
One of the following roles is required to call this method:
- Staff
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/organizations/(organizationmember)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "organization_member",
"id": 6,
"organization_id": 4,
"person_id": 12,
"type": "member",
"title": null,
"start_date": null,
"end_date": null,
"occupation_id": null,
"full_time": true,
"hours_worked": null,
"salary": null,
"reported_on": null,
"primary": false,
"is_private": false,
"show_on_transcript": false,
"contact_organization": {
"object": "organization",
"id": 4,
"name": "Art Academy",
"website": "https:\/\/www.yahoo.com",
"image_file_id": null,
"industry_id": null,
"ceeb_code": null,
"info_changed_at": null,
"added_at": null,
"added_by_id": null,
"type": "College"
},
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Retrieves a specific OrganizationMember object.
HTTP Request
GET /people/(person)/organizations/(organizationmember)
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:
- Staff
update
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/organizations/(organizationmember)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X PUT
-d '{
"organization_id": 4
}' \
Example response:
{
"object": "organization_member",
"id": 6,
"organization_id": 4,
"person_id": 12,
"type": "member",
"title": null,
"start_date": null,
"end_date": null,
"occupation_id": null,
"full_time": true,
"hours_worked": null,
"salary": null,
"reported_on": null,
"primary": false,
"is_private": false,
"show_on_transcript": false,
"contact_organization": {
"object": "organization",
"id": 4,
"name": "Art Academy",
"website": "https:\/\/www.yahoo.com",
"image_file_id": null,
"industry_id": null,
"ceeb_code": null,
"info_changed_at": null,
"added_at": null,
"added_by_id": null,
"type": "College"
},
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Updates an existing OrganizationMember object.
HTTP Request
PUT /people/(person)/organizations/(organizationmember)
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
organization_id | No | int | |
type | No | enum (job, field_of_study, member) | |
primary | No | bool | |
full_time | No | bool | |
show_on_transcript | No | bool | |
is_private | No | bool | |
title | No | text (255) | |
start_date | No | date | |
end_date | No | date | |
occupation_id | No | int | |
hours_worked | No | int | |
salary | No | int |
Permissions
One of the following roles is required to call this method:
- Staff
delete
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/organizations/(organizationmember)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "organization_member",
"id": 6,
"deleted": true
}
Deletes an existing OrganizationMember object.
HTTP Request
DELETE /people/(person)/organizations/(organizationmember)
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:
- Staff
OrganizationType
The OrganizationType object
The OrganizationType object looks like this in JSON:
{
"object": "organization_type",
"id": 3,
"name": "Business",
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
name | Yes | text (50) |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/organizationtypes" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 6,
"results": 6,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "organization_type",
"id": 3,
"name": "Business"
}
],
"sandbox": true
}
Retrieves all OrganizationType objects.
HTTP Request
GET /organizationtypes
Parameters
None
Permissions
One of the following roles is required to call this method:
- Staff
- Development
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/organizationtypes/(organizationtype)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "organization_type",
"id": 3,
"name": "Business",
"sandbox": true
}
Retrieves a specific OrganizationType object.
HTTP Request
GET /organizationtypes/(organizationtype)
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:
- Staff
- Development
Payment
The Payment object
The Payment object looks like this in JSON:
{
"object": "payment",
"id": 5,
"student_id": 1,
"transaction_id": 21,
"number": 1,
"amount": 100,
"online_payment_id": null,
"convenience_fee_amount": 0,
"paid_by_type": "person",
"paid_by_id": 2,
"aid_type_id": null,
"refund_source": null,
"reference_number": null,
"receipt_number": "ce9e16ad2e",
"amount_available": 100,
"currency": "USD",
"exchange_rate": null,
"home_currency_amount": 100,
"recurring_money_transfer_id": null,
"aid_disbursement_id": null,
"treat_as_aid": false,
"organization_name": null,
"method": "other",
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
student_id | No | int |
transaction_id | Yes | int |
number | No | int |
amount | Yes | decimal |
online_payment_id | No | int |
convenience_fee_amount | Yes | decimal |
paid_by_type | Yes | enum (person, org, aid_provider) |
paid_by_id | Yes | int |
aid_type_id | No | int |
refund_source | No | enum (all, payments_credits, all_aid, federal_aid, non_federal_aid, aid_type) |
reference_number | Yes | text (100) |
receipt_number | No | text (50) |
amount_available | Yes | decimal |
currency | No | text (3) |
exchange_rate | No | decimal |
home_currency_amount | Yes | decimal |
recurring_money_transfer_id | No | int |
aid_disbursement_id | No | int |
treat_as_aid | Yes | bool |
organization_name | No | text |
method | No | text |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/payments" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"start_date": "2022-01-05",
"end_date": "2023-02-06",
"filter": {"0":{"logic":"ALL","fields":[{"name":"amount","value":{"type":"RANGE","start":"10.5","end":"900.15"},"positive":1}]}}
}' \
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": 200,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "person",
"id": 12,
"first_name": "Alice",
"last_name": "Admin",
"middle_name": "",
"prefix": "Mrs.",
"suffix": null,
"preferred_name": null,
"display_name": "Alice 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,
"added_at": null,
"added_by_id": 22,
"updated_at": "2024-11-20T20:03:33+00:00",
"report_data": {
"paymentid": 100,
"payer_type": "PERSON",
"payment_number": 1,
"payerid": 12,
"payment_method": "CHECK",
"posted_date": "2022-10-24",
"amount": "600.00",
"payment_type": "PAYMENT",
"org_name": null,
"transactionid": 100,
"transaction_number": 1,
"online_payment_name": null,
"online_payment_street": null,
"online_payment_city": null,
"online_payment_state": null,
"online_payment_postal": null,
"online_payment_country": null,
"payment_time": "2024-11-20 12:03:33",
"online": 0,
"online_payment_id": null,
"reference_number": "",
"receipt_number": "673e4095adf59",
"owner_type": "PERSON",
"ownerid": 12,
"payer_name": "Alice Admin",
"treat_as_aid": 0,
"convenience_fee_amount": "0.00",
"echeck_status": null,
"check_id": null,
"check_number": null
},
"private_profile": false,
"is_user": true
}
],
"sandbox": true
}
Retrieves all Payment objects that match given filter conditions. This report requires a start and end posted date range.
HTTP Request
GET /payments
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
start_date | Yes | date | |
end_date | Yes | date | |
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
- transaction
- student
- online_payment
- invoice_payments
- payment_refunds
Filter Condition Parameters
These conditions can be used to narrow the results returned.
Name | Type |
---|---|
is_aid_payment | bool |
payment_type | choice |
payer_type | choice |
payer_name | text |
is_third_party_aid | bool |
method | choice |
is_online_payment | bool |
amount | decimal |
currency | currency |
student_tag | tag |
student_campus | campus |
student_custom_field | custom |
Permissions
One of the following roles is required to call this method:
- Financial Aid
- Financial Auditor
- Financial Admin
- Student Billing
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/payments/(payment)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "payment",
"id": 5,
"student_id": 1,
"transaction_id": 21,
"number": 1,
"amount": 100,
"online_payment_id": null,
"convenience_fee_amount": 0,
"paid_by_type": "person",
"paid_by_id": 2,
"aid_type_id": null,
"refund_source": null,
"reference_number": null,
"receipt_number": "ce9e16ad2e",
"amount_available": 100,
"currency": "USD",
"exchange_rate": null,
"home_currency_amount": 100,
"recurring_money_transfer_id": null,
"aid_disbursement_id": null,
"treat_as_aid": false,
"organization_name": null,
"method": "other",
"sandbox": true
}
Retrieves a specific Payment object.
HTTP Request
GET /payments/(payment)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- transaction
- student
- online_payment
- invoice_payments
- payment_refunds
Permissions
One of the following roles is required to call this method:
- Financial Auditor
- Financial Admin
- Student Billing
recurring
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/payments/recurring" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"filter": {"0":{"logic":"ALL","fields":[{"name":"payer_name","value":{"type":"CONTAINS","text":"blah"},"positive":1}]}}
}' \
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "recurring_money_transfer",
"id": 1,
"type": "payment",
"donor_id": 1,
"student_id": null,
"payer_type": null,
"payer_id": null,
"payment_plan_student_id": null,
"treat_as_aid": false,
"pay_beyond_balance": false,
"payment_method": "credit_card",
"gateway_token_provider": "stripe",
"payment_gateway_id": null,
"gateway_customer_token": "cus_MLxeHuvTzFyb2N",
"gateway_source_token": "card_1Ld0FNGz1v34x3yFuC2B0L72",
"start_date": "2022-08-31",
"end_date": null,
"last_charged_on": "2022-09-16",
"last_attempt_at": null,
"last_attempt_by_id": null,
"interval": "1_month",
"day": true,
"max_additional_times": null,
"total_times_charged": 2,
"amount": 90,
"currency": "USD",
"secret": "bfb9d17fa8a24e02f864b12f5a732199",
"first_name": "Donny",
"last_name": "McDonor",
"org_name": null,
"email_address": "donnyd@yahoo.co",
"phone_number": "123-123-1234",
"street": "123 Street",
"city": "Moscow",
"state": "ID",
"postal": "83843",
"country": "US",
"last_digits": "4242",
"card_bin": null,
"card_is_international": false,
"bank_name": null,
"donation_campaign_id": 1,
"donation_appeal_id": null,
"donation_donate_page_id": null,
"donation_fund_id": 2,
"donation_split_fund_id": 1,
"donation_split_fund_amount": 40,
"donation_staff_comment": "virtual terminal recurring test",
"status": "active",
"status_date": "2022-09-16",
"problem_message": null,
"cancel_type": null,
"last_charged_on_date": "2022-09-16",
"times_left": null,
"payment_amount": "90.00",
"payer_name": "McDonor, Donny",
"student_name": null,
"payer_street": null,
"payer_city": null,
"payer_state": null,
"payer_zip": null,
"payer_country": null,
"academic_term_id": null,
"invoice_id": null,
"payment_plan_id": null,
"schedule_type": null,
"recurring_amount": null,
"payment_plan_name": null,
"max_payment_plan_due_date": null,
"future_payment_plan_due_dates": null,
"payment_deadline_amounts": null,
"real_end_date": null,
"added_at": "2022-08-31T23:23:05+00:00",
"added_by_id": 10,
"updated_at": "2022-09-16T21:10:53+00:00",
"updated_by_id": 10
}
],
"sandbox": true
}
HTTP Request
GET /payments/recurring
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. |
Filter Condition Parameters
These conditions can be used to narrow the results returned.
Name | Type |
---|---|
start_date | date |
end_date | date |
type | choice |
schedule | choice |
last_charged_on | date |
day | integer |
payer_name | text |
payer_type | choice |
linked_to_payer | bool |
payment_method | enum |
times_charged | integer |
times_left | integer |
amount | decimal |
status | enum |
student_tag | tag |
payer_tag | tag |
student_custom_field | custom |
payer_custom_field | custom |
Permissions
One of the following roles is required to call this method:
- Financial Auditor
- Financial Admin
- Student Billing
index (person)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/payments" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 2,
"results": 2,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "payment",
"id": 7,
"student_id": 12,
"transaction_id": 12,
"number": 501,
"amount": 150,
"online_payment_id": null,
"convenience_fee_amount": 0,
"paid_by_type": "person",
"paid_by_id": 12,
"aid_type_id": null,
"refund_source": null,
"reference_number": null,
"receipt_number": "ce9sfe5d2e",
"amount_available": 150,
"currency": "USD",
"exchange_rate": null,
"home_currency_amount": 100,
"recurring_money_transfer_id": 1,
"aid_disbursement_id": null,
"treat_as_aid": false,
"organization_name": null,
"method": "cash"
}
],
"sandbox": true
}
Retrieves all Payment objects tied to a specific Person.
HTTP Request
GET /people/(person)/payments
Parameters
None
Permissions
One of the following roles is required to call this method:
- Financial Auditor
- Financial Admin
- Student Billing
create
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/payments" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"amount": 600,
"asset_account_id": 1,
"posted_date": "2022-10-24"
}' \
Example response:
{
"object": "payment",
"id": 100,
"student_id": 12,
"transaction_id": 100,
"number": 1,
"amount": 600,
"online_payment_id": null,
"convenience_fee_amount": 0,
"paid_by_type": "person",
"paid_by_id": 12,
"aid_type_id": null,
"refund_source": null,
"reference_number": null,
"receipt_number": "673e4095adf59",
"amount_available": 600,
"currency": "USD",
"exchange_rate": null,
"home_currency_amount": 600,
"recurring_money_transfer_id": null,
"aid_disbursement_id": null,
"treat_as_aid": false,
"organization_name": null,
"method": "check",
"sandbox": true
}
Creates a new Payment object.
HTTP Request
POST /people/(person)/payments
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
amount | Yes | decimal | |
asset_account_id | Yes | int | |
posted_date | No | date | |
paid_by_type | No | enum (person, org) | |
paid_by_id | No | int | |
source_type | No | enum (cash, check, credit_card, ach, other, money_order) | Default is check |
reference_number | No | text (100) | |
currency | No | text (3) | |
exchange_rate | No | decimal |
Action Parameters
Name | Data Type | Description |
---|---|---|
automatically_apply_to_invoices | bool | |
pay_invoices | array of Invoice IDs |
Permissions
One of the following roles is required to call this method:
- Financial Admin
- Student Billing
show (person)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/payments/(payment)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "payment",
"id": 7,
"student_id": 12,
"transaction_id": 12,
"number": 501,
"amount": 150,
"online_payment_id": null,
"convenience_fee_amount": 0,
"paid_by_type": "person",
"paid_by_id": 12,
"aid_type_id": null,
"refund_source": null,
"reference_number": null,
"receipt_number": "ce9sfe5d2e",
"amount_available": 150,
"currency": "USD",
"exchange_rate": null,
"home_currency_amount": 100,
"recurring_money_transfer_id": 1,
"aid_disbursement_id": null,
"treat_as_aid": false,
"organization_name": null,
"method": "cash",
"sandbox": true
}
Retrieves a specific Payment object.
HTTP Request
GET /people/(person)/payments/(payment)
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:
- Financial Auditor
- Financial Admin
- Student Billing
PaymentDeadline
The PaymentDeadline object
The PaymentDeadline object looks like this in JSON:
{
"object": "payment_deadline",
"id": 1,
"owner_type": "invoice",
"owner_id": 7,
"actor_type": "person",
"actor_id": 8,
"due_date": "2022-08-11",
"balance_due": false,
"amount": 0,
"tuition_amount": 0,
"fee_amount": 0,
"room_plan_amount": 0,
"meal_plan_amount": 0,
"bookstore_amount": 0,
"amount_percent": 0,
"tuition_amount_percent": 0,
"fee_amount_percent": 0,
"room_plan_amount_percent": 0,
"meal_plan_amount_percent": 0,
"bookstore_amount_percent": 0,
"generated_amount_due": 580,
"generated_due_to_date": 0,
"amount_due": 430,
"due_status": "due_now",
"check_late_fee_on": null,
"late_fee_added": null,
"late_fee_charge_id": null,
"manual_edit": false,
"force_automatic_charge": false,
"updated_at": "2022-07-12T18:28:09+00:00",
"updated_by_id": 6,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
owner_type | Yes | enum (invoice, payment_plan_student) |
owner_id | No | int |
actor_type | Yes | enum (person, contact_org) |
actor_id | No | int |
due_date | Yes | date |
balance_due | Yes | bool |
amount | Yes | decimal |
tuition_amount | Yes | decimal |
fee_amount | Yes | decimal |
room_plan_amount | Yes | decimal |
meal_plan_amount | Yes | decimal |
bookstore_amount | Yes | decimal |
amount_percent | Yes | decimal |
tuition_amount_percent | Yes | decimal |
fee_amount_percent | Yes | decimal |
room_plan_amount_percent | Yes | decimal |
meal_plan_amount_percent | Yes | decimal |
bookstore_amount_percent | Yes | decimal |
generated_amount_due | Yes | decimal |
generated_due_to_date | Yes | decimal |
amount_due | Yes | decimal |
due_status | Yes | enum (due_later, due_now, paid_on_time, overdue, paid_late) |
check_late_fee_on | No | datetime |
late_fee_added | No | date |
late_fee_charge_id | No | int |
manual_edit | Yes | bool |
force_automatic_charge | Yes | bool |
updated_at | No | datetime |
updated_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/paymentdeadlines" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"filter": {"0":{"logic":"ALL","fields":[{"name":"due_date","value":{"type":"RANGE","start":"2021-01-01","end":"2022-03-17"},"positive":1}]}}
}' \
Example response:
{
"object": "list",
"count": 0,
"results": 0,
"results_per_page": 200,
"pages": 0,
"page": 0,
"offset": 0,
"has_more": false,
"data": [],
"sandbox": true
}
Retrieves all PaymentDeadline objects that match given filter conditions.
HTTP Request
GET /paymentdeadlines
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
- payments
Filter Condition Parameters
These conditions can be used to narrow the results returned.
Name | Type |
---|---|
due_date | date |
student | search |
academic_term | academic_term |
type | choice |
status | paymentdeadlinestatus |
originally_due | decimal |
currently_due | decimal |
tag | tag |
custom_field | custom |
Permissions
One of the following roles is required to call this method:
- Financial Auditor
- Financial Admin
- Student Billing
- Financial Aid
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/paymentdeadlines/(paymentdeadline)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "payment_deadline",
"id": 1,
"owner_type": "invoice",
"owner_id": 7,
"actor_type": "person",
"actor_id": 8,
"due_date": "2022-08-11",
"balance_due": false,
"amount": 0,
"tuition_amount": 0,
"fee_amount": 0,
"room_plan_amount": 0,
"meal_plan_amount": 0,
"bookstore_amount": 0,
"amount_percent": 0,
"tuition_amount_percent": 0,
"fee_amount_percent": 0,
"room_plan_amount_percent": 0,
"meal_plan_amount_percent": 0,
"bookstore_amount_percent": 0,
"generated_amount_due": 580,
"generated_due_to_date": 0,
"amount_due": 430,
"due_status": "due_now",
"check_late_fee_on": null,
"late_fee_added": null,
"late_fee_charge_id": null,
"manual_edit": false,
"force_automatic_charge": false,
"updated_at": "2022-07-12T18:28:09+00:00",
"updated_by_id": 6,
"sandbox": true
}
Retrieves a specific PaymentDeadline object.
HTTP Request
GET /paymentdeadlines/(paymentdeadline)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- payments
Permissions
One of the following roles is required to call this method:
- Financial Auditor
- Financial Admin
- Student Billing
- Financial Aid
PaymentPeriod
The PaymentPeriod object
The PaymentPeriod object looks like this in JSON:
{
"object": "payment_period",
"id": 1,
"student_id": 12,
"start_date": "2022-10-01",
"end_date": "2022-10-31",
"sap": "not_calculated",
"sap_policy_id": 1,
"external_id": null,
"added_at": "2022-07-13T21:35:04+00:00",
"added_by_id": 10,
"updated_at": "2022-07-13T21:35:28+00:00",
"updated_by_id": 10,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
student_id | Yes | int |
start_date | Yes | date |
end_date | Yes | date |
sap | Yes | enum (satisfactory, warning, probation, suspension, not_calculated) |
sap_policy_id | No | int |
external_id | No | int |
added_at | No | datetime |
added_by_id | No | int |
updated_at | No | datetime |
updated_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/paymentperiods" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"filter": {"0":{"logic":"ALL","fields":[{"name":"end_date","value":{"type":"RANGE","start":"2021-01-01","end":"2022-03-17"},"positive":1}]}}
}' \
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": 200,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "payment_period",
"id": 1,
"student_id": 12,
"start_date": "2022-10-01",
"end_date": "2022-10-31",
"sap": "not_calculated",
"sap_policy_id": 1,
"external_id": null,
"added_at": "2022-07-13T21:35:04+00:00",
"added_by_id": 10,
"updated_at": "2022-07-13T21:35:28+00:00",
"updated_by_id": 10,
"report_data": {
"student_name": "Alice Admin",
"units_mapped": 0,
"credits_mapped": "0.00",
"hours_mapped": "0.00",
"overriding_sap": null,
"row_id": 1
}
}
],
"sandbox": true
}
Retrieves all PaymentPeriod objects that match given filter conditions.
HTTP Request
GET /paymentperiods
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
- student
- sap_policy
- enrollments
Filter Condition Parameters
These conditions can be used to narrow the results returned.
Name | Type |
---|---|
student | text |
start_date | date |
end_date | date |
sap | enum |
units_mapped | integer |
Permissions
One of the following roles is required to call this method:
- Financial Admin
- Financial Aid
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/paymentperiods/(paymentperiod)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "payment_period",
"id": 1,
"student_id": 12,
"start_date": "2022-10-01",
"end_date": "2022-10-31",
"sap": "not_calculated",
"sap_policy_id": 1,
"external_id": null,
"added_at": "2022-07-13T21:35:04+00:00",
"added_by_id": 10,
"updated_at": "2022-07-13T21:35:28+00:00",
"updated_by_id": 10,
"sandbox": true
}
Retrieves a specific PaymentPeriod object.
HTTP Request
GET /paymentperiods/(paymentperiod)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- student
- sap_policy
- enrollments
Permissions
One of the following roles is required to call this method:
- Financial Admin
- Financial Aid
PaymentPlan
The PaymentPlan object
The PaymentPlan object looks like this in JSON:
{
"object": "payment_plan",
"id": 1,
"name": "Calendar Plan",
"status": "active",
"amount": 55,
"amount_type": "flat",
"late_fee": 0,
"late_fee_type": "percent",
"grace_period_days": null,
"max_late_fee": 0,
"schedule_type": "date",
"charge_types_broken_out": false,
"prefer_whole_dollar_amounts": false,
"recurring_money_transfer_linkable_student_level": false,
"recurring_money_transfer_linkable_term_level": false,
"recurring_money_transfer_linkable_existing": false,
"recurring_first_payment": "day_of_month",
"recurring_day_of_month": 1,
"recurring_days_after_start": 30,
"recurring_period_months": 1,
"recurring_amount": 0,
"balance_year": null,
"balance_month": 3,
"balance_day": 3,
"balance_num_days": null,
"fee_id": 2,
"late_fee_id": null,
"min_invoice_amount": 0,
"exclude_aid": false,
"scheduled_aid_handling": "consider_allocation_time",
"tuition_eligible": "all",
"fees_eligible": "selected",
"room_plans_eligible": "none",
"meal_plans_eligible": "all",
"bookstore_eligible": "all",
"auto_remove_on_payoff": false,
"auto_remove_date": null,
"added_at": "2022-07-13T20:47:23+00:00",
"added_by_id": 10,
"updated_at": "2022-07-13T20:54:57+00:00",
"updated_by_id": 10,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
name | Yes | text (200) |
status | Yes | enum (active, deleted) |
amount | Yes | decimal |
amount_type | Yes | enum (flat, percent) |
late_fee | Yes | decimal |
late_fee_type | Yes | enum (flat, percent) |
grace_period_days | Yes | int |
max_late_fee | Yes | decimal |
schedule_type | Yes | enum (date, days_into_term, days_from_applied, recurring) |
charge_types_broken_out | Yes | bool |
prefer_whole_dollar_amounts | Yes | bool |
recurring_money_transfer_linkable_student_level | Yes | bool |
recurring_money_transfer_linkable_term_level | Yes | bool |
recurring_money_transfer_linkable_existing | Yes | bool |
recurring_first_payment | No | enum (day_of_month, days_after_start) |
recurring_day_of_month | No | int |
recurring_days_after_start | No | int |
recurring_period_months | No | int |
recurring_amount | Yes | decimal |
balance_year | Yes | int |
balance_month | Yes | int |
balance_day | Yes | int |
balance_num_days | Yes | int |
fee_id | Yes | int |
late_fee_id | Yes | int |
min_invoice_amount | Yes | decimal |
exclude_aid | Yes | bool |
scheduled_aid_handling | Yes | enum (ignore, consider_allocation_time, always_exclude) |
tuition_eligible | Yes | enum (all, none, selected, excluded) |
fees_eligible | Yes | enum (all, none, selected, excluded) |
room_plans_eligible | Yes | enum (all, none, selected, excluded) |
meal_plans_eligible | Yes | enum (all, none, selected, excluded) |
bookstore_eligible | Yes | enum (all, none, selected, excluded) |
auto_remove_on_payoff | Yes | bool |
auto_remove_date | No | date |
added_at | No | datetime |
added_by_id | No | int |
updated_at | No | datetime |
updated_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/paymentplans" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "payment_plan",
"id": 1,
"name": "Calendar Plan",
"status": "active",
"amount": 55,
"amount_type": "flat",
"late_fee": 0,
"late_fee_type": "percent",
"grace_period_days": null,
"max_late_fee": 0,
"schedule_type": "date",
"charge_types_broken_out": false,
"prefer_whole_dollar_amounts": false,
"recurring_money_transfer_linkable_student_level": false,
"recurring_money_transfer_linkable_term_level": false,
"recurring_money_transfer_linkable_existing": false,
"recurring_first_payment": "day_of_month",
"recurring_day_of_month": 1,
"recurring_days_after_start": 30,
"recurring_period_months": 1,
"recurring_amount": 0,
"balance_year": null,
"balance_month": 3,
"balance_day": 3,
"balance_num_days": null,
"fee_id": 2,
"late_fee_id": null,
"min_invoice_amount": 0,
"exclude_aid": false,
"scheduled_aid_handling": "consider_allocation_time",
"tuition_eligible": "all",
"fees_eligible": "selected",
"room_plans_eligible": "none",
"meal_plans_eligible": "all",
"bookstore_eligible": "all",
"auto_remove_on_payoff": false,
"auto_remove_date": null,
"added_at": "2022-07-13T20:47:23+00:00",
"added_by_id": 10,
"updated_at": "2022-07-13T20:54:57+00:00",
"updated_by_id": 10
}
],
"sandbox": true
}
Retrieves all PaymentPlan objects.
HTTP Request
GET /paymentplans
Parameters
None
Permissions
One of the following roles is required to call this method:
- Financial Auditor
- Financial Admin
- Student Billing
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/paymentplans/(paymentplan)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "payment_plan",
"id": 1,
"name": "Calendar Plan",
"status": "active",
"amount": 55,
"amount_type": "flat",
"late_fee": 0,
"late_fee_type": "percent",
"grace_period_days": null,
"max_late_fee": 0,
"schedule_type": "date",
"charge_types_broken_out": false,
"prefer_whole_dollar_amounts": false,
"recurring_money_transfer_linkable_student_level": false,
"recurring_money_transfer_linkable_term_level": false,
"recurring_money_transfer_linkable_existing": false,
"recurring_first_payment": "day_of_month",
"recurring_day_of_month": 1,
"recurring_days_after_start": 30,
"recurring_period_months": 1,
"recurring_amount": 0,
"balance_year": null,
"balance_month": 3,
"balance_day": 3,
"balance_num_days": null,
"fee_id": 2,
"late_fee_id": null,
"min_invoice_amount": 0,
"exclude_aid": false,
"scheduled_aid_handling": "consider_allocation_time",
"tuition_eligible": "all",
"fees_eligible": "selected",
"room_plans_eligible": "none",
"meal_plans_eligible": "all",
"bookstore_eligible": "all",
"auto_remove_on_payoff": false,
"auto_remove_date": null,
"added_at": "2022-07-13T20:47:23+00:00",
"added_by_id": 10,
"updated_at": "2022-07-13T20:54:57+00:00",
"updated_by_id": 10,
"sandbox": true
}
Retrieves a specific PaymentPlan object.
HTTP Request
GET /paymentplans/(paymentplan)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- schedules
- eligible_charges
- fee
- late_fee
Permissions
One of the following roles is required to call this method:
- Financial Auditor
- Financial Admin
- Student Billing
PaymentPlanStudent
The PaymentPlanStudent object
The PaymentPlanStudent object looks like this in JSON:
{
"object": "payment_plan_student",
"id": 7,
"student_id": 12,
"academic_term_id": 6,
"invoice_id": 9,
"payment_plan_id": null,
"start_date": "2020-09-07",
"as_of_time": null,
"charge_types_broken_out": false,
"total_eligible_charges": 0,
"recurring_amount": 0,
"exclude_aid": false,
"scheduled_aid_handling": "consider_allocation_time",
"schedule_type": "days_from_applied",
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
student_id | Yes | int |
academic_term_id | Yes | int |
invoice_id | No | int |
payment_plan_id | Yes | int |
start_date | No | date |
as_of_time | No | datetime |
charge_types_broken_out | Yes | bool |
total_eligible_charges | Yes | decimal |
recurring_amount | Yes | decimal |
exclude_aid | Yes | bool |
scheduled_aid_handling | Yes | enum (ignore, consider_allocation_time, always_exclude) |
schedule_type | Yes | enum (days_from_applied, date, days_into_term, recurring) |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/paymentplans" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "payment_plan_student",
"id": 7,
"student_id": 12,
"academic_term_id": 6,
"invoice_id": 9,
"payment_plan_id": null,
"start_date": "2020-09-07",
"as_of_time": null,
"charge_types_broken_out": false,
"total_eligible_charges": 0,
"recurring_amount": 0,
"exclude_aid": false,
"scheduled_aid_handling": "consider_allocation_time",
"schedule_type": "days_from_applied",
"added_at": null,
"added_by_id": null
}
],
"sandbox": true
}
Retrieves all PaymentPlanStudent objects tied to a specific Person.
HTTP Request
GET /people/(person)/paymentplans
Parameters
None
Permissions
One of the following roles is required to call this method:
- Financial Auditor
- Financial Admin
- Student Billing
create
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/paymentplans" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"payment_plan_id": 1
}' \
Example response:
{
"object": "payment_plan_student",
"id": 8,
"student_id": 12,
"academic_term_id": null,
"invoice_id": null,
"payment_plan_id": 1,
"start_date": "2024-11-20",
"as_of_time": "2024-11-20T20:03:36+00:00",
"charge_types_broken_out": false,
"total_eligible_charges": 0,
"recurring_amount": 0,
"exclude_aid": true,
"scheduled_aid_handling": "consider_allocation_time",
"schedule_type": "date",
"added_at": "2024-11-20T20:03:36+00:00",
"added_by_id": 22,
"sandbox": true
}
Creates a new PaymentPlanStudent object.
HTTP Request
POST /people/(person)/paymentplans
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
payment_plan_id | Yes | int | |
academic_term_id | No | int | |
recurring_amount | No | decimal | This option is only relevant for plans with a recurring schedule type. |
start_date | No | date | |
as_of_time | No | datetime | |
invoice_ids | No | array of Invoice ids | By default, all possible invoices will be added to the plan. Provide an array of invoice ids to limit the selection. |
Permissions
One of the following roles is required to call this method:
- Financial Admin
- Student Billing
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/paymentplans/(paymentplanstudent)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "payment_plan_student",
"id": 7,
"student_id": 12,
"academic_term_id": 6,
"invoice_id": 9,
"payment_plan_id": null,
"start_date": "2020-09-07",
"as_of_time": null,
"charge_types_broken_out": false,
"total_eligible_charges": 0,
"recurring_amount": 0,
"exclude_aid": false,
"scheduled_aid_handling": "consider_allocation_time",
"schedule_type": "days_from_applied",
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Retrieves a specific PaymentPlanStudent object.
HTTP Request
GET /people/(person)/paymentplans/(paymentplanstudent)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- invoices
- ignored_scheduled_aid
- payment_plan
Permissions
One of the following roles is required to call this method:
- Financial Auditor
- Financial Admin
- Student Billing
delete
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/paymentplans/(paymentplanstudent)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "payment_plan_student",
"id": 8,
"deleted": true
}
Deletes an existing PaymentPlanStudent object.
HTTP Request
DELETE /people/(person)/paymentplans/(paymentplanstudent)
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
remove_initial_fee | No | bool |
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:
- Financial Admin
- Student Billing
PendingCharge
The PendingCharge object
The PendingCharge object looks like this in JSON:
{
"object": "pending_charge",
"id": 8001,
"pending_charge_batch_id": null,
"academic_term_id": null,
"person_id": 12,
"status": "active",
"item_type": "fee",
"item_id": 9,
"amount": 1000,
"source": "automatic",
"source_type": null,
"source_id": null,
"description": null,
"added_because_description": null,
"added_at": "2020-06-08T20:14:45+00:00",
"added_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
pending_charge_batch_id | No | int |
academic_term_id | No | int |
person_id | Yes | int |
status | Yes | enum (active, replaced, deleted, invoiced) |
item_type | Yes | enum (tuition, fee, room_plan, meal_plan, bookstore) |
item_id | Yes | int |
amount | Yes | decimal |
source | Yes | enum (manual, automatic, edit) |
source_type | No | enum (payment_plan_student) |
source_id | No | int |
description | No | text (1000) |
added_because_description | No | text (1000) |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/pendingcharges" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"filter": {"0":{"logic":"ALL","fields":[{"name":"description","value":{"type":"CONTAINS","text":"blah"},"positive":1}]}}
}' \
Example response:
{
"object": "list",
"count": 2,
"results": 2,
"results_per_page": 200,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "pending_charge",
"id": 8000,
"pending_charge_batch_id": null,
"academic_term_id": null,
"person_id": 16,
"status": "active",
"item_type": "fee",
"item_id": 9,
"amount": 1000,
"source": "automatic",
"source_type": null,
"source_id": null,
"description": null,
"added_because_description": null,
"added_at": "2020-06-08T20:14:45+00:00",
"added_by_id": null,
"report_data": {
"firstname": "Academic",
"lastname": "Admin",
"middlename": "",
"academic_term_name": null,
"dummyid": "20220xx001",
"added_by_name": null,
"item_name": "Parking Tickets!",
"row_id": 8000
}
}
],
"sandbox": true
}
Retrieves all PendingCharge objects that match given filter conditions.
HTTP Request
GET /pendingcharges
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
- batch
- courses
Filter Condition Parameters
These conditions can be used to narrow the results returned.
Name | Type |
---|---|
student | search |
student_campus | campus |
tag | tag |
academic_term | academic_term |
type | enum |
charge | charge |
description | text |
amount | decimal |
custom_field | custom |
Permissions
One of the following roles is required to call this method:
- Financial Aid
- Financial Auditor
- Financial Admin
- Student Billing
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/pendingcharges/(pendingcharge)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "pending_charge",
"id": 8001,
"pending_charge_batch_id": null,
"academic_term_id": null,
"person_id": 12,
"status": "active",
"item_type": "fee",
"item_id": 9,
"amount": 1000,
"source": "automatic",
"source_type": null,
"source_id": null,
"description": null,
"added_because_description": null,
"added_at": "2020-06-08T20:14:45+00:00",
"added_by_id": null,
"sandbox": true
}
Retrieves a specific PendingCharge object.
HTTP Request
GET /pendingcharges/(pendingcharge)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- batch
- courses
Permissions
One of the following roles is required to call this method:
- Financial Aid
- Financial Auditor
- Financial Admin
- Student Billing
index (person)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/pendingcharges" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "pending_charge",
"id": 8001,
"pending_charge_batch_id": null,
"academic_term_id": null,
"person_id": 12,
"status": "active",
"item_type": "fee",
"item_id": 9,
"amount": 1000,
"source": "automatic",
"source_type": null,
"source_id": null,
"description": null,
"added_because_description": null,
"added_at": "2020-06-08T20:14:45+00:00",
"added_by_id": null
}
],
"sandbox": true
}
Retrieves all PendingCharge objects tied to a specific Person.
HTTP Request
GET /people/(person)/pendingcharges
Parameters
None
Permissions
One of the following roles is required to call this method:
- Financial Aid
- Financial Auditor
- Financial Admin
- Student Billing
create
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/pendingcharges" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"amount": 450.25,
"item_type": "fee",
"item_id": 9
}' \
Example response:
{
"object": "pending_charge",
"id": 8002,
"pending_charge_batch_id": null,
"academic_term_id": null,
"person_id": 12,
"status": "active",
"item_type": "fee",
"item_id": 9,
"amount": 450.25,
"source": "manual",
"source_type": null,
"source_id": null,
"description": null,
"added_because_description": null,
"added_at": "2024-11-20T20:03:33+00:00",
"added_by_id": 22,
"sandbox": true
}
Creates a new PendingCharge object.
HTTP Request
POST /people/(person)/pendingcharges
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
amount | Yes | decimal | |
item_type | Yes | enum (tuition, fee, room_plan, meal_plan, bookstore) | |
item_id | Yes | int | |
academic_term_id | No | int | |
description | No | text (1000) |
Permissions
One of the following roles is required to call this method:
- Financial Admin
- Student Billing
invoice
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/pendingcharges/invoice" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"posted_date": "2023-12-30",
"due_date": "2024-02-05"
}' \
Example response:
{
"object": "invoice",
"id": 100,
"actor_type": "person",
"actor_id": 12,
"number": 9,
"description": null,
"transaction_id": 102,
"amount": 1450.25,
"due_on": "2024-02-05",
"status": "paid",
"marked_uncollectible_on": null,
"posted_on": "2023-12-30",
"academic_term_id": null,
"items": [
{
"object": "invoice_item",
"id": 7,
"invoice_id": 100,
"item_type": "fee",
"item_id": 9,
"name": "Parking Tickets!",
"amount": 1000,
"description": null
},
{
"object": "invoice_item",
"id": 8,
"invoice_id": 100,
"item_type": "fee",
"item_id": 9,
"name": "Parking Tickets!",
"amount": 450.25,
"description": null
}
],
"sandbox": true
}
HTTP Request
POST /people/(person)/pendingcharges/invoice
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
academic_term_id | No | int | |
posted_date | No | date | Default is today |
due_date | No | date | |
fee_id | No | int | |
pending_charge_ids | No | array of PendingCharge ids |
Permissions
One of the following roles is required to call this method:
- Financial Admin
- Student Billing
Person
The Person object
The Person object looks like this in JSON:
{
"object": "person",
"id": 16,
"first_name": "Academic",
"last_name": "Admin",
"middle_name": "",
"prefix": null,
"suffix": null,
"preferred_name": null,
"display_name": "Academic 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,
"added_at": null,
"added_by_id": null,
"updated_at": null,
"private_profile": false,
"is_user": true,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
first_name | Yes | text (50) |
last_name | Yes | text (50) |
middle_name | Yes | text (50) |
prefix | Yes | text (20) |
suffix | Yes | text (20) |
preferred_name | Yes | text (255) |
display_name | Yes | text (255) |
gender | Yes | enum (male, female, unknown, other) |
other_gender | No | text (50) |
image_file_id | No | int |
birth_date | Yes | date |
status | Yes | enum (active, deleted, deceased) |
social_security_number | Yes | text (15) |
alien_registration_number | Yes | text (30) |
social_insurance_number | Yes | text (30) |
home_city | Yes | text (50) |
home_state | Yes | text (50) |
home_country | Yes | text (50) |
former_name | Yes | text (50) |
license_plate | No | text (50) |
bio | No | text (160) |
hispanic_latino | No | bool |
resident_alien | No | bool |
localization_id | No | int |
notification_email_id | No | int |
deceased_date | No | date |
import_id | No | int |
added_at | No | datetime |
added_by_id | No | int |
updated_at | No | datetime |
private_profile | No | bool |
is_user | No | bool |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"filter": {"0":{"logic":"ALL","fields":[{"name":"last_name","value":{"type":"CONTAINS","text":"blah"},"positive":1}]}}
}' \
Example response:
{
"object": "list",
"count": 20,
"results": 20,
"results_per_page": 200,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "person",
"id": 35,
"first_name": "Dolce",
"last_name": "Miller",
"middle_name": "",
"prefix": null,
"suffix": null,
"preferred_name": null,
"display_name": "Dolce Miller",
"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,
"added_at": null,
"added_by_id": null,
"updated_at": null,
"report_data": {
"person_id": 35,
"active_roles": null,
"username": null,
"primary_address_street": null,
"primary_address_city": null,
"primary_address_state": null,
"primary_address_country": null,
"is_alum": 0,
"primary_org_title": null,
"primary_org_name": null,
"contact_primary_email": null,
"contact_primary_phone": null,
"visible_student_id": "20220xx003"
},
"private_profile": false,
"is_user": false
}
],
"sandbox": true
}
Retrieves all Person objects that match given filter conditions.
HTTP Request
GET /people
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
- enrollments
- addresses
- phone_numbers
- email_addresses
- websites
- student
- races
- user
- roles
- tags
- locks
- relationships
- communicationplans
- aid_authorizations
- profile_picture_file
- notes
- student_programs
- student_degrees
- student_specializations
Filter Condition Parameters
These conditions can be used to narrow the results returned.
Name | Type |
---|---|
address | address |
age | integer |
alien_registration_number | text |
alumni | bool |
birthdate | date |
birthday | month_day |
citizenship | countryobject id |
currently_enrolled | bool |
custom_field | custom |
deceased | bool |
deceased_date | date |
first_name | text |
former_name | text |
gender | gender |
has_profile_picture | bool |
has_verified_email | bool |
has_verified_text_messaging_number | bool |
home_city | text |
home_country | country |
home_state | state |
import | object id |
info_changed | datetime |
last_active | date |
last_name | text |
license_plate | text |
localization | localization |
lock_type | locktype |
login_approvals_enabled | bool |
middle_name | text |
organization | personcontactorganization |
phone | phone |
populi_name | text |
preferred_name | text |
prefix | text |
private_profile | bool |
race_ethnicity | raceethnicity |
race_ethnicity_ipeds | baseobject id |
resident_alien | bool |
role | role |
sin | text |
ssn | text |
student_housing | student_housing |
student_id | text |
suffix | text |
tag | tag |
user_account | choice |
username | text |
website | website |
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Financial Auditor
- Staff
create
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"first_name": "Tsedey",
"last_name": "Smith"
}' \
Example response:
{
"object": "person",
"id": 36,
"first_name": "Tsedey",
"last_name": "Smith",
"middle_name": "",
"prefix": null,
"suffix": null,
"preferred_name": null,
"display_name": "Tsedey Smith",
"gender": null,
"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,
"added_at": "2024-11-20T12:03:35+00:00",
"added_by_id": 22,
"updated_at": "2024-11-20T12:03:35+00:00",
"private_profile": false,
"is_user": false,
"sandbox": true
}
Creates a new Person object.
HTTP Request
POST /people
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
first_name | Yes | text (50) | |
last_name | Yes | text (50) | |
middle_name | No | text (50) | |
prefix | No | text (20) | |
suffix | No | text (20) | |
preferred_name | No | text (255) | |
display_name | No | text (255) | |
gender | No | enum (male, female, unknown, other) | |
birth_date | No | date | |
social_security_number | No | text (15) | |
alien_registration_number | No | text (30) | |
social_insurance_number | No | text (30) | |
home_city | No | text (50) | |
home_state | No | text (50) | |
home_country | No | text (50) | |
former_name | No | text (50) | |
license_plate | No | text (50) | |
bio | No | text (160) | |
resident_alien | No | bool | |
localization_id | No | int | |
is_private | No | bool | |
deceased_date | No | date | |
import_id | No | int |
Permissions
One of the following roles is required to call this method:
- Staff
by_student_id
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/by_student_id" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"student_id": "20220xx001"
}' \
Example response:
{
"object": "person",
"id": 16,
"first_name": "Academic",
"last_name": "Admin",
"middle_name": "",
"prefix": null,
"suffix": null,
"preferred_name": null,
"display_name": "Academic 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,
"added_at": null,
"added_by_id": null,
"updated_at": "2024-11-20T20:03:33+00:00",
"private_profile": false,
"is_user": true,
"sandbox": true
}
Get a single person by their visible student ID rather than their Populi ID.
HTTP Request
GET /people/by_student_id
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
student_id | Yes | text | visible student id |
Expandable Properties
- enrollments
- addresses
- phone_numbers
- email_addresses
- websites
- student
- races
- user
- roles
- tags
- locks
- relationships
- communicationplans
- aid_authorizations
- profile_picture_file
- notes
- student_programs
- student_degrees
- student_specializations
Permissions
One of the following roles is required to call this method:
- Staff
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"expand": [
"tags",
"addresses"
]
}' \
Example response:
{
"object": "person",
"id": 12,
"first_name": "Alice",
"last_name": "Admin",
"middle_name": "",
"prefix": "Mrs.",
"suffix": null,
"preferred_name": null,
"display_name": "Alice 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,
"addresses": [
{
"object": "address",
"id": 801,
"owner_id": 12,
"owner_type": "person",
"street": "123 Street",
"city": "Seattle",
"state": "WA",
"postal": "89000",
"country": "US",
"type": "other",
"primary": false,
"old": false,
"public": true,
"synced_from": null,
"import_id": null,
"added_at": null,
"added_by_id": 20
}
],
"tags": [
{
"object": "tag",
"id": 600,
"name": "Special",
"autogenerated": null,
"added_at": null,
"added_by_id": null
}
],
"added_at": null,
"added_by_id": null,
"updated_at": "2024-11-20T20:03:33+00:00",
"private_profile": false,
"is_user": true,
"sandbox": true
}
Retrieves a specific Person object.
HTTP Request
GET /people/(person)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- enrollments
- addresses
- phone_numbers
- email_addresses
- websites
- student
- races
- user
- roles
- tags
- locks
- relationships
- communicationplans
- aid_authorizations
- profile_picture_file
- notes
- student_programs
- student_degrees
- student_specializations
Permissions
One of the following roles is required to call this method:
- Staff
update
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X PUT
-d '{
"first_name": "Taylor",
"last_name": "Forest"
}' \
Example response:
{
"object": "person",
"id": 12,
"first_name": "Taylor",
"last_name": "Forest",
"middle_name": "",
"prefix": "Mrs.",
"suffix": null,
"preferred_name": null,
"display_name": "Alice 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,
"added_at": null,
"added_by_id": null,
"updated_at": "2024-11-20T12:03:35+00:00",
"private_profile": false,
"is_user": true,
"sandbox": true
}
Updates an existing Person object.
HTTP Request
PUT /people/(person)
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
first_name | No | text (50) | |
last_name | No | text (50) | |
middle_name | No | text (50) | |
prefix | No | text (20) | |
suffix | No | text (20) | |
preferred_name | No | text (255) | |
display_name | No | text (255) | |
former_name | No | text (50) | |
gender | No | enum (male, female, unknown, other) | |
birth_date | No | date | |
social_security_number | No | text (15) | |
alien_registration_number | No | text (30) | |
social_insurance_number | No | text (30) | |
home_city | No | text (50) | |
home_state | No | text (50) | |
home_country | No | text (50) | |
license_plate | No | text (50) | |
bio | No | text (160) | |
resident_alien | No | bool | |
localization_id | No | int | |
is_private | No | bool |
Permissions
One of the following roles is required to call this method:
- Staff
update_profile_picture
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/update_profile_picture" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-F 'file=@/path/to/file.jpg' \
Example response:
"Example response not available."
Updates the profile_picture attribute of an existing Person object.
HTTP Request
POST /people/(person)/update_profile_picture
Parameters
This routes requires a file upload with the request. Use a form post parameter called "file".
delete
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "person",
"id": 21,
"deleted": true
}
Deletes an existing Person object.
HTTP Request
DELETE /people/(person)
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:
- Staff
mark_deceased
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/mark_deceased" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
Example response:
{
"object": "person",
"id": 14,
"first_name": "Josephine",
"last_name": "Student",
"middle_name": "",
"prefix": null,
"suffix": null,
"preferred_name": null,
"display_name": "Josephine Student",
"gender": "female",
"other_gender": null,
"image_file_id": null,
"birth_date": null,
"status": "deceased",
"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,
"added_at": null,
"added_by_id": null,
"updated_at": "2024-11-20T12:03:37+00:00",
"private_profile": false,
"is_user": false,
"sandbox": true
}
HTTP Request
POST /people/(person)/mark_deceased
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
deceased_date | No | date |
restore
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/restore" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
Example response:
{
"object": "person",
"id": 12,
"first_name": "Taylor",
"last_name": "Forest",
"middle_name": "",
"prefix": "Mrs.",
"suffix": null,
"preferred_name": null,
"display_name": "Alice 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": true,
"resident_alien": true,
"localization_id": null,
"notification_email_id": null,
"deceased_date": null,
"import_id": null,
"added_at": null,
"added_by_id": null,
"updated_at": "2024-11-20T12:03:37+00:00",
"private_profile": false,
"is_user": true,
"sandbox": true
}
HTTP Request
POST /people/(person)/restore
Parameters
None
Permissions
One of the following roles is required to call this method:
- Staff
upload_file
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/upload_file" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-F 'file=@/path/to/file.jpg' \
-F 'parameters={"custom_info_field_id":"2","academic_term_id":"470","visibility_role_ids":"[7, 10, 15]"}' \
Example response:
"Example response not available."
HTTP Request
POST /people/(person)/upload_file
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
custom_info_field_id | No | int | |
academic_term_id | No | int | |
visibility_role_ids | Yes | array of Role ids |
This routes requires a file upload with the request. Use a form post parameter called "file". Read about request and response format to see how parameters need to be specified differently when there is a file upload.
Permissions
One of the following roles is required to call this method:
- Staff
possible_duplicates
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/possibleduplicates" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"first_name": "dolce",
"last_name": "miller"
}' \
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "person",
"id": 35,
"first_name": "Dolce",
"last_name": "Miller",
"middle_name": "",
"prefix": null,
"suffix": null,
"preferred_name": null,
"display_name": "Dolce Miller",
"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,
"added_at": null,
"added_by_id": null,
"updated_at": null,
"private_profile": false,
"is_user": false
}
],
"sandbox": true
}
HTTP Request
GET /people/possibleduplicates
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
first_name | No | text (50) | |
last_name | No | text (50) | |
preferred_name | No | text (255) | |
gender | No | enum (male, female, unknown, other) |
Permissions
One of the following roles is required to call this method:
- Staff
PersonRace
The PersonRace object
The PersonRace object looks like this in JSON:
{
"object": "person_race",
"id": 1,
"person_id": 15,
"race_id": 7,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
person_id | Yes | int |
race_id | Yes | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/races" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "person",
"id": 12,
"first_name": "Taylor",
"last_name": "Forest",
"middle_name": "",
"prefix": "Mrs.",
"suffix": null,
"preferred_name": null,
"display_name": "Alice 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,
"races": [],
"added_at": null,
"added_by_id": null,
"updated_at": "2024-11-20T20:03:35+00:00",
"private_profile": false,
"is_user": true,
"sandbox": true
}
Retrieves all PersonRace objects tied to a specific Person.
HTTP Request
GET /people/(person)/races
Parameters
None
Permissions
One of the following roles is required to call this method:
- Staff
create
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/races" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"race_id": 1,
"hispanic_latino": "1"
}' \
Example response:
{
"object": "person",
"id": 12,
"first_name": "Taylor",
"last_name": "Forest",
"middle_name": "",
"prefix": "Mrs.",
"suffix": null,
"preferred_name": null,
"display_name": "Alice 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": true,
"resident_alien": false,
"localization_id": null,
"notification_email_id": null,
"deceased_date": null,
"import_id": null,
"races": [
{
"object": "race",
"id": 1,
"name": "American Indian or Alaska Native"
}
],
"added_at": null,
"added_by_id": null,
"updated_at": "2024-11-20T12:03:35+00:00",
"private_profile": false,
"is_user": true,
"sandbox": true
}
Creates a new PersonRace object.
HTTP Request
POST /people/(person)/races
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
race_id | No | int | You do not need to include race_id if you are only setting the hispanic_latino value. |
hispanic_latino | Yes | bool |
Permissions
One of the following roles is required to call this method:
- Staff
delete
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/races" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "person",
"id": 12,
"first_name": "Taylor",
"last_name": "Forest",
"middle_name": "",
"prefix": "Mrs.",
"suffix": null,
"preferred_name": null,
"display_name": "Alice 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": true,
"localization_id": null,
"notification_email_id": null,
"deceased_date": null,
"import_id": null,
"added_at": null,
"added_by_id": null,
"updated_at": "2024-11-20T12:03:37+00:00",
"private_profile": false,
"is_user": true,
"sandbox": true
}
Removes all race and ethnicity information about a person.
HTTP Request
DELETE /people/(person)/races
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:
- Staff
PhoneNumber
The PhoneNumber object
The PhoneNumber object looks like this in JSON:
{
"object": "phone_number",
"id": 3,
"owner_id": 1,
"owner_type": "organization",
"number": "333.555.6666 x 091",
"type": "work",
"primary": true,
"old": false,
"public": true,
"synced_from": null,
"ext": null,
"import_id": null,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
owner_id | Yes | int |
owner_type | Yes | enum (person, organization) |
number | Yes | text (45) |
type | Yes | enum (home, work, mobile, fax, other, org, school) |
primary | Yes | bool |
old | Yes | bool |
public | Yes | bool |
synced_from | Yes | int |
ext | No | int |
import_id | No | int |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index (organization)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/organizations/(organization)/phonenumbers" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "phone_number",
"id": 3,
"owner_id": 1,
"owner_type": "organization",
"number": "333.555.6666 x 091",
"type": "work",
"primary": true,
"old": false,
"public": true,
"synced_from": null,
"ext": null,
"import_id": null,
"added_at": null,
"added_by_id": null
}
],
"sandbox": true
}
Retrieves all PhoneNumber objects tied to a specific Organization.
HTTP Request
GET /organizations/(organization)/phonenumbers
Parameters
None
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Financial Auditor
- Staff
create (organization)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/organizations/(organization)/phonenumbers" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"number": "423-555-1100",
"type": "work"
}' \
Example response:
{
"object": "phone_number",
"id": 2179,
"owner_id": 1,
"owner_type": "organization",
"number": "(423) 555-1100",
"type": "work",
"primary": false,
"old": false,
"public": false,
"synced_from": null,
"ext": null,
"import_id": null,
"added_at": "2024-11-20T20:03:34+00:00",
"added_by_id": 22,
"sandbox": true
}
Creates a new PhoneNumber object.
HTTP Request
POST /organizations/(organization)/phonenumbers
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
number | Yes | text (45) | |
type | Yes | enum (home, work, mobile, fax, other, org, school) |
Permissions
One of the following roles is required to call this method:
- Staff
show (organization)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/organizations/(organization)/phonenumbers/(phonenumber)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "phone_number",
"id": 3,
"owner_id": 1,
"owner_type": "organization",
"number": "333.555.6666 x 091",
"type": "work",
"primary": true,
"old": false,
"public": true,
"synced_from": null,
"ext": null,
"import_id": null,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Retrieves a specific PhoneNumber object.
HTTP Request
GET /organizations/(organization)/phonenumbers/(phonenumber)
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:
- Staff
update (organization)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/organizations/(organization)/phonenumbers/(phonenumber)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X PUT
Example response:
{
"object": "phone_number",
"id": 3,
"owner_id": 1,
"owner_type": "organization",
"number": "(333) 555-6666 x 091",
"type": "work",
"primary": true,
"old": false,
"public": true,
"synced_from": null,
"ext": null,
"import_id": null,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Updates an existing PhoneNumber object.
HTTP Request
PUT /organizations/(organization)/phonenumbers/(phonenumber)
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
number | No | text (45) | |
type | No | enum (home, work, mobile, fax, other, org, school) | |
is_primary | No | bool | |
old | No | bool | |
public | No | bool |
Permissions
One of the following roles is required to call this method:
- Staff
delete (organization)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/organizations/(organization)/phonenumbers/(phonenumber)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "phone_number",
"id": 3,
"deleted": true
}
Deletes an existing PhoneNumber object.
HTTP Request
DELETE /organizations/(organization)/phonenumbers/(phonenumber)
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:
- Staff
index (person)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/phonenumbers" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "phone_number",
"id": 100,
"owner_id": 12,
"owner_type": "person",
"number": "333-555-6666",
"type": "work",
"primary": true,
"old": false,
"public": true,
"synced_from": null,
"ext": null,
"import_id": null,
"added_at": null,
"added_by_id": null
}
],
"sandbox": true
}
Retrieves all PhoneNumber objects tied to a specific Person.
HTTP Request
GET /people/(person)/phonenumbers
Parameters
None
Permissions
One of the following roles is required to call this method:
- Staff
create (person)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/phonenumbers" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"number": "555-555-4443",
"type": "home"
}' \
Example response:
{
"object": "phone_number",
"id": 2180,
"owner_id": 12,
"owner_type": "person",
"number": "(555) 555-4443",
"type": "home",
"primary": false,
"old": false,
"public": false,
"synced_from": null,
"ext": null,
"import_id": null,
"added_at": "2024-11-20T20:03:35+00:00",
"added_by_id": 22,
"sandbox": true
}
Creates a new PhoneNumber object.
HTTP Request
POST /people/(person)/phonenumbers
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
number | Yes | text (45) | |
type | Yes | enum (home, work, mobile, fax, other, org, school) |
Permissions
One of the following roles is required to call this method:
- Staff
show (person)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/phonenumbers/(phonenumber)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "phone_number",
"id": 16,
"owner_id": 16,
"owner_type": "person",
"number": "333.555.6666 x 091",
"type": "work",
"primary": true,
"old": false,
"public": true,
"synced_from": null,
"ext": null,
"import_id": null,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Retrieves a specific PhoneNumber object.
HTTP Request
GET /people/(person)/phonenumbers/(phonenumber)
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:
- Staff
update (person)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/phonenumbers/(phonenumber)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X PUT
Example response:
{
"object": "phone_number",
"id": 16,
"owner_id": 16,
"owner_type": "person",
"number": "(333) 555-6666 x 091",
"type": "work",
"primary": true,
"old": false,
"public": true,
"synced_from": null,
"ext": null,
"import_id": null,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Updates an existing PhoneNumber object.
HTTP Request
PUT /people/(person)/phonenumbers/(phonenumber)
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
number | No | text (45) | |
type | No | enum (home, work, mobile, fax, other, org, school) | |
is_primary | No | bool | |
old | No | bool | |
public | No | bool |
Permissions
One of the following roles is required to call this method:
- Staff
delete (person)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/phonenumbers/(phonenumber)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "phone_number",
"id": 16,
"deleted": true
}
Deletes an existing PhoneNumber object.
HTTP Request
DELETE /people/(person)/phonenumbers/(phonenumber)
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:
- Staff
Post
The Post object
The Post object looks like this in JSON:
{
"object": "post",
"id": 6,
"content": "Career fair this Saturday!",
"owner_type": "person",
"owner_id": null,
"added_by_instructor": false,
"edited_at": null,
"edited_post_id": null,
"added_at": "2020-04-15T18:36:01+00:00",
"added_by_id": 1,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
content | Yes | text |
owner_type | No | -- |
owner_id | No | int |
added_by_instructor | Yes | bool |
edited_at | No | datetime |
edited_post_id | Yes | int |
added_at | Yes | datetime |
added_by_id | No | int |
sandbox | No | -- |
index (courseoffering)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/posts" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": 100,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "post",
"id": 7,
"content": "What are you thoughts on the latest reading?",
"owner_type": "course",
"owner_id": 21908,
"added_by_instructor": true,
"edited_at": null,
"edited_post_id": null,
"author_name": "API Dude",
"author_initials": "AD",
"author_image_file_id": null,
"num_likes": 0,
"num_comments": 1,
"added_at": "2022-04-15T18:36:01+00:00",
"added_by_id": 22
}
],
"sandbox": true
}
Retrieves all Post objects tied to a specific Courseoffering.
HTTP Request
GET /courseofferings/(courseoffering)/posts
Parameters
None
create (courseoffering)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/posts" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"content": "What is your favorite flavor of soda?"
}' \
Example response:
{
"object": "post",
"id": 151,
"content": "What is your favorite flavor of soda?",
"owner_type": "course",
"owner_id": 21908,
"added_by_instructor": false,
"edited_at": null,
"edited_post_id": null,
"added_at": "2024-11-20T20:03:37+00:00",
"added_by_id": 22,
"sandbox": true
}
Creates a new Post object.
HTTP Request
POST /courseofferings/(courseoffering)/posts
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
content | Yes | text |
show (courseoffering)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/posts/(post)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "post",
"id": 7,
"content": "What are you thoughts on the latest reading?",
"owner_type": "course",
"owner_id": 21908,
"added_by_instructor": true,
"edited_at": null,
"edited_post_id": null,
"added_at": "2022-04-15T18:36:01+00:00",
"added_by_id": 22,
"sandbox": true
}
Retrieves a specific Post object.
HTTP Request
GET /courseofferings/(courseoffering)/posts/(post)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- comments
update (courseoffering)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/posts/(post)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X PUT
-d '{
"content": "Hello everyone. Be sure to sign up for a field trip slot next week!"
}' \
Example response:
{
"object": "post",
"id": 7,
"content": "Hello everyone. Be sure to sign up for a field trip slot next week!",
"owner_type": "course",
"owner_id": 21908,
"added_by_instructor": true,
"edited_at": "2024-11-20T20:03:37+00:00",
"edited_post_id": null,
"added_at": "2022-04-15T18:36:01+00:00",
"added_by_id": 22,
"sandbox": true
}
Updates an existing Post object.
HTTP Request
PUT /courseofferings/(courseoffering)/posts/(post)
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
content | Yes | text |
delete (courseoffering)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/courseofferings/(courseoffering)/posts/(post)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "post",
"id": 7,
"deleted": true
}
Deletes an existing Post object.
HTTP Request
DELETE /courseofferings/(courseoffering)/posts/(post)
Parameters
No additional parameters are needed beyond the ID of the object to delete that appears in the URL.
index (group)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/groups/(group)/posts" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": 100,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "post",
"id": 8,
"content": "Anyone have ideas for movie night?",
"owner_type": "group",
"owner_id": 1,
"added_by_instructor": false,
"edited_at": null,
"edited_post_id": null,
"author_name": "API Dude",
"author_initials": "AD",
"author_image_file_id": null,
"num_likes": 0,
"num_comments": 0,
"added_at": "2022-04-15T18:36:01+00:00",
"added_by_id": 22
}
],
"sandbox": true
}
Retrieves all Post objects tied to a specific Group.
HTTP Request
GET /groups/(group)/posts
Parameters
None
show (group)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/groups/(group)/posts/(post)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "post",
"id": 8,
"content": "Anyone have ideas for movie night?",
"owner_type": "group",
"owner_id": 1,
"added_by_instructor": false,
"edited_at": null,
"edited_post_id": null,
"added_at": "2022-04-15T18:36:01+00:00",
"added_by_id": 22,
"sandbox": true
}
Retrieves a specific Post object.
HTTP Request
GET /groups/(group)/posts/(post)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- comments
index (person)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/posts" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": 100,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "post",
"id": 10,
"content": "Second recruiting call. Sounded positive.",
"owner_type": "person",
"owner_id": 12,
"added_by_instructor": false,
"edited_at": null,
"edited_post_id": null,
"author_name": "Academic Admin",
"author_initials": "AA",
"author_image_file_id": null,
"num_likes": 0,
"num_comments": 0,
"added_at": "2022-05-15T18:36:01+00:00",
"added_by_id": 16
}
],
"sandbox": true
}
Retrieves all Post objects tied to a specific Person.
HTTP Request
GET /people/(person)/posts
Parameters
None
show (person)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/posts/(post)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "post",
"id": 9,
"content": "Remember to turn in your keys.",
"owner_type": "person",
"owner_id": 16,
"added_by_instructor": false,
"edited_at": null,
"edited_post_id": null,
"added_at": "2022-04-15T18:36:01+00:00",
"added_by_id": 22,
"sandbox": true
}
Retrieves a specific Post object.
HTTP Request
GET /people/(person)/posts/(post)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- comments
PrintLayout
The PrintLayout object
The PrintLayout object looks like this in JSON:
{
"object": "print_layout",
"id": 6,
"name": "Standard letter",
"print_layout_type_id": 1,
"active_revision": null,
"default": true,
"template_type": "odt",
"content": null,
"subtype": null,
"added_at": "2010-05-06T22:07:20+00:00",
"added_by_id": 1257,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
name | Yes | text (200) |
print_layout_type_id | Yes | int |
active_revision | No | int |
default | No | -- |
template_type | Yes | enum (odt, html) |
content | No | text |
subtype | No | text (500) |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/printlayouts" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "print_layout",
"id": 6,
"name": "Standard letter",
"print_layout_type_id": 1,
"active_revision": null,
"default": true,
"template_type": "odt",
"content": null,
"subtype": null,
"added_at": "2010-05-06T22:07:20+00:00",
"added_by_id": 1257
}
],
"sandbox": true
}
Retrieves all PrintLayout objects.
HTTP Request
GET /printlayouts
Parameters
None
Permissions
One of the following roles is required to call this method:
- Staff
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/printlayouts/(printlayout)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "print_layout",
"id": 6,
"name": "Standard letter",
"print_layout_type_id": 1,
"active_revision": null,
"default": true,
"template_type": "odt",
"content": null,
"subtype": null,
"added_at": "2010-05-06T22:07:20+00:00",
"added_by_id": 1257,
"sandbox": true
}
Retrieves a specific PrintLayout object.
HTTP Request
GET /printlayouts/(printlayout)
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:
- Staff
types
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/printlayouttypes" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 25,
"results": 25,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "print_layout_type",
"id": 26,
"name": "APPLICATION",
"display_name": "Admissions Application"
}
],
"sandbox": true
}
HTTP Request
GET /printlayouttypes
Parameters
None
Permissions
One of the following roles is required to call this method:
- Staff
Program
The Program object
The Program object looks like this in JSON:
{
"object": "program",
"id": 2,
"name": "Certificate",
"units": "credits",
"graduate_level": false,
"default": 1,
"default_tuition_schedule_id": null,
"grants_academic_credit": true,
"standings_include_clinical_hours": false,
"continuous_enrollment": false,
"payment_period_behavior": "none",
"payment_period_default_length": null,
"payment_period_max_length": null,
"payment_period_max_units": null,
"hidden_from_students": false,
"external_id": "UG1",
"status": "active",
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
name | Yes | text (255) |
units | Yes | enum (credits, hours) |
graduate_level | Yes | bool |
default | Yes | int |
default_tuition_schedule_id | No | int |
grants_academic_credit | Yes | bool |
standings_include_clinical_hours | Yes | bool |
continuous_enrollment | Yes | bool |
payment_period_behavior | No | enum (none, new, extend, manual) |
payment_period_default_length | No | int |
payment_period_max_length | No | int |
payment_period_max_units | No | int |
hidden_from_students | Yes | bool |
external_id | No | text (100) |
status | Yes | enum (active, retired, deleted) |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/programs" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 2,
"results": 2,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "program",
"id": 2,
"name": "Certificate",
"units": "credits",
"graduate_level": false,
"default": 1,
"default_tuition_schedule_id": null,
"grants_academic_credit": true,
"standings_include_clinical_hours": false,
"continuous_enrollment": false,
"payment_period_behavior": "none",
"payment_period_default_length": null,
"payment_period_max_length": null,
"payment_period_max_units": null,
"hidden_from_students": false,
"external_id": "UG1",
"status": "active"
}
],
"sandbox": true
}
Retrieves all Program objects.
HTTP Request
GET /programs
Parameters
None
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Academic Admin
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/programs/(program)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "program",
"id": 2,
"name": "Certificate",
"units": "credits",
"graduate_level": false,
"default": 1,
"default_tuition_schedule_id": null,
"grants_academic_credit": true,
"standings_include_clinical_hours": false,
"continuous_enrollment": false,
"payment_period_behavior": "none",
"payment_period_default_length": null,
"payment_period_max_length": null,
"payment_period_max_units": null,
"hidden_from_students": false,
"external_id": "UG1",
"status": "active",
"sandbox": true
}
Retrieves a specific Program object.
HTTP Request
GET /programs/(program)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- academic_standings
- full_time_thresholds
- tardies_thresholds
- min_attendance_thresholds
- grade_scales
- courses
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Academic Admin
students
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/programs/(program)/students" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"filter": []
}' \
Example response:
{
"object": "list",
"count": 2,
"results": 2,
"results_per_page": 200,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "person",
"id": 16,
"first_name": "Academic",
"last_name": "Admin",
"middle_name": "",
"prefix": null,
"suffix": null,
"preferred_name": null,
"display_name": "Academic 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,
"added_at": null,
"added_by_id": null,
"updated_at": "2024-11-20T20:03:33+00:00",
"report_data": {
"person_id": 16,
"active_roles": "4,7,14",
"username": "academic.admin",
"primary_address_street": null,
"primary_address_city": null,
"primary_address_state": null,
"primary_address_country": null,
"is_alum": 0,
"primary_org_title": null,
"primary_org_name": null,
"contact_primary_email": "football@nowhere.co",
"contact_primary_phone": "333.555.6666 x 091",
"visible_student_id": "20220xx001"
},
"private_profile": false,
"is_user": true
}
],
"sandbox": true
}
HTTP Request
GET /programs/(program)/students
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
- academic_standings
- full_time_thresholds
- tardies_thresholds
- min_attendance_thresholds
- grade_scales
- courses
Filter Condition Parameters
These conditions can be used to narrow the results returned.
Name | Type |
---|---|
degree | integer |
degree_level | integer |
last_active | date |
program | integer |
specialization | integer |
Permissions
One of the following roles is required to call this method:
- Academic Admin
transfer_credit_grade_options
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/programs/(program)/transfercreditsgradeoptions" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 4,
"results": 4,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": {
"grade_scale": {
"label": "Letter Grade",
"options": [
{
"value": 95,
"label": "A",
"min_points": 94,
"max_points": 999.99
},
{
"value": 92,
"label": "A-",
"min_points": 90,
"max_points": 93.99
},
{
"value": 88,
"label": "B+",
"min_points": 87,
"max_points": 89.99
},
{
"value": 85,
"label": "B",
"min_points": 84,
"max_points": 86.99
},
{
"value": 82,
"label": "B-",
"min_points": 80,
"max_points": 83.99
},
{
"value": 78,
"label": "C+",
"min_points": 77,
"max_points": 79.99
},
{
"value": 75,
"label": "C",
"min_points": 74,
"max_points": 76.99
},
{
"value": 72,
"label": "C-",
"min_points": 70,
"max_points": 73.99
},
{
"value": 65,
"label": "F",
"min_points": 0,
"max_points": 69.99
}
]
},
"pass_fail_grade_scale": {
"label": "Pass\/Fail",
"options": [
{
"value": 100,
"label": "P",
"min_points": 70,
"max_points": 999.99
},
{
"value": 0,
"label": "F",
"min_points": 0,
"max_points": 69.99
}
]
},
"other": {
"label": "Other",
"options": [
{
"value": "W",
"label": "W",
"full_label": "Withdrawn"
},
{
"value": "I",
"label": "I",
"full_label": "Incomplete"
}
]
},
"custom": {
"label": "Other",
"options": [
{
"value": "CUSTOM_STUDENT_STATUS_1",
"label": "WP",
"allow_retakes": 0
},
{
"value": "CUSTOM_STUDENT_STATUS_2",
"label": "WF",
"allow_retakes": 0
},
{
"value": "CUSTOM_STUDENT_STATUS_3",
"label": "INCFULL",
"allow_retakes": 0
}
]
}
}
}
HTTP Request
GET /programs/(program)/transfercreditsgradeoptions
Parameters
None
Permissions
One of the following roles is required to call this method:
- Academic Admin
Question
The Question object
The Question object looks like this in JSON:
{
"object": "question",
"id": 443,
"owner_type": "course",
"owner_id": 1064,
"type": "order",
"question": "What are the colors of the rainbow?",
"randomize_options": false,
"allow_partial_credit": false,
"case_sensitive": false,
"word_count": null,
"file_id": null,
"status": "active",
"added_time": "2010-06-07T23:08:12+00:00",
"import_id": null,
"added_by_id": 1257,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | No | int |
owner_type | Yes | enum (course) |
owner_id | Yes | int |
type | Yes | enum (short_answer, multiple_choice, order, essay, multiple_answer, true_false, matching) |
question | Yes | text |
randomize_options | Yes | bool |
allow_partial_credit | Yes | bool |
case_sensitive | Yes | bool |
word_count | No | int |
file_id | Yes | int |
status | Yes | enum (active, deleted) |
added_time | Yes | datetime |
import_id | No | int |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/catalogcourses/(catalogcourse)/questions" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "question",
"id": 500,
"owner_type": "course",
"owner_id": 576,
"type": "order",
"question": "What are the colors of the rainbow?",
"randomize_options": false,
"allow_partial_credit": false,
"case_sensitive": false,
"word_count": null,
"file_id": null,
"status": "active",
"added_time": "2022-06-07T23:08:12+00:00",
"import_id": null,
"added_by_id": 1257
}
],
"sandbox": true
}
Retrieves all Question objects tied to a specific Catalogcourse.
HTTP Request
GET /catalogcourses/(catalogcourse)/questions
Parameters
None
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Academic Admin
- Registrar
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/catalogcourses/(catalogcourse)/questions/(question)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "question",
"id": 500,
"owner_type": "course",
"owner_id": 576,
"type": "order",
"question": "What are the colors of the rainbow?",
"randomize_options": false,
"allow_partial_credit": false,
"case_sensitive": false,
"word_count": null,
"file_id": null,
"status": "active",
"added_time": "2022-06-07T23:08:12+00:00",
"import_id": null,
"added_by_id": 1257,
"sandbox": true
}
Retrieves a specific Question object.
HTTP Request
GET /catalogcourses/(catalogcourse)/questions/(question)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- options
- categories
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Academic Admin
- Registrar
QuestionCategory
The QuestionCategory object
The QuestionCategory object looks like this in JSON:
{
"object": "question_category",
"id": 1,
"catalog_course_id": 591,
"name": "Rude",
"status": "active",
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | No | int |
catalog_course_id | Yes | int |
name | Yes | text (250) |
status | Yes | enum (active, retired) |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/catalogcourses/(catalogcourse)/questioncategories" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 17,
"results": 17,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "question_category",
"id": 93,
"catalog_course_id": 576,
"name": "Rap Music",
"status": "active"
}
],
"sandbox": true
}
Retrieves all QuestionCategory objects tied to a specific Catalogcourse.
HTTP Request
GET /catalogcourses/(catalogcourse)/questioncategories
Parameters
None
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Academic Admin
- Registrar
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/catalogcourses/(catalogcourse)/questioncategories/(questioncategory)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "question_category",
"id": 100,
"catalog_course_id": 576,
"name": "Stuff",
"status": "active",
"sandbox": true
}
Retrieves a specific QuestionCategory object.
HTTP Request
GET /catalogcourses/(catalogcourse)/questioncategories/(questioncategory)
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
Race
The Race object
The Race object looks like this in JSON:
{
"object": "race",
"id": 1,
"name": "American Indian or Alaska Native",
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
name | Yes | text (255) |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/races" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 5,
"results": 5,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "race",
"id": 1,
"name": "American Indian or Alaska Native"
}
],
"sandbox": true
}
Retrieves all Race objects.
HTTP Request
GET /races
Parameters
None
Permissions
One of the following roles is required to call this method:
- Staff
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/races/(race)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "race",
"id": 1,
"name": "American Indian or Alaska Native",
"sandbox": true
}
Retrieves a specific Race object.
HTTP Request
GET /races/(race)
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:
- Staff
Refund
The Refund object
The Refund object looks like this in JSON:
{
"object": "refund",
"id": 6,
"student_id": 1,
"transaction_id": 21,
"number": 1,
"amount": 100,
"online_payment_id": null,
"refund_source": null,
"reference_number": null,
"receipt_number": "ce9sfe5d2e",
"currency": "USD",
"exchange_rate": null,
"home_currency_amount": 100,
"treat_as_aid": false,
"organization_name": null,
"method": "other",
"paid_to_type": "person",
"paid_to_id": 2,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
student_id | No | int |
transaction_id | Yes | int |
number | No | int |
amount | Yes | decimal |
online_payment_id | No | int |
refund_source | No | enum (all, payments_credits, all_aid, federal_aid, non_federal_aid, aid_type) |
reference_number | Yes | text (100) |
receipt_number | No | text (50) |
currency | No | text (3) |
exchange_rate | No | decimal |
home_currency_amount | Yes | decimal |
treat_as_aid | Yes | bool |
organization_name | No | text |
method | No | text |
paid_to_type | No | text |
paid_to_id | No | int |
sandbox | No | -- |
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/refunds/(refund)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "refund",
"id": 6,
"student_id": 1,
"transaction_id": 21,
"number": 1,
"amount": 100,
"online_payment_id": null,
"refund_source": null,
"reference_number": null,
"receipt_number": "ce9sfe5d2e",
"currency": "USD",
"exchange_rate": null,
"home_currency_amount": 100,
"treat_as_aid": false,
"organization_name": null,
"method": "other",
"paid_to_type": "person",
"paid_to_id": 2,
"sandbox": true
}
Retrieves a specific Refund object.
HTTP Request
GET /refunds/(refund)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- transaction
- student
- payment_refunds
- credit_refunds
Permissions
One of the following roles is required to call this method:
- Financial Auditor
- Financial Admin
- Student Billing
RefundPolicy
The RefundPolicy object
The RefundPolicy object looks like this in JSON:
{
"object": "refund_policy",
"id": 6,
"name": "Accelerated Refund Schedule",
"type": "custom",
"days_full_refund_into_term": null,
"prorate_as_of_term_start": false,
"days_cutoff": null,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
name | No | text (300) |
type | Yes | enum (prorated, custom) |
days_full_refund_into_term | No | int |
prorate_as_of_term_start | No | bool |
days_cutoff | No | int |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/refundpolicies" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "refund_policy",
"id": 6,
"name": "Accelerated Refund Schedule",
"type": "custom",
"days_full_refund_into_term": null,
"prorate_as_of_term_start": false,
"days_cutoff": null,
"added_at": null,
"added_by_id": null
}
],
"sandbox": true
}
Retrieves all RefundPolicy objects.
HTTP Request
GET /refundpolicies
Parameters
None
Permissions
One of the following roles is required to call this method:
- Financial Admin
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/refundpolicies/(refundpolicy)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "refund_policy",
"id": 6,
"name": "Accelerated Refund Schedule",
"type": "custom",
"days_full_refund_into_term": null,
"prorate_as_of_term_start": false,
"days_cutoff": null,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Retrieves a specific RefundPolicy object.
HTTP Request
GET /refundpolicies/(refundpolicy)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- brackets
Permissions
One of the following roles is required to call this method:
- Financial Admin
RequirementException
The RequirementException object
The RequirementException object looks like this in JSON:
{
"object": "requirement_exception",
"id": 31,
"student_id": 12,
"degree_id": 2,
"specialization_id": 4,
"owner_type": "specialization_course_group",
"owner_id": 41,
"type": "course_group_courses",
"value": 2,
"note": null,
"added_by_id": 24512,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | No | int |
student_id | Yes | int |
degree_id | Yes | int |
specialization_id | Yes | int |
owner_type | Yes | enum (degree, specialization, degree_course_group, specialization_course_group) |
owner_id | Yes | int |
type | Yes | enum (cumulative_gpa, overall_gpa, cumulative_units, resident_units, cumulative_clinical_hours, resident_clinical_hours, cumulative_attendance_hours, resident_attendance_hours, course_group_units, course_group_courses, course_group_clinical_hours, course_group_gpa, course_group_grade_points) |
value | Yes | decimal |
note | Yes | text (1000) |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/requirementexceptions" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "requirement_exception",
"id": 31,
"student_id": 12,
"degree_id": 2,
"specialization_id": 4,
"owner_type": "specialization_course_group",
"owner_id": 41,
"type": "course_group_courses",
"value": 2,
"note": null,
"added_by_id": 24512
}
],
"sandbox": true
}
Retrieves all RequirementException objects tied to a specific Person.
HTTP Request
GET /people/(person)/requirementexceptions
Parameters
None
Permissions
One of the following roles is required to call this method:
- Academic Admin
- Registrar
ReturnReason
The ReturnReason object
The ReturnReason object looks like this in JSON:
{
"object": "return_reason",
"id": 1,
"name": "Damaged",
"default": true,
"retired_by_id": null,
"retired_at": null,
"added_at": "2022-07-19T18:36:46+00:00",
"added_by_id": 10,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
name | Yes | text (255) |
default | Yes | bool |
retired_by_id | No | int |
retired_at | No | datetime |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/returnreasons" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "return_reason",
"id": 1,
"name": "Damaged",
"default": true,
"retired_by_id": null,
"retired_at": null,
"added_at": "2022-07-19T18:36:46+00:00",
"added_by_id": 10
}
],
"sandbox": true
}
Retrieves all ReturnReason objects.
HTTP Request
GET /returnreasons
Parameters
None
Permissions
One of the following roles is required to call this method:
- Bookstore Admin
- Financial Admin
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/returnreasons/(returnreason)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "return_reason",
"id": 1,
"name": "Damaged",
"default": true,
"retired_by_id": null,
"retired_at": null,
"added_at": "2022-07-19T18:36:46+00:00",
"added_by_id": 10,
"sandbox": true
}
Retrieves a specific ReturnReason object.
HTTP Request
GET /returnreasons/(returnreason)
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:
- Bookstore Admin
- Financial Admin
Role
The Role object
The Role object looks like this in JSON:
{
"object": "role",
"id": 7,
"name": "Academic Admin",
"abbrv": "ADMIN",
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
name | No | text (50) |
abbrv | Yes | text (50) |
sandbox | No | -- |
index (person)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/roles" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 3,
"results": 3,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "role",
"id": 4,
"name": "Staff",
"abbrv": "STAFF"
}
],
"sandbox": true
}
Retrieves all Role objects tied to a specific Person.
HTTP Request
GET /people/(person)/roles
Parameters
None
Permissions
One of the following roles is required to call this method:
- Staff
add (person)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/roles/add" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"role_id": "4"
}' \
Example response:
{
"object": "list",
"count": 3,
"results": 3,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "role",
"id": 4,
"name": "Staff",
"abbrv": "STAFF"
}
],
"sandbox": true
}
HTTP Request
GET /people/(person)/roles/add
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
role_id | Yes | int |
remove (person)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/roles/remove" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"role_id": "4"
}' \
Example response:
{
"object": "list",
"count": 2,
"results": 2,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "role",
"id": 5,
"name": "Student",
"abbrv": "STUDENT"
}
],
"sandbox": true
}
HTTP Request
GET /people/(person)/roles/remove
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
role_id | Yes | int |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/roles" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 24,
"results": 24,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "role",
"id": 7,
"name": "Academic Admin",
"abbrv": "ADMIN"
}
],
"sandbox": true
}
Retrieves all Role objects.
HTTP Request
GET /roles
Parameters
None
Permissions
Any role may call this method.
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/roles/(role)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "role",
"id": 7,
"name": "Academic Admin",
"abbrv": "ADMIN",
"sandbox": true
}
Retrieves a specific Role object.
HTTP Request
GET /roles/(role)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Permissions
Any role may call this method.
Room
The Room object
The Room object looks like this in JSON:
{
"object": "room",
"id": 1,
"building_id": 3,
"name": "Administrative Offices",
"floor": "1",
"capacity": null,
"default_room_plan_id": null,
"retired_at": null,
"retired_by_id": null,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
building_id | Yes | int |
name | Yes | text (255) |
floor | Yes | int |
capacity | Yes | int |
default_room_plan_id | No | int |
retired_at | No | datetime |
retired_by_id | No | int |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/rooms" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 6,
"results": 6,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "room",
"id": 1,
"building_id": 3,
"name": "Administrative Offices",
"floor": "1",
"capacity": null,
"default_room_plan_id": null,
"retired_at": null,
"retired_by_id": null,
"added_at": null,
"added_by_id": null
}
],
"sandbox": true
}
Retrieves all Room objects.
HTTP Request
GET /rooms
Parameters
None
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/rooms/(room)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "room",
"id": 1,
"building_id": 3,
"name": "Administrative Offices",
"floor": "1",
"capacity": null,
"default_room_plan_id": null,
"retired_at": null,
"retired_by_id": null,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Retrieves a specific Room object.
HTTP Request
GET /rooms/(room)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
schedule
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/rooms/schedule" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"start": "2022-08-01"
}' \
Example response:
{
"object": "list",
"count": 0,
"results": 0,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": []
}
This method returns a week's worth of room schedule data, equivalent to the Campus Life -> Facilities Schedule.
HTTP Request
GET /rooms/schedule
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
start | No | date | The date of the Monday of the week you want the room schedules for. Defaults to the Monday of the current week. |
campus_id | No | int | |
building_id | No | int | |
room_id | No | int |
Permissions
One of the following roles is required to call this method:
- Academic Admin
- Registrar
- Financial Admin
- Campus Life
RoomPlan
The RoomPlan object
The RoomPlan object looks like this in JSON:
{
"object": "room_plan",
"id": 1,
"name": "Palace",
"capacity": true,
"amount": 1250,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
name | Yes | text (100) |
capacity | Yes | bool |
amount | Yes | decimal |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/roomplans" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 2,
"results": 2,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "room_plan",
"id": 2,
"name": "Mansion",
"capacity": true,
"amount": 965,
"added_at": null,
"added_by_id": null
}
],
"sandbox": true
}
Retrieves all RoomPlan objects.
HTTP Request
GET /roomplans
Parameters
None
Permissions
One of the following roles is required to call this method:
- Financial Auditor
- Campus Life
- Financial Admin
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/roomplans/(roomplan)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "room_plan",
"id": 1,
"name": "Palace",
"capacity": true,
"amount": 1250,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Retrieves a specific RoomPlan object.
HTTP Request
GET /roomplans/(roomplan)
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:
- Financial Auditor
- Campus Life
- Financial Admin
RoomPlanStudent
The RoomPlanStudent object
The RoomPlanStudent object looks like this in JSON:
{
"object": "room_plan_student",
"id": 6,
"term_id": 73,
"student_id": 2388,
"plan_id": 4,
"room_id": null,
"capacity_used": 1,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
term_id | Yes | int |
student_id | Yes | int |
plan_id | Yes | int |
room_id | Yes | int |
capacity_used | Yes | int |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/roomplans" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "room_plan_student",
"id": 8,
"term_id": 7,
"student_id": 12,
"plan_id": 2,
"room_id": null,
"capacity_used": 1,
"room_plan": {
"object": "room_plan",
"id": 2,
"name": "Mansion",
"capacity": true,
"amount": 965,
"added_at": null,
"added_by_id": null
},
"added_at": null,
"added_by_id": null
}
],
"sandbox": true
}
Retrieves all RoomPlanStudent objects tied to a specific Person.
HTTP Request
GET /people/(person)/roomplans
Parameters
None
Permissions
One of the following roles is required to call this method:
- Financial Auditor
- Campus Life
- Financial Admin
- Student Billing
create
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/roomplans" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"academic_term_id": 8,
"room_plan_id": 6
}' \
Example response:
{
"object": "room_plan_student",
"id": 112,
"term_id": 8,
"student_id": 12,
"plan_id": 6,
"room_id": null,
"capacity_used": null,
"room_plan": null,
"added_at": "2024-11-20T20:03:36+00:00",
"added_by_id": 22,
"sandbox": true
}
Creates a new RoomPlanStudent object.
HTTP Request
POST /people/(person)/roomplans
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
academic_term_id | Yes | int | |
room_plan_id | Yes | int | |
room_id | No | int | |
capacity_used | No | int |
Permissions
One of the following roles is required to call this method:
- Financial Admin
- Student Billing
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/roomplans/(roomplanstudent)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "room_plan_student",
"id": 7,
"term_id": 8,
"student_id": 16,
"plan_id": 1,
"room_id": null,
"capacity_used": 1,
"room_plan": {
"object": "room_plan",
"id": 1,
"name": "Palace",
"capacity": true,
"amount": 1250,
"added_at": null,
"added_by_id": null
},
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Retrieves a specific RoomPlanStudent object.
HTTP Request
GET /people/(person)/roomplans/(roomplanstudent)
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:
- Financial Auditor
- Campus Life
- Financial Admin
- Student Billing
update
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/roomplans/(roomplanstudent)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X PUT
Example response:
{
"object": "room_plan_student",
"id": 7,
"term_id": 8,
"student_id": 16,
"plan_id": 1,
"room_id": null,
"capacity_used": 1,
"room_plan": {
"object": "room_plan",
"id": 1,
"name": "Palace",
"capacity": true,
"amount": 1250,
"added_at": null,
"added_by_id": null
},
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Updates an existing RoomPlanStudent object.
HTTP Request
PUT /people/(person)/roomplans/(roomplanstudent)
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
room_plan_id | No | int | |
room_id | No | int | |
capacity_used | No | int |
Permissions
One of the following roles is required to call this method:
- Financial Admin
- Student Billing
delete
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/roomplans/(roomplanstudent)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "room_plan_student",
"id": 7,
"deleted": true
}
Deletes an existing RoomPlanStudent object.
HTTP Request
DELETE /people/(person)/roomplans/(roomplanstudent)
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:
- Financial Admin
- Student Billing
Rubric
The Rubric object
The Rubric object looks like this in JSON:
{
"object": "rubric",
"id": 1,
"course_offering_id": null,
"cloned_from_id": null,
"name": "Non-fiction Writing 1",
"description": null,
"published": false,
"retired_by_id": null,
"retired_at": null,
"added_at": "2022-07-18T23:18:05+00:00",
"added_by_id": 10,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
course_offering_id | No | int |
cloned_from_id | No | int |
name | No | text (255) |
description | No | text (1000) |
published | Yes | bool |
retired_by_id | No | int |
retired_at | No | datetime |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/rubrics" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "rubric",
"id": 1,
"course_offering_id": null,
"cloned_from_id": null,
"name": "Non-fiction Writing 1",
"description": null,
"published": false,
"retired_by_id": null,
"retired_at": null,
"added_at": "2022-07-18T23:18:05+00:00",
"added_by_id": 10
}
],
"sandbox": true
}
Retrieves all Rubric objects.
HTTP Request
GET /rubrics
Parameters
None
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Academic Admin
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/rubrics/(rubric)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "rubric",
"id": 1,
"course_offering_id": null,
"cloned_from_id": null,
"name": "Non-fiction Writing 1",
"description": null,
"published": false,
"retired_by_id": null,
"retired_at": null,
"added_at": "2022-07-18T23:18:05+00:00",
"added_by_id": 10,
"sandbox": true
}
Retrieves a specific Rubric object.
HTTP Request
GET /rubrics/(rubric)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- criteria
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Academic Admin
SAPOverride
The SAPOverride object
The SAPOverride object looks like this in JSON:
{
"object": "sap_override",
"id": 1,
"student_id": 13,
"academic_term_id": null,
"owner_type": "payment_period",
"owner_id": 1,
"sap": "satisfactory",
"can_appeal": true,
"added_at": "2022-07-14T22:40:31+00:00",
"added_by_id": 10,
"updated_at": 2022,
"updated_by_id": 10,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
student_id | Yes | int |
academic_term_id | No | int |
owner_type | Yes | enum (term, payment_period) |
owner_id | Yes | int |
sap | Yes | enum (satisfactory, warning, probation, suspension, not_calculated) |
can_appeal | Yes | bool |
added_at | No | datetime |
added_by_id | No | int |
updated_at | No | int |
updated_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/sapoverrides" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "sap_override",
"id": 3,
"student_id": 12,
"academic_term_id": null,
"owner_type": "term",
"owner_id": 1,
"sap": "satisfactory",
"can_appeal": true,
"added_at": "2022-07-14T22:40:31+00:00",
"added_by_id": 10,
"updated_at": 2022,
"updated_by_id": 10
}
],
"sandbox": true
}
Retrieves all SAPOverride objects tied to a specific Person.
HTTP Request
GET /people/(person)/sapoverrides
Parameters
None
Permissions
One of the following roles is required to call this method:
- Financial Admin
- Financial Aid
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/sapoverrides/(sapoverride)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "sap_override",
"id": 2,
"student_id": 16,
"academic_term_id": null,
"owner_type": "term",
"owner_id": 1,
"sap": "satisfactory",
"can_appeal": true,
"added_at": "2022-07-14T22:40:31+00:00",
"added_by_id": 10,
"updated_at": 2022,
"updated_by_id": 10,
"sandbox": true
}
Retrieves a specific SAPOverride object.
HTTP Request
GET /people/(person)/sapoverrides/(sapoverride)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- academic_term
- payment_period
Permissions
One of the following roles is required to call this method:
- Financial Admin
- Financial Aid
SAPPolicy
The SAPPolicy object
The SAPPolicy object looks like this in JSON:
{
"object": "sappolicy",
"id": 1,
"program_id": 1,
"cum_gpa": 2,
"term_gpa": 0,
"cum_gpa_including_transfer": 0,
"term_gpa_including_transfer": 0,
"percent_cum_units_granted": 0,
"percent_term_units_granted": 66.6,
"percent_cum_units_granted_including_transfer": 0,
"steps": "pp2",
"superterm_only": false,
"term_withdrawal_behavior": "not_calculated",
"added_at": "2022-07-13T21:31:22+00:00",
"added_by_id": 10,
"updated_at": "2022-07-13T21:31:22+00:00",
"updated_by_id": 10,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
program_id | Yes | int |
cum_gpa | No | decimal |
term_gpa | No | decimal |
cum_gpa_including_transfer | No | decimal |
term_gpa_including_transfer | No | decimal |
percent_cum_units_granted | No | decimal |
percent_term_units_granted | No | decimal |
percent_cum_units_granted_including_transfer | No | decimal |
steps | Yes | enum (ay1, ay2, pp2, pp3, pp0) |
superterm_only | Yes | bool |
term_withdrawal_behavior | Yes | enum (not_calculated, satisfactory, failure) |
added_at | No | datetime |
added_by_id | No | int |
updated_at | No | datetime |
updated_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/sappolicies" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "sappolicy",
"id": 1,
"program_id": 1,
"cum_gpa": 2,
"term_gpa": 0,
"cum_gpa_including_transfer": 0,
"term_gpa_including_transfer": 0,
"percent_cum_units_granted": 0,
"percent_term_units_granted": 66.6,
"percent_cum_units_granted_including_transfer": 0,
"steps": "pp2",
"superterm_only": false,
"term_withdrawal_behavior": "not_calculated",
"added_at": "2022-07-13T21:31:22+00:00",
"added_by_id": 10,
"updated_at": "2022-07-13T21:31:22+00:00",
"updated_by_id": 10
}
],
"sandbox": true
}
Retrieves all SAPPolicy objects.
HTTP Request
GET /sappolicies
Parameters
None
Permissions
One of the following roles is required to call this method:
- Financial Aid
- Financial Admin
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/sappolicies/(sappolicy)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "sappolicy",
"id": 1,
"program_id": 1,
"cum_gpa": 2,
"term_gpa": 0,
"cum_gpa_including_transfer": 0,
"term_gpa_including_transfer": 0,
"percent_cum_units_granted": 0,
"percent_term_units_granted": 66.6,
"percent_cum_units_granted_including_transfer": 0,
"steps": "pp2",
"superterm_only": false,
"term_withdrawal_behavior": "not_calculated",
"added_at": "2022-07-13T21:31:22+00:00",
"added_by_id": 10,
"updated_at": "2022-07-13T21:31:22+00:00",
"updated_by_id": 10,
"sandbox": true
}
Retrieves a specific SAPPolicy object.
HTTP Request
GET /sappolicies/(sappolicy)
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:
- Financial Aid
- Financial Admin
SalesReceipt
The SalesReceipt object
The SalesReceipt object looks like this in JSON:
{
"object": "sales_receipt",
"id": 1,
"receipt_number": 1,
"transaction_id": 14,
"online_payment_id": 1,
"amount": 22,
"payment_method": "credit_card",
"reference_number": null,
"added_at": "2022-07-13T18:32:47+00:00",
"added_by_id": 10,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
receipt_number | Yes | int |
transaction_id | No | int |
online_payment_id | No | int |
amount | Yes | decimal |
payment_method | No | enum (cash, check, credit_card) |
reference_number | No | -- |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/salesreceipts" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"filter": {"0":{"logic":"ALL","fields":[{"name":"amount","value":{"type":"RANGE","start":"10.5","end":"900.15"},"positive":1}]}}
}' \
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": 200,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "financial_transaction",
"id": 14,
"type": "sales_receipt",
"status": "posted",
"number": 1239,
"posted_on": "2015-03-10",
"actor_type": "person",
"actor_id": 12,
"voided_at": null,
"voided_by_id": null,
"link_type": null,
"link_id": 0,
"amount": 10,
"reverses": null,
"reversed_by_id": null,
"reposts": null,
"reposted_by_id": null,
"repostable": true,
"added_at": "2015-03-10T19:33:11+00:00",
"added_by_id": null,
"report_data": {
"personid": 12,
"dummyid": "20220xx002",
"person_name": "Forest, Taylor",
"orderid": null,
"source": null,
"invoiceid": null,
"invoice_number": null,
"sales_receipt_id": 1,
"sales_receipt_secret": "8fe2c10cf09febfa1ec1ac20969ec857",
"receipt_number": 1,
"application_fee_id": null,
"application_fee_name": null,
"transcript_request_fee_id": null,
"transcript_request_fee_name": null,
"form_response_id": null,
"form_fee_id": null,
"form_fee_name": null,
"row_id": 14
}
}
],
"sandbox": true
}
Retrieves all SalesReceipt objects that match given filter conditions.
HTTP Request
GET /salesreceipts
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
- transaction
- online_payment
Filter Condition Parameters
These conditions can be used to narrow the results returned.
Name | Type |
---|---|
transaction_number | integer |
first_name | text |
last_name | text |
type | choice |
source | choice |
fee | object id |
posted_date | date |
amount | decimal |
tag | tag |
custom_field | custom |
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/salesreceipts/(salesreceipt)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "sales_receipt",
"id": 1,
"receipt_number": 1,
"transaction_id": 14,
"online_payment_id": 1,
"amount": 22,
"payment_method": "credit_card",
"reference_number": null,
"added_at": "2022-07-13T18:32:47+00:00",
"added_by_id": 10,
"sandbox": true
}
Retrieves a specific SalesReceipt object.
HTTP Request
GET /salesreceipts/(salesreceipt)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- transaction
- online_payment
ShippingMethod
The ShippingMethod object
The ShippingMethod object looks like this in JSON:
{
"object": "shipping_method",
"id": 20,
"name": "Standard: 3-5 business days",
"type": "per_item",
"carrier_id": 0,
"international": false,
"amount": 1.5,
"default": false,
"order_id": 6,
"retired": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | No | int |
name | Yes | text (100) |
type | Yes | enum (flat, per_item, per_pound, carrier_plan) |
carrier_id | Yes | int |
international | No | -- |
amount | Yes | decimal |
default | No | -- |
order_id | Yes | int |
retired | Yes | date |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/shippingmethods" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "shipping_method",
"id": 20,
"name": "Standard: 3-5 business days",
"type": "per_item",
"carrier_id": 0,
"international": false,
"amount": 1.5,
"default": false,
"order_id": 6,
"retired": null
}
],
"sandbox": true
}
Retrieves all ShippingMethod objects.
HTTP Request
GET /shippingmethods
Parameters
None
Permissions
One of the following roles is required to call this method:
- Bookstore Admin
- Financial Admin
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/shippingmethods/(shippingmethod)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "shipping_method",
"id": 20,
"name": "Standard: 3-5 business days",
"type": "per_item",
"carrier_id": 0,
"international": false,
"amount": 1.5,
"default": false,
"order_id": 6,
"retired": null,
"sandbox": true
}
Retrieves a specific ShippingMethod object.
HTTP Request
GET /shippingmethods/(shippingmethod)
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:
- Bookstore Admin
- Financial Admin
Specialization
The Specialization object
The Specialization object looks like this in JSON:
{
"object": "specialization",
"id": 2,
"degree_id": 1,
"type": "major",
"department_id": 0,
"name": "English",
"description": "English",
"abbrv": "ENG",
"cip_code": null,
"status": "active",
"external_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
degree_id | Yes | int |
type | Yes | enum (major, minor, concentration, emphasis, track, option, other) |
department_id | Yes | int |
name | Yes | text (250) |
description | No | text (500) |
abbrv | Yes | text (100) |
cip_code | Yes | text (20) |
status | Yes | enum (construction, active, retired) |
external_id | No | text (100) |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/degrees/(degree)/specializations" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "specialization",
"id": 2,
"degree_id": 1,
"type": "major",
"department_id": 0,
"name": "English",
"description": "English",
"abbrv": "ENG",
"cip_code": null,
"status": "active",
"external_id": null
}
],
"sandbox": true
}
Retrieves all Specialization objects tied to a specific Degree.
HTTP Request
GET /degrees/(degree)/specializations
Parameters
None
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Academic Admin
- Registrar
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/degrees/(degree)/specializations/(specialization)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "specialization",
"id": 2,
"degree_id": 1,
"type": "major",
"department_id": 0,
"name": "English",
"description": "English",
"abbrv": "ENG",
"cip_code": null,
"status": "active",
"external_id": null,
"academic_requirements": [],
"sandbox": true
}
Retrieves a specific Specialization object.
HTTP Request
GET /degrees/(degree)/specializations/(specialization)
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
students
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/degrees/(degree)/specializations/(specialization)/students" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"filter": []
}' \
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": 200,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "person",
"id": 16,
"first_name": "Academic",
"last_name": "Admin",
"middle_name": "",
"prefix": null,
"suffix": null,
"preferred_name": null,
"display_name": "Academic 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,
"added_at": null,
"added_by_id": null,
"updated_at": "2024-11-20T20:03:35+00:00",
"report_data": {
"person_id": 16,
"active_roles": "4,7,14",
"username": "academic.admin",
"primary_address_street": null,
"primary_address_city": null,
"primary_address_state": null,
"primary_address_country": null,
"is_alum": 0,
"primary_org_title": null,
"primary_org_name": null,
"contact_primary_email": "football@nowhere.co",
"contact_primary_phone": "(333) 555-6666 x 091",
"visible_student_id": "20220xx001"
},
"private_profile": false,
"is_user": true
}
],
"sandbox": true
}
HTTP Request
GET /degrees/(degree)/specializations/(specialization)/students
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
- degree
- academic_requirements
Filter Condition Parameters
These conditions can be used to narrow the results returned.
Name | Type |
---|---|
degree | integer |
degree_level | integer |
last_active | date |
program | integer |
specialization | integer |
Permissions
One of the following roles is required to call this method:
- Academic Admin
- Registrar
StandardizedTest
The StandardizedTest object
The StandardizedTest object looks like this in JSON:
{
"object": "standardized_test",
"id": 2,
"name": "ACT",
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
name | Yes | text (50) |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/standardizedtests" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 5,
"results": 5,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "standardized_test",
"id": 2,
"name": "ACT"
}
],
"sandbox": true
}
Retrieves all StandardizedTest objects.
HTTP Request
GET /standardizedtests
Parameters
None
Permissions
One of the following roles is required to call this method:
- Registrar
- Academic Admin
- Development
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/standardizedtests/(standardizedtest)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "standardized_test",
"id": 2,
"name": "ACT",
"sections": [
{
"object": "standardized_test_section",
"id": 3,
"test_id": 2,
"name": "Arts",
"minscore": 1,
"maxscore": 36,
"increment": 1,
"optional": false,
"version": null,
"order_id": null,
"used_in_totals_calc": false
},
{
"object": "standardized_test_section",
"id": 4,
"test_id": 2,
"name": "English",
"minscore": 1,
"maxscore": 36,
"increment": 1,
"optional": false,
"version": null,
"order_id": null,
"used_in_totals_calc": false
},
{
"object": "standardized_test_section",
"id": 5,
"test_id": 2,
"name": "Math",
"minscore": 1,
"maxscore": 36,
"increment": 1,
"optional": false,
"version": null,
"order_id": null,
"used_in_totals_calc": false
}
],
"sandbox": true
}
Retrieves a specific StandardizedTest object.
HTTP Request
GET /standardizedtests/(standardizedtest)
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:
- Registrar
- Academic Admin
- Development
StandardizedTestScore
The StandardizedTestScore object
The StandardizedTestScore object looks like this in JSON:
{
"object": "standardized_test_score",
"id": 6,
"test_id": 1,
"person_id": 12,
"score": 1500,
"test_date": "2014-02-26",
"received_date": "2014-02-26",
"primary": true,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
test_id | Yes | int |
person_id | Yes | int |
score | Yes | decimal |
test_date | Yes | date |
received_date | Yes | date |
primary | Yes | bool |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index (by person)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/standardizedtestscores" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "standardized_test_score",
"id": 6,
"test_id": 1,
"person_id": 12,
"score": 1500,
"test_date": "2014-02-26",
"received_date": "2014-02-26",
"primary": true,
"standardized_test": {
"object": "standardized_test",
"id": 1,
"name": "SAT",
"sections": [
{
"object": "standardized_test_section",
"id": 1,
"test_id": 1,
"name": "Math",
"minscore": 200,
"maxscore": 800,
"increment": 10,
"optional": false,
"version": null,
"order_id": null,
"used_in_totals_calc": false
},
{
"object": "standardized_test_section",
"id": 2,
"test_id": 1,
"name": "Verbal",
"minscore": 200,
"maxscore": 800,
"increment": 10,
"optional": false,
"version": null,
"order_id": null,
"used_in_totals_calc": false
}
]
},
"standardized_test_section_scores": [
{
"object": "standardized_test_section_score",
"id": 8,
"standardized_test_score_id": 6,
"section_id": 2,
"person_id": 12,
"score": 580,
"added_at": null,
"added_by_id": null
}
],
"added_at": null,
"added_by_id": null
}
],
"sandbox": true
}
Retrieves all StandardizedTestScore objects tied to a specific Person.
HTTP Request
GET /people/(person)/standardizedtestscores
Parameters
None
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Admissions Admin
- Admissions
- Academic Admin
- Registrar
create
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/standardizedtestscores" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"standardized_test_id": 1,
"score": "900",
"test_date": "2000-05-06",
"received_date": "2000-09-07"
}' \
Example response:
{
"object": "standardized_test_score",
"id": 8,
"test_id": 1,
"person_id": 12,
"score": 900,
"test_date": "2000-05-06T00:00:00-0700",
"received_date": "2000-09-07T00:00:00-0700",
"primary": true,
"standardized_test": {
"object": "standardized_test",
"id": 1,
"name": "SAT",
"sections": [
{
"object": "standardized_test_section",
"id": 1,
"test_id": 1,
"name": "Math",
"minscore": 200,
"maxscore": 800,
"increment": 10,
"optional": false,
"version": null,
"order_id": null,
"used_in_totals_calc": false
},
{
"object": "standardized_test_section",
"id": 2,
"test_id": 1,
"name": "Verbal",
"minscore": 200,
"maxscore": 800,
"increment": 10,
"optional": false,
"version": null,
"order_id": null,
"used_in_totals_calc": false
}
]
},
"standardized_test_section_scores": [],
"added_at": "2024-11-20T20:03:36+00:00",
"added_by_id": 22,
"sandbox": true
}
Creates a new StandardizedTestScore object.
HTTP Request
POST /people/(person)/standardizedtestscores
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
standardized_test_id | Yes | int | |
score | Yes | decimal | |
test_date | Yes | date | |
received_date | Yes | date | |
primary | No | bool |
Permissions
One of the following roles is required to call this method:
- Admissions Admin
- Admissions
- Academic Admin
- Registrar
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/standardizedtestscores/(standardizedtestscore)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "standardized_test_score",
"id": 6,
"test_id": 1,
"person_id": 12,
"score": 1500,
"test_date": "2014-02-26",
"received_date": "2014-02-26",
"primary": true,
"standardized_test": {
"object": "standardized_test",
"id": 1,
"name": "SAT",
"sections": [
{
"object": "standardized_test_section",
"id": 1,
"test_id": 1,
"name": "Math",
"minscore": 200,
"maxscore": 800,
"increment": 10,
"optional": false,
"version": null,
"order_id": null,
"used_in_totals_calc": false
},
{
"object": "standardized_test_section",
"id": 2,
"test_id": 1,
"name": "Verbal",
"minscore": 200,
"maxscore": 800,
"increment": 10,
"optional": false,
"version": null,
"order_id": null,
"used_in_totals_calc": false
}
]
},
"standardized_test_section_scores": [
{
"object": "standardized_test_section_score",
"id": 8,
"standardized_test_score_id": 6,
"section_id": 2,
"person_id": 12,
"score": 580,
"added_at": null,
"added_by_id": null
}
],
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Retrieves a specific StandardizedTestScore object.
HTTP Request
GET /people/(person)/standardizedtestscores/(standardizedtestscore)
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
- Admissions Admin
- Admissions
- Academic Admin
- Registrar
update
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/standardizedtestscores/(standardizedtestscore)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X PUT
Example response:
{
"object": "standardized_test_score",
"id": 6,
"test_id": 1,
"person_id": 12,
"score": 1500,
"test_date": "2014-02-26",
"received_date": "2014-02-26",
"primary": false,
"standardized_test": {
"object": "standardized_test",
"id": 1,
"name": "SAT",
"sections": [
{
"object": "standardized_test_section",
"id": 1,
"test_id": 1,
"name": "Math",
"minscore": 200,
"maxscore": 800,
"increment": 10,
"optional": false,
"version": null,
"order_id": null,
"used_in_totals_calc": false
},
{
"object": "standardized_test_section",
"id": 2,
"test_id": 1,
"name": "Verbal",
"minscore": 200,
"maxscore": 800,
"increment": 10,
"optional": false,
"version": null,
"order_id": null,
"used_in_totals_calc": false
}
]
},
"standardized_test_section_scores": [
{
"object": "standardized_test_section_score",
"id": 8,
"standardized_test_score_id": 6,
"section_id": 2,
"person_id": 12,
"score": 580,
"added_at": null,
"added_by_id": null
}
],
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Updates an existing StandardizedTestScore object.
HTTP Request
PUT /people/(person)/standardizedtestscores/(standardizedtestscore)
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
score | No | decimal | |
test_date | No | date | |
received_date | No | date | |
primary | No | bool |
Permissions
One of the following roles is required to call this method:
- Admissions Admin
- Admissions
- Academic Admin
- Registrar
delete
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/standardizedtestscores/(standardizedtestscore)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "standardized_test_score",
"id": 6,
"deleted": true
}
Deletes an existing StandardizedTestScore object.
HTTP Request
DELETE /people/(person)/standardizedtestscores/(standardizedtestscore)
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:
- Admissions Admin
- Admissions
- Academic Admin
- Registrar
index (by test)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/standardizedtestscores" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"standardized_test_id": 1
}' \
Example response:
{
"object": "list",
"count": 2,
"results": 2,
"results_per_page": 200,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "standardized_test_score",
"id": 7,
"test_id": 1,
"person_id": 16,
"score": 1500,
"test_date": "2014-02-26",
"received_date": "2014-02-26",
"primary": true,
"added_at": null,
"added_by_id": null,
"report_data": {
"person_display_name": "Academic Admin",
"person_first_name": "Academic",
"person_last_name": "Admin",
"row_id": "16_7",
"math_score": null,
"math_standardized_test_section_score_id": null,
"verbal_score": null,
"verbal_standardized_test_section_score_id": null
}
}
],
"sandbox": true
}
Retrieves all StandardizedTestScore objects.
HTTP Request
GET /standardizedtestscores
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
standardized_test_id | Yes | int | |
include_non_primary_scores | No | bool |
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Admissions Admin
- Admissions
- Academic Admin
- Registrar
StandardizedTestSectionScore
The StandardizedTestSectionScore object
The StandardizedTestSectionScore object looks like this in JSON:
{
"object": "standardized_test_section_score",
"id": 6,
"standardized_test_score_id": null,
"section_id": 1,
"person_id": 1,
"score": 540,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
standardized_test_score_id | No | int |
section_id | Yes | int |
person_id | Yes | int |
score | Yes | decimal |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/standardizedtestscores/(standardizedtestscore)/sections" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "standardized_test_section_score",
"id": 8,
"standardized_test_score_id": 6,
"section_id": 2,
"person_id": 12,
"score": 580,
"standardized_test_section": {
"object": "standardized_test_section",
"id": 2,
"test_id": 1,
"name": "Verbal",
"minscore": 200,
"maxscore": 800,
"increment": 10,
"optional": false,
"version": null,
"order_id": null,
"used_in_totals_calc": false
},
"added_at": null,
"added_by_id": null
}
],
"sandbox": true
}
Retrieves all StandardizedTestSectionScore objects tied to a specific Person.
HTTP Request
GET /people/(person)/standardizedtestscores/(standardizedtestscore)/sections
Parameters
None
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Admissions Admin
- Admissions
- Academic Admin
- Registrar
create
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/standardizedtestscores/(standardizedtestscore)/sections" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"standardized_test_section_id": 1,
"score": "455"
}' \
Example response:
{
"object": "standardized_test_section_score",
"id": 9,
"standardized_test_score_id": 6,
"section_id": 1,
"person_id": 12,
"score": 455,
"standardized_test_section": {
"object": "standardized_test_section",
"id": 1,
"test_id": 1,
"name": "Math",
"minscore": 200,
"maxscore": 800,
"increment": 10,
"optional": false,
"version": null,
"order_id": null,
"used_in_totals_calc": false
},
"added_at": "2024-11-20T20:03:36+00:00",
"added_by_id": 22,
"sandbox": true
}
Creates a new StandardizedTestSectionScore object.
HTTP Request
POST /people/(person)/standardizedtestscores/(standardizedtestscore)/sections
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
standardized_test_section_id | Yes | int | |
score | Yes | decimal |
Permissions
One of the following roles is required to call this method:
- Admissions Admin
- Admissions
- Academic Admin
- Registrar
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/standardizedtestscores/(standardizedtestscore)/sections/(standardizedtestsectionscore)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "standardized_test_section_score",
"id": 6,
"standardized_test_score_id": null,
"section_id": 1,
"person_id": 1,
"score": 540,
"standardized_test_section": {
"object": "standardized_test_section",
"id": 1,
"test_id": 1,
"name": "Math",
"minscore": 200,
"maxscore": 800,
"increment": 10,
"optional": false,
"version": null,
"order_id": null,
"used_in_totals_calc": false
},
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Retrieves a specific StandardizedTestSectionScore object.
HTTP Request
GET /people/(person)/standardizedtestscores/(standardizedtestscore)/sections/(standardizedtestsectionscore)
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
- Admissions Admin
- Admissions
- Academic Admin
- Registrar
update
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/standardizedtestscores/(standardizedtestscore)/sections/(standardizedtestsectionscore)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X PUT
-d '{
"score": "465"
}' \
Example response:
{
"object": "standardized_test_section_score",
"id": 6,
"standardized_test_score_id": null,
"section_id": 1,
"person_id": 1,
"score": 465,
"standardized_test_section": {
"object": "standardized_test_section",
"id": 1,
"test_id": 1,
"name": "Math",
"minscore": 200,
"maxscore": 800,
"increment": 10,
"optional": false,
"version": null,
"order_id": null,
"used_in_totals_calc": false
},
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Updates an existing StandardizedTestSectionScore object.
HTTP Request
PUT /people/(person)/standardizedtestscores/(standardizedtestscore)/sections/(standardizedtestsectionscore)
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
score | Yes | decimal |
Permissions
One of the following roles is required to call this method:
- Admissions Admin
- Admissions
- Academic Admin
- Registrar
delete
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/standardizedtestscores/(standardizedtestscore)/sections/(standardizedtestsectionscore)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "standardized_test_section_score",
"id": 7,
"deleted": true
}
Deletes an existing StandardizedTestSectionScore object.
HTTP Request
DELETE /people/(person)/standardizedtestscores/(standardizedtestscore)/sections/(standardizedtestsectionscore)
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:
- Admissions Admin
- Admissions
- Academic Admin
- Registrar
Student
The Student object
The Student object looks like this in JSON:
{
"object": "student",
"id": 1,
"visible_student_id": "20020xx000",
"entrance_term_id": 8,
"first_time": false,
"last_academic_term_id": null,
"exit_date": null,
"exit_reason_id": null,
"receives_1098t": true,
"loa_start_date": null,
"loa_end_date": null,
"proctored": false,
"max_enrolled_credits": null,
"max_enrolled_hours": null,
"max_audit_credits": null,
"max_audit_hours": null,
"student_type_campus": "enroll_audit",
"student_type_online": "enroll_audit",
"housing": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
visible_student_id | No | int |
entrance_term_id | No | int |
first_time | Yes | bool |
last_academic_term_id | No | int |
exit_date | Yes | date |
exit_reason_id | No | int |
receives_1098t | Yes | bool |
loa_start_date | No | date |
loa_end_date | No | date |
proctored | No | bool |
max_enrolled_credits | No | decimal |
max_enrolled_hours | No | decimal |
max_audit_credits | No | decimal |
max_audit_hours | No | decimal |
student_type_campus | Yes | enum (enroll_audit, enroll, audit, none) |
student_type_online | Yes | enum (enroll_audit, enroll, audit, none) |
housing | No | enum (on_campus, with_parent, off_campus, on_campus_with_dependents) |
sandbox | No | -- |
degree_audit
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/degreeaudit" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"degree_id": 1,
"academic_year_id": 4,
"specialization_id": 1
}' \
Example response:
{
"object": "list",
"count": 10,
"results": 10,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": {
"degree_requirement_id": null,
"specialization_requirement_id": null,
"degree": [],
"specialization": [],
"unused_courses": [],
"unused_transfer_courses": [],
"course_substitutions": [],
"course_waivers": [],
"course_exclusions": [],
"requirement_exceptions": []
}
}
HTTP Request
GET /people/(person)/degreeaudit
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
degree_id | Yes | int | |
academic_year_id | Yes | int | |
specialization_id | No | int |
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Academic Admin
- Registrar
This is a heavy call. For performance reasons, only one heavy call may be made at a time.
deposits (person)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/deposits" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "person",
"id": 12,
"first_name": "Alice",
"last_name": "Admin",
"middle_name": "",
"prefix": "Mrs.",
"suffix": null,
"preferred_name": null,
"display_name": "Alice Admin",
"gender": "female",
"other_gender": null,
"image_file_id": null,
"birth_date": null,
"status": "unpaid",
"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,
"accountid": 6,
"account_number": "CACHING",
"account_name": "Government Chedder",
"amount": "100.00",
"invoice_ids": null,
"latest_invoice_id": null,
"paid_date": null,
"has_form_sales_receipts": 0,
"latest_form_sales_receipt_added_date": null,
"latest_form_transaction_id": null,
"transactionid": 15,
"deposit_paid": 0,
"latest_deposit_is_from_form": false,
"visible_student_id": "20220xx002",
"added_at": null,
"added_by_id": null,
"updated_at": null,
"private_profile": false,
"is_user": true
}
],
"sandbox": true
}
HTTP Request
GET /people/(person)/deposits
Parameters
None
Permissions
One of the following roles is required to call this method:
- Financial Admin
- Student Billing
discipline
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/discipline" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "discipline",
"id": 10,
"student_id": 12,
"discipline_type_id": 5,
"comment": "Discipline data has been scrubbed from the system to prevent blackmail.",
"show_on_transcript": true,
"program_id": null,
"start_date": "2005-01-28",
"end_date": "2005-03-31",
"generate_tag": true,
"discipline_type": {
"object": "discipline_type",
"id": 5,
"name": "Warning",
"report_as": "warning"
},
"added_at": null,
"added_by_id": 102,
"updated_at": null,
"updated_by_id": null
}
],
"sandbox": true
}
HTTP Request
GET /people/(person)/discipline
Parameters
None
Permissions
One of the following roles is required to call this method:
- Academic Admin
- Registrar
enrollments
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 GET
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": 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
}
HTTP Request
GET /people/(person)/enrollments
Parameters
None
Permissions
One of the following roles is required to call this method:
- Academic Admin
- Registrar
export_transcript
curl "https://yourschool.populiweb.com/api2/people/(person)/export_transcript" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"program_id": "2",
"print_layout_id": "5",
"export_format": "ODT"
}' \
Example response:
{}
To generate using the built-in PDF layout, set export_format to PDF. To use a custom layout, provide print_layout_id.
HTTP Request
GET /people/(person)/export_transcript
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
program_id | Yes | int | |
print_layout_id | No | int | |
export_format | No | text |
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Academic Admin
- Registrar
This is a heavy call. For performance reasons, only one heavy call may be made at a time.
export_grade_report
curl "https://yourschool.populiweb.com/api2/people/(person)/gradereport" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"academic_term_id": "24",
"program_id": "2"
}' \
Example response:
{}
HTTP Request
GET /people/(person)/gradereport
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
academic_term_id | Yes | int | |
program_id | Yes | int |
Permissions
One of the following roles is required to call this method:
- Academic Admin
- Registrar
get_online_payment_link
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/onlinepaymentlink" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "link",
"person_id": 12,
"url": "https:\/\/nsa.populiweb.com\/router\/paymentlink\/4a4d06713f628e97865eaeab3080a657"
}
HTTP Request
GET /people/(person)/onlinepaymentlink
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
force_regenerate | No | bool | Set to true to generate a new link, which will invalidate any previous links. Default is false |
Permissions
One of the following roles is required to call this method:
- Financial Admin
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/student" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "student",
"id": 12,
"visible_student_id": "20220xx002",
"entrance_term_id": 0,
"first_time": false,
"last_academic_term_id": null,
"exit_date": null,
"exit_reason_id": null,
"receives_1098t": true,
"loa_start_date": null,
"loa_end_date": null,
"proctored": false,
"max_enrolled_credits": null,
"max_enrolled_hours": null,
"max_audit_credits": null,
"max_audit_hours": null,
"student_type_campus": "enroll_audit",
"student_type_online": "enroll_audit",
"housing": null,
"sandbox": true
}
Retrieves a specific Student object.
HTTP Request
GET /people/(person)/student
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 Admin
- Registrar
- Academic Auditor
- Academic Admin
- Registrar
update
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/student/update" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X PUT
Example response:
{
"object": "student",
"id": 12,
"visible_student_id": "20220xx002",
"entrance_term_id": 0,
"first_time": false,
"last_academic_term_id": null,
"exit_date": null,
"exit_reason_id": null,
"receives_1098t": true,
"loa_start_date": null,
"loa_end_date": null,
"proctored": false,
"max_enrolled_credits": null,
"max_enrolled_hours": null,
"max_audit_credits": null,
"max_audit_hours": null,
"student_type_campus": "enroll_audit",
"student_type_online": "enroll_audit",
"housing": null,
"sandbox": true
}
Updates an existing Student object.
HTTP Request
PUT /people/(person)/student/update
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
student_id | No | int | |
is_loa | No | bool | |
loa_start_date | No | date | |
loa_end_date | No | date | |
proctored | No | bool | |
max_enrolled_credits | No | decimal | |
max_enrolled_hours | No | decimal | |
max_audit_credits | No | decimal | |
max_audit_hours | No | decimal |
Permissions
One of the following roles is required to call this method:
- Academic Admin
- Registrar
transcript
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/transcript" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"program_id": "2"
}' \
Example response:
{
"object": "list",
"count": 2,
"results": 2,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": {
"programs": {
"2": {
"programid": "2",
"level": "Undergraduate",
"name": "Certificate",
"units": "CREDITS",
"hidden_from_students": 0,
"started_on": "2004-10-20",
"exit_date": null,
"exit_reason": null,
"standings_include_clinical_hours": 0,
"lock_gpa_data": false,
"transcript_note": {
"errors": null
},
"entrance_term_id": null,
"entrance_term_display_name": null,
"sort_by": 0
}
},
"transfer_credits": {
"2": {
"institutions": {
"1": {
"contact_org_name": "The Oxford School",
"transfer_courses": [
{
"course_group_id": null,
"course_id": 687,
"course_num": "SPAN306",
"course_name": "Spanish 6",
"description": "Spanish 7",
"attempted_units": 2.6,
"earned_units": 2.6,
"earned_standing_units": 2.6,
"grade_abbrv": "A",
"letter_grade": "A",
"quality_points": 10.4,
"gpa_units": 2.6,
"attempted_contra-units": 0,
"earned_contra-units": null,
"attempted_attendance_hours": null,
"earned_attendance_hours": null,
"attempted_clinical_hours": null,
"earned_clinical_hours": null,
"attendance_hours_that_affect_standing": null,
"clinical_hours_that_affect_standing": null,
"applied_to_course_abbrv": "LAT100",
"applied_to_course_name": "Beginning Latin",
"show_on_transcript": 1
}
]
}
},
"totals": {
"institutions": {
"1": {
"quality_points": 10.4,
"gpa_units": 2.6,
"attempted_units": 2.6,
"earned_units": 2.6,
"earned_standing_units": 2.6,
"attempted_contra-units": 0,
"earned_contra-units": null,
"attempted_attendance_hours": null,
"earned_attendance_hours": null,
"attempted_clinical_hours": null,
"earned_clinical_hours": null,
"attendance_hours_that_affect_standing": null,
"clinical_hours_that_affect_standing": null,
"clinical_course_earned_units": null,
"non_clinical_course_earned_units": 2.6,
"clinical_course_earned_contra_units": null,
"non_clinical_course_earned_contra_units": null
}
}
},
"effective_date_units": []
}
}
}
}
This route will return a lot of student data, the structure of which is too complex to articulate here.
HTTP Request
GET /people/(person)/transcript
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
program_id | Yes | int |
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Academic Admin
- Registrar
This is a heavy call. For performance reasons, only one heavy call may be made at a time.
transcript_notes
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/transcriptnotes" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "transcript_note",
"id": 1,
"student_id": 12,
"program_id": 2,
"academic_term_id": null,
"note": "Special accomodations for tests.",
"added_at": "2022-10-10T00:00:00+00:00",
"added_by_id": 16,
"updated_at": null,
"updated_by_id": null
}
],
"sandbox": true
}
HTTP Request
GET /people/(person)/transcriptnotes
Parameters
None
Permissions
One of the following roles is required to call this method:
- Academic Admin
- Registrar
balances
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/personbalances" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"filter": {"0":{"logic":"ALL","fields":[{"name":"balance","value":{"type":"RANGE","start":"10.5","end":"900.15"},"positive":1}]}}
}' \
Example response:
{
"object": "list",
"count": 2,
"results": 2,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"person_id": 1,
"display_name": "Elizabeth Fox",
"first_name": "Elizabeth",
"last_name": "Fox",
"balance": "1234.56"
}
]
}
HTTP Request
GET /personbalances
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. |
Filter Condition Parameters
These conditions can be used to narrow the results returned.
Name | Type |
---|---|
balance | decimal |
uncollectible_invoices | invoiceuncollectible |
program | program |
has_active_student_role | has_active_student_role |
on_active_payment_plan | bool |
has_active_recurring_payment | bool |
student_campus | campus |
tag | tag |
lock_type | locktype |
custom_field | custom |
Permissions
One of the following roles is required to call this method:
- Financial Admin
- Student Billing
StudentAdvisor
The StudentAdvisor object
The StudentAdvisor object looks like this in JSON:
{
"object": "student_advisor",
"id": 2,
"student_id": 11,
"advisor_id": 16,
"type": "primary",
"added_at": "2024-11-20T20:03:39+00:00",
"added_by_id": 13,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
student_id | Yes | int |
advisor_id | Yes | int |
type | Yes | enum (not_primary, primary, hidden) |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/advisors" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "student_advisor",
"id": 4,
"student_id": 12,
"advisor_id": 16,
"type": "hidden",
"added_at": "2024-11-20T20:03:28+00:00",
"added_by_id": 13
}
],
"sandbox": true
}
Retrieves all StudentAdvisor objects tied to a specific Person.
HTTP Request
GET /people/(person)/advisors
Parameters
None
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Registrar
- Academic Admin
create
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/advisors" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"advisor_id": 17
}' \
Example response:
{
"object": "student_advisor",
"id": 5,
"student_id": 12,
"advisor_id": 17,
"type": "not_primary",
"added_at": "2024-11-20T20:03:36+00:00",
"added_by_id": 22,
"sandbox": true
}
Creates a new StudentAdvisor object.
HTTP Request
POST /people/(person)/advisors
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
advisor_id | Yes | int | |
type | No | enum (not_primary, primary, hidden) |
Permissions
One of the following roles is required to call this method:
- Registrar
- Academic Admin
delete
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/advisors/(studentadvisor)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "student_advisor",
"id": 2,
"deleted": true
}
Deletes an existing StudentAdvisor object.
HTTP Request
DELETE /people/(person)/advisors/(studentadvisor)
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:
- Registrar
- Academic Admin
StudentCampus
The StudentCampus object
The StudentCampus object looks like this in JSON:
{
"object": "student_campus",
"id": 6,
"student_id": 1,
"campus_id": 8,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
student_id | Yes | int |
campus_id | Yes | int |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/campuses" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "student_campus",
"id": 8,
"student_id": 12,
"campus_id": 8,
"campus": {
"object": "campus",
"id": 8,
"name": "Main Campus",
"city": "Moscow",
"state": "ID",
"postal": "83843",
"country": "US",
"status": "active",
"primary": true,
"timezone": "America\/Los_Angeles",
"cod_routing_id": null,
"ope_id": null,
"export_prefix": null,
"ipeds_unit_id": null,
"country_full": "United States",
"added_at": null,
"added_by_id": null
},
"added_at": null,
"added_by_id": null
}
],
"sandbox": true
}
Retrieves all StudentCampus objects tied to a specific Person.
HTTP Request
GET /people/(person)/campuses
Parameters
None
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Registrar
- Academic Admin
create
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/campuses" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"campus_id": 8
}' \
Example response:
{
"object": "student_campus",
"id": 8,
"student_id": 12,
"campus_id": 8,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Creates a new StudentCampus object.
HTTP Request
POST /people/(person)/campuses
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
campus_id | Yes | int |
Permissions
One of the following roles is required to call this method:
- Registrar
- Academic Admin
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/campuses/(studentcampus)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "student_campus",
"id": 7,
"student_id": 16,
"campus_id": 8,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Retrieves a specific StudentCampus object.
HTTP Request
GET /people/(person)/campuses/(studentcampus)
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
- Registrar
- Academic Admin
delete
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/campuses/(studentcampus)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "student_campus",
"id": 7,
"deleted": true
}
Deletes an existing StudentCampus object.
HTTP Request
DELETE /people/(person)/campuses/(studentcampus)
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:
- Registrar
- Academic Admin
StudentConsequence
The StudentConsequence object
The StudentConsequence object looks like this in JSON:
{
"object": "student_consequence",
"id": 1,
"student_id": 8,
"consequence_id": 1,
"description": "Warning Letter to Parents",
"status": "pending",
"pending_charge_id": null,
"added_on": "2022-07-19",
"added_at": "2022-07-19T16:20:01+00:00",
"added_by_id": 10,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
student_id | Yes | int |
consequence_id | Yes | int |
description | No | text |
status | No | enum (pending, applied, waived, deleted) |
pending_charge_id | No | int |
added_on | No | date |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/consequences" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "student_consequence",
"id": 3,
"student_id": 12,
"consequence_id": 1,
"description": "Warning Letter to Guardians",
"status": "pending",
"pending_charge_id": null,
"added_on": "2022-07-19",
"added_at": "2022-08-19T16:20:01+00:00",
"added_by_id": 10
}
],
"sandbox": true
}
Retrieves all StudentConsequence objects tied to a specific Person.
HTTP Request
GET /people/(person)/consequences
Parameters
None
Permissions
One of the following roles is required to call this method:
- Academic Admin
- Registrar
- Financial Admin
- Campus Life
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/consequences/(studentconsequence)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "student_consequence",
"id": 2,
"student_id": 16,
"consequence_id": 1,
"description": "Warning Letter to Parents",
"status": "pending",
"pending_charge_id": null,
"added_on": "2022-07-19",
"added_at": "2022-07-19T16:20:01+00:00",
"added_by_id": 10,
"sandbox": true
}
Retrieves a specific StudentConsequence object.
HTTP Request
GET /people/(person)/consequences/(studentconsequence)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- consequence
Permissions
One of the following roles is required to call this method:
- Academic Admin
- Registrar
- Financial Admin
- Campus Life
StudentDefaultTuitionSchedule
The StudentDefaultTuitionSchedule object
The StudentDefaultTuitionSchedule object looks like this in JSON:
{
"object": "student_default_tuition_schedule",
"id": 6,
"student_id": 12,
"tuition_schedule_id": 1,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
student_id | No | int |
tuition_schedule_id | No | int |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/defaulttuitionschedules" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "student_default_tuition_schedule",
"id": 6,
"student_id": 12,
"tuition_schedule_id": 1,
"tuition_schedule": {
"object": "tuition_schedule",
"id": 1,
"name": "Cool Kids Plan",
"units": "hours",
"status": "active",
"refund_type": "prorated",
"refund_policy_id": null,
"added_at": null,
"added_by_id": null
},
"added_at": null,
"added_by_id": null
}
],
"sandbox": true
}
Retrieves all StudentDefaultTuitionSchedule objects tied to a specific Person.
HTTP Request
GET /people/(person)/defaulttuitionschedules
Parameters
None
Permissions
One of the following roles is required to call this method:
- Financial Aid
- Financial Auditor
- Financial Admin
- Student Billing
update
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/defaulttuitionschedules/create" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X PUT
-d '{
"tuition_schedule_id": 1
}' \
Example response:
{
"object": "student_default_tuition_schedule",
"id": 65,
"student_id": 16,
"tuition_schedule_id": 1,
"added_at": "2024-11-20T20:03:36+00:00",
"added_by_id": 22,
"sandbox": true
}
Updates an existing StudentDefaultTuitionSchedule object.
HTTP Request
PUT /people/(person)/defaulttuitionschedules/create
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
tuition_schedule_id | Yes | int |
Permissions
One of the following roles is required to call this method:
- Financial Admin
- Student Billing
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/defaulttuitionschedules/(studentdefaulttuitionschedule)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "student_default_tuition_schedule",
"id": 6,
"student_id": 12,
"tuition_schedule_id": 1,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Retrieves a specific StudentDefaultTuitionSchedule object.
HTTP Request
GET /people/(person)/defaulttuitionschedules/(studentdefaulttuitionschedule)
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:
- Financial Aid
- Financial Auditor
- Financial Admin
- Student Billing
delete
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/defaulttuitionschedules/(studentdefaulttuitionschedule)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "student_default_tuition_schedule",
"id": 6,
"deleted": true
}
Deletes an existing StudentDefaultTuitionSchedule object.
HTTP Request
DELETE /people/(person)/defaulttuitionschedules/(studentdefaulttuitionschedule)
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:
- Financial Admin
- Student Billing
StudentDegree
The StudentDegree object
The StudentDegree object looks like this in JSON:
{
"object": "student_degree",
"id": 1,
"student_id": 1,
"degree_id": 1,
"status": "active",
"graduation_date": null,
"active_date": "2006-08-18",
"inactive_date": null,
"catalog_year_id": 1,
"anticipated_completion_date": null,
"show_on_transcript": true,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | No | int |
student_id | Yes | int |
degree_id | Yes | int |
status | Yes | enum (active, inactive, granted, deleted) |
graduation_date | Yes | date |
active_date | Yes | date |
inactive_date | Yes | date |
catalog_year_id | Yes | int |
anticipated_completion_date | No | date |
show_on_transcript | Yes | bool |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/degrees" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "student_degree",
"id": 5,
"student_id": 12,
"degree_id": 2,
"status": "active",
"graduation_date": null,
"active_date": "2006-08-18",
"inactive_date": null,
"catalog_year_id": 1,
"anticipated_completion_date": null,
"show_on_transcript": true,
"degree": {
"object": "degree",
"id": 2,
"program_id": 1,
"degree_level_id": 1,
"department_id": 1,
"name": "Bachelor of Arts Spanish",
"description": "Bachelor of Arts Degree Spanish",
"abbrv": "B.A.",
"diploma": 1,
"status": "active",
"cip_code": "24.0101",
"unit": "credits",
"distance_education": false,
"length": null,
"length_unit": "years",
"external_id": null
}
}
],
"sandbox": true
}
Retrieves all StudentDegree objects tied to a specific Person.
HTTP Request
GET /people/(person)/degrees
Parameters
None
Permissions
One of the following roles is required to call this method:
- Registrar
- Academic Admin
create
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/degrees" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"degree_id": 1,
"catalog_year_id": 4
}' \
Example response:
{
"object": "student_degree",
"id": 6,
"student_id": 12,
"degree_id": 1,
"status": "active",
"graduation_date": null,
"active_date": "2024-11-20",
"inactive_date": null,
"catalog_year_id": 4,
"anticipated_completion_date": null,
"show_on_transcript": false,
"sandbox": true
}
Creates a new StudentDegree object.
HTTP Request
POST /people/(person)/degrees
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
degree_id | Yes | int | |
catalog_year_id | Yes | int | |
active_date | No | date | |
show_on_transcript | No | bool | |
anticipated_completion_date | No | date |
Permissions
One of the following roles is required to call this method:
- Registrar
- Academic Admin
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/degrees/(studentdegree)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "student_degree",
"id": 3,
"student_id": 16,
"degree_id": 1,
"status": "active",
"graduation_date": null,
"active_date": "2006-08-18",
"inactive_date": null,
"catalog_year_id": 1,
"anticipated_completion_date": null,
"show_on_transcript": true,
"sandbox": true
}
Retrieves a specific StudentDegree object.
HTTP Request
GET /people/(person)/degrees/(studentdegree)
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:
- Registrar
- Academic Admin
update
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/degrees/(studentdegree)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X PUT
Example response:
{
"object": "student_degree",
"id": 3,
"student_id": 16,
"degree_id": 1,
"status": "active",
"graduation_date": null,
"active_date": "2024-11-20",
"inactive_date": null,
"catalog_year_id": 1,
"anticipated_completion_date": null,
"show_on_transcript": false,
"sandbox": true
}
Updates an existing StudentDegree object.
HTTP Request
PUT /people/(person)/degrees/(studentdegree)
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
status | No | enum (active, inactive, granted, deleted) | |
show_on_transcript | No | bool | |
active_date | No | date | |
catalog_year_id | No | int |
Permissions
One of the following roles is required to call this method:
- Registrar
- Academic Admin
delete
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/degrees/(studentdegree)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "student_degree",
"id": 4,
"deleted": true
}
Deletes an existing StudentDegree object.
HTTP Request
DELETE /people/(person)/degrees/(studentdegree)
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:
- Registrar
- Academic Admin
StudentFlag
The StudentFlag object
The StudentFlag object looks like this in JSON:
{
"object": "student_flag",
"id": 2,
"student_id": 2,
"advisor_id": null,
"course_offering_id": 22524,
"color": "red",
"reason": null,
"attendance_percent": 0,
"consecutive_absences": 3,
"average_assignment_grade": 20,
"low_assignment_grade": 20,
"auto_generated": true,
"notified_at": null,
"resolved_by_id": null,
"resolved_at": null,
"ended_at": null,
"course_student_id": 1,
"added_at": "2022-07-19T16:43:57+00:00",
"added_by_id": 10,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
student_id | Yes | int |
advisor_id | No | int |
course_offering_id | No | int |
color | Yes | enum (red, yellow, green) |
reason | No | text |
attendance_percent | No | decimal |
consecutive_absences | No | int |
average_assignment_grade | No | decimal |
low_assignment_grade | No | decimal |
auto_generated | No | bool |
notified_at | No | datetime |
resolved_by_id | No | int |
resolved_at | No | datetime |
ended_at | No | datetime |
course_student_id | No | int |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/flags" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "student_flag",
"id": 3,
"student_id": 16,
"advisor_id": null,
"course_offering_id": 21908,
"color": "yellow",
"reason": null,
"attendance_percent": 0,
"consecutive_absences": 3,
"average_assignment_grade": 20,
"low_assignment_grade": 20,
"auto_generated": true,
"notified_at": null,
"resolved_by_id": null,
"resolved_at": null,
"ended_at": null,
"course_student_id": 6000000,
"added_at": "2022-08-19T16:43:57+00:00",
"added_by_id": 10
}
],
"sandbox": true
}
Retrieves all StudentFlag objects tied to a specific Person.
HTTP Request
GET /people/(person)/flags
Parameters
None
Permissions
One of the following roles is required to call this method:
- Academic Admin
- Registrar
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/flags/(studentflag)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "student_flag",
"id": 3,
"student_id": 16,
"advisor_id": null,
"course_offering_id": 21908,
"color": "yellow",
"reason": null,
"attendance_percent": 0,
"consecutive_absences": 3,
"average_assignment_grade": 20,
"low_assignment_grade": 20,
"auto_generated": true,
"notified_at": null,
"resolved_by_id": null,
"resolved_at": null,
"ended_at": null,
"course_student_id": 6000000,
"added_at": "2022-08-19T16:43:57+00:00",
"added_by_id": 10,
"sandbox": true
}
Retrieves a specific StudentFlag object.
HTTP Request
GET /people/(person)/flags/(studentflag)
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 Admin
- Registrar
StudentHonor
The StudentHonor object
The StudentHonor object looks like this in JSON:
{
"object": "student_honor",
"id": 1,
"person_id": 12,
"honor_id": 1,
"link_id": null,
"added_at": "2022-07-13T23:29:39+00:00",
"added_by_id": 10,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
person_id | Yes | int |
honor_id | Yes | int |
link_id | Yes | int |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/honors" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "student_honor",
"id": 1,
"person_id": 12,
"honor_id": 1,
"link_id": null,
"added_at": "2022-07-13T23:29:39+00:00",
"added_by_id": 10
}
],
"sandbox": true
}
Retrieves all StudentHonor objects tied to a specific Person.
HTTP Request
GET /people/(person)/honors
Parameters
None
Permissions
One of the following roles is required to call this method:
- Registrar
- Academic Admin
create
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/honors" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"honor_id": 1,
"link_id": 1
}' \
Example response:
{
"object": "student_honor",
"id": 2,
"person_id": 16,
"honor_id": 1,
"link_id": 1,
"added_at": "2022-07-13T23:29:39+00:00",
"added_by_id": 10,
"sandbox": true
}
Creates a new StudentHonor object.
HTTP Request
POST /people/(person)/honors
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
honor_id | Yes | int | |
link_id | Yes | int | This will be the ID of a Program, Degree, or Academic Term, depending on the type of Honor being created. |
Permissions
One of the following roles is required to call this method:
- Registrar
- Academic Admin
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/honors/(studenthonor)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "student_honor",
"id": 2,
"person_id": 16,
"honor_id": 1,
"link_id": 1,
"added_at": "2022-07-13T23:29:39+00:00",
"added_by_id": 10,
"sandbox": true
}
Retrieves a specific StudentHonor object.
HTTP Request
GET /people/(person)/honors/(studenthonor)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- honor
Permissions
One of the following roles is required to call this method:
- Registrar
- Academic Admin
delete
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/honors/(studenthonor)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "student_honor",
"id": 2,
"deleted": true
}
Deletes an existing StudentHonor object.
HTTP Request
DELETE /people/(person)/honors/(studenthonor)
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:
- Registrar
- Academic Admin
StudentProgram
The StudentProgram object
The StudentProgram object looks like this in JSON:
{
"object": "student_program",
"id": 5,
"student_id": 12,
"program_id": 2,
"started_on": "2004-10-20",
"entrance_term_id": null,
"exit_date": null,
"exit_reason_id": null,
"education_level_id": null,
"enrollment_status": "automatic",
"first_time": false,
"most_recent": true,
"transfer_student": false,
"name": "Certificate",
"units": "credits",
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
student_id | Yes | int |
program_id | Yes | int |
started_on | No | date |
entrance_term_id | No | int |
exit_date | No | date |
exit_reason_id | No | int |
education_level_id | No | int |
enrollment_status | Yes | enum (automatic, full_time, three_quarter_time, half_time, less_than_half_time) |
first_time | Yes | bool |
most_recent | Yes | bool |
transfer_student | No | -- |
name | No | text |
units | No | text |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/programs" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "student_program",
"id": 5,
"student_id": 12,
"program_id": 2,
"started_on": "2004-10-20",
"entrance_term_id": null,
"exit_date": null,
"exit_reason_id": null,
"education_level_id": null,
"enrollment_status": "automatic",
"first_time": false,
"most_recent": true,
"transfer_student": true,
"name": "Certificate",
"units": "credits",
"program": {
"object": "program",
"id": 2,
"name": "Certificate",
"units": "credits",
"graduate_level": false,
"default": 1,
"default_tuition_schedule_id": null,
"grants_academic_credit": true,
"standings_include_clinical_hours": false,
"continuous_enrollment": false,
"payment_period_behavior": "none",
"payment_period_default_length": null,
"payment_period_max_length": null,
"payment_period_max_units": null,
"hidden_from_students": false,
"external_id": "UG1",
"status": "active"
},
"added_at": null,
"added_by_id": null
}
],
"sandbox": true
}
Retrieves all StudentProgram objects tied to a specific Person.
HTTP Request
GET /people/(person)/programs
Parameters
None
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Registrar
- Academic Admin
create
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/programs" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"program_id": 1,
"started_on": "2021-09-30"
}' \
Example response:
{
"object": "student_program",
"id": 6,
"student_id": 12,
"program_id": 1,
"started_on": "2021-09-30",
"entrance_term_id": null,
"exit_date": null,
"exit_reason_id": null,
"education_level_id": null,
"enrollment_status": "automatic",
"first_time": false,
"most_recent": false,
"transfer_student": false,
"added_at": "2024-11-20T20:03:36+00:00",
"added_by_id": 22,
"sandbox": true
}
Creates a new StudentProgram object.
HTTP Request
POST /people/(person)/programs
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
program_id | Yes | int | |
started_on | Yes | date | |
entrance_term_id | No | int | |
education_level_id | No | int | |
enrollment_status | No | enum (automatic, full_time, three_quarter_time, half_time, less_than_half_time) | |
is_transfer_student | No | bool |
Permissions
One of the following roles is required to call this method:
- Registrar
- Academic Admin
update
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/programs/(studentprogram)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X PUT
-d '{
"status": "active"
}' \
Example response:
{
"object": "student_program",
"id": 3,
"student_id": 16,
"program_id": 1,
"started_on": "2003-10-20",
"entrance_term_id": null,
"exit_date": null,
"exit_reason_id": null,
"education_level_id": null,
"enrollment_status": "automatic",
"first_time": false,
"most_recent": true,
"transfer_student": false,
"name": "Undergraduate",
"units": "credits",
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Updates an existing StudentProgram object.
HTTP Request
PUT /people/(person)/programs/(studentprogram)
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
status | No | enum | |
started_on | No | date | |
entrance_term_id | No | int | |
education_level_id | No | int | |
enrollment_status | No | enum (automatic, full_time, three_quarter_time, half_time, less_than_half_time) | |
is_transfer_student | No | bool | |
exit_date | No | date | |
exit_reason_id | No | int |
Permissions
One of the following roles is required to call this method:
- Registrar
- Academic Admin
delete
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/programs/(studentprogram)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "student_program",
"id": 4,
"deleted": true
}
Deletes an existing StudentProgram object.
HTTP Request
DELETE /people/(person)/programs/(studentprogram)
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:
- Registrar
- Academic Admin
StudentSpecialization
The StudentSpecialization object
The StudentSpecialization object looks like this in JSON:
{
"object": "student_specialization",
"id": 1,
"specialization_id": 1,
"student_id": 1,
"student_degree_id": 1,
"granted_date": null,
"show_on_transcript": true,
"added_at": null,
"added_by_id": null,
"updated_at": null,
"updated_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
specialization_id | Yes | int |
student_id | Yes | int |
student_degree_id | Yes | int |
granted_date | Yes | date |
show_on_transcript | Yes | bool |
added_at | No | datetime |
added_by_id | No | int |
updated_at | No | datetime |
updated_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/degrees/(studentdegree)/specializations" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "student_specialization",
"id": 2,
"specialization_id": 2,
"student_id": 16,
"student_degree_id": 3,
"granted_date": null,
"show_on_transcript": true,
"specialization": {
"object": "specialization",
"id": 2,
"degree_id": 1,
"type": "major",
"department_id": 0,
"name": "English",
"description": "English",
"abbrv": "ENG",
"cip_code": null,
"status": "active",
"external_id": null
},
"added_at": null,
"added_by_id": null,
"updated_at": null,
"updated_by_id": null
}
],
"sandbox": true
}
Retrieves all StudentSpecialization objects tied to a specific Person.
HTTP Request
GET /people/(person)/degrees/(studentdegree)/specializations
Parameters
None
Permissions
One of the following roles is required to call this method:
- Registrar
- Academic Admin
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/degrees/(studentdegree)/specializations/(studentspecialization)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "student_specialization",
"id": 2,
"specialization_id": 2,
"student_id": 16,
"student_degree_id": 3,
"granted_date": null,
"show_on_transcript": true,
"added_at": null,
"added_by_id": null,
"updated_at": null,
"updated_by_id": null,
"sandbox": true
}
Retrieves a specific StudentSpecialization object.
HTTP Request
GET /people/(person)/degrees/(studentdegree)/specializations/(studentspecialization)
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:
- Registrar
- Academic Admin
update
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/degrees/(studentdegree)/specializations/(studentspecialization)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X PUT
Example response:
{
"object": "student_specialization",
"id": 2,
"specialization_id": 2,
"student_id": 16,
"student_degree_id": 3,
"granted_date": null,
"show_on_transcript": false,
"added_at": null,
"added_by_id": null,
"updated_at": "2024-11-20T20:03:36+00:00",
"updated_by_id": 22,
"sandbox": true
}
Updates an existing StudentSpecialization object.
HTTP Request
PUT /people/(person)/degrees/(studentdegree)/specializations/(studentspecialization)
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
show_on_transcript | No | bool | |
granted_date | No | date |
Permissions
One of the following roles is required to call this method:
- Registrar
- Academic Admin
delete
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/degrees/(studentdegree)/specializations/(studentspecialization)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "student_specialization",
"id": 2,
"deleted": true
}
Deletes an existing StudentSpecialization object.
HTTP Request
DELETE /people/(person)/degrees/(studentdegree)/specializations/(studentspecialization)
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:
- Registrar
- Academic Admin
StudentViolation
The StudentViolation object
The StudentViolation object looks like this in JSON:
{
"object": "student_violation",
"id": 1,
"student_id": 12,
"violation_id": 1,
"description": "Curfew Violation, after midnight",
"pending_charge_id": null,
"added_on": "2022-07-19",
"added_at": "2022-07-19T16:19:56+00:00",
"added_by_id": 10,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
student_id | Yes | int |
violation_id | Yes | int |
description | No | text |
pending_charge_id | No | int |
added_on | No | date |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/violations" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "student_violation",
"id": 1,
"student_id": 12,
"violation_id": 1,
"description": "Curfew Violation, after midnight",
"pending_charge_id": null,
"added_on": "2022-07-19",
"added_at": "2022-07-19T16:19:56+00:00",
"added_by_id": 10
}
],
"sandbox": true
}
Retrieves all StudentViolation objects tied to a specific Person.
HTTP Request
GET /people/(person)/violations
Parameters
None
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/violations/(studentviolation)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "student_violation",
"id": 2,
"student_id": 16,
"violation_id": 1,
"description": "Curfew Violation, after midnight",
"pending_charge_id": null,
"added_on": "2022-07-19",
"added_at": "2022-07-19T16:19:56+00:00",
"added_by_id": 10,
"sandbox": true
}
Retrieves a specific StudentViolation object.
HTTP Request
GET /people/(person)/violations/(studentviolation)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- violation
Tag
The Tag object
The Tag object looks like this in JSON:
{
"object": "tag",
"id": 500,
"name": "Active Lead",
"autogenerated": 1,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
name | Yes | text (100) |
autogenerated | Yes | int |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index (organization)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/organizations/(organization)/tags" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "tag",
"id": 600,
"name": "Special",
"autogenerated": null,
"added_at": null,
"added_by_id": null
}
],
"sandbox": true
}
Retrieves all Tag objects tied to a specific Organization.
HTTP Request
GET /organizations/(organization)/tags
Parameters
None
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Financial Auditor
- Staff
add (organization)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/organizations/(organization)/tags/add" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"tag_id": 501
}' \
Example response:
{
"object": "list",
"count": 2,
"results": 2,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "tag",
"id": 600,
"name": "Special",
"autogenerated": null,
"added_at": null,
"added_by_id": null
}
],
"sandbox": true
}
HTTP Request
GET /organizations/(organization)/tags/add
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
tag_id | No | int | tag_id or name is required. |
name | No | text (100) | You can supply the name of the tag instead of the tag_id. |
Permissions
One of the following roles is required to call this method:
- Staff
remove (organization)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/organizations/(organization)/tags/remove" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"tag_id": 501
}' \
Example response:
{
"object": "list",
"count": 0,
"results": 0,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [],
"sandbox": true
}
HTTP Request
GET /organizations/(organization)/tags/remove
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
tag_id | No | int | tag_id or name is required. |
name | No | text (100) | You can supply the name of the tag instead of the tag_id. |
Permissions
One of the following roles is required to call this method:
- Staff
index (person)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/tags" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 4,
"results": 4,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "tag",
"id": 500,
"name": "Active Lead",
"autogenerated": 1,
"added_at": null,
"added_by_id": null
}
],
"sandbox": true
}
Retrieves all Tag objects tied to a specific Person.
HTTP Request
GET /people/(person)/tags
Parameters
None
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Financial Auditor
- Staff
add (person)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/tags/add" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"tag_id": 501
}' \
Example response:
{
"object": "list",
"count": 5,
"results": 5,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "tag",
"id": 500,
"name": "Active Lead",
"autogenerated": 1,
"added_at": null,
"added_by_id": null
}
],
"sandbox": true
}
HTTP Request
GET /people/(person)/tags/add
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
tag_id | No | int | tag_id or name is required. |
name | No | text (100) | You can supply the name of the tag instead of the tag_id. |
Permissions
One of the following roles is required to call this method:
- Staff
remove (person)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/tags/remove" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"tag_id": 501
}' \
Example response:
{
"object": "list",
"count": 3,
"results": 3,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "tag",
"id": 500,
"name": "Active Lead",
"autogenerated": 1,
"added_at": null,
"added_by_id": null
}
],
"sandbox": true
}
HTTP Request
GET /people/(person)/tags/remove
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
tag_id | No | int | tag_id or name is required. |
name | No | text (100) | You can supply the name of the tag instead of the tag_id. |
Permissions
One of the following roles is required to call this method:
- Staff
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/tags" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 17,
"results": 17,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "tag",
"id": 500,
"name": "Active Lead",
"autogenerated": 1,
"added_at": null,
"added_by_id": null
}
],
"sandbox": true
}
Retrieves all Tag objects.
HTTP Request
GET /tags
Parameters
None
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Financial Auditor
- Staff
create
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/tags" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"name": "Career Fair"
}' \
Example response:
{
"object": "tag",
"id": 601,
"name": "Career Fair",
"autogenerated": null,
"added_at": "2024-11-20T20:03:34+00:00",
"added_by_id": 22,
"sandbox": true
}
If you try to create a Tag that already exists (same name), the existing Tag object will be returned.
HTTP Request
POST /tags
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
name | Yes | text (100) |
Permissions
One of the following roles is required to call this method:
- Staff
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/tags/(tag)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "tag",
"id": 500,
"name": "Active Lead",
"autogenerated": 1,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Retrieves a specific Tag object.
HTTP Request
GET /tags/(tag)
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
- Financial Auditor
- Staff
delete
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/tags/(tag)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "tag",
"id": 600,
"deleted": true
}
Custom tags can be deleted. System tags or autogenerated tags cannot be deleted.
HTTP Request
DELETE /tags/(tag)
Parameters
No additional parameters are needed beyond the ID of the object to delete that appears in the URL.
Permissions
Only keys that have been granted Populi Account Administrator permissions may call this method.
Todo
The Todo object
The Todo object looks like this in JSON:
{
"object": "todo",
"id": 8,
"name": "Print new brocures",
"assigned_to": 1,
"assigned_by_id": 1,
"attached_to": null,
"completed_by_id": 1,
"due_date": "2019-07-02",
"completed_time": null,
"added_time": "2019-06-26T00:57:21+00:00",
"communication_plan_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
name | Yes | text (500) |
assigned_to | Yes | int |
assigned_by_id | No | int |
attached_to | No | int |
completed_by_id | No | int |
due_date | Yes | date |
completed_time | No | datetime |
added_time | Yes | datetime |
communication_plan_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/todos" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": 200,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "todo",
"id": 8,
"name": "Print new brocures",
"assigned_to": 1,
"assigned_by_id": 1,
"attached_to": null,
"completed_by_id": 1,
"due_date": "2019-07-02",
"completed_time": null,
"added_time": "2019-06-26T00:57:21+00:00",
"communication_plan_id": null
}
],
"sandbox": true
}
Retrieves all Todo objects.
HTTP Request
GET /todos
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
page | No | int |
Permissions
One of the following roles is required to call this method:
- Staff
- Staff
- Faculty
create
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/todos" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"name": "Send out Fall promo postcards."
}' \
Example response:
{
"object": "todo",
"id": 9,
"name": "Send out Fall promo postcards.",
"assigned_to": 22,
"assigned_by_id": 22,
"attached_to": null,
"completed_by_id": null,
"due_date": null,
"completed_time": null,
"added_time": "2024-11-20T12:03:34+00:00",
"communication_plan_id": null,
"sandbox": true
}
Creates a new Todo object.
HTTP Request
POST /todos
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
name | Yes | text (500) | |
assigned_to | No | int | |
attached_to | No | int | |
due_date | No | date |
Permissions
One of the following roles is required to call this method:
- Staff
- Faculty
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/todos/(todo)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "todo",
"id": 8,
"name": "Print new brocures",
"assigned_to": 1,
"assigned_by_id": 1,
"attached_to": null,
"completed_by_id": 1,
"due_date": "2019-07-02",
"completed_time": null,
"added_time": "2019-06-26T00:57:21+00:00",
"communication_plan_id": null,
"sandbox": true
}
Retrieves a specific Todo object.
HTTP Request
GET /todos/(todo)
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:
- Staff
- Faculty
delete
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/todos/(todo)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "todo",
"id": 8,
"deleted": true
}
Deletes an existing Todo object.
HTTP Request
DELETE /todos/(todo)
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:
- Staff
- Faculty
complete
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/todos/(todo)/complete" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
Example response:
{
"object": "todo",
"id": 8,
"name": "Print new brocures",
"assigned_to": 1,
"assigned_by_id": 1,
"attached_to": null,
"completed_by_id": 22,
"due_date": "2019-07-02",
"completed_time": "2024-11-20T20:03:34+00:00",
"added_time": "2019-06-26T00:57:21+00:00",
"communication_plan_id": null,
"sandbox": true
}
HTTP Request
POST /todos/(todo)/complete
Parameters
None
Permissions
One of the following roles is required to call this method:
- Staff
- Faculty
TodoTemplate
The TodoTemplate object
The TodoTemplate object looks like this in JSON:
{
"object": "todo_template",
"id": 10,
"name": null,
"todo": "Admissions Followup Call #1",
"added_at": "2019-04-20T21:50:54+00:00",
"added_by_id": 125,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
name | Yes | text (200) |
todo | Yes | text (300) |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/todotemplates" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "todo_template",
"id": 10,
"name": null,
"todo": "Admissions Followup Call #1",
"added_at": "2019-04-20T21:50:54+00:00",
"added_by_id": 125
}
],
"sandbox": true
}
Retrieves all TodoTemplate objects.
HTTP Request
GET /todotemplates
Parameters
None
Permissions
One of the following roles is required to call this method:
- Staff
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/todotemplates/(todotemplate)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "todo_template",
"id": 10,
"name": null,
"todo": "Admissions Followup Call #1",
"added_at": "2019-04-20T21:50:54+00:00",
"added_by_id": 125,
"sandbox": true
}
Retrieves a specific TodoTemplate object.
HTTP Request
GET /todotemplates/(todotemplate)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- permissions
- communication_plan_events
- categories
Permissions
One of the following roles is required to call this method:
- Staff
TranscriptRequest
The TranscriptRequest object
The TranscriptRequest object looks like this in JSON:
{
"object": "transcript_request",
"id": 1,
"status": "active",
"person_id": 8,
"student_firstname": null,
"student_lastname": null,
"student_ssn": null,
"student_birthdate": null,
"student_last_enrolled_year": null,
"program_id": 1,
"delivery_method_id": 3,
"recipient_name": "Bob's University",
"email": null,
"street": "123 Street",
"city": "Moscow",
"state": "ID",
"postal": "83843",
"country": "US",
"notes": "blah",
"fee_id": 1,
"fee_amount": 22,
"charge_method": "credit_card",
"online_payment_id": 1,
"sales_receipt_id": 1,
"pending_charge_id": null,
"requester_name": "Wally Wanderer",
"requester_electronic_signature": "Wally W",
"requester_email": "wally@populi.co",
"requester_phone": "123-123-1234",
"secret": "72b5c7ee3d15f15932ea3a1813251b29",
"completed_at": "2022-07-13T18:32:47+00:00",
"completed_by_id": 10,
"refunded_at": null,
"refunded_by_id": null,
"added_at": "2022-07-13T18:31:48+00:00",
"added_by_id": 10,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
status | Yes | enum (construction, active, deleted, closed) |
person_id | No | int |
student_firstname | No | text (50) |
student_lastname | No | text (50) |
student_ssn | No | text (15) |
student_birthdate | No | date |
student_last_enrolled_year | No | text (10) |
program_id | No | int |
delivery_method_id | Yes | int |
recipient_name | No | text (200) |
No | text (200) | |
street | No | text (300) |
city | No | text (100) |
state | No | text (50) |
postal | No | text (50) |
country | No | text (50) |
notes | No | text (1000) |
fee_id | No | int |
fee_amount | Yes | decimal |
charge_method | No | enum (account, credit_card, external) |
online_payment_id | No | int |
sales_receipt_id | No | int |
pending_charge_id | No | int |
requester_name | No | text (200) |
requester_electronic_signature | No | text (200) |
requester_email | No | text (200) |
requester_phone | No | text (200) |
secret | No | text (200) |
completed_at | No | datetime |
completed_by_id | No | int |
refunded_at | No | datetime |
refunded_by_id | No | int |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/transcriptrequests" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"filter": {"0":{"logic":"ALL","fields":[{"name":"delivery_method","value":"BLAH","positive":1}]}}
}' \
Example response:
{
"object": "list",
"count": 0,
"results": 0,
"results_per_page": 200,
"pages": 0,
"page": 0,
"offset": 0,
"has_more": false,
"data": [],
"sandbox": true
}
Retrieves all TranscriptRequest objects that match given filter conditions.
HTTP Request
GET /transcriptrequests
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
- student
- delivery_method
- program
- fee
- requester
- completer
- refunder
- sales_receipt
- online_payment
Filter Condition Parameters
These conditions can be used to narrow the results returned.
Name | Type |
---|---|
student_name | text |
program | program |
delivery_method | choice |
requested_at | date |
is_complete | bool |
completed_at | date |
linked_to_populi_record | bool |
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Academic Admin
- Registrar
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/transcriptrequests/(transcriptrequest)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "transcript_request",
"id": 1,
"status": "active",
"person_id": 8,
"student_firstname": null,
"student_lastname": null,
"student_ssn": null,
"student_birthdate": null,
"student_last_enrolled_year": null,
"program_id": 1,
"delivery_method_id": 3,
"recipient_name": "Bob's University",
"email": null,
"street": "123 Street",
"city": "Moscow",
"state": "ID",
"postal": "83843",
"country": "US",
"notes": "blah",
"fee_id": 1,
"fee_amount": 22,
"charge_method": "credit_card",
"online_payment_id": 1,
"sales_receipt_id": 1,
"pending_charge_id": null,
"requester_name": "Wally Wanderer",
"requester_electronic_signature": "Wally W",
"requester_email": "wally@populi.co",
"requester_phone": "123-123-1234",
"secret": "72b5c7ee3d15f15932ea3a1813251b29",
"completed_at": "2022-07-13T18:32:47+00:00",
"completed_by_id": 10,
"refunded_at": null,
"refunded_by_id": null,
"added_at": "2022-07-13T18:31:48+00:00",
"added_by_id": 10,
"sandbox": true
}
Retrieves a specific TranscriptRequest object.
HTTP Request
GET /transcriptrequests/(transcriptrequest)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- student
- delivery_method
- program
- fee
- requester
- completer
- refunder
- sales_receipt
- online_payment
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Academic Admin
- Registrar
TranscriptRequestDeliveryMethod
The TranscriptRequestDeliveryMethod object
The TranscriptRequestDeliveryMethod object looks like this in JSON:
{
"object": "transcript_request_delivery_method",
"id": 1,
"name": "Print and Mail",
"workflow": "print",
"added_at": "2016-11-01T00:00:00+00:00",
"added_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
name | Yes | text (200) |
workflow | Yes | enum (none, print, email) |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/transcriptrequestdeliverymethods" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 2,
"results": 2,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "transcript_request_delivery_method",
"id": 1,
"name": "Print and Mail",
"workflow": "print",
"added_at": "2016-11-01T00:00:00+00:00",
"added_by_id": null
}
],
"sandbox": true
}
Retrieves all TranscriptRequestDeliveryMethod objects.
HTTP Request
GET /transcriptrequestdeliverymethods
Parameters
None
Permissions
One of the following roles is required to call this method:
- Academic Admin
- Registrar
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/transcriptrequestdeliverymethods/(transcriptrequestdeliverymethod)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "transcript_request_delivery_method",
"id": 1,
"name": "Print and Mail",
"workflow": "print",
"added_at": "2016-11-01T00:00:00+00:00",
"added_by_id": null,
"sandbox": true
}
Retrieves a specific TranscriptRequestDeliveryMethod object.
HTTP Request
GET /transcriptrequestdeliverymethods/(transcriptrequestdeliverymethod)
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 Admin
- Registrar
TranscriptRequestFeeRule
The TranscriptRequestFeeRule object
The TranscriptRequestFeeRule object looks like this in JSON:
{
"object": "transcript_request_fee_rule",
"id": 1,
"delivery_method_id": 3,
"program_id": null,
"fee_id": 1,
"amount": 22,
"added_at": "2022-07-13T18:30:24+00:00",
"added_by_id": 10,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
delivery_method_id | No | int |
program_id | No | int |
fee_id | Yes | int |
amount | No | decimal |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/transcriptrequestfeerules" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "transcript_request_fee_rule",
"id": 1,
"delivery_method_id": 3,
"program_id": null,
"fee_id": 1,
"amount": 22,
"added_at": "2022-07-13T18:30:24+00:00",
"added_by_id": 10
}
],
"sandbox": true
}
Retrieves all TranscriptRequestFeeRule objects.
HTTP Request
GET /transcriptrequestfeerules
Parameters
None
Permissions
One of the following roles is required to call this method:
- Academic Admin
- Registrar
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/transcriptrequestfeerules/(transcriptrequestfeerule)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "transcript_request_fee_rule",
"id": 1,
"delivery_method_id": 3,
"program_id": null,
"fee_id": 1,
"amount": 22,
"added_at": "2022-07-13T18:30:24+00:00",
"added_by_id": 10,
"sandbox": true
}
Retrieves a specific TranscriptRequestFeeRule object.
HTTP Request
GET /transcriptrequestfeerules/(transcriptrequestfeerule)
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 Admin
- Registrar
TransferCredit
The TransferCredit object
The TransferCredit object looks like this in JSON:
{
"object": "transfer_credit",
"id": 1,
"person_id": 1,
"transfer_institution_id": 1,
"description": "Spanish 1",
"credits": 2,
"hours": null,
"attendance_hours": null,
"clinical_hours": null,
"fulfills_program_requirements": true,
"pass_affects_gpa": true,
"fail_affects_gpa": true,
"pass_fail_pass_affects_gpa": true,
"pass_fail_fail_affects_gpa": true,
"affects_standing": true,
"course_number": "SPAN101",
"course_name": "Spanish 1",
"applied_date": null,
"effective_date": null,
"course_group_id": null,
"catalog_course_id": 687,
"status": "approved",
"status_at": null,
"status_by_id": null,
"organization_id": 1,
"organization_name": "The Oxford School",
"added_at": null,
"added_by_id": null,
"updated_at": null,
"updated_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
person_id | Yes | int |
transfer_institution_id | Yes | int |
description | No | text (5000) |
credits | No | decimal |
hours | No | decimal |
attendance_hours | No | decimal |
clinical_hours | No | decimal |
fulfills_program_requirements | Yes | bool |
pass_affects_gpa | Yes | bool |
fail_affects_gpa | Yes | bool |
pass_fail_pass_affects_gpa | Yes | bool |
pass_fail_fail_affects_gpa | Yes | bool |
affects_standing | Yes | bool |
course_number | Yes | text (50) |
course_name | Yes | text (255) |
applied_date | No | date |
effective_date | No | date |
course_group_id | No | int |
catalog_course_id | No | int |
status | Yes | enum (approved, pending, rejected) |
status_at | No | datetime |
status_by_id | No | int |
organization_id | No | int |
organization_name | No | text |
added_at | No | datetime |
added_by_id | No | int |
updated_at | No | datetime |
updated_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/transfercredits" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "transfer_credit",
"id": 7,
"person_id": 12,
"transfer_institution_id": 3,
"description": "Spanish 7",
"credits": 2.6,
"hours": null,
"attendance_hours": null,
"clinical_hours": null,
"fulfills_program_requirements": true,
"pass_affects_gpa": true,
"fail_affects_gpa": true,
"pass_fail_pass_affects_gpa": true,
"pass_fail_fail_affects_gpa": true,
"affects_standing": true,
"course_number": "SPAN306",
"course_name": "Spanish 6",
"applied_date": null,
"effective_date": null,
"course_group_id": null,
"catalog_course_id": 687,
"status": "approved",
"status_at": null,
"status_by_id": null,
"organization_id": 1,
"organization_name": "The Oxford School",
"added_at": null,
"added_by_id": null,
"updated_at": null,
"updated_by_id": null
}
],
"sandbox": true
}
Retrieves all TransferCredit objects tied to a specific Person.
HTTP Request
GET /people/(person)/transfercredits
Parameters
None
Expandable Properties
- transfer_credit_programs
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Admissions
- Admissions Admin
- Academic Admin
- Registrar
create
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/transferinstitutions/(transferinstitution)/transfercredits" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"course_number": "MATH 102",
"course_name": "Algebra II",
"credits": "3.00",
"catalog_course_id": 778,
"status": "pending"
}' \
Example response:
{
"object": "transfer_credit",
"id": 8,
"person_id": 12,
"transfer_institution_id": 3,
"description": null,
"credits": 3,
"hours": null,
"attendance_hours": null,
"clinical_hours": null,
"fulfills_program_requirements": true,
"pass_affects_gpa": true,
"fail_affects_gpa": true,
"pass_fail_pass_affects_gpa": false,
"pass_fail_fail_affects_gpa": true,
"affects_standing": true,
"course_number": "MATH 102",
"course_name": "Algebra II",
"applied_date": null,
"effective_date": null,
"course_group_id": null,
"catalog_course_id": 778,
"status": "pending",
"status_at": null,
"status_by_id": null,
"added_at": "2024-11-20T20:03:35+00:00",
"added_by_id": 22,
"updated_at": "2024-11-20T20:03:35+00:00",
"updated_by_id": 22,
"sandbox": true
}
Creates a new TransferCredit object.
HTTP Request
POST /people/(person)/transferinstitutions/(transferinstitution)/transfercredits
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
course_number | Yes | text (50) | |
course_name | Yes | text (255) | |
credits | No | decimal | |
hours | No | decimal | |
clinical_hours | No | decimal | |
attendance_hours | No | decimal | |
fulfills_program_requirements | No | bool | Default is true |
pass_affects_gpa | No | bool | Default is true |
fail_affects_gpa | No | bool | Default is true |
pass_fail_pass_affects_gpa | No | bool | Default is false |
pass_fail_fail_affects_gpa | No | bool | Default is true |
affects_standing | No | bool | Default is true |
catalog_course_id | No | int | |
course_group_id | No | int | |
effective_date | No | date | |
status | Yes | enum (approved, pending, rejected) | |
description | No | text (5000) |
Action Parameters
Name | Data Type | Description |
---|---|---|
applies_to_all_programs |
Permissions
One of the following roles is required to call this method:
- Admissions
- Admissions Admin
- Academic Admin
- Registrar
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/transferinstitutions/(transferinstitution)/transfercredits/(transfercredit)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "transfer_credit",
"id": 7,
"person_id": 12,
"transfer_institution_id": 3,
"description": "Spanish 7",
"credits": 2.6,
"hours": null,
"attendance_hours": null,
"clinical_hours": null,
"fulfills_program_requirements": true,
"pass_affects_gpa": true,
"fail_affects_gpa": true,
"pass_fail_pass_affects_gpa": true,
"pass_fail_fail_affects_gpa": true,
"affects_standing": true,
"course_number": "SPAN306",
"course_name": "Spanish 6",
"applied_date": null,
"effective_date": null,
"course_group_id": null,
"catalog_course_id": 687,
"status": "approved",
"status_at": null,
"status_by_id": null,
"added_at": null,
"added_by_id": null,
"updated_at": null,
"updated_by_id": null,
"sandbox": true
}
Retrieves a specific TransferCredit object.
HTTP Request
GET /people/(person)/transferinstitutions/(transferinstitution)/transfercredits/(transfercredit)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- transfer_credit_programs
Permissions
One of the following roles is required to call this method:
- Admissions
- Admissions Admin
- Academic Auditor
- Academic Auditor
- Admissions
- Admissions Admin
- Academic Admin
- Registrar
update
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/transferinstitutions/(transferinstitution)/transfercredits/(transfercredit)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X PUT
-d '{
"course_group_id": 1
}' \
Example response:
{
"object": "transfer_credit",
"id": 8,
"person_id": 12,
"transfer_institution_id": 3,
"description": null,
"credits": 3,
"hours": null,
"attendance_hours": null,
"clinical_hours": null,
"fulfills_program_requirements": true,
"pass_affects_gpa": true,
"fail_affects_gpa": true,
"pass_fail_pass_affects_gpa": false,
"pass_fail_fail_affects_gpa": true,
"affects_standing": true,
"course_number": "MATH 102",
"course_name": "Algebra II",
"applied_date": null,
"effective_date": null,
"course_group_id": 1,
"catalog_course_id": null,
"status": "pending",
"status_at": null,
"status_by_id": null,
"added_at": "2024-11-20T20:03:35+00:00",
"added_by_id": 22,
"updated_at": "2024-11-20T20:03:35+00:00",
"updated_by_id": 22,
"sandbox": true
}
Updates an existing TransferCredit object.
HTTP Request
PUT /people/(person)/transferinstitutions/(transferinstitution)/transfercredits/(transfercredit)
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
course_number | No | text (50) | |
course_name | No | text (255) | |
credits | No | decimal | |
hours | No | decimal | |
clinical_hours | No | decimal | |
attendance_hours | No | decimal | |
fulfills_program_requirements | No | bool | |
pass_affects_gpa | No | bool | |
fail_affects_gpa | No | bool | |
pass_fail_pass_affects_gpa | No | bool | |
pass_fail_fail_affects_gpa | No | bool | |
affects_standing | No | bool | |
catalog_course_id | No | int | |
course_group_id | No | int | |
effective_date | No | date | |
status | No | enum (approved, pending, rejected) | |
description | No | text (5000) |
Permissions
One of the following roles is required to call this method:
- Admissions
- Admissions Admin
- Academic Admin
- Registrar
delete
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/transferinstitutions/(transferinstitution)/transfercredits/(transfercredit)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "transfer_credit",
"id": 8,
"deleted": true
}
Deletes an existing TransferCredit object.
HTTP Request
DELETE /people/(person)/transferinstitutions/(transferinstitution)/transfercredits/(transfercredit)
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:
- Admissions
- Admissions Admin
- Academic Admin
- Registrar
index (transfercredit)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/transfercredits" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"filter": []
}' \
Example response:
{
"object": "list",
"count": 7,
"results": 7,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "transfer_credit",
"id": 7,
"person_id": 12,
"transfer_institution_id": 3,
"description": "Spanish 7",
"credits": 2.6,
"hours": null,
"attendance_hours": null,
"clinical_hours": null,
"fulfills_program_requirements": true,
"pass_affects_gpa": true,
"fail_affects_gpa": true,
"pass_fail_pass_affects_gpa": true,
"pass_fail_fail_affects_gpa": true,
"affects_standing": true,
"course_number": "SPAN306",
"course_name": "Spanish 6",
"applied_date": null,
"effective_date": null,
"course_group_id": null,
"catalog_course_id": 687,
"status": "approved",
"status_at": null,
"status_by_id": null,
"person_display_name": "Alice Admin",
"organization_id": 1,
"organization_name": "The Oxford School",
"catalog_course_abbrv": "LAT100",
"catalog_course_name": "Beginning Latin",
"course_group_name": null,
"program_id": 1,
"program_name": "Undergraduate",
"grade": "98.00",
"graded_academic_term_id": 5,
"pass_fail": 0,
"retake": 0,
"previously_has_been_taken": 0,
"catalog_course_count_retakes_as_earned": 0,
"student_status": "ENROLLED",
"custom_student_status_abbrv": null,
"added_at": null,
"added_by_id": null,
"updated_at": null,
"updated_by_id": null
}
],
"sandbox": true
}
Retrieves all TransferCredit objects that match given filter conditions.
HTTP Request
GET /transfercredits
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. |
Filter Condition Parameters
These conditions can be used to narrow the results returned.
Name | Type |
---|---|
added_at | datetime |
affects_standing | bool |
applied_to | choice |
catalog_course | search |
course_group | object id |
credits | decimal |
custom_field | custom |
fail_affects_gpa | bool |
fulfills_program_requirements | bool |
graded_academic_term | academic_term |
has_active_student_role | has_active_student_role |
hours | decimal |
institution | search |
pass_affects_gpa | bool |
pass_fail_fail_affects_gpa | bool |
pass_fail_pass_affects_gpa | bool |
program | object id |
status | enum |
status_updated | datetime |
student | search |
student_campus | campus |
tag | tag |
transfer_course_name | text |
transfer_course_number | text |
updated_at | datetime |
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Academic Admin
- Registrar
TransferCreditProgram
The TransferCreditProgram object
The TransferCreditProgram object looks like this in JSON:
{
"object": "transfer_credit_program",
"id": 1,
"transfer_credit_id": 1,
"program_id": 1,
"grade": 99,
"graded_academic_term_id": 5,
"pass_fail": false,
"retake": false,
"retake_by_id": "system",
"previously_has_been_taken": false,
"student_status": "enrolled",
"custom_student_status_id": null,
"show_on_transcript": true,
"added_at": null,
"added_by_id": null,
"updated_at": null,
"updated_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
transfer_credit_id | Yes | int |
program_id | Yes | int |
grade | No | decimal |
graded_academic_term_id | No | int |
pass_fail | No | bool |
retake | No | bool |
retake_by_id | No | int |
previously_has_been_taken | Yes | bool |
student_status | Yes | enum (enrolled, withdrawn, incomplete) |
custom_student_status_id | No | int |
show_on_transcript | No | bool |
added_at | No | datetime |
added_by_id | No | int |
updated_at | No | datetime |
updated_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/transferinstitutions/(transferinstitution)/transfercredits/(transfercredit)/programs" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "transfer_credit_program",
"id": 7,
"transfer_credit_id": 7,
"program_id": 1,
"grade": 98,
"graded_academic_term_id": 5,
"pass_fail": false,
"retake": false,
"retake_by_id": "system",
"previously_has_been_taken": false,
"student_status": "enrolled",
"custom_student_status_id": null,
"show_on_transcript": true,
"added_at": null,
"added_by_id": null,
"updated_at": null,
"updated_by_id": null
}
],
"sandbox": true
}
Retrieves all TransferCreditProgram objects tied to a specific Person.
HTTP Request
GET /people/(person)/transferinstitutions/(transferinstitution)/transfercredits/(transfercredit)/programs
Parameters
None
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Admissions
- Admissions Admin
- Academic Admin
- Registrar
create
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/transferinstitutions/(transferinstitution)/transfercredits/(transfercredit)/programs" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"program_id": 2,
"grade": "98.00",
"is_transfer_student": "1"
}' \
Example response:
{
"object": "transfer_credit_program",
"id": 8,
"transfer_credit_id": 7,
"program_id": 2,
"grade": 98,
"graded_academic_term_id": 8,
"pass_fail": false,
"retake": false,
"retake_by_id": "person",
"previously_has_been_taken": false,
"student_status": "enrolled",
"custom_student_status_id": null,
"show_on_transcript": true,
"added_at": "2024-11-20T20:03:35+00:00",
"added_by_id": 22,
"updated_at": "2024-11-20T20:03:35+00:00",
"updated_by_id": 22,
"sandbox": true
}
Creates a new TransferCreditProgram object.
HTTP Request
POST /people/(person)/transferinstitutions/(transferinstitution)/transfercredits/(transfercredit)/programs
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
program_id | Yes | int | |
grade | No | decimal | |
pass_fail | No | bool | Default is false |
show_on_transcript | No | bool | Default is true |
is_transfer_student | No | bool | Default is true |
Permissions
One of the following roles is required to call this method:
- Admissions
- Admissions Admin
- Academic Admin
- Registrar
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/transferinstitutions/(transferinstitution)/transfercredits/(transfercredit)/programs/(transfercreditprogram)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "transfer_credit_program",
"id": 7,
"transfer_credit_id": 7,
"program_id": 1,
"grade": 98,
"graded_academic_term_id": 5,
"pass_fail": false,
"retake": false,
"retake_by_id": "system",
"previously_has_been_taken": false,
"student_status": "enrolled",
"custom_student_status_id": null,
"show_on_transcript": true,
"added_at": null,
"added_by_id": null,
"updated_at": null,
"updated_by_id": null,
"sandbox": true
}
Retrieves a specific TransferCreditProgram object.
HTTP Request
GET /people/(person)/transferinstitutions/(transferinstitution)/transfercredits/(transfercredit)/programs/(transfercreditprogram)
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
- Admissions
- Admissions Admin
- Academic Admin
- Registrar
update
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/transferinstitutions/(transferinstitution)/transfercredits/(transfercredit)/programs/(transfercreditprogram)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X PUT
-d '{
"grade": "100.00",
"is_transfer_student": "1"
}' \
Example response:
{
"object": "transfer_credit_program",
"id": 8,
"transfer_credit_id": 7,
"program_id": 2,
"grade": 100,
"graded_academic_term_id": 8,
"pass_fail": false,
"retake": false,
"retake_by_id": "person",
"previously_has_been_taken": false,
"student_status": "enrolled",
"custom_student_status_id": null,
"show_on_transcript": true,
"added_at": "2024-11-20T20:03:35+00:00",
"added_by_id": 22,
"updated_at": "2024-11-20T20:03:35+00:00",
"updated_by_id": 22,
"sandbox": true
}
Updates an existing TransferCreditProgram object.
HTTP Request
PUT /people/(person)/transferinstitutions/(transferinstitution)/transfercredits/(transfercredit)/programs/(transfercreditprogram)
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
grade | No | decimal | |
pass_fail | No | bool | |
show_on_transcript | No | bool | |
is_transfer_student | No | bool |
Permissions
One of the following roles is required to call this method:
- Admissions
- Admissions Admin
- Academic Admin
- Registrar
delete
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/transferinstitutions/(transferinstitution)/transfercredits/(transfercredit)/programs/(transfercreditprogram)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "transfer_credit_program",
"id": 8,
"deleted": true
}
Deletes an existing TransferCreditProgram object.
HTTP Request
DELETE /people/(person)/transferinstitutions/(transferinstitution)/transfercredits/(transfercredit)/programs/(transfercreditprogram)
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:
- Admissions
- Admissions Admin
- Academic Admin
- Registrar
TransferInstitution
The TransferInstitution object
The TransferInstitution object looks like this in JSON:
{
"object": "transfer_institution",
"id": 1,
"person_id": 1,
"organization_id": 1,
"organization_name": "The Oxford School",
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
person_id | Yes | int |
organization_id | No | int |
organization_name | No | text |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/transferinstitutions" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "transfer_institution",
"id": 3,
"person_id": 12,
"organization_id": 1,
"organization_name": "The Oxford School",
"added_at": null,
"added_by_id": null
}
],
"sandbox": true
}
Retrieves all TransferInstitution objects tied to a specific Person.
HTTP Request
GET /people/(person)/transferinstitutions
Parameters
None
Expandable Properties
- transfer_credits
- transfer_degrees
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Admissions
- Admissions Admin
- Academic Admin
- Registrar
create
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/transferinstitutions" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"organization_id": 4
}' \
Example response:
{
"object": "transfer_institution",
"id": 4,
"person_id": 12,
"organization_id": 4,
"added_at": "2024-11-20T20:03:35+00:00",
"added_by_id": 22,
"sandbox": true
}
Creates a new TransferInstitution object.
HTTP Request
POST /people/(person)/transferinstitutions
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
organization_id | Yes | int |
Permissions
One of the following roles is required to call this method:
- Admissions
- Admissions Admin
- Academic Admin
- Registrar
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/transferinstitutions/(transferinstitution)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "transfer_institution",
"id": 3,
"person_id": 12,
"organization_id": 1,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Retrieves a specific TransferInstitution object.
HTTP Request
GET /people/(person)/transferinstitutions/(transferinstitution)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- transfer_credits
- transfer_degrees
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Admissions
- Admissions Admin
- Academic Admin
- Registrar
update
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/transferinstitutions/(transferinstitution)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X PUT
-d '{
"organization_id": 3
}' \
Example response:
{
"object": "transfer_institution",
"id": 4,
"person_id": 12,
"organization_id": 3,
"added_at": "2024-11-20T20:03:35+00:00",
"added_by_id": 22,
"sandbox": true
}
Updates an existing TransferInstitution object.
HTTP Request
PUT /people/(person)/transferinstitutions/(transferinstitution)
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
organization_id | Yes | int |
Permissions
One of the following roles is required to call this method:
- Admissions
- Admissions Admin
- Academic Admin
- Registrar
delete
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/transferinstitutions/(transferinstitution)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "transfer_institution",
"id": 4,
"deleted": true
}
Deletes an existing TransferInstitution object.
HTTP Request
DELETE /people/(person)/transferinstitutions/(transferinstitution)
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:
- Admissions
- Admissions Admin
- Academic Admin
- Registrar
TuitionSchedule
The TuitionSchedule object
The TuitionSchedule object looks like this in JSON:
{
"object": "tuition_schedule",
"id": 1,
"name": "Cool Kids Plan",
"units": "hours",
"status": "active",
"refund_type": "prorated",
"refund_policy_id": null,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
name | Yes | text (100) |
units | Yes | enum (credits, hours) |
status | Yes | enum (active, retired, deleted) |
refund_type | Yes | enum (none, prorated, custom) |
refund_policy_id | No | int |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/tuitionschedules" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "tuition_schedule",
"id": 1,
"name": "Cool Kids Plan",
"units": "hours",
"status": "active",
"refund_type": "prorated",
"refund_policy_id": null,
"added_at": null,
"added_by_id": null
}
],
"sandbox": true
}
Retrieves all TuitionSchedule objects.
HTTP Request
GET /tuitionschedules
Parameters
None
Permissions
One of the following roles is required to call this method:
- Financial Admin
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/tuitionschedules/(tuitionschedule)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "tuition_schedule",
"id": 1,
"name": "Cool Kids Plan",
"units": "hours",
"status": "active",
"refund_type": "prorated",
"refund_policy_id": null,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Retrieves a specific TuitionSchedule object.
HTTP Request
GET /tuitionschedules/(tuitionschedule)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Expandable Properties
- brackets
- refund_policy
- courses
Permissions
One of the following roles is required to call this method:
- Financial Admin
TuitionScheduleStudent
The TuitionScheduleStudent object
The TuitionScheduleStudent object looks like this in JSON:
{
"object": "tuition_schedule_student",
"id": 1,
"academic_term_id": 1,
"student_id": 13,
"schedule_id": 1,
"bracket_id": 0,
"adjustment": 0,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
academic_term_id | Yes | int |
student_id | Yes | int |
schedule_id | Yes | int |
bracket_id | Yes | int |
adjustment | Yes | decimal |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/tuitionschedules" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "tuition_schedule_student",
"id": 3,
"academic_term_id": 4,
"student_id": 12,
"schedule_id": 1,
"bracket_id": 0,
"adjustment": 0,
"tuition_schedule": {
"object": "tuition_schedule",
"id": 1,
"name": "Cool Kids Plan",
"units": "hours",
"status": "active",
"refund_type": "prorated",
"refund_policy_id": null,
"added_at": null,
"added_by_id": null
},
"tuition_schedule_bracket": null
}
],
"sandbox": true
}
Retrieves all TuitionScheduleStudent objects tied to a specific Person.
HTTP Request
GET /people/(person)/tuitionschedules
Parameters
None
Permissions
One of the following roles is required to call this method:
- Financial Admin
- Student Billing
create
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/tuitionschedules" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
-d '{
"academic_term_id": 8,
"tuition_schedule_id": 1
}' \
Example response:
{
"object": "tuition_schedule_student",
"id": 4,
"academic_term_id": 8,
"student_id": 12,
"schedule_id": 1,
"bracket_id": 0,
"adjustment": 0,
"tuition_schedule": {
"object": "tuition_schedule",
"id": 1,
"name": "Cool Kids Plan",
"units": "hours",
"status": "active",
"refund_type": "prorated",
"refund_policy_id": null,
"added_at": null,
"added_by_id": null
},
"tuition_schedule_bracket": null,
"sandbox": true
}
Creates a new TuitionScheduleStudent object.
HTTP Request
POST /people/(person)/tuitionschedules
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
academic_term_id | Yes | int | |
tuition_schedule_id | Yes | int | |
tuition_schedule_bracket_id | No | int |
Permissions
One of the following roles is required to call this method:
- Financial Admin
- Student Billing
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/tuitionschedules/(tuitionschedulestudent)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "tuition_schedule_student",
"id": 1,
"academic_term_id": 1,
"student_id": 13,
"schedule_id": 1,
"bracket_id": 0,
"adjustment": 0,
"tuition_schedule": {
"object": "tuition_schedule",
"id": 1,
"name": "Cool Kids Plan",
"units": "hours",
"status": "active",
"refund_type": "prorated",
"refund_policy_id": null,
"added_at": null,
"added_by_id": null
},
"tuition_schedule_bracket": null,
"sandbox": true
}
Retrieves a specific TuitionScheduleStudent object.
HTTP Request
GET /people/(person)/tuitionschedules/(tuitionschedulestudent)
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:
- Financial Admin
- Student Billing
update
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/tuitionschedules/(tuitionschedulestudent)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X PUT
Example response:
{
"object": "tuition_schedule_student",
"id": 1,
"academic_term_id": 1,
"student_id": 13,
"schedule_id": 1,
"bracket_id": 0,
"adjustment": 0,
"tuition_schedule": {
"object": "tuition_schedule",
"id": 1,
"name": "Cool Kids Plan",
"units": "hours",
"status": "active",
"refund_type": "prorated",
"refund_policy_id": null,
"added_at": null,
"added_by_id": null
},
"tuition_schedule_bracket": null,
"sandbox": true
}
Updates an existing TuitionScheduleStudent object.
HTTP Request
PUT /people/(person)/tuitionschedules/(tuitionschedulestudent)
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
tuition_schedule_bracket_id | No | int |
Permissions
One of the following roles is required to call this method:
- Financial Admin
- Student Billing
delete
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/tuitionschedules/(tuitionschedulestudent)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "tuition_schedule_student",
"id": 1,
"deleted": true
}
Deletes an existing TuitionScheduleStudent object.
HTTP Request
DELETE /people/(person)/tuitionschedules/(tuitionschedulestudent)
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:
- Financial Admin
- Student Billing
User
The User object
The User object looks like this in JSON:
{
"object": "user",
"id": 16,
"username": "academic.admin",
"organization_domain_id": null,
"is_active": true,
"blocked_reason": "",
"last_activity_at": null,
"login_type": "ALL",
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
username | Yes | text (100) |
organization_domain_id | No | int |
is_active | Yes | bool |
blocked_reason | No | text (500) |
last_activity_at | No | datetime |
login_type | Yes | enum (all, populi, sso) |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/users" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 16,
"results": 16,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "user",
"id": 16,
"username": "academic.admin",
"organization_domain_id": null,
"is_active": true,
"blocked_reason": "",
"last_activity_at": null,
"login_type": "ALL"
}
],
"sandbox": true
}
Retrieves all User objects.
HTTP Request
GET /users
Parameters
None
Permissions
One of the following roles is required to call this method:
- Staff
create
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/users/(person)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
Example response:
{
"object": "user",
"id": 23,
"username": "bsmith24",
"organization_domain_id": null,
"is_active": true,
"blocked_reason": null,
"last_activity_at": null,
"login_type": "ALL",
"sandbox": true
}
Creates a new User object.
HTTP Request
POST /users/(person)
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
username | No | text (100) | |
organization_domain_id | No | int | |
login_type | No | enum (all, populi, sso) | Only used when SSO is enabled. Defaults to 'sso' when SSO is enabled. When SSO is not enabled the value will be 'all'. |
Action Parameters
Name | Data Type | Description |
---|---|---|
send_welcome_email | Default is false |
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/users/(user)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "user",
"id": 16,
"username": "academic.admin",
"organization_domain_id": null,
"is_active": true,
"blocked_reason": "",
"last_activity_at": null,
"login_type": "ALL",
"sandbox": true
}
Retrieves a specific User object.
HTTP Request
GET /users/(user)
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:
- Staff
delete
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/users/(user)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X DELETE
Example response:
{
"object": "user",
"id": 24,
"deleted": true
}
Deletes an existing User object.
HTTP Request
DELETE /users/(user)
Parameters
No additional parameters are needed beyond the ID of the object to delete that appears in the URL.
block
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/users/(user)/block" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
Example response:
{
"object": "user",
"id": 21,
"username": "deleteme1",
"organization_domain_id": null,
"is_active": false,
"blocked_reason": "",
"last_activity_at": null,
"login_type": "ALL",
"sandbox": true
}
HTTP Request
POST /users/(user)/block
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
blocked_reason | No | text (500) |
enable_external_email_account
curl "https://yourschool.populiweb.com/api2/users/(user)/enable_external_email_account" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"make_system_email_primary_email": true
}' \
Example response:
{}
If your school is using the Google integration, this will trigger a matching system email account to be created on the Google side for a User that does not have one yet. This call will begin the operation in the backround, but it typically takes 1-2 minutes for the new Google account to show up.
HTTP Request
GET /users/(user)/enable_external_email_account
Parameters
Name | Required | Data Type | Description |
---|---|---|---|
make_system_email_primary_email | Yes |
unblock
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/users/(user)/unblock" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X POST
Example response:
{
"object": "user",
"id": 21,
"username": "deleteme1",
"organization_domain_id": null,
"is_active": true,
"blocked_reason": "",
"last_activity_at": null,
"login_type": "ALL",
"sandbox": true
}
HTTP Request
POST /users/(user)/unblock
Parameters
None
Violation
The Violation object
The Violation object looks like this in JSON:
{
"object": "violation",
"id": 2,
"name": "Dorm Room After Hours Noise",
"description": "Cited for excessive noise after 10:00 PM on a weekday. ",
"fee_id": null,
"email_notification": false,
"added_at": "2020-02-13T00:27:34+00:00",
"added_by_id": 1,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
name | Yes | text (200) |
description | No | text |
fee_id | No | int |
email_notification | Yes | bool |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/violations" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "violation",
"id": 2,
"name": "Dorm Room After Hours Noise",
"description": "Cited for excessive noise after 10:00 PM on a weekday. ",
"fee_id": null,
"email_notification": false,
"added_at": "2020-02-13T00:27:34+00:00",
"added_by_id": 1
}
],
"sandbox": true
}
Retrieves all Violation objects.
HTTP Request
GET /violations
Parameters
None
show
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/violations/(violation)" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "violation",
"id": 2,
"name": "Dorm Room After Hours Noise",
"description": "Cited for excessive noise after 10:00 PM on a weekday. ",
"fee_id": null,
"email_notification": false,
"added_at": "2020-02-13T00:27:34+00:00",
"added_by_id": 1,
"sandbox": true
}
Retrieves a specific Violation object.
HTTP Request
GET /violations/(violation)
Parameters
No additional parameters are needed beyond the ID of the object being requested that appears in the URL.
Website
The Website object
The Website object looks like this in JSON:
{
"object": "website",
"id": 2179,
"owner_id": 2,
"owner_type": "person",
"website": "http:\/\/coolschool.populiweb.com",
"primary": true,
"old": false,
"public": true,
"synced_from": null,
"added_at": null,
"added_by_id": null,
"sandbox": true
}
Attribute | Required | Data Type |
---|---|---|
id | Yes | int |
owner_id | Yes | int |
owner_type | Yes | enum (person, organization) |
website | Yes | text (2100) |
primary | Yes | bool |
old | Yes | bool |
public | Yes | bool |
synced_from | Yes | int |
added_at | No | datetime |
added_by_id | No | int |
sandbox | No | -- |
index (organization)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/organizations/(organization)/websites" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "website",
"id": 3002,
"owner_id": 1,
"owner_type": "organization",
"website": "http:\/\/coolschool.populiweb.com",
"primary": true,
"old": false,
"public": true,
"synced_from": null,
"added_at": null,
"added_by_id": null
}
],
"sandbox": true
}
Retrieves all Website objects tied to a specific Organization.
HTTP Request
GET /organizations/(organization)/websites
Parameters
None
Permissions
One of the following roles is required to call this method:
- Academic Auditor
- Financial Auditor
- Staff
index (person)
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/websites" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "website",
"id": 3001,
"owner_id": 12,
"owner_type": "person",
"website": "http:\/\/coolschool.populiweb.com",
"primary": true,
"old": false,
"public": true,
"synced_from": null,
"added_at": null,
"added_by_id": null
}
],
"sandbox": true
}
Retrieves all Website objects tied to a specific Person.
HTTP Request
GET /people/(person)/websites
Parameters
None
Permissions
One of the following roles is required to call this method:
- Staff