VaultRE Residential Properties API

Operations related to residential properties

Operations 13

GET /properties/residential/sale Retrieve a list of residential sale properties #
POST /properties/residential/sale Add a residential sale property #
GET /properties/residential/sale/{id} Retrieve a single residential sale property #
PUT /properties/residential/sale/{id} Update a residential sale property #
GET /properties/residential/lease Retrieve a list of residential lease properties #
POST /properties/residential/lease Add a residential lease property #
GET /properties/residential/lease/{id} Retrieve a single residential lease property #
PUT /properties/residential/lease/{id} Update a residential lease property #
GET /properties/residential/sale/available Retrieve a list of available residential sale properties #
GET /properties/residential/sale/sold Retrieve a list of sold residential sale properties #
GET /properties/residential/lease/available Retrieve a list of available residential lease properties #
GET /properties/residential/sale/{id}/{lifeid} Retrieve a single residential sale property #
GET /properties/residential/lease/{id}/{lifeid} Retrieve a single residential lease property #

Documentation

Specifications

Code Examples

Other Resources

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/vaultre-residentialproperties-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

vaultre-residentialproperties-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Vaultre Residential Properties API
  contact:
    name: VaultRE
    url: https://www.vaultre.com.au
    email: api@vaultre.com.au
  version: '1.0'
  description: 'Operations tagged residentialProperties across 3 of this provider''s published API definitions: vaultre-api-v1-1-openapi.yml, vaultre-api-v1-2-openapi.yml, vaultre-api-v1-3-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://ap-southeast-2.api.vaultre.com.au/api/v1.1
- url: https://ap-southeast-2.api.vaultre.com.au/api/v1.2
- url: https://ap-southeast-2.api.vaultre.com.au/api/v1.3
tags:
- name: residentialProperties
  description: Operations related to residential properties
paths:
  /properties/residential/sale:
    get:
      tags:
      - residentialProperties
      summary: Retrieve a list of residential sale properties
      description: Retrieve a list of residential sale properties
      operationId: getResidentialSaleProperties
      parameters:
      - $ref: '#/components/parameters/modifiedSince'
      - $ref: '#/components/parameters/modifiedBefore'
      - $ref: '#/components/parameters/page'
      - $ref: '#/components/parameters/pagesize'
      - $ref: '#/components/parameters/published'
      - name: status
        in: query
        description: Property status to filter by
        schema:
          type: string
          default: '50'
          enum:
          - prospect
          - appraisal
          - listing
          - conditional
          - listingOrConditional
          - unconditional
          - settled
          - withdrawn
      - name: contactStaff
        in: query
        description: Filter properties with contactStaff containing this user ID
        schema:
          type: integer
          format: int64
      - name: sort
        in: query
        description: Field by which to sort the results.
        schema:
          type: string
          enum:
          - inserted
          - modified
      - $ref: '#/components/parameters/sortOrder'
      responses:
        200:
          description: Properties retrieved
          content: {}
      security:
      - Api-Key: []
        Bearer: []
    post:
      tags:
      - residentialProperties
      summary: Add a residential sale property
      description: Add a residential sale property
      operationId: addResidentialSaleProperty
      requestBody:
        description: Residential sale property object
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AddUpdateResidentialSaleProperty'
        required: true
      responses:
        201:
          description: Property created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResidentialSalePropertyExtended'
        400:
          description: Invalid data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessOrError'
      security:
      - Api-Key: []
        Bearer: []
      x-codegen-request-body-name: body
    servers:
    - url: https://ap-southeast-2.api.vaultre.com.au/api/v1.1
  /properties/residential/sale/{id}:
    get:
      tags:
      - residentialProperties
      summary: Retrieve a single residential sale property
      description: Retrieve a single residential sale property
      operationId: getResidentialSaleProperty
      parameters:
      - name: id
        in: path
        description: ID of the property
        required: true
        schema:
          type: integer
          format: int64
      responses:
        200:
          description: Property retrieved
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResidentialSalePropertyExtended'
      security:
      - Api-Key: []
        Bearer: []
    put:
      tags:
      - residentialProperties
      summary: Update a residential sale property
      description: Update a residential sale property
      operationId: updateResidentialSaleProperty
      parameters:
      - name: id
        in: path
        description: ID of the property
        required: true
        schema:
          type: integer
          format: int64
      requestBody:
        description: Residential sale property object
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AddUpdateResidentialSaleProperty'
        required: true
      responses:
        200:
          description: Property updated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResidentialSalePropertyExtended'
        400:
          description: Invalid data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessOrError'
      security:
      - Api-Key: []
        Bearer: []
      x-codegen-request-body-name: body
    servers:
    - url: https://ap-southeast-2.api.vaultre.com.au/api/v1.1
  /properties/residential/lease:
    get:
      tags:
      - residentialProperties
      summary: Retrieve a list of residential lease properties
      description: Retrieve a list of residential lease properties
      operationId: getResidentialLeaseProperties
      parameters:
      - $ref: '#/components/parameters/modifiedSince'
      - $ref: '#/components/parameters/modifiedBefore'
      - $ref: '#/components/parameters/page'
      - $ref: '#/components/parameters/pagesize'
      - $ref: '#/components/parameters/published'
      - name: status
        in: query
        description: Property status to filter by
        schema:
          type: string
          default: '50'
          enum:
          - prospect
          - appraisal
          - management
      - name: availableOnly
        in: query
        description: Filter available lease properties only
        schema:
          type: boolean
      - name: contactStaff
        in: query
        description: Filter properties with contactStaff containing this user ID
        schema:
          type: integer
          format: int64
      - name: sort
        in: query
        description: Field by which to sort the results.
        schema:
          type: string
          enum:
          - inserted
          - modified
      - $ref: '#/components/parameters/sortOrder'
      responses:
        200:
          description: Properties retrieved
          content: {}
      security:
      - Api-Key: []
        Bearer: []
    post:
      tags:
      - residentialProperties
      summary: Add a residential lease property
      description: Add a residential lease property
      operationId: addResidentialLeaseProperty
      requestBody:
        description: Residential lease property object
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AddUpdateResidentialLeaseProperty'
        required: true
      responses:
        201:
          description: Property created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResidentialLeasePropertyExtended'
        400:
          description: Invalid data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessOrError'
      security:
      - Api-Key: []
        Bearer: []
      x-codegen-request-body-name: body
    servers:
    - url: https://ap-southeast-2.api.vaultre.com.au/api/v1.1
  /properties/residential/lease/{id}:
    get:
      tags:
      - residentialProperties
      summary: Retrieve a single residential lease property
      description: Retrieve a single residential lease property
      operationId: getResidentialLeaseProperty
      parameters:
      - name: id
        in: path
        description: ID of the property
        required: true
        schema:
          type: integer
          format: int64
      responses:
        200:
          description: Property retrieved
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResidentialLeasePropertyExtended'
      security:
      - Api-Key: []
        Bearer: []
    put:
      tags:
      - residentialProperties
      summary: Update a residential lease property
      description: Update a residential lease property
      operationId: updateResidentialLeaseProperty
      parameters:
      - name: id
        in: path
        description: ID of the property
        required: true
        schema:
          type: integer
          format: int64
      requestBody:
        description: Residential lease property object
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AddUpdateResidentialLeaseProperty'
        required: true
      responses:
        200:
          description: Property updated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResidentialLeasePropertyExtended'
        400:
          description: Invalid data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessOrError'
      security:
      - Api-Key: []
        Bearer: []
      x-codegen-request-body-name: body
    servers:
    - url: https://ap-southeast-2.api.vaultre.com.au/api/v1.1
  /properties/residential/sale/available:
    get:
      tags:
      - residentialProperties
      summary: Retrieve a list of available residential sale properties
      description: Retrieve a list of available residential sale properties. This is the same as the /properties/residential/sale endpoint, with certain filters pre-applied.
      operationId: getAvailableResidentialSaleProperties
      parameters:
      - $ref: '#/components/parameters/modifiedSince'
      - $ref: '#/components/parameters/modifiedBefore'
      - $ref: '#/components/parameters/page'
      - $ref: '#/components/parameters/pagesize'
      - name: contactStaff
        in: query
        description: Filter properties with contactStaff containing this user ID
        schema:
          type: integer
          format: int64
      - $ref: '#/components/parameters/suburbs'
      - $ref: '#/components/parameters/branches'
      - name: sort
        in: query
        description: Field by which to sort the results.
        schema:
          type: string
          enum:
          - inserted
          - modified
          - suburb
          - searchPrice
      - $ref: '#/components/parameters/sortOrder'
      responses:
        200:
          description: Properties retrieved
          content: {}
      security:
      - Api-Key: []
        Bearer: []
    servers:
    - url: https://ap-southeast-2.api.vaultre.com.au/api/v1.2
  /properties/residential/sale/sold:
    get:
      tags:
      - residentialProperties
      summary: Retrieve a list of sold residential sale properties
      description: Retrieve a list of sold residential sale properties
      operationId: getResidentialSoldProperties
      parameters:
      - $ref: '#/components/parameters/modifiedSince'
      - $ref: '#/components/parameters/modifiedBefore'
      - $ref: '#/components/parameters/unconditionalSince'
      - $ref: '#/components/parameters/unconditionalBefore'
      - $ref: '#/components/parameters/settlementSince'
      - $ref: '#/components/parameters/settlementBefore'
      - $ref: '#/components/parameters/page'
      - $ref: '#/components/parameters/pagesize'
      - $ref: '#/components/parameters/published'
      - $ref: '#/components/parameters/publishedOnPortals'
      - name: status
        in: query
        description: Filter by a list of statuses
        style: form
        explode: false
        schema:
          type: array
          items:
            type: string
            enum:
            - unconditional
            - settled
      - name: contactStaff
        in: query
        description: Filter properties with contactStaff containing this user ID
        schema:
          type: integer
          format: int64
      - $ref: '#/components/parameters/suburbs'
      - $ref: '#/components/parameters/branches'
      - name: sort
        in: query
        description: Field by which to sort the results.
        schema:
          type: string
          enum:
          - inserted
          - modified
          - unconditional
          - settlement
          - suburb
      - $ref: '#/components/parameters/sortOrder'
      responses:
        200:
          description: Properties retrieved
          content: {}
      security:
      - Api-Key: []
        Bearer: []
    servers:
    - url: https://ap-southeast-2.api.vaultre.com.au/api/v1.2
  /properties/residential/lease/available:
    get:
      tags:
      - residentialProperties
      summary: Retrieve a list of available residential lease properties
      description: Retrieve a list of available residential lease properties. This is the same as the /properties/residential/lease endpoint, with certain filters pre-applied.
      operationId: getAvailableResidentialLeaseProperties
      parameters:
      - $ref: '#/components/parameters/modifiedSince'
      - $ref: '#/components/parameters/modifiedBefore'
      - $ref: '#/components/parameters/page'
      - $ref: '#/components/parameters/pagesize'
      - name: contactStaff
        in: query
        description: Filter properties with contactStaff containing this user ID
        schema:
          type: integer
          format: int64
      - $ref: '#/components/parameters/suburbs'
      - $ref: '#/components/parameters/branches'
      - name: sort
        in: query
        description: Field by which to sort the results.
        schema:
          type: string
          enum:
          - inserted
          - modified
          - suburb
          - searchPrice
      - $ref: '#/components/parameters/sortOrder'
      responses:
        200:
          description: Properties retrieved
          content: {}
      security:
      - Api-Key: []
        Bearer: []
    servers:
    - url: https://ap-southeast-2.api.vaultre.com.au/api/v1.2
  /properties/residential/sale/{id}/{lifeid}:
    get:
      tags:
      - residentialProperties
      summary: Retrieve a single residential sale property
      description: Retrieve a single residential sale property
      operationId: getResidentialSalePropertyAndLife
      parameters:
      - name: id
        in: path
        description: ID of the property
        required: true
        schema:
          type: integer
          format: int64
      - name: lifeid
        in: path
        description: The ID of the life to join with this property.
        required: true
        schema:
          type: integer
          format: int64
      responses:
        200:
          description: Property retrieved
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResidentialSalePropertyExtended_3'
      security:
      - Api-Key: []
        Bearer: []
    servers:
    - url: https://ap-southeast-2.api.vaultre.com.au/api/v1.3
  /properties/residential/lease/{id}/{lifeid}:
    get:
      tags:
      - residentialProperties
      summary: Retrieve a single residential lease property
      description: Retrieve a single residential lease property
      operationId: getResidentialLeasePropertyAndLife
      parameters:
      - name: id
        in: path
        description: ID of the property
        required: true
        schema:
          type: integer
          format: int64
      - name: lifeid
        in: path
        description: The ID of the life to join with this property.
        required: true
        schema:
          type: integer
          format: int64
      responses:
        200:
          description: Property retrieved
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResidentialLeasePropertyExtended_3'
      security:
      - Api-Key: []
        Bearer: []
    servers:
    - url: https://ap-southeast-2.api.vaultre.com.au/api/v1.3
components:
  schemas:
    ResidentialLeasePropertyExtended:
      allOf:
      - $ref: '#/components/schemas/ResidentialLeaseProperty'
      - type: object
        properties:
          accessBy:
            type: array
            items:
              $ref: '#/components/schemas/Access'
          externalLinks:
            type: array
            items:
              $ref: '#/components/schemas/ExternalLink'
    ID:
      type: object
      properties:
        id:
          type: integer
          format: int64
    State:
      type: object
      properties:
        id:
          type: integer
          format: int64
        name:
          type: string
        abbreviation:
          type: string
    Country:
      type: object
      properties:
        id:
          type: integer
          format: int64
        name:
          type: string
        isocode:
          type: string
        gstRate:
          type: number
          format: float
    Area:
      type: object
      properties:
        value:
          type: integer
          format: int64
        units:
          type: string
          enum:
          - sqm
          - acre
          - hectare
    Geolocation:
      type: object
      properties:
        latitude:
          type: number
          format: float
        longitude:
          type: number
          format: float
        accuracy:
          type: string
          enum:
          - USERDEFINED
          - ROOFTOP
          - RANGE_INTERPOLATED
          - GEOMETRIC_CENTER
          - APPROXIMATE
    Property:
      type: object
      properties:
        id:
          type: integer
          format: int64
        building:
          $ref: '#/components/schemas/Building'
        class:
          $ref: '#/components/schemas/PropertyClass'
        type:
          $ref: '#/components/schemas/PropertyType'
        address:
          $ref: '#/components/schemas/Address'
        displayAddress:
          type: string
        referenceID:
          type: string
        keyID:
          type: string
        photos:
          type: array
          items:
            $ref: '#/components/schemas/PropertyPhoto'
        searchPrice:
          type: number
          format: float
        displayPrice:
          type: string
        heading:
          type: string
        description:
          type: string
        brochureDescription:
          type: string
        landArea:
          $ref: '#/components/schemas/Area'
        volumeNumber:
          type: string
        folioNumber:
          type: string
        corelogicId:
          type: integer
          format: int64
        yearBuilt:
          type: integer
          format: int64
        inserted:
          type: string
          format: date-time
        modified:
          type: string
          format: date-time
        saleLifeId:
          type: integer
          format: int64
        leaseLifeId:
          type: integer
          format: int64
        geolocation:
          $ref: '#/components/schemas/Geolocation'
        contactStaff:
          type: array
          items:
            $ref: '#/components/schemas/User'
      discriminator:
        propertyName: class
    ResidentialSaleProperty:
      allOf:
      - $ref: '#/components/schemas/ResidentialProperty'
      - type: object
        properties:
          auctionDetails:
            $ref: '#/components/schemas/AuctionDetails'
    AddUpdateProperty:
      type: object
      properties:
        building:
          $ref: '#/components/schemas/ID'
        type:
          $ref: '#/components/schemas/ID'
        address:
          $ref: '#/components/schemas/UpdateAddress'
        referenceID:
          type: string
        keyID:
          type: string
        searchPrice:
          type: number
          format: float
        displayPrice:
          type: string
        heading:
          type: string
        description:
          type: string
        brochureDescription:
          type: string
        landArea:
          $ref: '#/components/schemas/Area'
        volumeNumber:
          type: string
        folioNumber:
          type: string
        corelogicId:
          type: integer
          format: int64
        yearBuilt:
          type: integer
          format: int64
        accessBy:
          type: array
          items:
            $ref: '#/components/schemas/ID'
        contactStaff:
          type: array
          items:
            $ref: '#/components/schemas/ID'
      discriminator:
        propertyName: class
    ResidentialSalePropertyExtended:
      allOf:
      - $ref: '#/components/schemas/ResidentialSaleProperty'
      - type: object
        properties:
          accessBy:
            type: array
            items:
              $ref: '#/components/schemas/Access'
          externalLinks:
            type: array
            items:
              $ref: '#/components/schemas/ExternalLink'
    AuctionDetails:
      type: object
      properties:
        dateTime:
          type: string
          format: date-time
        venue:
          type: string
        auctioneer:
          type: string
    User:
      type: object
      properties:
        id:
          type: integer
          format: int64
        firstName:
          type: string
        lastName:
          type: string
        username:
          type: string
        email:
          type: string
          format: email
        adminAccess:
          type: boolean
        position:
          type: string
        role:
          type: string
          enum:
          - commercialSalesAndLeasing
          - residentialSales
          - propertyManagement
        photo:
          $ref: '#/components/schemas/UserPhoto'
        lastLogin:
          type: string
          format: date-time
        phoneNumbers:
          type: array
          items:
            $ref: '#/components/schemas/PhoneNumber'
        profile:
          type: string
        permissions:
          type: object
          properties:
            settings:
              type: boolean
            canLogin:
              type: boolean
            deleteContacts:
              type: boolean
            globalActionListsReadWrite:
              type: boolean
            globalContactsReadWrite:
              type: boolean
            globalNotesRead:
              type: boolean
            globalNotesReadWrite:
              type: boolean
            globalPropertiesRead:
              type: boolean
            globalPropertiesReadWrite:
              type: boolean
            globalTasksReadWrite:
              type: boolean
            sendSMS:
              type: boolean
    PhoneNumber:
      type: object
      properties:
        number:
          type: string
        typeCode:
          type: string
          enum:
          - H
          - W
          - M
          - F
          - D
        type:
          type: string
          enum:
          - Home
          - Work
          - Mobile
          - Facsimile
          - Direct
    PropertyPhoto:
      type: object
      properties:
        id:
          type: integer
          format: int64
        inserted:
          type: string
          format: date-time
        modified:
          type: string
          format: date-time
        filesize:
          type: integer
          format: int64
        width:
          type: integer
          format: int64
        height:
          type: integer
          format: int64
        caption:
          type: string
        type:
          type: string
          enum:
          - Photograph
          - Floorplan
        url:
          type: string
        filename:
          type: string
        userFilename:
          type: string
        thumbnails:
          $ref: '#/components/schemas/PropertyPhotoThumbnails'
        published:
          type: boolean
    ResidentialLeaseProperty:
      allOf:
      - $ref: '#/components/schemas/ResidentialProperty'
      - type: object
        properties:
          currentTenancy:
            $ref: '#/components/schemas/Tenancy'
          available:
            type: boolean
    Tenancy:
      type: object
      properties:
        id:
          type: integer
          format: int64
        inserted:
          type: string
          format: date-time
        modified:
          type: string
          format: date-time
        rent:
          type: number
          format: float
        rentFrequency:
          $ref: '#/components/schemas/RentFrequency'
        archived:
          type: boolean
        start:
          type: string
          format: date-time
        end:
          type: string
          format: date-time
        rentPaidUntil:
          type: string
          format: date-time
    PropertyClass:
      type: object
      properties:
        id:
          type: integer
          format: int64
        name:
          type: string
    Address:
      type: object
      properties:
        level:
          type: string
        unitNumber:
          type: string
        streetNumber:
          type: string
        street:
          type: string
        suburb:
          $ref: '#/components/schemas/Suburb'
        state:
          $ref: '#/components/schemas/State'
        country:
          $ref: '#/components/schemas/Country'
    Suburb:
      type: object
      properties:
        id:
          type: integer
          format: int64
        name:
          type: string
        postcode:
          type: string
        state:
          $ref: '#/components/schemas/State'
    ResidentialProperty:
      allOf:
      - $ref: '#/components/schemas/Property'
      - type: object
        properties:
          bed:
            type: integer
            format: int64
          bath:
            type: integer
            format: int64
          garages:
            type: integer
            format: int64
          carports:
            type: integer
            format: int64
          openSpaces:
            type: integer
            format: int64
          floorArea:
            $ref: '#/components/schemas/Area'
          status:
            type: string
            enum:
            - prospect
            - appraisal
            - listing
            - conditional
            - unconditional
            - settled
            - management
            - withdrawn
    AddUpdateResidentialLeaseProperty:
      allOf:
      - $ref: '#/components/schemas/AddUpdateResidentialProperty'
      - type: object
    RentFrequency:
      type: object
      properties:
        id:
          type: integer
          format: int64
        name:
          type: string
    AddUpdateResidentialProperty:
      allOf:
      - $ref: '#/components/schemas/AddUpdateProperty'
      - type: object
        properties:
          bed:
            type: integer
            format: int64
          bath:
            type: integer
            format: int64
          garages:
            type: integer
            format: int64
          carports:
            type: integer
            format: int64
          openSpaces:
            type: integer
            format: int64
          floorArea:
            $ref: '#/components/schemas/Area'
          status:
            type: string
            enum:
            - prospect
            - appraisal
    UpdateAddress:
      type: object
      properties:
        level:
          type: string
        unitNumber:
          type: string
        streetNumber:
          type: string
        street:
          type: string
        suburb:
          $ref: '#/components/schemas/ID'
    PropertyType:
      type: object
      properties:
        id:
          type: integer
          format: int64
        name:
          type: string
        country:
          $ref: '#/components/schemas/Country'
        propertyClass:
          $ref: '#/components/schemas/PropertyClass'
    UserPhoto:
      type: object
      properties:
        original:
          type: string
        thumb_360:
          type: string
    AddUpdateResidentialSaleProperty:
      allOf:
      - $ref: '#/components/schemas/AddUpdateResidentialProperty'
      - type: object
    SuccessOrError:
      type: object
      properties:
        success:
          type: boolean
        msg:
          type: string
        code:
          type: string
    ExternalLink:
      type: object
      properties:
        id:
          type: number
          format: int64
        url:
          type: string
        modified:
          type: string
          format: date-time
        type:
          $ref: '#/components/schemas/ExternalLinkType'
    ExternalLinkType:
      type: object
      properties:
        id:
          type: integer
          format: int64
        name:
          type: string
    PropertyPhotoThumbnails:
      type: object
      properties:
        thumb_180:
          type: string
        thumb_1024:
          type: string
    Building:
      type: object
      properties:
        id:
          type: integer
          format: int64
        name:
          type: string
    Access:
      type: object
      properties:
        id:
          type: integer
          format: int64
        name:
          type: string
        photo:
          $ref: '#/components/schemas/UserPhoto'
    ResidentialLeasePropertyExtended_2:
      allOf:
      - $ref: '#/components/schemas/ResidentialLeaseProperty_2'
      - type: object
        properties:
          accessBy:
            type: array
            items:
              $ref: '#/components/schemas/Access'
          leaseHistory:
            type: array
            items:
              $ref: '#/components/schemas/LeaseHistory'
          highlights:
            type: array
            items:
              type: string
    LeaseHistory:
      type: object
      properties:
        lifeId:
          type: number
          format: int64
        appraisal:
          type: string
          format: date-time
        appraisalPriceLower:
          type: number
          format: float
        appraisalPriceUpper:
          type: number
          format: float
        status:
          type: string
          enum:
          - prospect
          - appraisal
          - listing
          - conditional
          - unconditional
          - settled
          - management
          - withdrawn
          - withdrawnAppraisal
    Rate:
      type: object
      properties:
        value:
          type: number
          format: float
        period:
          type: string
          enum:
          - pa
          - pq
    SaleHistory:
      type: object
      properties:
        lifeId:
          type: number
          format: int64
        appraisal:
          type: string
          format: date-time
        appraisalPriceLower:
          type: number
          format: float
        appraisalPriceUpper:
          type: number
          format: float
        listingAuthority:
          type: string
          format: date-time
        conditional:
          type: string
          format: date-time
        unconditional:
          type: string
          format: date-time
        settlement:
          type: string
          format: date-time
        status:
          type: string
          enum:
          - prospect
          - appraisal
          - listing
          - conditional
          - unconditional
          - settled
          - withdrawn
          - withdrawnAppraisal
        salePrice:
          type: number
          format: float
        showSalePrice:
          type: boolean
        grossCommissionExcGST:
          type: number
          format: float
    TenderDetails:
      type: object
      properties:
        dateTime:
          type: string
          format: date-time
    SaleProperty:
      type: object
      properties:
        priceQualifier:
          $ref: '#/components/schemas/PriceQualifier'
        branch:
          $ref: '#/components/schemas/AccountBranch'
        tenanted:
          type: boolean
        tenancyDetails:
          type: string
        tenancyStart:
          type: string
          format: date-time
        tenancyStop:
          type: string
          format: date-time
        tenantName:
          type: string
        tenantPhone:
          type: string
        tenantEmail:
          type: string
        rates:
          type: object
          properties:
            water:
              $ref: '#/components/schemas/Rate'
            council:
   

# --- truncated at 32 KB (90 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/vaultre/refs/heads/main/openapi/vaultre-residentialproperties-api-openapi.yml