EasyAgentIDX

MLS Compliance for Custom Builds

A custom interface must preserve the display rules attached to its approved MLS feed. EasyAgentIDX provides normalized compliance fields, but the application is responsible for rendering them in the final interface.

Warning

Do not ship a custom IDX experience until the required attribution, disclaimer, freshness, and listing lifecycle checks pass for the approved board.

Source of truth

  1. Call GET /api/v1/platform/compliance for the website-level board rules and maximum cache lifetime.
  2. Render the compliance object returned with every listing.
  3. Treat the current API response as authoritative when it differs from copied documentation.

Required interface components

  • ListingAttribution: show the listing office and agent only when the corresponding compliance flags allow it.
  • MlsLogo: render the supplied logo when show_idx_logo is true.
  • ComplianceDisclaimer: render the supplied disclaimer without rewriting its legal meaning.
  • DataLastUpdated: display the MLS update timestamp where the board requires it.
  • ComplianceFooter: provide board-level attribution and disclaimer content on search and detail experiences.

Data handling rules

  • Cache listing data for no longer than max_ttl_seconds.
  • Remove or hide listings when display rights end or the API no longer returns the record.
  • Do not infer, combine, or sell listing data outside the approved website and use case.
  • Do not expose the EasyAgentIDX API key, upstream credentials, or raw provider responses.
  • Do not remove required attribution from cards, detail pages, maps, print views, or shared pages.
  • Do not persist photos or remarks beyond the period allowed by the active feed.

Prelaunch test checklist

  • Search cards display the required logo and attribution at mobile and desktop widths.
  • Listing detail pages display disclaimer, office, agent, and update date according to each flag.
  • Pending, sold, withdrawn, and removed listings follow the board rules.
  • Cached pages revalidate within the board maximum.
  • Structured data does not claim unavailable or stale listing facts.
  • Share previews and generated pages do not bypass attribution.
  • Error and empty states do not reveal upstream provider details.