v0.1.53 — Account-Type Routes Have Changed: What You Need to Know
v0.1.53 — Account-Type Routes Have Changed: What You Need to Know
Published: v0.1.53 Severity: ⚠️ Breaking Change — action required for all deployments
Overview
In v0.1.53, every account-type portal URL has been restructured. The old routes used flat, PascalCase-named paths (e.g. /LettingsTenant/:id). The new routes follow a consistent, nested hierarchy under /accounts/<type>/:id.
This change improves long-term URL consistency and sets up a cleaner routing foundation, but it means every link previously shared with a client — whether emailed, bookmarked, or embedded in a CRM — now points to a broken page unless redirects are in place.
Who Is Affected
- Agency staff who have shared portal login links directly with tenants, landlords, buyers, vendors, or contractors.
- Tenants and landlords who have bookmarked their portal URL.
- Agencies using CRM or email templates that contain hardcoded portal URLs.
- Any integration that constructs portal URLs programmatically using the old route format.
The Full Route Map
Before (v0.1.52 and earlier)
/:company/LettingsTenant/:id
/:company/LettingsLandlord/:id
/:company/LettingsProspect/:id
/:company/SalesVendor/:id
/:company/SalesApplicantBuyer/:id
/:company/MaintenanceContractor/:id
After (v0.1.53)
/:company/accounts/tenant/:tenantId
/:company/accounts/landlord/:landlordId
/:company/accounts/tenant/:tenantId/prospect ← nested, not top-level
/:company/accounts/vendor/:vendorId
/:company/accounts/buyer/:buyerId
/:company/accounts/contractor/:contractorId
Important:
LettingsProspectis now a nested child of the tenant route, not a standalone path. Any prospect link that was previously a direct URL must now route through the tenant ID.
How to Fix It
Add permanent (HTTP 308) redirect rules to your next.config.ts. This ensures old URLs continue to work by transparently forwarding visitors to the new path.
// next.config.ts
const nextConfig = {
async redirects() {
return [
{
source: '/:company/LettingsTenant/:id',
destination: '/:company/accounts/tenant/:id',
permanent: true,
},
{
source: '/:company/LettingsLandlord/:id',
destination: '/:company/accounts/landlord/:id',
permanent: true,
},
{
source: '/:company/LettingsProspect/:id',
destination: '/:company/accounts/tenant/:id/prospect',
permanent: true,
},
{
source: '/:company/SalesVendor/:id',
destination: '/:company/accounts/vendor/:id',
permanent: true,
},
{
source: '/:company/SalesApplicantBuyer/:id',
destination: '/:company/accounts/buyer/:id',
permanent: true,
},
{
source: '/:company/MaintenanceContractor/:id',
destination: '/:company/accounts/contractor/:id',
permanent: true,
},
];
},
};
export default nextConfig;
Once deployed, any visitor hitting an old-format URL will be silently redirected to the correct new URL with no error shown.
Checklist for Agencies
- Confirm the redirect rules above are deployed to production.
- Update any email templates or CRM automations that contain hardcoded portal URLs.
- Re-generate and re-send portal access links to any clients who may have bookmarked the old URL.
- If you construct portal URLs programmatically (e.g. via an API integration), update the URL-building logic to use the new route patterns.
New URL Format Reference
Use this as your reference for generating portal links going forward:
| Account Type | URL Pattern |
|---|---|
| Tenant | https://portal.myprop.app/:company/accounts/tenant/:id |
| Landlord | https://portal.myprop.app/:company/accounts/landlord/:id |
| Prospect (Tenant) | https://portal.myprop.app/:company/accounts/tenant/:id/prospect |
| Vendor | https://portal.myprop.app/:company/accounts/vendor/:id |
| Buyer | https://portal.myprop.app/:company/accounts/buyer/:id |
| Contractor | https://portal.myprop.app/:company/accounts/contractor/:id |
Replace :company with your agency's slug and :id with the client's identifier from AgentOS.
Questions
If you need help verifying that redirects are working or updating your URL templates, contact support.