Overview

The Market Analytics endpoint delivers comprehensive market metrics and analytics for real estate properties, including key insights into sale price, new listings, price reductions, properties sold above their listing price, and newly pending sales. Users can filter these metrics using various criteria such as state, county, zip code, property type, and sale type. All filters are optional except for the state, which is mandatory for any request.

Filter Options

ParameterDescriptionTypeRequired
stateThe state in which to filter properties.StringRequired
countyThe name of the county to filter properties.StringOptional
nationalSet to true to get nationwide data.BooleanOptional
zipCodeThe ZIP code to filter properties.StringOptional
propertyTypeType of property (e.g., SingleFamilyHome, Condo).StringOptional
saleTypeType of sale (All, NewCon, Resale).StringOptional

Note:

  • The state parameter is required even if the national boolean is set to true. However, it will be ignored since the analytics will be calculated nationwide.

Available Market Analytics Endpoints

To access the Market Analytics endpoint, send a GET request to the API with the desired filter options included in the request body. An example request using the Axios library is shown below. Replace 'YOUR KEY HERE' and 'YOUR NEXUS ID HERE' with your actual Nexus MLS API key and Nexus ID, respectively.

const response = await axios.get('http://api.nexusmls.io/MarketAnalytics', {
  headers: {
    Authorization: 'Bearer YOUR_KEY_HERE',
    'Nexus-id': 'YOUR_NEXUS_ID_HERE',
  },
  data: {
    state: 'CA',
    county: 'Los Angeles',
    national: false,
    zipCode: '90001',
    propertyType: 'SingleFamilyHome',
    saleType: 'All',
  },
});

Response

The response from the Market Analytics endpoint is a JSON object containing the following fields:

{
  "@odata.context": "http://api.nexusmls.io/MarketAnalytics",
  "@odata.count": 100,
  "value": {
    "homeValue": {
      "median": 350000,
      "momPercentChange": 1.5,
      "yoyPercentChange": 5.2
    },
    "newListings": {
      "count": 200,
      "momPercentChange": 2.0,
      "yoyPercentChange": 4.8
    }
  }
}

Other Available Endpoint

The Market Analytics endpoint provides several sub-endpoints to get different types of market metrics. Each endpoint supports filtering based on the parameters mentioned above.

/MarketAnalytics/SalePrice

Retrieves metrics specifically related to the sale price of properties, including median sale price, month-over-month (MoM) percent change, and year-over-year (YoY) percent change.

const response = await axios.get('http://api.nexusmls.io/MarketAnalytics/SalePrice', {
  headers: {
    Authorization: 'Bearer YOUR_KEY_HERE',
    'Nexus-id': 'YOUR_NEXUS_ID_HERE',
  },
  data: {
    state: 'CA',
    county: 'Los Angeles',
    national: false,
    zipCode: '90001',
    propertyType: 'SingleFamilyHome',
    saleType: 'All',
  },
});

/MarketAnalytics/NewListings

Provides metrics related to new property listings, such as the count of new listings, MoM percent change, and YoY percent change.

const response = await axios.get('http://api.nexusmls.io/MarketAnalytics/NewListings', {
  headers: {
    Authorization: 'Bearer YOUR_KEY_HERE',
    'Nexus-id': 'YOUR_NEXUS_ID_HERE',
  },
  data: {
    state: 'CA',
    county: 'Los Angeles',
    national: false,
    zipCode: '90001',
    propertyType: 'SingleFamilyHome',
    saleType: 'All',
  },
});

/MarketAnalytics/PriceCuts

Provides information on properties with price cuts, including the percentage of active listings with a price cut in a given month.

const response = await axios.get('http://api.nexusmls.io/MarketAnalytics/PriceCuts', {
  headers: {
    Authorization: 'Bearer YOUR_KEY_HERE',
    'Nexus-id': 'YOUR_NEXUS_ID_HERE',
  },
  data: {
    state: 'CA',
    county: 'Los Angeles',
    national: false,
    zipCode: '90001',
    propertyType: 'SingleFamilyHome',
    saleType: 'All',
  },
});

/MarketAnalytics/SoldAboveListPrice

Retrieves metrics related to properties sold above their list price, including the percentage of sold listings and MoM/YoY percent changes.

const response = await axios.get('http://api.nexusmls.io/MarketAnalytics/SoldAboveListPrice', {
  headers: {
    Authorization: 'Bearer YOUR_KEY_HERE',
    'Nexus-id': 'YOUR_NEXUS_ID_HERE',
  },
  data: {
    state: 'CA',
    county: 'Los Angeles',
    national: false,
    zipCode: '90001',
    propertyType: 'SingleFamilyHome',
    saleType: 'All',
  },
});

/MarketAnalytics/NewPendingSales

Provides metrics on newly pending sales, including the percentage of active listings that went pending and the median days from listing to pending.

const response = await axios.get('http://api.nexusmls.io/MarketAnalytics/NewPendingSales', {
  headers: {
    Authorization: 'Bearer YOUR_KEY_HERE',
    'Nexus-id': 'YOUR_NEXUS_ID_HERE',
  },
  data: {
    state: 'CA',
    county: 'Los Angeles',
    national: false,
    zipCode: '90001',
    propertyType: 'SingleFamilyHome',
    saleType: 'All',
  },
});