Association violations

List association violations

Returns a page of the association violations raised against the caller's properties, with the portfolios, properties, units, leases and association vendors they point at listed alongside so the table can be rendered without extra calls.

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

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

pageinteger

Which page to return. Starts at 1.

default: 1example: 1
pageSizeinteger

How many items per page, between 1 and 100.

default: 50example: 50
portfolioIdsstring[]

Only return violations in these portfolios. Repeat the parameter once per id.

propertyIdsstring[]

Only return violations against these properties. Repeat the parameter once per id.

unitIdsstring[]

Only return violations against these units. Repeat the parameter once per id.

leaseIdsstring[]

Only return violations against these leases. Repeat the parameter once per id.

statusesenum<string>[]

Only return violations in these states. Repeat the parameter once per value.

receivedinProgressresolved
hoaVendorIdsstring[]

Only return violations issued by these association vendors. Repeat the parameter once per id.

fixByDate.startstring · date-time

Only return violations whose fix-by date is at or after this moment. Read in the company's timezone.

fixByDate.endstring · date-time

Only return violations whose fix-by date is at or before this moment. Read in the company's timezone.

violationDate.startstring · date-time

Only return violations that happened at or after this moment.

violationDate.endstring · date-time

Only return violations that happened at or before this moment.

violationReceivedDate.startstring · date-time

Only return violations received at or after this moment.

violationReceivedDate.endstring · date-time

Only return violations received at or before this moment.

Response

200 · One page of violations plus the records they refer to.

itemsobject[]

The violations on this page.

currentPageinteger

The page number that was returned.

totalPagesinteger

How many pages exist for this filter.

pageSizeinteger

How many items were requested per page.

totalCountinteger

How many items match the filter across all pages.

portfoliosobject[]

Every portfolio referenced by the violations on this page.

propertiesobject[]

Every property referenced by the violations on this page.

unitsobject[]

Every unit referenced by the violations on this page.

leasesobject[]

Every lease referenced by the violations on this page.

vendorsobject[]

Every association vendor referenced by the violations on this page.

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

Date filters are ranges, not single values

fixByDate, violationDate and violationReceivedDate each take a start and an end, written as fixByDate.start and fixByDate.end in the query string. Any range you send at all must carry at least one of the two.

Open violations against one property
curl --request GET \
  --url '{{baseUrl}}/company-app/associations/violations?propertyIds=1830472847398402002&statuses=received&statuses=inProgress&pageSize=25' \
  --header 'Authorization: Bearer $ACCESS_TOKEN'