Reonomy Property Search API

Searches U.S. commercial real-estate properties by attribute filters (asset category, land use, building area, sale price, dates) and map filters (radius circle, polygon, bounding box), returning matching property IDs and coordinates. Includes the address / geolocation resolution endpoint that maps a known property to its Reonomy property ID.

OpenAPI Specification

reonomy-openapi.yml Raw ↑
openapi: 3.0.1
info:
  title: Reonomy Property API
  description: >-
    The Reonomy Property API delivers commercial real-estate property
    intelligence for U.S. properties: attribute and map-based property search,
    address / geolocation resolution to a stable Reonomy property ID, and rich
    property detail records covering basic data, taxes, sales, mortgages,
    ownership, tenants, and foreclosure. All requests are authenticated with
    HTTP Basic Authentication using a base64-encoded access-key / secret-key
    pair. Access is provisioned by Reonomy sales.
  termsOfService: https://www.reonomy.com/terms-of-service
  contact:
    name: Reonomy
    url: https://www.reonomy.com
    email: sales@reonomy.com
  version: '2.0'
servers:
  - url: https://api.reonomy.com/v2
    description: Reonomy Property API v2
security:
  - basicAuth: []
tags:
  - name: Search
    description: Search and resolve commercial real-estate properties.
  - name: Property
    description: Retrieve detailed property records by ID.
paths:
  /search/summaries:
    post:
      operationId: searchSummaries
      tags:
        - Search
      summary: Search for properties
      description: >-
        Returns property IDs and coordinates for properties matching the
        supplied attribute filters (settings) and map filters (circles,
        polygons, bounding box). Resubmit with the returned search_token to
        page through additional results.
      parameters:
        - name: search_token
          in: query
          required: false
          description: Token returned by a prior search, used to retrieve the next page of results.
          schema:
            type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SearchRequest'
      responses:
        '200':
          description: Matching property summaries.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SearchResponse'
        '401':
          description: Authentication failed.
  /search/property-shapes:
    post:
      operationId: searchPropertyShapes
      tags:
        - Search
      summary: Retrieve property parcel shapes
      description: >-
        Returns parcel shape geometry for the specified properties or search
        criteria.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PropertyShapesRequest'
      responses:
        '200':
          description: Parcel shape geometry.
          content:
            application/json:
              schema:
                type: object
        '401':
          description: Authentication failed.
  /resolve/property:
    post:
      operationId: resolveProperty
      tags:
        - Search
      summary: Resolve a property to a Reonomy property ID
      description: >-
        Locates a matching Reonomy property ID from a supplied address,
        geolocation, or place name.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ResolveRequest'
      responses:
        '200':
          description: Resolved property reference(s).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResolveResponse'
        '401':
          description: Authentication failed.
  /property/{property_id}:
    get:
      operationId: getProperty
      tags:
        - Property
      summary: Get a single property
      description: >-
        Returns detailed information for a single Reonomy property. Use the
        detail_type query parameter (repeatable) to select which detail
        sections are returned.
      parameters:
        - name: property_id
          in: path
          required: true
          description: The Reonomy property ID.
          schema:
            type: string
        - name: detail_type
          in: query
          required: false
          description: >-
            Detail section to include in the response. May be repeated to
            request multiple sections. Defaults to basic.
          schema:
            type: string
            enum:
              - basic
              - taxes
              - sales
              - mortgages
              - ownership
              - tenants
              - foreclosure
        - name: filter_pii
          in: query
          required: false
          description: When true, excludes fields tagged as personally identifiable information.
          schema:
            type: boolean
      responses:
        '200':
          description: Property detail record.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Property'
        '401':
          description: Authentication failed.
        '404':
          description: Property not found.
  /property/bulk:
    post:
      operationId: getPropertiesBulk
      tags:
        - Property
      summary: Get multiple properties
      description: >-
        Returns detailed records for the property IDs specified in the request
        body, up to 250 properties per call.
      parameters:
        - name: filter_pii
          in: query
          required: false
          description: When true, excludes fields tagged as personally identifiable information.
          schema:
            type: boolean
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BulkRequest'
      responses:
        '200':
          description: Property detail records.
          content:
            application/json:
              schema:
                type: object
                properties:
                  items:
                    type: array
                    items:
                      $ref: '#/components/schemas/Property'
        '401':
          description: Authentication failed.
components:
  securitySchemes:
    basicAuth:
      type: http
      scheme: basic
      description: >-
        HTTP Basic Authentication. The Authorization header carries a
        base64-encoded access_key:secret_key access token issued by Reonomy.
  schemas:
    Range:
      type: object
      properties:
        min:
          type: number
        max:
          type: number
    DateRange:
      type: object
      properties:
        min:
          type: string
          format: date
        max:
          type: string
          format: date
        relative_min:
          type: integer
        relative_max:
          type: integer
    LatLon:
      type: object
      properties:
        lat:
          type: number
          format: double
        lon:
          type: number
          format: double
    SearchSettings:
      type: object
      description: Attribute filters applied to the property search.
      properties:
        asset_category:
          type: array
          items:
            type: string
        land_use_code_description:
          type: array
          items:
            type: string
        building_area:
          $ref: '#/components/schemas/Range'
        sales_price:
          $ref: '#/components/schemas/Range'
        master_update_time:
          $ref: '#/components/schemas/DateRange'
        sale_update_time:
          $ref: '#/components/schemas/DateRange'
        fips:
          type: array
          items:
            type: string
    MapFilters:
      type: object
      description: Geospatial filters applied to the property search.
      properties:
        circles:
          type: array
          items:
            type: object
            properties:
              lat:
                type: number
                format: double
              lon:
                type: number
                format: double
              radius_m:
                type: number
        polygons:
          type: array
          items:
            type: object
            properties:
              coordinates:
                type: array
                items:
                  $ref: '#/components/schemas/LatLon'
        bounding_box:
          type: object
          properties:
            top_left:
              $ref: '#/components/schemas/LatLon'
            bottom_right:
              $ref: '#/components/schemas/LatLon'
    Sort:
      type: object
      properties:
        name:
          type: string
        order:
          type: string
          enum:
            - asc
            - desc
    SearchRequest:
      type: object
      properties:
        settings:
          $ref: '#/components/schemas/SearchSettings'
        map_filters:
          $ref: '#/components/schemas/MapFilters'
        sort:
          type: array
          items:
            $ref: '#/components/schemas/Sort'
        limit:
          type: integer
          default: 10
    SearchSummaryItem:
      type: object
      properties:
        id:
          type: string
          description: The Reonomy property ID.
        location:
          $ref: '#/components/schemas/LatLon'
    SearchResponse:
      type: object
      properties:
        count:
          type: integer
        items:
          type: array
          items:
            $ref: '#/components/schemas/SearchSummaryItem'
        search_token:
          type: string
    PropertyShapesRequest:
      type: object
      properties:
        property_ids:
          type: array
          items:
            type: string
    ResolveRequest:
      type: object
      description: Address, geolocation, or place name used to resolve a property.
      properties:
        address:
          type: string
        city:
          type: string
        state_code:
          type: string
        postal_code:
          type: string
        latitude:
          type: number
          format: double
        longitude:
          type: number
          format: double
        place_name:
          type: string
    ResolveResponse:
      type: object
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/SearchSummaryItem'
    BulkRequest:
      type: object
      properties:
        property_ids:
          type: array
          maxItems: 250
          items:
            type: string
        detail_type:
          type: array
          items:
            type: string
            enum:
              - basic
              - taxes
              - sales
              - mortgages
              - ownership
              - tenants
              - foreclosure
    Person:
      type: object
      properties:
        display:
          type: string
        jobs:
          type: array
          items:
            type: object
        addresses:
          type: array
          items:
            type: object
        phones:
          type: array
          items:
            type: string
        emails:
          type: array
          items:
            type: string
    Company:
      type: object
      properties:
        name:
          type: string
        parent_id:
          type: string
    Contact:
      type: object
      properties:
        contact_type:
          type: string
        is_signatory:
          type: boolean
        match_score:
          type: number
        is_green_match:
          type: boolean
        persons:
          type: array
          items:
            $ref: '#/components/schemas/Person'
        company:
          $ref: '#/components/schemas/Company'
    Ownership:
      type: object
      properties:
        contacts:
          type: array
          items:
            $ref: '#/components/schemas/Contact'
    Mortgage:
      type: object
      properties:
        borrower_name:
          type: string
        lender_name:
          type: string
        signatory:
          type: string
    Sale:
      type: object
      properties:
        sale_amount:
          type: number
        sale_date:
          type: string
          format: date
    Tenant:
      type: object
      properties:
        name:
          type: string
        contacts:
          type: array
          items:
            $ref: '#/components/schemas/Contact'
    Property:
      type: object
      description: A Reonomy property record. Detail sections are present per requested detail_type.
      properties:
        property_id:
          type: string
        address:
          type: string
        city:
          type: string
        state_code:
          type: string
        postal_code:
          type: string
        parcel_number:
          type: string
        block_id:
          type: string
          description: NYC properties only.
        borough_id:
          type: string
          description: NYC properties only.
        latitude:
          type: number
          format: double
        longitude:
          type: number
          format: double
        mortgages:
          type: array
          items:
            $ref: '#/components/schemas/Mortgage'
        ownership:
          $ref: '#/components/schemas/Ownership'
        sales:
          type: array
          items:
            $ref: '#/components/schemas/Sale'
        taxes:
          type: object
        tenants:
          type: array
          items:
            $ref: '#/components/schemas/Tenant'
        foreclosure:
          type: object