NAV
shell ruby python csharp php

Address

The Address object

The Address object looks like this in JSON:

{
    "object": "address",
    "id": 1,
    "owner_id": 1,
    "owner_type": "org",
    "street": "405 S Main St",
    "city": "Moscow",
    "state": "ID",
    "postal": "83843",
    "country": "US",
    "type": "main",
    "primary": true,
    "most_recent_by_type": false,
    "old": false,
    "public": true,
    "synced_from": null,
    "import_id": null,
    "added_at": null,
    "added_by_id": null,
    "sandbox": true
}
Attribute Required Data Type
id Yes int
owner_id Yes int
owner_type Yes enum (person, organization, inquiry, application)
street Yes text (255)
city Yes text (50)
state Yes text (50)
postal Yes text (50)
country Yes text (50)
type Yes enum (home, work, other, main, billing, shipping, school)
primary Yes bool
most_recent_by_type Yes bool
old Yes bool
public Yes bool
synced_from Yes int
import_id No int
added_at No datetime
added_by_id No int
sandbox No bool

index (organization)

Example code to call this method:

curl "https://yourschool.populiweb.com/api2/organizations/(organization)/addresses" \
-H "Content-Type: application/json" \ 
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \ 
-X GET
require 'httparty'
response = HTTParty.get(
 'https://yourschool.populiweb.com/api2/organizations/(organization)/addresses',
 headers: {
  'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
 },
)
puts response.body
import requests
response = requests.get(
 'https://yourschool.populiweb.com/api2/organizations/(organization)/addresses',
 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)/addresses"), 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)/addresses');
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": "address",
            "id": 2,
            "owner_id": 1,
            "owner_type": "organization",
            "street": "405 S Main St",
            "city": "Moscow",
            "state": "ID",
            "postal": "83843",
            "country": "US",
            "type": "main",
            "primary": true,
            "most_recent_by_type": false,
            "old": false,
            "public": true,
            "synced_from": null,
            "import_id": null,
            "added_at": null,
            "added_by_id": null
        }
    ],
    "sandbox": true
}

Retrieves all Address objects tied to a specific Organization.

HTTP Request

GET /organizations/(organization)/addresses

Parameters

None

Permissions

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

index (person)

Example code to call this method:

curl "https://yourschool.populiweb.com/api2/people/(person)/addresses" \
-H "Content-Type: application/json" \ 
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \ 
-X GET
require 'httparty'
response = HTTParty.get(
 'https://yourschool.populiweb.com/api2/people/(person)/addresses',
 headers: {
  'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
 },
)
puts response.body
import requests
response = requests.get(
 'https://yourschool.populiweb.com/api2/people/(person)/addresses',
 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)/addresses"), 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)/addresses');
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": "address",
            "id": 801,
            "owner_id": 12,
            "owner_type": "person",
            "street": "123 Street",
            "city": "Seattle",
            "state": "WA",
            "postal": "89000",
            "country": "US",
            "type": "other",
            "primary": false,
            "most_recent_by_type": false,
            "old": false,
            "public": true,
            "synced_from": null,
            "import_id": null,
            "added_at": null,
            "added_by_id": 20
        }
    ],
    "sandbox": true
}

Retrieves all Address objects tied to a specific Person.

HTTP Request

GET /people/(person)/addresses

Parameters

None

Permissions

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

create (organization)

Example code to call this method:

curl "https://yourschool.populiweb.com/api2/organizations/(organization)/addresses" \
-H "Content-Type: application/json" \ 
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \ 
-X POST
-d '{
    "street": "444 Oak Ave",
    "city": "Cityburg",
    "type": "main"
}' \ 
require 'httparty'
response = HTTParty.post(
 'https://yourschool.populiweb.com/api2/organizations/(organization)/addresses',
 headers: {
  'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
 },
 body: {
  :street => '444 Oak Ave',
  :city => 'Cityburg',
  :type => 'main'
 }.to_json
)
puts response.body
import requests
response = requests.post(
 'https://yourschool.populiweb.com/api2/organizations/(organization)/addresses',
 headers={
  'Authorization': 'Bearer YOUR_POPULI_API_KEY'
 },
 json={
  'street': '444 Oak Ave',
  'city': 'Cityburg',
  'type': 'main'
 }
)
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)/addresses"), Method.Post);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
request.AddJsonBody(new {
  street = "444 Oak Ave",
  city = "Cityburg",
  type = "main"
});
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)/addresses');
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([
  'street' => '444 Oak Ave',
  'city' => 'Cityburg',
  'type' => 'main'
]));
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);

Example response:

{
    "object": "address",
    "id": 805,
    "owner_id": 1,
    "owner_type": "organization",
    "street": "444 Oak Ave",
    "city": "Cityburg",
    "state": null,
    "postal": null,
    "country": null,
    "type": "main",
    "primary": false,
    "most_recent_by_type": true,
    "old": false,
    "public": false,
    "synced_from": null,
    "import_id": null,
    "added_at": "2026-07-25T16:24:08+00:00",
    "added_by_id": 22,
    "sandbox": true
}

Creates a new Address object.

HTTP Request

POST /organizations/(organization)/addresses

Parameters

Name Required Data Type Description
street Yes text (255)
city Yes text (50)
state No text (50)
postal No text (50)
country No text (50)
type Yes enum (main, billing, shipping, other)

Permissions

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

show (organization)

Example code to call this method:

curl "https://yourschool.populiweb.com/api2/organizations/(organization)/addresses/(address)" \
-H "Content-Type: application/json" \ 
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \ 
-X GET
require 'httparty'
response = HTTParty.get(
 'https://yourschool.populiweb.com/api2/organizations/(organization)/addresses/(address)',
 headers: {
  'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
 },
)
puts response.body
import requests
response = requests.get(
 'https://yourschool.populiweb.com/api2/organizations/(organization)/addresses/(address)',
 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)/addresses/(address)"), 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)/addresses/(address)');
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": "address",
    "id": 1,
    "owner_id": 1,
    "owner_type": "org",
    "street": "405 S Main St",
    "city": "Moscow",
    "state": "ID",
    "postal": "83843",
    "country": "US",
    "type": "main",
    "primary": true,
    "most_recent_by_type": false,
    "old": false,
    "public": true,
    "synced_from": null,
    "import_id": null,
    "added_at": null,
    "added_by_id": null,
    "sandbox": true
}

Retrieves a specific Address object.

HTTP Request

GET /organizations/(organization)/addresses/(address)

Parameters

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

Permissions

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

update (organization)

Example code to call this method:

curl "https://yourschool.populiweb.com/api2/organizations/(organization)/addresses/(address)" \
-H "Content-Type: application/json" \ 
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \ 
-X PUT
-d '{
    "street": "555 Maple Street",
    "city": "Townville",
    "type": "main"
}' \ 
require 'httparty'
response = HTTParty.put(
 'https://yourschool.populiweb.com/api2/organizations/(organization)/addresses/(address)',
 headers: {
  'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
 },
)
puts response.body
import requests
response = requests.put(
 'https://yourschool.populiweb.com/api2/organizations/(organization)/addresses/(address)',
 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)/addresses/(address)"), 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/organizations/(organization)/addresses/(address)');
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": "address",
    "id": 800,
    "owner_id": 1,
    "owner_type": "organization",
    "street": "555 Maple Street",
    "city": "Townville",
    "state": "WA",
    "postal": "89000",
    "country": "US",
    "type": "main",
    "primary": false,
    "most_recent_by_type": true,
    "old": false,
    "public": true,
    "synced_from": null,
    "import_id": null,
    "added_at": null,
    "added_by_id": 20,
    "sandbox": true
}

Updates an existing Address object.

HTTP Request

PUT /organizations/(organization)/addresses/(address)

Parameters

Name Required Data Type Description
street No text (255)
city No text (50)
state No text (50)
postal No text (50)
country No text (50)
type No enum (main, billing, shipping, other)
is_primary No bool
old No bool
public No bool

Permissions

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

delete (organization)

Example code to call this method:

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

Deletes an existing Address object.

HTTP Request

DELETE /organizations/(organization)/addresses/(address)

Parameters

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

Permissions

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

create (person)

Example code to call this method:

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

Example response:

{
    "object": "address",
    "id": 806,
    "owner_id": 12,
    "owner_type": "person",
    "street": "222 Ash Court",
    "city": "Prairie City",
    "state": null,
    "postal": null,
    "country": null,
    "type": "home",
    "primary": false,
    "most_recent_by_type": true,
    "old": false,
    "public": false,
    "synced_from": null,
    "import_id": null,
    "added_at": "2026-07-25T16:24:10+00:00",
    "added_by_id": 22,
    "sandbox": true
}

Creates a new Address object.

HTTP Request

POST /people/(person)/addresses

Parameters

Name Required Data Type Description
street Yes text (255)
city Yes text (50)
state No text (50)
postal No text (50)
country No text (50)
type Yes enum (home, work, billing, school, shipping, other)

Permissions

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

show (person)

Example code to call this method:

curl "https://yourschool.populiweb.com/api2/people/(person)/addresses/(address)" \
-H "Content-Type: application/json" \ 
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \ 
-X GET
require 'httparty'
response = HTTParty.get(
 'https://yourschool.populiweb.com/api2/people/(person)/addresses/(address)',
 headers: {
  'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
 },
)
puts response.body
import requests
response = requests.get(
 'https://yourschool.populiweb.com/api2/people/(person)/addresses/(address)',
 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)/addresses/(address)"), 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)/addresses/(address)');
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": "address",
    "id": 801,
    "owner_id": 12,
    "owner_type": "person",
    "street": "123 Street",
    "city": "Seattle",
    "state": "WA",
    "postal": "89000",
    "country": "US",
    "type": "other",
    "primary": false,
    "most_recent_by_type": false,
    "old": false,
    "public": true,
    "synced_from": null,
    "import_id": null,
    "added_at": null,
    "added_by_id": 20,
    "sandbox": true
}

Retrieves a specific Address object.

HTTP Request

GET /people/(person)/addresses/(address)

Parameters

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

Permissions

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

update (person)

Example code to call this method:

curl "https://yourschool.populiweb.com/api2/people/(person)/addresses/(address)" \
-H "Content-Type: application/json" \ 
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \ 
-X PUT
-d '{
    "street": "333 Fir Street",
    "city": "Placeville",
    "type": "home"
}' \ 
require 'httparty'
response = HTTParty.put(
 'https://yourschool.populiweb.com/api2/people/(person)/addresses/(address)',
 headers: {
  'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
 },
)
puts response.body
import requests
response = requests.put(
 'https://yourschool.populiweb.com/api2/people/(person)/addresses/(address)',
 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)/addresses/(address)"), 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)/addresses/(address)');
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": "address",
    "id": 801,
    "owner_id": 12,
    "owner_type": "person",
    "street": "333 Fir Street",
    "city": "Placeville",
    "state": "WA",
    "postal": "89000",
    "country": "US",
    "type": "home",
    "primary": true,
    "most_recent_by_type": true,
    "old": false,
    "public": true,
    "synced_from": null,
    "import_id": null,
    "added_at": null,
    "added_by_id": 20,
    "sandbox": true
}

Updates an existing Address object.

HTTP Request

PUT /people/(person)/addresses/(address)

Parameters

Name Required Data Type Description
street No text (255)
city No text (50)
state No text (50)
postal No text (50)
country No text (50)
type No enum (home, work, billing, school, shipping, other)
is_primary No bool
old No bool
public No bool

Permissions

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

delete (person)

Example code to call this method:

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

Deletes an existing Address object.

HTTP Request

DELETE /people/(person)/addresses/(address)

Parameters

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

Permissions

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

set

Example code to call this method:

curl "https://yourschool.populiweb.com/api2/people/(person)/addresses/set" \
-H "Content-Type: application/json" \ 
-H "Authorization: Bearer YOUR_POPULI_API_KEY" \ 
-X GET
-d '{
    "street": "222 Ash Court",
    "city": "Prairie City",
    "type": "home"
}' \ 
require 'httparty'
response = HTTParty.get(
 'https://yourschool.populiweb.com/api2/people/(person)/addresses/set',
 headers: {
  'Authorization' => 'Bearer YOUR_POPULI_API_KEY'
 },
 body: {
  :street => '222 Ash Court',
  :city => 'Prairie City',
  :type => 'home'
 }.to_json
)
puts response.body
import requests
response = requests.get(
 'https://yourschool.populiweb.com/api2/people/(person)/addresses/set',
 headers={
  'Authorization': 'Bearer YOUR_POPULI_API_KEY'
 },
 json={
  'street': '222 Ash Court',
  'city': 'Prairie City',
  'type': 'home'
 }
)
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)/addresses/set"), Method.Get);
request.AddHeader("Authorization", "Bearer YOUR_POPULI_API_KEY");
request.AddJsonBody(new {
  street = "222 Ash Court",
  city = "Prairie City",
  type = "home"
});
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)/addresses/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([
  'street' => '222 Ash Court',
  'city' => 'Prairie City',
  'type' => 'home'
]));
$response = curl_exec($curl);
$response_decoded = json_decode($response);
var_dump($response_decoded);

Example response:

{
    "object": "address",
    "id": 806,
    "owner_id": 12,
    "owner_type": "person",
    "street": "222 Ash Court",
    "city": "Prairie City",
    "state": null,
    "postal": null,
    "country": null,
    "type": "home",
    "primary": false,
    "most_recent_by_type": true,
    "old": false,
    "public": false,
    "synced_from": null,
    "import_id": null,
    "added_at": "2026-07-25T16:24:10+00:00",
    "added_by_id": 22,
    "sandbox": true
}

Creates an address OR updates it if it already exists.

HTTP Request

GET /people/(person)/addresses/set

Parameters

Name Required Data Type Description
street Yes text (255)
city Yes text (50)
state No text (50)
postal No text (50)
country No text (50)
type Yes enum (home, work, billing, school, shipping, other)
is_primary No bool
old No bool
public No bool

Permissions

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