# Households ## List all households `households.list(HouseholdListParams**kwargs) -> SyncCursorPagination[Household]` **get** `/households` Retrieve a paginated list of households using cursor-based pagination ### Parameters - `after: Optional[str]` Cursor for forward pagination. Returns items after this cursor. - `before: Optional[str]` Cursor for backward pagination. Returns items before this cursor. - `external_id: Optional[str]` Filter by external ID (exact match within the caller's tenant) - `limit: Optional[int]` Maximum number of items to return ### Returns - `class Household: …` - `id: str` Unique identifier with household_ prefix - `created_at: datetime` Timestamp when the household was created - `primary_relationship_owner_id: str` User ID of the primary relationship owner - `updated_at: datetime` Timestamp when the household was last updated - `external_id: Optional[str]` Customer-supplied identifier from an external system. Unique within the caller's tenant when set. - `name: Optional[str]` Display name for the household - `notes: Optional[str]` Notes about the household - `primary_individuals: Optional[List[Individual]]` Primary client profiles for this household (at most 2) - `id: str` Unique identifier with client_profile_ prefix - `created_at: datetime` Timestamp when the individual was created - `first_name: str` First name of the individual - `household_id: str` Household ID this individual belongs to - `is_beneficiary: bool` Whether this client profile should be an eligible beneficiary for entities and gifts - `is_deceased: bool` Whether this client profile is deceased - `is_grantor: bool` Whether this client profile should be an eligible grantor/owner/other principal for entities - `is_primary: bool` Whether this is one of the (at most) two primary clients on this household - `is_trustee: bool` Whether this client profile should be an eligible trustee for entities - `last_name: str` Last name of the individual - `updated_at: datetime` Timestamp when the individual was last updated - `address_line1: Optional[str]` Street address line 1 (from address edge) - `address_line2: Optional[str]` Street address line 2 (from address edge) - `city: Optional[str]` City (from address edge) - `country: Optional[str]` Country (from address edge) - `date_of_birth: Optional[date]` Date of birth (encrypted field) - `date_of_death: Optional[date]` Date of death if applicable (encrypted field) - `deleted_at: Optional[datetime]` Timestamp when the individual was soft deleted - `email: Optional[str]` Email address - `middle_name: Optional[str]` Middle name of the individual - `notes: Optional[str]` Notes about the client profile - `postal_code: Optional[str]` ZIP or postal code (from address edge) - `state: Optional[str]` State or province (from address edge) - `suffix: Optional[str]` Name suffix (Jr., Sr., III, etc.) ### Example ```python from withluminary import Luminary client = Luminary() page = client.households.list() page = page.data[0] print(page.id) ``` #### Response ```json { "data": [ { "id": "household_01ARZ3NDEKTSV4RRFFQ69G5FAV", "created_at": "2024-01-15T09:30:00Z", "primary_relationship_owner_id": "user_01ARZ3NDEKTSV4RRFFQ69G5FAV", "updated_at": "2024-01-20T14:45:00Z", "external_id": "crm-household-12345", "name": "Smith Family", "notes": "notes", "primary_individuals": [ { "id": "client_profile_01ARZ3NDEKTSV4RRFFQ69G5FAV", "created_at": "2024-01-15T09:30:00Z", "first_name": "John", "household_id": "household_01ARZ3NDEKTSV4RRFFQ69G5FAV", "is_beneficiary": true, "is_deceased": true, "is_grantor": true, "is_primary": true, "is_trustee": true, "last_name": "Smith", "updated_at": "2024-01-20T14:45:00Z", "address_line1": "123 Main St", "address_line2": "Apt 4B", "city": "San Francisco", "country": "USA", "date_of_birth": "1980-05-15", "date_of_death": "2019-12-27", "deleted_at": "2019-12-27T18:11:19.117Z", "email": "john.smith@example.com", "middle_name": "Michael", "notes": "notes", "postal_code": "94102", "state": "CA", "suffix": "Jr." } ] } ], "page_info": { "has_next_page": true, "has_previous_page": false, "end_cursor": "eyJpZCI6ImhvdXNlaG9sZF8wMUFSWjNOREVLVFNWNFJSRkZRNjlHNUZBViJ9", "start_cursor": "eyJpZCI6ImhvdXNlaG9sZF8wMUFSWjNOREVLVFNWNFJSRkZRNjlHNUZBViJ9" }, "total_count": 100 } ``` ## Create a new household `households.create(HouseholdCreateParams**kwargs) -> Household` **post** `/households` Create a new household with the provided data ### Parameters - `primary_relationship_owner_id: str` User ID of the primary relationship owner - `external_id: Optional[str]` Customer-supplied identifier from an external system. Unique within the caller's tenant when set. - `notes: Optional[str]` Optional notes about the household - `primary_individuals: Optional[Iterable[PrimaryIndividual]]` Primary client profiles to create for this household (at most 2) - `first_name: str` First name of the individual - `last_name: str` Last name of the individual - `state: str` State or province code (2 letter code) - `address_line1: Optional[str]` Street address line 1 - `address_line2: Optional[str]` Street address line 2 - `city: Optional[str]` City - `country: Optional[str]` Country - `date_of_birth: Optional[Union[null, null, null]]` Date of birth - `email: Optional[str]` Email address - `is_beneficiary: Optional[bool]` Whether this client profile should be an eligible beneficiary for entities and gifts - `is_deceased: Optional[bool]` Whether the individual is deceased - `is_trustee: Optional[bool]` Whether this client profile should be an eligible trustee for entities - `middle_name: Optional[str]` Middle name of the individual - `notes: Optional[str]` Notes about the client profile - `postal_code: Optional[str]` ZIP or postal code - `suffix: Optional[str]` Name suffix ### Returns - `class Household: …` - `id: str` Unique identifier with household_ prefix - `created_at: datetime` Timestamp when the household was created - `primary_relationship_owner_id: str` User ID of the primary relationship owner - `updated_at: datetime` Timestamp when the household was last updated - `external_id: Optional[str]` Customer-supplied identifier from an external system. Unique within the caller's tenant when set. - `name: Optional[str]` Display name for the household - `notes: Optional[str]` Notes about the household - `primary_individuals: Optional[List[Individual]]` Primary client profiles for this household (at most 2) - `id: str` Unique identifier with client_profile_ prefix - `created_at: datetime` Timestamp when the individual was created - `first_name: str` First name of the individual - `household_id: str` Household ID this individual belongs to - `is_beneficiary: bool` Whether this client profile should be an eligible beneficiary for entities and gifts - `is_deceased: bool` Whether this client profile is deceased - `is_grantor: bool` Whether this client profile should be an eligible grantor/owner/other principal for entities - `is_primary: bool` Whether this is one of the (at most) two primary clients on this household - `is_trustee: bool` Whether this client profile should be an eligible trustee for entities - `last_name: str` Last name of the individual - `updated_at: datetime` Timestamp when the individual was last updated - `address_line1: Optional[str]` Street address line 1 (from address edge) - `address_line2: Optional[str]` Street address line 2 (from address edge) - `city: Optional[str]` City (from address edge) - `country: Optional[str]` Country (from address edge) - `date_of_birth: Optional[date]` Date of birth (encrypted field) - `date_of_death: Optional[date]` Date of death if applicable (encrypted field) - `deleted_at: Optional[datetime]` Timestamp when the individual was soft deleted - `email: Optional[str]` Email address - `middle_name: Optional[str]` Middle name of the individual - `notes: Optional[str]` Notes about the client profile - `postal_code: Optional[str]` ZIP or postal code (from address edge) - `state: Optional[str]` State or province (from address edge) - `suffix: Optional[str]` Name suffix (Jr., Sr., III, etc.) ### Example ```python from withluminary import Luminary client = Luminary() household = client.households.create( primary_relationship_owner_id="user_01ARZ3NDEKTSV4RRFFQ69G5FAV", ) print(household.id) ``` #### Response ```json { "id": "household_01ARZ3NDEKTSV4RRFFQ69G5FAV", "created_at": "2024-01-15T09:30:00Z", "primary_relationship_owner_id": "user_01ARZ3NDEKTSV4RRFFQ69G5FAV", "updated_at": "2024-01-20T14:45:00Z", "external_id": "crm-household-12345", "name": "Smith Family", "notes": "notes", "primary_individuals": [ { "id": "client_profile_01ARZ3NDEKTSV4RRFFQ69G5FAV", "created_at": "2024-01-15T09:30:00Z", "first_name": "John", "household_id": "household_01ARZ3NDEKTSV4RRFFQ69G5FAV", "is_beneficiary": true, "is_deceased": true, "is_grantor": true, "is_primary": true, "is_trustee": true, "last_name": "Smith", "updated_at": "2024-01-20T14:45:00Z", "address_line1": "123 Main St", "address_line2": "Apt 4B", "city": "San Francisco", "country": "USA", "date_of_birth": "1980-05-15", "date_of_death": "2019-12-27", "deleted_at": "2019-12-27T18:11:19.117Z", "email": "john.smith@example.com", "middle_name": "Michael", "notes": "notes", "postal_code": "94102", "state": "CA", "suffix": "Jr." } ] } ``` ## Delete a household `households.delete(strid)` **delete** `/households/{id}` Soft delete a household (marks as deleted but preserves data) ### Parameters - `id: str` ### Example ```python from withluminary import Luminary client = Luminary() client.households.delete( "id", ) ``` ## Get a household by ID `households.retrieve(strid) -> Household` **get** `/households/{id}` Retrieve detailed information about a specific household ### Parameters - `id: str` ### Returns - `class Household: …` - `id: str` Unique identifier with household_ prefix - `created_at: datetime` Timestamp when the household was created - `primary_relationship_owner_id: str` User ID of the primary relationship owner - `updated_at: datetime` Timestamp when the household was last updated - `external_id: Optional[str]` Customer-supplied identifier from an external system. Unique within the caller's tenant when set. - `name: Optional[str]` Display name for the household - `notes: Optional[str]` Notes about the household - `primary_individuals: Optional[List[Individual]]` Primary client profiles for this household (at most 2) - `id: str` Unique identifier with client_profile_ prefix - `created_at: datetime` Timestamp when the individual was created - `first_name: str` First name of the individual - `household_id: str` Household ID this individual belongs to - `is_beneficiary: bool` Whether this client profile should be an eligible beneficiary for entities and gifts - `is_deceased: bool` Whether this client profile is deceased - `is_grantor: bool` Whether this client profile should be an eligible grantor/owner/other principal for entities - `is_primary: bool` Whether this is one of the (at most) two primary clients on this household - `is_trustee: bool` Whether this client profile should be an eligible trustee for entities - `last_name: str` Last name of the individual - `updated_at: datetime` Timestamp when the individual was last updated - `address_line1: Optional[str]` Street address line 1 (from address edge) - `address_line2: Optional[str]` Street address line 2 (from address edge) - `city: Optional[str]` City (from address edge) - `country: Optional[str]` Country (from address edge) - `date_of_birth: Optional[date]` Date of birth (encrypted field) - `date_of_death: Optional[date]` Date of death if applicable (encrypted field) - `deleted_at: Optional[datetime]` Timestamp when the individual was soft deleted - `email: Optional[str]` Email address - `middle_name: Optional[str]` Middle name of the individual - `notes: Optional[str]` Notes about the client profile - `postal_code: Optional[str]` ZIP or postal code (from address edge) - `state: Optional[str]` State or province (from address edge) - `suffix: Optional[str]` Name suffix (Jr., Sr., III, etc.) ### Example ```python from withluminary import Luminary client = Luminary() household = client.households.retrieve( "id", ) print(household.id) ``` #### Response ```json { "id": "household_01ARZ3NDEKTSV4RRFFQ69G5FAV", "created_at": "2024-01-15T09:30:00Z", "primary_relationship_owner_id": "user_01ARZ3NDEKTSV4RRFFQ69G5FAV", "updated_at": "2024-01-20T14:45:00Z", "external_id": "crm-household-12345", "name": "Smith Family", "notes": "notes", "primary_individuals": [ { "id": "client_profile_01ARZ3NDEKTSV4RRFFQ69G5FAV", "created_at": "2024-01-15T09:30:00Z", "first_name": "John", "household_id": "household_01ARZ3NDEKTSV4RRFFQ69G5FAV", "is_beneficiary": true, "is_deceased": true, "is_grantor": true, "is_primary": true, "is_trustee": true, "last_name": "Smith", "updated_at": "2024-01-20T14:45:00Z", "address_line1": "123 Main St", "address_line2": "Apt 4B", "city": "San Francisco", "country": "USA", "date_of_birth": "1980-05-15", "date_of_death": "2019-12-27", "deleted_at": "2019-12-27T18:11:19.117Z", "email": "john.smith@example.com", "middle_name": "Michael", "notes": "notes", "postal_code": "94102", "state": "CA", "suffix": "Jr." } ] } ``` ## Update a household `households.update(strid, HouseholdUpdateParams**kwargs) -> Household` **put** `/households/{id}` Update an existing household with new data ### Parameters - `id: str` - `external_id: Optional[str]` Customer-supplied identifier from an external system. Unique within the caller's tenant when set. Send null to clear. - `notes: Optional[str]` Notes about the household - `primary_relationship_owner_id: Optional[str]` User ID of the primary relationship owner ### Returns - `class Household: …` - `id: str` Unique identifier with household_ prefix - `created_at: datetime` Timestamp when the household was created - `primary_relationship_owner_id: str` User ID of the primary relationship owner - `updated_at: datetime` Timestamp when the household was last updated - `external_id: Optional[str]` Customer-supplied identifier from an external system. Unique within the caller's tenant when set. - `name: Optional[str]` Display name for the household - `notes: Optional[str]` Notes about the household - `primary_individuals: Optional[List[Individual]]` Primary client profiles for this household (at most 2) - `id: str` Unique identifier with client_profile_ prefix - `created_at: datetime` Timestamp when the individual was created - `first_name: str` First name of the individual - `household_id: str` Household ID this individual belongs to - `is_beneficiary: bool` Whether this client profile should be an eligible beneficiary for entities and gifts - `is_deceased: bool` Whether this client profile is deceased - `is_grantor: bool` Whether this client profile should be an eligible grantor/owner/other principal for entities - `is_primary: bool` Whether this is one of the (at most) two primary clients on this household - `is_trustee: bool` Whether this client profile should be an eligible trustee for entities - `last_name: str` Last name of the individual - `updated_at: datetime` Timestamp when the individual was last updated - `address_line1: Optional[str]` Street address line 1 (from address edge) - `address_line2: Optional[str]` Street address line 2 (from address edge) - `city: Optional[str]` City (from address edge) - `country: Optional[str]` Country (from address edge) - `date_of_birth: Optional[date]` Date of birth (encrypted field) - `date_of_death: Optional[date]` Date of death if applicable (encrypted field) - `deleted_at: Optional[datetime]` Timestamp when the individual was soft deleted - `email: Optional[str]` Email address - `middle_name: Optional[str]` Middle name of the individual - `notes: Optional[str]` Notes about the client profile - `postal_code: Optional[str]` ZIP or postal code (from address edge) - `state: Optional[str]` State or province (from address edge) - `suffix: Optional[str]` Name suffix (Jr., Sr., III, etc.) ### Example ```python from withluminary import Luminary client = Luminary() household = client.households.update( id="id", ) print(household.id) ``` #### Response ```json { "id": "household_01ARZ3NDEKTSV4RRFFQ69G5FAV", "created_at": "2024-01-15T09:30:00Z", "primary_relationship_owner_id": "user_01ARZ3NDEKTSV4RRFFQ69G5FAV", "updated_at": "2024-01-20T14:45:00Z", "external_id": "crm-household-12345", "name": "Smith Family", "notes": "notes", "primary_individuals": [ { "id": "client_profile_01ARZ3NDEKTSV4RRFFQ69G5FAV", "created_at": "2024-01-15T09:30:00Z", "first_name": "John", "household_id": "household_01ARZ3NDEKTSV4RRFFQ69G5FAV", "is_beneficiary": true, "is_deceased": true, "is_grantor": true, "is_primary": true, "is_trustee": true, "last_name": "Smith", "updated_at": "2024-01-20T14:45:00Z", "address_line1": "123 Main St", "address_line2": "Apt 4B", "city": "San Francisco", "country": "USA", "date_of_birth": "1980-05-15", "date_of_death": "2019-12-27", "deleted_at": "2019-12-27T18:11:19.117Z", "email": "john.smith@example.com", "middle_name": "Michael", "notes": "notes", "postal_code": "94102", "state": "CA", "suffix": "Jr." } ] } ``` ## List all documents in a household `households.list_documents(strid, HouseholdListDocumentsParams**kwargs) -> SyncCursorPagination[Document]` **get** `/households/{id}/documents` Retrieve a paginated list of documents belonging to a specific household ### Parameters - `id: str` - `after: Optional[str]` Cursor for forward pagination. Returns items after this cursor. - `before: Optional[str]` Cursor for backward pagination. Returns items before this cursor. - `limit: Optional[int]` Maximum number of items to return - `type: Optional[DocumentType]` Filter by document type - `"GRAT_DESIGN_SUMMARY"` - `"GENERATED_PRESENTATION"` - `"ASSET_VALUATION"` - `"SIGNED_TRUST_DOCUMENT"` - `"TRUST_AMENDMENT"` - `"TRANSFER_CONFIRMATION"` - `"EXISTING_REMAINDER_TRUST_DOCUMENT"` - `"BALANCE_SHEET"` - `"WILL"` - `"WILL_CODICIL"` - `"POWER_OF_ATTORNEY"` - `"ASSIGNMENT_OF_INTEREST"` - `"ASSIGNMENT_OF_TANGIBLE_PROPERTY"` - `"LOAN_NOTE_AGREEMENT"` - `"ARTICLES_OF_INCORPORATION"` - `"OPERATING_AGREEMENT"` - `"PARTNERSHIP_AGREEMENT"` - `"ACCOUNT_DOCUMENTATION_STATEMENT"` - `"TAX_ID_CONFIRMATION"` - `"GIFT_TAX_RETURN"` - `"INCOME_TAX_RETURN"` - `"TAX_RECEIPT"` - `"TAX_FILING"` - `"CORPORATE_BYLAWS"` - `"LLC_AGREEMENT"` - `"LLC_AGREEMENT_AMENDMENT"` - `"OPERATING_AGREEMENT_AMENDMENT"` - `"PARTNERSHIP_AGREEMENT_AMENDMENT"` - `"SHAREHOLDERS_AGREEMENT"` - `"STATE_BUSINESS_FILING"` - `"LOGGED_CONTRIBUTION"` - `"LOGGED_DISTRIBUTION"` - `"INSURANCE_POLICY"` - `"CRUMMEY_LETTER"` - `"INSURANCE_PREMIUM_PAYMENT"` - `"BENEFICIAL_OWNERSHIP_INFORMATION_REPORT"` - `"FINCEN_FILING"` - `"HEALTHCARE_PROXY"` - `"LIVING_WILL"` - `"DRIVERS_LICENSE"` - `"PASSPORT"` - `"DEED"` - `"OTHER"` ### Returns - `class Document: …` - `id: str` Unique identifier with document_ prefix - `created_at: datetime` Timestamp when the document was created - `household_id: str` Household ID this document belongs to - `name: str` Display name of the document - `type: DocumentType` Type of document - `"GRAT_DESIGN_SUMMARY"` - `"GENERATED_PRESENTATION"` - `"ASSET_VALUATION"` - `"SIGNED_TRUST_DOCUMENT"` - `"TRUST_AMENDMENT"` - `"TRANSFER_CONFIRMATION"` - `"EXISTING_REMAINDER_TRUST_DOCUMENT"` - `"BALANCE_SHEET"` - `"WILL"` - `"WILL_CODICIL"` - `"POWER_OF_ATTORNEY"` - `"ASSIGNMENT_OF_INTEREST"` - `"ASSIGNMENT_OF_TANGIBLE_PROPERTY"` - `"LOAN_NOTE_AGREEMENT"` - `"ARTICLES_OF_INCORPORATION"` - `"OPERATING_AGREEMENT"` - `"PARTNERSHIP_AGREEMENT"` - `"ACCOUNT_DOCUMENTATION_STATEMENT"` - `"TAX_ID_CONFIRMATION"` - `"GIFT_TAX_RETURN"` - `"INCOME_TAX_RETURN"` - `"TAX_RECEIPT"` - `"TAX_FILING"` - `"CORPORATE_BYLAWS"` - `"LLC_AGREEMENT"` - `"LLC_AGREEMENT_AMENDMENT"` - `"OPERATING_AGREEMENT_AMENDMENT"` - `"PARTNERSHIP_AGREEMENT_AMENDMENT"` - `"SHAREHOLDERS_AGREEMENT"` - `"STATE_BUSINESS_FILING"` - `"LOGGED_CONTRIBUTION"` - `"LOGGED_DISTRIBUTION"` - `"INSURANCE_POLICY"` - `"CRUMMEY_LETTER"` - `"INSURANCE_PREMIUM_PAYMENT"` - `"BENEFICIAL_OWNERSHIP_INFORMATION_REPORT"` - `"FINCEN_FILING"` - `"HEALTHCARE_PROXY"` - `"LIVING_WILL"` - `"DRIVERS_LICENSE"` - `"PASSPORT"` - `"DEED"` - `"OTHER"` - `updated_at: datetime` Timestamp when the document was last updated - `enable_ai_suggestions: Optional[bool]` Whether this document should be used for AI suggestions - `entity_id: Optional[str]` Entity ID if this document is owned by an entity - `individual_id: Optional[str]` Individual ID if this document is associated with an individual ### Example ```python from withluminary import Luminary client = Luminary() page = client.households.list_documents( id="id", ) page = page.data[0] print(page.id) ``` #### Response ```json { "data": [ { "id": "document_01ARZ3NDEKTSV4RRFFQ69G5FAV", "created_at": "2024-01-15T09:30:00Z", "household_id": "household_01ARZ3NDEKTSV4RRFFQ69G5FAV", "name": "Trust Agreement.pdf", "type": "GRAT_DESIGN_SUMMARY", "updated_at": "2024-01-20T14:45:00Z", "enable_ai_suggestions": true, "entity_id": "entity_01ARZ3NDEKTSV4RRFFQ69G5FAV", "individual_id": "client_profile_01ARZ3NDEKTSV4RRFFQ69G5FAV" } ], "page_info": { "has_next_page": true, "has_previous_page": false, "end_cursor": "eyJpZCI6ImhvdXNlaG9sZF8wMUFSWjNOREVLVFNWNFJSRkZRNjlHNUZBViJ9", "start_cursor": "eyJpZCI6ImhvdXNlaG9sZF8wMUFSWjNOREVLVFNWNFJSRkZRNjlHNUZBViJ9" }, "total_count": 100 } ``` ## List all entities in a household `households.list_entities(strid, HouseholdListEntitiesParams**kwargs) -> SyncCursorPagination[Entity]` **get** `/households/{id}/entities` Retrieve a paginated list of entities belonging to a specific household ### Parameters - `id: str` - `after: Optional[str]` Cursor for forward pagination. Returns items after this cursor. - `before: Optional[str]` Cursor for backward pagination. Returns items before this cursor. - `kind: Optional[EntityKind]` Filter by entity kind/type - `"REVOCABLE_TRUST"` - `"IRREVOCABLE_TRUST"` - `"SLAT_TRUST"` - `"ILIT_TRUST"` - `"QPRT_TRUST"` - `"GRAT_TRUST"` - `"CRT_TRUST"` - `"CLT_TRUST"` - `"INDIVIDUAL_PERSONAL_ACCOUNT"` - `"JOINT_PERSONAL_ACCOUNT"` - `"CUSTODIAL_PERSONAL_ACCOUNT"` - `"INSURANCE_PERSONAL_ACCOUNT"` - `"QUALIFIED_TUITION_PERSONAL_ACCOUNT"` - `"RETIREMENT_PERSONAL_ACCOUNT"` - `"DONOR_ADVISED_FUND"` - `"PRIVATE_FOUNDATION"` - `"LLC_BUSINESS_ENTITY"` - `"LP_BUSINESS_ENTITY"` - `"GP_BUSINESS_ENTITY"` - `"SOLE_PROPRIETORSHIP_BUSINESS_ENTITY"` - `"SCORP_BUSINESS_ENTITY"` - `"CCORP_BUSINESS_ENTITY"` - `limit: Optional[int]` Maximum number of items to return ### Returns - `class Entity: …` - `id: str` Unique identifier with entity_ prefix - `created_at: datetime` Timestamp when the entity was created - `display_name: str` Display name of the entity - `household_id: str` Household ID this entity belongs to - `in_estate_status: Literal["in_estate", "out_of_estate", "none"]` Whether the entity is in or out of the estate - `"in_estate"` - `"out_of_estate"` - `"none"` - `kind: EntityKind` Type of entity - determines the specific subtype and applicable fields - `"REVOCABLE_TRUST"` - `"IRREVOCABLE_TRUST"` - `"SLAT_TRUST"` - `"ILIT_TRUST"` - `"QPRT_TRUST"` - `"GRAT_TRUST"` - `"CRT_TRUST"` - `"CLT_TRUST"` - `"INDIVIDUAL_PERSONAL_ACCOUNT"` - `"JOINT_PERSONAL_ACCOUNT"` - `"CUSTODIAL_PERSONAL_ACCOUNT"` - `"INSURANCE_PERSONAL_ACCOUNT"` - `"QUALIFIED_TUITION_PERSONAL_ACCOUNT"` - `"RETIREMENT_PERSONAL_ACCOUNT"` - `"DONOR_ADVISED_FUND"` - `"PRIVATE_FOUNDATION"` - `"LLC_BUSINESS_ENTITY"` - `"LP_BUSINESS_ENTITY"` - `"GP_BUSINESS_ENTITY"` - `"SOLE_PROPRIETORSHIP_BUSINESS_ENTITY"` - `"SCORP_BUSINESS_ENTITY"` - `"CCORP_BUSINESS_ENTITY"` - `stage: Literal["PRE_CREATED", "AI_CREATING", "AI_CREATION_FAILED", 7 more]` Lifecycle stage of the entity - `"PRE_CREATED"` - `"AI_CREATING"` - `"AI_CREATION_FAILED"` - `"AI_NEEDS_REVIEW"` - `"DRAFT"` - `"READY_FOR_PROPOSAL"` - `"IMPLEMENTATION"` - `"ACTIVE"` - `"COMPLETED"` - `"ARCHIVED"` - `updated_at: datetime` Timestamp when the entity was last updated - `external_id: Optional[str]` Customer-supplied identifier from an external system. Unique within the caller's tenant when set. ### Example ```python from withluminary import Luminary client = Luminary() page = client.households.list_entities( id="id", ) page = page.data[0] print(page.id) ``` #### Response ```json { "data": [ { "id": "entity_01ARZ3NDEKTSV4RRFFQ69G5FAV", "created_at": "2024-01-15T09:30:00Z", "display_name": "My Revocable Trust", "household_id": "household_01ARZ3NDEKTSV4RRFFQ69G5FAV", "in_estate_status": "in_estate", "kind": "REVOCABLE_TRUST", "stage": "PRE_CREATED", "updated_at": "2024-01-20T14:45:00Z", "external_id": "crm-entity-12345" } ], "page_info": { "has_next_page": true, "has_previous_page": false, "end_cursor": "eyJpZCI6ImhvdXNlaG9sZF8wMUFSWjNOREVLVFNWNFJSRkZRNjlHNUZBViJ9", "start_cursor": "eyJpZCI6ImhvdXNlaG9sZF8wMUFSWjNOREVLVFNWNFJSRkZRNjlHNUZBViJ9" }, "total_count": 100 } ``` ## List all individuals in a household `households.list_individuals(strid, HouseholdListIndividualsParams**kwargs) -> SyncCursorPagination[Individual]` **get** `/households/{id}/individuals` Retrieve a paginated list of client profiles/individuals belonging to a specific household ### Parameters - `id: str` - `after: Optional[str]` Cursor for forward pagination. Returns items after this cursor. - `before: Optional[str]` Cursor for backward pagination. Returns items before this cursor. - `is_primary: Optional[bool]` Filter by primary client status - `limit: Optional[int]` Maximum number of items to return ### Returns - `class Individual: …` - `id: str` Unique identifier with client_profile_ prefix - `created_at: datetime` Timestamp when the individual was created - `first_name: str` First name of the individual - `household_id: str` Household ID this individual belongs to - `is_beneficiary: bool` Whether this client profile should be an eligible beneficiary for entities and gifts - `is_deceased: bool` Whether this client profile is deceased - `is_grantor: bool` Whether this client profile should be an eligible grantor/owner/other principal for entities - `is_primary: bool` Whether this is one of the (at most) two primary clients on this household - `is_trustee: bool` Whether this client profile should be an eligible trustee for entities - `last_name: str` Last name of the individual - `updated_at: datetime` Timestamp when the individual was last updated - `address_line1: Optional[str]` Street address line 1 (from address edge) - `address_line2: Optional[str]` Street address line 2 (from address edge) - `city: Optional[str]` City (from address edge) - `country: Optional[str]` Country (from address edge) - `date_of_birth: Optional[date]` Date of birth (encrypted field) - `date_of_death: Optional[date]` Date of death if applicable (encrypted field) - `deleted_at: Optional[datetime]` Timestamp when the individual was soft deleted - `email: Optional[str]` Email address - `middle_name: Optional[str]` Middle name of the individual - `notes: Optional[str]` Notes about the client profile - `postal_code: Optional[str]` ZIP or postal code (from address edge) - `state: Optional[str]` State or province (from address edge) - `suffix: Optional[str]` Name suffix (Jr., Sr., III, etc.) ### Example ```python from withluminary import Luminary client = Luminary() page = client.households.list_individuals( id="id", ) page = page.data[0] print(page.id) ``` #### Response ```json { "data": [ { "id": "client_profile_01ARZ3NDEKTSV4RRFFQ69G5FAV", "created_at": "2024-01-15T09:30:00Z", "first_name": "John", "household_id": "household_01ARZ3NDEKTSV4RRFFQ69G5FAV", "is_beneficiary": true, "is_deceased": true, "is_grantor": true, "is_primary": true, "is_trustee": true, "last_name": "Smith", "updated_at": "2024-01-20T14:45:00Z", "address_line1": "123 Main St", "address_line2": "Apt 4B", "city": "San Francisco", "country": "USA", "date_of_birth": "1980-05-15", "date_of_death": "2019-12-27", "deleted_at": "2019-12-27T18:11:19.117Z", "email": "john.smith@example.com", "middle_name": "Michael", "notes": "notes", "postal_code": "94102", "state": "CA", "suffix": "Jr." } ], "page_info": { "has_next_page": true, "has_previous_page": false, "end_cursor": "eyJpZCI6ImhvdXNlaG9sZF8wMUFSWjNOREVLVFNWNFJSRkZRNjlHNUZBViJ9", "start_cursor": "eyJpZCI6ImhvdXNlaG9sZF8wMUFSWjNOREVLVFNWNFJSRkZRNjlHNUZBViJ9" }, "total_count": 100 } ``` ## Domain Types ### Household - `class Household: …` - `id: str` Unique identifier with household_ prefix - `created_at: datetime` Timestamp when the household was created - `primary_relationship_owner_id: str` User ID of the primary relationship owner - `updated_at: datetime` Timestamp when the household was last updated - `external_id: Optional[str]` Customer-supplied identifier from an external system. Unique within the caller's tenant when set. - `name: Optional[str]` Display name for the household - `notes: Optional[str]` Notes about the household - `primary_individuals: Optional[List[Individual]]` Primary client profiles for this household (at most 2) - `id: str` Unique identifier with client_profile_ prefix - `created_at: datetime` Timestamp when the individual was created - `first_name: str` First name of the individual - `household_id: str` Household ID this individual belongs to - `is_beneficiary: bool` Whether this client profile should be an eligible beneficiary for entities and gifts - `is_deceased: bool` Whether this client profile is deceased - `is_grantor: bool` Whether this client profile should be an eligible grantor/owner/other principal for entities - `is_primary: bool` Whether this is one of the (at most) two primary clients on this household - `is_trustee: bool` Whether this client profile should be an eligible trustee for entities - `last_name: str` Last name of the individual - `updated_at: datetime` Timestamp when the individual was last updated - `address_line1: Optional[str]` Street address line 1 (from address edge) - `address_line2: Optional[str]` Street address line 2 (from address edge) - `city: Optional[str]` City (from address edge) - `country: Optional[str]` Country (from address edge) - `date_of_birth: Optional[date]` Date of birth (encrypted field) - `date_of_death: Optional[date]` Date of death if applicable (encrypted field) - `deleted_at: Optional[datetime]` Timestamp when the individual was soft deleted - `email: Optional[str]` Email address - `middle_name: Optional[str]` Middle name of the individual - `notes: Optional[str]` Notes about the client profile - `postal_code: Optional[str]` ZIP or postal code (from address edge) - `state: Optional[str]` State or province (from address edge) - `suffix: Optional[str]` Name suffix (Jr., Sr., III, etc.) ### Individual List - `class IndividualList: …` - `data: List[Individual]` - `id: str` Unique identifier with client_profile_ prefix - `created_at: datetime` Timestamp when the individual was created - `first_name: str` First name of the individual - `household_id: str` Household ID this individual belongs to - `is_beneficiary: bool` Whether this client profile should be an eligible beneficiary for entities and gifts - `is_deceased: bool` Whether this client profile is deceased - `is_grantor: bool` Whether this client profile should be an eligible grantor/owner/other principal for entities - `is_primary: bool` Whether this is one of the (at most) two primary clients on this household - `is_trustee: bool` Whether this client profile should be an eligible trustee for entities - `last_name: str` Last name of the individual - `updated_at: datetime` Timestamp when the individual was last updated - `address_line1: Optional[str]` Street address line 1 (from address edge) - `address_line2: Optional[str]` Street address line 2 (from address edge) - `city: Optional[str]` City (from address edge) - `country: Optional[str]` Country (from address edge) - `date_of_birth: Optional[date]` Date of birth (encrypted field) - `date_of_death: Optional[date]` Date of death if applicable (encrypted field) - `deleted_at: Optional[datetime]` Timestamp when the individual was soft deleted - `email: Optional[str]` Email address - `middle_name: Optional[str]` Middle name of the individual - `notes: Optional[str]` Notes about the client profile - `postal_code: Optional[str]` ZIP or postal code (from address edge) - `state: Optional[str]` State or province (from address edge) - `suffix: Optional[str]` Name suffix (Jr., Sr., III, etc.) - `page_info: PageInfo` - `has_next_page: bool` When paginating forwards, are there more items? - `has_previous_page: bool` When paginating backwards, are there more items? - `end_cursor: Optional[str]` Cursor pointing to the last item in the current page - `start_cursor: Optional[str]` Cursor pointing to the first item in the current page - `total_count: int` Total number of items matching the query (across all pages)