NAV
shell ruby python csharp php

StudentDegree

The StudentDegree object

The StudentDegree object looks like this in JSON:

{
    "object": "student_degree",
    "id": 1,
    "student_id": 1,
    "degree_id": 1,
    "status": "active",
    "graduation_date": null,
    "active_date": "2006-08-18",
    "inactive_date": null,
    "catalog_year_id": 1,
    "anticipated_completion_date": null,
    "show_on_transcript": true,
    "sandbox": true
}
Attribute Required Data Type
id No int
student_id Yes int
degree_id Yes int
status Yes enum (active, inactive, granted, deleted)
graduation_date Yes date
active_date Yes date
inactive_date Yes date
catalog_year_id Yes int
anticipated_completion_date No date
show_on_transcript Yes bool
sandbox No bool

index

Example code to call this method:

curl "https://yourschool.populiweb.com/api2/people/(person)/degrees" \
-H "Content-Type: application/json" \ 
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \ 
-X GET
require 'httparty'
response = HTTParty.get(
 'https://yourschool.populiweb.com/api2/people/(person)/degrees',
 headers: {
  'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
 },
)
puts response.body
import requests
response = requests.get(
 'https://yourschool.populiweb.com/api2/people/(person)/degrees',
 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)/degrees"), 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)/degrees');
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": "student_degree",
            "id": 5,
            "student_id": 12,
            "degree_id": 2,
            "status": "active",
            "graduation_date": null,
            "active_date": "2006-08-18",
            "inactive_date": null,
            "catalog_year_id": 1,
            "anticipated_completion_date": null,
            "show_on_transcript": true,
            "degree": {
                "object": "degree",
                "id": 2,
                "program_id": 1,
                "degree_level_id": 1,
                "department_id": 1,
                "name": "Bachelor of Arts Spanish",
                "description": "Bachelor of Arts Degree Spanish",
                "abbrv": "B.A.",
                "diploma": true,
                "status": "active",
                "cip_code": "24.0101",
                "unit": "credits",
                "distance_education": false,
                "length": null,
                "length_unit": "years",
                "external_id": null
            }
        }
    ],
    "sandbox": true
}

Retrieves all StudentDegree objects tied to a specific Person.

HTTP Request

GET /people/(person)/degrees

Parameters

None

Permissions

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

create

Example code to call this method:

curl "https://yourschool.populiweb.com/api2/people/(person)/degrees" \
-H "Content-Type: application/json" \ 
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \ 
-X POST
-d '{
    "degree_id": 1,
    "catalog_year_id": 4
}' \ 
require 'httparty'
response = HTTParty.post(
 'https://yourschool.populiweb.com/api2/people/(person)/degrees',
 headers: {
  'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
 },
 body: {
  :degree_id => 1,
  :catalog_year_id => 4
 }.to_json
)
puts response.body
import requests
response = requests.post(
 'https://yourschool.populiweb.com/api2/people/(person)/degrees',
 headers={
  'Authorization': 'Bearer YOUR_POPULI_API_KEY'
 },
 json={
  'degree_id': 1,
  'catalog_year_id': 4
 }
)
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)/degrees"), Method.Post);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
request.AddJsonBody(new {
  degree_id = 1,
  catalog_year_id = 4
});
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)/degrees');
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([
  'degree_id' => 1,
  'catalog_year_id' => 4
]));
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);

Example response:

{
    "object": "student_degree",
    "id": 6,
    "student_id": 12,
    "degree_id": 1,
    "status": "active",
    "graduation_date": null,
    "active_date": "2026-07-25",
    "inactive_date": null,
    "catalog_year_id": 4,
    "anticipated_completion_date": null,
    "show_on_transcript": false,
    "sandbox": true
}

Creates a new StudentDegree object.

HTTP Request

POST /people/(person)/degrees

Parameters

Name Required Data Type Description
degree_id Yes int
catalog_year_id Yes int
active_date No date
show_on_transcript No bool
anticipated_completion_date No date

Permissions

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

show

Example code to call this method:

curl "https://yourschool.populiweb.com/api2/people/(person)/degrees/(studentdegree)" \
-H "Content-Type: application/json" \ 
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \ 
-X GET
require 'httparty'
response = HTTParty.get(
 'https://yourschool.populiweb.com/api2/people/(person)/degrees/(studentdegree)',
 headers: {
  'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
 },
)
puts response.body
import requests
response = requests.get(
 'https://yourschool.populiweb.com/api2/people/(person)/degrees/(studentdegree)',
 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)/degrees/(studentdegree)"), 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)/degrees/(studentdegree)');
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": "student_degree",
    "id": 3,
    "student_id": 16,
    "degree_id": 1,
    "status": "active",
    "graduation_date": null,
    "active_date": "2006-08-18",
    "inactive_date": null,
    "catalog_year_id": 1,
    "anticipated_completion_date": null,
    "show_on_transcript": true,
    "sandbox": true
}

Retrieves a specific StudentDegree object.

HTTP Request

GET /people/(person)/degrees/(studentdegree)

Parameters

No additional parameters are needed beyond the ID of the object being requested that appears in the URL.

Permissions

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

update

Example code to call this method:

curl "https://yourschool.populiweb.com/api2/people/(person)/degrees/(studentdegree)" \
-H "Content-Type: application/json" \ 
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \ 
-X PUT
require 'httparty'
response = HTTParty.put(
 'https://yourschool.populiweb.com/api2/people/(person)/degrees/(studentdegree)',
 headers: {
  'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
 },
)
puts response.body
import requests
response = requests.put(
 'https://yourschool.populiweb.com/api2/people/(person)/degrees/(studentdegree)',
 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)/degrees/(studentdegree)"), Method.Put);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
var response = client.Execute(request);
var response_object = JsonConvert.DeserializeObject(response.Content);
Console.Write(response_object);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'https://yourschool.populiweb.com/api2/people/(person)/degrees/(studentdegree)');
curl_setopt($curl, CURLOPT_HTTPHEADER, ['Authorization: Bearer YOUR_POPULI_API_KEY']);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'PUT');
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);

Example response:

{
    "object": "student_degree",
    "id": 3,
    "student_id": 16,
    "degree_id": 1,
    "status": "active",
    "graduation_date": null,
    "active_date": "2026-07-25",
    "inactive_date": null,
    "catalog_year_id": 1,
    "anticipated_completion_date": null,
    "show_on_transcript": false,
    "sandbox": true
}

Updates an existing StudentDegree object.

HTTP Request

PUT /people/(person)/degrees/(studentdegree)

Parameters

Name Required Data Type Description
status No enum (active, inactive, granted, deleted)
show_on_transcript No bool
active_date No date
catalog_year_id No int

Permissions

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

delete

Example code to call this method:

curl "https://yourschool.populiweb.com/api2/people/(person)/degrees/(studentdegree)" \
-H "Content-Type: application/json" \ 
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \ 
-X DELETE
require 'httparty'
response = HTTParty.delete(
 'https://yourschool.populiweb.com/api2/people/(person)/degrees/(studentdegree)',
 headers: {
  'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
 },
)
puts response.body
import requests
response = requests.delete(
 'https://yourschool.populiweb.com/api2/people/(person)/degrees/(studentdegree)',
 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)/degrees/(studentdegree)"), 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)/degrees/(studentdegree)');
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": "student_degree",
    "id": 4,
    "deleted": true
}

Deletes an existing StudentDegree object.

HTTP Request

DELETE /people/(person)/degrees/(studentdegree)

Parameters

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

Permissions

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