Create an owner
Creates an owner and the MagicDoor sign-in that goes with them. The response carries the password the owner will sign in with — it is the only time you can read it.
Authorization
AuthorizationstringrequiredBody
application/json
Only firstName is required. Email and phone, if sent, must not already belong to another owner in the company.
firstNamestringrequiredGiven name, or the company name when isCompany is true. 1 to 150 characters.
lastNamestringFamily name. 1 to 150 characters.
isCompanybooleantrue when the owner is a business rather than a person. Defaults to false when omitted.
emailstring · emailEmail address. Up to 250 characters, and must be unique within the company.
phonestringPhone number. Must be a valid number and unique within the company.
federalTaxInformationobjectTax identification for the owner's 1099. Sending it stores a government identifier.
languagestringISO 639-1 language code for messages to this owner. Stored as en when omitted.
addressobjectThe owner's mailing address. Sending this replaces the whole address.
passwordstringThe password to give the owner. 5 to 150 characters. Leave it out and MagicDoor generates one, which comes back in the response.
Response
200 · The new owner, plus the password they will sign in with.
idstringThe owner.
activebooleanfalse once the owner has been deactivated. A deactivated owner cannot sign in and cannot be given a new password.
emailstringEmail address. Absent when none is on file.
firstNamestringGiven name, or the company name when isCompany is true.
lastNamestringFamily name. Absent for a company, or when only a first name is on file.
isCompanybooleantrue when the owner is a business rather than a person.
phonestringPhone number, formatted for reading. Absent when none is on file.
federalTaxInformationobjectTax identification used for the owner's 1099. Absent when none is on file.
createdstring · date-timeWhen the owner record was created.
updatedstring · date-timeWhen the owner record was last changed.
lastSeenstring · date-timeWhen the owner last used the owner portal. Absent when they never have.
lastPortalInvitestring · date-timeWhen a portal invite was last sent. Absent when none ever was.
chatIdstringThe owner's conversation with the company. Absent when no conversation exists.
languagestringISO 639-1 language code used for messages to this owner. Defaults to en.
iconsstring[]Icon keys a property manager has pinned to the owner. Always present, possibly empty.
addressobjectThe owner's mailing address.
portalStatusenum<string>Where the owner is in getting onto the owner portal: notInvited, invited (invited but never signed in), active (has signed in).
ownerPropertiesobject[]This owner's stake in each property they own, as a link record.
portfoliosobject[]The portfolios holding those properties.
propertiesobject[]The properties themselves.
paymentAccountsobject[]The accounts MagicDoor can pay this owner through. Account and card numbers are reduced to their last four digits.
passwordstringThe password the owner can now sign in with — either the one you sent or the one MagicDoor generated. Returned here and nowhere else. No example value is shown.
409 · The email address or phone number already belongs to another owner in the company. `errors` maps the offending field to its message. This particular response is built by hand rather than by the usual problem-details machinery, so unlike every other error on this page it carries no `type`, no `instance` and no `traceId`.
401 · The access token is missing, expired, or does not belong to a property manager.
The password field of the response holds the owner's sign-in password in clear text. It is returned once, at creation. Hand it to the owner over a channel you trust and do not write it to logs. The example above deliberately leaves it out.
A new owner holds no stake in anything. Ownership links are created through the property endpoints, not here.