Articles on: Data Access

HAR.com Data: Listing Views, Reviews & Showing Logs

HAR.com Partner Data: Listing Views, Reviews & Showing Logs


Through our partnership with HAR.com, HAR members who subscribe to Repliers automatically get access to some extra HAR.com data through the API. This article covers what's available and how to use it.


Partnership background: Repliers + HAR.com Partnership


What's included


Data

Endpoint

What it answers

Listing view analytics

GET /partners/har/listings/views

"How much traffic is my listing getting on HAR.com?"

Customer experience ratings

GET /partners/har/listings/reviews

"What reviews have I received on recent closed transactions?"

ShowingSmart logs

GET /partners/har/showingsmart/logs

"Who has shown my listings, or what have I shown?"


All three endpoints live under the /partners/har/ path and return results in the same basic shape: success, total, limit, offset, and a data array with the actual records.


Listing enrichment


Every record returned by these endpoints is enriched with details about the associated listing, so you can display context — the property address, a photo, pricing — without making a separate lookup. Each item includes:


Field

Description

address

Full address object: streetNumber, streetName, streetSuffix, city, state, zip, neighborhood, area, country, plus a normalized addressKey

images

Array of listing image paths

listDate

Date the property was listed

soldDate

Date the property sold, null if not sold

listPrice

List price

soldPrice

Sold price, null if not sold

details

Property summary: numBedrooms, numBathrooms, sqft, numGarageSpaces, propertyType, style


You'll see these fields in the example responses for each endpoint below.


Getting access


You don't need to request or configure anything manually. When you log into Repliers with a verified email address that matches an email on file in HAR's roster, your API key is automatically set up for HAR access. If you're not seeing HAR data and think you should, the most common cause is a mismatch between your Repliers login email and the email HAR has on record for you — double check those match, or reach out to support to confirm.


Who can see what


  • What data you can see depends on whether you're set up as an individual agent or as the brokerage as a whole:
  • Agents only see their own data.
  • Brokers can see data for every agent at the brokerage.


If an agent tries to look up another agent's data by name, that request will either be blocked or automatically redirected back to the agent's own data — the exact behavior is noted separately for each endpoint below, since it works a little differently on each one.


Common parameters


All three endpoints support:


Parameter

Description

mlsNumber

Filter to a single listing by MLS number

dateBegin / dateEnd

Inclusive date range, YYYY-MM-DD

sortBy

Sort by a column, optionally suffixed :asc or :desc (defaults to :asc)

limit

Max records to return (1–500)

offset

Records to skip, for pagination



1. Listing view statistics


GET /partners/har/listings/views


Returns per-listing, per-day web and mobile view counts tracked by HAR.com, with each record enriched with the listing's details. Each record also includes the listing agent's display name in agentName, alongside their laAgentkey.


Parameters


In addition to the common parameters above:


Parameter

Description

boardAgentId

Filter to a listing agent by board agent key


A note on access: If you're an individual agent, results are always limited to you — no matter what you put in boardAgentId. If you try to explicitly request a different agent's data, the request will be blocked with a 403 error.


Sortable columns: laAgentkey, mlsNumber, dateTracked, webView, mobileView


Example request


GET /partners/har/listings/views?mlsNumber=12345678&dateBegin=2026-06-01&dateEnd=2026-06-30&sortBy=dateTracked:desc


Example response


{
  "success": true,
  "total": 1,
  "limit": 500,
  "offset": 0,
  "data": [
    {
      "dateTracked": "2026-06-15",
      "laAgentkey": "AGT4821",
      "agentName": "Alex Morgan",
      "mlsNumber": "12345678",
      "webView": 34,
      "mobileView": 51,
      "address": {
        "area": "Harris",
        "city": "Houston",
        "country": "US",
        "district": null,
        "majorIntersection": null,
        "neighborhood": "Maplewood Park",
        "streetDirection": null,
        "streetName": "Maplewood",
        "streetNumber": "123",
        "streetSuffix": "Lane",
        "unitNumber": null,
        "zip": "77001",
        "state": "TX",
        "communityCode": null,
        "streetDirectionPrefix": null,
        "addressKey": "123maplewoodlanehouston"
      },
      "images": [
        "har/IMG-12345678_1.jpg"
      ],
      "listDate": "2026-05-01T00:00:00.000-00:00",
      "soldDate": null,
      "listPrice": 425000,
      "soldPrice": null,
      "details": {
        "numBedrooms": 4,
        "numBathrooms": 3,
        "sqft": "2650",
        "numGarageSpaces": 2,
        "propertyType": "Residential",
        "style": "Single Family Residence"
      }
    }
  ]
}



2. Customer experience ratings (reviews)


GET /partners/har/listings/reviews


Returns client-submitted ratings tied to closed transactions, scored across competency, knowledge, communication, and overall experience. Each review is enriched with the details of the listing it relates to.


Parameters


In addition to the common parameters above:


Parameter

Description

boardAgentId

Filter to the rated agent by board agent key


A note on access: Same as listing views — as an individual agent, you only ever see your own reviews, and asking for a different agent's boardAgentId returns a 403 error.


Sortable columns: mlsNumber, memberNumber, agentId, agentkey, agentEmail, clientName, clientEmail, transactionType, score, competency, knowledge, communication, myExperience, closedDate, publishDate, createdDate


Key response fields


Field

Description

agentName

Display name of the rated agent

score

Overall rating (may be fractional across the four component scores)

competency, knowledge, communication, myExperience

Component ratings

comments

Free-text review from the client

agentComment

Agent's response, null if none was submitted

transactionType

Side of the deal the review relates to (e.g. sell, list)


Example request


GET /partners/har/listings/reviews?dateBegin=2026-01-01&dateEnd=2026-06-30&sortBy=closedDate:desc&limit=25


Example response


{
  "success": true,
  "total": 1,
  "limit": 25,
  "offset": 0,
  "data": [
    {
      "agentComment": null,
      "agentEmail": "agent@example.com",
      "agentkey": "AGT4821",
      "agentId": "AGT4821",
      "agentName": "Alex Morgan",
      "brokerCode": "BRK001",
      "clientEmail": "jrivera@example.com",
      "clientName": "J. Rivera",
      "closedDate": "2026-05-20",
      "comments": "Very responsive throughout the process.",
      "communication": 4,
      "competency": 5,
      "createdDate": "2026-05-22T09:15:00.000000",
      "knowledge": 5,
      "memberNumber": 998877,
      "mlsNumber": "12345678",
      "myExperience": 5,
      "publishDate": null,
      "score": 4.75,
      "transactionType": "sell",
      "address": {
        "area": "Harris",
        "city": "Houston",
        "country": "US",
        "district": null,
        "majorIntersection": null,
        "neighborhood": "Maplewood Park",
        "streetDirection": null,
        "streetName": "Maplewood",
        "streetNumber": "123",
        "streetSuffix": "Lane",
        "unitNumber": null,
        "zip": "77001",
        "state": "TX",
        "communityCode": null,
        "streetDirectionPrefix": null,
        "addressKey": "123maplewoodlanehouston"
      },
      "images": [
        "har/IMG-12345678_1.jpg"
      ],
      "listDate": "2026-03-10T00:00:00.000-00:00",
      "soldDate": "2026-05-20T00:00:00.000-00:00",
      "listPrice": 425000,
      "soldPrice": 431000,
      "details": {
        "numBedrooms": 4,
        "numBathrooms": 3,
        "sqft": "2650",
        "numGarageSpaces": 2,
        "propertyType": "Residential",
        "style": "Single Family Residence"
      }
    }
  ]
}



3. ShowingSmart showing logs


GET /partners/har/showingsmart/logs


Returns showing records — scheduling details, showing agent contact info, and any post-showing feedback — for listings shown or showings conducted.


Results are grouped by listing. Each item in the data array represents a single listing, identified by its mlsNumber, with:


  • a logs array containing every showing record for that listing (scheduling details, showing agent info, comments, and feedback), and
  • the listing enrichment fields (address, images, listDate, soldDate, listPrice, soldPrice, details).


total, limit, and offset apply to listings (groups), not to individual showing records.


Parameters


In addition to the common parameters above:


Parameter

Description

listingBoardAgentId

Filter to showings on listings held by this board agent key

showingBoardAgentId

Filter to showings conducted by this board agent key


A note on access: This endpoint covers two roles — the listing agent and the showing agent — so it works a little differently from the other two:


  • As an individual agent, you'll always see showings tied to you in at least one of those roles.
  • If you put a different agent in listingBoardAgentId, you'll just get your own showings back instead of an error.
  • If you put a different agent in showingBoardAgentId, you'll just get your own listings back instead.
  • If you try to name a different agent in both fields at the same time, the request is blocked with a 403 error.


In short: as an agent, you can always see showings where you're the listing agent, the showing agent, or both — you just can't use the two filters together to pull up someone else's data on both sides.


Sortable columns: listingkey, showingId, saComments, showingDate, showingStartTime, showingEndTime, showingType, showingStatus, saAgentkey, saCellPhone, saEmail, saOfficeName, saOfficekey, feedbackText, laAgentkey, laCellPhone, laEmail, laOfficeName, laOfficekey


Key response fields


Each entry in a listing's logs array includes:


Field

Description

showingType

HAR showing type code — e.g. SHOWG (showing), INSPT (inspection), WALKT (walkthrough)

showingStatus

HAR status code — e.g. SETUP, CONFM (confirmed), UNCFM (unconfirmed), ALTER (altered), CANCL (cancelled)

saComments

Comments left by the showing agent when booking

feedbackText

Post-showing feedback, null if none was submitted

listAgentName

Display name of the listing agent

showingAgentName

Display name of the showing agent

la* fields

Listing agent details (agent key, cell, email, office)

sa* fields

Showing agent details (agent key, cell, email, office)


Note: listagentAgentkey and listofficeOfficekey are deprecated and not sortable — use laAgentkey and laOfficekey instead.


Example request


GET /partners/har/showingsmart/logs?mlsNumber=12345678&dateBegin=2026-06-01&dateEnd=2026-06-30&sortBy=showingDate:desc


Example response


{
  "success": true,
  "total": 1,
  "limit": 50,
  "offset": 0,
  "data": [
    {
      "mlsNumber": "12345678",
      "logs": [
        {
          "showingId": 883421,
          "showingDate": "2026-06-18",
          "showingStartTime": "2026-06-18T15:00:00",
          "showingEndTime": "2026-06-18T15:30:00",
          "showingType": "SHOWG",
          "showingStatus": "CONFM",
          "laOfficeName": "Example Realty",
          "laOfficekey": "OFF1001",
          "laAgentkey": "AGT4821",
          "listAgentName": "Alex Morgan",
          "laCellPhone": "5550101",
          "laEmail": "listingagent@example.com",
          "saOfficeName": "Another Realty",
          "saOfficekey": "OFF1002",
          "saAgentkey": "AGT7734",
          "showingAgentName": "Jordan Blake",
          "saCellPhone": "5550199",
          "saEmail": "showingagent@example.com",
          "saComments": "Client loved the kitchen layout.",
          "feedbackText": "Great condition, price feels slightly high for the area.",
          "listagentAgentkey": "AGT4821",
          "listofficeOfficekey": "OFF1001"
        },
        {
          "showingId": 883205,
          "showingDate": "2026-06-17",
          "showingStartTime": "2026-06-17T18:00:00",
          "showingEndTime": "2026-06-17T19:00:00",
          "showingType": "SHOWG",
          "showingStatus": "CANCL",
          "laOfficeName": "Example Realty",
          "laOfficekey": "OFF1001",
          "laAgentkey": "AGT4821",
          "listAgentName": "Alex Morgan",
          "laCellPhone": "5550101",
          "laEmail": "listingagent@example.com",
          "saOfficeName": "Sample Properties Group",
          "saOfficekey": "OFF1003",
          "saAgentkey": "AGT2210",
          "showingAgentName": "Casey Nguyen",
          "saCellPhone": "5550142",
          "saEmail": "agent2210@example.com",
          "saComments": "",
          "feedbackText": null,
          "listagentAgentkey": "AGT4821",
          "listofficeOfficekey": "OFF1001"
        }
      ],
      "address": {
        "area": "Harris",
        "city": "Houston",
        "country": "US",
        "district": null,
        "majorIntersection": null,
        "neighborhood": "Maplewood Park",
        "streetDirection": null,
        "streetName": "Maplewood",
        "streetNumber": "123",
        "streetSuffix": "Lane",
        "unitNumber": null,
        "zip": "77001",
        "state": "TX",
        "communityCode": null,
        "streetDirectionPrefix": null,
        "addressKey": "123maplewoodlanehouston"
      },
      "images": [
        "har/IMG-12345678_1.jpg"
      ],
      "listDate": "2026-05-01T00:00:00.000-00:00",
      "soldDate": null,
      "listPrice": 425000,
      "soldPrice": null,
      "details": {
        "numBedrooms": 4,
        "numBathrooms": 3,
        "sqft": "2650",
        "numGarageSpaces": 2,
        "propertyType": "Residential",
        "style": "Single Family Residence"
      }
    }
  ]
}



Errors


Status

Meaning

400

Malformed request — check parameter formats (dates must be YYYY-MM-DD, sortBy must match an allowed column)

401

Missing or invalid API key

403

The key isn't allowed to make this request — most often because the account isn't linked to a broker code (see "Getting access" above), or because an agent is asking for another agent's data in a way that isn't allowed


Quick recap


  • Broker accounts: see all agents' data at the brokerage.
  • Individual agents, listing views & reviews: always your own data; naming another agent returns a 403 error.
  • Individual agents, showing logs: always at least your own listings or your own showings; naming a different agent on both filters at once returns 403, but naming a different agent on just one filter falls back to your own data instead of erroring.
  • All endpoints enrich each record with listing details (address, images, dates, pricing, and property summary), and showing logs are grouped by listing.


If you're not sure whether your account is linked up for HAR access, reach out to your account manager or Repliers support.

Updated on: 03/08/2026

Was this article helpful?

Share your feedback

Cancel

Thank you!