NAV
shell ruby python csharp php

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,
    "campus_id": null,
    "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,
    "letter_printed_at": null,
    "letter_printed_by_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)
email 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
campus_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
letter_printed_at No datetime
letter_printed_by_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 bool

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}]}}
}' \ 
require 'httparty'
response = HTTParty.get(
 'https://yourschool.populiweb.com/api2/applications',
 headers: {
  'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
 },
)
puts response.body
import requests
response = requests.get(
 'https://yourschool.populiweb.com/api2/applications',
 headers={
  'Authorization': 'Bearer YOUR_POPULI_API_KEY'
 },
)
print(response.json())
using Newtonsoft.Json;
using RestSharp;
var client = new RestClient();
var request = new RestRequest(new Uri("https://yourschool.populiweb.com/api2/applications"), Method.Get);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
var response = client.Execute(request);
var response_object = JsonConvert.DeserializeObject(response.Content);
Console.Write(response_object);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'https://yourschool.populiweb.com/api2/applications');
curl_setopt($curl, CURLOPT_HTTPHEADER, ['Authorization: Bearer YOUR_POPULI_API_KEY']);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'GET');
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);

Example response:

{
    "object": "list",
    "count": 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,
            "campus_id": null,
            "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,
            "letter_printed_at": null,
            "letter_printed_by_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,
            "campus_name": 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 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

Filter Condition Parameters

These conditions can be used to narrow the results returned.

Name Type
first_name text
last_name text
gender enum (male, female, unknown, other)
application_form object id
discount_code object id
source leadsource
lead_source leadsource
program object id
degree object id
specialization specialization
academic_term object_id
academic_term_type academic_term_type
campus object id
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
staff_activity date_time
pending_decision_on date
decision_date date
withdrawn_date date
address_city text
address_state state
address_zip alphanumeric
address_country country
tag tag
custom_field custom
has_active_student_role enum (yes, no)

Permissions

One of the following roles is required to call this method:

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
require 'httparty'
response = HTTParty.get(
 'https://yourschool.populiweb.com/api2/people/(person)/applications',
 headers: {
  'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
 },
)
puts response.body
import requests
response = requests.get(
 'https://yourschool.populiweb.com/api2/people/(person)/applications',
 headers={
  'Authorization': 'Bearer YOUR_POPULI_API_KEY'
 },
)
print(response.json())
using Newtonsoft.Json;
using RestSharp;
var client = new RestClient();
var request = new RestRequest(new Uri("https://yourschool.populiweb.com/api2/people/(person)/applications"), Method.Get);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
var response = client.Execute(request);
var response_object = JsonConvert.DeserializeObject(response.Content);
Console.Write(response_object);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'https://yourschool.populiweb.com/api2/people/(person)/applications');
curl_setopt($curl, CURLOPT_HTTPHEADER, ['Authorization: Bearer YOUR_POPULI_API_KEY']);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'GET');
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);

Example response:

{
    "object": "list",
    "count": 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,
            "campus_id": null,
            "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,
            "letter_printed_at": null,
            "letter_printed_by_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:

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\"}"
}' \ 
require 'httparty'
response = HTTParty.post(
 'https://yourschool.populiweb.com/api2/applications',
 headers: {
  'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
 },
 body: {
  :application_template_id => 2,
  :started_on => '2022-08-25'
 }.to_json
)
puts response.body
import requests
response = requests.post(
 'https://yourschool.populiweb.com/api2/applications',
 headers={
  'Authorization': 'Bearer YOUR_POPULI_API_KEY'
 },
 json={
  'application_template_id': 2,
  'started_on': '2022-08-25'
 }
)
print(response.json())
using Newtonsoft.Json;
using RestSharp;
var client = new RestClient();
var request = new RestRequest(new Uri("https://yourschool.populiweb.com/api2/applications"), Method.Post);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
request.AddJsonBody(new {
  application_template_id = 2,
  started_on = "2022-08-25"
});
var response = client.Execute(request);
var response_object = JsonConvert.DeserializeObject(response.Content);
Console.Write(response_object);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'https://yourschool.populiweb.com/api2/applications');
curl_setopt($curl, CURLOPT_HTTPHEADER, ['Authorization: Bearer YOUR_POPULI_API_KEY']);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode([
  'application_template_id' => 2,
  'started_on' => '2022-08-25'
]));
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);

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": 804,
    "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,
    "campus_id": null,
    "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,
    "letter_printed_at": null,
    "letter_printed_by_id": null,
    "prospect_activity_at": null,
    "staff_activity_at": null,
    "percent_complete": 0,
    "active_questions": null,
    "localization_id": null,
    "address": {
        "object": "address",
        "id": 804,
        "owner_id": 6,
        "owner_type": "application",
        "street": "555 Maple Street",
        "city": "Dallas",
        "state": "TX",
        "postal": "55123",
        "country": "US",
        "type": "home",
        "primary": true,
        "most_recent_by_type": true,
        "old": false,
        "public": false,
        "synced_from": null,
        "import_id": null,
        "added_at": "2026-07-25T16:24:07+00:00",
        "added_by_id": 22
    },
    "added_at": "2026-07-25T16:24:07+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)
email 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
campus_id No int
lead_source_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:

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
require 'httparty'
response = HTTParty.get(
 'https://yourschool.populiweb.com/api2/applications/(application)',
 headers: {
  'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
 },
)
puts response.body
import requests
response = requests.get(
 'https://yourschool.populiweb.com/api2/applications/(application)',
 headers={
  'Authorization': 'Bearer YOUR_POPULI_API_KEY'
 },
)
print(response.json())
using Newtonsoft.Json;
using RestSharp;
var client = new RestClient();
var request = new RestRequest(new Uri("https://yourschool.populiweb.com/api2/applications/(application)"), Method.Get);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
var response = client.Execute(request);
var response_object = JsonConvert.DeserializeObject(response.Content);
Console.Write(response_object);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'https://yourschool.populiweb.com/api2/applications/(application)');
curl_setopt($curl, CURLOPT_HTTPHEADER, ['Authorization: Bearer YOUR_POPULI_API_KEY']);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'GET');
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);

Example response:

{
    "object": "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,
    "campus_id": null,
    "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,
    "letter_printed_at": null,
    "letter_printed_by_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

Permissions

One of the following roles is required to call this method:

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"
}' \ 
require 'httparty'
response = HTTParty.put(
 'https://yourschool.populiweb.com/api2/applications/(application)',
 headers: {
  'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
 },
 body: {
  :status => 'in_progress'
 }.to_json
)
puts response.body
import requests
response = requests.put(
 'https://yourschool.populiweb.com/api2/applications/(application)',
 headers={
  'Authorization': 'Bearer YOUR_POPULI_API_KEY'
 },
 json={
  'status': 'in_progress'
 }
)
print(response.json())
using Newtonsoft.Json;
using RestSharp;
var client = new RestClient();
var request = new RestRequest(new Uri("https://yourschool.populiweb.com/api2/applications/(application)"), Method.Put);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
request.AddJsonBody(new {
  status = "in_progress"
});
var response = client.Execute(request);
var response_object = JsonConvert.DeserializeObject(response.Content);
Console.Write(response_object);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'https://yourschool.populiweb.com/api2/applications/(application)');
curl_setopt($curl, CURLOPT_HTTPHEADER, ['Authorization: Bearer YOUR_POPULI_API_KEY']);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'PUT');
curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode([
  'status' => 'in_progress'
]));
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);

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,
    "campus_id": null,
    "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,
    "letter_printed_at": null,
    "letter_printed_by_id": null,
    "prospect_activity_at": null,
    "staff_activity_at": "2026-07-25T16:24:07+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:

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
require 'httparty'
response = HTTParty.delete(
 'https://yourschool.populiweb.com/api2/applications/(application)',
 headers: {
  'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
 },
)
puts response.body
import requests
response = requests.delete(
 'https://yourschool.populiweb.com/api2/applications/(application)',
 headers={
  'Authorization': 'Bearer YOUR_POPULI_API_KEY'
 },
)
print(response.json())
using Newtonsoft.Json;
using RestSharp;
var client = new RestClient();
var request = new RestRequest(new Uri("https://yourschool.populiweb.com/api2/applications/(application)"), Method.Delete);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
var response = client.Execute(request);
var response_object = JsonConvert.DeserializeObject(response.Content);
Console.Write(response_object);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'https://yourschool.populiweb.com/api2/applications/(application)');
curl_setopt($curl, CURLOPT_HTTPHEADER, ['Authorization: Bearer YOUR_POPULI_API_KEY']);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'DELETE');
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);

Example response:

{
    "object": "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:

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
require 'httparty'
response = HTTParty.get(
 'https://yourschool.populiweb.com/api2/applications/(application)/fields',
 headers: {
  'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
 },
)
puts response.body
import requests
response = requests.get(
 'https://yourschool.populiweb.com/api2/applications/(application)/fields',
 headers={
  'Authorization': 'Bearer YOUR_POPULI_API_KEY'
 },
)
print(response.json())
using Newtonsoft.Json;
using RestSharp;
var client = new RestClient();
var request = new RestRequest(new Uri("https://yourschool.populiweb.com/api2/applications/(application)/fields"), Method.Get);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
var response = client.Execute(request);
var response_object = JsonConvert.DeserializeObject(response.Content);
Console.Write(response_object);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'https://yourschool.populiweb.com/api2/applications/(application)/fields');
curl_setopt($curl, CURLOPT_HTTPHEADER, ['Authorization: Bearer YOUR_POPULI_API_KEY']);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'GET');
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);

Example response:

{
    "object": "list",
    "count": 49,
    "results": 49,
    "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,
        "campus_id": null,
        "lead_source_id": null,
        "started_on": "2013-03-19",
        "submitted_at": "2026-07-25T16:24:07+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,
        "letter_printed_at": null,
        "letter_printed_by_id": null,
        "prospect_activity_at": null,
        "staff_activity_at": "2026-07-25T16:24:08+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:

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
}' \ 
require 'httparty'
response = HTTParty.get(
 'https://yourschool.populiweb.com/api2/applications/(application)/link_to_person',
 headers: {
  'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
 },
 body: {
  :person_id => 2
 }.to_json
)
puts response.body
import requests
response = requests.get(
 'https://yourschool.populiweb.com/api2/applications/(application)/link_to_person',
 headers={
  'Authorization': 'Bearer YOUR_POPULI_API_KEY'
 },
 json={
  'person_id': 2
 }
)
print(response.json())
using Newtonsoft.Json;
using RestSharp;
var client = new RestClient();
var request = new RestRequest(new Uri("https://yourschool.populiweb.com/api2/applications/(application)/link_to_person"), Method.Get);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
request.AddJsonBody(new {
  person_id = 2
});
var response = client.Execute(request);
var response_object = JsonConvert.DeserializeObject(response.Content);
Console.Write(response_object);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'https://yourschool.populiweb.com/api2/applications/(application)/link_to_person');
curl_setopt($curl, CURLOPT_HTTPHEADER, ['Authorization: Bearer YOUR_POPULI_API_KEY']);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'GET');
curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode([
  'person_id' => 2
]));
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);

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,
    "campus_id": null,
    "lead_source_id": null,
    "started_on": "2013-03-19",
    "submitted_at": "2026-07-25T16:24:07+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,
    "letter_printed_at": null,
    "letter_printed_by_id": null,
    "prospect_activity_at": null,
    "staff_activity_at": "2026-07-25T16:24:08+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:

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
require 'httparty'
response = HTTParty.get(
 'https://yourschool.populiweb.com/api2/applications/(application)/submit',
 headers: {
  'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
 },
)
puts response.body
import requests
response = requests.get(
 'https://yourschool.populiweb.com/api2/applications/(application)/submit',
 headers={
  'Authorization': 'Bearer YOUR_POPULI_API_KEY'
 },
)
print(response.json())
using Newtonsoft.Json;
using RestSharp;
var client = new RestClient();
var request = new RestRequest(new Uri("https://yourschool.populiweb.com/api2/applications/(application)/submit"), Method.Get);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
var response = client.Execute(request);
var response_object = JsonConvert.DeserializeObject(response.Content);
Console.Write(response_object);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'https://yourschool.populiweb.com/api2/applications/(application)/submit');
curl_setopt($curl, CURLOPT_HTTPHEADER, ['Authorization: Bearer YOUR_POPULI_API_KEY']);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'GET');
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);

Example response:

{
    "object": "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,
    "campus_id": null,
    "lead_source_id": null,
    "started_on": "2013-03-19",
    "submitted_at": "2026-07-25T16:24:07+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,
    "letter_printed_at": null,
    "letter_printed_by_id": null,
    "prospect_activity_at": null,
    "staff_activity_at": "2026-07-25T16:24:07+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:

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
require 'httparty'
response = HTTParty.get(
 'https://yourschool.populiweb.com/api2/applications/(application)/unlink_person',
 headers: {
  'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
 },
)
puts response.body
import requests
response = requests.get(
 'https://yourschool.populiweb.com/api2/applications/(application)/unlink_person',
 headers={
  'Authorization': 'Bearer YOUR_POPULI_API_KEY'
 },
)
print(response.json())
using Newtonsoft.Json;
using RestSharp;
var client = new RestClient();
var request = new RestRequest(new Uri("https://yourschool.populiweb.com/api2/applications/(application)/unlink_person"), Method.Get);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
var response = client.Execute(request);
var response_object = JsonConvert.DeserializeObject(response.Content);
Console.Write(response_object);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'https://yourschool.populiweb.com/api2/applications/(application)/unlink_person');
curl_setopt($curl, CURLOPT_HTTPHEADER, ['Authorization: Bearer YOUR_POPULI_API_KEY']);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'GET');
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);

Example response:

{
    "object": "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,
    "campus_id": null,
    "lead_source_id": null,
    "started_on": "2013-03-19",
    "submitted_at": "2026-07-25T16:24:07+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,
    "letter_printed_at": null,
    "letter_printed_by_id": null,
    "prospect_activity_at": null,
    "staff_activity_at": "2026-07-25T16:24:07+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:

show_online_reference

Example code to call this method:

curl "https://yourschool.populiweb.com/api2/onlinereferences/(onlinereference)" \
-H "Content-Type: application/json" \ 
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \ 
-X GET
-d '{
    "expand": [
        "form_version",
        "answers"
    ]
}' \ 
require 'httparty'
response = HTTParty.get(
 'https://yourschool.populiweb.com/api2/onlinereferences/(onlinereference)',
 headers: {
  'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
 },
 body: {
  :expand => ['form_version', 'answers']
 }.to_json
)
puts response.body
import requests
response = requests.get(
 'https://yourschool.populiweb.com/api2/onlinereferences/(onlinereference)',
 headers={
  'Authorization': 'Bearer YOUR_POPULI_API_KEY'
 },
 json={
  'expand': ['form_version', 'answers']
 }
)
print(response.json())
using Newtonsoft.Json;
using RestSharp;
var client = new RestClient();
var request = new RestRequest(new Uri("https://yourschool.populiweb.com/api2/onlinereferences/(onlinereference)"), Method.Get);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
request.AddJsonBody(new {
  expand = new List<string> {"form_version", "answers"}
});
var response = client.Execute(request);
var response_object = JsonConvert.DeserializeObject(response.Content);
Console.Write(response_object);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'https://yourschool.populiweb.com/api2/onlinereferences/(onlinereference)');
curl_setopt($curl, CURLOPT_HTTPHEADER, ['Authorization: Bearer YOUR_POPULI_API_KEY']);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'GET');
curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode([
  'expand' => ['form_version', 'answers']
]));
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);

Example response:

{
    "object": "online_reference",
    "id": 5,
    "first_name": "Homestar",
    "middle_name": null,
    "last_name": "Runner",
    "email": "homestar@populi.co",
    "phone": "(555) 555-8585",
    "online_reference_form_id": 1,
    "form_version_id": 5,
    "submitted_at": "2013-04-19T00:00:00+00:00",
    "status": "submitted",
    "letter_printed_at": null,
    "letter_printed_by_id": null,
    "form_version": {
        "object": "form_version",
        "id": 5,
        "owner_type": "online_reference_template",
        "owner_id": 4,
        "added_at": null,
        "added_by_id": null,
        "sections": [
            {
                "object": "form_field",
                "id": 16,
                "reporting_id": 16,
                "name": "Your name",
                "description": null,
                "input_type": "name",
                "model_type": null,
                "model_id": null,
                "min": null,
                "max": null,
                "added_at": null,
                "added_by_id": null,
                "is_required": true,
                "page_order_id": 1,
                "order_id": 1,
                "hidden": false
            },
            {
                "object": "form_field",
                "id": 17,
                "reporting_id": 17,
                "name": "Your phone number",
                "description": null,
                "input_type": "phone",
                "model_type": null,
                "model_id": null,
                "min": null,
                "max": null,
                "added_at": null,
                "added_by_id": null,
                "is_required": true,
                "page_order_id": 1,
                "order_id": 2,
                "hidden": false
            },
            {
                "object": "form_field",
                "id": 18,
                "reporting_id": 18,
                "name": "Reference",
                "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": true,
                "page_order_id": 1,
                "order_id": 3,
                "hidden": false
            }
        ]
    },
    "answers": [
        {
            "object": "form_field_answer",
            "id": 5,
            "owner_type": "online_reference",
            "owner_id": 5,
            "form_field_id": 16,
            "subfield": "first_name",
            "text_value": "Homestar",
            "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": 6,
            "owner_type": "online_reference",
            "owner_id": 5,
            "form_field_id": 16,
            "subfield": "last_name",
            "text_value": "Runner",
            "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": 7,
            "owner_type": "online_reference",
            "owner_id": 5,
            "form_field_id": 17,
            "subfield": "phone",
            "text_value": "(555) 555-8585",
            "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": 8,
            "owner_type": "online_reference",
            "owner_id": 5,
            "form_field_id": 18,
            "subfield": null,
            "text_value": "Answer text...",
            "integer_value": null,
            "decimal_value": null,
            "date_value": null,
            "datetime_value": null,
            "email_value": null,
            "ip": null,
            "added_at": null
        }
    ],
    "added_at": null,
    "added_by_id": null,
    "sandbox": true
}

HTTP Request

GET /onlinereferences/(onlinereference)

Parameters

None

Expandable Properties

Permissions

One of the following roles is required to call this method: