Company

Set the company's sub URL

Changes the slug the company's tenant and owner portal is served under on MagicDoor's own domain. Fails when the slug is already taken.

PUT
https://api.portal.magicdoor.com/company-app/companies/sub-url

Authorization

Authorizationstringrequired
Bearer token — Send your API token in the Authorization header as Bearer <token>. Requests without a valid token are rejected with 401 Unauthorized.

Body

application/json

urlstringrequired

The slug to claim, 3 to 150 characters. Lower-case letters and digits, then letters, digits, hyphens or underscores.

Response

200 · The company with its new `subUrl` and `publicUrl`.

idstring

The company. A Snowflake id sent as a decimal string.

namestring

Trading name of the management company.

emailstring

The company's main email address.

subUrlstring

The company's slug on MagicDoor's own domain, for example pine-ridge.

languagestring

ISO 639-1 code for the language the company writes to its users in.

phoneNumberstring

Main phone number in readable form. Absent when none was recorded.

timeZoneInfostring

The timezone id every date and time in this API is converted into, for example America/Denver.

customDomainstring

A domain the company has pointed at its portal. Absent when it uses only subUrl.

addressobject

The company's business address.

onboardedboolean

Whether onboarding has been marked complete.

onboardingStatusstring

Free-text marker of where the company is in onboarding, written by the web app. Absent when none was set.

publicUrlstring

The address the company's tenant and owner portal is served at, built from customDomain when there is one and from subUrl otherwise.

trialAccountUntilstring · date-time

When the free trial ends, in the company's timezone. Absent when the company is not on a trial.

featuresenum<string>[]

Optional features switched on for this company.

aicompanyLedgertenantACHNumberLinkingcentralizedPayments
businessModeenum<string>

Whether the company manages rentals or runs a homeowners association.

propertyManagementhoa
closedSincestring · date-time

When the account was closed, in the company's timezone. Absent while the company is open.

createdstring · date-time

When the company was created, in the company's timezone.

400 · The slug is already taken or does not match the allowed pattern.

401 · The access token is missing, expired, or not valid for this company.

Check the slug with POST /company-app/companies/sub-url/validate before claiming it, so you can tell the user it is taken without a failed write.