openapi: 3.0.1 info: title: VaultRE description: Please ensure all API requests use HTTP/1.1. See https://github.com/VaultGroup/api-samples for code samples. contact: name: VaultRE url: https://www.vaultre.com.au email: api@vaultre.com.au version: "1.2" servers: - url: https://ap-southeast-2.api.vaultre.com.au/api/v1.2 tags: - name: advertising description: Operations related to property and agent advertising - name: categories description: Operations related to categories - name: contacts description: Operations related to contacts - name: user description: Operations related to users - name: properties description: Operations related to properties - name: propertyOfferConditions description: Operations related to property offer conditions - name: feedback description: Operations related to property feedback - name: residentialProperties description: Operations related to residential properties - name: ruralProperties description: Operations related to rural properties - name: commercialProperties description: Operations related to commercial properties - name: businessProperties description: Operations related to business properties - name: landProperties description: Operations related to land properties - name: holidayRentalProperties description: Operations related to holiday rental properties - name: search description: Operations related to performing searches - name: suggest description: Operations related to suggest services - name: buildings description: Operations related to buildings - name: calendar description: Operations related to calendar events - name: tasks description: Operations related to tasks - name: corelogic description: Operations related to CoreLogic - name: types description: Operations related to various VaultRE object types - name: enquiries description: Operations related to listing enquiries - name: propertyStats description: Operations related to property portal stats - name: integrator description: Special endpoints for access by integrating partners - name: sms description: Operations related to SMS - name: email description: Operations related to email - name: templates description: Operations related to SMS and email templates - name: maintenance description: Operations related to maintenance jobs - name: inspections description: Operations related to inspections - name: suppliers description: Operations related to creditors / suppliers - name: bulk description: Bulk operations - name: deals description: Operations related to commercial deals - name: suburbs description: Operations related to suburbs - name: messages description: Operations related to franchise and user messages paths: /integrator/accounts: get: tags: - integrator summary: Retrieve a list of accounts linked to this integrator description: Retrieve a list of accounts linked to this integrator operationId: getIntegratorAccounts parameters: - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - name: sort in: query description: Field by which to sort the results. schema: type: string enum: - name - $ref: '#/components/parameters/sortOrder' responses: 200: description: Accounts retrieved content: {} security: - Api-Key: [] Bearer: [] /integrator/accounts/{id}: get: tags: - integrator summary: Retrieve an account linked to this integrator description: Retrieve an account linked to this integrator operationId: getIntegratorAccount parameters: - name: id in: path description: ID of the account required: true schema: type: integer format: int64 responses: 200: description: Account retrieved content: application/json: schema: $ref: '#/components/schemas/Account' security: - Api-Key: [] Bearer: [] /integrator/accounts/{id}/users: get: tags: - integrator summary: Retrieve a list of users for this account description: Retrieve a list of users for this account operationId: getIntegratorAccountUsers parameters: - name: id in: path description: ID of the account required: true schema: type: integer format: int64 - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - name: sort in: query description: Field by which to sort the results. schema: type: string enum: - firstName - lastName - $ref: '#/components/parameters/sortOrder' responses: 200: description: Users retrieved content: {} security: - Api-Key: [] Bearer: [] /integrator/accounts/{accountid}/users/{id}: get: tags: - integrator summary: Retrieve a user for this account description: Retrieve a user for this account operationId: getIntegratorAccountUser parameters: - name: accountid in: path description: ID of the account required: true schema: type: integer format: int64 - name: id in: path description: ID of the user required: true schema: type: integer format: int64 responses: 200: description: User retrieved content: application/json: schema: $ref: '#/components/schemas/User' security: - Api-Key: [] Bearer: [] /integrator/scopes: get: tags: - integrator summary: Retrieve a list of possible scopes for your API key description: Retrieve a list of possible scopes for your API key. Note that individual bearer tokens may have fewer scopes applied. operationId: getIntegratorScopes responses: 200: description: Scopes retrieved content: {} security: - Api-Key: [] Bearer: [] /integrator/tokens: get: tags: - integrator summary: Retrieve a list of bearer tokens, with accounts, linked to this integrator description: Retrieve a list of bearer tokens, with accounts, linked to this integrator operationId: getIntegratorTokens parameters: - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' responses: 200: description: Tokens retrieved content: {} security: - Api-Key: [] Bearer: [] /integrator/validateUser: post: tags: - integrator summary: Validate a user's credentials description: Validate a user's credentials operationId: validateIntegratorUser requestBody: description: Credential object content: application/json: schema: $ref: '#/components/schemas/Credential' required: true responses: 200: description: API Call completed successfully content: {} security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /properties/{propertyid}/{salelease}/{lifeid}/externalStats: put: tags: - integrator summary: Integrator property statistics description: Update the property stats operationId: updateExternalPropertyStats parameters: - name: propertyid in: path description: ID of the property required: true schema: type: integer format: int64 - name: salelease in: path description: Sale or lease required: true schema: type: string - name: lifeid in: path description: ID of the property life required: true schema: type: integer format: int64 requestBody: description: List of property stats content: application/json: schema: $ref: '#/components/schemas/UpdateIntegratorPropertyStats' required: true responses: 200: $ref: '#/definitions/UpdateIntegratorPropertyStats' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body post: tags: - integrator summary: Integrator property statistics description: Add or update a property stat operationId: updateExternalPropertyStat parameters: - name: propertyid in: path description: ID of the property required: true schema: type: integer format: int64 - name: salelease in: path description: Sale or lease required: true schema: type: string - name: lifeid in: path description: ID of the property life required: true schema: type: integer format: int64 requestBody: description: Property stat to add or update content: application/json: schema: $ref: '#/components/schemas/IntegratorPropertyStat' required: true responses: 200: description: Property stats updated content: application/json: schema: $ref: '#/components/schemas/IntegratorPropertyStat' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /scopes: get: tags: - integrator summary: Retrieve a list of granted scopes for this bearer token description: Retrieve a list of granted scopes for this bearer token operationId: getTokenScopes responses: 200: description: Scopes retrieved content: {} security: - Api-Key: [] Bearer: [] /responseCodes: get: tags: - types summary: Retrieve a list of response codes used in this API description: Retrieve a list of response codes used in this API operationId: getResponseCodes responses: 200: description: Response codes retrieved content: {} security: - Api-Key: [] /types/propertyClass: get: tags: - types summary: Retrieve a list of property classes description: Retrieve a list of property classes operationId: getPropertyClasses parameters: - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - name: sort in: query description: Field by which to sort the results. schema: type: string enum: - name - $ref: '#/components/parameters/sortOrder' responses: 200: description: Property classes retrieved content: {} security: - Api-Key: [] Bearer: [] /types/propertyType: get: tags: - types summary: Retrieve a list of property types description: Retrieve a list of property types applicable to this account operationId: getPropertyTypes parameters: - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - name: sort in: query description: Field by which to sort the results. schema: type: string enum: - name - $ref: '#/components/parameters/sortOrder' responses: 200: description: Property types retrieved content: {} security: - Api-Key: [] Bearer: [] /types/contactInterest: get: tags: - types summary: Retrieve a list of contact interest types description: Retrieve a list of contact interest types operationId: getContactInterestTypes parameters: - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - name: sort in: query description: Field by which to sort the results. schema: type: string enum: - name - $ref: '#/components/parameters/sortOrder' responses: 200: description: Contact interest types retrieved content: {} security: - Api-Key: [] Bearer: [] /types/entityTypes: get: tags: - types summary: Retrieve a list of contact entity types description: Retrieve a list of contact entity types operationId: getContactEntityTypes parameters: - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - name: sort in: query description: Field by which to sort the results. schema: type: string enum: - name - $ref: '#/components/parameters/sortOrder' responses: 200: description: Types retrieved content: {} security: - Api-Key: [] Bearer: [] /types/externalLinks: get: tags: - types summary: Retrieve a list of property external link types description: Retrieve a list of property external link types operationId: getExternalLinkTypes parameters: - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - name: sort in: query description: Field by which to sort the results. schema: type: string enum: - name - $ref: '#/components/parameters/sortOrder' responses: 200: description: Types retrieved content: {} security: - Api-Key: [] Bearer: [] /types/contactnotes: get: tags: - types summary: Retrieve a list of contact note types for this account description: Retrieve a list of contact note types for this account operationId: getContactNoteTypes parameters: - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - name: sort in: query description: Field by which to sort the results. schema: type: string enum: - name - $ref: '#/components/parameters/sortOrder' responses: 200: description: Note types retrieved content: {} security: - Api-Key: [] Bearer: [] /types/contactnotes/{id}: get: tags: - types summary: Retrieve a single contact note type description: Retrieve a single contact note type operationId: getContactNoteType parameters: - name: id in: path description: ID of the note type required: true schema: type: integer format: int64 responses: 200: description: Note type retrieved content: application/json: schema: $ref: '#/components/schemas/ContactNoteType' security: - Api-Key: [] Bearer: [] /types/propertynotes: get: tags: - types summary: Retrieve a list of property note types for this account description: Retrieve a list of property note types for this account operationId: getPropertyNoteTypes parameters: - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - name: sort in: query description: Field by which to sort the results. schema: type: string enum: - name - $ref: '#/components/parameters/sortOrder' responses: 200: description: Note types retrieved content: {} security: - Api-Key: [] Bearer: [] /types/propertynotes/{id}: get: tags: - types summary: Retrieve a single property note type description: Retrieve a single property note type operationId: getPropertyNoteType parameters: - name: id in: path description: ID of the note type required: true schema: type: integer format: int64 responses: 200: description: Note type retrieved content: application/json: schema: $ref: '#/components/schemas/PropertyNoteType' security: - Api-Key: [] Bearer: [] /buildings: get: tags: - buildings summary: Retrieve a list of buildings description: Retrieve a list of buildings operationId: getBuildings parameters: - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - name: sort in: query description: Field by which to sort the results. schema: type: string enum: - name - $ref: '#/components/parameters/sortOrder' responses: 200: description: Buildings retrieved content: {} security: - Api-Key: [] Bearer: [] post: tags: - buildings summary: Create a building record description: Create a building record operationId: addBuilding requestBody: description: Building object content: '*/*': schema: $ref: '#/components/schemas/AddUpdateBuilding' required: true responses: 200: description: Building already exists content: application/json: schema: $ref: '#/components/schemas/Building' 201: description: Building created content: application/json: schema: $ref: '#/components/schemas/Building' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /buildings/{id}: get: tags: - buildings summary: Retrieve a single building description: Retrieve a single building operationId: getBuilding parameters: - name: id in: path description: ID of the building required: true schema: type: integer format: int64 responses: 200: description: Building retrieved content: application/json: schema: $ref: '#/components/schemas/Building' security: - Api-Key: [] Bearer: [] put: tags: - buildings summary: Update the building description: Update the building operationId: updateBuilding parameters: - name: id in: path description: ID of the building required: true schema: type: integer format: int64 requestBody: description: Building object content: application/json: schema: $ref: '#/components/schemas/AddUpdateBuilding' required: true responses: 200: description: Building updated content: application/json: schema: $ref: '#/components/schemas/Building' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body delete: tags: - buildings summary: Delete the building description: Delete the building operationId: deleteBuilding parameters: - name: id in: path description: ID of the building required: true schema: type: integer format: int64 responses: 204: description: Building deleted content: {} 400: description: Invalid data content: '*/*': schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] /categories/contact/groups: get: tags: - categories summary: Retrieve a list of contact category groups description: Retrieve a list of contact category groups operationId: getContactCategoryGroups parameters: - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - name: sort in: query description: Field by which to sort the results. schema: type: string enum: - name - $ref: '#/components/parameters/sortOrder' responses: 200: description: Contact category groups retrieved content: {} security: - Api-Key: [] Bearer: [] /categories/contact/groups/{id}: get: tags: - categories summary: Retrieve a single contact category group description: Retrieve a single contact category group operationId: getContactCategoryGroup parameters: - name: id in: path description: ID of the category group required: true schema: type: integer format: int64 responses: 200: description: Category group retrieved content: application/json: schema: $ref: '#/components/schemas/CategoryGrouping' security: - Api-Key: [] Bearer: [] /categories/contact/groups/{id}/categories: get: tags: - categories summary: Retrieve a list of categories in this contact category group description: Retrieve a list of categories in this contact category group operationId: getContactCategoryGroupCategories parameters: - name: id in: path description: ID of the category group required: true schema: type: integer format: int64 responses: 200: description: Categories retrieved content: {} security: - Api-Key: [] Bearer: [] post: tags: - categories summary: Create a contact category in this grouping description: Create a contact category in this grouping operationId: addContactCategoryGroupCategory requestBody: description: Category object content: '*/*': schema: $ref: '#/components/schemas/AddUpdateCategory' required: true responses: 201: description: Category created content: application/json: schema: $ref: '#/components/schemas/Category' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /categories/contact/groups/{groupingid}/categories/{id}: get: tags: - categories summary: Retrieve a single category in this contact category group description: Retrieve a single category in this contact category group operationId: getContactCategoryGroupCategory parameters: - name: groupingid in: path description: ID of the category group required: true schema: type: integer format: int64 - name: id in: path description: ID of the category required: true schema: type: integer format: int64 responses: 200: description: Category retrieved content: application/json: schema: $ref: '#/components/schemas/Category' security: - Api-Key: [] Bearer: [] put: tags: - categories summary: Update a contact category in this grouping description: Update a contact category in this grouping operationId: updateContactCategoryGroupCategory requestBody: description: Category object content: '*/*': schema: $ref: '#/components/schemas/AddUpdateCategory' required: true responses: 200: description: Category updated content: application/json: schema: $ref: '#/components/schemas/Category' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /categories/contact: get: tags: - categories summary: Retrieve a list of contact categories description: Retrieve a list of contact categories operationId: getContactCategories parameters: - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - name: sort in: query description: Field by which to sort the results. schema: type: string enum: - name - $ref: '#/components/parameters/sortOrder' responses: 200: description: Categories retrieved content: {} security: - Api-Key: [] Bearer: [] /categories/contact/{id}: get: tags: - categories summary: Retrieve a single contact category description: Retrieve a single contact category operationId: getContactCategory parameters: - name: id in: path description: ID of the category required: true schema: type: integer format: int64 responses: 200: description: Category retrieved content: application/json: schema: $ref: '#/components/schemas/Category' security: - Api-Key: [] Bearer: [] /categories/property/groups: get: tags: - categories summary: Retrieve a list of property category groups description: Retrieve a list of property category groups operationId: getPropertyCategoryGroups parameters: - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - name: sort in: query description: Field by which to sort the results. schema: type: string enum: - name - $ref: '#/components/parameters/sortOrder' responses: 200: description: Property category groups retrieved content: {} security: - Api-Key: [] Bearer: [] /categories/property/groups/{id}: get: tags: - categories summary: Retrieve a single property category group description: Retrieve a single property category group operationId: getPropertyCategoryGroup parameters: - name: id in: path description: ID of the category group required: true schema: type: integer format: int64 responses: 200: description: Category group retrieved content: application/json: schema: $ref: '#/components/schemas/CategoryGrouping' security: - Api-Key: [] Bearer: [] /categories/property: get: tags: - categories summary: Retrieve a list of property categories description: Retrieve a list of property categories operationId: getPropertyCategories parameters: - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - name: sort in: query description: Field by which to sort the results. schema: type: string enum: - name - $ref: '#/components/parameters/sortOrder' responses: 200: description: Categories retrieved content: {} security: - Api-Key: [] Bearer: [] /categories/property/{id}: get: tags: - categories summary: Retrieve a single property category description: Retrieve a single property category operationId: getPropertyCategory parameters: - name: id in: path description: ID of the category required: true schema: type: integer format: int64 responses: 200: description: Category retrieved content: application/json: schema: $ref: '#/components/schemas/Category' security: - Api-Key: [] Bearer: [] /contacts: get: tags: - contacts summary: Retrieve a list of contacts description: Retrieve a list of contacts operationId: getContacts parameters: - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - $ref: '#/components/parameters/modifiedSince' - $ref: '#/components/parameters/modifiedBefore' - name: categories in: query description: Filter contacts belonging to category IDs style: form explode: false schema: type: array items: type: integer format: int64 - name: entityType in: query description: Filter contacts by entity type schema: type: integer format: int64 - name: archived in: query description: Filter contacts by archived status schema: type: boolean - name: sort in: query description: Field by which to sort the results. schema: type: string enum: - firstName - lastName - inserted - modified - touched - $ref: '#/components/parameters/sortOrder' - name: marketingUser in: query description: Filter by marketing user(s) style: form explode: false schema: type: array items: type: integer format: int64 - name: marketingUserPosition in: query description: Used in conjuction with marketingUser, filter by marketing user position ID schema: type: integer format: int64 responses: 200: description: Contacts retrieved content: {} security: - Api-Key: [] Bearer: [] post: tags: - contacts summary: Create a contact description: Create a contact operationId: addContact requestBody: description: Contact object content: '*/*': schema: $ref: '#/components/schemas/AddContact' required: true responses: 201: description: Contact created content: application/json: schema: $ref: '#/components/schemas/ContactExtended' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /contacts/{id}: get: tags: - contacts summary: Retrieve a single contact description: Retrieve a single contact operationId: getContact parameters: - name: id in: path description: ID of the contact required: true schema: type: integer format: int64 responses: 200: description: Contact retrieved content: application/json: schema: $ref: '#/components/schemas/ContactExtended' security: - Api-Key: [] Bearer: [] put: tags: - contacts summary: Update a single contact description: Update a single contact operationId: updateContact parameters: - name: id in: path description: ID of the contact required: true schema: type: integer format: int64 requestBody: description: Contact object content: application/json: schema: $ref: '#/components/schemas/UpdateContact' required: true responses: 200: description: Contact updated content: application/json: schema: $ref: '#/components/schemas/ContactExtended' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body delete: tags: - contacts summary: Delete a contact description: Delete a contact operationId: deleteContact parameters: - name: id in: path description: ID of the contact required: true schema: type: integer format: int64 responses: 204: description: Contact deleted content: {} 400: description: Invalid data content: {} 403: description: User does not have permission to delete contacts content: '*/*': schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] /contacts/{id}/sms: post: tags: - contacts - sms summary: Send an SMS to this contact description: Send an SMS to this contact from the authenticated user or selected user (charges may apply). operationId: sendContactSMS requestBody: description: SMS object content: application/json: schema: $ref: '#/components/schemas/SMS' required: true responses: 201: description: SMS message queued to be sent content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' 403: description: User does not have permission to send SMS content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /contacts/sms: post: tags: - contacts - sms summary: Send multiple SMS messages to contacts description: Send multiple SMS messages to these contacts from the authenticated user or selected user (charges may apply). Maximum 50 recipients in any one request. operationId: sendBulkContactSMS requestBody: description: Array of SMS objects content: application/json: {} required: true responses: 201: description: SMS messages queued to be sent content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' 403: description: User does not have permission to send SMS content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /contacts/{id}/email: post: tags: - contacts - email summary: Send an email to this contact description: Send an email to this contact from the authenticated user or selected user (if provided). operationId: sendContactEmail requestBody: description: Email object content: application/json: schema: $ref: '#/components/schemas/Email' required: true responses: 201: description: Email message queued to be sent content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' 403: description: User does not have permission to send email content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /contacts/email: post: tags: - contacts - email summary: Send multiple emails to contacts description: Send multiple emails to these contacts from the authenticated user or selected user (if provided). Maximum 50 recipients in any one request. operationId: sendBulkContactEmail requestBody: description: Array of Email objects content: application/json: {} required: true responses: 201: description: Email messages queued to be sent content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' 403: description: User does not have permission to send email content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /contacts/{id}/context: get: tags: - contacts summary: Retrieve contextual information about this contact description: Retrieve contextual information about this contact operationId: getContactContext parameters: - name: id in: path description: ID of the contact required: true schema: type: integer format: int64 responses: 200: description: Contact context retrieved content: application/json: schema: $ref: '#/components/schemas/ContactContext' security: - Api-Key: [] Bearer: [] /contacts/recentlyAccessed: get: tags: - contacts summary: Retrieve a list of recently accessed contacts description: Retrieve a list of recently accessed contacts operationId: getRecentlyAccessedContacts parameters: - name: archived in: query description: Filter contacts by archived status schema: type: boolean responses: 200: description: Contacts retrieved content: {} security: - Api-Key: [] Bearer: [] /contacts/{id}/notes: get: tags: - contacts summary: Retrieve a list of notes attached to this contact description: Retrieve a list of notes attached to this contact operationId: getContactNotes parameters: - name: id in: path description: ID of the contact required: true schema: type: integer format: int64 - name: types in: query description: Filter notes with type IDs style: form explode: false schema: type: array items: type: integer format: int64 - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - name: sort in: query description: Field by which to sort the results. schema: type: string enum: - inserted - $ref: '#/components/parameters/sortOrder' responses: 200: description: Contact notes retrieved content: {} security: - Api-Key: [] Bearer: [] post: tags: - contacts summary: Add a note to this contact description: Add a note to this contact operationId: addContactNote requestBody: description: Contact note object content: application/json: schema: $ref: '#/components/schemas/AddContactNote' required: true responses: 201: description: Contact note created content: application/json: schema: $ref: '#/components/schemas/ContactNoteExtended' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /contacts/notes: post: tags: - contacts summary: Add multiple contact notes description: Add multiple contact notes in a batch. Maximum 100 notes in any one request. operationId: addBulkContactNote requestBody: description: Bulk contact note object content: application/json: schema: $ref: '#/components/schemas/BulkContactNote' required: true responses: 201: description: Contact notes created content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /contacts/{contactid}/notes/{id}: get: tags: - contacts summary: Retrieve a single contact note description: Retrieve a single contact note operationId: getContactNote parameters: - name: contactid in: path description: ID of the contact required: true schema: type: integer format: int64 - name: id in: path description: ID of the note required: true schema: type: integer format: int64 responses: 200: description: Contact note retrieved content: application/json: schema: $ref: '#/components/schemas/ContactNoteExtended' security: - Api-Key: [] Bearer: [] put: tags: - contacts summary: Update a contact note description: Update a contact note operationId: updateContactNote parameters: - name: contactid in: path description: ID of the contact required: true schema: type: integer format: int64 - name: id in: path description: ID of the note required: true schema: type: integer format: int64 requestBody: description: Contact Note object content: application/json: schema: $ref: '#/components/schemas/UpdateContactNote' required: true responses: 200: description: Note updated content: application/json: schema: $ref: '#/components/schemas/ContactNoteExtended' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' 403: description: User does not have permission to modify contact notes or note is read-only content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body delete: tags: - contacts summary: Delete a contact note description: Delete a contact note operationId: deleteContactNote parameters: - name: contactid in: path description: ID of the contact required: true schema: type: integer format: int64 - name: id in: path description: ID of the note required: true schema: type: integer format: int64 responses: 204: description: Contact Note deleted content: {} 400: description: Invalid data content: '*/*': schema: $ref: '#/components/schemas/SuccessOrError' 403: description: User does not have permission to delete contact notes or note is read-only content: '*/*': schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] /contacts/{id}/categories: get: tags: - contacts summary: Retrieve a list of categories to which this contact belongs description: Retrieve a list of categories to which this contact belongs operationId: getCategoriesContact parameters: - name: id in: path description: ID of the contact required: true schema: type: integer format: int64 - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - name: sort in: query description: Field by which to sort the results. schema: type: string enum: - name - $ref: '#/components/parameters/sortOrder' responses: 200: description: Contact categories retrieved content: {} security: - Api-Key: [] Bearer: [] put: tags: - contacts summary: Update the categories to which this contact belongs description: Update the categories to which this contact belongs operationId: updateCategoriesContact parameters: - name: id in: path description: ID of the contact required: true schema: type: integer format: int64 requestBody: description: Items object containing array of contact category IDs content: application/json: {} required: true responses: 200: description: Contact categories updated content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body post: tags: - contacts summary: Attach one or more categories to this contact description: Attach one or more categories to this contact operationId: attachCategoryContact parameters: - name: id in: path description: ID of the contact required: true schema: type: integer format: int64 requestBody: description: Items object containing array of contact category IDs content: application/json: {} required: true responses: 200: description: Contact category attached content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /contacts/{id}/categories/remove: put: tags: - contacts summary: Remove categories from this contact description: Remove categories from this contact operationId: removeCategoryContact parameters: - name: id in: path description: ID of the contact required: true schema: type: integer format: int64 requestBody: description: Items object containing array of contact category IDs content: application/json: {} required: true responses: 200: description: Contact categories removed content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /contacts/{id}/custom: get: tags: - contacts summary: Retrieve a list of custom fields for this contact description: Retrieve a list of custom fields for this contact operationId: getContactCustomFields parameters: - name: id in: path description: ID of the contact required: true schema: type: integer format: int64 - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' responses: 200: description: Custom fields retrieved content: {} security: - Api-Key: [] Bearer: [] put: tags: - contacts summary: Update the custom fields for this contact description: Update the custom fields for this contact operationId: updateContactCustomFields parameters: - name: id in: path description: ID of the contact required: true schema: type: integer format: int64 requestBody: description: Items object containing array of custom fields content: application/json: {} required: true responses: 200: description: Custom fields updated content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /contacts/{id}/files: get: tags: - contacts summary: Retrieve a list of files attached to this contact description: Retrieve a list of files attached to this contact operationId: getContactFiles parameters: - name: id in: path description: ID of the contact required: true schema: type: integer format: int64 - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - name: sort in: query description: Field by which to sort the results. schema: type: string enum: - inserted - $ref: '#/components/parameters/sortOrder' responses: 200: description: Files retrieved content: {} security: - Api-Key: [] Bearer: [] post: tags: - contacts summary: Attach a file to this contact description: Attach a file to this contact. This endpoint is suitable for smaller files (<5MB). For larger files use POST /contacts/{id}/files/upload operationId: addContactFile parameters: - name: id in: path description: ID of the contact required: true schema: type: integer format: int64 requestBody: content: multipart/form-data: schema: required: - file properties: file: type: string description: The file to be uploaded format: binary required: true responses: 201: description: File attached successfully content: application/json: schema: $ref: '#/components/schemas/ContactFile' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] /contacts/{id}/files/upload: post: tags: - contacts summary: Attach a file to this contact description: Attach a file to this contact. This endpoint returns an upload_url where the file data can be PUT. Can be used for large files. operationId: addContactFileUpload parameters: - name: id in: path description: ID of the contact required: true schema: type: integer format: int64 requestBody: description: File upload object content: application/json: schema: $ref: '#/components/schemas/ContactFileUpload' required: true responses: 201: description: File record created. File data can now be posted to the returned URL. content: application/json: schema: $ref: '#/components/schemas/FileToBeUploaded' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /contacts/{contactid}/files/{id}: get: tags: - contacts summary: Retrieve a single file attached to this contact description: Retrieve a single file attached to this contact operationId: getContactFile parameters: - name: contactid in: path description: ID of the contact required: true schema: type: integer format: int64 - name: id in: path description: ID of the file required: true schema: type: integer format: int64 responses: 200: description: File retrieved content: application/json: schema: $ref: '#/components/schemas/ContactFile' security: - Api-Key: [] Bearer: [] delete: tags: - contacts summary: Delete a file attached to this contact description: Delete a file attached to this contact operationId: deleteContactFile parameters: - name: contactid in: path description: ID of the contact required: true schema: type: integer format: int64 - name: id in: path description: ID of the file required: true schema: type: integer format: int64 responses: 204: description: File deleted content: {} 400: description: Invalid data content: '*/*': schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] /contacts/{id}/events: get: tags: - contacts - calendar summary: Retrieve a list of calendar events attached to this contact description: Retrieve a list of calendar events attached to this contact operationId: getContactEvents parameters: - name: id in: path description: ID of the contact required: true schema: type: integer format: int64 - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - name: sort in: query description: Field by which to sort the results. schema: type: string enum: - start - $ref: '#/components/parameters/sortOrder' responses: 200: description: Calendar events retrieved content: {} security: - Api-Key: [] Bearer: [] /contacts/{id}/touch: put: tags: - contacts summary: Mark the contact record as touched description: Mark the contact record as touched operationId: touchContact parameters: - name: id in: path description: ID of the contact required: true schema: type: integer format: int64 responses: 200: description: Contact touched content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] /contacts/{id}/requirements: get: tags: - contacts summary: Retrieve a list of buying/renting requirements for this contact description: Retrieve a list of buying/renting requirements for this contact operationId: getContactRequirements parameters: - name: id in: path description: ID of the contact required: true schema: type: integer format: int64 - name: active in: query description: Filter active/inactive requirements schema: type: boolean - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - 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: Requirements retrieved content: {} security: - Api-Key: [] Bearer: [] post: tags: - contacts summary: Add a requirement for this contact description: Add a requirement for this contact operationId: addContactRequirement parameters: - name: id in: path description: ID of the contact required: true schema: type: integer format: int64 requestBody: description: Contact Requirement object content: application/json: schema: $ref: '#/components/schemas/AddUpdateContactRequirement' required: true responses: 201: description: Contact Requirement created content: application/json: schema: $ref: '#/components/schemas/ContactRequirement' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /contacts/{contactid}/requirements/{id}: get: tags: - contacts summary: Retrieve a single buying/renting requirement for this contact description: Retrieve a single buying/renting requirement for this contact operationId: getContactRequirement parameters: - name: contactid in: path description: ID of the contact required: true schema: type: integer format: int64 - name: id in: path description: ID of the requirement required: true schema: type: integer format: int64 responses: 200: description: Contact requirement retrieved content: application/json: schema: $ref: '#/components/schemas/ContactRequirement' security: - Api-Key: [] Bearer: [] put: tags: - contacts summary: Update a requirement for this contact description: Update a requirement for this contact operationId: updateContactRequirement parameters: - name: contactid in: path description: ID of the contact required: true schema: type: integer format: int64 - name: id in: path description: ID of the requirement required: true schema: type: integer format: int64 requestBody: description: Contact Requirement object content: application/json: schema: $ref: '#/components/schemas/AddUpdateContactRequirement' required: true responses: 200: description: Contact Requirement updated content: application/json: schema: $ref: '#/components/schemas/ContactRequirement' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body delete: tags: - contacts summary: Delete a buying/renting requirement for the contact description: Delete a buying/renting requirement for the contact operationId: deleteContactRequirement parameters: - name: contactid in: path description: ID of the contact required: true schema: type: integer format: int64 - name: id in: path description: ID of the requirement required: true schema: type: integer format: int64 responses: 204: description: Requirement deleted content: {} 400: description: Invalid data content: '*/*': schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] /user: get: tags: - user summary: Retrieve information about the authenticated user description: Retrieve information about the authenticated user operationId: getUser responses: 200: description: User retrieved content: application/json: schema: $ref: '#/components/schemas/User' security: - Api-Key: [] Bearer: [] put: tags: - user summary: Update the authenticated user description: Update the authenticated user operationId: updateUser requestBody: description: User object content: application/json: schema: $ref: '#/components/schemas/UpdateUser' required: true responses: 200: description: User updated content: application/json: schema: $ref: '#/components/schemas/User' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /user/subscriptions: get: tags: - user summary: Retrieve active subscriptions for the authenticated user description: Retrieve active subscriptions for the authenticated user operationId: getUserSubscriptions responses: 200: description: User subscriptions retrieved content: application/json: schema: $ref: '#/components/schemas/UserSubscriptions' security: - Api-Key: [] Bearer: [] /user/teams: get: tags: - user summary: Retrieve a list of teams to which the authenticated user belongs description: Retrieve a list of teams to which the authenticated user belongs operationId: getUserTeams parameters: - name: sort in: query description: Field by which to sort the results. schema: type: string enum: - name - $ref: '#/components/parameters/sortOrder' responses: 200: description: User teams retrieved content: {} security: - Api-Key: [] Bearer: [] /user/summary/grossCommission: get: tags: - user summary: Retrieve a summary of recent gross commission for the authenticated user description: Retrieve a month by month summary of recent gross commission (previous six months) for the authenticated user operationId: getUserSummaryGrossCommission responses: 200: description: Summary retrieved content: {} security: - Api-Key: [] Bearer: [] /user/upcomingOfferConditions: get: tags: - user summary: Retrieve a list of upcoming offer conditions for the authenticated user description: Retrieve a list of upcoming offer conditions for the authenticated user operationId: getUserUpcomingOfferConditions parameters: - name: days in: query description: Number of days to look ahead and back (default 8) schema: type: integer format: int64 - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' responses: 200: description: Conditions retrieved content: {} security: - Api-Key: [] Bearer: [] /user/upcomingOpenHomes: get: tags: - user summary: Retrieve a list of upcoming open homes for the authenticated user description: Retrieve a list of upcoming open homes for the authenticated user operationId: getUserUpcomingOpenHomes parameters: - name: days in: query description: Number of days to look ahead and back (default 7) schema: type: integer format: int64 - name: includeRecent in: query description: Include recently completed open homes schema: type: boolean - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' responses: 200: description: Open Homes retrieved content: {} security: - Api-Key: [] Bearer: [] /user/tenancyInspections: get: tags: - user summary: Retrieve a list of upcoming and recent inspections for the authenticated user description: Retrieve a list of upcoming and recent inspections for the authenticated user operationId: getUserTenancyInspections parameters: - name: days in: query description: Number of days to look ahead and back (default 7). Only used if start and end are undefined. schema: type: integer format: int64 - name: includeRecent in: query description: Include recently completed inspections. Used in conjuction with days argument. schema: type: boolean - name: start in: query description: Filter inspections starting on or after this datetime. Takes precendent over days argument. schema: type: string format: date-time - name: end in: query description: Filter inspections starting before this datetime. Takes precendent over days argument. schema: type: string format: date-time - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' responses: 200: description: Inspections retrieved content: {} security: - Api-Key: [] Bearer: [] /user/credentials: put: tags: - user summary: Update the credentials for the authenticated user description: Update the credentials for the authenticated user operationId: updateUserCredentials requestBody: description: Credential object content: application/json: schema: $ref: '#/components/schemas/Credential' required: true responses: 200: description: User credentials updated content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /user/signature: get: tags: - user summary: Retrieve the authenticated user's signature description: Retrieve the authenticated user's signature operationId: getUserSignature responses: 200: description: Signature retrieved content: application/json: schema: $ref: '#/components/schemas/Signature' security: - Api-Key: [] Bearer: [] put: tags: - user summary: Update the signature for the authenticated user description: Update the signature for the authenticated user operationId: updateUserSignature requestBody: content: multipart/form-data: schema: required: - file properties: file: type: string description: PNG image of the signature format: binary required: true responses: 200: description: User signature updated content: application/json: schema: $ref: '#/components/schemas/Signature' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] /user/photo: get: tags: - user summary: Retrieve the authenticated user's photograph description: Retrieve the authenticated user's photograph operationId: getUserPhoto responses: 200: description: Photo retrieved content: application/json: schema: $ref: '#/components/schemas/UserPhoto' security: - Api-Key: [] Bearer: [] put: tags: - user summary: Update the photo for the authenticated user description: Update the photo for the authenticated user operationId: updateUserPhoto requestBody: content: multipart/form-data: schema: required: - file properties: file: type: string description: The photo file to be uploaded format: binary required: true responses: 200: description: User photo updated content: application/json: schema: $ref: '#/components/schemas/UserPhoto' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] /account: get: tags: - user summary: Retrieve information about the authenticated account description: Retrieve information about the authenticated account operationId: getAccount responses: 200: description: User retrieved content: application/json: schema: $ref: '#/components/schemas/Account' security: - Api-Key: [] Bearer: [] /account/users: get: tags: - user summary: Retrieve a list of users in the authenticated account description: Retrieve a list of users in the authenticated account operationId: getAccountUsers parameters: - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - name: team in: query description: Filter users belonging to the given team ID schema: type: integer format: int64 - name: sort in: query description: Field by which to sort the results. schema: type: string enum: - firstname - lastname - inserted - $ref: '#/components/parameters/sortOrder' responses: 200: description: Account users retrieved content: {} security: - Api-Key: [] Bearer: [] /account/users/{id}: get: tags: - user summary: Retrieve a single user from the account description: Retrieve a single user from the account operationId: getAccountUser parameters: - name: id in: path description: ID of the user required: true schema: type: integer format: int64 responses: 200: description: User retrieved content: application/json: schema: $ref: '#/components/schemas/User' security: - Api-Key: [] Bearer: [] /account/users/{id}/teams: get: tags: - user summary: Retrieve a list of teams to which this user belongs description: Retrieve a list of teams to which this user belongs operationId: getAccountUserTeams parameters: - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - name: sort in: query description: Field by which to sort the results. schema: type: string enum: - name - $ref: '#/components/parameters/sortOrder' responses: 200: description: User teams retrieved content: {} security: - Api-Key: [] Bearer: [] /account/teams: get: tags: - user summary: Retrieve a list of teams in the authenticated account description: Retrieve a list of teams in the authenticated account operationId: getAccountTeams parameters: - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - name: sort in: query description: Field by which to sort the results. schema: type: string enum: - name - $ref: '#/components/parameters/sortOrder' responses: 200: description: Account teams retrieved content: {} security: - Api-Key: [] Bearer: [] /account/teams/{id}: get: tags: - user summary: Retrieve a single team from the account description: Retrieve a single team from the account operationId: getAccountTeam parameters: - name: id in: path description: ID of the team required: true schema: type: integer format: int64 responses: 200: description: Team retrieved content: application/json: schema: $ref: '#/components/schemas/Team' security: - Api-Key: [] Bearer: [] /account/enquirySources: get: tags: - user summary: Retrieve a list of enquiry sources in the authenticated account description: Retrieve a list of enquiry sources in the authenticated account operationId: getAccountEnquirySources parameters: - name: sort in: query description: Field by which to sort the results. schema: type: string enum: - name - $ref: '#/components/parameters/sortOrder' responses: 200: description: Enquiry Sources retrieved content: {} security: - Api-Key: [] Bearer: [] post: tags: - user summary: Add a new Enquiry Source type description: Add a new Enquiry Source type operationId: addEnquirySource requestBody: description: Enquiry Source object content: application/json: schema: $ref: '#/components/schemas/AddUpdateEnquirySource' required: true responses: 201: description: Enquiry Source created content: application/json: schema: $ref: '#/components/schemas/EnquirySource' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /account/enquirySources/{id}: get: tags: - user summary: Retrieve a single enquiry source description: Retrieve a single enquiry source operationId: getAccountEnquirySource parameters: - name: id in: path description: ID of the enquiry source required: true schema: type: integer format: int64 responses: 200: description: Enquiry Source retrieved content: application/json: schema: $ref: '#/components/schemas/EnquirySource' security: - Api-Key: [] Bearer: [] put: tags: - user summary: Update an Enquiry Source type description: Update an Enquiry Source type operationId: updateEnquirySource parameters: - name: id in: path description: ID of the enquiry source required: true schema: type: integer format: int64 requestBody: description: Enquiry Source object content: application/json: schema: $ref: '#/components/schemas/AddUpdateEnquirySource' required: true responses: 200: description: Enquiry Source updated content: application/json: schema: $ref: '#/components/schemas/EnquirySource' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /account/pricing: get: tags: - user summary: Retrieve pricing information for the authenticated account description: Retrieve pricing information for the authenticated account operationId: getAccountPricing responses: 200: description: Account pricing retrieved content: application/json: schema: $ref: '#/components/schemas/AccountPricing' security: - Api-Key: [] Bearer: [] /account/upcomingOpenHomes: get: tags: - user summary: Retrieve a list of upcoming open homes for the authenticated account description: Retrieve a list of upcoming open homes for the authenticated account operationId: getAccountUpcomingOpenHomes parameters: - name: days in: query description: Number of days to look ahead and back (default 7) schema: type: integer format: int64 - name: includeRecent in: query description: Include recently completed open homes schema: type: boolean - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' responses: 200: description: Open Homes retrieved content: {} security: - Api-Key: [] Bearer: [] /account/folders/filingCabinet: get: tags: - user summary: Retrieve a list of folders available in the Filing Cabinet for this account description: Retrieve a list of folders available in the Filing Cabinet for this account operationId: getAccountFilingCabinetFolders parameters: - name: sort in: query description: Field by which to sort the results. schema: type: string enum: - name - $ref: '#/components/parameters/sortOrder' - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' responses: 200: description: Folders retrieved content: {} security: - Api-Key: [] Bearer: [] /account/branches: get: tags: - user summary: Retrieve a list of branches configured for this account description: Retrieve a list of branches configured for this account operationId: getAccountBranches parameters: - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' responses: 200: description: Branches retrieved content: {} security: - Api-Key: [] Bearer: [] /account/propertyPortals: get: tags: - user summary: Retrieve a list of property portals for this account description: Retrieve a list of property portals to which this account can publish properties operationId: getAccountPortals parameters: - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' responses: 200: description: Portals retrieved content: {} security: - Api-Key: [] Bearer: [] /account/trustAccounts: get: tags: - user summary: Retrieve a list of trust accounts for this account description: Retrieve a list of trust accounts for this account operationId: getTrustAccounts parameters: - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' responses: 200: description: Trust accounts retrieved content: {} security: - Api-Key: [] Bearer: [] /logout: delete: tags: - user summary: Log out from the current user session description: Log out from the current user session operationId: logout responses: 204: description: Logged out successfully content: {} security: - Api-Key: [] Bearer: [] /verifyPassword: post: tags: - user summary: Verify the authenticated user's password description: Verify the authenticated user's password operationId: verifyUserPassword requestBody: description: User's password content: application/json: {} required: true responses: 200: description: API Call completed successfully content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /sso: get: tags: - user summary: Generate a single-sign-on URL description: Generate a single-sign-on URL for the VaultRE web application operationId: getSSOUrl responses: 200: description: URL retrieved content: {} security: - Api-Key: [] Bearer: [] /properties: get: tags: - properties summary: Retrieve a list of properties description: Retrieve a list of properties operationId: getProperties parameters: - $ref: '#/components/parameters/suburbs' - $ref: '#/components/parameters/modifiedSince' - $ref: '#/components/parameters/modifiedBefore' - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - name: sort in: query description: Field by which to sort the results. schema: type: string enum: - inserted - modified - suburb - $ref: '#/components/parameters/sortOrder' responses: 200: description: Properties retrieved content: {} security: - Api-Key: [] Bearer: [] /properties/{id}: get: tags: - properties summary: Retrieve a single property description: Retrieve a single property operationId: getProperty 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/PropertyExtended' security: - Api-Key: [] Bearer: [] delete: tags: - properties summary: Delete a property description: Delete a property operationId: deleteProperty parameters: - name: id in: path description: ID of the property required: true schema: type: integer format: int64 responses: 204: description: Property deleted content: {} 400: description: Invalid data content: '*/*': schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] /properties/{salelease}: get: tags: - properties summary: Retrieve a list of sale or lease properties description: Retrieve a list of sale or lease properties operationId: getPropertiesLife parameters: - name: salelease in: path description: sale/lease required: true schema: type: string enum: - sale - lease - $ref: '#/components/parameters/modifiedSince' - $ref: '#/components/parameters/modifiedBefore' - $ref: '#/components/parameters/priceReducedSince' - $ref: '#/components/parameters/priceReducedBefore' - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - name: sort in: query description: Field by which to sort the results. schema: type: string enum: - inserted - modified - suburb - searchPrice - $ref: '#/components/parameters/sortOrder' - $ref: '#/components/parameters/suburbs' - $ref: '#/components/parameters/branches' - $ref: '#/components/parameters/types' - name: contactStaff in: query description: Filter properties with contactStaff containing this user ID style: form explode: false schema: type: array items: type: integer format: int64 - name: status in: query description: Filter by a list of statuses style: form explode: false schema: type: array items: type: string enum: - prospect - appraisal - listing - conditional - listingOrConditional - unconditional - name: propertyClass in: query description: Filter by a list of property classes style: form explode: false schema: type: array items: type: string enum: - residential - commercial - business - rural - holidayRental - land - name: availableOnly in: query description: Only used to if propertyClass equals 'commercial' schema: type: boolean - name: tenantedInvestmentOnly in: query description: Only used to if propertyClass equals 'commercial' schema: type: boolean - name: minBed in: query description: Filter properties greater than or equal to min beds schema: type: integer format: int64 - name: minBath in: query description: Filter properties greater than or equal to min baths schema: type: integer format: int64 - name: minCar in: query description: Filter properties greater than or equal to min car spaces schema: type: integer format: int64 - name: minPricePerSqm in: query description: Filter properties greater than or equal to min price per sqm schema: type: number format: float - name: maxPricePerSqm in: query description: Filter properties less than or equal to max price per sqm schema: type: number format: float - name: minPrice in: query description: Filter properties greater than or equal to min price schema: type: number format: float - name: maxPrice in: query description: Filter properties less than or equal to max price schema: type: number format: float - name: minLand in: query description: Filter properties greater than or equal to min land. Must supply an area type. schema: type: number format: float - name: maxLand in: query description: Filter properties less than or equal to max land. Must supply an area type. schema: type: number format: float - name: areaType in: query description: Specify the units for minLand, maxLand filters schema: type: string enum: - sqm - acre - hectare - name: minFloor in: query description: Filter properties greater than or equal to min floor. schema: type: number format: float - name: maxFloor in: query description: Filter properties less than or equal to max floor. schema: type: number format: float responses: 200: description: Properties retrieved content: {} security: - Api-Key: [] Bearer: [] /properties/{id}/notes: get: tags: - properties summary: Retrieve a list of notes attached to this property description: Retrieve a list of notes attached to this property operationId: getPropertyNotes parameters: - name: id in: path description: ID of the property required: true schema: type: integer format: int64 - name: types in: query description: Filter notes with type IDs style: form explode: false schema: type: array items: type: integer format: int64 - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - name: sort in: query description: Field by which to sort the results. schema: type: string enum: - inserted - $ref: '#/components/parameters/sortOrder' responses: 200: description: Property notes retrieved content: {} security: - Api-Key: [] Bearer: [] post: tags: - properties summary: Add a note to this property description: Add a note to this property operationId: addPropertyNote requestBody: description: Property note object content: application/json: schema: $ref: '#/components/schemas/AddPropertyNote' required: true responses: 201: description: Property note created content: application/json: schema: $ref: '#/components/schemas/PropertyNote' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /properties/{propertyid}/notes/{id}: get: tags: - properties summary: Retrieve a single property note description: Retrieve a single property note operationId: getPropertyNote parameters: - name: propertyid in: path description: ID of the property required: true schema: type: integer format: int64 - name: id in: path description: ID of the note required: true schema: type: integer format: int64 responses: 200: description: Property note retrieved content: application/json: schema: $ref: '#/components/schemas/PropertyNote' security: - Api-Key: [] Bearer: [] put: tags: - properties summary: Update a property note description: Update a property note operationId: updatePropertyNote parameters: - name: propertyid in: path description: ID of the property required: true schema: type: integer format: int64 - name: id in: path description: ID of the note required: true schema: type: integer format: int64 requestBody: description: Property Note object content: application/json: schema: $ref: '#/components/schemas/UpdatePropertyNote' required: true responses: 200: description: Note updated content: application/json: schema: $ref: '#/components/schemas/ContactNote' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' 403: description: User does not have permission to modify property notes or note is read-only content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body delete: tags: - properties summary: Delete a property note description: Delete a property note operationId: deletePropertyNote parameters: - name: propertyid in: path description: ID of the property required: true schema: type: integer format: int64 - name: id in: path description: ID of the note required: true schema: type: integer format: int64 responses: 204: description: Property Note deleted content: {} 400: description: Invalid data content: '*/*': schema: $ref: '#/components/schemas/SuccessOrError' 403: description: User does not have permission to delete property notes or note is read-only content: '*/*': schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] /properties/{id}/photos: get: tags: - properties summary: Retrieve a list of photos for this property description: Retrieve a list of photos for this property operationId: getPropertyPhotos parameters: - name: id in: path description: ID of the property required: true schema: type: integer format: int64 - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' responses: 200: description: Property photos retrieved content: {} security: - Api-Key: [] Bearer: [] post: tags: - properties summary: Upload a new photo to this property description: Upload a new photo to this property. This endpoint is suitable for smaller files (<5MB). For larger files use POST /properties/{id}/photos/upload operationId: addPropertyPhoto parameters: - name: id in: path description: ID of the property required: true schema: type: integer format: int64 requestBody: content: multipart/form-data: schema: required: - photo - published - type properties: photo: type: string description: The photo to be uploaded (GIF/PNG/JPG only) format: binary caption: type: string description: The caption for the photo published: type: boolean description: Is the photo published or unpublished type: type: string description: The type of photo enum: - Photograph - Floorplan required: true responses: 201: description: Photo uploaded content: application/json: schema: $ref: '#/components/schemas/PropertyPhoto' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] /properties/{id}/photos/upload: post: tags: - properties summary: Upload a new photo to this property description: Upload a new photo to this property. This endpoint returns an upload_url where the file data can be PUT. Can be used for large files. operationId: addPropertyPhotoUpload parameters: - name: id in: path description: ID of the property required: true schema: type: integer format: int64 requestBody: description: Photo upload object content: application/json: schema: $ref: '#/components/schemas/PropertyPhotoUpload' required: true responses: 201: description: Photo record created. Photo data can now be posted to the returned URL. content: application/json: schema: $ref: '#/components/schemas/FileToBeUploaded' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /properties/{propertyid}/photos/{id}: get: tags: - properties summary: Retrieve a single photo for this property description: Retrieve a single photo for this property operationId: getPropertyPhoto parameters: - name: propertyid in: path description: ID of the property required: true schema: type: integer format: int64 - name: id in: path description: ID of the photo required: true schema: type: integer format: int64 responses: 200: description: Property photo retrieved content: application/json: schema: $ref: '#/components/schemas/PropertyPhoto' security: - Api-Key: [] Bearer: [] delete: tags: - properties summary: Delete a photo attached to this property description: Delete a photo attached to this property operationId: deletePropertyPhoto parameters: - name: propertyid in: path description: ID of the property required: true schema: type: integer format: int64 - name: id in: path description: ID of the photo required: true schema: type: integer format: int64 responses: 204: description: Property photo deleted content: {} 400: description: Invalid data content: '*/*': schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] /properties/{propertyid}/photos/{id}/tags: get: tags: - properties summary: Retrieve a list of tags for this property photo description: Retrieve a list of tags for this property photo, derived from Machine Learning analysis of property photos operationId: getPropertyPhotoTags parameters: - name: propertyid in: path description: ID of the property required: true schema: type: integer format: int64 - name: id in: path description: ID of the photo required: true schema: type: integer format: int64 - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - name: sort in: query description: Field by which to sort the results. schema: type: string enum: - name - confidence - $ref: '#/components/parameters/sortOrder' - name: minimumConfidence in: query description: Only return tags with a confidence greater than or equal to this number schema: type: number format: float - name: maximumConfidence in: query description: Only return tags with a confidence less than or equal to this number schema: type: number format: float responses: 200: description: Photo tags retrieved content: {} security: - Api-Key: [] Bearer: [] /properties/{id}/tags: get: tags: - properties summary: Retrieve a list of tags for this property description: Retrieve a list of tags for this property, derived from Machine Learning analysis of property photos operationId: getPropertyTags parameters: - name: id in: path description: ID of the property required: true schema: type: integer format: int64 - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - name: sort in: query description: Field by which to sort the results. schema: type: string enum: - name - confidence - $ref: '#/components/parameters/sortOrder' - name: minimumConfidence in: query description: Only return tags with a confidence greater than or equal to this number schema: type: number format: float - name: maximumConfidence in: query description: Only return tags with a confidence less than or equal to this number schema: type: number format: float responses: 200: description: Property tags retrieved content: {} security: - Api-Key: [] Bearer: [] /properties/{id}/categories: get: tags: - properties summary: Retrieve a list of categories to which this property belongs description: Retrieve a list of categories to which this property belongs operationId: getPropertyCategories parameters: - name: id in: path description: ID of the property required: true schema: type: integer format: int64 - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - name: sort in: query description: Field by which to sort the results. schema: type: string enum: - name - $ref: '#/components/parameters/sortOrder' responses: 200: description: Property categories retrieved content: {} security: - Api-Key: [] Bearer: [] /properties/{id}/activityLog: get: tags: - properties summary: Retrieve the activity log for a property description: Retrieve the activity log for a property operationId: getPropertyActivityLog parameters: - name: id in: path description: ID of the property required: true schema: type: integer format: int64 - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' responses: 200: description: Activity Log retrieved content: {} security: - Api-Key: [] Bearer: [] /properties/{id}/files: get: tags: - properties summary: Retrieve a list of files attached to this property description: Retrieve a list of files attached to this property operationId: getPropertyFiles parameters: - name: id in: path description: ID of the property required: true schema: type: integer format: int64 - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - 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: Property files retrieved content: {} security: - Api-Key: [] Bearer: [] /properties/{id}/{salelease}/{lifeid}/matchingContacts: get: tags: - properties summary: Retrieve a list of contacts with requirements matching this property description: Retrieve a list of contacts with requirements matching this property operationId: getPropertyMatchingContacts parameters: - name: id in: path description: ID of the property required: true schema: type: integer format: int64 - name: salelease in: path description: Sale or lease life record required: true schema: type: string enum: - sale - lease - name: lifeid in: path description: ID of the property life required: true schema: type: integer format: int64 - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - name: sort in: query description: Field by which to sort the results. schema: type: string enum: - inserted - modified - firstName - lastName - touched - $ref: '#/components/parameters/sortOrder' responses: 200: description: Matching contacts retrieved content: {} security: - Api-Key: [] Bearer: [] /properties/{id}/{salelease}/{lifeid}/files: get: tags: - properties summary: Retrieve a list of files attached to this property life description: Retrieve a list of files attached to this property life operationId: getPropertyFilesLife parameters: - name: id in: path description: ID of the property required: true schema: type: integer format: int64 - name: lifeid in: path description: ID of the property life required: true schema: type: integer format: int64 - name: salelease in: path description: Sale or lease life record required: true schema: type: string enum: - sale - lease - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - 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: Property files retrieved content: {} security: - Api-Key: [] Bearer: [] post: tags: - properties summary: Attach a file to this property life description: Attach a file to this property life. This endpoint is suitable for smaller files (<5MB). For larger files use POST /properties/{id}/{salelease}/{lifeid}/files/upload operationId: addPropertyFileLife parameters: - name: id in: path description: ID of the property required: true schema: type: integer format: int64 - name: lifeid in: path description: ID of the property life required: true schema: type: integer format: int64 - name: salelease in: path description: Sale or lease life record required: true schema: type: string enum: - sale - lease requestBody: content: multipart/form-data: schema: required: - file properties: folders: type: array description: Assign file to these folders items: type: integer format: int64 file: type: string description: The file to be uploaded format: binary required: true responses: 201: description: File attached successfully content: application/json: schema: $ref: '#/components/schemas/PropertyFileWithFolders' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] /properties/{id}/{salelease}/{lifeid}/files/upload: post: tags: - properties summary: Attach a file to this property life description: Attach a file to this property life. This endpoint returns an upload_url where the file data can be PUT. Can be used for large files. operationId: addPropertyFileLifeUpload parameters: - name: id in: path description: ID of the property required: true schema: type: integer format: int64 - name: lifeid in: path description: ID of the property life required: true schema: type: integer format: int64 - name: salelease in: path description: Sale or lease life record required: true schema: type: string enum: - sale - lease requestBody: description: File upload object content: application/json: schema: $ref: '#/components/schemas/PropertyFileWithFoldersUpload' required: true responses: 201: description: File record created. File data can now be posted to the returned URL. content: application/json: schema: $ref: '#/components/schemas/FileToBeUploaded' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /properties/{propertyid}/{salelease}/{lifeid}/files/{id}: get: tags: - properties summary: Retrieve a single file attached to this property life description: Retrieve a single file attached to this property life operationId: getPropertyFileLife parameters: - name: propertyid in: path description: ID of the property required: true schema: type: integer format: int64 - name: lifeid in: path description: ID of the property life required: true schema: type: integer format: int64 - name: salelease in: path description: Sale or lease life record required: true schema: type: string enum: - sale - lease - name: id in: path description: ID of the file required: true schema: type: integer format: int64 responses: 200: description: Property file retrieved content: application/json: schema: $ref: '#/components/schemas/PropertyFileWithFolders' security: - Api-Key: [] Bearer: [] delete: tags: - properties summary: Delete a single file attached to this property life description: Delete a single file attached to this property life operationId: deletePropertyFileLife parameters: - name: propertyid in: path description: ID of the property required: true schema: type: integer format: int64 - name: lifeid in: path description: ID of the property life required: true schema: type: integer format: int64 - name: salelease in: path description: Sale or lease life record required: true schema: type: string enum: - sale - lease - name: id in: path description: ID of the file required: true schema: type: integer format: int64 responses: 204: description: Property file deleted content: {} 400: description: Invalid data content: '*/*': schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] /properties/{id}/{salelease}/{lifeid}/feedback: get: tags: - properties - feedback summary: Retrieve a list of property feedback attached to this life description: Retrieve a list of property feedback attached to this life operationId: getPropertyFeedbackLife parameters: - name: id in: path description: ID of the property required: true schema: type: integer format: int64 - name: salelease in: path description: Sale or lease life record required: true schema: type: string enum: - sale - lease - name: lifeid in: path description: ID of the property life required: true schema: type: integer format: int64 - name: feedbackAfter in: query description: Filter feedback occurring on or after this date schema: type: string format: date - name: feedbackBefore in: query description: Filter feedback occurring before this date schema: type: string format: date - $ref: '#/components/parameters/modifiedSince' - $ref: '#/components/parameters/modifiedBefore' - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - name: sort in: query description: Field by which to sort the results. schema: type: string enum: - inserted - feedbackDate - $ref: '#/components/parameters/sortOrder' - name: contacts in: query description: Filter feedback from certain contacts style: form explode: false schema: type: array items: type: integer format: int64 responses: 200: description: Property feedback retrieved content: {} security: - Api-Key: [] Bearer: [] post: tags: - properties - feedback summary: Attach feedback to this property life description: Attach feedback to this property life operationId: attachFeedbackToPropertyLife parameters: - name: id in: path description: ID of the property required: true schema: type: integer format: int64 - name: salelease in: path description: Sale or lease life record required: true schema: type: string enum: - sale - lease - name: lifeid in: path description: ID of the property life required: true schema: type: integer format: int64 requestBody: description: Property Feedback object content: application/json: schema: $ref: '#/components/schemas/AddPropertyFeedback' required: true responses: 201: description: Feedback attached content: application/json: schema: $ref: '#/components/schemas/ContactNoteAndContactExtended' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /properties/{propertyid}/{salelease}/{lifeid}/feedback/{id}: get: tags: - properties - feedback summary: Retrieve a property feedback item attached to this life description: Retrieve a property feedback item attached to this life operationId: getSinglePropertyFeedbackLife parameters: - name: propertyid in: path description: ID of the property required: true schema: type: integer format: int64 - name: salelease in: path description: Sale or lease life record required: true schema: type: string enum: - sale - lease - name: lifeid in: path description: ID of the property life required: true schema: type: integer format: int64 - name: id in: path description: ID of the feedback required: true schema: type: integer format: int64 responses: 200: description: Property feedback retrieved content: application/json: schema: $ref: '#/components/schemas/ContactNoteAndContactExtended' security: - Api-Key: [] Bearer: [] put: tags: - properties - feedback summary: Update a feedback item description: Update a feedback item operationId: updateFeedback parameters: - name: propertyid in: path description: ID of the property required: true schema: type: integer format: int64 - name: salelease in: path description: Sale or lease life record required: true schema: type: string enum: - sale - lease - name: lifeid in: path description: ID of the property life required: true schema: type: integer format: int64 - name: id in: path description: ID of the feedback required: true schema: type: integer format: int64 requestBody: description: Property Feedback object content: application/json: schema: $ref: '#/components/schemas/UpdatePropertyFeedback' required: true responses: 200: description: Feedback updated content: application/json: schema: $ref: '#/components/schemas/ContactNoteAndContactExtended' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body delete: tags: - properties - feedback summary: Delete a property feedback item description: Delete a property feedback item operationId: deletePropertyFeedback parameters: - name: propertyid in: path description: ID of the property required: true schema: type: integer format: int64 - name: salelease in: path description: Sale or lease life record required: true schema: type: string enum: - sale - lease - name: lifeid in: path description: ID of the property life required: true schema: type: integer format: int64 - name: id in: path description: ID of the feedback required: true schema: type: integer format: int64 responses: 204: description: Feedback deleted content: {} 400: description: Invalid data content: '*/*': schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] /properties/{id}/{salelease}/{lifeid}/feedback/summary: get: tags: - properties - feedback summary: Retrieve a summary of property feedback feedback attached to this life description: Retrieve a summary showing how many times each contact has provided feedback/interacted with this property life operationId: getPropertyFeedbackLifeSummary parameters: - name: id in: path description: ID of the property required: true schema: type: integer format: int64 - name: salelease in: path description: Sale or lease life record required: true schema: type: string enum: - sale - lease - name: lifeid in: path description: ID of the property life required: true schema: type: integer format: int64 - name: feedbackAfter in: query description: Filter feedback occurring on or after this date schema: type: string format: date - name: feedbackBefore in: query description: Filter feedback occurring before this date schema: type: string format: date - $ref: '#/components/parameters/modifiedSince' - $ref: '#/components/parameters/modifiedBefore' - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - name: sort in: query description: Field by which to sort the results. schema: type: string enum: - count - $ref: '#/components/parameters/sortOrder' responses: 200: description: Property feedback summary retrieved content: {} security: - Api-Key: [] Bearer: [] /properties/{id}/{salelease}/{lifeid}/openHomes: get: tags: - properties summary: Retrieve a list of open homes attached to this life description: Retrieve a list of open homes attached to this life operationId: getPropertyOpenHomes parameters: - name: id in: path description: ID of the property required: true schema: type: integer format: int64 - name: salelease in: path description: Sale or lease life record required: true schema: type: string enum: - sale - lease - name: lifeid in: path description: ID of the property life required: true schema: type: integer format: int64 - name: startingAfter in: query description: Filter open homes occurring on or after this date schema: type: string format: date - name: startingBefore in: query description: Filter open homes occurring before this date schema: type: string format: date - name: userid in: path description: Filter open homes attached to this user required: true schema: type: integer format: int64 - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - name: sort in: query description: Field by which to sort the results. schema: type: string enum: - start - $ref: '#/components/parameters/sortOrder' responses: 200: description: Open Homes retrieved content: {} security: - Api-Key: [] Bearer: [] post: tags: - properties summary: Create a new open home for this property life description: Create a new open home for this property life operationId: addOpenHome parameters: - name: id in: path description: ID of the property required: true schema: type: integer format: int64 - name: salelease in: path description: Sale or lease life record required: true schema: type: string enum: - sale - lease - name: lifeid in: path description: ID of the property life required: true schema: type: integer format: int64 requestBody: description: Open Home object content: application/json: schema: $ref: '#/components/schemas/AddUpdateOpenHome' required: true responses: 201: description: Open Home created content: application/json: schema: $ref: '#/components/schemas/OpenHome' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /properties/{propertyid}/{salelease}/{lifeid}/openHomes/{id}: get: tags: - properties summary: Retrieve a single open home attached to this life description: Retrieve a single open home attached to this life operationId: getPropertyOpenHome parameters: - name: propertyid in: path description: ID of the property required: true schema: type: integer format: int64 - name: salelease in: path description: Sale or lease life record required: true schema: type: string enum: - sale - lease - name: lifeid in: path description: ID of the property life required: true schema: type: integer format: int64 - name: id in: path description: ID of the open home required: true schema: type: integer format: int64 responses: 200: description: Open Home retrieved content: application/json: schema: $ref: '#/components/schemas/OpenHome' security: - Api-Key: [] Bearer: [] put: tags: - properties summary: Update an open home for this property life description: Update an open home for this property life operationId: updateOpenHome parameters: - name: propertyid in: path description: ID of the property required: true schema: type: integer format: int64 - name: salelease in: path description: Sale or lease life record required: true schema: type: string enum: - sale - lease - name: lifeid in: path description: ID of the property life required: true schema: type: integer format: int64 - name: id in: path description: ID of the open home required: true schema: type: integer format: int64 requestBody: description: Open Home object content: application/json: schema: $ref: '#/components/schemas/AddUpdateOpenHome' required: true responses: 200: description: Open Home updated content: application/json: schema: $ref: '#/components/schemas/OpenHome' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body delete: tags: - properties summary: Delete an open home description: Delete an open home operationId: deleteOpenHome parameters: - name: propertyid in: path description: ID of the property required: true schema: type: integer format: int64 - name: salelease in: path description: Sale or lease life record required: true schema: type: string enum: - sale - lease - name: lifeid in: path description: ID of the property life required: true schema: type: integer format: int64 - name: id in: path description: ID of the open home required: true schema: type: integer format: int64 responses: 204: description: Open Home deleted content: {} 400: description: Invalid data content: '*/*': schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] /properties/{id}/sale/{lifeid}/owners: get: tags: - properties - contacts summary: Retrieve a list of owners attached to this property life description: Retrieve a list of owners attached to this property life operationId: getPropertyLifeOwners parameters: - name: id in: path description: ID of the property required: true schema: type: integer format: int64 - name: lifeid in: path description: ID of the property life required: true schema: type: integer format: int64 - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' responses: 200: description: Owners retrieved content: {} security: - Api-Key: [] Bearer: [] put: tags: - properties - contacts summary: Update owners for this property life description: Update owners for this property life operationId: updateOwnersForProperty parameters: - name: id in: path description: ID of the property required: true schema: type: integer format: int64 - name: lifeid in: path description: ID of the property life required: true schema: type: integer format: int64 requestBody: description: Items object containing array of contact IDs content: application/json: {} required: true responses: 200: description: Owners updated content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body post: tags: - properties - contacts summary: Attach an owner to this property life description: Attach an owner to this property life operationId: attachOwnerToProperty parameters: - name: id in: path description: ID of the property required: true schema: type: integer format: int64 - name: lifeid in: path description: ID of the property life required: true schema: type: integer format: int64 requestBody: description: Contact ID object content: application/json: schema: $ref: '#/components/schemas/ID' required: true responses: 200: description: Owner attached content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /properties/{propertyid}/lease/{lifeid}/landlords/{id}: delete: tags: - properties - contacts summary: Remove a landlord from this property life description: Remove a landlord from this property life operationId: deleteLandlordForProperty parameters: - name: propertyid in: path description: ID of the property required: true schema: type: integer format: int64 - name: lifeid in: path description: ID of the property life required: true schema: type: integer format: int64 - name: id in: path description: ID of the landlord required: true schema: type: integer format: int64 responses: 204: description: Landlord removed content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] /properties/{propertyid}/lease/{lifeid}/tenancy/{tenancyid}/tenants/{id}: delete: tags: - properties - contacts summary: Remove a tenant from this property life description: Remove a tenant from this property life operationId: deleteTenantForProperty parameters: - name: propertyid in: path description: ID of the property required: true schema: type: integer format: int64 - name: lifeid in: path description: ID of the property life required: true schema: type: integer format: int64 - name: tenancyid in: path description: ID of the tenancy required: true schema: type: integer format: int64 - name: id in: path description: ID of the tenant required: true schema: type: integer format: int64 responses: 204: description: Tenant removed content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] /properties/{propertyid}/sale/{lifeid}/owners/{id}: delete: tags: - properties - contacts summary: Remove an owner from this property life description: Remove an owner from this property life operationId: deleteOwnerForProperty parameters: - name: propertyid in: path description: ID of the property required: true schema: type: integer format: int64 - name: lifeid in: path description: ID of the property life required: true schema: type: integer format: int64 - name: id in: path description: ID of the owner required: true schema: type: integer format: int64 responses: 204: description: Owner removed content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] /properties/{propertyid}/sale/{lifeid}/purchasers/{id}: delete: tags: - properties - contacts summary: Remove a purchaser from this property life description: Remove a purchaser from this property life operationId: deletePurchaserForProperty parameters: - name: propertyid in: path description: ID of the property required: true schema: type: integer format: int64 - name: lifeid in: path description: ID of the property life required: true schema: type: integer format: int64 - name: id in: path description: ID of the purchaser required: true schema: type: integer format: int64 responses: 204: description: Purchaser removed content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] /properties/{id}/lease/{lifeid}/landlords: get: tags: - properties - contacts summary: Retrieve a list of landlords attached to this property life description: Retrieve a list of landlords attached to this property life operationId: getPropertyLifeLandlords parameters: - name: id in: path description: ID of the property required: true schema: type: integer format: int64 - name: lifeid in: path description: ID of the property life required: true schema: type: integer format: int64 - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' responses: 200: description: Landlords retrieved content: {} security: - Api-Key: [] Bearer: [] put: tags: - properties - contacts summary: Update landlords for this property life description: Update landlords for this property life operationId: updateLandlordsForProperty parameters: - name: id in: path description: ID of the property required: true schema: type: integer format: int64 - name: lifeid in: path description: ID of the property life required: true schema: type: integer format: int64 requestBody: description: Items object containing array of contact IDs content: application/json: {} required: true responses: 200: description: Landlords updated content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body post: tags: - properties - contacts summary: Attach a landlord to this property life description: Attach a landlord to this property life operationId: attachLandlordToProperty parameters: - name: id in: path description: ID of the property required: true schema: type: integer format: int64 - name: lifeid in: path description: ID of the property life required: true schema: type: integer format: int64 requestBody: description: Contact ID object content: application/json: schema: $ref: '#/components/schemas/ID' required: true responses: 200: description: Landlord attached content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /properties/{id}/sale/{lifeid}/purchasers: get: tags: - properties - contacts summary: Retrieve a list of purchasers attached to this property life description: Retrieve a list of purchasers attached to this property life operationId: getPropertyLifePurchasers parameters: - name: id in: path description: ID of the property required: true schema: type: integer format: int64 - name: lifeid in: path description: ID of the property life required: true schema: type: integer format: int64 - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' responses: 200: description: Purchasers retrieved content: {} security: - Api-Key: [] Bearer: [] put: tags: - properties - contacts summary: Update purchasers for this property life description: Update purchasers for this property life operationId: updatePurchasersForProperty parameters: - name: id in: path description: ID of the property required: true schema: type: integer format: int64 - name: lifeid in: path description: ID of the property life required: true schema: type: integer format: int64 requestBody: description: Items object containing array of contact IDs content: application/json: {} required: true responses: 200: description: Purchasers updated content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body post: tags: - properties - contacts summary: Attach a purchaser to this property life description: Attach a purchaser to this property life operationId: attachPurchaserToProperty parameters: - name: id in: path description: ID of the property required: true schema: type: integer format: int64 - name: lifeid in: path description: ID of the property life required: true schema: type: integer format: int64 requestBody: description: Contact ID object content: application/json: schema: $ref: '#/components/schemas/ID' required: true responses: 200: description: Purchaser attached content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /properties/{id}/lease/{lifeid}/tenancy/{tenancyid}/tenants: get: tags: - properties - contacts summary: Retrieve a list of tenants attached to this tenancy description: Retrieve a list of tenants attached to this tenancy operationId: getPropertyLifeTenancyTenants parameters: - name: id in: path description: ID of the property required: true schema: type: integer format: int64 - name: lifeid in: path description: ID of the property life required: true schema: type: integer format: int64 - name: tenancyid in: path description: ID of the tenancy required: true schema: type: integer format: int64 - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' responses: 200: description: Tenants retrieved content: {} security: - Api-Key: [] Bearer: [] put: tags: - properties - contacts summary: Update tenants for this tenancy description: Update tenants for this tenancy operationId: updateTenantsForProperty parameters: - name: id in: path description: ID of the property required: true schema: type: integer format: int64 - name: lifeid in: path description: ID of the property life required: true schema: type: integer format: int64 - name: tenancyid in: path description: ID of the tenancy required: true schema: type: integer format: int64 requestBody: description: Items object containing array of contact IDs content: application/json: {} required: true responses: 200: description: Tenants updated content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body post: tags: - properties - contacts summary: Attach a tenant to this tenancy description: Attach a tenant to this tenancy operationId: attachTenantToTenancy parameters: - name: id in: path description: ID of the property required: true schema: type: integer format: int64 - name: lifeid in: path description: ID of the property life required: true schema: type: integer format: int64 - name: tenancyid in: path description: ID of the tenancy required: true schema: type: integer format: int64 requestBody: description: Contact ID object content: application/json: schema: $ref: '#/components/schemas/ID' required: true responses: 200: description: Tenant attached content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /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/priceReducedSince' - $ref: '#/components/parameters/priceReducedBefore' - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - $ref: '#/components/parameters/published' - $ref: '#/components/parameters/publishedOnPortals' - $ref: '#/components/parameters/listingAuthoritySince' - $ref: '#/components/parameters/listingAuthorityBefore' - $ref: '#/components/parameters/webLiveDateSince' - $ref: '#/components/parameters/webLiveDateBefore' - name: status in: query description: Filter by a list of statuses style: form explode: false schema: type: array items: type: string enum: - prospect - appraisal - listing - conditional - listingOrConditional - unconditional - 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: [] 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 /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: [] /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 /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: [] /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/priceReducedSince' - $ref: '#/components/parameters/priceReducedBefore' - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - $ref: '#/components/parameters/published' - $ref: '#/components/parameters/publishedOnPortals' - $ref: '#/components/parameters/leasedSince' - $ref: '#/components/parameters/leasedBefore' - $ref: '#/components/parameters/listingAuthoritySince' - $ref: '#/components/parameters/listingAuthorityBefore' - $ref: '#/components/parameters/webLiveDateSince' - $ref: '#/components/parameters/webLiveDateBefore' - name: status in: query description: Filter by a list of statuses style: form explode: false schema: type: array items: type: string enum: - prospect - appraisal - management - name: availableOnly in: query description: Filter available lease properties only schema: type: boolean - name: leasedOnly in: query description: Filter leased properties only schema: type: boolean - 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: [] 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 /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: [] /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 /properties/{id}/features: get: tags: - properties summary: Retrieve features for this property description: Retrieve features for this property operationId: getPropertyFeatures parameters: - name: id in: path description: ID of the property required: true schema: type: integer format: int64 responses: 200: description: Features retrieved content: {} security: - Api-Key: [] Bearer: [] put: tags: - properties summary: Update features for this property description: Update features for this property operationId: updatePropertyFeatures parameters: - name: id in: path description: ID of the property required: true schema: type: integer format: int64 requestBody: description: Items object containing array of feature groups content: application/json: {} required: true responses: 200: description: Features updated content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /properties/land/sale: get: tags: - landProperties summary: Retrieve a list of land properties description: Retrieve a list of land properties operationId: getLandProperties parameters: - $ref: '#/components/parameters/modifiedSince' - $ref: '#/components/parameters/modifiedBefore' - $ref: '#/components/parameters/priceReducedSince' - $ref: '#/components/parameters/priceReducedBefore' - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - $ref: '#/components/parameters/published' - $ref: '#/components/parameters/publishedOnPortals' - $ref: '#/components/parameters/listingAuthoritySince' - $ref: '#/components/parameters/listingAuthorityBefore' - $ref: '#/components/parameters/webLiveDateSince' - $ref: '#/components/parameters/webLiveDateBefore' - name: status in: query description: Filter by a list of statuses style: form explode: false schema: type: array items: type: string enum: - prospect - appraisal - listing - conditional - listingOrConditional - unconditional - 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: [] post: tags: - landProperties summary: Add a land property description: Add a land property operationId: addLandProperty requestBody: description: Land property object content: application/json: schema: $ref: '#/components/schemas/AddUpdateLandProperty' required: true responses: 201: description: Property created content: application/json: schema: $ref: '#/components/schemas/LandPropertyExtended' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /properties/land/sale/available: get: tags: - landProperties summary: Retrieve a list of available land properties description: Retrieve a list of available land properties. This is the same as the /properties/land/sale endpoint, with certain filters pre-applied. operationId: getAvailableLandProperties 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: [] /properties/land/sale/{id}: get: tags: - landProperties summary: Retrieve a single land property description: Retrieve a single land property operationId: getLandProperty 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/LandPropertyExtended' security: - Api-Key: [] Bearer: [] put: tags: - landProperties summary: Update a land property description: Update a land property operationId: updateLandProperty parameters: - name: id in: path description: ID of the property required: true schema: type: integer format: int64 requestBody: description: Land property object content: application/json: schema: $ref: '#/components/schemas/AddUpdateLandProperty' required: true responses: 200: description: Property updated content: application/json: schema: $ref: '#/components/schemas/LandPropertyExtended' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /properties/land/sale/sold: get: tags: - landProperties summary: Retrieve a list of sold land properties description: Retrieve a list of sold land properties operationId: getLandSoldProperties 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: [] /properties/rural/sale: get: tags: - ruralProperties summary: Retrieve a list of rural properties description: Retrieve a list of rural properties operationId: getRuralProperties parameters: - $ref: '#/components/parameters/modifiedSince' - $ref: '#/components/parameters/modifiedBefore' - $ref: '#/components/parameters/priceReducedSince' - $ref: '#/components/parameters/priceReducedBefore' - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - $ref: '#/components/parameters/published' - $ref: '#/components/parameters/publishedOnPortals' - $ref: '#/components/parameters/listingAuthoritySince' - $ref: '#/components/parameters/listingAuthorityBefore' - $ref: '#/components/parameters/webLiveDateSince' - $ref: '#/components/parameters/webLiveDateBefore' - name: status in: query description: Filter by a list of statuses style: form explode: false schema: type: array items: type: string enum: - prospect - appraisal - listing - conditional - listingOrConditional - unconditional - 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: [] post: tags: - ruralProperties summary: Add a rural property description: Add a rural property operationId: addRuralProperty requestBody: description: Rural property object content: application/json: schema: $ref: '#/components/schemas/AddUpdateRuralProperty' required: true responses: 201: description: Property created content: application/json: schema: $ref: '#/components/schemas/RuralPropertyExtended' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /properties/rural/sale/available: get: tags: - ruralProperties summary: Retrieve a list of available rural properties description: Retrieve a list of available rural properties. This is the same as the /properties/rural/sale endpoint, with certain filters pre-applied. operationId: getAvailableRuralProperties 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: [] /properties/rural/sale/{id}: get: tags: - ruralProperties summary: Retrieve a single rural property description: Retrieve a single rural property operationId: getRuralProperty 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/RuralPropertyExtended' security: - Api-Key: [] Bearer: [] put: tags: - ruralProperties summary: Update a rural property description: Update a rural property operationId: updateRuralProperty parameters: - name: id in: path description: ID of the property required: true schema: type: integer format: int64 requestBody: description: Rural property object content: application/json: schema: $ref: '#/components/schemas/AddUpdateRuralProperty' required: true responses: 200: description: Property updated content: application/json: schema: $ref: '#/components/schemas/RuralPropertyExtended' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /properties/rural/sale/sold: get: tags: - ruralProperties summary: Retrieve a list of sold rural properties description: Retrieve a list of sold rural properties operationId: getRuralSoldProperties 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: [] /properties/commercial/sale: get: tags: - commercialProperties summary: Retrieve a list of commercial sale properties description: Retrieve a list of commercial sale properties operationId: getCommercialSaleProperties parameters: - $ref: '#/components/parameters/modifiedSince' - $ref: '#/components/parameters/modifiedBefore' - $ref: '#/components/parameters/priceReducedSince' - $ref: '#/components/parameters/priceReducedBefore' - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - $ref: '#/components/parameters/published' - $ref: '#/components/parameters/publishedOnPortals' - $ref: '#/components/parameters/listingAuthoritySince' - $ref: '#/components/parameters/listingAuthorityBefore' - $ref: '#/components/parameters/webLiveDateSince' - $ref: '#/components/parameters/webLiveDateBefore' - name: status in: query description: Filter by a list of statuses style: form explode: false schema: type: array items: type: string enum: - prospect - appraisal - listing - conditional - listingOrConditional - unconditional - 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: [] post: tags: - commercialProperties summary: Add a commercial sale property description: Add a commercial sale property operationId: addCommercialSaleProperty requestBody: description: Commercial Sale property object content: application/json: schema: $ref: '#/components/schemas/AddUpdateCommercialSaleProperty' required: true responses: 201: description: Property created content: application/json: schema: $ref: '#/components/schemas/CommercialSalePropertyExtended' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /properties/commercial/sale/available: get: tags: - commercialProperties summary: Retrieve a list of available commercial sale properties description: Retrieve a list of available commercial sale properties. This is the same as the /properties/commercial/sale endpoint, with certain filters pre-applied. operationId: getAvailableCommercialSaleProperties 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: [] /properties/commercial/sale/{id}: get: tags: - commercialProperties summary: Retrieve a single commercial sale property description: Retrieve a single commercial sale property operationId: getCommercialSaleProperty 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/CommercialSalePropertyExtended' security: - Api-Key: [] Bearer: [] put: tags: - commercialProperties summary: Update a commercial sale property description: Update a commercial sale property operationId: updateCommercialSaleProperty parameters: - name: id in: path description: ID of the property required: true schema: type: integer format: int64 requestBody: description: Commercial sale property object content: application/json: schema: $ref: '#/components/schemas/AddUpdateCommercialSaleProperty' required: true responses: 200: description: Property updated content: application/json: schema: $ref: '#/components/schemas/CommercialSalePropertyExtended' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /properties/commercial/sale/sold: get: tags: - commercialProperties summary: Retrieve a list of sold commercial properties description: Retrieve a list of sold commercial properties operationId: getCommercialSoldProperties 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: [] /properties/commercial/lease/leased: get: tags: - commercialProperties summary: Retrieve a list of leased commercial properties description: Retrieve a list of leased commercial properties operationId: getCommercialLeasedProperties 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: [] /properties/commercial/lease: get: tags: - commercialProperties summary: Retrieve a list of commercial lease properties description: Retrieve a list of commercial lease properties operationId: getCommercialLeaseProperties parameters: - $ref: '#/components/parameters/modifiedSince' - $ref: '#/components/parameters/modifiedBefore' - $ref: '#/components/parameters/priceReducedSince' - $ref: '#/components/parameters/priceReducedBefore' - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - $ref: '#/components/parameters/published' - $ref: '#/components/parameters/publishedOnPortals' - $ref: '#/components/parameters/listingAuthoritySince' - $ref: '#/components/parameters/listingAuthorityBefore' - $ref: '#/components/parameters/webLiveDateSince' - $ref: '#/components/parameters/webLiveDateBefore' - name: status in: query description: Filter by a list of statuses style: form explode: false schema: type: array items: type: string enum: - prospect - appraisal - listing - conditional - listingOrConditional - unconditional - management - 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: availableOnly in: query description: Filter available lease properties only schema: type: boolean - 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: [] post: tags: - commercialProperties summary: Add a commercial lease property description: Add a commercial lease property operationId: addCommercialLeaseProperty requestBody: description: Commercial Lease property object content: application/json: schema: $ref: '#/components/schemas/AddUpdateCommercialLeaseProperty' required: true responses: 201: description: Property created content: application/json: schema: $ref: '#/components/schemas/CommercialLeasePropertyExtended' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /properties/commercial/lease/available: get: tags: - commercialProperties summary: Retrieve a list of available commercial lease properties description: Retrieve a list of available commercial lease properties. This is the same as the /properties/commercial/lease endpoint, with certain filters pre-applied. operationId: getAvailableCommercialLeaseProperties 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: availableOnly in: query description: Filter available lease properties only schema: type: boolean - 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: [] /properties/commercial/lease/{id}: get: tags: - commercialProperties summary: Retrieve a single commercial lease property description: Retrieve a single commercial lease property operationId: getCommercialLeaseProperty 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/CommercialLeasePropertyExtended' security: - Api-Key: [] Bearer: [] put: tags: - commercialProperties summary: Update a commercial lease property description: Update a commercial lease property operationId: updateCommercialLeaseProperty parameters: - name: id in: path description: ID of the property required: true schema: type: integer format: int64 requestBody: description: Commercial property object content: application/json: schema: $ref: '#/components/schemas/AddUpdateCommercialLeaseProperty' required: true responses: 200: description: Property updated content: application/json: schema: $ref: '#/components/schemas/CommercialLeasePropertyExtended' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /properties/business/sale: get: tags: - businessProperties summary: Retrieve a list of business properties description: Retrieve a list of business properties operationId: getBusinessProperties parameters: - $ref: '#/components/parameters/modifiedSince' - $ref: '#/components/parameters/modifiedBefore' - $ref: '#/components/parameters/priceReducedSince' - $ref: '#/components/parameters/priceReducedBefore' - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - $ref: '#/components/parameters/published' - $ref: '#/components/parameters/publishedOnPortals' - $ref: '#/components/parameters/listingAuthoritySince' - $ref: '#/components/parameters/listingAuthorityBefore' - $ref: '#/components/parameters/webLiveDateSince' - $ref: '#/components/parameters/webLiveDateBefore' - name: status in: query description: Filter by a list of statuses style: form explode: false schema: type: array items: type: string enum: - prospect - appraisal - listing - conditional - listingOrConditional - unconditional - 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: [] post: tags: - businessProperties summary: Add a business property description: Add a business property operationId: addBusinessProperty requestBody: description: Business property object content: application/json: schema: $ref: '#/components/schemas/AddUpdateBusinessProperty' required: true responses: 201: description: Property created content: application/json: schema: $ref: '#/components/schemas/BusinessPropertyExtended' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /properties/business/sale/available: get: tags: - businessProperties summary: Retrieve a list of available business properties description: Retrieve a list of available business properties. This is the same as the /properties/business/sale endpoint, with certain filters pre-applied. operationId: getAvailableBusinessProperties 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: [] /properties/business/sale/{id}: get: tags: - businessProperties summary: Retrieve a single business property description: Retrieve a single business property operationId: getBusinessProperty 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/BusinessPropertyExtended' security: - Api-Key: [] Bearer: [] put: tags: - businessProperties summary: Update a business property description: Update a business property operationId: updateBusinessProperty parameters: - name: id in: path description: ID of the property required: true schema: type: integer format: int64 requestBody: description: Business property object content: application/json: schema: $ref: '#/components/schemas/AddUpdateBusinessProperty' required: true responses: 200: description: Property updated content: application/json: schema: $ref: '#/components/schemas/BusinessPropertyExtended' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /properties/business/sale/sold: get: tags: - businessProperties summary: Retrieve a list of sold business properties description: Retrieve a list of sold business properties operationId: getBusinessSoldProperties 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: [] /properties/holidayRental/lease: get: tags: - holidayRentalProperties summary: Retrieve a list of holiday rental properties description: Retrieve a list of holiday rental properties operationId: getHolidayRentalProperties parameters: - $ref: '#/components/parameters/modifiedSince' - $ref: '#/components/parameters/modifiedBefore' - $ref: '#/components/parameters/priceReducedSince' - $ref: '#/components/parameters/priceReducedBefore' - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - $ref: '#/components/parameters/published' - $ref: '#/components/parameters/publishedOnPortals' - $ref: '#/components/parameters/listingAuthoritySince' - $ref: '#/components/parameters/listingAuthorityBefore' - $ref: '#/components/parameters/webLiveDateSince' - $ref: '#/components/parameters/webLiveDateBefore' - name: status in: query description: Filter by a list of statuses style: form explode: false schema: type: array items: type: string 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 - $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: [] post: tags: - holidayRentalProperties summary: Add a holiday rental property description: Add a holiday rental property operationId: addHolidayRentalProperty requestBody: description: Holiday rental property object content: application/json: schema: $ref: '#/components/schemas/AddUpdateHolidayRentalProperty' required: true responses: 201: description: Property created content: application/json: schema: $ref: '#/components/schemas/HolidayRentalPropertyExtended' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /properties/holidayRental/lease/available: get: tags: - holidayRentalProperties summary: Retrieve a list of available holiday rental properties description: Retrieve a list of available holiday rental properties. This is the same as the /properties/holidayRental/lease endpoint, with certain filters pre-applied. operationId: getAvailableHolidayRentalProperties 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: [] /properties/holidayRental/lease/{id}: get: tags: - holidayRentalProperties summary: Retrieve a single holiday rental property description: Retrieve a single holiday rental property operationId: getHolidayRentalProperty 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/HolidayRentalPropertyExtended' security: - Api-Key: [] Bearer: [] put: tags: - holidayRentalProperties summary: Update a holiday rental property description: Update a holiday rental property operationId: updateHolidayRentalProperty parameters: - name: id in: path description: ID of the property required: true schema: type: integer format: int64 requestBody: description: Holiday Rental property object content: application/json: schema: $ref: '#/components/schemas/AddUpdateHolidayRentalProperty' required: true responses: 200: description: Property updated content: application/json: schema: $ref: '#/components/schemas/HolidayRentalPropertyExtended' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /properties/{class}/{salelease}/{id}/custom: get: tags: - properties summary: Retrieve a list of custom fields for a given property description: Retrieve a list of custom fields for a given property operationId: getPropertyCustomFields parameters: - name: class in: path description: Class of property required: true schema: type: string - name: salelease in: path description: Filter by sale or lease properties required: true schema: type: string enum: - sale - lease - name: id in: path description: ID of the property required: true schema: type: integer format: int64 - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' responses: 200: description: Custom fields retrieved content: {} security: - Api-Key: [] Bearer: [] put: tags: - properties summary: Update the custom fields for this property description: Update the custom fields for this property operationId: updatePropertyCustomFields parameters: - name: class in: path description: Class of property required: true schema: type: string - name: salelease in: path description: Filter by sale or lease properties required: true schema: type: string enum: - sale - lease - name: id in: path description: ID of the property required: true schema: type: integer format: int64 requestBody: description: Items object containing array of custom fields content: application/json: {} required: true responses: 200: description: Custom fields updated content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /suggest/suburb: get: tags: - suggest summary: Search for a suburb description: Search for a suburb operationId: suggestSuburb parameters: - name: term in: query description: The suburb name (partial match) or postcode (exact match) to search by required: true schema: type: string - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - name: sort in: query description: Field by which to sort the results. schema: type: string enum: - name - $ref: '#/components/parameters/sortOrder' responses: 200: description: Suggestions retrieved content: {} security: - Api-Key: [] Bearer: [] /suggest/address/corelogic: get: tags: - suggest - corelogic summary: Search for an address in CoreLogic description: Search for an address in CoreLogic operationId: suggestAddressCoreLogic parameters: - name: term in: query description: The term to search by required: true schema: type: string - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' responses: 200: description: Suggestions retrieved content: {} security: - Api-Key: [] Bearer: [] /corelogic/properties/{id}: get: tags: - corelogic summary: Retrieve a property from CoreLogic description: Retrieve a property from CoreLogic using the CoreLogic property ID operationId: getCoreLogicProperty parameters: - name: id in: path description: CoreLogic ID of the property required: true schema: type: integer format: int64 responses: 200: description: Property retrieved content: application/json: schema: $ref: '#/components/schemas/CoreLogicProperty' security: - Api-Key: [] Bearer: [] /corelogic/properties/{id}/avm: get: tags: - corelogic summary: Retrieve an AVM estimate for this CoreLogic property description: Retrieve an AVM estimate for this CoreLogic property operationId: getCoreLogicAvm parameters: - name: id in: path description: CoreLogic ID of the property required: true schema: type: integer format: int64 responses: 200: description: AVM retrieved content: application/json: schema: $ref: '#/components/schemas/CoreLogicAvm' 403: description: User does not have correct CoreLogic subscription level content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] /corelogic/properties/{id}/rentalavm: get: tags: - corelogic summary: Retrieve a rental AVM estimate for this CoreLogic property description: Retrieve a rental AVM estimate for this CoreLogic property operationId: getCoreLogicRentalAvm parameters: - name: id in: path description: CoreLogic ID of the property required: true schema: type: integer format: int64 responses: 200: description: Rental AVM retrieved content: application/json: schema: $ref: '#/components/schemas/CoreLogicRentalAvm' 403: description: User does not have correct CoreLogic subscription level content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] /corelogic/disclaimers: get: tags: - corelogic summary: Retrieve CoreLogic disclaimers description: Retrieve CoreLogic disclaimers operationId: getCoreLogicDisclaimers responses: 200: description: Disclaimers retrieved content: {} security: - Api-Key: [] Bearer: [] /search/properties/address: get: tags: - search summary: Search for properties by address description: Search for properties by address operationId: searchProperties parameters: - name: term in: query description: The term to search by required: true schema: type: string - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' responses: 200: description: Search results retrieved content: {} security: - Api-Key: [] Bearer: [] /search/contacts/name: get: tags: - search summary: Search for contacts by name description: Search for contacts by name operationId: searchContactsName parameters: - name: term in: query description: The term to search by required: true schema: type: string - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - name: archived in: query description: Filter by archived status schema: type: boolean - name: marketingUser in: query description: Filter by marketing user schema: type: integer format: int64 - name: marketingUserPosition in: query description: Used in conjuction with marketingUser, filter by marketing user position ID schema: type: integer format: int64 responses: 200: description: Search results retrieved content: {} security: - Api-Key: [] Bearer: [] /search/contacts/phone: get: tags: - search summary: Search for contacts by phone number (exact match) description: Search for contacts by phone number (exact match) operationId: searchContactsPhone parameters: - name: term in: query description: The term to search by required: true schema: type: string - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - name: archived in: query description: Filter by archived status schema: type: boolean - name: marketingUser in: query description: Filter by marketing user schema: type: integer format: int64 - name: marketingUserPosition in: query description: Used in conjuction with marketingUser, filter by marketing user position ID schema: type: integer format: int64 responses: 200: description: Search results retrieved content: {} security: - Api-Key: [] Bearer: [] /search/contacts/email: get: tags: - search summary: Search for contacts by email address (exact match) description: Search for contacts by email address (exact match) operationId: searchContactsEmail parameters: - name: term in: query description: The term to search by required: true schema: type: string - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - name: archived in: query description: Filter by archived status schema: type: boolean - name: marketingUser in: query description: Filter by marketing user schema: type: integer format: int64 - name: marketingUserPosition in: query description: Used in conjuction with marketingUser, filter by marketing user position ID schema: type: integer format: int64 responses: 200: description: Search results retrieved content: {} security: - Api-Key: [] Bearer: [] /search/buildings/name: get: tags: - search summary: Search for buildings by name description: Search for buildings by name operationId: searchBuildingsName parameters: - name: term in: query description: The term to search by required: true schema: type: string - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' responses: 200: description: Search results retrieved content: {} security: - Api-Key: [] Bearer: [] /calendar/events: get: tags: - calendar summary: Get a list of calendar events for the user or account description: Get a list of calendar events for the user or account operationId: getCalendarEvents parameters: - name: startingAfter in: query description: Filter events starting on or after this datetime schema: type: string format: date-time - name: startingBefore in: query description: Filter events starting before this datetime schema: type: string format: date-time - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - name: sort in: query description: Field by which to sort the results. schema: type: string enum: - start - $ref: '#/components/parameters/sortOrder' responses: 200: description: Calendar events retrieved content: {} security: - Api-Key: [] Bearer: [] post: tags: - calendar summary: Add a calendar event description: Add a calendar event operationId: addCalendarEvent requestBody: description: Calendar event object content: application/json: schema: $ref: '#/components/schemas/AddUpdateCalendarEvent' required: true responses: 201: description: Calendar event created content: application/json: schema: $ref: '#/components/schemas/CalendarEvent' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /calendar/events/{id}: get: tags: - calendar summary: Get a single calendar event description: Get a single calendar event operationId: getCalendarEvent parameters: - name: id in: path description: The ID of the calendar event required: true schema: type: integer format: int64 responses: 200: description: Calendar event retrieved content: application/json: schema: $ref: '#/components/schemas/CalendarEvent' security: - Api-Key: [] Bearer: [] put: tags: - calendar summary: Update a calendar event description: Update a calendar event operationId: updateCalendarEvent parameters: - name: id in: path description: ID of the calendar event required: true schema: type: integer format: int64 requestBody: description: Calendar event object content: application/json: schema: $ref: '#/components/schemas/AddUpdateCalendarEvent' required: true responses: 200: description: Calendar event updated content: application/json: schema: $ref: '#/components/schemas/CalendarEvent' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body delete: tags: - calendar summary: Delete a calendar event description: Delete a calendar event operationId: deleteCalendarEvent parameters: - name: id in: path description: ID of the calendar event required: true schema: type: integer format: int64 responses: 204: description: Calendar event deleted content: {} 400: description: Invalid data content: '*/*': schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] /tasks: get: tags: - tasks summary: Get a list of tasks for the account or user description: Get a list of tasks for the account or user operationId: getTasks parameters: - name: startingAfter in: query description: Filter tasks starting on or after this datetime schema: type: string format: date-time - name: startingBefore in: query description: Filter tasks starting before this datetime schema: type: string format: date-time - name: userid in: query description: Filter tasks assigned to this user ID schema: type: integer format: int64 - name: completed in: query description: Filter tasks by completed status schema: type: boolean - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - name: sort in: query description: Field by which to sort the results. schema: type: string enum: - start - $ref: '#/components/parameters/sortOrder' responses: 200: description: Tasks retrieved content: {} security: - Api-Key: [] Bearer: [] post: tags: - tasks summary: Add a task description: Add a task operationId: addTask requestBody: description: Task object content: application/json: schema: $ref: '#/components/schemas/AddTask' required: true responses: 201: description: Task created content: application/json: schema: $ref: '#/components/schemas/Task' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /tasks/{id}: get: tags: - tasks summary: Get a single task description: Get a single task operationId: getTask parameters: - name: id in: path description: The ID of the task required: true schema: type: integer format: int64 responses: 200: description: Task retrieved content: application/json: schema: $ref: '#/components/schemas/Task' security: - Api-Key: [] Bearer: [] put: tags: - tasks summary: Update a task description: Update a task operationId: updateTask parameters: - name: id in: path description: ID of the task required: true schema: type: integer format: int64 requestBody: description: Task object content: application/json: schema: $ref: '#/components/schemas/UpdateTask' required: true responses: 200: description: Task updated content: application/json: schema: $ref: '#/components/schemas/Task' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body delete: tags: - tasks summary: Delete a task description: Delete a task operationId: deleteTask parameters: - name: id in: path description: ID of the task required: true schema: type: integer format: int64 responses: 204: description: Task deleted content: {} 400: description: Invalid data content: '*/*': schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] /tasks/{id}/complete: put: tags: - tasks summary: Mark the task as completed description: Mark the task as uncompleted operationId: completeTask parameters: - name: id in: path description: ID of the task required: true schema: type: integer format: int64 responses: 200: description: Task completed content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] /tasks/{id}/uncomplete: put: tags: - tasks summary: Mark the task as incomplete description: Mark the task as incomplete operationId: uncompleteTask parameters: - name: id in: path description: ID of the task required: true schema: type: integer format: int64 responses: 200: description: Task marked as incomplete content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] /enquiries: get: tags: - enquiries summary: Get a list of enquiries from the holding area description: Get a list of enquiries from the holding area operationId: getEnquiries parameters: - name: enquiryDateSince in: query description: Filter enquiries occuring on or after this datetime schema: type: string format: date-time - name: enquiryDateBefore in: query description: Filter enquiries occuring before this datetime schema: type: string format: date-time - name: processed in: query description: Filter enquiries that have been processed or unprocessed schema: type: boolean - name: saleLifeId in: query description: Filter enquiries for this sale life ID schema: type: integer format: int64 - name: leaseLifeId in: query description: Filter enquiries for this lease life ID schema: type: integer format: int64 - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - name: sort in: query description: Field by which to sort the results. schema: type: string enum: - enquiryDate - $ref: '#/components/parameters/sortOrder' responses: 200: description: Tasks retrieved content: {} security: - Api-Key: [] Bearer: [] post: tags: - enquiries summary: Submit a listing enquiry description: Submit a listing enquiry (e.g. from a franchise/portal site). If you are submitting enquiries from your "office website", please use the value "OFFICEWEBSITE" for the "source" field. operationId: addEnquiry requestBody: description: Enquiry object content: application/json: schema: $ref: '#/components/schemas/AddEnquiry' required: true responses: 201: description: Enquiry received successfully content: application/json: schema: $ref: '#/components/schemas/Enquiry' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /property/portalStats/cumulative: put: tags: - propertyStats summary: Update cumulative portal stats for a property description: Update cumulative portal stats for a property (e.g. listing views). If you want to track views day by day, use this endpoint. operationId: updatePortalStatsCumulative requestBody: description: Property Portal Stats object. Please note that "statDate" is a Date field (YYYY-MM-DD) and "total" represents the total figures for that date content: application/json: schema: $ref: '#/components/schemas/UpdatePortalStatsCumulative' required: true responses: 200: description: Stats updated successfully content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /property/portalStats/total: put: tags: - propertyStats summary: Update total portal stats for a property description: Update total portal stats for a property (e.g. listing views). If you only track a total figure for stats, use this endpoint. operationId: updatePortalStatsTotal requestBody: description: Property Portal Stats object content: application/json: schema: $ref: '#/components/schemas/UpdatePortalStatsTotal' required: true responses: 200: description: Stats updated successfully content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /properties/{id}/sale/{lifeid}/offerConditions: get: tags: - properties - propertyOfferConditions summary: Retrieve a list of offer conditions for this property life description: Retrieve a list of offer conditions for this property life operationId: getPropertyLifeOfferConditions parameters: - name: id in: path description: ID of the property required: true schema: type: integer format: int64 - name: lifeid in: path description: ID of the property life required: true schema: type: integer format: int64 - name: userid in: query description: Items related to this user ID schema: type: integer format: int64 - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - name: sort in: query description: Sort items by field schema: type: string enum: - due - $ref: '#/components/parameters/sortOrder' responses: 200: description: Offer Conditions retrieved content: {} security: - Api-Key: [] Bearer: [] /properties/{propertyid}/sale/{lifeid}/offerConditions/{id}: get: tags: - properties - propertyOfferConditions summary: Retrieve an offer condition for this property life description: Retrieve an offer condition for this property life operationId: getPropertyLifeOfferCondition parameters: - name: propertyid in: path description: ID of the property required: true schema: type: integer format: int64 - name: lifeid in: path description: ID of the property life required: true schema: type: integer format: int64 - name: id in: path description: ID of the offer condition required: true schema: type: integer format: int64 responses: 200: description: Offer Condition retrieved content: application/json: schema: $ref: '#/components/schemas/PropertyOfferCondition' security: - Api-Key: [] Bearer: [] put: tags: - properties - propertyOfferConditions summary: Update a property's offer condition description: Update a property's offer condition operationId: updatePropertyOfferCondition parameters: - name: propertyid in: path description: ID of the property required: true schema: type: integer format: int64 - name: lifeid in: path description: ID of the property life required: true schema: type: integer format: int64 - name: id in: path description: ID of the offer condition required: true schema: type: integer format: int64 requestBody: description: PropertyOfferCondition object content: application/json: schema: $ref: '#/components/schemas/UpdatePropertyOfferCondition' required: true responses: 200: description: Offer Condition updated content: application/json: schema: $ref: '#/components/schemas/PropertyOfferCondition' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /properties/{propertyid}/sale/{lifeid}/offerConditions/{id}/complete: put: tags: - properties - propertyOfferConditions summary: Complete a property's offer condition description: Complete a property's offer condition operationId: completePropertyOfferCondition parameters: - name: propertyid in: path description: ID of the property required: true schema: type: integer format: int64 - name: lifeid in: path description: ID of the property life required: true schema: type: integer format: int64 - name: id in: path description: ID of the offer condition required: true schema: type: integer format: int64 responses: 200: description: Offer Condition updated content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] /properties/{propertyid}/sale/{lifeid}/offerConditions/{id}/uncomplete: put: tags: - properties - propertyOfferConditions summary: Uncomplete a property's offer condition description: Uncomplete a property's offer condition operationId: uncompletePropertyOfferCondition parameters: - name: propertyid in: path description: ID of the property required: true schema: type: integer format: int64 - name: lifeid in: path description: ID of the property life required: true schema: type: integer format: int64 - name: id in: path description: ID of the offer condition required: true schema: type: integer format: int64 responses: 200: description: Offer Condition updated content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] /properties/{class}/{salelease}/upcomingOpenHomes: get: tags: - properties summary: Retrieve a list of upcoming open homes description: Retrieve a list of upcoming open homes operationId: getUpcomingOpenHomes parameters: - name: class in: path description: Class of property required: true schema: type: string enum: - residential - rural - holidayRental - name: salelease in: path description: Filter by sale or lease properties required: true schema: type: string enum: - sale - lease - name: days in: query description: Number of days to look ahead (default 7) schema: type: integer format: int64 - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' responses: 200: description: Open Homes retrieved content: {} security: - Api-Key: [] Bearer: [] /properties/lookup/{propertyReference}: get: tags: - properties summary: Look up property information based on property reference description: Look up property information based on the property reference sent to portal sites (e.g. <uniqueID>) operationId: lookupPropertyByPortalReference parameters: - name: propertyReference in: path description: Property reference to look up required: true schema: type: string responses: 200: description: Property retrieved content: application/json: schema: $ref: '#/components/schemas/PropertyExtended' security: - Api-Key: [] Bearer: [] /properties/{id}/sale/statusChange/listing: put: tags: - properties summary: Convert a prospect or appraisal sale property to listing status description: Convert a prospect or appraisal sale property to listing status operationId: convertToListing parameters: - name: id in: path description: ID of the property required: true schema: type: integer format: int64 responses: 200: description: Status changed successfully content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' 400: description: Status could not be changed. content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] /properties/{id}/lease/statusChange/management: put: tags: - properties summary: Convert a prospect or appraisal lease property to management status description: Convert a prospect or appraisal lease property to management status operationId: convertToManagement parameters: - name: id in: path description: ID of the property required: true schema: type: integer format: int64 responses: 200: description: Status changed successfully content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' 400: description: Status could not be changed. content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] /templates/email: get: tags: - templates summary: Retrieve a list of email templates description: Retrieve a list of email templates operationId: getEmailTemplates parameters: - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' responses: 200: description: Email templates retrieved content: {} security: - Api-Key: [] Bearer: [] post: tags: - templates summary: Create an email template description: Create an email template operationId: addEmailTemplate requestBody: description: Email template object content: '*/*': schema: $ref: '#/components/schemas/AddUpdateEmailTemplate' required: true responses: 201: description: Email template created content: application/json: schema: $ref: '#/components/schemas/EmailTemplate' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /templates/email/{id}: get: tags: - templates summary: Retrieve a single email template description: Retrieve a single email template operationId: getEmailTemplate parameters: - name: id in: path description: ID of the template required: true schema: type: integer format: int64 responses: 200: description: Email Template retrieved content: application/json: schema: $ref: '#/components/schemas/EmailTemplate' security: - Api-Key: [] Bearer: [] put: tags: - templates summary: Update an email template description: Update an email template operationId: updateEmailTemplate parameters: - name: id in: path description: ID of the template required: true schema: type: integer format: int64 requestBody: description: Email template object content: '*/*': schema: $ref: '#/components/schemas/AddUpdateEmailTemplate' required: true responses: 200: description: Email template updated content: application/json: schema: $ref: '#/components/schemas/EmailTemplate' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /templates/sms: get: tags: - templates summary: Retrieve a list of SMS templates description: Retrieve a list of SMS templates operationId: getSMSTemplates parameters: - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' responses: 200: description: SMS templates retrieved content: {} security: - Api-Key: [] Bearer: [] post: tags: - templates summary: Create an SMS template description: Create an SMS template operationId: addSMSTemplate requestBody: description: SMS template object content: '*/*': schema: $ref: '#/components/schemas/AddUpdateSMSTemplate' required: true responses: 201: description: SMS template created content: application/json: schema: $ref: '#/components/schemas/SMSTemplate' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /templates/sms/{id}: get: tags: - templates summary: Retrieve a single SMS template description: Retrieve a single SMS template operationId: getSMSTemplate parameters: - name: id in: path description: ID of the template required: true schema: type: integer format: int64 responses: 200: description: SMS Template retrieved content: application/json: schema: $ref: '#/components/schemas/SMSTemplate' security: - Api-Key: [] Bearer: [] put: tags: - templates summary: Update an SMS template description: Update an SMS template operationId: updateSMSTemplate parameters: - name: id in: path description: ID of the template required: true schema: type: integer format: int64 requestBody: description: SMS template object content: '*/*': schema: $ref: '#/components/schemas/AddUpdateSMSTemplate' required: true responses: 200: description: SMS template updated content: application/json: schema: $ref: '#/components/schemas/SMSTemplate' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /templates/ownerSummary: get: tags: - templates summary: Retrieve a list of owner summary templates description: Retrieve a list of owner summary templates operationId: getOwnerSummaryTemplates parameters: - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' responses: 200: description: Owner Summary templates retrieved content: {} security: - Api-Key: [] Bearer: [] post: tags: - templates summary: Create an Owner Summary template description: Create an Owner Summary template operationId: addOwnerSummaryTemplate requestBody: description: Owner Summary template object content: '*/*': schema: $ref: '#/components/schemas/AddUpdateOwnerSummaryTemplate' required: true responses: 201: description: Owner Summary template created content: application/json: schema: $ref: '#/components/schemas/OwnerSummaryTemplate' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /templates/ownerSummary/{id}: get: tags: - templates summary: Retrieve a single Owner Summary template description: Retrieve a single Owner Summary template operationId: getOwnerSummaryTemplate parameters: - name: id in: path description: ID of the template required: true schema: type: integer format: int64 responses: 200: description: Owner Summary Template retrieved content: application/json: schema: $ref: '#/components/schemas/OwnerSummaryTemplate' security: - Api-Key: [] Bearer: [] put: tags: - templates summary: Update an Owner Summary template description: Update an Owner Summary template operationId: updateOwnerSummaryTemplate parameters: - name: id in: path description: ID of the template required: true schema: type: integer format: int64 requestBody: description: Owner Summary template object content: '*/*': schema: $ref: '#/components/schemas/AddUpdateOwnerSummaryTemplate' required: true responses: 200: description: Owner Summary template updated content: application/json: schema: $ref: '#/components/schemas/OwnerSummaryTemplate' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /properties/{id}/{salelease}/{lifeid}/interest: get: tags: - properties summary: Retrieve a list of contacts and their interest related this property life description: Retrieve a list of contacts and their interest related this property life operationId: getPropertyLifeInterest parameters: - name: id in: path description: ID of the property required: true schema: type: integer format: int64 - name: lifeid in: path description: ID of the property life required: true schema: type: integer format: int64 - name: salelease in: path description: Sale or lease life record required: true schema: type: string enum: - sale - lease - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' responses: 200: description: Property life interest retrieved content: {} security: - Api-Key: [] Bearer: [] /properties/{id}/{salelease}/{lifeid}/interest/{contactid}: get: tags: - properties summary: Retrieve a single contact's interest in this property life description: Retrieve a single contact's interest in this property life operationId: getPropertyLifeInterestItem parameters: - name: id in: path description: ID of the property required: true schema: type: integer format: int64 - name: lifeid in: path description: ID of the property life required: true schema: type: integer format: int64 - name: salelease in: path description: Sale or lease life record required: true schema: type: string enum: - sale - lease - name: contactid in: path description: ID of the contact required: true schema: type: integer format: int64 responses: 200: description: Property life interest retrieved content: application/json: schema: $ref: '#/components/schemas/PropertyLifeInterest' security: - Api-Key: [] Bearer: [] put: tags: - properties summary: Update a contact's interest in this property life description: Update a contact's interest in this property life operationId: updatePropertyLifeInterest parameters: - name: id in: path description: ID of the property required: true schema: type: integer format: int64 - name: lifeid in: path description: ID of the property life required: true schema: type: integer format: int64 - name: salelease in: path description: Sale or lease life record required: true schema: type: string enum: - sale - lease - name: contactid in: path description: ID of the contact required: true schema: type: integer format: int64 requestBody: description: Interest object content: '*/*': schema: $ref: '#/components/schemas/UpdatePropertyLifeInterest' required: true responses: 200: description: Property life interest updated content: {} 201: description: Property life interest added content: {} 400: description: Invalid data content: '*/*': schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /properties/{id}/{salelease}/{lifeid}/enquirySources: get: tags: - properties summary: Retrieve a list of contacts and their source of enquiry related this property life description: Retrieve a list of contacts and their source of enquiry related this property life operationId: getPropertyLifeEnquirySources parameters: - name: id in: path description: ID of the property required: true schema: type: integer format: int64 - name: lifeid in: path description: ID of the property life required: true schema: type: integer format: int64 - name: salelease in: path description: Sale or lease life record required: true schema: type: string enum: - sale - lease - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' responses: 200: description: Property life enquiry sources retrieved content: {} security: - Api-Key: [] Bearer: [] /properties/{id}/{salelease}/{lifeid}/enquirySources/{contactid}: get: tags: - properties summary: Retrieve a single contact's source of enquiry for this property life description: Retrieve a single contact's source of enquiry for this property life operationId: getPropertyLifeEnquirySourcesItem parameters: - name: id in: path description: ID of the property required: true schema: type: integer format: int64 - name: lifeid in: path description: ID of the property life required: true schema: type: integer format: int64 - name: salelease in: path description: Sale or lease life record required: true schema: type: string enum: - sale - lease - name: contactid in: path description: ID of the contact required: true schema: type: integer format: int64 responses: 200: description: Property life enquiry source retrieved content: application/json: schema: $ref: '#/components/schemas/PropertyLifeEnquirySource' security: - Api-Key: [] Bearer: [] put: tags: - properties summary: Update a contact's source of enquiry for this property life description: Update a contact's source of enquiry for this property life operationId: updatePropertyLifeEnquirySource parameters: - name: id in: path description: ID of the property required: true schema: type: integer format: int64 - name: lifeid in: path description: ID of the property life required: true schema: type: integer format: int64 - name: salelease in: path description: Sale or lease life record required: true schema: type: string enum: - sale - lease - name: contactid in: path description: ID of the contact required: true schema: type: integer format: int64 requestBody: description: Enquiry Source object content: '*/*': schema: $ref: '#/components/schemas/UpdatePropertyLifeEnquirySource' required: true responses: 200: description: Property life enquiry source updated content: {} 201: description: Property life enquiry source added content: {} 400: description: Invalid data content: '*/*': schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /contacts/requirements: get: tags: - contacts summary: Retrieve a list of buying/renting requirements across all contacts description: Retrieve a list of buying/renting requirements across all contacts operationId: getContactRequirementsBulk parameters: - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - $ref: '#/components/parameters/modifiedSince' - $ref: '#/components/parameters/modifiedBefore' - name: sort in: query description: Field by which to sort the results. schema: type: string enum: - inserted - modified - $ref: '#/components/parameters/sortOrder' - name: active in: query description: Filter active/inactive requirements schema: type: boolean responses: 200: description: Requirements retrieved content: {} security: - Api-Key: [] Bearer: [] /contacts/marketingUsers: get: tags: - contacts summary: Retrieve a list of contact marketing users across all contacts description: Retrieve a list of contact marketing users across all contacts operationId: getContactMarketingUsersBulk parameters: - name: sort in: query description: Field by which to sort the results. schema: type: string enum: - modified - $ref: '#/components/parameters/sortOrder' - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - $ref: '#/components/parameters/modifiedSince' - $ref: '#/components/parameters/modifiedBefore' responses: 200: description: Marketing Users retrieved content: {} security: - Api-Key: [] Bearer: [] /contacts/currentTenants: get: tags: - contacts - properties summary: Retrieve a list of current tenants across all properties description: Retrieve a list of current tenants across all properties operationId: getCurrentTenants parameters: - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' responses: 200: description: Tenants retrieved content: {} security: - Api-Key: [] Bearer: [] /contacts/currentLandlords: get: tags: - contacts - properties summary: Retrieve a list of current landlords across all properties description: Retrieve a list of current landlords across all properties operationId: getCurrentLandlords parameters: - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' responses: 200: description: Landlords retrieved content: {} security: - Api-Key: [] Bearer: [] /contacts/currentOwners: get: tags: - contacts - properties summary: Retrieve a list of current owners/vendors across all sale properties description: Retrieve a list of current owners/vendors across all sale properties operationId: getCurrentOwners parameters: - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' responses: 200: description: Owners retrieved content: {} security: - Api-Key: [] Bearer: [] /contacts/currentPurchasers: get: tags: - contacts - properties summary: Retrieve a list of current purchasers across all sale properties description: Retrieve a list of current purchasers across all sale properties operationId: getCurrentPurchasers parameters: - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' responses: 200: description: Purchasers retrieved content: {} security: - Api-Key: [] Bearer: [] /contacts/categories: get: tags: - contacts summary: Retrieve a list of contact category mappings across all contacts description: Retrieve a list of contact category mappings across all contacts operationId: getCategoriesContactBulk parameters: - name: sort in: query description: Field by which to sort the results. schema: type: string enum: - modified - $ref: '#/components/parameters/sortOrder' - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - $ref: '#/components/parameters/modifiedSince' - $ref: '#/components/parameters/modifiedBefore' responses: 200: description: Categories retrieved content: {} security: - Api-Key: [] Bearer: [] /maintenance: get: tags: - maintenance summary: Retrieve a list of all maintenance jobs for this account description: Retrieve a list of all maintenance jobs for this account operationId: getAllMaintenance parameters: - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - name: completed in: query description: Filter maintenance jobs by their completed status schema: type: boolean - 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: Maintenance jobs retrieved content: {} security: - Api-Key: [] Bearer: [] /properties/{propertyid}/lease/{lifeid}/maintenance: get: tags: - properties - maintenance summary: Retrieve a list of maintenance jobs for this property life description: Retrieve a list of maintenance jobs for this property life operationId: getMaintenance parameters: - name: propertyid in: path description: ID of the property required: true schema: type: integer format: int64 - name: lifeid in: path description: ID of the lease life required: true schema: type: integer format: int64 - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - name: tenancy in: query description: Filter maintenance jobs for this tenancy id schema: type: integer format: int64 - name: completed in: query description: Filter maintenance jobs by their completed status schema: type: boolean - 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: Maintenance jobs retrieved content: {} security: - Api-Key: [] Bearer: [] post: tags: - properties - maintenance summary: Create a maintenance job description: Create a maintenance job operationId: addMaintenance parameters: - name: propertyid in: path description: ID of the property required: true schema: type: integer format: int64 - name: lifeid in: path description: ID of the lease life required: true schema: type: integer format: int64 requestBody: description: Maintenance job object content: '*/*': schema: $ref: '#/components/schemas/AddMaintenance' required: true responses: 201: description: Maintenance job created content: application/json: schema: $ref: '#/components/schemas/Maintenance' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /properties/{propertyid}/lease/{lifeid}/maintenance/{jobid}: get: tags: - properties - maintenance summary: Retrieve a single maintenance job description: Retrieve a single maintenance job operationId: getMaintenanceJob parameters: - name: propertyid in: path description: ID of the property required: true schema: type: integer format: int64 - name: lifeid in: path description: ID of the lease life required: true schema: type: integer format: int64 - name: jobid in: path description: ID of the maintenance job required: true schema: type: integer format: int64 responses: 200: description: Maintenance job retrieved content: application/json: schema: $ref: '#/components/schemas/Maintenance' security: - Api-Key: [] Bearer: [] put: tags: - properties - maintenance summary: Update a single maintenance job description: Update a single maintenance job operationId: updateMaintenance parameters: - name: propertyid in: path description: ID of the property required: true schema: type: integer format: int64 - name: lifeid in: path description: ID of the lease life required: true schema: type: integer format: int64 - name: jobid in: path description: ID of the maintenance job required: true schema: type: integer format: int64 requestBody: description: Maintenance job object content: application/json: schema: $ref: '#/components/schemas/UpdateMaintenance' required: true responses: 200: description: Maintenance job updated content: application/json: schema: $ref: '#/components/schemas/Maintenance' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body delete: tags: - properties - maintenance summary: Delete a maintenance job description: Delete a maintenance job operationId: deleteMaintenance parameters: - name: propertyid in: path description: ID of the property required: true schema: type: integer format: int64 - name: lifeid in: path description: ID of the lease life required: true schema: type: integer format: int64 - name: jobid in: path description: ID of the maintenance job required: true schema: type: integer format: int64 responses: 204: description: Maintenance job deleted content: {} 400: description: Invalid data content: {} 403: description: User does not have permission to delete maintenance jobs content: '*/*': schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] /properties/{propertyid}/lease/{lifeid}/maintenance/{jobid}/photos: post: tags: - properties - maintenance summary: Add a maintenance job photo description: Add a maintenance job photo operationId: addMaintenancePhoto parameters: - name: propertyid in: path description: ID of the property required: true schema: type: integer format: int64 - name: lifeid in: path description: ID of the lease life required: true schema: type: integer format: int64 - name: jobid in: path description: ID of the maintenance job required: true schema: type: integer format: int64 requestBody: content: multipart/form-data: schema: required: - photo properties: description: type: string description: The description of the maintenance photo photo: type: string description: The photo to be uploaded format: binary required: true responses: 201: description: Maintenance job photo created content: application/json: schema: $ref: '#/components/schemas/MaintenancePhoto' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] /properties/{propertyid}/lease/{lifeid}/maintenance/{jobid}/photos/{id}: get: tags: - properties - maintenance summary: Retrieve a single maintenance job photo description: Retrieve a single maintenance job photo operationId: getMaintenanceJob parameters: - name: propertyid in: path description: ID of the property required: true schema: type: integer format: int64 - name: lifeid in: path description: ID of the lease life required: true schema: type: integer format: int64 - name: jobid in: path description: ID of the maintenance job required: true schema: type: integer format: int64 - name: id in: path description: ID of the maintenance job photo required: true schema: type: integer format: int64 responses: 200: description: Maintenance job photo retrieved content: application/json: schema: $ref: '#/components/schemas/MaintenancePhoto' security: - Api-Key: [] Bearer: [] delete: tags: - properties - maintenance summary: Delete a maintenance job photo description: Delete a maintenance job photo operationId: deleteMaintenancePhoto parameters: - name: propertyid in: path description: ID of the property required: true schema: type: integer format: int64 - name: lifeid in: path description: ID of the lease life required: true schema: type: integer format: int64 - name: jobid in: path description: ID of the maintenance job required: true schema: type: integer format: int64 - name: id in: path description: ID of the maintenance job photo required: true schema: type: integer format: int64 responses: 204: description: Maintenance job photo deleted content: {} 400: description: Invalid data content: {} 403: description: User does not have permission to delete maintenance job photos content: '*/*': schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] /properties/{propertyid}/lease/{lifeid}/maintenance/{jobid}/requests: get: tags: - properties - maintenance summary: Retrieve a list of requests for a maintenance job description: Retrieve a list of requests for a maintenance job operationId: getMaintenanceRequests parameters: - name: propertyid in: path description: ID of the property required: true schema: type: integer format: int64 - name: lifeid in: path description: ID of the lease life required: true schema: type: integer format: int64 - name: jobid in: path description: ID of the maintenance job required: true schema: type: integer format: int64 - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - name: workOrders in: query description: Filter maintenance job requests by work order status schema: type: boolean - name: sort in: query description: Field by which to sort the results. schema: type: string enum: - inserted - $ref: '#/components/parameters/sortOrder' responses: 200: description: Maintenance requests retrieved content: {} security: - Api-Key: [] Bearer: [] post: tags: - properties - maintenance summary: Create a maintenance job request description: Create a maintenance request operationId: addMaintenanceRequest parameters: - name: propertyid in: path description: ID of the property required: true schema: type: integer format: int64 - name: lifeid in: path description: ID of the lease life required: true schema: type: integer format: int64 - name: jobid in: path description: ID of the maintenance job required: true schema: type: integer format: int64 requestBody: description: Maintenance request object content: '*/*': schema: $ref: '#/components/schemas/AddMaintenanceRequest' required: true responses: 201: description: Maintenance request created content: application/json: schema: $ref: '#/components/schemas/MaintenanceRequest' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /properties/{propertyid}/lease/{lifeid}/maintenance/{jobid}/requests/{id}/initiateWorkOrder: put: tags: - properties - maintenance summary: Initiate a maintenance work order description: Initiate a maintenance work order operationId: initiateMaintenceWorkOrder parameters: - name: propertyid in: path description: ID of the property required: true schema: type: integer format: int64 - name: lifeid in: path description: ID of the lease life required: true schema: type: integer format: int64 - name: jobid in: path description: ID of the maintenance job required: true schema: type: integer format: int64 - name: id in: path description: ID of the maintenance request required: true schema: type: integer format: int64 requestBody: description: Work order object content: application/json: schema: type: object properties: subject: type: string bodyHTML: type: string sender: $ref: '#/components/schemas/ID' required: true responses: 200: description: Work order initiated content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /properties/{propertyid}/lease/{lifeid}/maintenance/{jobid}/requests/{id}/complete: put: tags: - properties - maintenance summary: Complete a maintenance work order description: Complete a maintenance work order operationId: completeMaintenceWorkOrder parameters: - name: propertyid in: path description: ID of the property required: true schema: type: integer format: int64 - name: lifeid in: path description: ID of the lease life required: true schema: type: integer format: int64 - name: jobid in: path description: ID of the maintenance job required: true schema: type: integer format: int64 - name: id in: path description: ID of the maintenance request required: true schema: type: integer format: int64 responses: 200: description: Work order completed content: application/json: schema: $ref: '#/components/schemas/Maintenance' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] /properties/{propertyid}/lease/{lifeid}/maintenance/{jobid}/notes: get: tags: - properties - maintenance summary: Retrieve a list of notes for a maintenance job description: Retrieve a list of notes for a maintenance job operationId: getMaintenanceNotes parameters: - name: propertyid in: path description: ID of the property required: true schema: type: integer format: int64 - name: lifeid in: path description: ID of the lease life required: true schema: type: integer format: int64 - name: jobid in: path description: ID of the maintenance job required: true schema: type: integer format: int64 - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - name: sort in: query description: Field by which to sort the results. schema: type: string enum: - inserted - $ref: '#/components/parameters/sortOrder' responses: 200: description: Maintenance notes retrieved content: {} security: - Api-Key: [] Bearer: [] /properties/{propertyid}/lease/{lifeid}/tenancy/{id}/inspections: get: tags: - properties - inspections summary: Retrieve a list of inspections for a tenancy description: Retrieve a list of inspections for a tenancy operationId: getInspections parameters: - name: propertyid in: path description: ID of the property required: true schema: type: integer format: int64 - name: lifeid in: path description: ID of the lease life required: true schema: type: integer format: int64 - name: id in: path description: ID of the tenancy required: true schema: type: integer format: int64 - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - name: sort in: query description: Field by which to sort the results. schema: type: string enum: - inserted - $ref: '#/components/parameters/sortOrder' - name: completed in: query description: Filter inspections by their completed status schema: type: boolean responses: 200: description: Inspections retrieved content: {} security: - Api-Key: [] Bearer: [] post: tags: - properties - inspections summary: Create an inspection description: Create an inspection operationId: addInspection parameters: - name: propertyid in: path description: ID of the property required: true schema: type: integer format: int64 - name: lifeid in: path description: ID of the lease life required: true schema: type: integer format: int64 - name: id in: path description: ID of the tenancy required: true schema: type: integer format: int64 requestBody: description: Inspection object content: application/json: schema: $ref: '#/components/schemas/AddInspection' required: true responses: 201: description: Inspection created content: application/json: schema: $ref: '#/components/schemas/Inspection' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /properties/{propertyid}/lease/{lifeid}/tenancy/{tenancyid}/inspections/{id}: get: tags: - properties - inspections summary: Retrieve a single inspection for a tenancy description: Retrieve a single inspection for a tenancy operationId: getInspection parameters: - name: propertyid in: path description: ID of the property required: true schema: type: integer format: int64 - name: lifeid in: path description: ID of the lease life required: true schema: type: integer format: int64 - name: tenancyid in: path description: ID of the tenancy required: true schema: type: integer format: int64 - name: id in: path description: ID of the inspection required: true schema: type: integer format: int64 responses: 200: description: Inspection retrieved content: application/json: schema: $ref: '#/components/schemas/Inspection' security: - Api-Key: [] Bearer: [] put: tags: - properties - inspections summary: Update an inspection description: Update an inspection operationId: updateInspection parameters: - name: propertyid in: path description: ID of the property required: true schema: type: integer format: int64 - name: lifeid in: path description: ID of the lease life required: true schema: type: integer format: int64 - name: tenancyid in: path description: ID of the tenancy required: true schema: type: integer format: int64 - name: id in: path description: ID of the inspection required: true schema: type: integer format: int64 requestBody: description: Inspection object content: application/json: schema: $ref: '#/components/schemas/UpdateInspection' required: true responses: 200: description: Inspection Updated content: application/json: schema: $ref: '#/components/schemas/Inspection' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body delete: tags: - properties - inspections summary: Delete an inspection description: Delete an inspection operationId: deleteInspection parameters: - name: propertyid in: path description: ID of the property required: true schema: type: integer format: int64 - name: lifeid in: path description: ID of the lease life required: true schema: type: integer format: int64 - name: tenancyid in: path description: ID of the tenancy required: true schema: type: integer format: int64 - name: id in: path description: ID of the inspection required: true schema: type: integer format: int64 responses: 204: description: Inspection deleted content: {} 400: description: Invalid data content: '*/*': schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] /suppliers: get: tags: - suppliers summary: Retrieve a list of suppliers description: Retrieve a list of suppliers operationId: getSuppliers parameters: - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - $ref: '#/components/parameters/modifiedSince' - $ref: '#/components/parameters/modifiedBefore' - 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: Suppliers retrieved content: {} security: - Api-Key: [] Bearer: [] post: tags: - suppliers summary: Create a supplier description: Create a supplier operationId: addSupplier requestBody: description: Supplier object content: '*/*': schema: $ref: '#/components/schemas/AddSupplier' required: true responses: 201: description: Supplier created content: application/json: schema: $ref: '#/components/schemas/SupplierExtended' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /suppliers/{id}: get: tags: - suppliers summary: Retrieve a single supplier description: Retrieve a single supplier operationId: getSupplier parameters: - name: id in: path description: ID of the supplier required: true schema: type: integer format: int64 responses: 200: description: Supplier retrieved content: application/json: schema: $ref: '#/components/schemas/SupplierExtended' security: - Api-Key: [] Bearer: [] put: tags: - suppliers summary: Update a single supplier description: Update a single supplier operationId: updateSupplier parameters: - name: id in: path description: ID of the supplier required: true schema: type: integer format: int64 requestBody: description: Supplier object content: application/json: schema: $ref: '#/components/schemas/UpdateSupplier' required: true responses: 200: description: Supplier updated content: application/json: schema: $ref: '#/components/schemas/SupplierExtended' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body delete: tags: - suppliers summary: Delete a supplier description: Delete a supplier operationId: deleteSupplier parameters: - name: id in: path description: ID of the supplier required: true schema: type: integer format: int64 responses: 204: description: Supplier deleted content: {} 400: description: Invalid data content: {} 403: description: User does not have permission to delete contacts content: '*/*': schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] /suppliers/{id}/insurance: get: tags: - suppliers summary: Retrieve a supplier's insurance description: Retrieve a supplier's insurance operationId: getSupplierInsurance parameters: - name: id in: path description: ID of the supplier required: true schema: type: integer format: int64 responses: 200: description: Supplier insurance retrieved content: application/json: schema: $ref: '#/components/schemas/Insurance' security: - Api-Key: [] Bearer: [] put: tags: - suppliers summary: Update a single supplier's insurance description: Update a single supplier's insurance operationId: updateSupplierInsurance parameters: - name: id in: path description: ID of the supplier required: true schema: type: integer format: int64 requestBody: description: Insurance object content: application/json: schema: $ref: '#/components/schemas/Insurance' required: true responses: 200: description: Insurance updated content: application/json: schema: $ref: '#/components/schemas/Insurance' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /suppliers/{id}/categories: get: tags: - suppliers summary: Retrieve a list of categories to which this supplier belongs description: Retrieve a list of categories to which this supplier belongs operationId: getCategoriesSupplier parameters: - name: id in: path description: ID of the supplier required: true schema: type: integer format: int64 - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - name: sort in: query description: Field by which to sort the results. schema: type: string enum: - name - $ref: '#/components/parameters/sortOrder' responses: 200: description: Supplier categories retrieved content: {} security: - Api-Key: [] Bearer: [] /contacts/{id}/access: post: tags: - contacts summary: Allow a user to access this contact description: Allow a user to access this contact operationId: addContactAccess requestBody: description: Array of user ID's content: application/json: {} required: true responses: 200: description: Contact access successfully updated content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /properties/residential/lease/tenancies: get: tags: - tenancies summary: Retrieve a list of residential tenancies description: Retrieve a list of residential tenancies operationId: getResidentialLeaseTenancies parameters: - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' responses: 200: description: Tenancies retrieved content: {} security: - Api-Key: [] Bearer: [] /bulk/contactNotes: get: tags: - bulk summary: Retrieve a list of contact notes description: Retrieve a list of contact notes operationId: getBulkContactNotes parameters: - name: types in: query description: Filter notes with type IDs style: form explode: false schema: type: array items: type: integer format: int64 - $ref: '#/components/parameters/after' - $ref: '#/components/parameters/pagesize' - $ref: '#/components/parameters/modifiedSince' - $ref: '#/components/parameters/modifiedBefore' responses: 200: description: Contact notes retrieved content: {} security: - Api-Key: [] Bearer: [] /bulk/inspections: get: tags: - bulk summary: Retrieve a list of property inspections description: Retrieve a list of property inspections operationId: getBulkInspections parameters: - $ref: '#/components/parameters/after' - $ref: '#/components/parameters/pagesize' responses: 200: description: Inspections retrieved content: {} security: - Api-Key: [] Bearer: [] /property/flush: put: tags: - properties summary: Trigger a property to be re-sent to certain portal sites description: Trigger a property to be re-sent to certain portal sites. Note that this endpoint only sends properties that are already selected to feed to the given sites. Please contact VaultRE for valid values of 'portals' operationId: flushProperty requestBody: description: Property Flush object content: application/json: schema: $ref: '#/components/schemas/FlushProperty' required: true responses: 200: description: Property flushed successfully content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /bulk/feedback: get: tags: - bulk summary: Retrieve a list of feedback items description: Retrieve a list of feedback items operationId: getBulkFeedback parameters: - name: feedbackAfter in: query description: Filter feedback occurring on or after this date schema: type: string format: date - name: feedbackBefore in: query description: Filter feedback occurring before this date schema: type: string format: date - $ref: '#/components/parameters/after' - $ref: '#/components/parameters/pagesize' - $ref: '#/components/parameters/modifiedSince' - $ref: '#/components/parameters/modifiedBefore' responses: 200: description: Feedback retrieved content: {} security: - Api-Key: [] Bearer: [] /properties/{propertyid}/deals/sale: get: tags: - deals summary: Retrieve a list of sale deals for this (commercial) property description: Retrieve a list of sale deals for this (commercial) property. This includes the agency's deals and external deals that have been tracked. operationId: getPropertySaleDeals parameters: - name: propertyid in: path description: ID of the property required: true schema: type: integer format: int64 - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' responses: 200: description: Sale deals retrieved content: {} security: - Api-Key: [] Bearer: [] /properties/{propertyid}/deals/lease: get: tags: - deals summary: Retrieve a list of lease deals for this (commercial) property description: Retrieve a list of lease deals for this (commercial) property. This includes the agency's deals and external deals that have been tracked. operationId: getPropertyLeaseDeals parameters: - name: propertyid in: path description: ID of the property required: true schema: type: integer format: int64 - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' responses: 200: description: Lease deals retrieved content: {} security: - Api-Key: [] Bearer: [] /properties/{propertyid}/saleHistory: get: tags: - properties summary: Retrieve the full sale history for a property description: Retrieve the full sale history for a property including commission splits operationId: getPropertySaleHistory parameters: - name: propertyid in: path description: ID of the property required: true schema: type: integer format: int64 - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' responses: 200: description: Sale History retrieved content: {} security: - Api-Key: [] Bearer: [] /search/contactCategories/name: get: tags: - search summary: Search for contact categories by name description: Search for contact categories by name operationId: searchContactCategoriesName parameters: - name: term in: query description: The term to search by required: true schema: type: string - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' responses: 200: description: Search results retrieved content: {} security: - Api-Key: [] Bearer: [] /suburbs: get: tags: - suburbs summary: Retrieve a list of suburbs for the user's country description: Retrieve a list of suburbs for the user's country operationId: getSuburbs responses: 200: description: Suburbs retrieved content: {} security: - Api-Key: [] Bearer: [] /properties/{propertyid}/{salelease}/{lifeid}/scheduledViewing: post: tags: - properties summary: Add a Scheduled Viewing description: Add a Scheduled Viewing operationId: addScheduledViewing parameters: - name: propertyid in: path description: ID of the property required: true schema: type: integer format: int64 - name: salelease in: path description: Sale or lease required: true schema: type: string - name: lifeid in: path description: ID of the property life required: true schema: type: integer format: int64 requestBody: description: Scheduled Viewing details content: application/json: schema: $ref: '#/components/schemas/InsertScheduledViewing' required: true responses: 201: description: Scheduled Viewing added content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /contacts/{id}/activityLog: get: tags: - contacts summary: Retrieve the activity log for a contact description: Retrieve the activity log for a contact operationId: getContactActivityLog parameters: - name: id in: path description: ID of the contact required: true schema: type: integer format: int64 - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' responses: 200: description: Activity Log retrieved content: {} security: - Api-Key: [] Bearer: [] /properties/categories: get: tags: - properties summary: Retrieve a list of property category mappings across all properties description: Retrieve a list of property category mappings across all properties operationId: getCategoriesPropertyBulk parameters: - name: sort in: query description: Field by which to sort the results. schema: type: string enum: - modified - $ref: '#/components/parameters/sortOrder' - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - $ref: '#/components/parameters/modifiedSince' - $ref: '#/components/parameters/modifiedBefore' responses: 200: description: Categories retrieved content: {} security: - Api-Key: [] Bearer: [] /messages/received: get: tags: - messages summary: Retrieve all received messages description: Retrieve all received messages operationId: getMessagesReceived responses: 200: description: Messages retrieved content: {} security: - Api-Key: [] Bearer: [] /messages/sent: get: tags: - messages summary: Retrieve all sent messages description: Retrieve all sent messages operationId: getMessagesSent responses: 200: description: Messages retrieved content: {} security: - Api-Key: [] Bearer: [] /threads: get: tags: - messages summary: Retrieve all message threads description: Retrieve all message threads operationId: getMessagesThreads responses: 200: description: Message threads retrieved content: {} security: - Api-Key: [] Bearer: [] /threads/franchise: post: tags: - messages summary: Add a franchise thread description: Add a franchise thread operationId: addThreadFranchise requestBody: description: Message thread details content: application/json: schema: $ref: '#/components/schemas/AddUpdateMessageThread' required: true responses: 201: description: Message thread added content: application/json: schema: $ref: '#/components/schemas/MessageThread' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /threads/user: post: tags: - messages summary: Add a user message thread description: Add a user message thread operationId: addThreadUser requestBody: description: Message thread details content: application/json: schema: $ref: '#/components/schemas/AddUpdateMessageThread' required: true responses: 201: description: Message thread added content: application/json: schema: $ref: '#/components/schemas/MessageThread' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /threads/{id}: put: tags: - messages summary: Update a message thread description: Update a message thread operationId: updateMessageThread parameters: - name: id in: path description: ID of the message thread required: true schema: type: integer format: int64 requestBody: description: Message thread details content: application/json: schema: $ref: '#/components/schemas/AddUpdateMessageThread' required: true responses: 200: description: Message thread updated content: application/json: schema: $ref: '#/components/schemas/MessageThread' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] - in: [] name: [] description: [] required: [] type: [] format: [] x-codegen-request-body-name: body /threads/{id}/messages: get: tags: - messages summary: Retrieve all messages in a thread description: Retrieve all messages in a thread operationId: getThreadMessages responses: 200: description: Thread messages retrieved content: {} security: - Api-Key: [] Bearer: [] post: tags: - messages summary: Add a message to a thread description: Add a message to a thread operationId: addThreadMessage parameters: - name: id in: path description: ID of the message thread required: true schema: type: integer format: int64 requestBody: description: Message details content: application/json: schema: type: object properties: message: type: string required: true responses: 201: description: Message added content: application/json: schema: $ref: '#/components/schemas/Message' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /threads/{id}/markRead: post: tags: - messages summary: Mark all messages in a thread as read by the current user description: Mark all messages in a thread as read by the current user operationId: putMessageThreadRead parameters: - name: id in: path description: ID of the message thread required: true schema: type: integer format: int64 responses: 200: description: Thread marked as read content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] /search/threads/recipients: get: tags: - messages - search summary: Get all threads with the supplied recipients description: Get all threads with the supplied recipients. The user will be added automatically if not supplied. operationId: getSearchThreadsRecipients parameters: - name: recipients in: query description: Recipient ID style: form explode: false schema: type: array items: type: integer format: int64 - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - name: sort in: query description: Field by which to sort the results. schema: type: string enum: - modified - created - $ref: '#/components/parameters/sortOrder' responses: 200: description: Message threads retrieved content: {} 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] /search/threads/staffTypes: get: tags: - messages - search summary: Get all threads with the supplied recipients description: Get all threads with the supplied recipients. operationId: getSearchThreadsStaffTypes parameters: - name: staffTypes in: query description: Staff Type ID style: form explode: false schema: type: array items: type: integer format: int64 - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - name: sort in: query description: Field by which to sort the results. schema: type: string enum: - modified - created - $ref: '#/components/parameters/sortOrder' responses: 200: description: Message threads retrieved content: {} 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] /search/threads/term: get: tags: - messages - search summary: Search for message threads containing term description: Search for message threads containing term operationId: getSearchThreadsTerm parameters: - name: term in: query description: The term to search for. schema: type: string - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - name: sort in: query description: Field by which to sort the results. schema: type: string enum: - modified - created - $ref: '#/components/parameters/sortOrder' responses: 200: description: Message threads retrieved content: {} 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] /advertising/suppliers: get: tags: - advertising summary: Retrieve a list of advertising suppliers description: Retrieve a list of advertising suppliers operationId: getAdvertisingSuppliers parameters: - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - name: sort in: query description: Field by which to sort the results. schema: type: string enum: - name - $ref: '#/components/parameters/sortOrder' responses: 200: description: Advertising suppliers retrieved content: {} 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' 403: description: User does not have access to property financials content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] post: tags: - advertising summary: Add a new advertising supplier description: Add a new advertising supplier operationId: addAdvertisingSupplier requestBody: description: Advertising Supplier object content: application/json: schema: $ref: '#/components/schemas/AddUpdateAdvertisingSupplier' required: true responses: 201: description: Advertising Supplier added content: application/json: schema: $ref: '#/components/schemas/AdvertisingSupplier' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' 403: description: User does not have access to property financials content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body /advertising/suppliers/{id}: get: tags: - advertising summary: Retrieve a single advertising supplier description: Retrieve a single advertising supplier operationId: getAdvertisingSupplier parameters: - name: id in: path description: ID of the advertising supplier required: true schema: type: integer format: int64 responses: 200: description: Advertising supplier retrieved content: application/json: schema: $ref: '#/components/schemas/AdvertisingSupplier' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' 403: description: User does not have access to property financials content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] put: tags: - advertising summary: Update an advertising supplier description: Update an advertising supplier operationId: updateAdvertisingSupplier parameters: - name: id in: path description: ID of the advertising supplier required: true schema: type: integer format: int64 requestBody: description: Advertising Supplier object content: application/json: schema: $ref: '#/components/schemas/AddUpdateAdvertisingSupplier' required: true responses: 200: description: Advertising Supplier updated content: application/json: schema: $ref: '#/components/schemas/AdvertisingSupplier' 400: description: Invalid data content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' 403: description: User does not have access to property financials content: application/json: schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] x-codegen-request-body-name: body delete: tags: - advertising summary: Delete an advertising supplier description: Delete an advertising supplier operationId: deleteAdvertisingSupplier parameters: - name: id in: path description: ID of the advertising supplier required: true schema: type: integer format: int64 responses: 204: description: Advertising Supplier deleted content: {} 403: description: User does not have access to property financials content: '*/*': schema: $ref: '#/components/schemas/SuccessOrError' security: - Api-Key: [] Bearer: [] /types/priceQualifiers: get: tags: - types summary: Retrieve a list of price qualifier types description: Retrieve a list of price qualifier types. This field is only available for NZ and UK accounts. operationId: getPriceQualifierTypes parameters: - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/pagesize' - name: sort in: query description: Field by which to sort the results. schema: type: string enum: - name - $ref: '#/components/parameters/sortOrder' responses: 200: description: Types retrieved content: {} security: - Api-Key: [] Bearer: [] components: schemas: AuthToken: type: object properties: token: type: string TemporaryToken: type: object properties: temporaryToken: type: string AccountBranch: type: object properties: id: type: integer format: int64 name: type: string shortName: type: string MarketingUser: type: object properties: id: type: integer format: int64 user: $ref: '#/components/schemas/Access' AddUpdateMarketingUser: type: object properties: id: type: integer format: int64 user: $ref: '#/components/schemas/ID' Contact: type: object properties: id: type: integer format: int64 title: type: string firstName: type: string lastName: type: string greeting: type: string displayName: type: string partnerTitle: type: string partnerFirstName: type: string partnerLastName: type: string company: type: string position: type: string address: $ref: '#/components/schemas/Address' postalAddress: $ref: '#/components/schemas/Address' onDoNotCallList: type: boolean archived: type: boolean inserted: type: string format: date-time modified: type: string format: date-time touched: type: string format: date-time remoteId: type: string unsubscribe: $ref: '#/components/schemas/Unsubscribe' entityType: $ref: '#/components/schemas/EntityType' emails: type: array items: type: string format: email phoneNumbers: type: array items: $ref: '#/components/schemas/PhoneNumber' legalDescription: type: string marketingUsers: type: array items: $ref: '#/components/schemas/MarketingUser' ContactExtended: allOf: - $ref: '#/components/schemas/Contact' - type: object properties: accessBy: type: array items: $ref: '#/components/schemas/Access' sourceOfEnquiry: $ref: '#/components/schemas/EnquirySource' 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 comment: type: string Country: type: object properties: id: type: integer format: int64 name: type: string isocode: type: string gstRate: type: number format: float State: type: object properties: id: type: integer format: int64 name: type: string abbreviation: type: string Suburb: type: object properties: id: type: integer format: int64 name: type: string postcode: type: string state: $ref: '#/components/schemas/State' 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' UpdateAddress: type: object properties: level: type: string unitNumber: type: string streetNumber: type: string street: type: string suburb: $ref: '#/components/schemas/ID' Unsubscribe: type: object properties: email: type: boolean sms: type: boolean letters: type: boolean Credential: type: object properties: password: type: string username: type: string TwoFactorCredential: type: object properties: code: type: string temporaryToken: type: string ID: type: object properties: id: type: integer format: int64 LocationHeader: type: string description: The location of the newly created resource SuccessOrError: type: object properties: success: type: boolean msg: type: string code: type: string ResponseCode: type: object properties: msg: type: string code: type: string Urls: type: object properties: previous: type: string next: type: string self: type: string ContactNoteTypePurpose: type: object properties: id: type: integer format: int64 name: type: string ContactNoteType: type: object properties: id: type: integer format: int64 name: type: string colour: type: string defaultReadOnly: type: boolean pinned: type: boolean purpose: $ref: '#/components/schemas/ContactNoteTypePurpose' PropertyNoteTypePurpose: type: object properties: id: type: integer format: int64 name: type: string PropertyNoteType: type: object properties: id: type: integer format: int64 name: type: string colour: type: string purpose: $ref: '#/components/schemas/PropertyNoteTypePurpose' Account: type: object properties: id: type: integer format: int64 name: type: string businessName: type: string eMarketingName: type: string timezone: type: string openDatabase: type: boolean email: type: string format: email phoneNumbers: type: array items: $ref: '#/components/schemas/PhoneNumber' address: $ref: '#/components/schemas/Address' franchise: $ref: '#/components/schemas/AccountFranchise' speciality: type: string enum: - commercial marketingUserOrders: type: array items: $ref: '#/components/schemas/MarketingUserOrder' websiteUrl: type: string clientLoginUrl: type: string openingHours: type: object properties: sunday: type: string monday: type: string tuesday: type: string wednesday: type: string thursday: type: string friday: type: string saturday: type: string MarketingUserOrder: type: object properties: id: type: integer format: int64 name: type: string ContactPhoto: type: object properties: original: type: string UserPhoto: type: object properties: original: type: string thumb_360: 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 accessPropertyManagement: type: boolean accessSales: 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 websiteUrl: type: string ContactNote: type: object properties: id: type: integer format: int64 inserted: type: string format: date-time modified: type: string format: date-time body: type: string readOnly: type: boolean contact: $ref: '#/components/schemas/ID' insertedBy: $ref: '#/components/schemas/User' type: $ref: '#/components/schemas/ContactNoteType' reminder: $ref: '#/components/schemas/ContactNoteReminder' propertyFeedback: $ref: '#/components/schemas/PropertyFeedback' ContactNoteExtended: allOf: - $ref: '#/components/schemas/ContactNote' - type: object properties: accessBy: type: array items: $ref: '#/components/schemas/Access' ContactNoteAndContact: type: object properties: note: $ref: '#/components/schemas/ContactNote' contact: $ref: '#/components/schemas/Contact' ContactNoteAndContactExtended: type: object properties: note: $ref: '#/components/schemas/ContactNoteExtended' contact: $ref: '#/components/schemas/ContactExtended' ContactNoteReminder: type: object properties: date: type: string format: date-time user: $ref: '#/components/schemas/User' AddContactNoteReminder: type: object properties: date: type: string format: date-time user: $ref: '#/components/schemas/ID' UpdateContactNote: type: object properties: body: type: string readOnly: type: boolean type: $ref: '#/components/schemas/ID' reminder: $ref: '#/components/schemas/AddContactNoteReminder' accessBy: type: array items: $ref: '#/components/schemas/ID' AddUpdatePropertyFeedback: type: object properties: priceOpinion: type: number format: float feedbackDate: type: string format: date-time contractRequested: type: boolean contractSent: type: string format: date-time UpdateContactNoteWithFeedback: allOf: - $ref: '#/components/schemas/UpdateContactNote' - type: object properties: propertyFeedback: $ref: '#/components/schemas/AddUpdatePropertyFeedback' AddContactNote: type: object properties: body: type: string readOnly: type: boolean type: $ref: '#/components/schemas/ID' reminder: $ref: '#/components/schemas/AddContactNoteReminder' inserted: type: string format: date-time accessBy: type: array items: $ref: '#/components/schemas/ID' AddContactNoteWithFeedback: allOf: - $ref: '#/components/schemas/AddContactNote' - type: object properties: propertyFeedback: $ref: '#/components/schemas/AddUpdatePropertyFeedback' AddPropertyFeedback: type: object properties: contact: $ref: '#/components/schemas/ID' note: $ref: '#/components/schemas/AddContactNoteWithFeedback' UpdatePropertyFeedback: type: object properties: note: $ref: '#/components/schemas/UpdateContactNoteWithFeedback' PropertyNote: type: object properties: id: type: integer format: int64 inserted: type: string format: date-time modified: type: string format: date-time body: type: string readOnly: type: boolean insertedBy: $ref: '#/components/schemas/User' type: $ref: '#/components/schemas/PropertyNoteType' UpdatePropertyNote: type: object properties: body: type: string readOnly: type: boolean type: $ref: '#/components/schemas/ID' AddPropertyNote: type: object properties: body: type: string readOnly: type: boolean type: $ref: '#/components/schemas/ID' inserted: type: string format: date-time CategoryGrouping: type: object properties: id: type: integer format: int64 name: type: string categories: type: array items: $ref: '#/components/schemas/Category' Category: type: object properties: id: type: integer format: int64 name: type: string AddUpdateCategory: type: object properties: name: type: string Building: type: object properties: id: type: integer format: int64 name: type: string AddUpdateBuilding: type: object properties: name: type: string PropertyPhotoThumbnails: type: object properties: thumb_180: type: string thumb_1024: type: string 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 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 addressVisibility: type: string enum: - streetAndSuburb - suburb - fullAddress 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' frontage: type: number format: float 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' lotNumber: type: string certificateOfTitle: type: string legalDescription: type: string rpdp: type: string discriminator: propertyName: class PropertyLife: allOf: - $ref: '#/components/schemas/ResidentialProperty' - $ref: '#/components/schemas/CommercialProperty' PropertyExtended: allOf: - $ref: '#/components/schemas/Property' - type: object properties: accessBy: type: array items: $ref: '#/components/schemas/Access' leaseHistory: type: array items: $ref: '#/components/schemas/LeaseHistory' saleHistory: type: array items: $ref: '#/components/schemas/SaleHistory' 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' appraisal: type: string format: date-time appraisalPriceLower: type: number format: float appraisalPriceUpper: type: number format: float contactStaff: type: array items: $ref: '#/components/schemas/ID' externalLinks: type: array items: $ref: '#/components/schemas/AddUpdateExternalLink' mobileMarketingDescription: type: string certificateOfTitle: type: string legalDescription: type: string rpdp: type: string lotNumber: type: string discriminator: propertyName: class 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 ensuites: type: integer format: int64 toilets: type: integer format: int64 receptionRooms: type: integer format: int64 floorArea: $ref: '#/components/schemas/Area' status: type: string enum: - prospect - appraisal - listing - conditional - unconditional - settled - management - withdrawn - withdrawnAppraisal contactStaff: type: array items: $ref: '#/components/schemas/User' eTableUrl: type: string externalLinks: type: array items: $ref: '#/components/schemas/ExternalLink' energyRating: type: number format: float ResidentialPropertyExtended: allOf: - $ref: '#/components/schemas/ResidentialProperty' - type: object properties: accessBy: type: array items: $ref: '#/components/schemas/Access' saleHistory: type: array items: $ref: '#/components/schemas/SaleHistory' leaseHistory: type: array items: $ref: '#/components/schemas/LeaseHistory' highlights: type: array items: 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 ensuites: type: integer format: int64 toilets: type: integer format: int64 receptionRooms: type: integer format: int64 floorArea: $ref: '#/components/schemas/Area' status: type: string enum: - prospect - appraisal 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: $ref: '#/components/schemas/Rate' strata: $ref: '#/components/schemas/Rate' mobileMarketingDescription: type: string externalLinks: type: array items: $ref: '#/components/schemas/ExternalLink' priceOnApplication: type: boolean authorityStart: type: string format: date-time authorityEnd: type: string format: date-time sellingFeePercent: type: number format: float sellingFeeFixed: type: number format: float vpa: type: number format: float agentPriceOpinion: type: number format: float rateableValue: type: integer format: int64 landValue: type: integer format: int64 improvementValue: type: integer format: int64 methodOfsale: $ref: '#/components/schemas/MethodOfSale' authorityType: $ref: '#/components/schemas/AuthorityType' AddUpdateSaleProperty: type: object properties: rates: type: object properties: water: $ref: '#/components/schemas/Rate' council: $ref: '#/components/schemas/Rate' strata: $ref: '#/components/schemas/Rate' externalLinks: type: array items: $ref: '#/components/schemas/ExternalLink' priceOnApplication: type: boolean authorityStart: type: string format: date-time authorityEnd: type: string format: date-time sellingFeePercent: type: number format: float sellingFeeFixed: type: number format: float vpa: type: number format: float agentPriceOpinion: type: number format: float rateableValue: type: integer format: int64 landValue: type: integer format: int64 improvementValue: type: integer format: int64 methodOfsale: $ref: '#/components/schemas/MethodOfSale' authorityType: $ref: '#/components/schemas/AuthorityType' MethodOfSale: type: object properties: id: type: integer format: int64 name: type: string AuthorityType: type: object properties: id: type: integer format: int64 name: type: string ResidentialSaleProperty: allOf: - $ref: '#/components/schemas/ResidentialProperty' - $ref: '#/components/schemas/SaleProperty' - type: object properties: auctionDetails: $ref: '#/components/schemas/AuctionDetails' tenderDetails: $ref: '#/components/schemas/TenderDetails' setSaleDateDetails: $ref: '#/components/schemas/SetSaleDateDetails' soiUrl: type: string ResidentialSoldProperty: allOf: - $ref: '#/components/schemas/ResidentialSaleProperty' - type: object properties: saleDetails: $ref: '#/components/schemas/SaleHistory' ResidentialSalePropertyExtended: allOf: - $ref: '#/components/schemas/ResidentialSaleProperty' - type: object properties: accessBy: type: array items: $ref: '#/components/schemas/Access' saleHistory: type: array items: $ref: '#/components/schemas/SaleHistory' highlights: type: array items: type: string ResidentialSoldPropertyExtended: allOf: - $ref: '#/components/schemas/ResidentialSalePropertyExtended' - type: object properties: saleDetails: $ref: '#/components/schemas/SaleHistory' LeaseProperty: type: object properties: branch: $ref: '#/components/schemas/AccountBranch' mobileMarketingDescription: type: string externalLinks: type: array items: $ref: '#/components/schemas/ExternalLink' priceOnApplication: type: boolean authorityStart: type: string format: date-time authorityEnd: type: string format: date-time bondPrice: type: number format: float expenditureLimit: type: number format: float AddUpdateLeaseProperty: type: object properties: externalLinks: type: array items: $ref: '#/components/schemas/ExternalLink' priceOnApplication: type: boolean authorityStart: type: string format: date-time authorityEnd: type: string format: date-time bondPrice: type: number format: float expenditureLimit: type: number format: float ResidentialLeaseProperty: allOf: - $ref: '#/components/schemas/ResidentialProperty' - $ref: '#/components/schemas/LeaseProperty' - type: object properties: currentTenancy: $ref: '#/components/schemas/Tenancy' propertyManager: $ref: '#/components/schemas/User' available: type: boolean ResidentialLeasePropertyExtended: allOf: - $ref: '#/components/schemas/ResidentialLeaseProperty' - 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 AddUpdateResidentialSaleProperty: allOf: - $ref: '#/components/schemas/AddUpdateResidentialProperty' - $ref: '#/components/schemas/AddUpdateSaleProperty' - type: object AddUpdateResidentialLeaseProperty: allOf: - $ref: '#/components/schemas/AddUpdateResidentialProperty' - $ref: '#/components/schemas/AddUpdateLeaseProperty' - type: object properties: propertyManager: $ref: '#/components/schemas/ID' LandProperty: allOf: - $ref: '#/components/schemas/Property' - type: object properties: status: type: string enum: - prospect - appraisal - listing - conditional - unconditional - settled - management - withdrawn - withdrawnAppraisal auctionDetails: $ref: '#/components/schemas/AuctionDetails' tenderDetails: $ref: '#/components/schemas/TenderDetails' setSaleDateDetails: $ref: '#/components/schemas/SetSaleDateDetails' contactStaff: type: array items: $ref: '#/components/schemas/ID' eTableUrl: type: string soiUrl: type: string externalLinks: type: array items: $ref: '#/components/schemas/ExternalLink' LandSoldProperty: allOf: - $ref: '#/components/schemas/LandProperty' - type: object properties: saleDetails: $ref: '#/components/schemas/SaleHistory' LandPropertyExtended: allOf: - $ref: '#/components/schemas/LandProperty' - type: object properties: accessBy: type: array items: $ref: '#/components/schemas/Access' saleHistory: type: array items: $ref: '#/components/schemas/SaleHistory' highlights: type: array items: type: string LandSoldPropertyExtended: allOf: - $ref: '#/components/schemas/LandPropertyExtended' - type: object properties: saleDetails: $ref: '#/components/schemas/SaleHistory' AddUpdateLandProperty: allOf: - $ref: '#/components/schemas/AddUpdateProperty' - $ref: '#/components/schemas/AddUpdateSaleProperty' - type: object properties: status: type: string enum: - prospect - appraisal RuralProperty: allOf: - $ref: '#/components/schemas/ResidentialProperty' - type: object properties: auctionDetails: $ref: '#/components/schemas/AuctionDetails' tenderDetails: $ref: '#/components/schemas/TenderDetails' setSaleDateDetails: $ref: '#/components/schemas/SetSaleDateDetails' soiUrl: type: string externalLinks: type: array items: $ref: '#/components/schemas/ExternalLink' RuralSoldProperty: allOf: - $ref: '#/components/schemas/RuralProperty' - type: object properties: saleDetails: $ref: '#/components/schemas/SaleHistory' AddUpdateRuralProperty: allOf: - $ref: '#/components/schemas/AddUpdateResidentialProperty' - $ref: '#/components/schemas/AddUpdateSaleProperty' - type: object RuralPropertyExtended: allOf: - $ref: '#/components/schemas/RuralProperty' - type: object properties: accessBy: type: array items: $ref: '#/components/schemas/Access' saleHistory: type: array items: $ref: '#/components/schemas/SaleHistory' highlights: type: array items: type: string RuralSoldPropertyExtended: allOf: - $ref: '#/components/schemas/RuralPropertyExtended' - type: object properties: saleDetails: $ref: '#/components/schemas/SaleHistory' CommercialProperty: allOf: - $ref: '#/components/schemas/Property' - type: object properties: zoning: type: string carSpaces: type: integer format: int64 floorArea: $ref: '#/components/schemas/Area' mezzanineArea: $ref: '#/components/schemas/Area' warehouseArea: $ref: '#/components/schemas/Area' retailArea: $ref: '#/components/schemas/Area' officeArea: $ref: '#/components/schemas/Area' otherArea: $ref: '#/components/schemas/Area' status: type: string enum: - prospect - appraisal - listing - conditional - unconditional - settled - management - withdrawn - withdrawnAppraisal contactStaff: type: array items: $ref: '#/components/schemas/ID' eTableUrl: type: string commercialListingType: type: string enum: - sale - lease - both externalLinks: type: array items: $ref: '#/components/schemas/ExternalLink' energyRating: type: number format: float CommercialPropertyExtended: allOf: - $ref: '#/components/schemas/CommercialProperty' - type: object properties: accessBy: type: array items: $ref: '#/components/schemas/Access' highlights: type: array items: type: string CommercialSaleProperty: allOf: - $ref: '#/components/schemas/CommercialProperty' - $ref: '#/components/schemas/SaleProperty' - type: object properties: auctionDetails: $ref: '#/components/schemas/AuctionDetails' tenderDetails: $ref: '#/components/schemas/TenderDetails' setSaleDateDetails: $ref: '#/components/schemas/SetSaleDateDetails' CommercialSoldProperty: allOf: - $ref: '#/components/schemas/CommercialSaleProperty' - type: object properties: saleDetails: $ref: '#/components/schemas/SaleHistory' CommercialSalePropertyExtended: allOf: - $ref: '#/components/schemas/CommercialPropertyExtended' - type: object properties: auctionDetails: $ref: '#/components/schemas/AuctionDetails' tenderDetails: $ref: '#/components/schemas/TenderDetails' setSaleDateDetails: $ref: '#/components/schemas/SetSaleDateDetails' saleHistory: type: array items: $ref: '#/components/schemas/SaleHistory' CommercialSoldPropertyExtended: allOf: - $ref: '#/components/schemas/CommercialSalePropertyExtended' - type: object properties: saleDetails: $ref: '#/components/schemas/SaleHistory' CommercialLeaseProperty: allOf: - $ref: '#/components/schemas/CommercialProperty' - $ref: '#/components/schemas/LeaseProperty' CommercialLeasePropertyExtended: allOf: - $ref: '#/components/schemas/CommercialPropertyExtended' - type: object properties: leaseHistory: type: array items: $ref: '#/components/schemas/LeaseHistory' AddUpdateCommercialProperty: allOf: - $ref: '#/components/schemas/AddUpdateProperty' - type: object properties: carSpaces: type: integer format: int64 floorArea: $ref: '#/components/schemas/Area' status: type: string enum: - prospect - appraisal AddUpdateCommercialLeaseProperty: allOf: - $ref: '#/components/schemas/AddUpdateCommercialProperty' - $ref: '#/components/schemas/AddUpdateLeaseProperty' AddUpdateCommercialSaleProperty: allOf: - $ref: '#/components/schemas/AddUpdateCommercialProperty' - $ref: '#/components/schemas/AddUpdateSaleProperty' BusinessProperty: allOf: - $ref: '#/components/schemas/Property' - type: object properties: floorArea: $ref: '#/components/schemas/Area' status: type: string enum: - prospect - appraisal - listing - conditional - unconditional - settled - withdrawn - withdrawnAppraisal auctionDetails: $ref: '#/components/schemas/AuctionDetails' tenderDetails: $ref: '#/components/schemas/TenderDetails' setSaleDateDetails: $ref: '#/components/schemas/SetSaleDateDetails' contactStaff: type: array items: $ref: '#/components/schemas/ID' eTableUrl: type: string externalLinks: type: array items: $ref: '#/components/schemas/ExternalLink' energyRating: type: number format: float BusinessSoldProperty: allOf: - $ref: '#/components/schemas/BusinessProperty' - type: object properties: saleDetails: $ref: '#/components/schemas/SaleHistory' BusinessPropertyExtended: allOf: - $ref: '#/components/schemas/BusinessProperty' - type: object properties: accessBy: type: array items: $ref: '#/components/schemas/Access' saleHistory: type: array items: $ref: '#/components/schemas/SaleHistory' highlights: type: array items: type: string BusinessSoldPropertyExtended: allOf: - $ref: '#/components/schemas/BusinessPropertyExtended' - type: object properties: saleDetails: $ref: '#/components/schemas/SaleHistory' AddUpdateBusinessProperty: allOf: - $ref: '#/components/schemas/AddUpdateProperty' - $ref: '#/components/schemas/AddUpdateSaleProperty' - type: object properties: floorArea: $ref: '#/components/schemas/Area' status: type: string enum: - prospect - appraisal HolidayRentalProperty: allOf: - $ref: '#/components/schemas/ResidentialProperty' - $ref: '#/components/schemas/LeaseProperty' - type: object HolidayRentalPropertyExtended: allOf: - $ref: '#/components/schemas/HolidayRentalProperty' - 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 AddUpdateHolidayRentalProperty: allOf: - $ref: '#/components/schemas/AddUpdateResidentialProperty' - $ref: '#/components/schemas/AddUpdateLeaseProperty' - type: object BuildingSearchResult: allOf: - $ref: '#/components/schemas/Building' - type: object PropertySearchResult: type: object properties: id: type: integer format: int64 saleLifeId: type: integer format: int64 leaseLifeId: type: integer format: int64 address: $ref: '#/components/schemas/Address' displayAddress: type: string commercialListingType: type: string enum: - sale - lease - both class: $ref: '#/components/schemas/PropertyClass' saleLife: type: object properties: id: type: integer format: int64 status: type: string leaseLife: type: object properties: id: type: integer format: int64 status: type: string ContactSearchResult: type: object properties: id: type: integer format: int64 name: type: string greeting: type: string firstName: type: string lastName: type: string emails: type: array items: type: string format: email phoneNumbers: type: array items: $ref: '#/components/schemas/PhoneNumber' marketingUsers: type: array items: $ref: '#/components/schemas/MarketingUser' Rate: type: object properties: value: type: number format: float period: type: string enum: - pa - pq Area: type: object properties: value: type: integer format: int64 units: type: string enum: - sqm - acre - hectare AreaRange: type: object properties: minimum: type: integer format: int64 maximum: type: integer format: int64 units: type: string enum: - sqm - acre - hectare UpdateUser: type: object properties: firstName: type: string lastName: type: string email: type: string format: email phoneNumbers: type: array items: $ref: '#/components/schemas/PhoneNumber' position: type: string profile: type: string CustomFieldGrouping: type: object properties: fields: type: array items: $ref: '#/components/schemas/CustomField' group: type: string CustomField: type: object properties: dataType: type: string enum: - selectBox - text - string - float - boolean - date - dayAndMonth id: type: integer format: int64 name: type: string data: type: string AddUpdateCustomField: type: object properties: id: type: integer format: int64 data: type: string ActivityLog: type: object properties: id: type: integer format: int64 inserted: type: string format: date-time note: type: string insertedBy: $ref: '#/components/schemas/User' ContactFile: type: object properties: id: type: integer format: int64 inserted: type: string format: date-time modified: type: string format: date-time description: type: string filename: type: string filesize: type: integer format: int64 insertedBy: $ref: '#/components/schemas/User' url: type: string contentType: type: string CalendarEvent: type: object properties: id: type: integer format: int64 modified: type: string format: date-time recurring: type: boolean allDay: type: boolean start: type: string format: date-time end: type: string format: date-time summary: type: string description: type: string reminderMinutes: type: integer format: int64 contacts: type: array items: $ref: '#/components/schemas/CalendarContact' user: $ref: '#/components/schemas/Access' CalendarContact: type: object properties: id: type: integer format: int64 name: type: string AddUpdateCalendarEvent: type: object properties: recurring: type: boolean allDay: type: boolean start: type: string format: date-time end: type: string format: date-time summary: type: string description: type: string reminderMinutes: type: integer format: int64 contacts: type: array items: $ref: '#/components/schemas/ID' user: $ref: '#/components/schemas/ID' PropertyFile: type: object properties: id: type: integer format: int64 inserted: type: string format: date-time modified: type: string format: date-time filename: type: string filesize: type: integer format: int64 contentType: type: string url: type: string PropertyFileWithFolders: allOf: - $ref: '#/components/schemas/PropertyFile' - type: object properties: folders: type: array items: $ref: '#/components/schemas/PropertyFileFolder' PropertyFileFolder: type: object properties: id: type: integer format: int64 name: type: string display: type: string enum: - sale - lease - saleAndLease CoreLogicAddressSuggest: type: object properties: id: type: integer format: int64 name: type: string CoreLogicProperty: type: object properties: id: type: integer format: int64 address: $ref: '#/components/schemas/Address' bed: type: integer format: int64 bath: type: integer format: int64 carSpaces: type: integer format: int64 floorArea: $ref: '#/components/schemas/Area' landArea: $ref: '#/components/schemas/Area' volumeNumber: type: string folioNumber: type: string frontage: type: number format: float UpdateContact: type: object properties: title: type: string firstName: type: string lastName: type: string greeting: type: string partnerTitle: type: string partnerFirstName: type: string partnerLastName: type: string company: type: string position: type: string address: $ref: '#/components/schemas/UpdateAddress' postalAddress: $ref: '#/components/schemas/UpdateAddress' onDoNotCallList: type: boolean archived: type: boolean unsubscribe: $ref: '#/components/schemas/Unsubscribe' emails: type: array items: type: string format: email phoneNumbers: type: array items: $ref: '#/components/schemas/PhoneNumber' legalDescription: type: string accessBy: type: array items: $ref: '#/components/schemas/ID' sourceOfEnquiry: $ref: '#/components/schemas/ID' marketingUsers: type: array items: $ref: '#/components/schemas/AddUpdateMarketingUser' AddContact: allOf: - $ref: '#/components/schemas/UpdateContact' - type: object properties: inserted: type: string format: date-time entityType: $ref: '#/components/schemas/ID' Supplier: allOf: - $ref: '#/components/schemas/Contact' - type: object properties: labels: type: array items: type: string SupplierExtended: allOf: - $ref: '#/components/schemas/ContactExtended' - type: object properties: labels: type: array items: type: string UpdateSupplier: type: object properties: title: type: string firstName: type: string lastName: type: string greeting: type: string partnerTitle: type: string partnerFirstName: type: string partnerLastName: type: string company: type: string position: type: string address: $ref: '#/components/schemas/UpdateAddress' postalAddress: $ref: '#/components/schemas/UpdateAddress' onDoNotCallList: type: boolean unsubscribe: $ref: '#/components/schemas/Unsubscribe' emails: type: array items: type: string format: email phoneNumbers: type: array items: $ref: '#/components/schemas/PhoneNumber' legalDescription: type: string accessBy: type: array items: $ref: '#/components/schemas/ID' sourceOfEnquiry: $ref: '#/components/schemas/ID' marketingUsers: type: array items: $ref: '#/components/schemas/AddUpdateMarketingUser' labels: type: array items: type: string AddSupplier: allOf: - $ref: '#/components/schemas/UpdateSupplier' - type: object properties: inserted: type: string format: date-time ContactRequirement: type: object properties: id: type: integer format: int64 inserted: type: string format: date-time modified: type: string format: date-time active: type: boolean propertyClass: $ref: '#/components/schemas/PropertyClass' minimumPrice: type: number format: float maximumPrice: type: number format: float minimumBed: type: integer format: int64 minimumBath: type: integer format: int64 minimumCar: type: integer format: int64 minimumPricePerSQM: type: number format: float maximumPricePerSQM: type: number format: float landArea: $ref: '#/components/schemas/AreaRange' buildingArea: $ref: '#/components/schemas/AreaRange' propertyTypes: type: array items: $ref: '#/components/schemas/PropertyType' propertyTags: type: array items: type: string suburbs: type: array items: $ref: '#/components/schemas/Suburb' type: type: string enum: - sale - lease - saleOrLease tenantedInvestment: type: boolean AddUpdateContactRequirement: type: object properties: active: type: boolean propertyClass: $ref: '#/components/schemas/ID' minimumPrice: type: number format: float maximumPrice: type: number format: float minimumBed: type: integer format: int64 minimumBath: type: integer format: int64 minimumCar: type: integer format: int64 minimumPricePerSQM: type: number format: float maximumPricePerSQM: type: number format: float landArea: $ref: '#/components/schemas/AreaRange' buildingArea: $ref: '#/components/schemas/AreaRange' propertyTypes: type: array items: $ref: '#/components/schemas/ID' propertyTags: type: array items: type: string suburbs: type: array items: $ref: '#/components/schemas/Suburb' type: type: string enum: - sale - lease - saleOrLease tenantedInvestment: type: boolean PropertyType: type: object properties: id: type: integer format: int64 name: type: string propertyClass: $ref: '#/components/schemas/PropertyClass' PropertyClass: type: object properties: id: type: integer format: int64 name: type: string internalName: type: string Access: type: object properties: id: type: integer format: int64 name: type: string photo: $ref: '#/components/schemas/UserPhoto' Team: type: object properties: id: type: integer format: int64 name: type: string CoreLogicAvm: type: object properties: estimatedPriceHigh: type: number format: float estimatedPriceLow: type: number format: float estimatedValue: type: number format: float confidence: type: string CoreLogicRentalAvm: type: object properties: estimatedPricePerWeekHigh: type: number format: float estimatedPricePerWeekLow: type: number format: float estimatedValuePerWeek: type: number format: float forecastStandardDeviation: type: number format: float yieldForecastStandardDeviation: type: number format: float yield: type: number format: float ContactContext: type: object properties: phoneNumbers: type: array items: $ref: '#/components/schemas/PhoneNumber' displayName: type: string partnerDisplayName: type: string companyInfo: type: string emails: type: array items: type: string format: email linkedProperties: type: array items: $ref: '#/components/schemas/LinkedProperty' categories: type: array items: $ref: '#/components/schemas/Category' LinkedProperty: type: object properties: id: type: integer format: int64 address: $ref: '#/components/schemas/Address' displayAddress: type: string saleLifeId: type: integer format: int64 leaseLifeId: type: integer format: int64 relationship: type: string enum: - pastOwner - owner - landlord - tenant - purchaser status: type: string enum: - prospect - appraisal - listing - conditional - unconditional - settled - management - withdrawn - withdrawnAppraisal class: $ref: '#/components/schemas/PropertyClass' photo: $ref: '#/components/schemas/PropertyPhoto' UserSubscriptions: type: object properties: corelogic: type: boolean pricefinder: type: boolean RentFrequency: type: object properties: id: type: integer format: int64 name: type: string 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 letAgreed: type: boolean start: type: string format: date-time end: type: string format: date-time rentPaidUntil: type: string format: date-time arrearsAmount: type: number format: float PropertyFeedback: type: object properties: id: type: integer format: int64 property: type: object properties: id: type: number format: int64 displayAddress: type: string saleLifeId: type: number format: int64 leaseLifeId: type: number format: int64 class: $ref: '#/components/schemas/PropertyClass' feedbackDate: type: string format: date-time priceOpinion: type: number format: float saleLifeId: type: number format: int64 leaseLifeId: type: number format: int64 contractRequested: type: boolean contractSent: type: string format: date-time 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 ExternalLinkType: type: object properties: id: type: integer format: int64 name: 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' AddUpdateExternalLink: type: object properties: url: type: string type: $ref: '#/components/schemas/ID' OfferCondition: type: object properties: id: type: number format: int64 name: type: string PropertyOfferCondition: type: object properties: id: type: number format: int64 condition: $ref: '#/components/schemas/OfferCondition' user: $ref: '#/components/schemas/User' due: type: string format: date-time completed: type: boolean UpdatePropertyOfferCondition: type: object properties: condition: $ref: '#/components/schemas/ID' user: $ref: '#/components/schemas/ID' due: type: string format: date-time completed: type: boolean PropertyOfferConditionWithProperty: allOf: - $ref: '#/components/schemas/PropertyOfferCondition' - type: object properties: property: type: object properties: id: type: number format: int64 displayAddress: type: string saleLifeId: type: number format: int64 class: $ref: '#/components/schemas/PropertyClass' Signature: type: object properties: url: type: string AuctionDetails: type: object properties: dateTime: type: string format: date-time venue: type: string auctioneer: type: string TenderDetails: type: object properties: dateTime: type: string format: date-time SetSaleDateDetails: type: object properties: dateTime: type: string format: date-time OpenHome: type: object properties: id: type: number format: int64 start: type: string format: date-time end: type: string format: date-time user: $ref: '#/components/schemas/User' isRental: type: boolean AddUpdateOpenHome: type: object properties: start: type: string format: date-time end: type: string format: date-time user: $ref: '#/components/schemas/ID' OpenHomeWithProperty: allOf: - $ref: '#/components/schemas/OpenHome' - type: object properties: property: type: object properties: id: type: number format: int64 displayAddress: type: string saleLifeId: type: number format: int64 leaseLifeId: type: number format: int64 class: $ref: '#/components/schemas/PropertyClass' EnquirySource: type: object properties: id: type: number format: int64 name: type: string AddUpdateEnquirySource: type: object properties: name: type: string BulkContactNote: type: object properties: type: $ref: '#/components/schemas/ID' readOnly: type: boolean inserted: type: string format: date-time accessBy: type: array items: $ref: '#/components/schemas/Access' notes: type: array items: type: object properties: contact: $ref: '#/components/schemas/ID' body: type: string Task: type: object properties: id: type: number format: int64 subject: type: string description: type: string inserted: type: string format: date-time completed: type: boolean start: type: string format: date-time contact: $ref: '#/components/schemas/TaskContact' contactNote: $ref: '#/components/schemas/ContactNote' property: type: object properties: id: type: number format: int64 displayAddress: type: string saleLifeId: type: number format: int64 leaseLifeId: type: number format: int64 class: $ref: '#/components/schemas/PropertyClass' user: $ref: '#/components/schemas/Access' TaskContact: type: object properties: id: type: integer format: int64 name: type: string AddTask: type: object properties: subject: type: string description: type: string start: type: string format: date-time user: $ref: '#/components/schemas/ID' UpdateTask: type: object properties: subject: type: string description: type: string start: type: string format: date-time PropertyFeatureGrouping: type: object properties: groupName: type: string groupDisplayName: type: string features: type: array items: $ref: '#/components/schemas/PropertyFeature' UpdatePropertyFeatureGrouping: type: object properties: groupName: type: string features: type: array items: $ref: '#/components/schemas/UpdatePropertyFeature' PropertyFeature: type: object properties: name: type: string displayName: type: string dataType: type: string enum: - selectBox - text - string - float - boolean - date - dayAndMonth data: type: string UpdatePropertyFeature: type: object properties: name: type: string data: type: string Enquiry: type: object properties: id: type: number format: int64 subject: type: string originalId: type: string inserted: type: string format: date-time source: type: string saleLifeId: type: number format: int64 leaseLifeId: type: number format: int64 processed: type: boolean enquiryDate: type: string format: date-time AddEnquiry: type: object properties: enquiryDate: type: string format: date-time subject: type: string body: type: string originalId: type: string propertyReference: type: string source: type: string saleLifeId: type: number format: int64 leaseLifeId: type: number format: int64 fullName: type: string firstName: type: string lastName: type: string email: type: string format: email telephone: type: string mobile: type: string categories: type: array items: $ref: '#/components/schemas/ID' SMS: type: object properties: user: $ref: '#/components/schemas/ID' message: type: string number: type: string BulkSMS: type: object properties: contact: $ref: '#/components/schemas/ID' message: type: string number: type: string Email: type: object properties: user: $ref: '#/components/schemas/ID' subject: type: string bodyText: type: string bodyHTML: type: string to: type: string BulkEmail: type: object properties: contact: $ref: '#/components/schemas/ID' email: type: string subject: type: string bodyText: type: string bodyHTML: type: string AccountPricingUnit: type: object properties: currency: type: string unitPrice: type: number format: float AccountPricing: type: object properties: sms: $ref: '#/components/schemas/AccountPricingUnit' Token: type: object properties: account: $ref: '#/components/schemas/ID' token: type: string scopes: type: array items: type: string Metric: type: object properties: statType: type: string enum: - propertyView - emailAgent - callAgent - brochureView total: type: number format: int64 UpdatePortalStatsTotal: type: object properties: source: type: string saleLifeId: type: number format: int64 leaseLifeId: type: number format: int64 propertyReference: type: string metrics: type: array items: $ref: '#/components/schemas/Metric' UpdatePortalStatsCumulative: allOf: - $ref: '#/components/schemas/UpdatePortalStatsTotal' - type: object properties: statDate: type: string format: date-time EmailTemplate: type: object properties: id: type: integer format: int64 name: type: string subject: type: string content: type: string propertyTemplate: type: boolean accessBy: type: array items: $ref: '#/components/schemas/Access' inserted: type: string format: date-time AddUpdateEmailTemplate: type: object properties: name: type: string subject: type: string content: type: string propertyTemplate: type: boolean accessBy: type: array items: $ref: '#/components/schemas/ID' SMSTemplate: type: object properties: id: type: integer format: int64 name: type: string content: type: string propertyTemplate: type: boolean accessBy: type: array items: $ref: '#/components/schemas/Access' inserted: type: string format: date-time AddUpdateSMSTemplate: type: object properties: name: type: string content: type: string propertyTemplate: type: boolean accessBy: type: array items: $ref: '#/components/schemas/ID' OwnerSummaryTemplate: type: object properties: id: type: integer format: int64 name: type: string subject: type: string content: type: string accessBy: type: array items: $ref: '#/components/schemas/Access' inserted: type: string format: date-time AddUpdateOwnerSummaryTemplate: type: object properties: name: type: string subject: type: string content: type: string accessBy: type: array items: $ref: '#/components/schemas/ID' 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 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 PhotoTag: type: object properties: confidence: type: number format: float name: type: string AccountFranchise: type: object properties: id: type: integer format: int64 name: type: string ContactInterest: type: object properties: id: type: integer format: int64 name: type: string ContactMinimal: type: object properties: id: type: integer format: int64 displayName: type: string inserted: type: string format: date-time modified: type: string format: date-time emails: type: array items: type: string format: email phoneNumbers: type: array items: $ref: '#/components/schemas/PhoneNumber' PropertyLifeInterest: type: object properties: contact: $ref: '#/components/schemas/ContactMinimal' interest: $ref: '#/components/schemas/ContactInterest' PropertyLifeEnquirySource: type: object properties: contact: $ref: '#/components/schemas/ContactMinimal' source: $ref: '#/components/schemas/EnquirySource' UpdatePropertyLifeEnquirySource: type: object properties: source: type: object properties: id: type: integer format: int64 UpdatePropertyLifeInterest: type: object properties: interest: type: object properties: id: type: integer format: int64 RequirementAndContact: type: object properties: requirement: $ref: '#/components/schemas/ContactRequirement' contact: $ref: '#/components/schemas/ID' ContactAndMarketingUser: type: object properties: marketingUser: $ref: '#/components/schemas/MarketingUser' contact: $ref: '#/components/schemas/ID' ContactAndCount: type: object properties: count: type: integer format: int64 contact: $ref: '#/components/schemas/ID' PropertyFileWithFoldersUpload: type: object properties: filename: type: string filesize: type: integer format: int64 contentType: type: string folders: type: array items: $ref: '#/components/schemas/ID' FileToBeUploaded: type: object properties: id: type: integer format: int64 upload_url: type: string Portal: type: object properties: id: type: integer format: int64 name: type: string PortalAccess: type: object properties: id: type: integer format: int64 code: type: string description: type: string portal: $ref: '#/components/schemas/Portal' PropertyPhotoUpload: type: object properties: filesize: type: integer format: int64 width: type: integer format: int64 height: type: integer format: int64 caption: type: string type: type: string enum: - Photograph - Floorplan contentType: type: string enum: - image/jpeg - image/jpg - image/png - image/gif userFilename: type: string published: type: boolean ContactFileUpload: type: object properties: filename: type: string filesize: type: integer format: int64 contentType: type: string MaintenancePhoto: type: object properties: id: type: integer format: int64 url: type: string description: type: string userFileName: type: string AddMaintenancePhoto: type: object properties: description: type: string Maintenance: type: object properties: id: type: integer format: int64 summary: type: string description: type: string status: type: string enum: - open - requested - sent - completed inserted: type: string format: date-time modified: type: string format: date-time insertedBy: $ref: '#/components/schemas/Access' requestedBy: $ref: '#/components/schemas/ContactMinimal' tenancy: $ref: '#/components/schemas/Tenancy' leaseLifeId: type: integer format: int64 photos: type: array items: $ref: '#/components/schemas/MaintenancePhoto' notifications: type: array items: $ref: '#/components/schemas/Access' AddMaintenance: type: object properties: summary: type: string description: type: string inserted: type: string format: date-time requestedBy: $ref: '#/components/schemas/ID' notifications: type: array items: $ref: '#/components/schemas/ID' tenancy: $ref: '#/components/schemas/ID' UpdateMaintenance: type: object properties: summary: type: string description: type: string requestedBy: $ref: '#/components/schemas/ID' notifications: type: array items: $ref: '#/components/schemas/ID' MaintenanceRequest: type: object properties: id: type: integer format: int64 inserted: type: string format: date-time supplier: $ref: '#/components/schemas/ContactMinimal' status: type: string enum: - requested - viewed - notInterested - received jobId: type: integer format: int64 quote: $ref: '#/components/schemas/PropertyFile' invoice: $ref: '#/components/schemas/PropertyFile' isWorkOrder: type: boolean AddMaintenanceRequest: type: object properties: supplier: $ref: '#/components/schemas/ID' subject: type: string bodyHTML: type: string isWorkOrder: type: boolean sender: $ref: '#/components/schemas/ID' MaintenanceNote: type: object properties: id: type: integer format: int64 note: type: string inserted: type: string format: date-time insertedBy: $ref: '#/components/schemas/Access' Inspection: type: object properties: id: type: integer format: int64 insertedBy: $ref: '#/components/schemas/#definitions/Access' inserted: type: string format: date-time start: type: string format: date-time end: type: string format: date-time status: type: string enum: - proposed - scheduled - confirmed type: type: string enum: - routine - ingoing - outgoing timeOfDay: type: string enum: - morning - afternoon tenancy: $ref: '#/components/schemas/#definitions/ID' AddInspection: type: object properties: inserted: type: string format: date-time start: type: string format: date-time end: type: string format: date-time status: type: string enum: - proposed - scheduled - confirmed type: type: string enum: - routine - ingoing - outgoing insertedBy: $ref: '#/components/schemas/#definitions/ID' UpdateInspection: type: object properties: start: type: string format: date-time end: type: string format: date-time status: type: string enum: - proposed - scheduled - confirmed type: type: string enum: - routine - ingoing - outgoing Insurance: type: object properties: publicLiability: type: string format: date-time TrustAccount: type: object properties: id: type: integer format: int64 name: type: string accountNumber: type: string bsbNumber: type: string type: type: string enum: - sales - propertyManagement - combinedSalesAndPropertyManagement TenancyExtended: allOf: - $ref: '#/components/schemas/Tenancy' - type: object properties: bondReceipted: type: number format: float paymentType: type: string paymentReference: type: string TenancyAndProperty: type: object properties: property: type: object properties: id: type: number format: int64 displayAddress: type: string tenancy: $ref: '#/components/schemas/TenancyExtended' PropertyRoom: type: object properties: id: type: integer format: int64 name: type: string description: type: string length: type: number format: float width: type: number format: float units: type: string enum: - feet - metres ContactNoteWithContact: allOf: - $ref: '#/components/schemas/ContactNote' - type: object properties: contact: $ref: '#/components/schemas/ID' FlushProperty: type: object properties: saleLifeId: type: number format: int64 leaseLifeId: type: number format: int64 propertyReference: type: string portals: type: array items: type: string CommercialDeal: type: object properties: id: type: number format: int64 owners: type: array items: $ref: '#/components/schemas/ContactMinimal' tenants: type: array items: $ref: '#/components/schemas/ContactMinimal' unconditional: type: string format: date-time settlement: type: string format: date-time grossCommissionExcGST: type: number format: float outgoingsPerAnnum: type: number format: float outgoingsText: type: string parkingBays: type: number format: int64 parkingInfo: type: string externalAgency: $ref: '#/components/schemas/ContactMinimal' ourDeal: type: boolean CommercialDealSale: allOf: - $ref: '#/components/schemas/CommercialDeal' - type: object properties: purchasers: type: array items: $ref: '#/components/schemas/ContactMinimal' salePrice: type: number format: float vacantPossession: type: boolean CommercialDealLease: allOf: - $ref: '#/components/schemas/CommercialDeal' - type: object properties: leaseStart: type: string format: date-time leaseExpiry: type: string format: date-time leaseExpiryReminder: type: string format: date-time leaseExpiryReminderUser: $ref: '#/components/schemas/Access' annualRent: type: number format: float initialTermYears: type: integer format: int64 renewal1Years: type: integer format: int64 renewal2Years: type: integer format: int64 renewal3Years: type: integer format: int64 fitoutEstimate: type: number format: float otherIncentives: type: string CommissionSplitType: type: object properties: id: type: number format: int64 name: type: string CommissionSplit: type: object properties: id: type: number format: int64 user: $ref: '#/components/schemas/Access' type: $ref: '#/components/schemas/CommissionSplitType' conjunctingAgent: $ref: '#/components/schemas/ContactMinimal' grossPercent: type: number format: float grossAmount: type: number format: float grossAmountLessDeductions: type: number format: float netPercent: type: number format: float netAmount: type: number format: float details: type: string FullSaleHistory: allOf: - $ref: '#/components/schemas/SaleHistory' - type: object properties: commissionSplits: $ref: '#/components/schemas/CommissionSplit' EntityType: type: object properties: id: type: number format: int64 name: type: string IntegratorPropertyStat: type: object properties: name: type: string displayName: type: string value: type: number format: int64 UpdateIntegratorPropertyStats: type: object properties: stats: type: array items: $ref: '#/components/schemas/IntegratorPropertyStat' InsertScheduledViewing: type: object properties: contacts: type: array items: $ref: '#/components/schemas/ID' accessBy: type: array items: $ref: '#/components/schemas/Access' insertedBy: $ref: '#/components/schemas/Access' start: type: string format: date-time end: type: string format: date-time MessageReceipt: type: object properties: id: type: number format: int64 name: type: string seen: type: boolean Message: type: object properties: id: type: number format: int64 threadId: type: number format: int64 message: type: string receipts: type: array items: $ref: '#/components/schemas/MessageReceipt' insertedBy: $ref: '#/components/schemas/Access' inserted: type: string format: date-time isFranchise: type: boolean MessageRecipient: type: object properties: id: type: number format: int64 name: type: string photo: type: string MessageThread: type: object properties: id: type: number format: int64 name: type: string created: type: string format: date-time modified: type: string format: date-time accountId: type: number format: int64 franchiseId: type: number format: int64 insertedBy: $ref: '#/components/schemas/Access' recipients: type: array items: $ref: '#/components/schemas/MessageRecipient' latestMessage: $ref: '#/components/schemas/Message' AddUpdateMessageThread: type: object properties: name: type: string recipients: type: array items: $ref: '#/components/schemas/MessageRecipient' InspectionWithProperty: type: object properties: id: type: integer format: int64 insertedBy: $ref: '#/components/schemas/#definitions/Access' inserted: type: string format: date-time start: type: string format: date-time end: type: string format: date-time status: type: string enum: - proposed - scheduled - confirmed type: type: string enum: - routine - ingoing - outgoing timeOfDay: type: string enum: - morning - afternoon property: type: object properties: id: type: integer format: int64 displayAddress: type: string class: $ref: '#/components/schemas/#definitions/PropertyClass' keyID: type: string keyOut: type: boolean leaseLife: type: object properties: id: type: integer format: int64 status: type: string tenancy: $ref: '#/components/schemas/#definitions/ID' AdvertisingLedgerType: type: object properties: id: type: number format: int64 name: type: string AdvertisingPaymentType: type: object properties: id: type: number format: int64 name: type: string AdvertisingSupplier: type: object properties: id: type: number format: int64 name: type: string AddUpdateAdvertisingSupplier: type: object properties: name: type: string AdvertisingExpenseType: type: object properties: id: type: number format: int64 name: type: string supplier: $ref: '#/components/schemas/#definitions/AdvertisingSupplier' gstInclusive: type: boolean amount: type: number format: float companyContribution: type: number format: float AdvertisingInvoice: type: object properties: id: type: number format: int64 inserted: type: string format: date-time modified: type: string format: date-time invoiceNumber: type: number format: int64 insertedBy: $ref: '#/components/schemas/#definitions/Access' totalAmount: type: number format: float amountOutstanding: type: number format: float addressedTo: $ref: '#/components/schemas/ContactMinimal' gstRateUsed: type: number format: float userInvoiced: $ref: '#/components/schemas/#definitions/Access' saleLifeId: type: number format: int64 tenancyId: type: number format: int64 PriceQualifier: type: object properties: id: type: integer format: int64 name: type: string parameters: sortOrder: name: sortOrder in: query description: Order by which to sort the results. Used in conjunction with sort parameter. schema: type: string enum: - asc - desc leasedSince: name: leasedSince in: query description: Filter results leased since this datetime schema: type: string format: date-time leasedBefore: name: leasedBefore in: query description: Filter results leased before this datetime schema: type: string format: date-time listingAuthoritySince: name: listingAuthoritySince in: query description: Filter results with listing authority date since this datetime schema: type: string format: date-time listingAuthorityBefore: name: listingAuthorityBefore in: query description: Filter results with listing authority date before this datetime schema: type: string format: date-time webLiveDateSince: name: webLiveDateSince in: query description: Filter results with web live date since this datetime schema: type: string format: date-time webLiveDateBefore: name: webLiveDateBefore in: query description: Filter results with web live date before this datetime schema: type: string format: date-time modifiedSince: name: modifiedSince in: query description: Filter results modified since this datetime schema: type: string format: date-time modifiedBefore: name: modifiedBefore in: query description: Filter results modified before this datetime schema: type: string format: date-time unconditionalSince: name: unconditionalSince in: query description: Filter results with unconditional date since this date schema: type: string format: date unconditionalBefore: name: unconditionalBefore in: query description: Filter results with unconditional date before this date schema: type: string format: date settlementSince: name: settlementSince in: query description: Filter results with settlement date since this date schema: type: string format: date settlementBefore: name: settlementBefore in: query description: Filter results with settlement date before this date schema: type: string format: date priceReducedSince: name: priceReducedSince in: query description: Filter results by price reductions since this datetime schema: type: string format: date-time priceReducedBefore: name: priceReducedBefore in: query description: Filter results by price reductions before this datetime schema: type: string format: date-time page: name: page in: query description: Page number of results schema: type: integer format: int64 pagesize: name: pagesize in: query description: Number of records to be returned in each page. schema: type: integer format: int64 default: 50 published: name: published in: query description: Filter properties published to at least one web portal schema: type: boolean publishedOnPortals: name: publishedOnPortals in: query description: Filter properties published to at least one of these office portal IDs style: form explode: false schema: type: array items: type: integer format: int64 suburbs: name: suburbs in: query description: Filter properties in these suburb IDs style: form explode: false schema: type: array items: type: integer format: int64 types: name: types in: query description: Filter properties in these type IDs style: form explode: false schema: type: array items: type: integer format: int64 branches: name: branches in: query description: Filter properties in these account branch IDs style: form explode: false schema: type: array items: type: integer format: int64 after: name: after in: query description: Filter records after this ID schema: type: integer format: int64 securitySchemes: Api-Key: type: apiKey name: X-Api-Key in: header Bearer: type: apiKey description: Use format 'Bearer [token]' name: Authorization in: header