NAV
shell ruby python csharp php

PersonRace

The PersonRace object

The PersonRace object looks like this in JSON:

{
    "object": "person_race",
    "id": 1,
    "person_id": 15,
    "race_id": 7,
    "sandbox": true
}
Attribute Required Data Type
id Yes int
person_id Yes int
race_id Yes int
sandbox No bool

index

Example code to call this method:

curl "https://yourschool.populiweb.com/api2/people/(person)/races" \
-H "Content-Type: application/json" \ 
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \ 
-X GET
require 'httparty'
response = HTTParty.get(
 'https://yourschool.populiweb.com/api2/people/(person)/races',
 headers: {
  'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
 },
)
puts response.body
import requests
response = requests.get(
 'https://yourschool.populiweb.com/api2/people/(person)/races',
 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)/races"), 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)/races');
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": "person",
    "id": 12,
    "first_name": "Taylor",
    "last_name": "Forest",
    "middle_name": null,
    "prefix": "Mrs.",
    "suffix": null,
    "preferred_name": null,
    "display_name": "Taylor Forest",
    "salutation": "Mrs. Alice Admin",
    "addressee": "Mrs. Alice Admin",
    "gender": "female",
    "other_gender": null,
    "image_file_id": null,
    "birth_date": null,
    "status": "active",
    "social_security_number": null,
    "alien_registration_number": null,
    "social_insurance_number": null,
    "home_city": null,
    "home_state": null,
    "home_country": null,
    "former_name": null,
    "license_plate": null,
    "bio": null,
    "hispanic_latino": false,
    "resident_alien": false,
    "localization_id": null,
    "notification_email_id": null,
    "deceased_date": null,
    "import_id": null,
    "staff_id": null,
    "faculty_id": null,
    "degree_level_id": null,
    "races": [],
    "added_at": null,
    "added_by_id": null,
    "updated_at": "2026-07-25T16:24:10+00:00",
    "private_profile": false,
    "is_user": true,
    "sandbox": true
}

Retrieves all PersonRace objects tied to a specific Person.

HTTP Request

GET /people/(person)/races

Parameters

None

Permissions

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

create

Example code to call this method:

curl "https://yourschool.populiweb.com/api2/people/(person)/races" \
-H "Content-Type: application/json" \ 
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \ 
-X POST
-d '{
    "race_id": 1,
    "hispanic_latino": "1"
}' \ 
require 'httparty'
response = HTTParty.post(
 'https://yourschool.populiweb.com/api2/people/(person)/races',
 headers: {
  'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
 },
 body: {
  :hispanic_latino => '1'
 }.to_json
)
puts response.body
import requests
response = requests.post(
 'https://yourschool.populiweb.com/api2/people/(person)/races',
 headers={
  'Authorization': 'Bearer YOUR_POPULI_API_KEY'
 },
 json={
  'hispanic_latino': '1'
 }
)
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)/races"), Method.Post);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
request.AddJsonBody(new {
  hispanic_latino = "1"
});
var response = client.Execute(request);
var response_object = JsonConvert.DeserializeObject(response.Content);
Console.Write(response_object);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'https://yourschool.populiweb.com/api2/people/(person)/races');
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([
  'hispanic_latino' => '1'
]));
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);

Example response:

{
    "object": "person",
    "id": 12,
    "first_name": "Taylor",
    "last_name": "Forest",
    "middle_name": null,
    "prefix": "Mrs.",
    "suffix": null,
    "preferred_name": null,
    "display_name": "Taylor Forest",
    "salutation": "Mrs. Alice Admin",
    "addressee": "Mrs. Alice Admin",
    "gender": "female",
    "other_gender": null,
    "image_file_id": null,
    "birth_date": null,
    "status": "active",
    "social_security_number": null,
    "alien_registration_number": null,
    "social_insurance_number": null,
    "home_city": null,
    "home_state": null,
    "home_country": null,
    "former_name": null,
    "license_plate": null,
    "bio": null,
    "hispanic_latino": true,
    "resident_alien": false,
    "localization_id": null,
    "notification_email_id": null,
    "deceased_date": null,
    "import_id": null,
    "staff_id": null,
    "faculty_id": null,
    "degree_level_id": null,
    "races": [
        {
            "object": "race",
            "id": 1,
            "name": "American Indian or Alaska Native"
        }
    ],
    "added_at": null,
    "added_by_id": null,
    "updated_at": "2026-07-25T16:24:10+00:00",
    "private_profile": false,
    "is_user": true,
    "sandbox": true
}

Creates a new PersonRace object.

HTTP Request

POST /people/(person)/races

Parameters

Name Required Data Type Description
race_id No int You do not need to include race_id if you are only setting the hispanic_latino value.
hispanic_latino Yes bool

Permissions

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

delete

Example code to call this method:

curl "https://yourschool.populiweb.com/api2/people/(person)/races" \
-H "Content-Type: application/json" \ 
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \ 
-X DELETE
require 'httparty'
response = HTTParty.delete(
 'https://yourschool.populiweb.com/api2/people/(person)/races',
 headers: {
  'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
 },
)
puts response.body
import requests
response = requests.delete(
 'https://yourschool.populiweb.com/api2/people/(person)/races',
 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)/races"), 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)/races');
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": "person",
    "id": 12,
    "first_name": "Taylor",
    "last_name": "Forest",
    "middle_name": null,
    "prefix": "Mrs.",
    "suffix": null,
    "preferred_name": null,
    "display_name": "Taylor Forest",
    "salutation": "Mrs. Alice Admin",
    "addressee": "Mrs. Alice Admin",
    "gender": "female",
    "other_gender": null,
    "image_file_id": null,
    "birth_date": null,
    "status": "active",
    "social_security_number": null,
    "alien_registration_number": null,
    "social_insurance_number": null,
    "home_city": null,
    "home_state": null,
    "home_country": null,
    "former_name": null,
    "license_plate": null,
    "bio": null,
    "hispanic_latino": false,
    "resident_alien": false,
    "localization_id": null,
    "notification_email_id": null,
    "deceased_date": null,
    "import_id": null,
    "staff_id": null,
    "faculty_id": null,
    "degree_level_id": null,
    "added_at": null,
    "added_by_id": null,
    "updated_at": "2026-07-25T16:24:14+00:00",
    "private_profile": false,
    "is_user": true,
    "sandbox": true
}

Removes all race and ethnicity information about a person.

HTTP Request

DELETE /people/(person)/races

Parameters

No additional parameters are needed beyond the ID of the object to delete that appears in the URL.

Permissions

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