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 | object |
| added_at | No | datetime |
| added_by_id | No | int |
| updated_at | No | datetime |
| updated_by_id | No | int |
| option_value | No | text |
| sandbox | No | bool |
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
require 'httparty'
response = HTTParty.get(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/admissions',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
)
puts response.body
import requests
response = requests.get(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/admissions',
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)/custominfodata/admissions"), 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)/custominfodata/admissions');
curl_setopt($curl, CURLOPT_HTTPHEADER, ['Authorization: Bearer YOUR_POPULI_API_KEY']);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'GET');
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "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
Expandable Properties
- custom_info_field
- adjacent_custom_info_data
Permissions
One of the following roles is required to call this method:
- Staff
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": []
}' \
require 'httparty'
response = HTTParty.get(
'https://yourschool.populiweb.com/api2/custominfodata',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
)
puts response.body
import requests
response = requests.get(
'https://yourschool.populiweb.com/api2/custominfodata',
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/custominfodata"), 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/custominfodata');
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": 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. |
Expandable Properties
- custom_info_field
- adjacent_custom_info_data
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 (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
require 'httparty'
response = HTTParty.get(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/campuslife',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
)
puts response.body
import requests
response = requests.get(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/campuslife',
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)/custominfodata/campuslife"), 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)/custominfodata/campuslife');
curl_setopt($curl, CURLOPT_HTTPHEADER, ['Authorization: Bearer YOUR_POPULI_API_KEY']);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'GET');
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "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
Expandable Properties
- custom_info_field
- adjacent_custom_info_data
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
require 'httparty'
response = HTTParty.get(
'https://yourschool.populiweb.com/api2/donations/(donation)/custominfodata/',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
)
puts response.body
import requests
response = requests.get(
'https://yourschool.populiweb.com/api2/donations/(donation)/custominfodata/',
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/donations/(donation)/custominfodata/"), 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/donations/(donation)/custominfodata/');
curl_setopt($curl, CURLOPT_HTTPHEADER, ['Authorization: Bearer YOUR_POPULI_API_KEY']);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'GET');
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "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
Expandable Properties
- custom_info_field
- adjacent_custom_info_data
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
require 'httparty'
response = HTTParty.get(
'https://yourschool.populiweb.com/api2/donors/(donor)/custominfodata/',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
)
puts response.body
import requests
response = requests.get(
'https://yourschool.populiweb.com/api2/donors/(donor)/custominfodata/',
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/donors/(donor)/custominfodata/"), 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/donors/(donor)/custominfodata/');
curl_setopt($curl, CURLOPT_HTTPHEADER, ['Authorization: Bearer YOUR_POPULI_API_KEY']);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'GET');
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "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
Expandable Properties
- custom_info_field
- adjacent_custom_info_data
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
require 'httparty'
response = HTTParty.get(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/financialaid',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
)
puts response.body
import requests
response = requests.get(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/financialaid',
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)/custominfodata/financialaid"), 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)/custominfodata/financialaid');
curl_setopt($curl, CURLOPT_HTTPHEADER, ['Authorization: Bearer YOUR_POPULI_API_KEY']);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'GET');
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "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
Expandable Properties
- custom_info_field
- adjacent_custom_info_data
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
require 'httparty'
response = HTTParty.get(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/financial',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
)
puts response.body
import requests
response = requests.get(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/financial',
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)/custominfodata/financial"), 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)/custominfodata/financial');
curl_setopt($curl, CURLOPT_HTTPHEADER, ['Authorization: Bearer YOUR_POPULI_API_KEY']);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'GET');
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "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
Expandable Properties
- custom_info_field
- adjacent_custom_info_data
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
require 'httparty'
response = HTTParty.get(
'https://yourschool.populiweb.com/api2/organizations/(organization)/custominfodata',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
)
puts response.body
import requests
response = requests.get(
'https://yourschool.populiweb.com/api2/organizations/(organization)/custominfodata',
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/organizations/(organization)/custominfodata"), 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/organizations/(organization)/custominfodata');
curl_setopt($curl, CURLOPT_HTTPHEADER, ['Authorization: Bearer YOUR_POPULI_API_KEY']);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'GET');
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "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
Expandable Properties
- custom_info_field
- adjacent_custom_info_data
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
require 'httparty'
response = HTTParty.get(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
)
puts response.body
import requests
response = requests.get(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata',
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)/custominfodata"), 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)/custominfodata');
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": "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
Expandable Properties
- custom_info_field
- adjacent_custom_info_data
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
require 'httparty'
response = HTTParty.get(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/student',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
)
puts response.body
import requests
response = requests.get(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/student',
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)/custominfodata/student"), 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)/custominfodata/student');
curl_setopt($curl, CURLOPT_HTTPHEADER, ['Authorization: Bearer YOUR_POPULI_API_KEY']);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'GET');
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "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
Expandable Properties
- custom_info_field
- adjacent_custom_info_data
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
require 'httparty'
response = HTTParty.get(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/term/(academicterm)',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
)
puts response.body
import requests
response = requests.get(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/term/(academicterm)',
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)/custominfodata/term/(academicterm)"), 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)/custominfodata/term/(academicterm)');
curl_setopt($curl, CURLOPT_HTTPHEADER, ['Authorization: Bearer YOUR_POPULI_API_KEY']);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'GET');
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);
Example response:
{
"object": "list",
"count": 1,
"results": 1,
"results_per_page": null,
"pages": 1,
"page": 1,
"offset": 0,
"has_more": false,
"data": [
{
"object": "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
Expandable Properties
- custom_info_field
- adjacent_custom_info_data
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
require 'httparty'
response = HTTParty.get(
'https://yourschool.populiweb.com/api2/donations/(donation)/custominfodata/(custominfodata)',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
)
puts response.body
import requests
response = requests.get(
'https://yourschool.populiweb.com/api2/donations/(donation)/custominfodata/(custominfodata)',
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/donations/(donation)/custominfodata/(custominfodata)"), 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/donations/(donation)/custominfodata/(custominfodata)');
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": "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.
Expandable Properties
- custom_info_field
- adjacent_custom_info_data
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"
}' \
require 'httparty'
response = HTTParty.post(
'https://yourschool.populiweb.com/api2/donations/(donation)/custominfodata',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
body: {
:custom_info_field_id => 17,
:value => '2002 Ford Focus'
}.to_json
)
puts response.body
import requests
response = requests.post(
'https://yourschool.populiweb.com/api2/donations/(donation)/custominfodata',
headers={
'Authorization': 'Bearer YOUR_POPULI_API_KEY'
},
json={
'custom_info_field_id': 17,
'value': '2002 Ford Focus'
}
)
print(response.json())
using Newtonsoft.Json;
using RestSharp;
var client = new RestClient();
var request = new RestRequest(new Uri("https://yourschool.populiweb.com/api2/donations/(donation)/custominfodata"), Method.Post);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
request.AddJsonBody(new {
custom_info_field_id = 17,
value = "2002 Ford Focus"
});
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/donations/(donation)/custominfodata');
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([
'custom_info_field_id' => 17,
'value' => '2002 Ford Focus'
]));
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);
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": "2026-07-25T16:24:07+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"
}' \
require 'httparty'
response = HTTParty.put(
'https://yourschool.populiweb.com/api2/donations/(donation)/custominfodata/(custominfodata)',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
body: {
:value => '1957 Chevy'
}.to_json
)
puts response.body
import requests
response = requests.put(
'https://yourschool.populiweb.com/api2/donations/(donation)/custominfodata/(custominfodata)',
headers={
'Authorization': 'Bearer YOUR_POPULI_API_KEY'
},
json={
'value': '1957 Chevy'
}
)
print(response.json())
using Newtonsoft.Json;
using RestSharp;
var client = new RestClient();
var request = new RestRequest(new Uri("https://yourschool.populiweb.com/api2/donations/(donation)/custominfodata/(custominfodata)"), Method.Put);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
request.AddJsonBody(new {
value = "1957 Chevy"
});
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/donations/(donation)/custominfodata/(custominfodata)');
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([
'value' => '1957 Chevy'
]));
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);
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": "2022-01-01T00:05:30+00:00",
"added_by_id": 2,
"updated_at": "2026-07-25T16:24:07+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
require 'httparty'
response = HTTParty.delete(
'https://yourschool.populiweb.com/api2/donations/(donation)/custominfodata/(custominfodata)',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
)
puts response.body
import requests
response = requests.delete(
'https://yourschool.populiweb.com/api2/donations/(donation)/custominfodata/(custominfodata)',
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/donations/(donation)/custominfodata/(custominfodata)"), 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/donations/(donation)/custominfodata/(custominfodata)');
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": "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
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
require 'httparty'
response = HTTParty.get(
'https://yourschool.populiweb.com/api2/donors/(donor)/custominfodata/(custominfodata)',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
)
puts response.body
import requests
response = requests.get(
'https://yourschool.populiweb.com/api2/donors/(donor)/custominfodata/(custominfodata)',
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/donors/(donor)/custominfodata/(custominfodata)"), 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/donors/(donor)/custominfodata/(custominfodata)');
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": "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.
Expandable Properties
- custom_info_field
- adjacent_custom_info_data
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"
}' \
require 'httparty'
response = HTTParty.post(
'https://yourschool.populiweb.com/api2/donors/(donor)/custominfodata',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
body: {
:custom_info_field_id => 20,
:value => 'Exempt'
}.to_json
)
puts response.body
import requests
response = requests.post(
'https://yourschool.populiweb.com/api2/donors/(donor)/custominfodata',
headers={
'Authorization': 'Bearer YOUR_POPULI_API_KEY'
},
json={
'custom_info_field_id': 20,
'value': 'Exempt'
}
)
print(response.json())
using Newtonsoft.Json;
using RestSharp;
var client = new RestClient();
var request = new RestRequest(new Uri("https://yourschool.populiweb.com/api2/donors/(donor)/custominfodata"), Method.Post);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
request.AddJsonBody(new {
custom_info_field_id = 20,
value = "Exempt"
});
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/donors/(donor)/custominfodata');
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([
'custom_info_field_id' => 20,
'value' => 'Exempt'
]));
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);
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": "2026-07-25T16:24:07+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"
}' \
require 'httparty'
response = HTTParty.put(
'https://yourschool.populiweb.com/api2/donors/(donor)/custominfodata/(custominfodata)',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
body: {
:value => 'Special'
}.to_json
)
puts response.body
import requests
response = requests.put(
'https://yourschool.populiweb.com/api2/donors/(donor)/custominfodata/(custominfodata)',
headers={
'Authorization': 'Bearer YOUR_POPULI_API_KEY'
},
json={
'value': 'Special'
}
)
print(response.json())
using Newtonsoft.Json;
using RestSharp;
var client = new RestClient();
var request = new RestRequest(new Uri("https://yourschool.populiweb.com/api2/donors/(donor)/custominfodata/(custominfodata)"), Method.Put);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
request.AddJsonBody(new {
value = "Special"
});
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/donors/(donor)/custominfodata/(custominfodata)');
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([
'value' => 'Special'
]));
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);
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
}
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
require 'httparty'
response = HTTParty.delete(
'https://yourschool.populiweb.com/api2/donors/(donor)/custominfodata/(custominfodata)',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
)
puts response.body
import requests
response = requests.delete(
'https://yourschool.populiweb.com/api2/donors/(donor)/custominfodata/(custominfodata)',
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/donors/(donor)/custominfodata/(custominfodata)"), 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/donors/(donor)/custominfodata/(custominfodata)');
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": "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
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
require 'httparty'
response = HTTParty.get(
'https://yourschool.populiweb.com/api2/organizations/(organization)/custominfodata/(custominfodata)',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
)
puts response.body
import requests
response = requests.get(
'https://yourschool.populiweb.com/api2/organizations/(organization)/custominfodata/(custominfodata)',
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/organizations/(organization)/custominfodata/(custominfodata)"), 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/organizations/(organization)/custominfodata/(custominfodata)');
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": "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.
Expandable Properties
- custom_info_field
- adjacent_custom_info_data
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"
}' \
require 'httparty'
response = HTTParty.post(
'https://yourschool.populiweb.com/api2/organizations/(organization)/custominfodata',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
body: {
:custom_info_field_id => 18,
:value => '555400'
}.to_json
)
puts response.body
import requests
response = requests.post(
'https://yourschool.populiweb.com/api2/organizations/(organization)/custominfodata',
headers={
'Authorization': 'Bearer YOUR_POPULI_API_KEY'
},
json={
'custom_info_field_id': 18,
'value': '555400'
}
)
print(response.json())
using Newtonsoft.Json;
using RestSharp;
var client = new RestClient();
var request = new RestRequest(new Uri("https://yourschool.populiweb.com/api2/organizations/(organization)/custominfodata"), Method.Post);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
request.AddJsonBody(new {
custom_info_field_id = 18,
value = "555400"
});
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/organizations/(organization)/custominfodata');
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([
'custom_info_field_id' => 18,
'value' => '555400'
]));
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);
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": "2026-07-25T16:24:07+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"
}' \
require 'httparty'
response = HTTParty.put(
'https://yourschool.populiweb.com/api2/organizations/(organization)/custominfodata/(custominfodata)',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
body: {
:value => '555771'
}.to_json
)
puts response.body
import requests
response = requests.put(
'https://yourschool.populiweb.com/api2/organizations/(organization)/custominfodata/(custominfodata)',
headers={
'Authorization': 'Bearer YOUR_POPULI_API_KEY'
},
json={
'value': '555771'
}
)
print(response.json())
using Newtonsoft.Json;
using RestSharp;
var client = new RestClient();
var request = new RestRequest(new Uri("https://yourschool.populiweb.com/api2/organizations/(organization)/custominfodata/(custominfodata)"), Method.Put);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
request.AddJsonBody(new {
value = "555771"
});
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/organizations/(organization)/custominfodata/(custominfodata)');
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([
'value' => '555771'
]));
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);
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": "2022-01-01T00:05:30+00:00",
"added_by_id": 2,
"updated_at": "2026-07-25T16:24:07+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
require 'httparty'
response = HTTParty.delete(
'https://yourschool.populiweb.com/api2/organizations/(organization)/custominfodata/(custominfodata)',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
)
puts response.body
import requests
response = requests.delete(
'https://yourschool.populiweb.com/api2/organizations/(organization)/custominfodata/(custominfodata)',
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/organizations/(organization)/custominfodata/(custominfodata)"), 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/organizations/(organization)/custominfodata/(custominfodata)');
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": "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
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
require 'httparty'
response = HTTParty.get(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/(custominfodata)',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
)
puts response.body
import requests
response = requests.get(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/(custominfodata)',
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)/custominfodata/(custominfodata)"), 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)/custominfodata/(custominfodata)');
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": "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.
Expandable Properties
- custom_info_field
- adjacent_custom_info_data
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"
}' \
require 'httparty'
response = HTTParty.post(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
body: {
:custom_info_field_id => 1,
:value => 'Robert'
}.to_json
)
puts response.body
import requests
response = requests.post(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata',
headers={
'Authorization': 'Bearer YOUR_POPULI_API_KEY'
},
json={
'custom_info_field_id': 1,
'value': 'Robert'
}
)
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)/custominfodata"), Method.Post);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
request.AddJsonBody(new {
custom_info_field_id = 1,
value = "Robert"
});
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)/custominfodata');
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([
'custom_info_field_id' => 1,
'value' => 'Robert'
]));
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);
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": "2026-07-25T16:24:07+00:00",
"added_by_id": 22,
"updated_at": "2026-07-25T16:24:07+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"
}' \
require 'httparty'
response = HTTParty.put(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/(custominfodata)',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
body: {
:value => 'Robert'
}.to_json
)
puts response.body
import requests
response = requests.put(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/(custominfodata)',
headers={
'Authorization': 'Bearer YOUR_POPULI_API_KEY'
},
json={
'value': 'Robert'
}
)
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)/custominfodata/(custominfodata)"), Method.Put);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
request.AddJsonBody(new {
value = "Robert"
});
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)/custominfodata/(custominfodata)');
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([
'value' => 'Robert'
]));
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);
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
}
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
require 'httparty'
response = HTTParty.delete(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/(custominfodata)',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
)
puts response.body
import requests
response = requests.delete(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/(custominfodata)',
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)/custominfodata/(custominfodata)"), Method.Delete);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
var response = client.Execute(request);
var response_object = JsonConvert.DeserializeObject(response.Content);
Console.Write(response_object);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/(custominfodata)');
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": "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
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
require 'httparty'
response = HTTParty.get(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/admissions/(custominfodata)',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
)
puts response.body
import requests
response = requests.get(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/admissions/(custominfodata)',
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)/custominfodata/admissions/(custominfodata)"), 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)/custominfodata/admissions/(custominfodata)');
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": "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.
Expandable Properties
- custom_info_field
- adjacent_custom_info_data
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"
}' \
require 'httparty'
response = HTTParty.post(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/admissions',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
body: {
:custom_info_field_id => 14,
:value => 'Chocolate'
}.to_json
)
puts response.body
import requests
response = requests.post(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/admissions',
headers={
'Authorization': 'Bearer YOUR_POPULI_API_KEY'
},
json={
'custom_info_field_id': 14,
'value': 'Chocolate'
}
)
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)/custominfodata/admissions"), Method.Post);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
request.AddJsonBody(new {
custom_info_field_id = 14,
value = "Chocolate"
});
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)/custominfodata/admissions');
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([
'custom_info_field_id' => 14,
'value' => 'Chocolate'
]));
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);
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": "2026-07-25T16:24:07+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"
}' \
require 'httparty'
response = HTTParty.put(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/admissions/(custominfodata)',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
body: {
:value => 'Rocky Road'
}.to_json
)
puts response.body
import requests
response = requests.put(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/admissions/(custominfodata)',
headers={
'Authorization': 'Bearer YOUR_POPULI_API_KEY'
},
json={
'value': 'Rocky Road'
}
)
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)/custominfodata/admissions/(custominfodata)"), Method.Put);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
request.AddJsonBody(new {
value = "Rocky Road"
});
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)/custominfodata/admissions/(custominfodata)');
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([
'value' => 'Rocky Road'
]));
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);
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": "2022-01-01T00:05:30+00:00",
"added_by_id": 2,
"updated_at": "2026-07-25T16:24:07+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
require 'httparty'
response = HTTParty.delete(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/admissions/(custominfodata)',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
)
puts response.body
import requests
response = requests.delete(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/admissions/(custominfodata)',
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)/custominfodata/admissions/(custominfodata)"), Method.Delete);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
var response = client.Execute(request);
var response_object = JsonConvert.DeserializeObject(response.Content);
Console.Write(response_object);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/admissions/(custominfodata)');
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": "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
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
require 'httparty'
response = HTTParty.get(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/campuslife/(custominfodata)',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
)
puts response.body
import requests
response = requests.get(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/campuslife/(custominfodata)',
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)/custominfodata/campuslife/(custominfodata)"), 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)/custominfodata/campuslife/(custominfodata)');
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": "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.
Expandable Properties
- custom_info_field
- adjacent_custom_info_data
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"
}' \
require 'httparty'
response = HTTParty.post(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/campuslife',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
body: {
:custom_info_field_id => 19,
:value => 'Patriots'
}.to_json
)
puts response.body
import requests
response = requests.post(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/campuslife',
headers={
'Authorization': 'Bearer YOUR_POPULI_API_KEY'
},
json={
'custom_info_field_id': 19,
'value': 'Patriots'
}
)
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)/custominfodata/campuslife"), Method.Post);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
request.AddJsonBody(new {
custom_info_field_id = 19,
value = "Patriots"
});
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)/custominfodata/campuslife');
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([
'custom_info_field_id' => 19,
'value' => 'Patriots'
]));
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);
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": "2026-07-25T16:24:07+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"
}' \
require 'httparty'
response = HTTParty.put(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/campuslife/(custominfodata)',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
body: {
:value => 'Hawks'
}.to_json
)
puts response.body
import requests
response = requests.put(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/campuslife/(custominfodata)',
headers={
'Authorization': 'Bearer YOUR_POPULI_API_KEY'
},
json={
'value': 'Hawks'
}
)
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)/custominfodata/campuslife/(custominfodata)"), Method.Put);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
request.AddJsonBody(new {
value = "Hawks"
});
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)/custominfodata/campuslife/(custominfodata)');
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([
'value' => 'Hawks'
]));
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);
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": "2022-01-01T00:05:30+00:00",
"added_by_id": 2,
"updated_at": "2026-07-25T16:24:07+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
require 'httparty'
response = HTTParty.delete(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/campuslife/(custominfodata)',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
)
puts response.body
import requests
response = requests.delete(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/campuslife/(custominfodata)',
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)/custominfodata/campuslife/(custominfodata)"), Method.Delete);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
var response = client.Execute(request);
var response_object = JsonConvert.DeserializeObject(response.Content);
Console.Write(response_object);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/campuslife/(custominfodata)');
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": "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
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
require 'httparty'
response = HTTParty.get(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/financial/(custominfodata)',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
)
puts response.body
import requests
response = requests.get(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/financial/(custominfodata)',
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)/custominfodata/financial/(custominfodata)"), 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)/custominfodata/financial/(custominfodata)');
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": "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.
Expandable Properties
- custom_info_field
- adjacent_custom_info_data
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"
}' \
require 'httparty'
response = HTTParty.post(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/financial',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
body: {
:custom_info_field_id => 16,
:value => 'Silver'
}.to_json
)
puts response.body
import requests
response = requests.post(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/financial',
headers={
'Authorization': 'Bearer YOUR_POPULI_API_KEY'
},
json={
'custom_info_field_id': 16,
'value': 'Silver'
}
)
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)/custominfodata/financial"), Method.Post);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
request.AddJsonBody(new {
custom_info_field_id = 16,
value = "Silver"
});
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)/custominfodata/financial');
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([
'custom_info_field_id' => 16,
'value' => 'Silver'
]));
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);
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": "2026-07-25T16:24:07+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"
}' \
require 'httparty'
response = HTTParty.put(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/financial/(custominfodata)',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
body: {
:value => 'Gold'
}.to_json
)
puts response.body
import requests
response = requests.put(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/financial/(custominfodata)',
headers={
'Authorization': 'Bearer YOUR_POPULI_API_KEY'
},
json={
'value': 'Gold'
}
)
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)/custominfodata/financial/(custominfodata)"), Method.Put);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
request.AddJsonBody(new {
value = "Gold"
});
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)/custominfodata/financial/(custominfodata)');
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([
'value' => 'Gold'
]));
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);
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
}
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
require 'httparty'
response = HTTParty.delete(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/financial/(custominfodata)',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
)
puts response.body
import requests
response = requests.delete(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/financial/(custominfodata)',
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)/custominfodata/financial/(custominfodata)"), Method.Delete);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
var response = client.Execute(request);
var response_object = JsonConvert.DeserializeObject(response.Content);
Console.Write(response_object);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/financial/(custominfodata)');
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": "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
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
require 'httparty'
response = HTTParty.get(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/financialaid/(custominfodata)',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
)
puts response.body
import requests
response = requests.get(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/financialaid/(custominfodata)',
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)/custominfodata/financialaid/(custominfodata)"), 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)/custominfodata/financialaid/(custominfodata)');
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": "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.
Expandable Properties
- custom_info_field
- adjacent_custom_info_data
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"
}' \
require 'httparty'
response = HTTParty.post(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/financialaid',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
body: {
:custom_info_field_id => 15,
:value => 'Grant'
}.to_json
)
puts response.body
import requests
response = requests.post(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/financialaid',
headers={
'Authorization': 'Bearer YOUR_POPULI_API_KEY'
},
json={
'custom_info_field_id': 15,
'value': 'Grant'
}
)
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)/custominfodata/financialaid"), Method.Post);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
request.AddJsonBody(new {
custom_info_field_id = 15,
value = "Grant"
});
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)/custominfodata/financialaid');
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([
'custom_info_field_id' => 15,
'value' => 'Grant'
]));
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);
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": "2026-07-25T16:24:07+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"
}' \
require 'httparty'
response = HTTParty.put(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/financialaid/(custominfodata)',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
body: {
:value => 'Grant'
}.to_json
)
puts response.body
import requests
response = requests.put(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/financialaid/(custominfodata)',
headers={
'Authorization': 'Bearer YOUR_POPULI_API_KEY'
},
json={
'value': 'Grant'
}
)
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)/custominfodata/financialaid/(custominfodata)"), Method.Put);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
request.AddJsonBody(new {
value = "Grant"
});
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)/custominfodata/financialaid/(custominfodata)');
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([
'value' => 'Grant'
]));
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);
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": "2022-01-01T00:05:30+00:00",
"added_by_id": 2,
"updated_at": "2026-07-25T16:24:07+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
require 'httparty'
response = HTTParty.delete(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/financialaid/(custominfodata)',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
)
puts response.body
import requests
response = requests.delete(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/financialaid/(custominfodata)',
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)/custominfodata/financialaid/(custominfodata)"), Method.Delete);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
var response = client.Execute(request);
var response_object = JsonConvert.DeserializeObject(response.Content);
Console.Write(response_object);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/financialaid/(custominfodata)');
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": "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
generic_set
Example code to call this method:
curl "https://yourschool.populiweb.com/api2/people/(person)/custominfodata/set" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \
-X GET
-d '{
"custom_info_field_id": 1,
"value": "Robert"
}' \
require 'httparty'
response = HTTParty.get(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/set',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
body: {
:custom_info_field_id => 1,
:value => 'Robert'
}.to_json
)
puts response.body
import requests
response = requests.get(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/set',
headers={
'Authorization': 'Bearer YOUR_POPULI_API_KEY'
},
json={
'custom_info_field_id': 1,
'value': 'Robert'
}
)
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)/custominfodata/set"), Method.Get);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
request.AddJsonBody(new {
custom_info_field_id = 1,
value = "Robert"
});
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)/custominfodata/set');
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([
'custom_info_field_id' => 1,
'value' => 'Robert'
]));
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);
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": "2026-07-25T16:24:07+00:00",
"added_by_id": 22,
"updated_at": "2026-07-25T16:24:07+00:00",
"updated_by_id": 22,
"option_value": null,
"sandbox": true
}
Creates a custom field value OR updates it if it already exists.
HTTP Request
GET /people/(person)/custominfodata/set
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
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
require 'httparty'
response = HTTParty.get(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/student/(custominfodata)',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
)
puts response.body
import requests
response = requests.get(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/student/(custominfodata)',
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)/custominfodata/student/(custominfodata)"), 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)/custominfodata/student/(custominfodata)');
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": "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.
Expandable Properties
- custom_info_field
- adjacent_custom_info_data
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"
}' \
require 'httparty'
response = HTTParty.post(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/student',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
body: {
:custom_info_field_id => 12,
:value => 'Spanish'
}.to_json
)
puts response.body
import requests
response = requests.post(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/student',
headers={
'Authorization': 'Bearer YOUR_POPULI_API_KEY'
},
json={
'custom_info_field_id': 12,
'value': 'Spanish'
}
)
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)/custominfodata/student"), Method.Post);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
request.AddJsonBody(new {
custom_info_field_id = 12,
value = "Spanish"
});
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)/custominfodata/student');
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([
'custom_info_field_id' => 12,
'value' => 'Spanish'
]));
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);
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": "2026-07-25T16:24:07+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"
}' \
require 'httparty'
response = HTTParty.put(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/student/(custominfodata)',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
body: {
:value => 'Mathematics'
}.to_json
)
puts response.body
import requests
response = requests.put(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/student/(custominfodata)',
headers={
'Authorization': 'Bearer YOUR_POPULI_API_KEY'
},
json={
'value': 'Mathematics'
}
)
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)/custominfodata/student/(custominfodata)"), Method.Put);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
request.AddJsonBody(new {
value = "Mathematics"
});
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)/custominfodata/student/(custominfodata)');
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([
'value' => 'Mathematics'
]));
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);
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
}
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
require 'httparty'
response = HTTParty.delete(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/student/(custominfodata)',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
)
puts response.body
import requests
response = requests.delete(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/student/(custominfodata)',
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)/custominfodata/student/(custominfodata)"), Method.Delete);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
var response = client.Execute(request);
var response_object = JsonConvert.DeserializeObject(response.Content);
Console.Write(response_object);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/student/(custominfodata)');
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": "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
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
require 'httparty'
response = HTTParty.get(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/term/(academicterm)/(custominfodata)',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
)
puts response.body
import requests
response = requests.get(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/term/(academicterm)/(custominfodata)',
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)/custominfodata/term/(academicterm)/(custominfodata)"), 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)/custominfodata/term/(academicterm)/(custominfodata)');
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": "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.
Expandable Properties
- custom_info_field
- adjacent_custom_info_data
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"
}' \
require 'httparty'
response = HTTParty.post(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/term/(academicterm)',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
body: {
:custom_info_field_id => 13,
:value => 'Yellow'
}.to_json
)
puts response.body
import requests
response = requests.post(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/term/(academicterm)',
headers={
'Authorization': 'Bearer YOUR_POPULI_API_KEY'
},
json={
'custom_info_field_id': 13,
'value': 'Yellow'
}
)
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)/custominfodata/term/(academicterm)"), Method.Post);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
request.AddJsonBody(new {
custom_info_field_id = 13,
value = "Yellow"
});
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)/custominfodata/term/(academicterm)');
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([
'custom_info_field_id' => 13,
'value' => 'Yellow'
]));
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);
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": "2026-07-25T16:24:07+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"
}' \
require 'httparty'
response = HTTParty.put(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/term/(academicterm)/(custominfodata)',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
body: {
:value => 'Blue'
}.to_json
)
puts response.body
import requests
response = requests.put(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/term/(academicterm)/(custominfodata)',
headers={
'Authorization': 'Bearer YOUR_POPULI_API_KEY'
},
json={
'value': 'Blue'
}
)
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)/custominfodata/term/(academicterm)/(custominfodata)"), Method.Put);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
request.AddJsonBody(new {
value = "Blue"
});
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)/custominfodata/term/(academicterm)/(custominfodata)');
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([
'value' => 'Blue'
]));
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);
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": "2022-01-01T00:05:30+00:00",
"added_by_id": 2,
"updated_at": "2026-07-25T16:24:07+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
require 'httparty'
response = HTTParty.delete(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/term/(academicterm)/(custominfodata)',
headers: {
'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
},
)
puts response.body
import requests
response = requests.delete(
'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/term/(academicterm)/(custominfodata)',
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)/custominfodata/term/(academicterm)/(custominfodata)"), Method.Delete);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
var response = client.Execute(request);
var response_object = JsonConvert.DeserializeObject(response.Content);
Console.Write(response_object);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'https://yourschool.populiweb.com/api2/people/(person)/custominfodata/term/(academicterm)/(custominfodata)');
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": "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