Property managers

Get a property manager's property access

Returns which properties this property manager can reach: everything, or a named set of portfolios and individual properties.

GET
https://api.portal.magicdoor.com/company-app/property-managers/{propertyManagerId}/property-access

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.

Path parameters

propertyManagerIdstringrequired

The property manager. A Snowflake id, sent as a decimal string.

example: 1830472847398404098

Response

200 · The property manager's reach.

allPropertiesboolean

true when this property manager reaches every property the company has, now and in future. When it is true, propertyIds and portfolioIds carry no meaning.

propertyIdsstring[]

The individual properties they reach. Properties that no longer exist are filtered out of this list rather than reported.

portfolioIdsstring[]

The portfolios they reach. Granting a portfolio reaches every property in it, including properties added to it later. Portfolios that no longer exist are filtered out of this list rather than reported.

401 · The access token is missing, expired, or does not belong to a property manager.

404 · No property manager 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.

Two different gates

A property manager is limited in three independent ways, and it is easy to confuse them.

  • Permissions are resource:action strings such as property:read. They decide what the API lets this person do. See list permissions.
  • Property access decides which properties those permissions reach — all of them, or a named set of portfolios and properties. See get property access.
  • Menu access decides which top-level menus MagicDoor's own web app draws for them. It hides screens; it does not stop an API call. See get menu access.
  • allProperties: true reaches every property the company has, including properties created after the grant. When this is set the two id lists are meaningless and are not returned.
  • A portfolio grant reaches every property inside that portfolio, and keeps reaching properties added to it later.
  • A property grant reaches exactly that one property.

The two id lists are additive: someone with one portfolio and one property reaches everything in the portfolio plus that single extra property.

Deleted grants disappear quietly

The stored grants are checked against real portfolios and properties before they are returned. A grant pointing at something that no longer exists is dropped from the response rather than reported as an error, so the lists you read back may be shorter than what was granted.