Board members

Get a board member by owner

Looks up an owner's current board seat. Use it to answer "is this owner on the board right now?". Requires the hoa_board_members:read permission.

GET
https://services.magicdoor.com/hoa/company-portal/associations/board-members/by-owner/{ownerId}

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

ownerIdstringrequired

The owner to look up.

example: 1830472847398405120

Response

200 · The owner's active board seat.

idstring

The board seat. A 64-bit id sent as a decimal string.

companyIdstring

The company the seat belongs to.

ownerIdstring

The owner who holds the seat.

activeboolean

true while the owner is serving. An inactive row is the record of a past seat.

rolestring

Free text describing the seat, for example President. Absent when none was given.

seatStartedAtstring · date-time

When the seat began, in the company's timezone. Set to the moment of appointment.

seatEndedAtstring · date-time

When the seat ended, in the company's timezone. Absent while the member is still serving.

createdstring · date-time

When the row was created, in the company's timezone.

updatedstring · date-time

When the row last changed, in the company's timezone.

400 · The calling company is not in HOA business mode.

401 · The bearer token is missing, expired, or not valid.

403 · The token is valid but the caller does not hold the `hoa_board_members:read` permission.

404 · The owner holds no active board seat at this company — including when they held one and it ended.

Active seats only

This only ever returns a seat where active is true. A member who has been deactivated gives 404 Not Found, even though the row still exists and still shows up in the list. Treat the 404 as "not on the board", not as "no such owner" — the owner id itself is never checked.

The not-found body names a key, not an id

Because the lookup is by owner rather than by seat, the problem response carries entityKey — a string of the form CompanyId=…,OwnerId=… — instead of the usual entityId.

HOA companies only

Every architectural request and board member endpoint first checks that the calling company is set up as an HOA. A company in any other business mode gets 400 Bad Request with the detail Company is not in HOA business mode.