Unit 4B
1 bed · 1 bath · 720 sq ft
Available 2026-07-04
$2,150
BYOW: Bring your own website
Website embed · BetaKeep the marketing site you already run. Drop in an iframe, ship React components, or call the embed API and render your own UI. Apply and schedule stay authenticated on EchoPM.
Three ways to ship
Same live inventory either way. Hosted UI for speed; headless data when you want full design control.
Manager → Property → Settings → Listing → Website embed. Create a publishable key, allow your domains, paste the snippet.
npm install @echopm/react — UnitList and PropertyPage default to hosted EchoPM iframes; PropertyCard / SearchWidget for branded layouts.
Call getProperty, searchProperties, and submitLead—or use hooks—and list units with your own components. Publishable key only; no secret REST keys in the browser.
What partners ship
These are live EchoPM components and inventory, not marketing mockups. Apply is off in this preview; partners enable it with their embed key.
Production UnitCard / hosted OpenUnits — live vacancies
Ship it
HTML
Iframe snippet
<iframe
src="https://www.echopm.app/embed/units?propertyId=YOUR_ID&key=YOUR_KEY"
title="Available units"
style="width:100%;border:0;min-height:480px"
loading="lazy"
></iframe>npm
@echopm/react
npm install @echopm/react
import { EchoPMProvider, UnitList } from "@echopm/react";
export function AvailableUnits() {
return (
<EchoPMProvider publishableKey={process.env.NEXT_PUBLIC_ECHOPM_EMBED_KEY!}>
<UnitList propertyId="YOUR_PROPERTY_ID" showApply />
</EchoPMProvider>
);
}API
createEmbedClient
import { createEmbedClient } from "@echopm/react";
const client = createEmbedClient({
publishableKey: process.env.NEXT_PUBLIC_ECHOPM_EMBED_KEY!,
});
const property = await client.getProperty("YOUR_PROPERTY_ID");
const units = property.availableUnits;
// Render with your own components — apply still opens on EchoPM.Playground: /embed/demo · React SDK docs
Marketing can live on your domain. Screening, leases, and payments need one system of record. Embeds hand renters into EchoPM auth so your team never juggles a second apply stack.
See leasing & applicationsStraight answers about how this works on EchoPM.
Apply and schedule tour use EchoPM’s sign-in and dialogs (iframe or hosted flows). That keeps sessions and leasing data in one system—not a fragile copy of your stack.
Create an embed key in the manager app, or start with the React SDK docs.