Skip to content

PropertyRadar API (5.0.0.0)

PropertyRadar Public API

Download OpenAPI description
Languages
Servers
https://api.propertyradar.com

Properties

Find owners, properties, parcels and documents

Operations

Persons

View and Export owners, including trusts & business entities

Find and purchase phones and emails and get details on property owners, called "Contacts" in the app.

Operations

Lists

About Lists
View and manage potential customers and properties, by sorting properties into organized groups, called lists

PropertyRadar supports 3 different kinds of lists, and each type can be monitored or unmonitored.

Dynamic lists
Dynamic lists are created from a Criteria object, and are updated automatically when monitored. If a Dynamic list is unmonitored, it is updated whenever you make a call to view the items in the list, such as Properties from Criteria (using InList), or View list items.

Static lists
Static Lists are created by adding properties to a list using Add items to list. They do not have search criteria. Properties on Static lists only change when you add or remove properties, or set up an automation to do so.

Import lists
With import lists, you provide raw unmatched data such as addresses or emails via Match and import to list, and we match that data with our records and create a list of matching records.

Operations

Create a list

Request

Creates a new list from a Criteria object. Learn about the types of lists you can create.

Security
api_key_bearer
Bodyapplication/jsonrequired
CriteriaArray of objects

For dynamic lists specifies the search criteria we use to fill and update the list. For static lists specifies the search that initially fills the list, but is not used after creation. Do not send for static lists.

Example: [{"name":"State","value":["OR"]},{"name":"ZipFive","value":[97202,97212]},{"name":"Beds","value":[[6,null]]},{"name":"Pool","value":[1]},{"name":"PropertyType","value":[{"name":"PType","value":["SFR"]},{"name":"AdvancedPropertyType","value":["106","119","131"]}]}]
ListNamestring<= 50 charactersrequired

Name displayed and identifier for the list. Will be truncated to 50 chars

ListTypestring

Type of list between dynamic, static and import.

Enum"dynamic""static""import"
isMonitoredinteger

Whether monitoring, insights & automations are turned on or off.

Enum01
Example: 1
ImportSourcestring

For Import lists indicates the source of the import between file, zapier and api.

Enum"file""zapier""api"
ImportMatchThresholdinteger

For Import lists indicates the threshold to match against a property.

Example: 27
ImportTypestring

For Import lists indicates if the list is focused on matching by property or by person.

Enum"property""person"
ImportContactOptionsobject

For Import lists indicates custom options which affect the match process when the import data includes person or company names.

GroupNamestring

Name of the list group.

Example: "My Lists"
curl -i -X POST \
  https://api.propertyradar.com/v1/lists \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "Criteria": [
      {
        "name": "State",
        "value": [
          "OR"
        ]
      },
      {
        "name": "ZipFive",
        "value": [
          97202,
          97212
        ]
      },
      {
        "name": "Beds",
        "value": [
          [
            6,
            null
          ]
        ]
      },
      {
        "name": "Pool",
        "value": [
          1
        ]
      },
      {
        "name": "PropertyType",
        "value": [
          {
            "name": "PType",
            "value": [
              "SFR"
            ]
          },
          {
            "name": "AdvancedPropertyType",
            "value": [
              "106",
              "119",
              "131"
            ]
          }
        ]
      }
    ],
    "ListName": "string",
    "ListType": "dynamic",
    "isMonitored": 1,
    "ImportSource": "file",
    "ImportMatchThreshold": 27,
    "ImportType": "property",
    "ImportContactOptions": {
      "add_as_primary_contact": true,
      "set_as_primary_contact": true
    },
    "GroupName": "My Lists"
  }'

Responses

Success

Bodyapplication/json
resultsArray of objects
Response
application/json
{ "results": [ {} ] }

View all lists

Request

Returns all the lists for this user, ordered by count, then by name alphabetically

Security
api_key_bearer
Query
FieldsArray of strings

A list of fields or fieldsets the client would like returned from the service. Fields can be suppressed by prepending "-"

Items Enum"ListID""ListName""ListType""TotalCount""GroupName""-ListID""-ListName""-ListType""-TotalCount""-GroupName"
ListTypestring

Type of list between dynamic, static and import.

Enum"dynamic""static""import"
isMonitoredinteger

Whether monitoring, insights & automations are turned on or off.

Enum01
Example: isMonitored=1
ImportTypestring

For Import lists indicates if the list is focused on matching by property or by person.

Enum"property""person"
GroupNamestring

Name of the list group.

Example: GroupName=My Lists
DisplayOrderinteger

Display order of the list within its group.

Example: DisplayOrder=1
Limitinteger

Maximum number of records to return.

Default 1000
Example: Limit=10
Sortstring

Comma-delimited list of fields upon which to sort. Sortable fields are ListName, TotalCount, and DisplayOrder.

Default "TotalCount"
Dirstring

Comma-delimited list of directions (asc or desc) for fields provided in Sort param. For instance if you were sorting on A ascending first, then on B descending (in cases of multiple identical values of A) you would specify &Sort=A,B&Dir=asc,desc This field doesn't apply for DisplayOrder which is always ascending.

Default "desc"
Enum"desc""asc"
curl -i -X GET \
  'https://api.propertyradar.com/v1/lists?Fields=ListID&ListType=dynamic&isMonitored=1&ImportType=property&GroupName=My+Lists&DisplayOrder=1&Limit=10&Sort=TotalCount&Dir=desc' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

Success

Bodyapplication/json
resultsArray of objects
Response
application/json
{ "results": [ {} ] }

View a list’s details

Request

Returns a single list by Id

Security
api_key_bearer
Path
ListIDintegerrequired

Unique identifier for the list.

curl -i -X GET \
  'https://api.propertyradar.com/v1/lists/{ListID}' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

Success

Bodyapplication/json
resultsArray of objects
Response
application/json
{ "results": [ {} ] }

Update the attributes of a list

Request

Updates the attributes of a list, except for Criteria.

Security
api_key_bearer
Path
ListIDintegerrequired

Unique identifier for the list.

Bodyapplication/jsonrequired
ListNamestring<= 50 characters

Name displayed and identifier for the list. Will be truncated to 50 chars

isMonitoredinteger

Whether monitoring, insights & automations are turned on or off.

Enum01
Example: 1
ImportMatchThresholdinteger

For Import lists indicates the threshold to match against a property.

Example: 27
ImportTypestring

For Import lists indicates if the list is focused on matching by property or by person.

Enum"property""person"
ImportContactOptionsobject

For Import lists indicates custom options which affect the match process when the import data includes person or company names.

DisplayOrderinteger

Display order of the list within its group.

Example: 1
curl -i -X PATCH \
  'https://api.propertyradar.com/v1/lists/{ListID}' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "ListName": "string",
    "isMonitored": 1,
    "ImportMatchThreshold": 27,
    "ImportType": "property",
    "ImportContactOptions": {
      "add_as_primary_contact": true,
      "set_as_primary_contact": true
    },
    "DisplayOrder": 1
  }'

Responses

Success

Bodyapplication/json
updateCountinteger

The number of items updated during the execution of the request.

Example: 1
Response
application/json
{ "updateCount": 1 }

Delete a list

Request

Deletes a list

Security
api_key_bearer
Path
ListIDintegerrequired

Unique identifier for the list.

curl -i -X DELETE \
  'https://api.propertyradar.com/v1/lists/{ListID}' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

Success

Bodyapplication/json
deleteCountinteger

The number of items deleted during the execution of the request.

Example: 1
Response
application/json
{ "deleteCount": 1 }

View list items

Request

View the RadarIDs for all items in a list.

The query parameters offer approximately a dozen filters, mostly having to do with data you've added or actions you've taken on the property.

ℹ️ TIP - If you'd like view complete details for each item in your list, use the Properties from Criteria endpoint, along with Criteria in the form:

[{"name":"InList", "value":"{ListID}"}]
Click here for fieldsets

GridForeclosureOptional

RadarID

GridOptional

RadarID

Card

⚠️ The Card fieldset swaps AVM and AvailableEquity for AssessedValue and TotalLoanBalance, depending on which best approximates the property value.

RadarID

Map

RadarID

Mobile

RadarID

Overview

⚠️ The Overview fieldset swaps AVM and AvailableEquity for AssessedValue and TotalLoanBalance, depending on which best approximates the property value.

RadarID

Details

RadarID

PropertyTab

RadarID

LimitedREI

RadarID

Security
api_key_bearer
Path
ListIDintegerrequired

Unique identifier for the list

Query
Startinteger

Offset from which to begin returning records. Used for paging.

Default 0
Limitinteger

Maximum number of records to return.

Default 1000
Example: Limit=10
InterestLevelArray of integers

ℹ️ Zero can be used to filter to properties that are not starred, but have other saved data.

The level of interest you selected for the property, from 1 to 5 stars.

Items Enum012345
StatusLevelinteger

⚠️ The enumerated list below shows the default statuses, which you may have adjusted. Use the View status level labels endpoint to see the labels for your statuses.

ℹ️ Status values begin with 1, not 0.

The status you assigned to the property. You can define possible values for status by selecting Edit Status Settings.

hasPhotosinteger

Whether or not you have added any photos of the property.

Enum01
Example: hasPhotos=1
hasNotesinteger

Whether or not you have added any notes to the property.

Enum01
Example: hasNotes=1
hasAnalysisinteger

Whether or not you have edited the investment analysis of a property.

Enum01
Example: hasAnalysis=1
hasDocsinteger

Whether or not you have added or edited any documents in the transaction history of a property.

Enum01
Example: hasDocs=1
PTypeArray of strings
Items Enum"SFR""CND""MFR""APT""RES""COM""IND""AGR""LND""GOV"
LastTransferRecDateArray of predefined (string) or from/to (string)(RelativeDate)

The date the most recent change of ownership was recorded at the county recorder's office. If you select Before a specific date, this search will also return any properties for which we do not have a purchase date, as those properties would all have been purchased before we started getting data for that county.

Example: LastTransferRecDate=1984-01-24
AddedSincestring

Filter properties based on whether they were added to the list after a specific date and/or time.

MostRecentCallArray of predefined (string) or from/to (string)(RelativeDate)

Filter properties based on when the most recent call was made, or choose "None" for properties that have not been called.

MostRecentTextArray of predefined (string) or from/to (string)(RelativeDate)

Filter properties based on when the most recent text was sent, or choose "None" for properties that have not been texted.

MostRecentVoicemailArray of predefined (string) or from/to (string)(RelativeDate)

Filter properties based on when the most recent voicemail was sent, or choose "None" for properties for which no voicemail has been sent.

MostRecentDirectMailArray of predefined (string) or from/to (string)(RelativeDate)

Filter properties based on when the most recent direct mail was sent, or choose "None" for properties for which no direct mail has been sent.

MostRecentEmailArray of predefined (string) or from/to (string)(RelativeDate)

Filter properties based on when the most recent email was sent, or choose "None" for properties for which the contacts no email has been sent.

curl -i -X GET \
  'https://api.propertyradar.com/v1/lists/{ListID}/items?Start=0&Limit=10&InterestLevel=0&StatusLevel=0&hasPhotos=1&hasNotes=1&hasAnalysis=1&hasDocs=1&PType=SFR&LastTransferRecDate=1984-01-24&AddedSince=string&MostRecentCall=Today&MostRecentText=Today&MostRecentVoicemail=Today&MostRecentDirectMail=Today&MostRecentEmail=Today' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

Success

Bodyapplication/json
resultsArray of objects
Response
application/json
{ "results": [ {} ] }

Add items to list

Request

Adds one or more properties defined by criteria to a list, this doesn't apply to a dynamic or import list.

Click here for fieldsets
Security
api_key_bearer
Path
ListIDintegerrequired

Unique identifier for the list

Bodyapplication/jsonrequired
CriteriaArray of objects

You can use any sort of criteria to determine what properties to add to a list, but the most common case is to use the RadarID criterion to add properties by id.

Example: [{"name":"State","value":["OR"]},{"name":"ZipFive","value":[97202,97212]},{"name":"Beds","value":[[6,null]]},{"name":"Pool","value":[1]},{"name":"PropertyType","value":[{"name":"PType","value":["SFR"]},{"name":"AdvancedPropertyType","value":["106","119","131"]}]}]
curl -i -X PUT \
  'https://api.propertyradar.com/v1/lists/{ListID}/items' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "Criteria": [
      {
        "name": "State",
        "value": [
          "OR"
        ]
      },
      {
        "name": "ZipFive",
        "value": [
          97202,
          97212
        ]
      },
      {
        "name": "Beds",
        "value": [
          [
            6,
            null
          ]
        ]
      },
      {
        "name": "Pool",
        "value": [
          1
        ]
      },
      {
        "name": "PropertyType",
        "value": [
          {
            "name": "PType",
            "value": [
              "SFR"
            ]
          },
          {
            "name": "AdvancedPropertyType",
            "value": [
              "106",
              "119",
              "131"
            ]
          }
        ]
      }
    ]
  }'

Responses

Success

Bodyapplication/json
updateCountinteger

The number of items updated during the execution of the request.

Example: 1
Response
application/json
{ "updateCount": 1 }

Delete an item from a list

Request

Deletes a property from a list

Click here for fieldsets
Security
api_key_bearer
Path
ListIDintegerrequired

Unique identifier for the list

RadarIDstringrequired

Unique ID for locating properties within PropertyRadar.

Examples:
P8A0E18D
P16926CB
curl -i -X DELETE \
  'https://api.propertyradar.com/v1/lists/{ListID}/items/P8A0E18D' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

Success

Bodyapplication/json
deleteCountinteger

The number of items deleted during the execution of the request.

Example: 1
Response
application/json
{ "deleteCount": 1 }

Suggestions

Get typeahead menus

Operations

Integrations

Connect PropertyRadar to your sales, marketing, and productivity apps

Operations

Imports

Import and match properties and people

Operations

Automations

Configure Alerts and Automations

Operations

Accounts

Account info and preferences

Operations

Documents

Get and edit documents that make up the transaction history for a property

Operations