🏠 Address Resource Advanced

Direct address management for specialized scenarios

Address records store physical location data for BizEntities, Persons, and Organisations. Most address management occurs through BizEntity operations. Direct Address endpoints support bulk imports, cross-entity updates, and postal validation scenarios.

4
Endpoints
1
Core DTO
3
Entity Types
AU+INT
Address Formats

Usage Notes

When

  • Manage addresses independently of BizEntity for bulk imports or data migration
  • Query address records for cross-entity validation
  • Update addresses across multiple entity associations

Requirements

  • Valid Bearer token with address permissions

Notes

  • Addresses typically created via BizEntity operations; use direct endpoints for specialized scenarios
  • Each address belongs to exactly ONE entity (BizEntity, Person, or Organisation - mutually exclusive)
  • Storage supports Australian and international formats; the API does not enforce state/postcode/country-code format validation at the validator layer — supply correct values per your downstream reporting requirements
  • Cannot delete addresses referenced by active entity relationships

Available Endpoints

Core Operations

GET Get Addresses Query by ID, external ID, or owning entity
POST Create Address Create with Australian and international formats
PUT Update Address Update maintaining entity ownership
DELETE Delete Address Remove with entity validation

Core Data Transfer Objects

AddressDTO All Address endpoints Address structure (15 properties) supporting Australian and international formats, entity ownership (BizEntity, Person, Organisation via dual IDs), and address type classification (Physical=6, Postal=8, Other=3)
public class AddressDTO
{
    public int? AddressID { get; set; }
    public int AddressTypeID { get; set; }
    public string? AboveAddressLine { get; set; }
    public string? AddressLine { get; set; }
    public string? Suburb { get; set; }
    public string? Postcode { get; set; }
    public string? StateCode { get; set; }
    public string? CountryCode { get; set; }
    public string? ExternalAddressId { get; set; }
    public string? ExternalBizEntityId { get; set; }
    public string? ExternalPersonId { get; set; }
    public string? ExternalOrganisationId { get; set; }
    public int? PersonID { get; set; }
    public int? BizEntityID { get; set; }
    public int? OrganisationID { get; set; }
}

Use Cases & Scenarios

Most address management occurs through BizEntity operations. Use direct Address endpoints for bulk address imports, cross-entity updates, postal validation services, or data migration scenarios.

→ See BizEntity Overview for standard entity operations

Business Rules & Constraints

BizEntity Integration & Data Integrity

  • Exclusive ownership: One Address record belongs to ONE entity (BizEntity, Person, OR Organisation)
  • One-to-many support: Entities can have multiple addresses for different purposes (home, work, postal, registered)
  • Referential integrity: Cannot delete address if referenced by active entity relationships
  • BizEntity context: Address creation and management primarily occur through BizEntity operations for relationship integrity

What the API Validator Enforces

  • PersonID, BizEntityID, and OrganisationID must be greater than 0 when supplied (nulls accepted).
  • When identifying an existing record (PUT / DELETE), at least one of AddressID or ExternalAddressId must be present.
  • Not enforced by the validator (at time of writing): AddressTypeID, CountryCode, Suburb, Postcode, StateCode. The DTO accepts these as plain strings — supply correct values per your downstream reporting needs.
  • External integration: ExternalAddressId supports third-party system integration and idempotency keys.

Referential Integrity & Management

  • Dual ID system: Native IDs for performance, External IDs for third-party system integration
  • Audit trail: All address changes tracked for compliance and regulatory requirements
  • External integration: ExternalAddressId supports third-party system integration and idempotency