Portfolios

List portfolios

Returns every portfolio the company owns, each with the properties inside it. The response is a plain array — this endpoint is not paginated.

GET
https://api.portal.magicdoor.com/company-app/portfolios

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.

Query parameters

activeboolean

true returns only active portfolios, false only deactivated ones. Omit to get both.

namestring

Exact name match, 1 to 150 characters. Trimmed before it is compared.

searchstring

Free-text search. The term is stripped of punctuation and common address words are abbreviated — "avenue" becomes "ave", "apartment" becomes "apt" — and then every word in it must appear in the record's searchable text, which is built from its name and address. Must not be empty if given.

Response

200 · A JSON array of portfolios, each with its properties expanded. The fields below describe one element.

idstring

Snowflake id of the portfolio.

activeboolean

false once the portfolio has been deactivated.

namestring

The portfolio's name, 1 to 150 characters.

propertyCountinteger

How many properties the portfolio holds, active and deactivated together. Maintained by MagicDoor; you cannot set it.

iconsstring[]

Icon keys pinned to the portfolio. Free-form strings; they are added and removed through the icons endpoints, not here.

activePropertyCountinteger

Computed: how many of properties are still active.

propertiesobject[]

Every property in the portfolio, active and deactivated alike, each with a count of its active units.

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

Where a portfolio sits

MagicDoor nests records four deep: a portfolio holds properties, a property holds units, and a lease is signed on a unit. A portfolio is the outermost grouping a property manager uses to separate one set of buildings from another — by owner, by region, by fund. Every property names exactly one portfolioId, and a unit inherits its portfolio from its property.

No paging here

Unlike the properties and units lists, this one returns the whole set in one array. There is no page or pageSize parameter and no envelope around the results.