API
⌘K
My Developer Account

Household

A household links people together and can have a primary contact. To add a person to an existing household, use the HouseholdMemberships endpoint.

Example Request

curl https://api.planningcenteronline.com/people/v2/households

View in API Explorer →

Example Object

{
  "type": "Household",
  "id": "1",
  "attributes": {
    "avatar": "string",
    "created_at": "2000-01-01T12:00:00Z",
    "member_count": 1,
    "name": "string",
    "primary_contact_id": "primary_key",
    "primary_contact_name": "string",
    "updated_at": "2000-01-01T12:00:00Z"
  },
  "relationships": {
    "primary_contact": {
      "data": {
        "type": "Person",
        "id": "1"
      }
    },
    "people": {
      "data": [
        {
          "type": "Person",
          "id": "1"
        }
      ]
    }
  }
}

Attributes

Name Type Description
avatar string File UUID (see [File Uploads](#file-uploads) section)
created_at date_time
id primary_key
member_count integer
name string
primary_contact_id primary_key
primary_contact_name string
updated_at date_time

Relationships

Name Type Association Type Note
primary_contact Person to_one
people Person to_many

Can Include

Parameter Value Description Assignable
include people include associated people create and update

Order By

Parameter Value Type Description
order created_at string prefix with a hyphen (-created_at) to reverse the order
order member_count string prefix with a hyphen (-member_count) to reverse the order
order name string prefix with a hyphen (-name) to reverse the order
order primary_contact_name string prefix with a hyphen (-primary_contact_name) to reverse the order
order updated_at string prefix with a hyphen (-updated_at) to reverse the order

Query By

Name Parameter Type Description Example
created_at where[created_at] date_time Query on a specific created_at ?where[created_at]=2000-01-01T12:00:00Z
member_count where[member_count] integer Query on a specific member_count ?where[member_count]=1
name where[name] string Query on a specific name ?where[name]=string
primary_contact_name where[primary_contact_name] string Query on a specific primary_contact_name ?where[primary_contact_name]=string
updated_at where[updated_at] date_time Query on a specific updated_at ?where[updated_at]=2000-01-01T12:00:00Z

Pagination

Name Parameter Type Description
per_page per_page integer how many records to return per page (min=1, max=100, default=25)
offset offset integer get results from given offset

Endpoints

Listing

HTTP Method Endpoint
GET /people/v2/households

Reading

HTTP Method Endpoint
GET /people/v2/households/{id}

Creating

HTTP Method Endpoint Assignable Attributes
POST /people/v2/households
  • name
  • member_count
  • avatar
  • primary_contact_id

Updating

HTTP Method Endpoint Assignable Attributes
PATCH /people/v2/households/{id}
  • name
  • member_count
  • avatar
  • primary_contact_id

Deleting

HTTP Method Endpoint
DELETE /people/v2/households/{id}

Associations

HTTP Method Endpoint Returns Details Filter By
GET https://api.planningcenteronline.com/people/v2/households/{household_id}/household_memberships HouseholdMembership
GET https://api.planningcenteronline.com/people/v2/households/{household_id}/people Person
  • non_pending
  • without_deceased

Belongs To

HTTP Method Endpoint Association Details Filter By
GET https://api.planningcenteronline.com/people/v2/households/{household_id}/household_memberships/{household_membership_id}/household HouseholdMembership
GET https://api.planningcenteronline.com/people/v2/households Organization
GET https://api.planningcenteronline.com/people/v2/people_imports/{people_import_id}/histories/{people_import_history_id}/household PeopleImportHistory
GET https://api.planningcenteronline.com/people/v2/people/{person_id}/households Person