Create a vendor
Adds a vendor and creates the portal account they sign in with. The response is the only place the account's password is ever returned — nothing else exposes it, so capture it or send a portal invite later. Requires the vendors:write permission.
Authorization
AuthorizationstringrequiredBody
application/json
typeenum<string>What kind of party this is. Omitting it files them as hoa, because that is the first value of the list — send other for an ordinary trade vendor.
namestringrequiredThe vendor's business name. Between 1 and 200 characters.
languagestringrequiredThe ISO 639-1 language code to write to the vendor in, for example en.
memostringA free-text note about the vendor. Send it out entirely rather than sending an empty string.
websitestringThe vendor's website. Send it out entirely rather than sending an empty string.
categoryIdstringThe vendor category to file them under. The category must exist.
contactobjectHow to reach the vendor.
addressobjectThe vendor's postal address. Note this sits beside contact, not inside it, on the way in — the response nests it under contact.
insurancePolicyobjectThe vendor's liability insurance.
iconsstring[]Labels to pin to the vendor. They are stored lower-case.
defaultMemostringText to pre-fill onto bills raised for this vendor.
paymentSettingsobjectHow the vendor is paid.
irs1099FormobjectTax details for issuing a 1099.
clearTextPasswordstringThe password to give the vendor's portal account. Between 5 and 150 characters. Leave it out and one is generated; either way the password comes back in the response.
Response
200 · The vendor that was created. This response carries `password`; no other endpoint does.
idstringrequiredThe vendor.
companyIdstringrequiredThe company that owns the vendor record.
typeenum<string>requiredWhat kind of party this is. hoa is a homeowners association, propertyManager is a management company, other is an ordinary trade vendor.
namestringrequiredThe vendor's business name.
languagestringrequiredThe ISO 639-1 language code MagicDoor writes to the vendor in, for example en.
memostringA free-text note about the vendor. Absent when there is none.
activebooleanrequiredWhether the vendor can be assigned work and sign in. false after they have been deactivated.
websitestringThe vendor's website. Absent when none was recorded.
categoryIdstringThe vendor category the vendor is filed under. Absent when uncategorised.
contactobjectrequiredHow to reach the vendor. The object is always present; the values inside it may be absent.
insurancePolicyobjectThe vendor's liability insurance. Absent when none was recorded.
irs1099FormobjectTax details used when the vendor is issued a 1099. Absent when none were recorded.
chatIdstringThe chat MagicDoor uses to talk to this vendor. Absent until one is opened.
disableChatbooleanrequiredWhether chat with this vendor is switched off.
iconsstring[]requiredLower-case labels pinned to the vendor, used to flag them in lists. An empty array when there are none.
isCompanyVendorbooleanrequiredtrue when this record stands for the management company itself rather than an outside vendor. Such a record cannot be deleted or deactivated.
defaultMemostringText pre-filled onto bills raised for this vendor. Absent when none was set.
paymentSettingsobjectrequiredHow the vendor is paid.
lastSeenstring · date-timeWhen the vendor last used their portal, in the company's timezone and without an offset. Absent when they never have.
lastPortalInvitestring · date-timeWhen a portal invite was last sent, in the company's timezone and without an offset. Absent when none has been sent.
portalStatusenum<string>requiredWorked out from the two timestamps above: active once the vendor has signed in, invited once an invite has gone out, notInvited before that.
createdstring · date-timerequiredWhen the vendor record was created, in the company's timezone and without an offset.
updatedstring · date-timerequiredWhen it was last changed, in the company's timezone and without an offset.
passwordstringOnly ever present on the response to creating a vendor — the sign-in password for their portal account. It is not stored in readable form and no other endpoint returns it.