Propertyware Units API

Resources providing access to units.

Operations 11

GET /units Retrieve all units #
POST /units Create a unit #
POST /units/bulk Create units in bulk #
PUT /units/customfields Update a unit custom fields (BETA) #
GET /units/{unitID} Retrieve a unit #
PUT /units/{unitID} Update a unit #
DELETE /units/{unitID} Delete a unit (BETA) #
GET /units/{unitID}/conversations Retrieve all unit conversations #
GET /units/{unitID}/conversations/{conversationID} Retrieve a unit conversation #
DELETE /units/{unitID}/conversations/{conversationID} Delete a unit conversation (BETA) #
GET /units/{unitID}/customFields Retrieve all unit custom fields #

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/propertyware-units-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 form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

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

OpenAPI Specification

propertyware-units-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  description: "\uFEFF\n\n# Introduction\n\nWelcome to Propertyware’s API—a powerful, RESTful programming interface that lets you leverage valuable Propertyware data."
  version: '1.0'
  title: Open API, powered by Propertyware Units API
  contact:
    name: Propertyware
    email: support@propertyware.com
  x-logo:
    url: logo.png
    backgroundColor: '#fff'
    altText: Propertyware, A RealPage Company
    href: https://www.propertyware.com
servers:
- url: https://api.propertyware.com/pw/api/rest/v1
security:
- clientId: []
- clientSecret: []
- organizationId: []
tags:
- name: Units
  description: Resources providing access to units.
paths:
  /units:
    get:
      tags:
      - Units
      summary: Retrieve all units
      description: 'Retrieves a list of units.


        Required permission:

        UNITS - Read


        Sortable by: createddate, idnumber, name, abbreviation, lastmodifieddatetime, id'
      operationId: getUnits
      parameters:
      - name: offset
        in: query
        description: '`offset` indicates the position of the first record to return. The offset is zero-based and the default is 0.'
        required: false
        schema:
          type: integer
          format: int32
      - name: limit
        in: query
        description: '`limit` indicates the maximum number of results to be returned in the response. `limit` can range between 1 and 500 and the default is 100.'
        required: false
        schema:
          type: integer
          format: int32
          default: 100
      - name: lastModifiedDateTimeStart
        in: query
        description: 'Filters results to any item modified on or after the date time specified. '
        required: false
        schema:
          type: string
          format: date-time
      - name: lastModifiedDateTimeEnd
        in: query
        description: 'Filters results to any item modified on or prior to the date time specified. '
        required: false
        schema:
          type: string
          format: date-time
      - name: orderby
        in: query
        description: Indicates the field(s) and direction to sort the results in the response.
        required: false
        schema:
          type: string
      - name: vacant
        in: query
        description: Filters results by the unit's vacancy status. If no value is specified, units with any status will be returned.
        required: false
        schema:
          type: boolean
      - name: publishedForRent
        in: query
        description: Filters results by the unit's "published for rent" status. If no value is specified, units with any status will be returned.
        required: false
        schema:
          type: boolean
      - name: portfolioID
        in: query
        description: Filters results to units associated with a specific portfolio.
        required: false
        schema:
          type: integer
          format: int64
      - name: buildingID
        in: query
        description: Filters results to units associated with a specific building.
        required: false
        schema:
          type: integer
          format: int64
      - name: type
        in: query
        description: Filters results to units with a specific type.
        required: false
        schema:
          type: string
      - name: includeDeactivated
        in: query
        description: Include inactive units in the results.
        required: false
        schema:
          type: boolean
      - name: includeCustomFields
        in: query
        description: includeCustomFields
        required: false
        schema:
          type: boolean
          default: false
      responses:
        '200':
          description: OK
          headers:
            X-Total-Count:
              description: The total resultset count
              schema:
                type: integer
                format: int64
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Unit'
        '400':
          description: Unable to process the request due to malformed request syntax or invalid parameters.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: The API key couldn't be authorized.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: The supplied credentials don't have permissions to access the resources.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
    post:
      tags:
      - Units
      summary: Create a unit
      description: 'Creates a unit.


        Required permission:

        UNITS - Write'
      operationId: createUnit
      requestBody:
        $ref: '#/components/requestBodies/SaveUnit'
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Unit'
        '400':
          description: Unable to process the request due to malformed request syntax or invalid parameters.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: The API key couldn't be authorized.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: The supplied credentials don't have permissions to access the resources.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
  /units/bulk:
    post:
      tags:
      - Units
      summary: Create units in bulk
      description: 'Creates units in bulk.


        Required permission:

        BUILDINGS - Write'
      operationId: createUnits
      requestBody:
        content:
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/SaveUnit'
        description: saveUnit
        required: true
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/RESTAPIBulkSuccessResponse'
        '400':
          description: Unable to process the request due to malformed request syntax or invalid parameters.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/RESTAPIBulkErrorResponse'
        '401':
          description: The API key couldn't be authorized.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: The supplied credentials don't have permissions to access the resources.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
  /units/customfields:
    put:
      tags:
      - Units
      summary: Update a unit custom fields (BETA)
      description: 'Note: Write access is only available to customers who have opted in to our beta program. Please reach out to support if you''d like to be included.


        Updates an existing unit custom fields


        Required permission:

        UNITS - Write'
      operationId: updateUnit
      requestBody:
        $ref: '#/components/requestBodies/SaveCustomField'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseEntity'
        '400':
          description: Unable to process the request due to malformed request syntax or invalid parameters.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: The API key couldn't be authorized.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: The supplied credentials don't have permissions to access the resources.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: Entity not found.
  /units/{unitID}:
    get:
      tags:
      - Units
      summary: Retrieve a unit
      description: 'Retrieves a specific unit.


        Required permission:

        UNITS - Read'
      operationId: getUnit
      parameters:
      - name: unitID
        in: path
        description: Unit ID
        required: true
        schema:
          type: integer
          format: int64
      - name: includeCustomFields
        in: query
        description: includeCustomFields
        required: false
        schema:
          type: boolean
          default: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Unit'
        '400':
          description: Unable to process the request due to malformed request syntax or invalid parameters.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: The API key couldn't be authorized.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: The supplied credentials don't have permissions to access the resources.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: Entity not found.
    put:
      tags:
      - Units
      summary: Update a unit
      description: 'Update as unit.


        Required permission:

        UNITS - Write'
      operationId: updateUnitUsingPUT_1
      parameters:
      - name: unitID
        in: path
        description: Unit ID
        required: true
        schema:
          type: integer
          format: int64
      requestBody:
        $ref: '#/components/requestBodies/SaveUnit'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Unit'
        '400':
          description: Unable to process the request due to malformed request syntax or invalid parameters.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: The API key couldn't be authorized.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: The supplied credentials don't have permissions to access the resources.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: Entity not found.
    delete:
      tags:
      - Units
      summary: Delete a unit (BETA)
      description: 'Note: Write access is only available to customers who have opted in to our beta program. Please reach out to support if you''d like to be included.


        Deletes a specific unit.


        Required permission:

        UNITS - Delete'
      operationId: deleteUnit
      parameters:
      - name: unitID
        in: path
        description: Unit ID
        required: true
        schema:
          type: integer
          format: int64
      responses:
        '204':
          description: No Content
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ResponseEntity'
        '400':
          description: Unable to process the request due to malformed request syntax or invalid parameters.
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: The API key couldn't be authorized.
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: The supplied credentials don't have permissions to access the resources.
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: Entity not found.
  /units/{unitID}/conversations:
    get:
      tags:
      - Units
      summary: Retrieve all unit conversations
      description: 'Retrieves all the conversations of a unit.


        Required permission:

        UNITS - Read


        Sortable by: createddate, lastmodifieddatetime, id'
      operationId: getUnitConversations
      parameters:
      - name: unitID
        in: path
        description: Unit ID
        required: true
        schema:
          type: integer
          format: int64
      - name: offset
        in: query
        description: '`offset` indicates the position of the first record to return. The offset is zero-based and the default is 0.'
        required: false
        schema:
          type: integer
          format: int32
      - name: limit
        in: query
        description: '`limit` indicates the maximum number of results to be returned in the response. `limit` can range between 1 and 500 and the default is 100.'
        required: false
        schema:
          type: integer
          format: int32
          default: 100
      - name: lastModifiedDateTimeStart
        in: query
        description: 'Filters results to any item modified on or after the date time specified. '
        required: false
        schema:
          type: string
          format: date-time
      - name: lastModifiedDateTimeEnd
        in: query
        description: 'Filters results to any item modified on or prior to the date time specified. '
        required: false
        schema:
          type: string
          format: date-time
      - name: orderby
        in: query
        description: Indicates the field(s) and direction to sort the results in the response.
        required: false
        schema:
          type: string
      - name: type
        in: query
        description: Filters results by the conversation type.
        required: false
        schema:
          type: string
          enum:
          - MANAGEMENT_TEAM
          - OWNER
          - TENANT
      responses:
        '200':
          description: OK
          headers:
            X-Total-Count:
              description: The total resultset count
              schema:
                type: integer
                format: int64
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Conversation'
        '400':
          description: Unable to process the request due to malformed request syntax or invalid parameters.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: The API key couldn't be authorized.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: The supplied credentials don't have permissions to access the resources.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: Entity not found.
  /units/{unitID}/conversations/{conversationID}:
    get:
      tags:
      - Units
      summary: Retrieve a unit conversation
      description: 'Retrieves a specific unit conversation.


        Required permission:

        UNITS - Read'
      operationId: getUnitConversation
      parameters:
      - name: unitID
        in: path
        description: Unit ID
        required: true
        schema:
          type: integer
          format: int64
      - name: conversationID
        in: path
        description: Conversation ID
        required: true
        schema:
          type: integer
          format: int64
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Conversation'
        '400':
          description: Unable to process the request due to malformed request syntax or invalid parameters.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: The API key couldn't be authorized.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: The supplied credentials don't have permissions to access the resources.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: Entity not found.
    delete:
      tags:
      - Units
      summary: Delete a unit conversation (BETA)
      description: 'Note: Write access is only available to customers who have opted in to our beta program. Please reach out to support if you''d like to be included.


        Deletes a specific unit conversation.


        Required permission:

        UNITS - Delete'
      operationId: deleteUnitConversation
      parameters:
      - name: unitID
        in: path
        description: Unit ID
        required: true
        schema:
          type: integer
          format: int64
      - name: conversationID
        in: path
        description: Conversation ID
        required: true
        schema:
          type: integer
          format: int64
      responses:
        '204':
          description: No Content
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseEntity'
        '400':
          description: Unable to process the request due to malformed request syntax or invalid parameters.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: The API key couldn't be authorized.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: The supplied credentials don't have permissions to access the resources.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: Entity not found.
  /units/{unitID}/customFields:
    get:
      tags:
      - Units
      summary: Retrieve all unit custom fields
      description: 'Retrieves all the custom fields of a unit.


        Required permission:

        UNITS - Read'
      operationId: getLeaseCustomFieldsUsingGET_1
      parameters:
      - name: unitID
        in: path
        description: Unit ID
        required: true
        schema:
          type: integer
          format: int64
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Unit'
        '400':
          description: Unable to process the request due to malformed request syntax or invalid parameters.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: The API key couldn't be authorized.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: The supplied credentials don't have permissions to access the resources.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: Entity not found.
components:
  schemas:
    SaveCustomField:
      type: object
      required:
      - entityId
      - fieldSet
      properties:
        entityId:
          type: integer
          format: int64
          description: Unique identifier of an entity custom field associated to.
        fieldSet:
          type: array
          description: List of Custom fields to update
          items:
            $ref: '#/components/schemas/CustomFieldSet'
      description: Custom field for Request
    ManagementFee:
      type: object
      properties:
        accountCode:
          type: string
          description: Management fee account code.
        accountNumber:
          type: string
          description: Management fee account number.
        id:
          type: integer
          format: int64
          description: Unique identifier.
        manager:
          type: string
          description: Property manager name.
        managersCommissionPercentage:
          type: number
          format: double
          description: Property manager commission percentage.
        passThrough:
          type: boolean
          example: false
          description: Indicates if the commission account is of the passthrough type.
        percentage:
          type: number
          format: double
          description: Management fee percentage.
      description: Management Fee
    Address:
      type: object
      properties:
        address:
          type: string
          description: Primary street and/or unit address.
        addressCont:
          type: string
          description: Address continuation.
        city:
          type: string
          description: City.
        country:
          type: string
          description: Country.
        postalCode:
          type: string
          description: Postal code.
        stateRegion:
          type: string
          description: State/region.
      description: Address
    CustomFieldSet:
      type: object
      required:
      - name
      - value
      properties:
        name:
          type: string
          description: Custom Field name
        value:
          type: string
          description: Custom Field value
      description: Custom field set for Request
    Amenity:
      type: object
      properties:
        code:
          type: string
          description: Amenity code.
        id:
          type: integer
          format: int64
          description: Unique identifier.
        name:
          type: string
          description: Amenity name.
        type:
          type: string
          description: Amenity type.
      description: Amenity
    Conversation:
      type: object
      properties:
        comments:
          type: array
          description: List of comments in the conversation.
          items:
            $ref: '#/components/schemas/Comment'
        createdBy:
          type: string
          description: User who created the record.
        createdDateTime:
          type: string
          format: date-time
          description: 'Date and time the record was created. (Timezone: UTC)'
        entityID:
          type: integer
          format: int64
          description: Id of the entity related to this conversation.
        entityType:
          type: string
          description: Type of the entity related to this conversation.
        id:
          type: integer
          format: int64
          description: Unique identifier.
        lastModifiedBy:
          type: string
          description: User who last modified the record.
        lastModifiedDateTime:
          type: string
          format: date-time
          description: 'Date and time the record was last modified. (Timezone: UTC)'
        subject:
          type: string
          description: Conversation subject.
        type:
          type: string
          description: Conversation type.
          enum:
          - MANAGEMENT_TEAM
          - OWNER
          - TENANT
      description: Conversation
    RESTAPIError:
      type: object
      properties:
        key:
          type: string
        message:
          type: string
    ManagementSettings:
      type: object
      properties:
        managementContractEndDate:
          type: string
          format: date
          description: End date of the property contract.
        managementContractStartDate:
          type: string
          format: date
          description: Start date of the property contract.
        managementFeeType:
          type: string
          description: 'Indicates the type of management fee. This field is deprecated and should not be used. Instead, use the new field ''managementFeesType''. '
        managementFees:
          type: array
          description: List of property management fee rules.
          items:
            $ref: '#/components/schemas/ManagementFee'
        managementFeesType:
          type: string
          description: Indicates the type of management fee.
          enum:
          - MANAGE_FEE_NONE
          - MANAGE_FEE_GREATER_OF_FLAT_OR_PERCENTAGE
          - MANAGE_FEE_FLAT_PLUS_PERCENTAGE
        managementFlatFee:
          type: number
          format: double
          description: Flat management fee amount.
      description: Property management information
    ErrorResponse:
      type: object
      properties:
        errorCode:
          type: string
        errors:
          type: array
          items:
            $ref: '#/components/schemas/RESTAPIError'
        userMessage:
          type: string
    ResponseEntity:
      type: object
      properties:
        body:
          type: object
        statusCode:
          type: string
          enum:
          - '100'
          - '101'
          - '102'
          - '103'
          - '200'
          - '201'
          - '202'
          - '203'
          - '204'
          - '205'
          - '206'
          - '207'
          - '208'
          - '226'
          - '300'
          - '301'
          - '302'
          - '303'
          - '304'
          - '305'
          - '307'
          - '308'
          - '400'
          - '401'
          - '402'
          - '403'
          - '404'
          - '405'
          - '406'
          - '407'
          - '408'
          - '409'
          - '410'
          - '411'
          - '412'
          - '413'
          - '414'
          - '415'
          - '416'
          - '417'
          - '418'
          - '419'
          - '420'
          - '421'
          - '422'
          - '423'
          - '424'
          - '426'
          - '428'
          - '429'
          - '431'
          - '500'
          - '501'
          - '502'
          - '503'
          - '504'
          - '505'
          - '506'
          - '507'
          - '508'
          - '509'
          - '510'
          - '511'
    SaveUnit:
      type: object
      required:
      - abbreviation
      - buildingID
      - category
      - name
      - portfolioID
      - type
      properties:
        abbreviation:
          type: string
          description: Abbreviation of Unit.
          minLength: 1
          maxLength: 12
        address:
          $ref: '#/components/schemas/SaveAddress'
        availableDate:
          type: string
          format: date
          description: Unit Available date to lease.
        buildingID:
          type: integer
          format: int64
          description: Id of the building associated with this unit.
        category:
          type: string
          description: Unit Category.
          enum:
          - RESIDENTIAL
          - COMMERCIAL
        county:
          type: string
          description: Unit region of a state.
        description:
          type: string
          description: Marketing Description.
          minLength: 0
          maxLength: 65535
        floorNumber:
          type: integer
          format: int32
          description: Floor number.
          enum:
          - 0
          - 1
          - 2
        name:
          type: string
          description: Name of the unit.
        neighborhood:
          type: string
          description: Neighborhood.
          minLength: 0
          maxLength: 30
        numberBathrooms:
          type: number
          format: double
          description: Number of bathrooms in the unit.
          enum:
          - 0
          - 1
          - 1.5
          - 2
          - 2.5
          - 3
          - 3.5
          - 4
          - 4.5
          - 5
          - 5.5
          - 6
          - 6.5
          - 7
          - 7.5
          - 8
          - 8.5
          - 9
          - 9.5
          - 10
        numberBedrooms:
          type: integer
          format: int32
          description: Number of bedrooms in the unit.
          minimum: 0
          maximum: 20
        portfolioID:
          type: integer
          format: int64
          description: Id of the portfolio associated with this unit.
        ready:
          type: boolean
          example: false
          description: Indicates if property is ready to be leased.
        reasonForPropertyLost:
          type: string
          description: Reason for property lost.
          enum:
          - EMPTY
          - ABANDONED
          - FORECLOSURE
          - MGR_RETURNED_TO_OWNER
          - OTB_AS_FRBO
          - OWNER_MOVED_BACK
          - REFERRED_TO_SALES
          - REFERRED_TO_SALES_OR_SOLD
        residential:
          type: boolean
          example: false
          description: Is Unit is Residential or Commercial.
        searchTag:
          type: string
          description: Search tag.
          minLength: 0
          maxLength: 25
        targetDeposit:
          type: number
          format: double
          description: Target deposit amount.
        targetRent:
          type: number
          format: double
          description: Market rent for the unit.
        targetRentUnits:
          type: string
          description: Property target rent units.
          enum:
          - DOLLAR_PER_SQ_FT_MONTH
          - DOLLAR_PER_SQ_FT_YEAR
          - DOLLAR_PER_SQ_M_MONTH
          - DOLLAR_PER_SQ_M_YEAR
          - DOLLAR_PER_MONTH
          - DOLLAR_PER_WEEK
          - DOLLAR_PER_NIGHT
        totalArea:
          type: number
          format: double
          description: Unit Area.
        type:
          type: string
          description: Indicates Unit type like Business Office,Medical Office,Showroom,R  and  D,Assigned Parking (Indoor),Assigned Parking (Outdoor),Warehouse,Restaurant,Shopping Mall Retail,Street Retail,Manufacturing,House,Town House,Apartment,Flat,Studio,Loft,Assigned Parking (Indoor),Assigned Parking (Outdoor) etc.
      description: SaveUnit
    CustomField:
      type: object
      properties:
        dataType:
          type: string
          description: Data type of the custom field.
        definitionID:
          type: integer
          format: int64
          description: Id of the custom field definition.
        fieldName:
          type: string
          description: Name of the custom field.
        value:
          type: string
          description: Value of the custom field.
      description: Custom field.
    Unit:
      type: object
      properties:
        abbreviation:
          type: string
          description: Property abbreviation.
        active:
          type: boolean
          example: false
          description: Indicates if the property is active or inactive.
        address:
          $ref: '#/components/schemas/Address'
        amenities:
          type: array
          description: Property amenities list.
    

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