Update an owner
Replaces an owner's details. Every field you leave out is cleared, so send the whole record, not just what changed.
Authorization
AuthorizationstringrequiredPath parameters
ownerIdstringrequiredThe owner. A Snowflake id, sent as a decimal string.
Body
application/json
The owner's details in full. firstName is required. Fields you omit are stored as empty, including the address and the tax information. language falls back to en rather than being cleared.
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.
Response
200 · The owner as it now stands.
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.
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.
404 · No owner with that id exists for the calling company. A record that belongs to another company is reported the same way as one that does not exist. The id you asked for is in `entityId`; `detail` names only the kind of record.
Read the owner first, change what you need, and send the whole object back. Posting only firstName wipes the email, phone, address and tax information.