VaultRE Integrator API

Special endpoints for access by integrating partners

Operations 12

GET /integrator/accounts Retrieve a list of accounts linked to this integrator #
GET /integrator/accounts/{id} Retrieve an account linked to this integrator #
GET /integrator/accounts/{id}/users Retrieve a list of users for this account #
GET /integrator/accounts/{accountid}/users/{id} Retrieve a user for this account #
GET /integrator/scopes Retrieve a list of possible scopes for your API key #
GET /integrator/tokens Retrieve a list of bearer tokens, with accounts, linked to this integrator #
GET /scopes Retrieve a list of granted scopes for this bearer token #
POST /integrator/validateUser Validate a user's credentials #
PUT /properties/{propertyid}/{salelease}/{lifeid}/externalStats Integrator property statistics #
POST /properties/{propertyid}/{salelease}/{lifeid}/externalStats Integrator property statistics #
GET /integrator/merge-fields Retrieve available merge fields for an account #
GET /integrator/usage Retrieve daily quota for this API key #

Documentation

Specifications

Code Examples

Other Resources

Work with this as data

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

MCP server

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

https://apis.io/mcp

Tools for apis

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

Call it yourself

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

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

Get an API key

Free tier, no email required.

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

OpenAPI Specification

vaultre-integrator-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Vaultre Integrator API
  contact:
    name: VaultRE
    url: https://www.vaultre.com.au
    email: api@vaultre.com.au
  version: '1.0'
  description: 'Operations tagged integrator across 3 of this provider''s published API definitions: vaultre-api-v1-1-openapi.yml, vaultre-api-v1-2-openapi.yml, vaultre-api-v1-3-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://ap-southeast-2.api.vaultre.com.au/api/v1.1
- url: https://ap-southeast-2.api.vaultre.com.au/api/v1.2
- url: https://ap-southeast-2.api.vaultre.com.au/api/v1.3
tags:
- name: integrator
  description: Special endpoints for access by integrating partners
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: []
    servers:
    - url: https://ap-southeast-2.api.vaultre.com.au/api/v1.1
  /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: []
    servers:
    - url: https://ap-southeast-2.api.vaultre.com.au/api/v1.1
  /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: []
    servers:
    - url: https://ap-southeast-2.api.vaultre.com.au/api/v1.1
  /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: []
    servers:
    - url: https://ap-southeast-2.api.vaultre.com.au/api/v1.1
  /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: []
    servers:
    - url: https://ap-southeast-2.api.vaultre.com.au/api/v1.1
  /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: []
    servers:
    - url: https://ap-southeast-2.api.vaultre.com.au/api/v1.1
  /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: []
    servers:
    - url: https://ap-southeast-2.api.vaultre.com.au/api/v1.1
  /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
    servers:
    - url: https://ap-southeast-2.api.vaultre.com.au/api/v1.2
  /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
    servers:
    - url: https://ap-southeast-2.api.vaultre.com.au/api/v1.2
  /integrator/merge-fields:
    get:
      tags:
      - integrator
      summary: Retrieve available merge fields for an account
      description: 'Integrator-authenticated version of the merge fields endpoint.

        Returns available merge fields for a given template type and delivery method for the specified account.

        The account must be enabled for the integrator.

        When `context` is omitted, returns a tiered response grouping fields by their availability requirements.

        When `context` is provided, returns a flat response containing only the fields usable in that context.'
      operationId: getIntegratorMergeFields
      parameters:
      - name: account_id
        in: query
        description: ID of the account to fetch merge fields for. Must be enabled for this integrator.
        required: true
        schema:
          type: integer
          format: int64
      - name: template_type
        in: query
        description: Template type ID (e.g. market_report, buyer_match, property_alert).
        required: true
        schema:
          type: string
      - name: delivery_method
        in: query
        description: Delivery method to filter fields by. Defaults to email.
        schema:
          type: string
          enum:
          - email
          - sms
          - cloud_letter
          default: email
      - name: context
        in: query
        description: 'Context ID (e.g. contact_only, contact_property_sale). When provided the response

          is a flat list of fields usable in that context. When omitted the response is tiered

          showing all availability levels.'
        schema:
          type: string
      - name: include_custom
        in: query
        description: Include account-specific custom contact and property merge fields.
        schema:
          type: boolean
          default: false
      - name: search
        in: query
        description: Filter fields by matching against the field name, description, or token.
        schema:
          type: string
      responses:
        200:
          description: Merge fields retrieved
          content:
            application/json:
              schema:
                oneOf:
                - $ref: '#/components/schemas/MergeFieldsTieredResponse'
                - $ref: '#/components/schemas/MergeFieldsFlatResponse'
        400:
          description: account_id is required, or an invalid parameter value was supplied
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessOrError'
        404:
          description: Account not found or not enabled for this integrator
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessOrError'
      security:
      - Api-Key: []
        Bearer: []
    servers:
    - url: https://ap-southeast-2.api.vaultre.com.au/api/v1.3
  /integrator/usage:
    get:
      tags:
      - integrator
      summary: Retrieve daily quota for this API key
      operationId: getUsage
      responses:
        200:
          description: Usage retrieved
          content:
            application/json:
              schema:
                type: object
                properties:
                  remaining:
                    type: integer
                    format: int64
                  used:
                    type: integer
                    format: int64
      security:
      - Api-Key: []
        Bearer: []
    servers:
    - url: https://ap-southeast-2.api.vaultre.com.au/api/v1.3
components:
  schemas:
    Account:
      type: object
      properties:
        id:
          type: integer
          format: int64
        name:
          type: string
        businessName:
          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
    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'
    AccountFranchise:
      type: object
      properties:
        id:
          type: integer
          format: int64
        name:
          type: string
    State:
      type: object
      properties:
        id:
          type: integer
          format: int64
        name:
          type: string
        abbreviation:
          type: string
    UserPhoto:
      type: object
      properties:
        original:
          type: string
        thumb_360:
          type: string
    Suburb:
      type: object
      properties:
        id:
          type: integer
          format: int64
        name:
          type: string
        postcode:
          type: string
        state:
          $ref: '#/components/schemas/State'
    User:
      type: object
      properties:
        id:
          type: integer
          format: int64
        firstName:
          type: string
        lastName:
          type: string
        username:
          type: string
        email:
          type: string
          format: email
        adminAccess:
          type: boolean
        position:
          type: string
        role:
          type: string
          enum:
          - commercialSalesAndLeasing
          - residentialSales
          - propertyManagement
        photo:
          $ref: '#/components/schemas/UserPhoto'
        lastLogin:
          type: string
          format: date-time
        phoneNumbers:
          type: array
          items:
            $ref: '#/components/schemas/PhoneNumber'
        profile:
          type: string
        permissions:
          type: object
          properties:
            settings:
              type: boolean
            canLogin:
              type: boolean
            deleteContacts:
              type: boolean
            globalActionListsReadWrite:
              type: boolean
            globalContactsReadWrite:
              type: boolean
            globalNotesRead:
              type: boolean
            globalNotesReadWrite:
              type: boolean
            globalPropertiesRead:
              type: boolean
            globalPropertiesReadWrite:
              type: boolean
            globalTasksReadWrite:
              type: boolean
            sendSMS:
              type: boolean
    Country:
      type: object
      properties:
        id:
          type: integer
          format: int64
        name:
          type: string
        isocode:
          type: string
        gstRate:
          type: number
          format: float
    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
    Account_2:
      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_2'
        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
    UpdateIntegratorPropertyStats:
      type: object
      properties:
        stats:
          type: array
          items:
            $ref: '#/components/schemas/IntegratorPropertyStat'
    User_2:
      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_2'
        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
    IntegratorPropertyStat:
      type: object
      properties:
        name:
          type: string
        displayName:
          type: string
        value:
          type: number
          format: int64
    PhoneNumber_2:
      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
    SuccessOrError:
      type: object
      properties:
        success:
          type: boolean
        msg:
          type: string
        code:
          type: string
    Credential:
      type: object
      properties:
        password:
          type: string
        username:
          type: string
    MarketingUserOrder:
      type: object
      properties:
        id:
          type: integer
          format: int64
        name:
          type: string
    ID:
      type: object
      properties:
        id:
          type: integer
          format: int64
    Token:
      type: object
      properties:
        account:
          $ref: '#/components/schemas/ID'
        token:
          type: string
        scopes:
          type: array
          items:
            type: string
    MergeFieldsFlatResponse:
      type: object
      description: Returned when a context is provided. Shows only fields usable in that context.
      required:
      - meta
      - categories
      properties:
        meta:
          type: object
          required:
          - response_type
          properties:
            context:
              type: string
              description: The context used to filter the fields
            template_type:
              type: string
              description: The template type used to filter the fields
            delivery_method:
              type: string
              description: The delivery method used to filter the fields
            response_type:
              type: string
              enum:
              - flat
            total_fields:
              type: integer
              format: int32
              description: Total number of fields returned
            registry_version:
              type: string
              description: Version of the merge field registry
        categories:
          type: array
          items:
            $ref: '#/components/schemas/MergeFieldCategory'
    MergeFieldCategory:
      type: object
      required:
      - id
      - name
      - fields
      properties:
        id:
          type: string
          description: Category identifier
        name:
          type: string
          description: Human-readable category name
        description:
          type: string
          description: Description of the category
        fields:
          type: array
          items:
            $ref: '#/components/schemas/MergeField'
    Region:
      type: object
      properties:
        id:
          type: integer
          format: int64
        name:
          type: string
    MergeField:
      type: object
      required:
      - token
      - name
      properties:
        token:
          type: string
          description: The merge field token (e.g. $$ContactFirstName$$)
        name:
          type: string
          description: Human-readable name of the field
        description:
          type: string
          description: Description of the field
        category:
          type: string
          description: Category ID this field belongs to
        engines:
          type: array
          description: Delivery engines that support this field
          items:
            type: string
            enum:
            - email
            - sms
            - cloud_letter
        in_editor:
          type: boolean
          description: Whether the field is available in the template editor
        deprecated:
          type: boolean
          description: Whether the field is deprecated
        custom_field:
          type: boolean
          description: Whether the field is a custom account-specific field
    Urls:
      type: object
      properties:
        previous:
          type: string
        next:
          type: string
        self:
          type: string
    User_3:
      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_3'
        profile:
          type: string
        permissions:
          type: object
          properties:
            settings:
              type: boolean
            accessPropertyManagement:
              type: boolean
            accessSales:
              type: boolean
            canLogin:
              type: boolean
            deleteContacts:
              type: boolean
            deleteProperties:
              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
            accessPropertyFinancials:
              type: boolean
            accessAlarmDetails:
              type: boolean
            modifyWebsiteContent:
              type: boolean
            editMarketingContact:
              type: boolean
        websiteUrl:
          type: string
        showOnWeb:
          type: boolean
        externalReference:
          type: string
        ssoIdentifier:
          type: string
        signature:
          type: string
        account:
          type: object
          properties:
            id:
              type: integer
              format: int64
            name:
              type: string
        hideMobileFromPortal:
          type: boolean
    PhoneNumber_3:
      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
    CustomAddress:
      type: object
      properties:
        address1:
          type: string
        address2:
          type: string
        postTown:
          type: string
        postcode:
          type: string
    Account_3:
      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_3'
        address:
          $ref: '#/components/schemas/Address_2'
        postalAddress:
          $ref: '#/components/schemas/Address_2'
        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
    Address_2:
      type: object
      properties:
        level:
          type: string
        unitNumber:
          type: string
        streetNumber:
          type: string
        street:
          type: string
        suburb:
          $ref: '#/components/schemas/Suburb_2'
        state:
          $ref: '#/components/schemas/State'
        country:
          $ref: '#/components/schemas/Country'
        royalMail:
          $ref: '#/components/schemas/RoyalMail'
        customAddress:
          $ref: '#/components/schemas/CustomAddress'
    Suburb_2:
      type: object
      properties:
        id:
          type: integer
          format: int64
        name:
          type: string
        postcode:
          type: string
        state:
          $ref: '#/components/schemas/State'
        nzDistrict:
          $ref: '#/components/schemas/District'
        isPoBox:
          type: boolean
    District:
      type: object
      properties:
        id:
          type: integer
          format: int64
        name:
          type: string
        region:
          $ref: '#/components/schemas/Region'
    RoyalMail:
      type: object
      properties:
        buildingName:
          type: string
        buildingNumber:
          type: string
        department:
          type: string
        locality:
          type: string
        locality2:
          type: string
        organisation:
          type: string
        postTown:
          type: string
        postcode:
          type: string
        subbuildingName:
          type: string
        subbuildingNumber:
          type: string
        thoroughfare:
          type: string
        thoroughfare2:
          type: string
        udprn:
          type: integer
          format: int64
    MergeFieldTier:
      type: object
      required:
      - id
      - name
      - categories
      properties:
        id:
          type: string
          description: Tier identifier (e.g. always_available, requires_property)
        name:
          type: string
          description: Human-readable tier name
        description:
          type: string
          description: Description of the tier
        categories:
          type: array
          items:
            $ref: '#/components/schemas/MergeFieldCategory'
    MergeFieldsTieredResponse:
      type: object
      description: Returned when no context is provided. Shows all availability tiers.
      required:
      - meta
      - tiers
      properties:
        meta:
          type: object
          required:
          - response_type
          properties:
            template_type:
              type: string
              description: The template type used to filter the fields
            delivery_method:
              type: string
              description: The delivery method used to filter the fields
            response_type:
              type: string
              enum:
              - tiered
            total_fields:
              type: integer
              format: int32
              description: Total number of fields returned across all tiers
            registry_version:
              type: string
              description: Version of the merge field registry
        tiers:
          type: array
          items:
            $ref: '#/components/schemas/MergeFieldTier'
  parameters:
    pagesize:
      name: pagesize
      in: query
      description: Number of records to be returned in each page.
      schema:
        type: integer
        format: int64
        default: 50
    page:
      name: page
      in: query
      description: Page number of results
      schema:
        type: integer
        format: int64
    sortOrder:
      name: sortOrder
      in: query
      description: Order by which to sort the results. Used in conjunction with sort parameter.
      schema:
   

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